:root{--color-teal: #F5C400;--color-teal-light: #FFF8D6;--color-success: #22c55e;--color-warning: #F5C400;--color-danger: #D4A900;--color-danger-dark: #B8900A;--color-info: #D4A900;--color-violet: #D4A900;--primary-color: var(--color-teal);--on-accent: #111827;--success-color: var(--color-success);--warning-color: var(--color-warning);--danger-color: var(--color-danger);--info-color: var(--color-info);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .08);--shadow-md: 0 2px 8px rgba(15, 23, 42, .1);--shadow-lg: 0 8px 18px rgba(15, 23, 42, .12);--shadow-xl: 0 16px 30px rgba(15, 23, 42, .16);--shadow-teal: 0 8px 24px rgba(245, 196, 0, .15);--shadow-danger: 0 8px 24px rgba(212, 169, 0, .28);--transition-fast: .15s ease-out;--transition-normal: .2s ease-in-out;--transition-slow: .3s ease-in-out;--transition-bounce: .35s cubic-bezier(.68, -.55, .265, 1.55);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--gradient-teal: linear-gradient(135deg, #F5C400 0%, #D4A900 60%, #B8900A 100%);--gradient-success: linear-gradient(135deg, #22c55e 0%, #16a34a 100%);--gradient-warning: linear-gradient(135deg, #F5C400 0%, #D4A900 100%);--gradient-danger: linear-gradient(135deg, #F5C400 0%, #B8900A 100%);--gradient-info: linear-gradient(135deg, #F5C400 0%, #D4A900 100%);--gradient-violet: linear-gradient(135deg, #F5C400 0%, #D4A900 100%);--surface-panel: #FFFFFF;--surface-info-bg: rgba(59, 130, 246, .12);--surface-info-border: rgba(96, 165, 250, .4);--surface-success-bg: rgba(34, 197, 94, .12);--surface-success-border: rgba(74, 222, 128, .35);--surface-warning-bg: rgba(245, 196, 0, .12);--surface-warning-border: rgba(245, 196, 0, .32);--surface-danger-bg: rgba(245, 196, 0, .16);--surface-danger-border: rgba(212, 169, 0, .4);--surface-muted-bg: rgba(148, 163, 184, .18);--surface-muted-border: rgba(148, 163, 184, .28);--focus-ring: var(--color-info)}html[data-theme=dark]{--bg-primary: #0A0A0A;--bg-secondary: #0D0D0D;--bg-card: #111111;--bg-hover: #1A1A1A;--bg-tertiary: #151515;--border-color: #222222;--border-hover: rgba(245, 196, 0, .35);--text-primary: #FFFFFF;--text-secondary: #AAAAAA;--text-tertiary: #666666;--on-accent: #111827;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 2px 4px rgba(0, 0, 0, .25);--shadow-lg: 0 4px 6px rgba(0, 0, 0, .3);--shadow-xl: 0 10px 20px rgba(0, 0, 0, .35);--surface-panel: rgba(15, 23, 42, .72)}html[data-theme=light]{--bg-primary: #F9F9F9;--bg-secondary: #FFFFFF;--bg-card: #FFFFFF;--bg-hover: #F3F4F6;--bg-tertiary: #F3F4F6;--border-color: #E5E7EB;--border-hover: rgba(245, 196, 0, .45);--text-primary: #0F172A;--text-secondary: #1F2937;--text-tertiary: #374151;--on-accent: #111827;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .08);--shadow-xl: 0 16px 30px rgba(0, 0, 0, .1);--surface-panel: #FFFFFF;--surface-info-bg: #FFFBEB;--surface-info-border: #FDE68A;--surface-success-bg: #ECFDF3;--surface-success-border: #BBF7D0;--surface-warning-bg: #FFFBEB;--surface-warning-border: #FDE68A;--surface-danger-bg: #FFFBEB;--surface-danger-border: #FDE68A;--surface-muted-bg: #F3F4F6;--surface-muted-border: #E5E7EB;--focus-ring: #D4A900}*,*:before,*:after{box-sizing:border-box}html{transition:background-color .3s ease,color .3s ease}body{font-family:var(--font-family);font-size:var(--font-size-sm);line-height:1.6;color:var(--text-primary);background:var(--bg-primary);margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s ease,color .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes checkmark{0%{stroke-dashoffset:50}to{stroke-dashoffset:0}}.animate-fade-in{animation:fadeIn var(--transition-slow) ease-out}.animate-slide-up{animation:slideUp var(--transition-slow) ease-out}.animate-scale-in{animation:scaleIn var(--transition-normal) ease-out}.stagger-1{animation-delay:0ms}.stagger-2{animation-delay:50ms}.stagger-3{animation-delay:.1s}.stagger-4{animation-delay:.15s}.stagger-5{animation-delay:.2s}.kpis-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:24px}@media(max-width:1200px){.kpis-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.kpis-grid{grid-template-columns:1fr}}.kpi-card{background:var(--bg-card);padding:24px;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-color);transition:transform var(--transition-normal),box-shadow var(--transition-normal);animation:slideUp var(--transition-slow) ease-out backwards}.kpi-card:nth-child(1){animation-delay:0ms}.kpi-card:nth-child(2){animation-delay:50ms}.kpi-card:nth-child(3){animation-delay:.1s}.kpi-card:nth-child(4){animation-delay:.15s}.kpi-content{display:flex;flex-direction:column;gap:4px}.kpi-label{margin:0;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.kpi-value{margin:4px 0 0;font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold);color:var(--text-primary);line-height:1.2}.kpi-sub{margin:4px 0 0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-teal-light)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);border:none;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast);text-decoration:none}.btn:active{transform:scale(.98)}.btn-primary{background:var(--gradient-teal);color:var(--on-accent);box-shadow:var(--shadow-teal)}.btn-primary:hover{filter:brightness(1.1);box-shadow:0 6px 16px #f5c40066}.btn-secondary{background:transparent;color:var(--primary-color);border:1px solid var(--color-teal)}.btn-secondary:hover{background:#f5c4001a}.btn-danger{background:var(--gradient-danger);color:#fff;box-shadow:var(--shadow-danger)}.btn-danger:hover{filter:brightness(1.1)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-sm{padding:6px 12px;font-size:var(--font-size-xs)}.btn-lg{padding:14px 28px;font-size:var(--font-size-base)}.btn-loading{position:relative;pointer-events:none;color:transparent!important}.btn-loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin .6s linear infinite}.input,input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=search],select,textarea{width:100%;padding:10px 14px;font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input:focus,input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-teal);box-shadow:0 0 0 3px #f5c40026}.input::placeholder,input::placeholder,textarea::placeholder{color:var(--text-tertiary)}.table-container{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);overflow:hidden;box-shadow:var(--shadow-md)}table{width:100%;border-collapse:collapse}thead{background:var(--bg-tertiary)}th{padding:14px 16px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;text-align:left;border-bottom:1px solid var(--border-color)}td{padding:14px 16px;font-size:var(--font-size-sm);color:var(--text-primary);border-bottom:1px solid var(--border-color)}tbody tr{transition:background-color var(--transition-fast)}tbody tr:hover{background:var(--surface-warning-bg)}tbody tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;padding:4px 12px;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-full)}.badge-success{background:#10b98126;color:var(--color-success)}.badge-warning{background:#f59e0b26;color:var(--color-warning)}.badge-danger{background:#f5c40026;color:var(--color-danger)}.badge-info{background:#3b82f626;color:var(--color-info)}.card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);padding:var(--spacing-lg);box-shadow:var(--shadow-md)}.modal-backdrop{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal-backdrop);animation:fadeIn var(--transition-normal) ease-out}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--bg-card);border-radius:var(--radius-xl);border:1px solid var(--border-color);box-shadow:var(--shadow-xl);z-index:var(--z-modal);max-width:90vw;max-height:90vh;overflow:auto;animation:scaleIn var(--transition-normal) ease-out}.toast{position:fixed;top:20px;right:20px;padding:16px 20px;background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);z-index:var(--z-tooltip);animation:slideInRight var(--transition-bounce) ease-out}.toast-success{border-left:4px solid var(--color-success)}.toast-error{border-left:4px solid var(--color-danger)}.toast-warning{border-left:4px solid var(--color-warning)}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-hover) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}.skeleton-text{height:14px;margin-bottom:8px}.skeleton-title{height:24px;width:60%;margin-bottom:12px}.skeleton-card{height:120px}html[data-theme=light] .header,html[data-theme=light] .sidebar-professional,html[data-theme=light] .table-container,html[data-theme=light] .card,html[data-theme=light] .modal,html[data-theme=light] .kpi-card{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-color)}html[data-theme=light] .header-search,html[data-theme=light] .nav-submenu,html[data-theme=light] .search-input-wrapper,html[data-theme=light] .search-shortcut{background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-primary)}html[data-theme=light] .search-modal{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);box-shadow:var(--shadow-xl)}html[data-theme=light] .search-overlay{background:#11182747}html[data-theme=light] .search-header,html[data-theme=light] .results-header{border-color:var(--border-color);background:var(--bg-tertiary);color:var(--text-primary)}html[data-theme=light] .search-input,html[data-theme=light] .search-icon,html[data-theme=light] .search-hint,html[data-theme=light] .search-empty,html[data-theme=light] .empty-hint,html[data-theme=light] .results-header h3{color:var(--text-secondary)}html[data-theme=light] p,html[data-theme=light] label,html[data-theme=light] li,html[data-theme=light] td,html[data-theme=light] .nav-label,html[data-theme=light] .subitem-label,html[data-theme=light] .search-placeholder,html[data-theme=light] .header-subtitle,html[data-theme=light] .kpi-label,html[data-theme=light] .kpi-sub{color:var(--text-primary)}html[data-theme=light] small,html[data-theme=light] .muted,html[data-theme=light] .text-muted,html[data-theme=light] .empty-hint,html[data-theme=light] .search-hint,html[data-theme=light] .search-empty{color:var(--text-secondary)!important}html[data-theme=light] .result-item{background:var(--bg-card);color:var(--text-primary)!important;border:1px solid var(--border-color)}html[data-theme=light] .result-item:hover,html[data-theme=light] .result-item:focus-visible{background:var(--bg-hover);color:var(--text-primary)!important;box-shadow:var(--shadow-md)}html[data-theme=light] .result-item.selected{background:var(--surface-warning-bg);color:var(--text-primary)!important;box-shadow:inset 0 0 0 2px #f5c40073}html[data-theme=light] .result-icon{background:var(--bg-tertiary);color:var(--text-primary);box-shadow:none}html[data-theme=light] .cars-table thead tr{background:var(--gradient-teal);color:var(--on-accent)}html[data-theme=light] table thead,html[data-theme=light] table thead tr,html[data-theme=light] .data-table thead tr,html[data-theme=light] .table-header-sticky thead th,html[data-theme=light] .reservations-table-wrapper .data-table thead tr,html[data-theme=light] .reservations-table-wrapper .table-header-sticky thead th,html[data-theme=light] .payments-table thead th,html[data-theme=light] .clients-table thead,html[data-theme=light] .cars-table-pro thead,html[data-theme=light] .rentabilite-table thead,html[data-theme=light] .monthly-table thead,html[data-theme=light] .admin-contact-messages-table th,html[data-theme=light] .notifications-table thead th,html[data-theme=light] .table-autorisation thead tr,html[data-theme=light] .car-details-table thead{background:var(--gradient-teal)!important}html[data-theme=light] table thead th,html[data-theme=light] table th,html[data-theme=light] .data-table th,html[data-theme=light] .table-header-sticky thead th,html[data-theme=light] .reservations-table-wrapper .data-table th,html[data-theme=light] .reservations-table-wrapper .table-header-sticky thead th,html[data-theme=light] .payments-table thead th,html[data-theme=light] .clients-table th,html[data-theme=light] .cars-table-pro th,html[data-theme=light] .rentabilite-table th,html[data-theme=light] .monthly-table th,html[data-theme=light] .admin-contact-messages-table th,html[data-theme=light] .notifications-table thead th,html[data-theme=light] .table-autorisation th,html[data-theme=light] .car-details-table th{color:var(--on-accent)!important;border-bottom-color:#11182726!important}html[data-theme=light] .cars-table th,html[data-theme=light] .cars-table td{color:var(--text-primary);border-bottom-color:var(--border-color)}html[data-theme=light] .cars-table tr:hover{background:var(--bg-hover)}html[data-theme=light] .cars-table .plate-badge{background:var(--bg-tertiary);color:var(--text-secondary)}html[data-theme=light] input,html[data-theme=light] select,html[data-theme=light] textarea,html[data-theme=light] .input{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-color)}html[data-theme=light] th{color:var(--on-accent)}html[data-theme=light] .cars-page{background:var(--bg-primary)!important}html[data-theme=light] .cars-header{background:var(--bg-card)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important;box-shadow:var(--shadow-md)!important}html[data-theme=light] .cars-subtitle,html[data-theme=light] .cars-sub{color:var(--text-secondary)!important}html[data-theme=light] .cars-actions-bar,html[data-theme=light] .cars-table-section,html[data-theme=light] .cars-body{background:var(--bg-card)!important;border:1px solid var(--border-color)!important;box-shadow:var(--shadow-md)!important}html[data-theme=light] .cars-search-bar,html[data-theme=light] .cars-status-filter,html[data-theme=light] .search-input,html[data-theme=light] .filter-select{background:var(--bg-card)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important}html[data-theme=light] .cars-stat-card{background:var(--bg-card)!important;border:1px solid var(--border-color)!important;box-shadow:var(--shadow-md)!important}html[data-theme=light] .cars-stat-label,html[data-theme=light] .cars-stat-value,html[data-theme=light] .cars-stat-detail,html[data-theme=light] .cars-table td,html[data-theme=light] .plate-badge{color:var(--text-primary)!important}html[data-theme=light] .plate-badge{background:var(--bg-tertiary)!important}html[data-theme=light] :is(.table-card,.graph-card,.info-card,.notifications-table-card,.notification-detail-card,.return-card,.online-contact-card,.reservation-detail-card,.reservation-detail-section,.payment-history-item,.car-details-section,.car-details-stat-card,.car-details-kpi-card,.entretien-detail-card,.entretien-detail-block,.car-detail-card,.car-detail-metric,.car-detail-item,.car-detail-table,.kpi-card,.card){background:var(--bg-card)!important;color:var(--text-primary)!important;border-color:var(--border-color)!important;box-shadow:var(--shadow-md)!important}html[data-theme=light] :is(.info-card-header h3,.return-card-title,.notification-detail-card h2,.notification-detail-card h3,.car-detail-title,.section-title-large){color:var(--text-primary)!important}html[data-theme=light] :is(.info-card-body,.return-card-client,.return-card-plate,.car-detail-subtitle,.metric-label,.item-label,.kpi-label,.kpi-sub){color:var(--text-secondary)!important}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:var(--z-modal-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn var(--transition-normal) ease-out}.modal-content{background:var(--bg-card);border-radius:var(--radius-xl);padding:0;max-width:600px;width:95%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);border:1px solid var(--border-color);animation:scaleIn var(--transition-normal) ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px 20px;border-bottom:1px solid var(--border-color);background:var(--bg-secondary);border-radius:var(--radius-xl) var(--radius-xl) 0 0}.modal-header h3{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary);letter-spacing:-.025em}.modal-close{background:none;border:none;font-size:24px;color:var(--text-tertiary);cursor:pointer;padding:4px;border-radius:var(--radius-sm);transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast);line-height:1;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.modal-close:hover{background-color:var(--bg-hover);color:var(--text-primary);transform:scale(1.1)}.modal-body{padding:28px}.payment-info{background:#f5c4001a;border:1px solid var(--color-teal);border-radius:var(--radius-lg);padding:20px;margin-bottom:24px}.payment-info p{margin:8px 0;font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:var(--font-weight-medium);display:flex;justify-content:space-between;align-items:center}.payment-info strong{color:var(--color-teal-light);font-weight:var(--font-weight-semibold);min-width:120px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:32px;padding-top:24px;border-top:1px solid var(--border-color)}@media(max-width:640px){.modal-content{width:98%;margin:10px}.modal-header,.modal-body{padding:20px}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}.payment-info p{flex-direction:column;align-items:flex-start;gap:4px}.payment-info strong{min-width:auto}}:root{--btn-radius: 10px;--btn-shadow: 0 6px 16px rgba(0, 0, 0, .15);--page-shell-padding: clamp(16px, 4vw, 32px);--page-max-width: 1600px;--card-bg: var(--bg-card, var(--bg-primary, #0f172a));--card-radius: var(--radius-lg, 14px);--card-border: var(--border-color, #1f2937);--card-shadow: var(--shadow-md, 0 6px 18px rgba(0, 0, 0, .25));--card-padding: 18px}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border:none;border-radius:var(--btn-radius);background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease,opacity .2s ease;box-shadow:var(--btn-shadow)}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px #10b98140}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:var(--btn-radius);border:1px solid rgba(148,163,184,.45);background:var(--bg-primary, #0f172a);color:var(--text-primary, #e2e8f0);font-weight:600;font-size:14px;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease,opacity .2s ease}.btn-secondary:hover:not(:disabled){border-color:#94a3b8cc;background:var(--bg-hover, #111827)}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:var(--btn-radius);border:1px solid #D4A900;background:linear-gradient(135deg,#d4a900,#8a6e00);color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease,opacity .2s ease;box-shadow:0 6px 16px #f5c40033}.btn-danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px #f5c40040}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;border-radius:var(--btn-radius);border:1px solid transparent;background:transparent;color:var(--text-secondary, #94a3b8);font-weight:600;font-size:13px;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease,opacity .2s ease}.btn-ghost:hover:not(:disabled){background:var(--bg-hover, rgba(148, 163, 184, .08));color:var(--text-primary, #e2e8f0)}.badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.2px;text-transform:uppercase}.badge-success{background:#d1fae5;color:#065f46}.badge-warning{background:#fef3c7;color:#92400e}.badge-danger{background:#fff6cc;color:#7a6000}.badge-neutral{background:#e5e7eb;color:#374151}.chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;border:1px solid var(--border-color, #1f2937);background:var(--bg-primary, #0f172a);color:var(--text-secondary, #94a3b8);font-weight:600;font-size:13px;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease,opacity .2s ease}.chip.is-active{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:#059669;box-shadow:0 6px 14px #10b9814d}.input{width:100%;padding:12px 14px;border-radius:10px;border:2px solid var(--border-color, #1f2937);background:var(--bg-primary, #0f172a);color:var(--text-primary, #e2e8f0);font-size:14px;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease,opacity .2s ease}.input:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b98126}.input.error{border-color:#d4a900;box-shadow:0 0 0 3px #f5c4001f}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);padding:var(--card-padding);margin-bottom:var(--card-spacing, var(--spacing-6, 1.5rem))}.table-header-sticky thead th{position:sticky;top:0;z-index:5;background:linear-gradient(135deg,#d4a900,#b8900a);box-shadow:0 2px 0 var(--bg-card, #0f172a)}.page-shell,:is(.dashboard-new,.reservations-professional-page,.payments-page,.rentabilite-page){width:min(100%,var(--page-max-width, 1600px));margin:0 auto;padding:var(--page-shell-padding, clamp(16px, 4vw, 32px));min-height:100vh}.page-shell{display:flex;flex-direction:column;gap:clamp(16px,3vw,32px)}.page-shell--flush{padding:0}.section-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-4, 1rem);margin-bottom:var(--spacing-6, 1.5rem)}.section-title{font-size:var(--font-size-2xl, 1.5rem);font-weight:var(--font-weight-semibold, 600);color:var(--text-primary, #e2e8f0);margin:0}.stack-sm,.stack-responsive,.actions-stack{display:flex;gap:var(--stack-gap, var(--spacing-3, .75rem));flex-wrap:wrap}.stack-sm>*,.stack-responsive>*,.actions-stack>*{flex:1 1 260px;min-width:0}.actions-stack{align-items:center}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive table{min-width:720px}.table-container{background:var(--bg-card, #0f172a);border-radius:var(--radius-lg, 16px);border:1px solid var(--border-color, #1f2937);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .2));overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.status{padding:.25rem .75rem;border-radius:9999px;font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-medium, 500)}.status-active{background-color:#10b98126;color:var(--color-success, #10b981)}.status-inactive{background-color:#f5c40026;color:var(--color-danger, #D4A900)}.form-group{margin-bottom:var(--spacing-4, 1rem)}.form-label{display:block;margin-bottom:var(--spacing-2, .5rem);font-weight:var(--font-weight-medium, 500);color:var(--text-secondary, #94a3b8)}.form-control{width:100%;padding:var(--spacing-2, .5rem);border:1px solid var(--border-color, #1f2937);border-radius:var(--radius-md, 10px);font-size:var(--font-size-base, 1rem);background:var(--bg-tertiary, #111827);color:var(--text-primary, #e2e8f0);transition:background-color var(--transition-fast, .2s ease),color var(--transition-fast, .2s ease),border-color var(--transition-fast, .2s ease),box-shadow var(--transition-fast, .2s ease),transform var(--transition-fast, .2s ease),opacity var(--transition-fast, .2s ease)}.form-control:focus{outline:none;border-color:var(--color-teal, #0f766e);box-shadow:0 0 0 3px #f5c40033}.search-bar{display:flex;align-items:center;background:var(--bg-tertiary, #111827);border:1px solid var(--border-color, #1f2937);border-radius:var(--radius-md, 10px);padding:var(--spacing-2, .5rem)}.search-input{border:none;padding:.25rem .5rem;font-size:var(--font-size-sm, .875rem);flex:1;background:transparent;color:var(--text-primary, #e2e8f0)}.search-input:focus{outline:none}.search-input::placeholder{color:var(--text-tertiary, #64748b)}.loading-spinner{display:inline-block;width:2rem;height:2rem;border:2px solid var(--border-color, #1f2937);border-radius:50%;border-top-color:var(--color-teal, #0f766e);animation:spin 1s linear infinite}.empty-state{text-align:center;padding:var(--spacing-12, 3rem) var(--spacing-4, 1rem);color:var(--text-tertiary, #94a3b8)}.empty-state-icon{font-size:3rem;margin-bottom:var(--spacing-4, 1rem)}.empty-state-text{font-size:var(--font-size-base, 1rem);margin-bottom:var(--spacing-6, 1.5rem)}.action-buttons{display:flex;gap:var(--spacing-2, .5rem)}.btn-icon{padding:var(--spacing-2, .5rem);border-radius:var(--radius-md, 10px);border:none;cursor:pointer;transition:background-color var(--transition-fast, .2s ease),color var(--transition-fast, .2s ease),border-color var(--transition-fast, .2s ease),box-shadow var(--transition-fast, .2s ease),transform var(--transition-fast, .2s ease),opacity var(--transition-fast, .2s ease);background:transparent;color:var(--text-secondary, #94a3b8)}.btn-icon:hover{background-color:var(--bg-hover, rgba(255, 255, 255, .08));color:var(--text-primary, #e2e8f0)}.table-card{background:var(--bg-card, #0f172a);border:1px solid var(--border-color, #1f2937);border-radius:12px;box-shadow:0 4px 12px #00000014;overflow:hidden;max-height:60vh;overflow-y:auto;overflow-x:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.data-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--bg-card, #0f172a);border:1px solid var(--border-color, #3a3a5c);color:var(--text-primary, #e2e8f0);table-layout:auto;min-width:560px}.data-table thead tr{background:var(--gradient-teal);color:#fff}.data-table th,.data-table td{padding:12px 14px;font-size:13px;font-weight:600;border-right:1px solid rgba(255,255,255,.08);white-space:nowrap;text-align:center}.data-table th:last-child,.data-table td:last-child{border-right:none}.data-table tbody tr{border-bottom:1px solid var(--border-color, #232336);transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease,opacity .2s ease;cursor:pointer}.data-table tbody tr:hover{background:var(--bg-hover, #232336)}.data-table td strong{color:var(--primary-color);font-size:15px;letter-spacing:.5px}.pill{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;border-radius:10px;font-size:13px;font-weight:700;line-height:1.4;min-width:100px;text-align:center}.pill-status{background:#f5c40014;color:var(--primary-color);border:1px solid rgba(245,196,0,.45);text-transform:capitalize}.pill-price{font-size:15px;color:var(--primary-color);background:#f5c4000f;border:1px solid rgba(245,196,0,.45);padding:6px 18px;min-width:110px}.table-actions{display:flex;gap:8px;justify-content:center}@media(max-width:1024px){.card{padding:var(--spacing-4, 1rem);margin-bottom:var(--spacing-4, 1rem)}.section-title{font-size:var(--font-size-xl, 1.25rem)}.action-buttons{flex-direction:column;width:100%}.action-buttons button{width:100%}.section-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-3, .75rem)}}@media(max-width:768px){.table-card{max-height:none;border-radius:10px}.data-table{min-width:520px}.data-table th,.data-table td{padding:10px 12px;font-size:12px}}@media(max-width:540px){.data-table{min-width:460px}.pill{min-width:unset;width:100%}}.page-container{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-xl);animation:fadeIn var(--transition-slow) ease-out}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.section-header h2{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary)}.section-actions{display:flex;gap:var(--spacing-md);align-items:center}.form-container{max-width:600px;margin:0 auto}.form-group{margin-bottom:var(--spacing-lg)}.form-label{display:block;font-weight:var(--font-weight-semibold);color:var(--text-secondary);margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm)}.form-input,.form-textarea,.form-select{width:100%;padding:12px 14px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-teal);box-shadow:0 0 0 3px #f5c40026}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-tertiary)}.form-textarea{resize:vertical;min-height:100px}.form-error{color:var(--color-danger);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-xl);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.action-button,.add-button{background:var(--gradient-teal);color:#fff;padding:10px 20px;border:none;border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast);box-shadow:var(--shadow-teal)}.action-button:hover,.add-button:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 6px 16px #f5c40066}.action-button:active,.add-button:active{transform:translateY(0)}.export-button{background:var(--bg-hover);color:var(--text-primary);padding:10px 20px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.export-button:hover{background:var(--bg-tertiary);border-color:var(--border-hover)}.filter-select,.search-input{padding:10px 14px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.filter-select:focus,.search-input:focus{outline:none;border-color:var(--color-teal);box-shadow:0 0 0 3px #f5c40026}.cars-header,.page-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg);background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color)}.cars-header h1,.page-header h1{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary)}.cars-actions,.page-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);align-items:center}.cars-body,.page-body{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);padding:var(--spacing-lg);box-shadow:var(--shadow-md)}.pagination-container{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:12px 0;border-top:1px solid var(--border-color, #2c2f44);color:var(--text-secondary, #94a3b8)}.pagination-info{font-size:14px}.pagination-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pagination-button{padding:8px 12px;border:1px solid var(--border-color, #2c2f44);background:var(--bg-card, #0f172a);color:var(--text-secondary, #94a3b8);border-radius:8px;font-size:14px;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease,opacity .2s ease}.pagination-button:hover:not(:disabled){background:var(--bg-hover, #1f2937);border-color:var(--primary-color);color:var(--text-primary, #e5e7eb)}.pagination-button.active{background:var(--primary-color);border-color:var(--primary-color);color:#0b0e14;font-weight:700}.pagination-button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.pagination-container{flex-direction:column;align-items:flex-start}}.cars-empty,.cars-error,.empty-state,.error-state{text-align:center;padding:var(--spacing-2xl);color:var(--text-secondary)}.empty-state h3,.error-state h3{margin-bottom:var(--spacing-sm);color:var(--text-primary)}.simple-form-wrapper{max-width:760px;margin:0 auto;padding:0 12px}.simple-form-header{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.simple-form-header h1{margin:0;font-size:24px;font-weight:var(--font-weight-bold);color:var(--text-primary)}.simple-form-header p{margin:0;color:var(--text-secondary);font-size:14px}.simple-form-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:24px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:16px}.simple-form-card label{display:flex;flex-direction:column;gap:8px;color:var(--text-primary);font-weight:600}.simple-form-card input[type=text],.simple-form-card input[type=tel],.simple-form-card input[type=email],.simple-form-card input[type=number]{width:100%}.form-hint{color:var(--text-tertiary);font-size:13px}.checkbox-inline{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--text-primary)}.checkbox-inline input{width:auto}.simple-form-error{border:1px solid var(--color-danger, #D4A900);background:#f5c40014;color:var(--color-danger, #D4A900);padding:12px;border-radius:12px;font-weight:700}.simple-form-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;flex-wrap:wrap}.responsive-grid-240{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.responsive-grid-220{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.responsive-grid-180{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.responsive-grid-280{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.form-footer-responsive{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}@media(max-width:768px){.page-container{padding:var(--spacing-md)}.section-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.section-actions{width:100%;justify-content:space-between}.cars-header,.page-header{flex-direction:column;align-items:stretch}.cars-actions,.page-actions{justify-content:center}}@media(max-width:640px){.simple-form-card{padding:16px}.simple-form-header h1{font-size:20px}.simple-form-actions{flex-direction:column;align-items:stretch}.simple-form-actions button{width:100%;justify-content:center}.form-footer-responsive{flex-direction:column;align-items:stretch}.form-footer-responsive button{width:100%}}@media(max-width:480px){.section-actions,.cars-actions,.page-actions{flex-direction:column;gap:var(--spacing-sm)}.action-button,.add-button,.export-button{width:100%;justify-content:center}}.rentabilite-page{--page-shell-padding: clamp(16px, 4vw, 24px);background:var(--bg-secondary)}.rentabilite-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:clamp(24px,4vw,32px);background:var(--bg-card);padding:clamp(18px,3.5vw,24px);border-radius:12px;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.rentabilite-header h1{margin:0;font-size:28px;color:var(--text-primary);font-weight:700}.subtitle{margin:4px 0 0;color:var(--text-secondary);font-size:14px}.header-actions{display:flex;gap:12px;align-items:center}.periode-select{padding:10px 16px;border:1px solid var(--border-color);flex-wrap:wrap;border-radius:8px;font-size:14px;background:var(--bg-card);color:var(--text-primary);cursor:pointer;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s,opacity .2s}.periode-select:hover{border-color:var(--primary-color)}.btn-export{padding:10px 20px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s,opacity .2s}.btn-export:hover{background:#0e6b60;transform:translateY(-1px)}.kpis-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:32px}@media(min-width:1024px){.kpis-grid{display:flex;gap:20px;align-items:stretch;flex-wrap:nowrap}.kpis-grid .kpi-card{flex:1 1 0;min-width:220px}}.kpi-card{background:var(--bg-card);padding:24px;border-radius:12px;box-shadow:var(--shadow-md);display:flex;gap:16px;align-items:center;transition:background-color .3s,color .3s,border-color .3s,box-shadow .3s,transform .3s,opacity .3s;border:1px solid var(--border-color)}.kpi-card .kpi-content{padding-left:6px}.kpi-icon{font-size:40px;width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:var(--gradient-teal);border-radius:12px}.kpi-label{margin:0;font-size:13px;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.kpi-value{margin:4px 0 0;font-size:24px;font-weight:700;color:var(--text-primary)}.kpi-sub{margin:4px 0 0;font-size:14px;color:#0f766e;font-weight:600}.filters-bar{background:var(--bg-card);padding:20px;box-shadow:var(--shadow-md);margin-bottom:24px;padding:clamp(16px,3vw,20px);margin-bottom:clamp(20px,3vw,24px);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;max-width:400px;padding:10px 16px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px}.search-input:focus{outline:none;border-color:#0f766e}.sort-controls{display:flex;align-items:center;gap:12px}.sort-controls label{gap:12px;flex-wrap:wrap;color:var(--text-secondary);font-weight:500}.sort-controls select{padding:8px 12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;background:var(--bg-card);color:var(--text-primary);cursor:pointer}.btn-sort{padding:8px 12px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;font-size:16px;color:var(--text-primary);transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s,opacity .2s}.btn-sort:hover{background:var(--bg-hover)}.rentabilite-table-container{background:var(--bg-card);border-radius:12px;box-shadow:var(--shadow-md);overflow:hidden;border:1px solid var(--border-color);overflow-x:auto;-webkit-overflow-scrolling:touch}.rentabilite-table{width:100%;border-collapse:collapse;min-width:980px}.rentabilite-table thead{background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff}.rentabilite-table th{padding:16px;text-align:left;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.rentabilite-table tbody tr{border-bottom:1px solid var(--border-color);transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s,opacity .2s}.rentabilite-table tbody tr:hover{background:var(--bg-hover)}.rentabilite-table td{padding:16px;font-size:14px;color:var(--text-primary)}.voiture-info{display:flex;align-items:center;gap:12px}.voiture-icon{font-size:32px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-radius:8px}.voiture-name{font-weight:600;color:var(--text-primary);font-size:15px}.voiture-immat{font-size:12px;color:var(--text-secondary);margin-top:2px}.revenue-amount{font-weight:700;color:#0f766e;font-size:16px}.occupation-bar{position:relative;width:100%;height:24px;background:var(--bg-tertiary);border-radius:12px;overflow:hidden}.occupation-fill{position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,#0f766e,#14b8a6);transition:width .3s}.occupation-text{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:12px;font-weight:600;color:var(--text-primary);z-index:1}.btn-details{padding:8px 16px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;color:var(--text-primary);transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s,opacity .2s}.btn-details:hover{background:#0f766e;color:#fff;border-color:#0f766e}.modal-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:1000;align-items:center;justify-content:center;padding:20px}.modal-content{background:var(--bg-card);border-radius:16px;max-width:900px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);border:1px solid var(--border-color)}.modal-header{padding:24px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff}.modal-header h2{margin:0;font-size:20px}.modal-close{background:#fff3;border:none;color:#fff;font-size:24px;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s,opacity .2s}.modal-close:hover{background:#ffffff4d}.modal-body{padding:24px;overflow-y:auto}.monthly-details{display:flex;flex-direction:column;gap:24px}.monthly-table{width:100%;border-collapse:collapse}.monthly-table thead{background:var(--bg-tertiary)}.monthly-table th{padding:12px;text-align:left;font-weight:600;font-size:13px;color:var(--text-secondary);text-transform:uppercase;border-bottom:2px solid var(--border-color)}.monthly-table td{padding:12px;border-bottom:1px solid var(--border-color);font-size:14px;color:var(--text-primary)}.monthly-table tfoot{background:var(--bg-tertiary);font-weight:700}.revenue-cell{color:#0f766e;font-weight:600}.monthly-chart{background:var(--bg-tertiary);padding:20px;border-radius:12px}.monthly-chart h3{margin:0 0 16px;font-size:16px;color:var(--text-primary)}.chart-bars{display:flex;align-items:flex-end;gap:8px;height:200px;padding:10px 0}.chart-bar-container{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;height:100%}.chart-bar{width:100%;background:linear-gradient(180deg,#0f766e,#14b8a6);border-radius:4px 4px 0 0;transition:background-color .3s,color .3s,border-color .3s,box-shadow .3s,transform .3s,opacity .3s;cursor:pointer;min-height:4px}.chart-bar:hover{opacity:.8}.chart-label{font-size:11px;color:var(--text-secondary);font-weight:500;text-align:center}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;background:var(--bg-card);border-radius:12px;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.spinner{width:48px;height:48px;border:4px solid var(--bg-tertiary);border-top-color:#0f766e;border-radius:50%;animation:spin 1s linear infinite}.loading-state p,.error-state p{margin-top:16px;color:var(--text-secondary);font-size:14px}.btn-retry{margin-top:16px;padding:10px 20px;background:#0f766e;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600}.btn-retry:hover{background:#0e6b60}@media(max-width:1200px){.rentabilite-table-container{overflow-x:auto}.rentabilite-table{min-width:900px}}@media(max-width:768px){.rentabilite-header{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{width:100%;flex-direction:column}.periode-select,.btn-export{width:100%}.kpis-grid{grid-template-columns:1fr}.filters-bar{flex-direction:column;align-items:stretch}.search-input{max-width:none}.sort-controls{flex-wrap:wrap}.rentabilite-table{min-width:760px}}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#020617 0% 40%,#020617);position:relative;overflow:hidden}.login-bg-overlay{position:absolute;inset:0;background-image:radial-gradient(circle at 20% 80%,rgba(245,196,0,.18) 0%,transparent 55%),radial-gradient(circle at 80% 20%,rgba(20,184,166,.18) 0%,transparent 55%),url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");pointer-events:none}.login-theme-toggle{position:absolute;top:20px;right:24px;z-index:2}.login-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:2rem;padding:2rem}.login-brand{text-align:center;color:#fff}.brand-icon{display:inline-flex;justify-content:center;align-items:center;width:80px;height:80px;background:linear-gradient(135deg,#0f766e,#14b8a6);border-radius:20px;margin-bottom:1rem;box-shadow:0 10px 40px #f5c40066;animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{box-shadow:0 10px 40px #f5c40066}50%{box-shadow:0 10px 60px #f5c40099}}.brand-icon svg{color:#fff}.brand-name{font-size:2.5rem;font-weight:800;margin:0;background:linear-gradient(135deg,#fff,#14b8a6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:2px}.brand-tagline{color:#ffffffa6;font-size:.95rem;margin:.5rem 0 0;font-weight:300}.login-form{background:#0f172af5;-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px);border:1px solid rgba(148,163,184,.35);padding:2.5rem;border-radius:20px;display:flex;flex-direction:column;width:380px;box-shadow:0 24px 45px #0f172acc}.login-form h2{text-align:center;color:#e5e7eb;margin:0 0 .75rem;font-size:1.5rem;font-weight:600}.input-group{position:relative;display:flex;align-items:center;margin-top:1rem}.login-form input{width:100%;padding:.8rem 1rem;border-radius:12px;border:1px solid rgba(148,163,184,.55);background:#0f172ae6;color:#e5e7eb;font-size:1rem;transition:background-color .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease,opacity .25s ease}.login-form input::placeholder{color:#94a3b8cc}.login-form input:focus{outline:none;border-color:#14b8a6;box-shadow:0 0 0 3px #14b8a640;background:#0f172a}.login-form button{margin-top:1.5rem;background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff;border:none;padding:1rem;border-radius:12px;font-weight:600;font-size:1rem;cursor:pointer;transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease,transform .3s ease,opacity .3s ease;box-shadow:0 4px 16px #f5c40073}.login-form button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 22px #f5c40099}.login-form button:active:not(:disabled){transform:translateY(0)}.login-form button:disabled{opacity:.7;cursor:not-allowed;box-shadow:none}.btn-loading{display:flex;align-items:center;justify-content:center;gap:.5rem}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.error-message{background:#dc35452e;color:#fde68a;padding:.75rem 1rem;border-radius:10px;border:1px solid rgba(220,53,69,.4);text-align:center;font-size:.9rem;margin-top:.75rem}.login-footer{text-align:center}.login-footer p{color:#ffffff4d;font-size:.85rem;margin:0}html[data-theme=light] .login-container{background:linear-gradient(135deg,#f3f4f6,#e5e7eb 40% 100%)}html[data-theme=light] .login-bg-overlay{background-image:radial-gradient(circle at 20% 80%,rgba(212,169,0,.18) 0%,transparent 55%),radial-gradient(circle at 80% 20%,rgba(212,169,0,.18) 0%,transparent 55%),url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23000000' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}html[data-theme=light] .login-brand{color:#0f172a}html[data-theme=light] .brand-name{-webkit-text-fill-color:initial;background:none;color:#0f172a}html[data-theme=light] .brand-tagline{color:#4b5563}html[data-theme=light] .login-form{background:#fff;border-color:#94a3b859;box-shadow:0 18px 35px #0f172a1f}html[data-theme=light] .login-form h2{color:#111827}html[data-theme=light] .login-form input{background:#f9fafb;color:#111827;border-color:#94a3b8b3}html[data-theme=light] .login-form input::placeholder{color:#9ca3af}html[data-theme=light] .login-form input:focus{background:#fff;border-color:var(--primary-color);box-shadow:0 0 0 3px #f5c4002e}html[data-theme=light] .error-message{background:#fff6cc;color:#8a6e00;border-color:#fde68a}html[data-theme=light] .login-footer p{color:#9ca3af}@media(max-width:480px){.login-form{width:100%;max-width:340px;padding:2rem 1.5rem}.brand-name{font-size:2rem}.login-theme-toggle{top:12px;right:12px}}.dashboard-container{padding:2rem;max-width:1400px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid var(--border-color)}.dashboard-title{font-size:2rem;font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0}.dashboard-subtitle{font-size:var(--font-size-md);color:var(--text-secondary);margin:.5rem 0 0}.dashboard-actions{display:flex;gap:1rem}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.kpi-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-md);border-left:4px solid var(--primary-color);transition:background-color var(--transition-normal),color var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal),transform var(--transition-normal),opacity var(--transition-normal);display:flex;gap:1rem;border:1px solid var(--border-color)}.kpi-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.kpi-card.kpi-primary{border-left-color:var(--primary-color)}.kpi-card.kpi-success{border-left-color:var(--success-color)}.kpi-card.kpi-info{border-left-color:var(--info-color)}.kpi-card.kpi-warning{border-left-color:var(--warning-color)}.kpi-card.kpi-danger{border-left-color:var(--danger-color)}.kpi-card.kpi-secondary{border-left-color:var(--secondary-color)}.kpi-icon{font-size:3rem;line-height:1;opacity:.9}.kpi-content{flex:1}.kpi-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.5px}.kpi-value{font-size:2rem;font-weight:var(--font-weight-bold);color:var(--text-primary);margin:.5rem 0}.kpi-details{display:flex;flex-direction:column;gap:.5rem;margin:1rem 0}.kpi-detail{font-size:var(--font-size-sm);color:var(--text-secondary);display:flex;align-items:center;gap:.25rem}.kpi-detail.success{color:var(--success-color)}.kpi-detail.warning{color:var(--warning-color)}.kpi-detail.danger{color:var(--danger-color)}.kpi-detail.info{color:var(--info-color)}.kpi-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color);font-size:var(--font-size-sm);color:var(--text-tertiary)}.kpi-footer a{color:var(--primary-color);text-decoration:none;font-weight:var(--font-weight-semibold);transition:color var(--transition-fast)}.kpi-footer a:hover{color:var(--primary-dark)}.charts-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem;margin-bottom:2rem}.chart-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color)}.chart-header h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0}.chart-subtitle{font-size:var(--font-size-sm);color:var(--text-tertiary)}.chart-body{min-height:250px}.bar-chart{display:flex;align-items:flex-end;justify-content:space-around;height:200px;gap:.5rem;padding:1rem 0}.bar-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:.5rem}.bar-wrapper{width:100%;height:180px;display:flex;align-items:flex-end;justify-content:center}.bar{width:100%;max-width:60px;background:linear-gradient(180deg,var(--primary-color),var(--primary-dark));border-radius:var(--radius-md) var(--radius-md) 0 0;transition:background-color var(--transition-normal),color var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal),transform var(--transition-normal),opacity var(--transition-normal);position:relative;display:flex;align-items:flex-start;justify-content:center;padding-top:.5rem;min-height:20px}.bar:hover{opacity:.8;transform:scaleY(1.05)}.bar-success{background:linear-gradient(180deg,var(--success-color),var(--success-dark))}.bar-value{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:#fff}.bar-label{font-size:var(--font-size-xs);color:var(--text-secondary);text-align:center;font-weight:var(--font-weight-medium)}.pie-chart-container{display:flex;justify-content:center;align-items:center;padding:2rem}.pie-chart-legend{display:flex;flex-direction:column;gap:1rem}.legend-item{display:flex;align-items:center;gap:.75rem;font-size:var(--font-size-md);color:var(--text-primary)}.legend-color{width:20px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.top-list{display:flex;flex-direction:column;gap:1rem}.top-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--gray-50);border-radius:var(--radius-md);transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.top-item:hover{background:var(--gray-100);transform:translate(4px)}.top-rank{width:40px;height:40px;border-radius:50%;background:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-bold);font-size:var(--font-size-lg);flex-shrink:0}.top-info{flex:1}.top-name{font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:.25rem}.top-detail{font-size:var(--font-size-sm);color:var(--text-secondary)}.top-value{font-weight:var(--font-weight-bold);color:var(--primary-color);font-size:var(--font-size-lg)}.alerts-section{margin-bottom:2rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0}.alerts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.alert-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-md);border-left:4px solid var(--danger-color);border:1px solid var(--border-color);display:flex;gap:1rem;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.alert-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.alert-card.alert-danger{border-left-color:var(--danger-color)}.alert-card.alert-warning{border-left-color:var(--warning-color)}.alert-card.alert-info{border-left-color:var(--info-color)}.alert-icon{font-size:2rem;line-height:1}.alert-content{flex:1}.alert-content h4{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 .5rem}.alert-content p{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0 0 1rem}.alert-action{display:inline-block;color:var(--primary-color);text-decoration:none;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);transition:color var(--transition-fast)}.alert-action:hover{color:var(--primary-dark)}.activity-section{margin-bottom:2rem}.activity-timeline{background:var(--bg-card);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.activity-item{display:flex;gap:1rem;padding:1rem;border-left:3px solid var(--border-color);margin-left:1rem;position:relative;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.activity-item:hover{background:var(--gray-50);border-left-color:var(--primary-color)}.activity-item:before{content:"";position:absolute;left:-7px;top:1.5rem;width:11px;height:11px;border-radius:50%;background:var(--primary-color);border:2px solid var(--card-bg)}.activity-icon{font-size:1.5rem;line-height:1}.activity-content{flex:1}.activity-message{font-size:var(--font-size-md);color:var(--text-primary);margin:0 0 .5rem}.activity-date{font-size:var(--font-size-sm);color:var(--text-tertiary)}.reservations-section{margin-bottom:2rem}.dashboard-table{width:100%;background:var(--bg-card);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.dashboard-table thead{background:var(--bg-tertiary)}.dashboard-table th{padding:1rem;text-align:left;font-weight:var(--font-weight-semibold);color:var(--text-secondary);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.5px}.dashboard-table td{padding:1rem;border-top:1px solid var(--border-color);color:var(--text-primary)}.dashboard-table tbody tr:hover{background:var(--bg-hover)}.available-cars-section{margin-bottom:2rem}.cars-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.car-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-md);border:1px solid var(--border-color);text-align:center;transition:background-color var(--transition-normal),color var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal),transform var(--transition-normal),opacity var(--transition-normal);display:flex;flex-direction:column;gap:1rem}.car-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.car-icon{font-size:3rem;line-height:1}.car-info h4{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 .5rem}.car-immat{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0 0 .5rem}.car-price{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--primary-color);margin:0}.quick-actions-section{margin-bottom:2rem}.quick-actions-section h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:#1a1a1a;margin:0 0 1.5rem}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.quick-action-btn{background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;align-items:center;gap:1rem;cursor:pointer;transition:background-color var(--transition-normal),color var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal),transform var(--transition-normal),opacity var(--transition-normal);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.quick-action-btn:hover{background:var(--primary-color);border-color:var(--primary-color);color:#fff;transform:translateY(-4px);box-shadow:var(--shadow-lg)}.quick-action-icon{font-size:2.5rem;line-height:1}.badge{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.5px}.badge+.badge{margin-left:.5rem}.badge-success{background:var(--success-light);color:var(--success-color)}.badge-warning{background:var(--warning-light);color:var(--warning-color)}.badge-danger{background:var(--danger-light);color:var(--danger-color)}.badge-info{background:var(--info-light);color:var(--info-color)}.empty-state{text-align:center;padding:3rem;color:var(--text-tertiary);font-size:var(--font-size-md)}@media(max-width:768px){.dashboard-container{padding:1rem}.dashboard-header{flex-direction:column;align-items:flex-start;gap:1rem}.kpi-grid,.charts-section,.alerts-grid{grid-template-columns:1fr}.cars-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}.cars-page{padding:var(--spacing-xl);background:var(--bg-secondary);min-height:100vh}.cars-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);flex-wrap:wrap}.cars-title{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);letter-spacing:-.025em}.cars-sub{margin:var(--spacing-xs) 0 0 0;color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal)}.cars-actions{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.search-input{min-width:280px;padding:.625rem 1rem;border:1px solid var(--border-color);border-radius:var(--radius-md);outline:none;background:var(--bg-primary);font-size:var(--font-size-sm);color:var(--text-primary);transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast);box-shadow:var(--shadow-sm)}.search-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-lighter)}.search-input::placeholder{color:var(--text-tertiary)}.filter-select{padding:.625rem 1rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);font-size:var(--font-size-sm);color:var(--text-primary);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast);box-shadow:var(--shadow-sm)}.filter-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-lighter)}.add-button,.export-button{padding:.625rem 1.25rem;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast);box-shadow:var(--shadow-sm);display:inline-flex;align-items:center;gap:.5rem}.add-button{background:var(--primary-color);color:var(--text-white)}.add-button:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.export-button{background:var(--success-color);color:var(--text-white)}.export-button:hover{background:#047857;transform:translateY(-1px);box-shadow:var(--shadow-md)}.cars-body{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.table-responsive{overflow-x:auto;margin:0 calc(-1 * var(--spacing-lg));padding:0 var(--spacing-lg);-webkit-overflow-scrolling:touch}.cars-table{width:100%;border-collapse:collapse;min-width:820px}.cars-table thead th{text-align:left;padding:1rem;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--border-color);background:var(--gray-50);white-space:nowrap}.cars-table tbody td{padding:1rem;border-bottom:1px solid var(--border-light);color:var(--text-primary);font-size:var(--font-size-sm);vertical-align:middle}.cars-table tbody tr{transition:background-color var(--transition-fast)}.cars-table tbody tr:hover{background:var(--gray-50)}.cars-table tbody tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;padding:.375rem .75rem;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.025em;white-space:nowrap}.status-libre{background:var(--success-light);color:var(--success-color)}.status-louee,.status-louée{background:var(--warning-light);color:var(--warning-color)}.status-entretien{background:var(--info-light);color:var(--info-color)}.status-hors_service{background:var(--danger-light);color:var(--danger-color)}.status-success,.badge-success{background:var(--success-light);color:var(--success-color)}.status-warning,.badge-warning{background:var(--warning-light);color:var(--warning-color)}.status-danger,.badge-danger{background:var(--danger-light);color:var(--danger-color)}.status-info,.badge-info{background:var(--info-light);color:var(--info-color)}.cars-loading,.cars-empty,.cars-error{padding:var(--spacing-2xl);text-align:center;color:var(--text-secondary);font-size:var(--font-size-md)}.cars-error{color:var(--danger-color);background:var(--danger-light);border-radius:var(--radius-md);padding:var(--spacing-lg)}.cars-table .btn{padding:.5rem 1rem;font-size:var(--font-size-xs);border-radius:var(--radius-sm)}.flex{display:flex}.gap-2{gap:.5rem}@media(max-width:768px){.cars-page{padding:var(--spacing-6)}.cars-header{flex-direction:column;align-items:flex-start}.cars-actions,.search-input,.filter-select{width:100%}.add-button,.export-button{width:100%;justify-content:center}}@media(max-width:560px){.cars-page{padding:var(--spacing-4)}.table-responsive{margin:0 calc(-1 * var(--spacing-4));padding:0 var(--spacing-4)}.cars-table{min-width:700px}}@media(max-width:1024px){.cars-page{padding:var(--spacing-lg)}.cars-header{flex-direction:column;align-items:stretch}.cars-actions{width:100%;justify-content:flex-start}}@media(max-width:768px){.cars-page{padding:var(--spacing-md)}.cars-title{font-size:var(--font-size-xl)}.search-input{width:100%;min-width:0}.cars-actions{flex-direction:column;align-items:stretch}.add-button,.export-button,.filter-select{width:100%;justify-content:center}.table-responsive{margin:0 calc(-1 * var(--spacing-md));padding:0 var(--spacing-md)}}@media(max-width:480px){.cars-body{padding:var(--spacing-md)}.cars-table thead th,.cars-table tbody td{padding:.75rem .5rem;font-size:var(--font-size-xs)}}.car-form-modern{width:100%;max-width:100%}.car-form-layout{display:grid;grid-template-columns:1fr 400px;gap:32px;margin-top:24px}.car-form-main{display:flex;flex-direction:column;gap:24px}.car-form-sidebar{position:sticky;top:24px;height:fit-content}.car-form-card{background:var(--bg-secondary, #ffffff);border-radius:16px;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease,transform .3s ease,opacity .3s ease;border:1px solid var(--border-color, #e5e7eb)}.car-form-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.car-form-card-header{background:linear-gradient(135deg,#d4a900,#b8900a);padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.1)}.car-card-title{margin:0;color:#fff;font-size:18px;font-weight:600;display:flex;align-items:center;gap:12px}.car-card-icon{font-size:24px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.car-form-card-body{padding:24px;display:flex;flex-direction:column;gap:20px}.car-form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.car-visibility-card{display:flex;flex-direction:column;gap:16px;padding:18px;border:1px solid var(--border-color, #e5e7eb);border-radius:14px;background:linear-gradient(180deg,#667eea14,#764ba205)}.car-visibility-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.car-visibility-label{display:block;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary, #6b7280);margin-bottom:6px}.car-visibility-help{margin:0;font-size:14px;line-height:1.6;color:var(--text-primary, #374151)}.car-visibility-state{display:inline-flex;align-items:center;justify-content:center;min-width:110px;padding:8px 12px;border-radius:999px;font-size:13px;font-weight:700;white-space:nowrap}.car-visibility-state.is-public{background:#d1fae5;color:#065f46}.car-visibility-state.is-private{background:#fff6cc;color:#7a6000}.car-visibility-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.car-visibility-option{border:1px solid var(--border-color, #d1d5db);background:var(--bg-secondary, #ffffff);color:var(--text-primary, #111827);border-radius:12px;padding:12px 14px;font-size:14px;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease,opacity .2s ease}.car-visibility-option:hover{transform:translateY(-1px);box-shadow:0 6px 16px #0f172a14}.car-visibility-option.active{border-color:#10b981;background:linear-gradient(135deg,#10b981,#059669);color:#fff}.car-visibility-option.active.inactive{border-color:#d4a900;background:linear-gradient(135deg,#d4a900,#b8900a)}.car-preview-card{background:var(--bg-secondary, #ffffff);border-radius:16px;box-shadow:0 4px 16px #0000001a;overflow:hidden;border:2px solid var(--border-color, #e5e7eb)}.car-preview-header{background:linear-gradient(135deg,#f093fb,#f5576c);padding:20px 24px}.car-preview-title{margin:0;color:#fff;font-size:18px;font-weight:600}.car-preview-body{padding:24px}.car-summary-card{display:flex;flex-direction:column;gap:16px}.car-summary-item{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--bg-primary, #f9fafb);border-radius:12px;border:1px solid var(--border-color, #e5e7eb);transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease,opacity .2s ease}.car-summary-item:hover{background:var(--bg-hover, #f3f4f6);border-color:var(--primary-color, #D4A900);transform:translate(4px)}.car-summary-icon{font-size:24px;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.car-summary-content{display:flex;flex-direction:column;gap:4px;flex:1}.car-summary-label{font-size:13px;font-weight:500;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.5px}.car-summary-value{font-size:16px;font-weight:600;color:var(--text-primary, #1f2937)}.car-summary-immatriculation{font-family:Courier New,monospace;letter-spacing:1px;color:var(--primary-color, #D4A900)!important;font-size:18px!important}.car-summary-highlight{background:linear-gradient(135deg,#d4a90015,#b8900a15);border-color:var(--primary-color, #D4A900);border-width:2px}.car-summary-price .car-summary-value{color:#10b981;font-size:20px;font-weight:700}.car-summary-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:600;text-align:center}.car-summary-badge.status-libre{background:#d1fae5;color:#065f46}.car-summary-badge.status-louee{background:#fff6cc;color:#7a6000}.car-summary-badge.status-entretien{background:#fef3c7;color:#92400e}.car-summary-badge.status-hors_service{background:#f3f4f6;color:#374151}.car-summary-badge.status-unknown{background:#e5e7eb;color:#6b7280}.car-form-actions{display:flex;justify-content:flex-end;margin-top:32px;padding-top:24px;border-top:2px solid var(--border-color, #e5e7eb)}.btn-submit-car{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 48px;background:linear-gradient(135deg,#d4a900,#b8900a);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease,transform .3s ease,opacity .3s ease;box-shadow:0 4px 12px #667eea4d}.btn-submit-car:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-submit-car:active:not(:disabled){transform:translateY(0)}.btn-submit-car:disabled{opacity:.6;cursor:not-allowed}.btn-icon{font-size:20px}.spinner-small{display:inline-block;width:18px;height:18px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.car-error-alert{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#fffbeb;border:2px solid #FDE68A;border-radius:12px;color:#7a6000}.error-icon{font-size:24px;flex-shrink:0}.error-message{font-size:14px;font-weight:500;line-height:1.5}@media(max-width:1280px){.car-form-layout{grid-template-columns:1fr 350px;gap:24px}}@media(max-width:1024px){.car-form-layout{grid-template-columns:1fr}.car-form-sidebar{position:static;order:-1}.car-form-row{grid-template-columns:1fr}}@media(max-width:768px){.car-form-card-body,.car-preview-body{padding:20px}.car-card-title,.car-preview-title{font-size:16px}.btn-submit-car{width:100%;padding:14px 32px}.car-visibility-header{flex-direction:column}}@media(max-width:480px){.car-form-card-header,.car-preview-header{padding:16px 20px}.car-form-card-body,.car-preview-body{padding:16px}.car-summary-item{padding:12px}.btn-submit-car{font-size:14px;padding:12px 24px}}html[data-theme=dark] .car-form-card,html[data-theme=dark] .car-preview-card{background:#1f2937;border-color:#374151}html[data-theme=dark] .car-summary-item{background:#111827;border-color:#374151}html[data-theme=dark] .car-summary-item:hover{background:#1f2937}html[data-theme=dark] .car-summary-label{color:#9ca3af}html[data-theme=dark] .car-summary-value{color:#f9fafb}html[data-theme=dark] .car-visibility-card{background:linear-gradient(180deg,#667eea2e,#11182773);border-color:#374151}html[data-theme=dark] .car-visibility-help,html[data-theme=dark] .car-visibility-option{color:#f9fafb}html[data-theme=dark] .car-visibility-option{background:#111827;border-color:#4b5563}html[data-theme=dark] .car-error-alert{background:#7f1d1d;border-color:#7a6000;color:#fde68a}*{-webkit-tap-highlight-color:transparent;touch-action:manipulation}@media(max-width:1024px){.cars-page{padding:12px!important}.cars-grid,.clients-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))!important;gap:16px}.cars-table,.payments-table{overflow-x:auto;-webkit-overflow-scrolling:touch}.cars-table th,.cars-table td{padding:12px 8px!important;font-size:13px}.modal-card-reservation{max-width:95%;margin:10px auto}.reservation-layout{grid-template-columns:1fr!important;padding:16px!important}.reservation-summary{display:none!important}.form-grid-2,.form-grid-3{grid-template-columns:1fr!important;gap:16px!important}.stats-grid{grid-template-columns:repeat(2,1fr)!important;gap:12px}}@media(max-width:768px){html,body,#root{overflow-x:hidden}.app-layout{min-height:100dvh}.page-content{width:100%;padding-top:.65rem!important}.cars-page{padding:8px!important}.header-actions{flex-direction:column;width:100%;gap:8px}.header-actions button,.header-actions .btn-primary,.btn-add-new{width:100%;justify-content:center;padding:12px 16px;font-size:14px}.cars-filters,.filters-row{flex-direction:column!important;gap:12px!important}.search-bar,.search-bar input{width:100%!important}.filter-group{width:100%}.filter-group select,.select-enhanced{width:100%!important;min-width:100%!important}.cars-grid,.clients-grid,.stats-grid{grid-template-columns:1fr!important;gap:12px}.car-card,.client-card,.stat-card{padding:14px!important}.car-card-header h3{font-size:16px!important}.cars-table{display:block;overflow-x:auto;white-space:nowrap}.table-card .data-table{display:block;width:100%;overflow-x:auto;white-space:nowrap}.cars-table thead,.table-card .data-table thead{display:none}.cars-table tbody,.cars-table tr,.table-card .data-table tbody,.table-card .data-table tr{display:block;margin-bottom:16px;border:1px solid var(--border-color);border-radius:8px;padding:12px;background:var(--bg-card)}.cars-table td{display:flex;justify-content:space-between;padding:8px 0!important;border-bottom:1px solid var(--border-color);font-size:14px}.table-card .data-table td{display:flex;justify-content:space-between;padding:8px 0!important;border-bottom:1px solid var(--border-color);font-size:14px;white-space:normal;gap:8px}.cars-table td:last-child{border-bottom:none}.table-card .data-table td:last-child{border-bottom:none}.cars-table td:before{content:attr(data-label);font-weight:600;color:var(--text-secondary);margin-right:8px}.table-card .data-table td:before{content:attr(data-label);font-weight:600;color:var(--text-secondary);margin-right:8px;flex-shrink:0}.modal-container-reservation{padding:0!important;min-height:100vh}.modal-card-reservation{max-width:100%;min-height:100vh;border-radius:0;margin:0}.reservation-card-header{padding:20px 16px!important}.reservation-card-header h2{font-size:20px!important}.reservation-layout{padding:12px!important}.form-step{padding:16px 12px!important;margin-bottom:16px}.step-header h3{font-size:18px!important}.step-columns{grid-template-columns:1fr!important;gap:16px}.selection-card{padding:14px!important}.selection-header{padding:10px 0}.selection-title{font-size:15px!important}.form-field label{font-size:13px!important}.input-enhanced,.select-enhanced,.textarea-enhanced{font-size:14px!important;padding:10px 12px!important}.form-actions-modern{flex-direction:column-reverse;gap:12px;padding:16px 12px!important}.btn-submit-modern,.btn-cancel-modern{width:100%!important;justify-content:center}.recap-grid{grid-template-columns:1fr!important;gap:12px}.recap-tile{padding:12px!important}.info-chips{flex-direction:column!important;align-items:stretch!important}.info-chip{width:100%!important;text-align:center}.financial-summary{padding:16px!important}.summary-row{font-size:14px}.stat-card{min-height:auto!important}.stat-value{font-size:28px!important}.badge,.status-pill{font-size:11px!important;padding:4px 8px!important}.car-actions,.client-actions,.payments-actions{flex-direction:column!important;gap:8px}.car-actions button{width:100%;justify-content:center}.prolongation-block{padding:12px!important}.prolongation-toggle{flex-direction:column!important;gap:12px}.toggle-chip{width:100%!important}.error-banner,.info-box{padding:12px!important;font-size:13px}.payments-table-card{overflow-x:auto}.payments-table{min-width:800px}.dashboard-widgets{grid-template-columns:1fr!important}.widget-card{padding:16px!important}.entretiens-grid{grid-template-columns:1fr!important}.entretien-card{padding:14px!important}.modal-actions{flex-direction:column-reverse!important;gap:10px}.modal-actions button{width:100%!important}}@media(max-width:480px){body{font-size:14px}h1{font-size:22px!important}h2{font-size:18px!important}h3{font-size:16px!important}.cars-page,.reservation-layout,.form-step{padding:8px!important}.car-card,.client-card,.stat-card{padding:10px!important}button,.btn-primary,.btn-secondary{font-size:13px!important;padding:10px 14px!important}.input-enhanced,.select-enhanced{font-size:15px!important}.stats-grid{gap:8px}.stat-card{padding:12px!important}.stat-value{font-size:24px!important}.stat-label{font-size:12px!important}.info-chip{font-size:12px!important;padding:6px 10px!important}.reservation-card-header{padding:16px 12px!important}.selection-card{padding:12px!important}.form-actions-modern{padding:12px 8px!important}.recap-tile{padding:10px!important}.recap-label{font-size:11px!important}.recap-value{font-size:14px!important}.total-summary-bar{padding:14px 12px!important}.total-summary-row{font-size:13px}.total-summary-row.accent{font-size:16px!important}}@media(hover:none)and (pointer:coarse){button,.btn-primary,.btn-secondary,.card-toggle,a{min-height:44px;min-width:44px}button:hover,.btn-primary:hover,.car-card:hover{transform:none!important}button:active,.btn-primary:active{transform:scale(.97);opacity:.9}select,input,textarea{font-size:16px!important}}@media(max-width:768px)and (orientation:landscape){.modal-card-reservation{max-height:100vh;overflow-y:auto}.reservation-card-header{padding:12px 16px!important}.form-step{padding:12px!important}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:768px){html[data-theme=dark]{background:#0a0e1a}html[data-theme=dark] .modal-card-reservation{border:none}html[data-theme=dark] .cars-table tr{background:#1a1f35;border-color:#2a2f45}}@media(max-width:768px){.sidebar{position:fixed;left:-280px;top:0;height:100vh;width:280px;z-index:9999;transition:left .3s ease}.sidebar.open{left:0}.sidebar-overlay{position:fixed;inset:0;background:#00000080;z-index:9998;display:none}.sidebar-overlay.active{display:block}.header{padding:12px 16px}.header-logo{font-size:18px}.menu-toggle{display:block;width:44px;height:44px;background:transparent;border:none;cursor:pointer}.menu-toggle span{display:block;width:24px;height:2px;background:var(--text-primary);margin:5px auto;transition:.3s}}@media(max-width:768px){.table-wrapper,.payments-table-card,.admin-contact-messages-table-wrapper,.reservations-table-wrapper,.entretiens-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:8px}.payments-table,.admin-contact-messages-table,.cars-table{min-width:700px}.returns-banner__list{flex-direction:column}.returns-banner__item{min-width:auto;width:100%;flex-direction:column;align-items:flex-start;gap:.5rem}.returns-banner__actions{width:100%}.returns-banner__btn{flex:1}.returns-banner__top{flex-direction:column;align-items:flex-start;gap:.5rem}.page-header h1,.page-title{font-size:1.3rem!important}.page-header p,.page-subtitle{font-size:.85rem}.page-actions,.header-actions-row,.toolbar{flex-direction:column;gap:.5rem}.page-actions button,.page-actions a{width:100%;justify-content:center}}@media(max-width:640px){.section-padding{padding:2rem .5rem}.container{padding-left:1rem;padding-right:1rem}.public-layout__content{padding:4rem .75rem 1rem}.public-contact-form input,.public-contact-form textarea,.public-contact-form select{font-size:16px;min-height:44px}.public-contact-actions .btn{width:100%}.public-car-card__actions{flex-direction:column;gap:.5rem}.public-car-card__actions .btn,.public-car-card__cta{width:100%;text-align:center;justify-content:center}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}::selection{background:#f5c4004d;color:var(--text-primary)}:focus-visible{outline:2px solid var(--color-teal);outline-offset:2px}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}#root{min-height:100vh;display:flex;flex-direction:column}.sidebar-professional{position:fixed;left:0;top:0;height:100vh;width:292px;background:var(--bg-card);color:var(--text-primary);overflow-y:auto;overflow-x:hidden;transition:background-color .4s cubic-bezier(.4,0,.2,1),color .4s cubic-bezier(.4,0,.2,1),border-color .4s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1),opacity .4s cubic-bezier(.4,0,.2,1);z-index:1000;box-shadow:var(--shadow-lg);border-right:1px solid var(--border-color);display:flex;flex-direction:column}.sidebar-professional::-webkit-scrollbar{width:6px}.sidebar-professional::-webkit-scrollbar-track{background:transparent}.sidebar-professional::-webkit-scrollbar-thumb{background:#94a3b880;border-radius:3px}.sidebar-professional::-webkit-scrollbar-thumb:hover{background:#94a3b8cc}.sidebar-header{padding:14px 16px;border-bottom:1px solid var(--border-color);background:var(--bg-card);display:flex;justify-content:center;align-items:center}.sidebar-logo{width:100%;max-width:180px;height:64px;object-fit:contain;display:block}.sidebar-logo:hover{opacity:.95}.sidebar-nav{padding:12px 10px;flex:1;overflow-y:auto}.nav-section{margin-bottom:6px}.nav-item{display:flex;align-items:center;width:100%;padding:12px 14px;cursor:pointer;transition:background-color var(--transition-normal),color var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal),transform var(--transition-normal),opacity var(--transition-normal);position:relative;text-decoration:none;color:var(--text-primary);font-weight:500;font-size:.9rem;letter-spacing:.35px;border-radius:var(--radius-md);border:1px solid transparent}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-color)}.nav-item.active{background:#f5c4001f;color:var(--text-primary);border-left:3px solid #d4a900}.nav-item.parent{font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:1px;text-align:left;background:transparent;border:1px solid transparent}.nav-item.parent:focus-visible,.nav-item.single:focus-visible,.nav-subitem:focus-visible,.logout-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.nav-item.parent:hover{background:var(--bg-hover)}.nav-item.parent.open{background:#f5c4001a;color:#f5c400}.nav-item.single{font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:1px}.nav-label{flex:1}.nav-arrow{font-size:.75rem;margin-left:auto;transition:transform .3s ease;opacity:.7}.nav-item.parent.open .nav-arrow{transform:rotate(180deg)}.nav-submenu{background:var(--bg-card);animation:slideDown .3s ease;overflow:hidden;margin-top:4px;border-radius:var(--radius-md);border:1px solid var(--border-color)}@keyframes slideDown{0%{opacity:0;max-height:0;transform:translateY(-10px)}to{opacity:1;max-height:600px;transform:translateY(0)}}.nav-subitem{display:flex;align-items:center;padding:10px 12px 10px 40px;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast);text-decoration:none;color:var(--text-primary);font-size:.84rem;position:relative}.nav-subitem:before{content:"";position:absolute;left:22px;top:50%;width:4px;height:4px;background:var(--text-secondary);border-radius:50%;transform:translateY(-50%);transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.nav-subitem:hover{background:var(--bg-hover);color:var(--text-primary);padding-left:44px}.nav-subitem.active{background:#f5c4001f;color:var(--text-primary);border-left:3px solid #d4a900;font-weight:600}.nav-subitem.active:before{background:#d4a900;width:6px;height:6px}.subitem-label{flex:1}.nav-badge{min-width:22px;height:18px;padding:0 6px;border-radius:999px;background:var(--primary-color);color:var(--on-accent);font-size:.7rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;margin-left:8px}.nav-badge.nav-badge--muted{background:var(--text-secondary);color:var(--bg-card)}.sidebar-professional.closed{transform:translate(-100%)}@media(max-width:768px){.sidebar-professional{width:min(82vw,300px);max-width:300px;z-index:1001}.sidebar-professional.closed{transform:translate(-100%)}}.nav-item,.nav-subitem{position:relative;overflow:hidden}.nav-item:after,.nav-subitem:after{content:"";position:absolute;left:0;top:0;width:0;height:100%;background:linear-gradient(90deg,rgba(245,196,0,.08) 0%,transparent 100%);transition:width .4s cubic-bezier(.4,0,.2,1)}.nav-item:hover:after,.nav-subitem:hover:after{width:100%}.nav-item.active:before{content:"";position:absolute;left:0;top:0;width:4px;height:100%;background:linear-gradient(180deg,var(--primary-color),transparent);animation:pulsePrimary 2s ease-in-out infinite;box-shadow:0 0 10px #f5c40066}@keyframes pulsePrimary{0%,to{opacity:1;box-shadow:0 0 10px #f5c40066}50%{opacity:.7;box-shadow:0 0 18px #f5c40099}}.nav-item,.nav-subitem,.nav-arrow{transition:background-color .3s cubic-bezier(.4,0,.2,1),color .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1)}.nav-item:hover,.nav-subitem:hover{box-shadow:inset 0 0 18px #0f172a0f}.sidebar-footer{padding:16px 20px;border-top:1px solid var(--border-color);background:var(--bg-card);flex-shrink:0}.logout-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:12px 16px;background:#f5c4001a;border:1px solid rgba(245,196,0,.3);border-radius:var(--radius-md);color:var(--text-primary);font-weight:600;font-size:.9rem;cursor:pointer;transition:background-color var(--transition-normal),color var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal),transform var(--transition-normal),opacity var(--transition-normal)}.logout-btn:hover{background:#f5c40033;border-color:var(--color-danger);transform:translateY(-2px);box-shadow:var(--shadow-md)}.logout-btn:active{transform:translateY(0)}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0009;z-index:1000;opacity:0;transition:opacity .3s ease}@media(max-width:768px){.sidebar-overlay.active{display:block;opacity:1}.sidebar-professional{transform:translate(-100%);box-shadow:none}.sidebar-professional.open{transform:translate(0);box-shadow:12px 0 30px #02061799}.main-content{margin-left:0!important;width:100%}.main-content.expanded{margin-left:0!important}}@media(max-width:480px){.sidebar-professional{width:85%;max-width:300px}.nav-item{padding:12px 16px;font-size:.85rem}.nav-label{font-size:.85rem}}.notifications-bell{position:relative;display:flex;align-items:center;z-index:1000}.notifications-bell__button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:none;background:transparent;color:var(--text-primary, #f8fafc);font-size:18px;cursor:pointer;transition:background .2s ease,transform .2s ease;z-index:1201}.notifications-bell__button:hover{background:#f5c40024;transform:translateY(-1px)}.notifications-bell__badge{position:absolute;top:-4px;right:-2px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;color:#fff}.notifications-bell__badge--alert,.notifications-bell__badge--info{background:linear-gradient(135deg,#f5c400,#d4a900);color:#111827}.notifications-bell__popover{position:absolute;top:calc(100% + 12px);right:0;width:360px;background:var(--bg-card, #111827);border-radius:16px;box-shadow:0 20px 45px #0f172a59;border:1px solid rgba(245,196,0,.2);color:var(--text-primary, #e0e7ff);z-index:1200;display:flex;flex-direction:column;overflow:hidden}.notifications-bell__header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 18px 12px;border-bottom:1px solid rgba(245,196,0,.2);gap:12px}.notifications-bell__header h3{margin:0;font-size:16px;font-weight:700;color:var(--text-primary, #e0e7ff)}.notifications-bell__header p{margin:2px 0 0;font-size:12px;color:var(--text-secondary, #94a3b8)}.notifications-bell__header-actions button{border:none;background:linear-gradient(90deg,#f59e42,#f97316);color:#fff;font-size:13px;font-weight:800;cursor:pointer;border-radius:20px;padding:7px 20px;box-shadow:0 2px 8px #f59e4280;letter-spacing:.04em;text-transform:uppercase;transition:background .2s,color .2s,box-shadow .2s}.notifications-bell__header-actions button:hover{background:linear-gradient(90deg,#f97316,#f59e42);color:#fff;box-shadow:0 4px 16px #f59e4299}.notifications-bell__content{max-height:320px;overflow-y:auto;background:radial-gradient(circle at top,#1e293bd1,#0f172af5)}.notifications-bell__empty{padding:24px;text-align:center;font-size:13px;color:var(--text-secondary, #94a3b8)}.notifications-bell__list{list-style:none;margin:0;padding:0}.notifications-bell__item{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;border:1px solid rgba(148,163,184,.28);border-radius:12px;margin:10px 14px;background:#0f172ae6;box-shadow:0 8px 18px #0f172a8c;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease,transform .2s ease}.notifications-bell__item:hover{border-color:#f5c40080;background:#1e293bf2;box-shadow:0 10px 24px #0f172abf;transform:translateY(-1px)}.notifications-bell__item-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.notifications-bell__item-main{display:flex;flex-direction:column;gap:6px;flex:1}.notifications-bell__item-type{display:inline-flex;align-items:center;width:fit-content;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#e0e7ff;border:1px solid transparent}.notifications-bell__item-type.is-danger{background:#f5c40033;border-color:#d4a90080;color:#fde68a}.notifications-bell__item-type.is-warning{background:#f59e0b33;border-color:#fbbf2466;color:#fde68a}.notifications-bell__item-type.is-success{background:#22c55e33;border-color:#4ade8066;color:#bbf7d0}.notifications-bell__item-type.is-info{background:#3b82f633;border-color:#60a5fa59;color:#fde68a}.notifications-bell__item-meta{display:flex;align-items:center;gap:8px}.notifications-bell__item-date{font-size:12px;color:#fde68a}.notifications-bell__item-message{margin:0;font-size:13px;line-height:1.45;color:#e2e8f0e6}.notifications-bell__item-dot{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#f5c400,#d4a900);margin-top:2px;margin-right:4px;flex-shrink:0;box-shadow:0 0 6px #f59e42b0}.notifications-bell__item-action,.notifications-bell__item-read{flex-shrink:0;margin-top:2px;min-width:44px;text-align:center;font-size:11px;font-weight:700;border-radius:999px;padding:4px 8px}.notifications-bell__item-action{border:1px solid rgba(212,169,0,.5);background:#f5c4002e;color:#fde68a;cursor:pointer}.notifications-bell__item-action:hover{background:#f5c40042}.notifications-bell__item-read{border:1px solid rgba(148,163,184,.35);background:#94a3b81f;color:#cbd5e1}.notifications-bell__footer{padding:12px 18px;border-top:1px solid rgba(245,196,0,.16);display:flex;justify-content:center}.notifications-bell__footer button{border:1px solid rgba(212,169,0,.35);background:#f5c40024;color:#fde68a;border-radius:999px;padding:7px 14px;font-size:12px;font-weight:700;cursor:pointer}.notifications-bell__footer button:hover{background:#f5c4003d}@media(max-width:768px){.notifications-bell__popover{width:min(90vw,360px);right:-16px}}.header{background:var(--bg-card);color:var(--text-primary);display:flex;flex-direction:column;gap:.5rem;padding:1rem 2rem;box-shadow:var(--shadow-md);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:950;overflow:visible;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.header-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;width:100%;flex-wrap:wrap}.header-left{display:flex;align-items:center;gap:.75rem;min-width:0}.header-title-block{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.header-quick-actions{display:flex;align-items:center;gap:.5rem}.header-title h1{font-size:clamp(1.2rem,1.8vw,1.6rem);margin:0}.header-subtitle{font-size:.85rem;color:var(--text-tertiary);margin:0}.menu-toggle{display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:8px;cursor:pointer;color:var(--text-primary);transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast);margin-right:1rem}.menu-toggle:hover{background:var(--bg-hover);border-color:#d4a900;color:#f5c400}.menu-toggle:active{transform:scale(.95)}.header h1{font-size:1.5rem;margin:0;font-weight:var(--font-weight-bold);color:var(--text-primary);letter-spacing:-.02em;flex-shrink:0}.header-actions{display:flex;align-items:center;gap:.75rem;margin-left:auto}.header-search{flex:1;min-width:260px;display:flex;align-items:center;gap:12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-full);padding:12px 20px;cursor:pointer;transition:background-color var(--transition-normal),color var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal),transform var(--transition-normal),opacity var(--transition-normal);max-width:460px}.header-search--mobile{width:100%;margin-top:.5rem}.header-search:hover{border-color:#d4a900;box-shadow:0 0 0 3px #f5c40024}.header-search .search-icon{font-size:20px;color:var(--text-tertiary)}.header-search .search-placeholder{flex:1;font-size:var(--font-size-sm);color:var(--text-tertiary);font-weight:var(--font-weight-normal)}.header-search .search-shortcut{display:flex;align-items:center;gap:4px;font-size:var(--font-size-xs);color:var(--text-tertiary)}.header-search .search-shortcut kbd{padding:3px 8px;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:11px;color:var(--text-secondary);font-family:inherit}.icon-button,.logout-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:var(--radius-full);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.icon-button:hover,.logout-icon:hover{background:var(--bg-hover)}.user-info{display:flex;align-items:center;gap:1rem;z-index:1}.theme-toggle-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.theme-toggle-btn:hover{background:var(--bg-hover);color:#f5c400;border-color:#d4a900;transform:rotate(15deg)}.theme-toggle-btn:active{transform:rotate(0) scale(.95)}.theme-toggle-btn svg{transition:transform var(--transition-normal)}.logout-button{background:var(--gradient-teal);color:#fff;border:none;padding:10px 20px;border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);cursor:pointer;box-shadow:var(--shadow-teal);transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.logout-button:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 6px 16px #f5c40066}.logout-button:active{transform:translateY(0)}.logout-button.logout-icon{background:none;box-shadow:none;padding:0;border:none}.logout-button.logout-icon:hover{filter:none;transform:none}.returns-banner{width:100%;display:flex;flex-direction:column;gap:.4rem;border:1px solid rgba(245,196,0,.35);background:linear-gradient(90deg,#0a0a0a,#1a1a1a);color:#f5c400;border-radius:var(--radius-lg);padding:.45rem .75rem;box-shadow:0 6px 18px #f5c40026}.returns-banner__top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.returns-banner__title{display:flex;align-items:center;gap:.85rem;min-width:0}.returns-banner__dot{width:10px;height:10px;border-radius:50%;background:#f5c400;box-shadow:0 0 0 4px #f5c40033;animation:pulse-alert 1.6s ease-in-out infinite;flex-shrink:0}.returns-banner__count{font-weight:var(--font-weight-bold);font-size:.82rem;color:#fff}.returns-banner__subtitle{font-size:.75rem;color:#ffe066}.returns-banner__cta{color:#f5c400;font-weight:var(--font-weight-semibold);font-size:.78rem;padding:.3rem .7rem;border:1px solid rgba(245,196,0,.4);border-radius:var(--radius-full);background:#f5c40014;white-space:nowrap;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.returns-banner__cta:hover{filter:brightness(1.05);transform:translateY(-1px)}.returns-banner__list{display:flex;flex-direction:row;gap:.5rem;overflow-x:auto;padding-bottom:2px}.returns-banner__item{background:#fffffff5;border-radius:var(--radius-md);padding:.4rem .65rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:1px solid rgba(255,255,255,.55);box-shadow:0 2px 8px #0000000f;flex-shrink:0;min-width:320px}.returns-banner__info{display:flex;flex-direction:column;gap:.2rem;min-width:0;color:#1f2937}.returns-banner__car{font-weight:var(--font-weight-semibold);font-size:.82rem;color:#111827}.returns-banner__client{font-size:.75rem;color:#4b5563}.returns-banner__actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.returns-banner__btn{padding:.3rem .6rem;border-radius:var(--radius-md);border:none;font-weight:var(--font-weight-semibold);font-size:.78rem;color:#fff;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast);min-width:80px;text-align:center}.returns-banner__btn--green{background:linear-gradient(135deg,#0ea15f,#0b8550);box-shadow:0 4px 14px #0ea15f59}.returns-banner__btn--blue{background:linear-gradient(135deg,#1f66ff,#124fc4);box-shadow:0 4px 14px #1f66ff59}.returns-banner__btn:hover{transform:translateY(-1px)}@keyframes pulse-alert{0%{transform:scale(.9);opacity:.9}50%{transform:scale(1.1);opacity:1}to{transform:scale(.9);opacity:.9}}@media(max-width:1024px){.header{padding:.75rem 1rem}.header-search{margin:0}.header-row{gap:.75rem}}@media(max-width:768px){.header{padding:.75rem}.header-row{flex-direction:column;align-items:flex-start}.header-actions{width:100%;justify-content:space-between;margin-left:0;flex-wrap:wrap}.header-left{width:100%}.header-title-block{width:100%;justify-content:flex-start;gap:.65rem}.header-quick-actions{flex-shrink:0}.header-title{min-width:0}.header-search--mobile{display:flex}.returns-banner__item{min-width:280px}}@media(max-width:480px){.header{padding:.5rem .75rem;gap:.35rem}.header-actions{gap:.5rem}.header h1{font-size:1rem}.menu-toggle{width:36px;height:36px}.user-info>.logout-button{padding:6px 10px}.theme-toggle-btn{width:32px;height:32px}}.alert-notification-container{position:fixed;top:0;left:0;right:0;z-index:9999;background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;box-shadow:0 4px 12px #dc354566;animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.alert-notification-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid rgba(255,255,255,.2)}.alert-notification-title{display:flex;align-items:center;gap:10px;font-size:16px}.alert-icon{font-size:20px;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.alert-dismiss-all{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:6px 16px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s,opacity .2s}.alert-dismiss-all:hover{background:#ffffff4d}.alert-notification-list{max-height:300px;overflow-y:auto}.alert-notification-item{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.1);background:#0000001a;transition:background .2s}.alert-notification-item:hover{background:#00000026}.alert-notification-item:last-child{border-bottom:none}.alert-notification-content{flex:1}.alert-notification-type{font-size:14px;font-weight:600;margin-bottom:6px;opacity:.9}.alert-notification-message{font-size:15px;line-height:1.5;margin-bottom:6px}.alert-notification-date{font-size:13px;opacity:.8;margin-top:4px}.alert-notification-close{background:transparent;color:#fff;border:none;font-size:24px;line-height:1;cursor:pointer;padding:4px 8px;margin-left:12px;opacity:.7;transition:opacity .2s}.alert-notification-close:hover{opacity:1}.alert-notification-list::-webkit-scrollbar{width:8px}.alert-notification-list::-webkit-scrollbar-track{background:#0000001a}.alert-notification-list::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}.alert-notification-list::-webkit-scrollbar-thumb:hover{background:#ffffff80}.search-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998;animation:fadeIn .2s ease-out}.search-modal{position:fixed;top:10%;left:50%;transform:translate(-50%);width:90%;max-width:700px;max-height:80vh;background:#181f2a;border-radius:16px;box-shadow:0 20px 60px #0000004d;z-index:9999;display:flex;flex-direction:column;animation:slideDown .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.search-header{padding:20px;border-bottom:2px solid #232a3a}.search-input-wrapper{display:flex;align-items:center;gap:0;background:#232a3a;border-radius:14px;padding:10px 18px;border:2px solid #232a3a;box-shadow:0 2px 12px #000a;transition:box-shadow .2s,border .2s,background .2s}.search-input-wrapper:focus-within{border-color:#d4a900;background:#232a3a;box-shadow:0 0 0 3px #d4a90066}.search-icon{font-size:20px;color:#7f8c8d}.search-input{flex:1;border:none;background:transparent;font-size:17px;color:#e5e7eb;outline:none;font-weight:500;padding-left:0}.search-input::placeholder{color:#7b8ca6}.search-shortcut{font-size:13px;color:#b6c2d6;padding:4px 10px;background:#232a3a;border-radius:8px;border:1px solid #2c3e50;border:1px solid #ddd}.search-results{flex:1;overflow-y:auto;padding:10px;max-height:500px}.search-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:15px}.spinner{width:40px;height:40px;border:4px solid #ecf0f1;border-top-color:#3498db;border-radius:50%;animation:spin .8s linear infinite}.search-hint,.search-empty{text-align:center;padding:60px 20px;color:#7f8c8d}.search-empty{display:flex;flex-direction:column;align-items:center;gap:10px}.empty-icon{font-size:48px;opacity:.5}.empty-hint{font-size:13px;color:#95a5a6}.results-section{margin-bottom:20px}.results-header{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#232a3a;border-radius:10px;margin-bottom:8px;color:#fff;font-weight:700;font-size:15px;letter-spacing:.02em;box-shadow:0 2px 8px #0004}.results-icon{font-size:18px}.results-header h3{margin:0;font-size:14px;font-weight:600;color:#2c3e50}.results-list{display:flex;flex-direction:column;gap:4px}.result-item{display:flex;align-items:center;padding:14px 16px;border-radius:10px;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s,opacity .2s;gap:14px;background:#232a3a;color:#fff!important;font-size:17px;font-weight:600}.result-item:hover,.result-item:focus-visible{background:#1e293b;color:#fff!important;box-shadow:0 2px 12px #0006;transform:scale(1.02)}.result-item.selected{background:#b8900a;color:#fff!important;box-shadow:0 0 0 2px #d4a900;transform:scale(1.03)}.result-icon{font-size:26px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#1e293b;border-radius:12px;flex-shrink:0;color:#38bdf8;box-shadow:0 1px 4px #0006}.result-content{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0;font-size:16px;font-weight:600;color:#fff!important;letter-spacing:.01em}.result-title{font-weight:600;font-size:15px;color:#2c3e50;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-subtitle{font-size:13px;color:#7f8c8d;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-detail{font-size:12px;color:#95a5a6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{display:inline-block;padding:3px 8px;border-radius:12px;font-size:11px;font-weight:600}.status-libre{background:#e8f5e9;color:#2e7d32}.status-louee{background:#232a3a;color:#d4a900}.status-entretien{background:#232a3a;color:#fbbf24}.result-action{font-size:20px;color:#bdc3c7;flex-shrink:0}.search-footer{padding:15px 20px;border-top:1px solid #232a3a;background:#181f2a;border-bottom-left-radius:16px;border-bottom-right-radius:16px}.search-tips{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.tip{display:flex;align-items:center;gap:6px;font-size:13px;color:#b6c2d6;background:#232a3a;border-radius:6px;padding:4px 10px}kbd{padding:3px 8px;background:#232a3a;border:1px solid #2c3e50;border-radius:6px;font-size:12px;font-family:monospace;color:#b6c2d6;box-shadow:0 1px 2px #000a}@media(max-width:768px){.search-modal{top:5%;width:95%;max-height:90vh}.search-input{font-size:16px}.search-shortcut{display:none}.search-tips{gap:10px}.tip{font-size:11px}}.app-layout{display:flex;min-height:100vh;background-color:var(--bg-primary);color:var(--text-primary)}.main-content{flex:1;display:flex;flex-direction:column;margin-left:0;transition:margin-left var(--transition-slow) ease}.app-layout.is-desktop .main-content.with-sidebar{margin-left:280px}.page-content{flex:1;padding:clamp(var(--spacing-4),2vw,var(--spacing-8));overflow-y:auto;overflow-x:hidden}.sidebar-overlay{position:fixed;inset:0;background:#0000008c;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;z-index:998}.sidebar-overlay.active{opacity:1;visibility:visible}@media(max-width:1024px){.app-layout.is-desktop .main-content.with-sidebar{margin-left:0}.page-content{padding:var(--spacing-4);padding-bottom:var(--spacing-12)}}@media(max-width:768px){.app-layout,.main-content,.page-content{max-width:100%;overflow-x:hidden}.page-content{padding:.75rem .75rem 5rem}}.loader-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-4)}.loader-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--color-teal);border-radius:50%;animation:spin 1s linear infinite}.loader-container.small .loader-spinner{width:24px;height:24px;border-width:2px}.loader-container.large .loader-spinner{width:56px;height:56px;border-width:4px}.loader-text{margin-top:var(--spacing-3);color:var(--text-secondary);font-size:var(--font-size-sm)}@keyframes spin{to{transform:rotate(360deg)}}.notifications-container{position:fixed;top:var(--spacing-4);right:var(--spacing-4);z-index:var(--z-50);display:flex;flex-direction:column;gap:var(--spacing-2)}.notification{position:relative;display:flex;align-items:flex-start;gap:var(--spacing-3);padding:14px 18px 14px 20px;border-radius:14px;background:#0f172aeb;border:1px solid rgba(148,163,184,.2);box-shadow:0 20px 45px #0f172a73;min-width:280px;max-width:380px;animation:slideIn .3s ease-out;color:#e2e8f0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.notification:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.04),transparent);pointer-events:none}.notification:after{content:"";position:absolute;left:0;top:12px;bottom:12px;width:4px;border-radius:999px;background:#6366f199;box-shadow:0 0 10px #6366f173}.notification-success:after{background:#22c55ebf;box-shadow:0 0 12px #22c55e59}.notification-warning:after{background:#facc15bf;box-shadow:0 0 12px #facc1559}.notification-error:after{background:#d4a900bf;box-shadow:0 0 12px #d4a90066}.notification-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px}.notification-info .notification-icon{color:#818cf8}.notification-success .notification-icon{color:#34d399}.notification-warning .notification-icon{color:#fbbf24}.notification-error .notification-icon{color:#fcd34d}.notification-message{flex:1;font-size:.9rem;color:#e2e8f0;line-height:1.5;font-weight:500}.notification-close{background:transparent;border:none;color:#94a3b8a6;cursor:pointer;padding:var(--spacing-1);display:flex;align-items:center;justify-content:center;border-radius:var(--radius);transition:var(--transition)}.notification-close:hover{background-color:#94a3b81f;color:#f1f5f9}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.notification{animation:slideIn .3s ease-out}@keyframes slideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.notification-exit,.notification.closing{animation:slideOut .3s ease-out forwards}@media(max-width:768px){.notifications-container{top:auto;bottom:var(--spacing-4);right:var(--spacing-2);left:var(--spacing-2)}.notification{min-width:auto;max-width:100%;width:100%}}.app-notifications-stack{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.app-notifications-stack>*{pointer-events:auto}@media(max-width:768px){.app-notifications-stack{top:12px;left:12px;right:12px;gap:8px}}
