.login-bg-overlay{position:absolute;inset:0;background-image:radial-gradient(circle at 20% 80%,rgba(15,118,110,.15) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(20,184,166,.15) 0%,transparent 50%),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.02'%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}.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:all var(--transition-normal);display:flex;gap:1rem;border:1px solid var(--border-color)}.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-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:all 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:all 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:all 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:all 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:all 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:all 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)}}::-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:#0f766e4d;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:280px;background:var(--bg-card);color:var(--text-primary);overflow-y:auto;overflow-x:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);z-index:1000;box-shadow:4px 0 20px #0000004d;border-right:1px solid var(--border-color);display:flex;flex-direction:column}.sidebar-professional::-webkit-scrollbar{width:6px}.sidebar-professional::-webkit-scrollbar-track{background:#ffffff0d}.sidebar-professional::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.sidebar-professional::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.sidebar-header{padding:0;border-bottom:1px solid var(--border-color);background:var(--bg-secondary);display:flex;justify-content:center;align-items:center}.sidebar-logo{width:100%;height:auto;object-fit:contain;display:block}.sidebar-logo:hover{opacity:.95}.sidebar-nav{padding:16px 0;flex:1;overflow-y:auto}.nav-section{margin-bottom:4px}.nav-item{display:flex;align-items:center;padding:14px 20px;cursor:pointer;transition:all var(--transition-normal);position:relative;text-decoration:none;color:var(--text-secondary);font-weight:500;font-size:.9rem;letter-spacing:.5px}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item.active{background:#0f766e26;color:var(--color-teal-light);border-left:4px solid var(--color-teal-light)}.nav-item.parent{font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:1px}.nav-item.parent:hover{background:var(--bg-hover)}.nav-item.parent.open{background:#0f766e1a;color:var(--color-teal-light)}.nav-item.single{font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:1px}.nav-icon{font-size:1.3rem;margin-right:12px;min-width:24px;display:flex;align-items:center;justify-content:center}.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-secondary);animation:slideDown .3s ease;overflow:hidden}@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:12px 20px 12px 52px;cursor:pointer;transition:all var(--transition-fast);text-decoration:none;color:var(--text-tertiary);font-size:.875rem;position:relative}.nav-subitem:before{content:"";position:absolute;left:32px;top:50%;width:4px;height:4px;background:var(--text-tertiary);border-radius:50%;transform:translateY(-50%);transition:all var(--transition-fast)}.nav-subitem:hover{background:var(--bg-hover);color:var(--text-primary);padding-left:56px}.nav-subitem.active{background:#0f766e26;color:var(--color-teal-light);border-left:3px solid var(--color-teal-light);font-weight:600}.nav-subitem.active:before{background:var(--color-teal-light);width:6px;height:6px}.subitem-icon{font-size:1.1rem;margin-right:10px;min-width:20px;display:flex;align-items:center;justify-content:center}.subitem-label{flex:1}.sidebar-professional.closed{transform:translate(-100%)}@media(max-width:768px){.sidebar-professional{width:100%;max-width:280px}.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(15,118,110,.1) 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:var(--gradient-teal);animation:pulseTeal 2s ease-in-out infinite;box-shadow:0 0 10px #0f766e80}@keyframes pulseTeal{0%,to{opacity:1;box-shadow:0 0 10px #0f766e80}50%{opacity:.7;box-shadow:0 0 20px #0f766ecc}}.nav-item,.nav-subitem,.nav-arrow{transition:all .3s cubic-bezier(.4,0,.2,1)}.nav-item:hover,.nav-subitem:hover{box-shadow:inset 0 0 20px #0f766e1a}.sidebar-footer{padding:16px 20px;border-top:1px solid var(--border-color);background:var(--bg-secondary);flex-shrink:0}.logout-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:12px 16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--color-danger);font-weight:600;font-size:.9rem;cursor:pointer;transition:all var(--transition-normal)}.logout-btn:hover{background:#ef444433;border-color:var(--color-danger);transform:translateY(-2px);box-shadow:var(--shadow-danger)}.logout-btn:active{transform:translateY(0)}.logout-btn svg{transition:transform .3s ease}.logout-btn:hover svg{transform:translate(3px)}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0009;z-index:999;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:4px 0 20px #00000080}.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:#6366f11f;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{background:linear-gradient(135deg,#ef4444,#dc2626)}.notifications-bell__badge--info{background:linear-gradient(135deg,#6366f1,#4f46e5)}.notifications-bell__popover{position:absolute;top:calc(100% + 12px);right:0;width:320px;background:var(--bg-card, #111827);border-radius:16px;box-shadow:0 20px 45px #0f172a59;border:1px solid rgba(99,102,241,.1);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(99,102,241,.16);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:280px;overflow-y:auto}.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:center;gap:12px;padding:14px 16px;border:1px solid rgba(148,163,184,.25);border-radius:10px;margin:10px 12px;background:#0f172aa6;transition:border-color .2s ease,background .2s ease}.notifications-bell__item:hover{border-color:#6366f1cc;background:#1e293bd9}.notifications-bell__item-main{display:flex;flex-direction:column;gap:6px;flex:1}.notifications-bell__item-type{font-size:14px;font-weight:700;color:#e0e7ff}.notifications-bell__item-meta{display:flex;align-items:center;gap:8px}.notifications-bell__item-date{font-size:12px;color:#94a3b8}.notifications-bell__item-dot{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#f59e42,#f97316);margin-top:2px;margin-right:4px;flex-shrink:0;box-shadow:0 0 6px #f59e42b0}.notifications-bell__footer{padding:12px 18px;border-top:1px solid rgba(99,102,241,.12);display:flex;justify-content:center}@media(max-width:768px){.notifications-bell__popover{width:min(90vw,320px);right:-16px}}.header{background:var(--bg-card);color:var(--text-primary);display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;box-shadow:var(--shadow-md);border-bottom:1px solid var(--border-color);position:relative;z-index:900;overflow:visible}.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:all var(--transition-fast);margin-right:1rem}.menu-toggle:hover{background:var(--bg-hover);border-color:var(--color-teal);color:var(--color-teal-light)}.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-search{flex:1;max-width:500px;margin:0 2rem;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:all var(--transition-normal)}.header-search:hover{border-color:var(--color-teal);box-shadow:0 0 0 3px #0f766e26}.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}.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:all var(--transition-fast)}.theme-toggle-btn:hover{background:var(--bg-hover);color:var(--color-teal-light);border-color:var(--color-teal);transform:rotate(15deg)}.theme-toggle-btn:active{transform:rotate(0) scale(.95)}.theme-toggle-btn svg{transition:transform var(--transition-normal)}.user-info>.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:all var(--transition-fast)}.user-info>.logout-button:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 6px 16px #0f766e66}.user-info>.logout-button:active{transform:translateY(0)}@media(max-width:768px){.header{padding:.75rem 1rem}.header h1{font-size:1.25rem}.header-search{display:none}.user-info button{padding:8px 16px;font-size:var(--font-size-sm)}}.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:#f87171bf;box-shadow:0 0 12px #f8717166}.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:#f87171}.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}.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:all .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 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:#3b82f6;background:#232a3a;box-shadow:0 0 0 3px #3b82f666}.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:all .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:#2563eb;color:#fff!important;box-shadow:0 0 0 2px #3b82f6;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:#ef4444}.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)}.main-content{flex:1;display:flex;flex-direction:column;margin-left:280px;overflow:hidden;transition:margin-left var(--transition-slow) ease}.main-content.expanded{margin-left:0}.page-content{flex:1;padding:var(--spacing-8);overflow-y:auto}@media(max-width:768px){.page-content{padding:var(--spacing-4)}}.card{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-6);margin-bottom:var(--spacing-6);border:1px solid var(--border-color)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-6)}.section-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.table-container{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;border:1px solid var(--border-color)}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:var(--spacing-4);text-align:left;border-bottom:1px solid var(--border-color);color:var(--text-primary)}.data-table th{background-color:var(--bg-tertiary);font-weight:var(--font-weight-semibold);color:var(--text-secondary)}.data-table tr:hover{background-color:var(--bg-hover)}.status{padding:.25rem .75rem;border-radius:9999px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.status-active{background-color:#10b98126;color:var(--color-success)}.status-inactive{background-color:#ef444426;color:var(--color-danger)}.form-group{margin-bottom:var(--spacing-4)}.form-label{display:block;margin-bottom:var(--spacing-2);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.form-control{width:100%;padding:var(--spacing-2);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--bg-tertiary);color:var(--text-primary);transition:all var(--transition-fast)}.form-control:focus{outline:none;border-color:var(--color-teal);box-shadow:0 0 0 3px #0f766e33}.search-bar{display:flex;align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-2)}.search-input{border:none;padding:.25rem .5rem;font-size:var(--font-size-sm);flex:1;background:transparent;color:var(--text-primary)}.search-input:focus{outline:none}.loading-spinner{display:inline-block;width:2rem;height:2rem;border:2px solid var(--border-color);border-radius:50%;border-top-color:var(--color-teal);animation:spin 1s linear infinite}.empty-state{text-align:center;padding:var(--spacing-12) var(--spacing-4);color:var(--text-tertiary)}.empty-state-icon{font-size:3rem;margin-bottom:var(--spacing-4)}.empty-state-text{font-size:var(--font-size-base);margin-bottom:var(--spacing-6)}.action-buttons{display:flex;gap:var(--spacing-2)}.btn-icon{padding:var(--spacing-2);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast);background:transparent;color:var(--text-secondary)}.btn-icon:hover{background-color:var(--bg-hover);color:var(--text-primary)}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#0f0f1a,#1a1a2e,#16213e);position:relative;overflow:hidden}.login-bg-overlay{position:absolute;inset:0;background-image:radial-gradient(circle at 20% 80%,rgba(15,118,110,.15) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(20,184,166,.15) 0%,transparent 50%),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.02'%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-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 #0f766e4d;animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{box-shadow:0 10px 40px #0f766e4d}50%{box-shadow:0 10px 60px #0f766e80}}.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:#fff9;font-size:.95rem;margin:.5rem 0 0;font-weight:300}.login-form{background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);padding:2.5rem;border-radius:20px;display:flex;flex-direction:column;gap:1.25rem;width:380px;box-shadow:0 25px 50px #0000004d}.login-form h2{text-align:center;color:#fff;margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.input-group{position:relative;display:flex;align-items:center}.login-form input{width:100%;padding:1rem;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:12px;font-size:1rem;color:#fff;transition:all .3s ease}.login-form input::placeholder{color:#fff6}.login-form input:focus{outline:none;border-color:#14b8a6;background:#0f766e1a;box-shadow:0 0 0 3px #0f766e33}.login-form button{background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff;border:none;padding:1rem;border-radius:12px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #0f766e4d;margin-top:.5rem}.login-form button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #0f766e66}.login-form button:active:not(:disabled){transform:translateY(0)}.login-form button:disabled{background:#ffffff1a;color:#fff6;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:#dc354533;color:#ff6b6b;padding:.75rem 1rem;border-radius:10px;border:1px solid rgba(220,53,69,.3);text-align:center;font-size:.9rem}.login-footer{text-align:center}.login-footer p{color:#ffffff4d;font-size:.85rem;margin:0}@media(max-width:480px){.login-form{width:100%;max-width:340px;padding:2rem 1.5rem}.brand-name{font-size:2rem}}.month-selector{display:flex;align-items:center;gap:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:8px 16px}.month-icon{font-size:18px}.month-select,.year-select{background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:var(--text-primary, #fff);font-size:15px;font-weight:600;padding:10px 36px 10px 16px;cursor:pointer;transition:all .2s ease;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.month-select{min-width:140px}.year-select{min-width:100px}.month-select:hover,.year-select:hover{background-color:#ffffff1f;border-color:#dc262666}.month-select:focus,.year-select:focus{outline:none;border-color:#dc2626;box-shadow:0 0 0 3px #dc262633}.month-select option,.year-select option{background:#1f2937;color:#fff;padding:8px}.month-current-btn{background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:8px;padding:10px 16px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-left:8px;white-space:nowrap}.month-current-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #dc262666}@media(max-width:600px){.month-selector{flex-wrap:wrap;justify-content:center;padding:8px 12px}.month-select,.year-select{min-width:auto;padding:8px 28px 8px 12px;font-size:14px}.month-current-btn{margin-left:0;margin-top:8px;width:100%}}.dashboard-new{padding:24px;max-width:1600px;margin:0 auto;background:var(--bg-secondary);min-height:100vh}.loading-spinner{display:flex;align-items:center;justify-content:center;min-height:60vh;font-size:20px;color:var(--text-secondary)}.dashboard-new-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.dashboard-new-header h1{font-size:32px;font-weight:800;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 8px}.dashboard-new-header p{color:var(--text-secondary);font-size:15px;margin:0}.btn-refresh{padding:12px 24px;background:var(--bg-card);border:2px solid var(--border-color);border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;color:var(--text-primary);transition:all .2s}.btn-refresh:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:#667eea;color:#667eea}.dashboard-new .kpis-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-bottom:32px}.dashboard-new .kpi-card{background:var(--bg-card);border-radius:16px;padding:24px;box-shadow:var(--shadow-md);border:1px solid var(--border-color);display:block;transition:all .3s;position:relative;overflow:hidden}.dashboard-new .kpi-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,#667eea,#764ba2)}.dashboard-new .kpi-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.dashboard-new .kpi-revenus:before{background:linear-gradient(180deg,#10b981,#059669)}.dashboard-new .kpi-depenses:before{background:linear-gradient(180deg,#ef4444,#dc2626)}.dashboard-new .kpi-benefice-positive:before{background:linear-gradient(180deg,#3b82f6,#2563eb)}.dashboard-new .kpi-benefice-negative:before{background:linear-gradient(180deg,#f59e0b,#d97706)}.dashboard-new .kpi-voitures:before{background:linear-gradient(180deg,#8b5cf6,#7c3aed)}.dashboard-new .kpi-content{flex:1}.dashboard-new .kpi-label{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.dashboard-new .kpi-value{font-size:28px;font-weight:800;color:var(--text-primary);margin-bottom:4px}.dashboard-new .kpi-detail{font-size:12px;color:var(--text-tertiary)}.dashboard-new .kpi-progress{width:100%;height:6px;background:var(--bg-tertiary);border-radius:3px;margin-top:12px;overflow:hidden}.dashboard-new .kpi-progress-bar{height:100%;background:linear-gradient(90deg,#8b5cf6,#7c3aed);border-radius:3px;transition:width .5s ease}.graph-section{margin-bottom:32px}.graph-card{background:var(--bg-card);border-radius:16px;padding:24px;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.graph-header{margin-bottom:24px}.graph-header h2{font-size:20px;font-weight:700;color:var(--text-primary);margin:0}.info-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}.info-column{display:flex;flex-direction:column;gap:24px}.info-card{background:var(--bg-card);border-radius:16px;box-shadow:var(--shadow-md);border:1px solid var(--border-color);overflow:hidden}.info-card-header{padding:20px 24px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background:var(--bg-tertiary)}.info-card-header h3{font-size:16px;font-weight:700;color:var(--text-primary);margin:0}.info-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:700}.alert-badge{background:linear-gradient(135deg,#ef4444,#dc2626)}.warning-badge{background:linear-gradient(135deg,#f59e0b,#d97706)}.info-card-body{padding:16px;max-height:400px;overflow-y:auto}.info-empty{text-align:center;padding:40px 20px;color:var(--text-tertiary);font-size:14px}.retours-list{display:flex;flex-direction:column;gap:12px}.retour-item{display:flex;align-items:center;gap:12px;padding:16px;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color);cursor:pointer;transition:all .2s}.retour-item:hover{background:var(--bg-hover);transform:translate(4px);border-color:#667eea}.retour-icon{font-size:32px;line-height:1}.retour-info{flex:1}.retour-voiture{font-weight:700;color:var(--text-primary);font-size:15px;margin-bottom:4px}.retour-client{font-size:13px;color:var(--text-secondary);margin-bottom:2px}.retour-immat{font-size:12px;color:var(--text-tertiary);font-weight:600;letter-spacing:.5px}.retour-action{font-size:20px;color:var(--text-tertiary)}.alertes-list{display:flex;flex-direction:column;gap:12px}.alerte-item{display:flex;align-items:center;gap:12px;padding:16px;background:var(--bg-secondary);border-radius:12px;border-left:4px solid #ef4444;border:1px solid var(--border-color)}.alerte-assurance{border-left-color:#f59e0b}.alerte-visite{border-left-color:#3b82f6}.alerte-autorisation{border-left-color:#8b5cf6}.alerte-icon{font-size:28px;line-height:1}.alerte-info{flex:1}.alerte-title{font-weight:700;color:var(--text-primary);font-size:14px;margin-bottom:4px}.alerte-detail{font-size:13px;color:var(--text-secondary);margin-bottom:2px}.alerte-date{font-size:12px;color:var(--text-tertiary);font-weight:600}.paiements-card .info-card-body{padding:32px 24px}.paiements-total{text-align:center}.paiements-total-label{font-size:14px;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.paiements-total-value{font-size:42px;font-weight:800;background:linear-gradient(135deg,#f59e0b,#d97706);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:24px}.btn-paiements{padding:14px 28px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;border-radius:10px;font-weight:700;font-size:14px;cursor:pointer;transition:all .3s;box-shadow:0 4px 12px #f59e0b4d}.btn-paiements:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f59e0b66}@media(max-width:1200px){.dashboard-new .kpis-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:1024px){.info-grid{grid-template-columns:1fr}}@media(max-width:768px){.dashboard-new{padding:16px}.dashboard-new .kpis-grid{grid-template-columns:1fr}.dashboard-new-header{flex-direction:column;align-items:flex-start;gap:16px}}.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)}.pagination-container{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-4);background-color:var(--bg-card);border-top:1px solid var(--border-color)}.pagination-info{font-size:var(--font-size-sm);color:var(--text-secondary)}.pagination-controls{display:flex;gap:var(--spacing-2)}.pagination-button{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--border-color);background-color:var(--bg-card);color:var(--text-secondary);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.pagination-button:hover:not(:disabled){background-color:var(--bg-hover);border-color:var(--color-teal);color:var(--text-primary)}.pagination-button.active{background-color:var(--color-teal);border-color:var(--color-teal);color:#fff}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-button{transform:translateY(0)}.pagination-button:active:not(:disabled){transform:translateY(1px)}.cars-professional-page{padding:24px;max-width:1600px;margin:0 auto;background:transparent;min-height:100vh}.cars-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;background:#fff;padding:24px;border-radius:16px;box-shadow:0 2px 12px #00000014}.page-title{margin:0;font-size:28px;font-weight:700;color:#1a1a1a;display:flex;align-items:center;gap:12px}.page-subtitle{margin:8px 0 0;color:#6b7280;font-size:14px;font-weight:500}.view-toggle{display:flex;background:#f3f4f6;border-radius:8px;padding:4px}.view-btn{padding:8px 16px;border:none;background:transparent;cursor:pointer;font-size:18px;border-radius:6px;transition:all .2s;color:#6b7280}.view-btn.active{background:#f5f5f5;color:#dc2626;box-shadow:0 1px 3px #0000001a}.search-section{margin-bottom:24px;background:#fff;padding:20px;border-radius:16px;box-shadow:0 2px 12px #00000014}.search-input-pro{width:100%;padding:14px 48px;border:2px solid #e5e7eb;border-radius:12px;font-size:15px;background:#f5f5f5;transition:all .2s;box-shadow:0 2px 8px #0000000a}.search-clear{position:absolute;right:16px;top:50%;transform:translateY(-50%);background:#f3f4f6;border:none;width:24px;height:24px;border-radius:50%;cursor:pointer;font-size:12px;color:#6b7280;display:flex;align-items:center;justify-content:center;transition:all .2s}.search-clear:hover{background:#e5e7eb;color:#1a1a1a}.filter-btn{padding:8px 16px;border:2px solid #e5e7eb;background:#f5f5f5;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;color:#6b7280}.cars-content{min-height:400px}.table-info{background:#fff;padding:12px 20px;border-radius:12px 12px 0 0;font-size:13px;color:#6b7280;font-weight:600;box-shadow:0 2px 12px #00000014}.cars-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px}.car-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 12px #00000014;transition:all .3s;display:flex;flex-direction:column}.car-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.card-header{padding:20px;background:linear-gradient(135deg,#f9fafb,#f3f4f6);display:flex;align-items:center;gap:16px;border-bottom:1px solid #e5e7eb}.car-avatar{width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:28px;flex-shrink:0;box-shadow:0 4px 12px #00000026}.car-info{flex:1;min-width:0}.car-brand{margin:0;font-size:18px;font-weight:700;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.car-model{margin:4px 0 0;font-size:14px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.car-plate{margin:6px 0 0;font-size:12px;font-weight:600;color:#0f766e;background:#f0fdfa;padding:4px 8px;border-radius:4px;display:inline-block}.info-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #f3f4f6}.info-text{font-size:14px;color:#374151;flex:1}.info-label{font-size:12px;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-right:8px}.info-value{font-size:14px;color:#1a1a1a;font-weight:600}.color-indicator{display:inline-flex;align-items:center;gap:8px}.color-dot{width:20px;height:20px;border-radius:50%;border:2px solid #e5e7eb;box-shadow:0 2px 4px #0000001a}.status-badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.status-libre{background:#d1fae5;color:#065f46}.status-louee,.status-louée{background:#fef3c7;color:#92400e}.status-entretien{background:#dbeafe;color:#1e40af}.status-hors_service{background:#fee2e2;color:#dc2626}.price-display{background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff;padding:12px;border-radius:8px;text-align:center;margin-top:12px}.price-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;opacity:.9;margin-bottom:4px}.price-value{font-size:24px;font-weight:700}.price-currency{font-size:14px;opacity:.9;margin-left:4px}.card-footer{padding:16px 20px;background:#f9fafb;display:flex;gap:8px;border-top:1px solid #e5e7eb}.cars-table-container{background:#fff;border-radius:0 0 16px 16px;overflow:hidden;box-shadow:0 2px 12px #00000014}.cars-table-pro{width:100%;border-collapse:collapse}.cars-table-pro thead{background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff}.cars-table-pro th{padding:16px 12px;text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.cars-table-pro th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s}.cars-table-pro th.sortable:hover{background:#ffffff1a}.cars-table-pro tbody tr{border-bottom:1px solid #f3f4f6;transition:all .2s}.cars-table-pro tbody tr:hover{background:#f9fafb;transform:scale(1.001)}.cars-table-pro tbody tr:last-child{border-bottom:none}.cars-table-pro td{padding:14px 12px;font-size:14px;vertical-align:middle}.brand-col{font-weight:600;color:var(--text-primary);font-size:15px}.model-col{color:var(--text-primary)}.plate-col .plate-badge{display:inline-block;font-size:12px;font-weight:600;color:#0f766e;background:#f0fdfa;padding:4px 10px;border-radius:6px;border:1px solid #ccfbf1}.color-col .color-display{display:flex;align-items:center;gap:8px}.color-col .color-dot{width:24px;height:24px;border-radius:50%;box-shadow:0 2px 4px #00000026;flex-shrink:0}.km-col{color:var(--text-primary);font-weight:500}.price-col .price-amount{font-size:16px;font-weight:700;color:#0f766e}.price-col .currency{font-size:12px;color:var(--text-secondary);font-weight:500}.actions-col{width:120px}.table-car-info{display:flex;align-items:center;gap:12px}.table-avatar{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:20px;flex-shrink:0}.table-brand{font-weight:600;color:var(--text-primary);font-size:15px}.table-model{font-size:13px;color:var(--text-secondary);margin-top:2px}.table-plate{font-size:12px;font-weight:600;color:#0f766e;background:#f0fdfa;padding:2px 8px;border-radius:4px;display:inline-block;margin-top:4px}.table-specs{font-size:13px;color:var(--text-primary)}.table-specs div{padding:2px 0}.table-price{font-size:18px;font-weight:700;color:#0f766e}.table-currency{font-size:12px;color:#6b7280;font-weight:500}.empty-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;background:#fff;border-radius:16px;padding:48px;box-shadow:0 2px 12px #00000014}.empty-state h3,.error-state p{margin:0 0 8px;color:#1a1a1a;font-size:20px;font-weight:600}.empty-state p{margin:0 0 24px;color:#6b7280;font-size:14px}@media(max-width:1200px){.cars-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media(max-width:768px){.cars-professional-page{padding:16px}.cars-header{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{width:100%;flex-wrap:wrap}.btn-export,.btn-add{flex:1}.cars-grid{grid-template-columns:1fr}.cars-table-container{overflow-x:auto}.cars-table-pro{min-width:1000px}.page-title{font-size:24px}.title-icon{font-size:28px}.filter-buttons{justify-content:flex-start}.filter-btn{font-size:12px;padding:6px 12px}}@media(max-width:480px){.car-card{border-radius:12px}.card-header{padding:16px}.car-avatar{width:56px;height:56px;font-size:24px}.car-brand{font-size:16px}.card-body{padding:16px}.card-footer{flex-direction:column}.btn-card{width:100%}}.car-card,.cars-table tbody tr{animation:fadeIn .3s ease-out}.loading-container{display:flex;justify-content:center;align-items:center;min-height:400px}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.status-urgent{background:#fee2e2;color:#dc2626;border:1px solid #fca5a5}.status-proche{background:#fed7aa;color:#ea580c;border:1px solid #fdba74}.status-ok{background:#d1fae5;color:#059669;border:1px solid #6ee7b7}.status-effectue{background:#f3f4f6;color:#6b7280;border:1px solid #d1d5db}.cars-page{padding:32px;background:#181c2f;min-height:100vh}.cars-header{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:18px;padding:32px 40px 24px;margin-bottom:32px;color:#fff;box-shadow:0 4px 24px #6366f11f}.cars-title{font-size:2.6rem;font-weight:800;margin-bottom:8px}.cars-subtitle{font-size:1.2rem;font-weight:400;opacity:.85}.cars-actions-bar{display:flex;gap:18px;margin-bottom:28px;align-items:center}.cars-search-bar{flex:1;padding:12px 18px;border-radius:10px;border:none;font-size:1rem;background:#232336;color:#e0e7ff;box-shadow:0 2px 8px #6366f114}.cars-status-filter{padding:12px 18px;border-radius:10px;border:none;background:#232336;color:#e0e7ff;font-size:1rem}.btn-add-car{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-weight:700;border:none;border-radius:10px;padding:12px 24px;font-size:1rem;cursor:pointer;box-shadow:0 2px 8px #6366f12e;transition:background .2s}.btn-add-car:hover{background:linear-gradient(135deg,#8b5cf6,#6366f1)}.btn-export-excel{background:none;border:2px solid #059669;color:#059669;font-weight:700;border-radius:10px;padding:12px 24px;font-size:1rem;cursor:pointer;margin-left:8px;transition:background .2s,color .2s}.btn-export-excel:hover{background:#059669;color:#fff}.cars-stats-row{display:flex;gap:24px;margin-bottom:32px}.cars-stat-card{flex:1;border-radius:12px;padding:20px;color:var(--text-primary);background:linear-gradient(180deg,#ffffff05,#ffffff03);box-shadow:0 10px 30px #0206178c;display:flex;flex-direction:column;align-items:flex-start;transition:transform .18s ease,box-shadow .18s ease}.cars-stat-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px #02061799}.cars-stat-blue{border-left:6px solid #6366f1}.cars-stat-green{border-left:6px solid #059669}.cars-stat-yellow{border-left:6px solid #f59e42}.cars-stat-orange{border-left:6px solid #f43f5e}.cars-stat-label{font-size:1.05rem;font-weight:800;margin-bottom:8px;color:#ffffffeb}.cars-stat-value{font-size:2.4rem;font-weight:900;margin-bottom:6px;color:#fff;line-height:1}.cars-stat-detail{font-size:.98rem;opacity:.8;color:#ffffffbf}.cars-table-section{background:#232336;border-radius:18px;padding:24px;box-shadow:0 2px 16px #6366f11a}.cars-table-container{overflow-x:auto}.cars-table{width:100%;border-collapse:collapse;background:none}.cars-table thead tr{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.cars-table th{padding:18px 12px;font-size:1.1rem;font-weight:700;text-align:left;border-bottom:2px solid #232336}.cars-table td{padding:16px 12px;font-size:1rem;color:#e0e7ff;border-bottom:1px solid #232336}.plate-badge{background:#232336;color:#a5b4fc;border-radius:8px;padding:2px 10px;font-size:.95rem;display:inline-block}.btn-action{border:none;border-radius:8px;padding:8px 12px;font-size:1.2rem;font-weight:700;cursor:pointer;margin-right:6px;transition:background .2s}.btn-edit-action{background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff}.btn-edit-action:hover{background:linear-gradient(135deg,#0891b2,#06b6d4)}.btn-delete-action{background:linear-gradient(135deg,#f43f5e,#e11d48);color:#fff}.btn-delete-action:hover{background:linear-gradient(135deg,#e11d48,#f43f5e)}.empty-state{text-align:center;color:#fff;padding:48px 0}.error-state{text-align:center;color:#f43f5e;padding:48px 0}.btn-add-empty{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-weight:700;border:none;border-radius:10px;padding:12px 24px;font-size:1rem;cursor:pointer;margin-top:18px}.btn-add-empty:hover{background:linear-gradient(135deg,#8b5cf6,#6366f1)}.vehicle-summary-card{background:#e0e7ff;border-radius:16px;box-shadow:0 2px 16px #6366f11a;padding:32px 40px;margin:24px auto;max-width:700px;color:#232336;border:2px solid #a5b4fc}.vehicle-summary-card h2{color:#6d28d9;font-size:1.5rem;font-weight:800;margin-bottom:18px}.vehicle-summary-row{display:flex;flex-wrap:wrap;gap:32px;font-size:1.1rem}.vehicle-summary-col{flex:1 1 40%;min-width:220px;margin-bottom:12px}.vehicle-summary-label{font-weight:700;color:#232336;margin-right:8px}.vehicle-summary-value{font-weight:700;color:#6d28d9}.vehicle-summary-icon{margin-right:6px;font-size:1.2rem}.vehicle-summary-status{color:#059669;font-weight:700;background:#d1fae5;border-radius:8px;padding:2px 10px;display:inline-block}.vehicle-summary-price{color:#f59e42;font-weight:700}@media(max-width:600px){.vehicle-summary-card{padding:18px 8px}.vehicle-summary-row{gap:12px}}.cars-table{width:100%;border-collapse:separate;border-spacing:0;background:none}.cars-table thead tr{background:linear-gradient(90deg,#a78bfa,#6366f1);color:#fff}.cars-table th{padding:18px 12px;font-size:1.1rem;font-weight:700;text-align:left;border-top-left-radius:14px;border-top-right-radius:14px;border-bottom:2px solid #232336}.cars-table th:first-child{border-top-left-radius:14px}.cars-table th:last-child{border-top-right-radius:14px}.cars-table td{padding:16px 12px;font-size:1rem;color:#e0e7ff;border-bottom:1px solid #232336;background:none}.cars-table thead tr{background:none}.cars-table th{background:linear-gradient(90deg,#a78bfa,#818cf8)!important;color:#fff!important;font-weight:700;border:none;font-size:1.15rem;letter-spacing:.02em;padding:20px 0;transition:none!important}.cars-table th:last-child{border-top-right-radius:0!important}.cars-table td{padding:16px 12px;font-size:1rem;color:#e0e7ff;border-bottom:1px solid #232336;background:none;margin:0!important}.cars-table tr{background:transparent;transition:background .2s}.cars-table tr:hover{background:#232336}.cars-table .plate-badge{background:#232336;color:#a5b4fc;border-radius:8px;padding:2px 10px;font-size:.95rem;display:inline-block}.cars-table .btn-action{border:none;border-radius:8px;padding:8px 12px;font-size:1.2rem;font-weight:700;cursor:pointer;margin-right:6px;transition:background .2s}.cars-table .btn-edit-action{background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff}.cars-table .btn-edit-action:hover{background:linear-gradient(135deg,#0891b2,#06b6d4)}.cars-table .btn-delete-action{background:linear-gradient(135deg,#f43f5e,#e11d48);color:#fff}.cars-table .btn-delete-action:hover{background:linear-gradient(135deg,#e11d48,#f43f5e)}.cars-table .cost-badge{color:#059669;background:#232336;border:1.5px solid #059669;border-radius:8px;padding:2px 16px;font-weight:700;font-size:1.08rem;display:inline-block;min-width:110px;text-align:center}.cars-table .type-badge{background:#a78bfa;color:#fff;border-radius:10px;padding:6px 18px;font-weight:700;font-size:1.02rem;display:inline-block}.cars-table{border-collapse:collapse!important;border-spacing:0!important}.cars-table th,.cars-table td{margin:0!important}.cars-table th:first-child,.cars-table th:last-child{border-radius:0!important}.cars-table th{border-radius:0!important}.cars-table th{background:#818cf8!important;color:#fff!important;font-weight:700;border:none;border-radius:0!important;font-size:1.15rem;letter-spacing:.02em;padding:20px 0;transition:none!important}.cars-table th:first-child{border-top-left-radius:18px!important}:root{--bg-primary: #1a2332;--bg-secondary: #0a0f1a;--bg-card: #1e293b;--bg-hover: #334155;--bg-tertiary: #334155;--border-color: rgba(148, 163, 184, .2);--border-hover: rgba(148, 163, 184, .35);--text-primary: #ffffff;--text-secondary: #cbd5e1;--text-tertiary: #94a3b8;--color-teal: #0f766e;--color-teal-light: #14b8a6;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #ef4444;--color-danger-dark: #dc2626;--color-info: #3b82f6;--color-violet: #8b5cf6;--primary-color: var(--color-teal);--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(0, 0, 0, .2);--shadow-md: 0 2px 4px rgba(0, 0, 0, .15);--shadow-lg: 0 4px 6px rgba(0, 0, 0, .2);--shadow-xl: 0 10px 15px rgba(0, 0, 0, .25);--shadow-teal: 0 4px 12px rgba(15, 118, 110, .3);--shadow-danger: 0 4px 12px rgba(239, 68, 68, .3);--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, #0f766e 0%, #14b8a6 100%);--gradient-success: linear-gradient(135deg, #10b981 0%, #059669 100%);--gradient-warning: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);--gradient-danger: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);--gradient-info: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);--gradient-violet: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%)}*,*: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:all var(--transition-fast);text-decoration:none}.btn:active{transform:scale(.98)}.btn-primary{background:var(--gradient-teal);color:#fff;box-shadow:var(--shadow-teal)}.btn-primary:hover{filter:brightness(1.1);box-shadow:0 6px 16px #0f766e66}.btn-secondary{background:transparent;color:var(--color-teal-light);border:1px solid var(--color-teal)}.btn-secondary:hover{background:#0f766e1a}.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-primary);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 #0f766e26}.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-secondary)}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:#3b82f614}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:#ef444426;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}.filter-select{padding:8px 12px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);cursor:pointer;font-size:14px;outline:none;transition:border-color .2s}.filter-select:hover{border-color:#0f766e}.filter-select:focus{border-color:#0f766e;box-shadow:0 0 0 3px #0f766e1a}.table-container-autorisation{background:var(--bg-card);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-lg, var(--shadow-md));border:1px solid rgba(255,255,255,.06);position:relative}.table-container-autorisation:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#0f766e);z-index:1}.table-autorisation{width:100%;border-collapse:collapse;position:relative}.table-autorisation thead tr{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:inset 0 -1px #ffffff14}.table-autorisation th{padding:16px;text-align:left;color:#fff;font-weight:700;font-size:14px;letter-spacing:.5px;text-transform:uppercase}.table-autorisation tbody tr{border-bottom:1px solid rgba(148,163,184,.12);transition:background .2s;background:transparent}.table-autorisation tbody tr:hover{background:#94a3b814}.table-autorisation td{padding:14px 16px;color:var(--text-primary);vertical-align:middle}.assurances-table .table-autorisation tbody tr{background:transparent;border-bottom:1px solid rgba(148,163,184,.12)}.assurances-table .table-autorisation tbody tr:last-child{border-bottom:none}.assurances-table .table-autorisation tbody tr:hover{background:#2563eb1a}.stats-card-autorisation{background:linear-gradient(180deg,#ffffff05,#ffffff03);border-radius:12px;padding:24px;box-shadow:0 10px 30px #02061780;border:1px solid rgba(255,255,255,.03);color:#ffffffeb;min-width:320px;flex:0 0 320px;display:flex;flex-direction:column;justify-content:center}.stats-row-inline{display:flex;gap:20px;align-items:stretch;flex-wrap:wrap;overflow-x:visible;padding-bottom:6px}.stats-row-inline::-webkit-scrollbar{height:8px}.stats-row-inline::-webkit-scrollbar-thumb{background:#ffffff0f;border-radius:999px}.stats-row-inline>.stats-card-autorisation{flex:1 1 220px;min-width:200px;max-width:100%}.card-badge{display:inline-block;width:14px;height:14px;border-radius:4px;background:#ffffff0a;margin-right:8px;vertical-align:middle;flex-shrink:0}.stats-card-label{font-size:14px;opacity:.9;margin-bottom:8px;font-weight:500}.stats-card-value{font-size:32px;font-weight:800}.stats-card-detail{font-size:13px;opacity:.85;margin-top:8px}.badge.status-success{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 8px #10b9814d}.badge.status-warning{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 2px 8px #f59e0b4d}.badge.status-danger{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 2px 8px #ef44444d}.table-chip{display:inline-flex;align-items:center;justify-content:center;padding:4px 12px;border-radius:999px;background:#6366f11f;border:1px solid rgba(99,102,241,.3);color:#a5b4fc;font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:12px;min-width:110px;text-align:center}.autorisation-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.autorisation-stat-card{background:var(--bg-card);border:1px solid rgba(148,163,184,.2);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--shadow-md);position:relative;overflow:hidden}.autorisation-stat-card:after{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:linear-gradient(90deg,#ffffff08,#ffffff03);pointer-events:none;border-bottom-left-radius:8px;border-bottom-right-radius:8px}.autorisation-stat-card .stat-label{display:inline-flex;align-items:center;gap:8px;letter-spacing:1.4px;text-transform:uppercase;font-weight:700;color:#e2e8f0b3}.autorisation-stat-card .stat-value{font-size:28px;font-weight:800;color:var(--text-primary);line-height:1}.autorisation-stat-card .stat-footer{font-size:12px;font-weight:600;color:#e2e8f0b3}.autorisation-stat-card .stat-sub{font-size:12px;font-weight:600;color:var(--text-secondary)}.stat-next-value{display:flex;align-items:baseline;gap:6px}.stat-unit{font-size:14px;font-weight:600;color:#e2e8f0b3;text-transform:uppercase;letter-spacing:1.2px}.stat-total{border-color:#667eea66;background:linear-gradient(135deg,rgba(102,126,234,.12),transparent)}.stat-warning{border-color:#f59e0b66;background:linear-gradient(135deg,rgba(245,158,11,.12),transparent)}.stat-danger{border-color:#ef444466;background:linear-gradient(135deg,rgba(239,68,68,.12),transparent)}.stat-next{border-color:#0f766e66;background:linear-gradient(135deg,rgba(15,118,110,.12),transparent)}.assurance-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.assurance-confirm-card{width:min(420px,90vw);background:var(--bg-card);border-radius:16px;padding:28px 32px;box-shadow:0 24px 48px #0f172a59;border:1px solid var(--border-color);text-align:center;display:flex;flex-direction:column;gap:18px}.assurance-confirm-icon{font-size:40px}.assurance-confirm-title{margin:0;font-size:22px;font-weight:700;color:var(--text-primary)}.assurance-confirm-text{margin:0;font-size:14px;color:var(--text-secondary);line-height:1.6}.assurance-confirm-actions{display:flex;justify-content:center;gap:12px}.assurance-confirm-btn{min-width:120px;padding:10px 18px;border-radius:10px;border:2px solid transparent;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.assurance-confirm-btn.cancel{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-color)}.assurance-confirm-btn.cancel:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #94a3b840}.assurance-confirm-btn.danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 8px 20px #ef444459}.assurance-confirm-btn.danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 24px #ef444473}.assurance-confirm-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.modal-steps{padding:24px;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.steps-container{display:flex;justify-content:space-between;align-items:center;position:relative}.progress-line{position:absolute;top:20px;left:10%;right:10%;height:3px;background:var(--border-color);z-index:0}.progress-bar{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s}.step-item{text-align:center;flex:1;position:relative;z-index:1}.step-circle{width:40px;height:40px;border-radius:50%;background:#e5e7eb;color:#9ca3af;display:flex;align-items:center;justify-content:center;margin:0 auto 8px;font-size:18px;font-weight:700;transition:all .3s}.step-circle.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea66}.step-label{font-size:12px;font-weight:600;color:#9ca3af}.step-label.active{color:#667eea}.modal-body{padding:32px}.step-content{animation:fadeIn .3s}.step-title{margin:0 0 20px;font-size:18px;color:var(--text-primary);font-weight:700}.btn-primary{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;box-shadow:0 4px 12px #667eea66;transition:all .2s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea80}.btn-success{padding:12px 32px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:10px;cursor:pointer;font-weight:700;font-size:15px;box-shadow:0 4px 12px #10b98166;transition:all .2s}.btn-success:hover{transform:translateY(-2px);box-shadow:0 6px 16px #10b98180}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--bg-card);border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out;border:1px solid var(--border-color)}.modal-content-large{background:var(--bg-card);border-radius:16px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out;border:1px solid var(--border-color)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;font-size:20px;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:28px;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.modal-body{padding:24px}.form-group{margin-bottom:20px}.form-group input,.form-group select{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;outline:none;transition:border-color .2s,box-shadow .2s;background:var(--bg-primary);color:var(--text-primary)}.form-group input:focus,.form-group select:focus{border-color:#0f766e;box-shadow:0 0 0 3px #0f766e1a}.form-group select:disabled{background:var(--bg-tertiary);cursor:not-allowed;opacity:.6}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--border-color)}.btn{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}.btn-primary{background:#0f766e;color:#fff}.btn-primary:hover{background:#0e6b60;transform:translateY(-1px);box-shadow:0 4px 12px #0f766e4d}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-hover);transform:translateY(-1px)}.add-button{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s;box-shadow:0 4px 12px #667eea4d}.add-button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.table-autorisation td{padding:14px 16px;color:var(--text-primary)}.table-autorisation td strong{font-weight:700;color:var(--text-primary)}.export-button{background:linear-gradient(135deg,#0f766e,#0e6b60);color:#fff;border:none;padding:8px 14px;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s;box-shadow:0 2px 8px #0f766e33}.export-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0f766e4d}.cars-table tbody tr{transition:all .2s}.cars-table tbody tr:hover{background:#f8fffe;transform:scale(1.01)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group{margin-bottom:24px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-primary);font-size:14px}.form-input,.form-select{width:100%;padding:12px 16px;border:2px solid var(--border-color);border-radius:10px;font-size:15px;background:var(--bg-card);color:var(--text-primary);outline:none;transition:border-color .2s;box-sizing:border-box}.form-input:focus,.form-select:focus{border-color:#667eea}.form-input:disabled{background:var(--bg-secondary);cursor:not-allowed}.form-hint{color:var(--text-secondary);font-size:12px;margin-top:4px;display:block}.form-error{color:#ef4444;font-size:13px;margin-top:8px}.form-file-name{margin:8px 0 0;color:#10b981;font-size:13px;font-weight:600}.page-container{background:var(--bg-primary);min-height:100vh;color:var(--text-primary);padding:0;margin:0}.page-header{background:var(--bg-card);padding:20px 24px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-sm)}.page-header h1{color:var(--text-primary);margin:0;font-size:24px;font-weight:700}.form-container{background:var(--bg-primary);padding:24px}.add-form{background:var(--bg-card);border-radius:12px;padding:24px;box-shadow:var(--shadow-md);border:1px solid var(--border-color);max-width:800px;margin:0 auto}.form-description{color:var(--text-secondary);font-size:14px;margin-bottom:20px;line-height:1.5}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-color)}.cancel-button{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color);padding:12px 24px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}.cancel-button:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-hover)}.submit-button{background:var(--gradient-primary);color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s;box-shadow:var(--shadow-sm)}.submit-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.submit-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.required{color:var(--color-danger);font-weight:700}.resume-card .resume-value.expiration{color:var(--color-warning);font-weight:600}.resume-card .resume-item.full-width{grid-column:1 / -1;padding-top:12px;border-top:1px solid var(--border-color);margin-top:12px}.cars-selection-container{margin-top:20px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:20px;box-shadow:var(--shadow-md)}.selection-section-title{font-size:18px;font-weight:700;color:var(--color-primary);margin-bottom:16px;display:flex;align-items:center;gap:8px}.car-selector-row{display:flex;gap:12px;align-items:stretch;margin-bottom:20px;background:var(--bg-secondary);padding:16px;border-radius:12px;border:1px solid var(--border-color)}.car-selector-group{flex:1;position:relative}.car-selector{width:100%;padding:14px 20px 14px 48px;border:2px solid var(--border-color);border-radius:12px;font-size:15px;background:var(--bg-card);color:var(--text-primary);outline:none;transition:all .15s ease;font-weight:500}.car-selector:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.car-selector-group:before{content:"🚗";position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:18px;z-index:1}.quick-select-actions{display:flex;gap:8px;margin-bottom:20px}.quick-select-btn{background:linear-gradient(135deg,var(--color-primary),var(--color-info));color:#fff;border:none;padding:10px 16px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .15s ease;box-shadow:0 2px 8px #667eea33}.quick-select-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 3px 12px #667eea40}.quick-select-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.selected-cars-section{margin-top:24px}.selection-count-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;background:linear-gradient(135deg,var(--color-primary),var(--color-info));color:#fff;border-radius:10px;box-shadow:0 2px 10px #667eea33}.selection-count{font-size:16px;font-weight:700;display:flex;align-items:center;gap:8px}.selection-count:before{content:"📋";font-size:18px}.clear-all-btn{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:8px 14px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .1s ease}.clear-all-btn:hover:not(:disabled){background:#ffffff4d}.selected-cars-list{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;max-height:320px;overflow-y:auto;box-shadow:inset 0 2px 8px #0000000d}.selected-car-item{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color);transition:all .3s ease;position:relative}.selected-car-item:hover{background:var(--bg-hover);transform:translate(2px);box-shadow:2px 0 8px #667eea14}.car-item-info{display:flex;align-items:center;gap:12px;flex:1}.car-item-avatar{width:40px;height:40px;background:linear-gradient(135deg,var(--color-primary),var(--color-info));border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px}.car-item-details{flex:1}.car-item-name{font-size:15px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.car-item-immat{font-size:12px;color:var(--text-secondary);background:var(--bg-tertiary);padding:3px 8px;border-radius:6px;display:inline-block;font-weight:600;border:1px solid var(--border-color)}.remove-car-btn{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;width:32px;height:32px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;transition:all .15s ease;box-shadow:0 2px 6px #ef444433}.remove-car-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:scale(1.05);box-shadow:0 3px 10px #ef444440}.empty-selection-message{text-align:center;padding:40px 20px;color:var(--text-secondary);background:var(--bg-secondary);border:2px dashed var(--border-color);border-radius:12px;font-size:14px}.empty-selection-message:before{content:"🔍";display:block;font-size:48px;margin-bottom:12px;opacity:.5}@keyframes slideInFromRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.selected-car-item{animation:slideInFromRight .3s ease-out}.selected-cars-list::-webkit-scrollbar{width:6px}.selected-cars-list::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:3px}.selected-cars-list::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:3px}.selected-cars-list::-webkit-scrollbar-thumb:hover{background:var(--color-info)}.selected-cars-resume{grid-column:1 / -1}.selected-cars-list{margin-top:8px;max-height:150px;overflow-y:auto;border:1px solid var(--border-color);border-radius:6px;padding:8px;background:var(--bg-secondary)}.selected-car-item{padding:6px 0;border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:13px}.selected-car-item:last-child{border-bottom:none}.selected-cars-list em{color:var(--text-secondary);font-style:italic}.resume-card{margin-top:24px;padding:20px;background:var(--bg-secondary);border-radius:12px;border:2px solid var(--color-primary);box-shadow:var(--shadow-sm)}.resume-title{margin:0 0 16px;font-size:16px;color:var(--color-primary);font-weight:700}.resume-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:14px}.resume-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border-color)}.resume-item:last-child{border-bottom:none}.resume-label{color:var(--text-secondary);font-weight:500}.resume-value{color:var(--text-primary);font-weight:600}.resume-montant{color:var(--color-success);font-size:16px;font-weight:700}@media(max-width:768px){.modal-content{width:95%;max-width:none}.cars-actions{flex-wrap:wrap}.search-input{width:100%;min-width:0}.filter-select,.add-button,.export-button{flex:1}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px}.stats-card-orange,.stats-card-green,.stats-card-red,.stats-card-blue{background:linear-gradient(180deg,#ffffff05,#ffffff03);border-left:6px solid rgba(255,255,255,.02)}.badge-amount{font-size:13px;font-weight:700;color:#059669;background:#d1fae5;padding:4px 10px;border-radius:6px;border:1px solid #a7f3d0;display:inline-block;white-space:nowrap}.badge-empty{font-size:13px;font-weight:600;color:#fff9;background:#94a3b81a;border:1px dashed rgba(148,163,184,.3);padding:4px 10px;border-radius:6px}.text-danger{color:#dc2626;font-weight:700}.pdf-link{color:#0891b2;text-decoration:none;font-weight:600;font-size:13px;display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;transition:all .2s}.pdf-link:hover{background:var(--bg-hover)}.btn-renew{padding:8px 14px;background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:700;box-shadow:0 2px 6px #06b6d44d;transition:all .2s;white-space:nowrap;display:inline-flex;align-items:center;gap:4px}.assurance-vehicle{display:flex;flex-direction:column;gap:4px}.assurance-vehicle .vehicle-name{font-size:13px;font-weight:600;color:var(--text-primary)}.assurance-vehicle .vehicle-sub{font-size:11px;color:#e2e8f099;letter-spacing:.04em;text-transform:uppercase}.assurances-actions{display:flex;gap:8px;justify-content:flex-end}.assurance-action-btn{width:36px;height:36px;border-radius:10px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;background:var(--bg-secondary);color:var(--text-primary);box-shadow:0 2px 8px #0f172a26}.assurance-action-btn:hover{transform:translateY(-2px) scale(1.02)}.assurance-action-btn:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea40}.assurance-action-btn.action-edit{color:var(--color-info);border-color:#06b6d44d}.assurance-action-btn.action-edit:hover{box-shadow:0 4px 12px #06b6d459}.assurance-action-btn.action-delete{color:#ef4444;border-color:#ef44444d}.assurance-action-btn.action-delete:hover{box-shadow:0 4px 12px #ef444466}.btn-delete{padding:8px 14px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:700;box-shadow:0 2px 8px #ef444459;transition:all .2s;display:inline-flex;align-items:center;gap:4px}.btn-delete:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef444473}.btn-renew:hover{transform:translateY(-2px);box-shadow:0 4px 10px #06b6d466}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.selection-header-bar{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:linear-gradient(135deg,var(--color-primary),var(--color-info));border-radius:10px;margin-bottom:16px;box-shadow:0 2px 8px #667eea33}.selection-count-badge{display:flex;align-items:baseline;gap:6px;color:#fff}.count-number{font-size:24px;font-weight:700;line-height:1}.search-bar-container{margin-bottom:16px}.search-input{width:100%;padding:12px 16px;border:2px solid var(--border-color);border-radius:10px;font-size:14px;background:var(--bg-card);color:var(--text-primary);transition:all .15s ease;outline:none}.search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.search-input::placeholder{color:var(--text-secondary)}.cars-checkbox-list{max-height:400px;overflow-y:auto;border:2px solid var(--border-color);border-radius:12px;background:var(--bg-secondary);padding:8px}.cars-checkbox-list::-webkit-scrollbar{width:8px}.cars-checkbox-list::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:4px}.cars-checkbox-list::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:4px}.car-checkbox-item{display:block;padding:12px;margin-bottom:6px;background:var(--bg-card);border:2px solid var(--border-color);border-radius:10px;cursor:pointer;transition:all .15s ease;position:relative}.car-checkbox-item:hover{background:var(--bg-hover);border-color:var(--color-primary);transform:translate(2px)}.car-checkbox-item.selected{background:linear-gradient(to right,rgba(102,126,234,.08),var(--bg-card));border-color:var(--color-primary);box-shadow:0 2px 8px #667eea26}.car-checkbox-input{position:absolute;opacity:0;cursor:pointer}.car-checkbox-content{display:flex;align-items:center;gap:12px}.car-checkbox-avatar{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,var(--color-primary),var(--color-info));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px;flex-shrink:0;box-shadow:0 2px 6px #667eea33}.car-checkbox-item.selected .car-checkbox-avatar{box-shadow:0 4px 12px #667eea66}.car-checkbox-info{flex:1}.car-checkbox-name{font-size:15px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.car-checkbox-immat{font-size:12px;color:var(--text-secondary);background:var(--bg-tertiary);padding:3px 8px;border-radius:6px;display:inline-block;font-weight:600;border:1px solid var(--border-color)}.car-checkbox-check{width:28px;height:28px;border:2px solid var(--border-color);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:#fff;background:transparent;transition:all .15s ease;flex-shrink:0}.car-checkbox-item.selected .car-checkbox-check{background:linear-gradient(135deg,var(--color-primary),var(--color-info));border-color:var(--color-primary);box-shadow:0 2px 6px #667eea4d}.assurance-form-card{background:var(--bg-card);border:1px solid rgba(148,163,184,.12);border-radius:20px;padding:24px;box-shadow:0 25px 55px #0f172a73}.assurance-dark{--bg-secondary: #0b1120;--bg-primary: #111827;--bg-card: #1f2937;--border-color: rgba(148, 163, 184, .35);--border-light: rgba(148, 163, 184, .2);--text-primary: #e2e8f0;--text-secondary: #94a3b8;--text-tertiary: #94a3b8;--text-light: #cbd5f5;--shadow-sm: 0 2px 6px rgba(15, 23, 42, .35);--shadow-md: 0 18px 40px rgba(15, 23, 42, .45);--shadow-lg: 0 28px 70px rgba(15, 23, 42, .55)}.assurance-dark .cars-header{background:#111827d9;border:1px solid rgba(148,163,184,.2);border-radius:18px;padding:24px;box-shadow:0 28px 70px #0f172a8c}.assurance-dark .cars-body{background:#111827d1;border:1px solid rgba(148,163,184,.18);box-shadow:0 32px 80px #080e1a8c}.assurance-dark .search-input,.assurance-dark .filter-select,.assurance-dark .form-input,.assurance-dark .form-select,.assurance-dark input[type=date],.assurance-dark input[type=number],.assurance-dark textarea{background:#0f172aeb;border-color:#94a3b859;color:var(--text-primary);box-shadow:var(--shadow-sm)}.assurance-dark .search-input:focus,.assurance-dark .filter-select:focus,.assurance-dark .form-input:focus,.assurance-dark .form-select:focus,.assurance-dark input[type=date]:focus,.assurance-dark input[type=number]:focus,.assurance-dark textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #818cf859}.assurance-dark .form-input:disabled{background:#1e293bb3;color:#94a3b8b3}.assurance-dark input::placeholder,.assurance-dark textarea::placeholder{color:#e2e8f08c}.assurance-dark .assurance-form-card,.assurance-dark .assurance-form-area,.assurance-dark .assurance-step-card{background:#111827e0;border-color:#94a3b82e}.assurance-dark .assurance-step-item{color:#e2e8f0d9}.assurance-dark .assurance-side-block{background:#0f172ad9;border-color:#94a3b840}.assurance-dark .btn-secondary{background:#111827f2;color:var(--text-white);border-color:#94a3b84d}.assurance-dark .btn-secondary:hover{background:#1f2937f2}.assurance-form-layout{display:flex;gap:28px;align-items:stretch}.assurance-steps-panel{width:280px;background:linear-gradient(180deg,#1e293beb,#0f172af7);border:1px solid rgba(148,163,184,.15);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:16px;box-shadow:inset 0 1px #ffffff0a}.assurance-steps-header{display:flex;flex-direction:column;gap:12px}.assurance-steps-title{font-size:18px;font-weight:700;color:#e2e8f0}.assurance-steps-sub{font-size:13px;color:#e2e8f0bf;line-height:1.5}.assurance-progress-track{width:100%;height:6px;background:#94a3b840;border-radius:999px;overflow:hidden}.assurance-progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-info));border-radius:999px;transition:width .25s ease}.assurance-step-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.assurance-step-item{width:100%;border:1px solid rgba(148,163,184,.18);background:#0f172a99;border-radius:14px;padding:14px 18px;display:flex;gap:14px;align-items:flex-start;color:#e2e8f0d9;cursor:pointer;transition:all .2s ease;text-align:left}.assurance-step-item:hover:not(:disabled){transform:translateY(-2px);border-color:#667eea80;box-shadow:0 12px 28px #0f172a73}.assurance-step-item:disabled{opacity:.55;cursor:default}.assurance-step-item.active{background:linear-gradient(135deg,#667eea38,#4c51bf66);border-color:#667eeab3;color:#f8fafc;box-shadow:0 18px 32px #3b82f659}.assurance-step-item.completed{border-color:#10b98180;background:#10b9811f}.assurance-step-icon{font-size:22px;line-height:1}.assurance-step-text{flex:1;display:flex;flex-direction:column;gap:4px}.assurance-step-label{font-size:15px;font-weight:700;letter-spacing:.02em;color:inherit}.assurance-step-desc{font-size:12px;color:#e2e8f0bf;line-height:1.45}.assurance-side-block{margin-top:auto;padding:18px;border-radius:14px;background:#0f172abf;border:1px solid rgba(148,163,184,.2);display:flex;flex-direction:column;gap:10px}.assurance-side-title{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8e6}.assurance-side-chips{display:flex;flex-direction:column;gap:8px}.assurance-side-chip{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:10px 12px;border-radius:10px;background:#1e40af26;border:1px solid rgba(102,126,234,.4);color:#e2e8f0e6}.assurance-form-area{flex:1;background:var(--bg-secondary);border:1px solid rgba(148,163,184,.12);border-radius:18px;padding:28px;display:flex}.assurance-form-area form{width:100%;display:flex;flex-direction:column}.assurance-step-wrapper{flex:1;display:flex;flex-direction:column;gap:26px}.assurance-step-card{background:var(--bg-card);border-radius:16px;border:1px solid rgba(148,163,184,.16);padding:26px;box-shadow:0 18px 40px #0f172a61;display:flex;flex-direction:column;gap:18px}.assurance-step-title{font-size:20px;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:10px}.assurance-step-intro{font-size:14px;color:var(--text-secondary);line-height:1.6}.assurance-step-card .form-row{display:flex;gap:18px;flex-wrap:wrap}.assurance-step-card .form-group{flex:1;min-width:220px}.assurance-selection-summary{border:1px dashed rgba(102,126,234,.35);border-radius:14px;padding:18px;background:#3b82f614;display:flex;flex-direction:column;gap:12px}.assurance-selection-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#3b82f6d9}.assurance-selection-chips{display:flex;flex-wrap:wrap;gap:10px}.assurance-selection-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:8px 12px;border-radius:999px;background:#94a3b81f;border:1px solid rgba(102,126,234,.3);color:var(--text-primary)}.assurance-existing-file{margin-top:12px;padding:12px 14px;border-radius:12px;background:#1e293ba6;border:1px solid rgba(148,163,184,.2);display:flex;align-items:center;gap:10px;font-size:13px}.assurance-existing-file a{color:var(--color-info);font-weight:600;text-decoration:none}.assurance-existing-file a:hover{text-decoration:underline}.assurance-form-footer{display:flex;align-items:center;gap:12px;padding-top:18px;border-top:1px solid rgba(148,163,184,.1)}.assurance-step-card .resume-card{background:#0f172ab3;border-radius:14px;border:1px solid rgba(148,163,184,.18);padding:18px;box-shadow:inset 0 1px #ffffff0a}.assurance-step-card .resume-title{font-size:16px;font-weight:700;color:#e2e8f0f2;margin-bottom:12px}.assurance-step-card .resume-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.assurance-step-card .resume-montant{color:#34d399}.assurance-resume-vehicles{grid-column:1 / -1;display:flex;flex-direction:column;gap:10px}.assurance-resume-vehicles .resume-label{text-transform:uppercase;letter-spacing:.08em}@media(max-width:1200px){.assurance-form-layout{flex-direction:column}.assurance-steps-panel{width:100%;flex-direction:row;align-items:center;gap:24px}.assurance-steps-header{flex:0 0 240px}.assurance-step-list{flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.assurance-side-block{width:100%;order:3}}@media(max-width:768px){.assurance-form-card{padding:18px}.assurance-form-area,.assurance-step-card{padding:20px}.assurance-steps-panel{flex-direction:column;align-items:stretch}.assurance-step-list{grid-template-columns:1fr}.assurance-step-card .form-row{flex-direction:column}.assurance-form-footer{flex-wrap:wrap;justify-content:center}}.car-detail-overlay{padding:32px}.car-detail-card{width:min(720px,92vw);background:var(--bg-card);border-radius:18px;border:1px solid var(--border-color);box-shadow:0 28px 60px #0f172a73;display:flex;flex-direction:column;gap:24px;position:relative;padding:32px 36px 28px;color:var(--text-primary)}.car-detail-close{position:absolute;top:18px;right:22px;background:#94a3b82e;border:1px solid rgba(148,163,184,.3);border-radius:999px;width:34px;height:34px;font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;color:var(--text-primary);cursor:pointer;transition:all .2s ease}.car-detail-close:hover{background:#6366f133;border-color:#6366f166;transform:translateY(-1px)}.car-detail-header{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,#0f766e33,#0ea5e926);padding:20px 24px;border-radius:16px}.car-detail-icon{width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,#0ea5e9,#2563eb);display:flex;align-items:center;justify-content:center;font-size:28px;color:#fff;box-shadow:0 14px 32px #2563eb59}.car-detail-title{font-size:24px;font-weight:700;margin:0;color:var(--text-primary)}.car-detail-subtitle{font-size:14px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;margin-top:4px}.car-detail-status{margin-left:auto;padding:10px 18px;border-radius:999px;font-size:13px;font-weight:700;text-transform:uppercase;border:1px solid transparent;letter-spacing:.06em;display:inline-flex;align-items:center;justify-content:center}.car-detail-status.status-libre{background:#22c55e29;border-color:#22c55e59;color:#22c55e}.car-detail-status.status-loue{background:#f9731629;border-color:#f9731659;color:#f97316}.car-detail-status.status-reserve{background:#3b82f62e;border-color:#3b82f659;color:#3b82f6}.car-detail-status.status-maintenance{background:#f472b62e;border-color:#f472b659;color:#f472b6}.car-detail-status.status-off{background:#94a3b824;border-color:#94a3b84d;color:#94a3b8e6}.car-detail-status.status-default{background:#64748b29;border-color:#64748b52;color:#cbd5f5}.car-detail-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px}.car-detail-metric{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;padding:16px 18px;display:flex;flex-direction:column;gap:6px}.metric-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}.metric-value{font-size:16px;font-weight:700;color:var(--text-primary)}.car-detail-section{display:flex;flex-direction:column;gap:16px}.section-title{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}.car-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.car-detail-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}.item-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}.item-value{font-size:14px;font-weight:600;color:var(--text-primary)}.car-detail-notes{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:16px;font-size:14px;line-height:1.6;color:var(--text-secondary);white-space:pre-wrap}.car-detail-actions{display:flex;justify-content:flex-end;gap:12px}.car-detail-action{min-width:140px;padding:12px 18px;border-radius:999px;border:1px solid transparent;font-weight:700;cursor:pointer;transition:all .2s ease}.car-detail-action.secondary{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-color)}.car-detail-action.secondary:hover{transform:translateY(-1px);box-shadow:0 8px 18px #94a3b840}.car-detail-action.primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;box-shadow:0 10px 26px #6366f159}.car-detail-action.primary:hover{transform:translateY(-1px);box-shadow:0 12px 30px #6366f173}@media(max-width:640px){.car-detail-card{padding:28px 22px 24px}.car-detail-header{flex-direction:column;align-items:flex-start}.car-detail-status{margin-left:0}.car-detail-actions{flex-direction:column-reverse;align-items:stretch}}.dark-mode .car-detail-card{background:linear-gradient(160deg,#0f172af5,#030712e6);border-color:#94a3b847;box-shadow:0 36px 80px #020617a6}.dark-mode .car-detail-header{background:linear-gradient(135deg,#14b8a638,#6366f138);border:1px solid rgba(148,163,184,.2)}.dark-mode .car-detail-icon{box-shadow:0 18px 36px #2563eb6b}.dark-mode .car-detail-metric,.dark-mode .car-detail-item,.dark-mode .car-detail-notes{background:#0f172ac7;border-color:#94a3b83d;box-shadow:inset 0 1px #ffffff0a}.dark-mode .car-detail-action.secondary{background:#0f172ad9;border-color:#94a3b852;color:var(--text-primary)}.dark-mode .car-detail-action.secondary:hover{box-shadow:0 10px 24px #0f172a66}.dark-mode .car-detail-close{background:#94a3b824;border-color:#94a3b847}.dark-mode .car-detail-close:hover{background:#6366f147;border-color:#6366f166}.rentabilite-page{padding:24px;max-width:1600px;margin:0 auto;background:var(--bg-secondary);min-height:100vh}.rentabilite-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;background:var(--bg-card);padding: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}.periode-select{padding:10px 16px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;background:var(--bg-card);color:var(--text-primary);cursor:pointer;transition:all .2s}.periode-select:hover{border-color:#0f766e}.btn-export{padding:10px 20px;background:#0f766e;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .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:all .3s;border:1px solid var(--border-color)}.kpi-card .kpi-content{padding-left:6px}.kpi-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.kpi-icon{font-size:40px;width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f766e,#14b8a6);border-radius:12px}.kpi-content{flex:1}.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;border-radius:12px;box-shadow:var(--shadow-md);margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid var(--border-color)}.search-input{flex:1;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{font-size:14px;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:all .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)}.rentabilite-table{width:100%;border-collapse:collapse}.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:all .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:all .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:all .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:all .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:1000px}}@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}}.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 #0f766e26}.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:all 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 #0f766e66}.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:all 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 #0f766e26}.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)}.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)}@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: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}}.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:all 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:all 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:all 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)}.cars-table{width:100%;border-collapse:collapse;min-width:860px}.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: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)}}.add-car-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:20px 0}.add-car-header h2{margin:0;font-size:28px;font-weight:700;color:var(--text-primary)}.add-car-header p{margin:8px 0 0;color:var(--text-secondary);font-size:15px}.btn-back-car{padding:12px 24px;background:var(--bg-card);border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-weight:600;cursor:pointer;transition:all .2s}.btn-back-car:hover{transform:translate(-4px);border-color:#6366f1;color:#6366f1}.modal-container-car{background:var(--bg-secondary);min-height:calc(100vh - 250px);display:flex;align-items:flex-start;justify-content:center;padding:20px 0}.modal-card-car{background:var(--bg-card);border-radius:16px;width:100%;max-width:800px;box-shadow:var(--shadow-lg);overflow:hidden;border:1px solid var(--border-color)}.car-card-header{background:linear-gradient(135deg,#6366f1,#8b5cf6);padding:32px;color:#fff}.car-card-header h2{margin:0 0 8px;font-size:28px;font-weight:700}.car-card-header p{margin:0;opacity:.95;font-size:15px}.car-steps-indicator{padding:28px 32px;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.car-steps-container{display:flex;justify-content:space-between;align-items:center;position:relative}.car-progress-line{position:absolute;top:20px;left:10%;right:10%;height:3px;background:var(--border-color);z-index:0}.car-progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);transition:width .3s}.car-step-item{text-align:center;flex:1;position:relative;z-index:1}.car-step-circle{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 8px;font-size:18px;font-weight:700;transition:all .3s}.car-step-circle.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;box-shadow:0 4px 12px #6366f166}.car-step-circle.inactive{background:var(--bg-tertiary);color:var(--text-tertiary)}.car-step-label{font-size:12px;font-weight:600}.car-step-label.active{color:#6366f1}.car-step-label.inactive{color:var(--text-tertiary)}.car-form-content{padding:32px}.car-form-section{animation:fadeIn .3s}.car-section-title{margin:0 0 20px;font-size:18px;color:var(--text-primary);font-weight:700}.car-form-field{margin-bottom:20px}.car-form-label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-primary);font-size:14px}.car-form-input,.car-form-select,.car-form-textarea{width:100%;padding:12px 16px;border:2px solid var(--border-color);border-radius:10px;font-size:15px;outline:none;transition:border-color .2s;box-sizing:border-box;background:var(--bg-primary);color:var(--text-primary)}.car-form-input:focus,.car-form-select:focus,.car-form-textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.car-form-hint{display:block;margin-top:6px;font-size:13px;color:var(--text-secondary)}.car-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.car-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:12px}.car-status-option{padding:14px;border:2px solid var(--border-color);border-radius:10px;text-align:center;cursor:pointer;transition:all .2s;background:var(--bg-primary)}.car-status-option:hover{border-color:#6366f1;transform:translateY(-2px)}.car-status-option.selected{border-color:#6366f1;background:#6366f11a}.car-status-icon{font-size:24px;margin-bottom:6px}.car-status-label{font-size:13px;font-weight:600;color:var(--text-primary)}.car-color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:12px;margin-top:12px}.car-color-option{padding:12px;border:2px solid var(--border-color);border-radius:10px;text-align:center;cursor:pointer;transition:all .2s;background:var(--bg-primary)}.car-color-option:hover{transform:scale(1.05)}.car-color-option.selected{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.car-color-circle{width:36px;height:36px;border-radius:50%;margin:0 auto 6px;box-shadow:0 2px 6px #00000026}.car-color-name{font-size:12px;font-weight:600;color:var(--text-primary)}.car-form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:24px;border-top:1px solid var(--border-color);margin-top:24px}.btn-car-back{padding:12px 24px;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-weight:600;cursor:pointer;transition:all .2s}.btn-car-back:hover{background:var(--bg-tertiary)}.btn-car-next,.btn-car-submit{padding:12px 32px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:10px;color:#fff;font-weight:700;cursor:pointer;transition:all .3s;box-shadow:0 4px 12px #6366f14d}.btn-car-next:hover:not(:disabled),.btn-car-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #6366f166}.btn-car-submit:disabled{opacity:.6;cursor:not-allowed}.car-validation-error{color:#ef4444;font-size:13px;margin-top:6px;display:block}.car-field-error{border-color:#ef4444!important}.car-error-message{background:#fee2e2;border:2px solid #ef4444;color:#991b1b;padding:16px;border-radius:10px;margin-bottom:20px;font-weight:600}.car-loading-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;margin-left:8px}.car-summary-card{margin-top:24px;padding:20px 22px;border:1px solid var(--border-color);border-radius:14px;background:linear-gradient(145deg,#4c6aff1f,#0ea5e90f);display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;color:var(--text-primary)}.car-summary-card .car-summary-block{display:flex;flex-direction:column;gap:6px;background:#0c4a6e26;border:1px solid rgba(14,165,233,.2);border-radius:12px;padding:14px}.car-summary-card .car-summary-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}.car-summary-card .car-summary-value{font-size:16px;font-weight:700;color:var(--text-primary)}.car-summary-card .car-summary-value.highlight{color:#38bdf8}.car-summary-card .car-summary-value.price{color:#22c55e}.car-success-overlay{padding:32px}.car-success-card{width:min(520px,92vw);background:var(--bg-card);border:1px solid var(--border-color);border-radius:18px;box-shadow:0 28px 60px #0f172a73;padding:32px;text-align:center;display:flex;flex-direction:column;gap:18px;color:var(--text-primary)}.car-success-icon{font-size:42px}.car-success-title{margin:0;font-size:24px;font-weight:700}.car-success-subtitle{margin:0;font-size:14px;color:var(--text-secondary)}.car-success-summary{display:flex;flex-direction:column;gap:12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;padding:18px 20px}.car-success-row{display:flex;justify-content:space-between;gap:18px;font-size:14px}.car-success-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.car-success-value{font-weight:700;color:var(--text-primary)}.car-success-value.highlight{color:#60a5fa}.car-success-actions{display:flex;gap:12px;justify-content:center}.car-success-btn{min-width:160px;padding:12px 20px;border-radius:999px;border:1px solid transparent;font-weight:700;cursor:pointer;transition:all .2s ease}.car-success-btn.secondary{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-color)}.car-success-btn.secondary:hover{transform:translateY(-1px);box-shadow:0 10px 22px #94a3b840}.car-success-btn.primary{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;box-shadow:0 12px 28px #22c55e59}.car-success-btn.primary:hover{transform:translateY(-1px);box-shadow:0 14px 30px #22c55e73}@media(max-width:640px){.car-success-card{padding:28px 24px}.car-success-actions{flex-direction:column-reverse}.car-success-btn{width:100%}}@media(max-width:768px){.car-form-grid{grid-template-columns:1fr}.add-car-header{flex-direction:column;align-items:flex-start;gap:16px}.car-form-actions{flex-direction:column-reverse}.car-form-actions button{width:100%}}.clients-professional-page{padding:24px;max-width:1600px;margin:0 auto;background:var(--bg-secondary);min-height:100vh}.clients-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;background:var(--bg-card);padding:24px;border-radius:16px;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.view-toggle{display:flex;background:var(--bg-tertiary);border-radius:8px;padding:4px}.view-btn{padding:8px 16px;border:none;background:transparent;cursor:pointer;font-size:18px;border-radius:6px;transition:all .2s;color:var(--text-secondary)}.view-btn.active{background:var(--bg-card);color:#0f766e;box-shadow:var(--shadow-sm)}.view-btn:hover:not(.active){color:#0f766e}.search-section{margin-bottom:24px}.search-box{position:relative;max-width:600px;margin:0 auto}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:20px;color:#6b7280}.search-input-pro{width:100%;padding:14px 48px;border:2px solid var(--border-color);border-radius:12px;font-size:15px;background:var(--bg-card);color:var(--text-primary);transition:all .2s;box-shadow:var(--shadow-sm)}.search-input-pro:focus{outline:none;border-color:#0f766e;box-shadow:0 4px 12px #0f766e26}.search-clear{position:absolute;right:16px;top:50%;transform:translateY(-50%);background:var(--bg-tertiary);border:none;width:24px;height:24px;border-radius:50%;cursor:pointer;font-size:12px;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;transition:all .2s}.clients-content{min-height:400px}.clients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.client-card{background:var(--bg-card);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md);transition:all .3s;display:flex;flex-direction:column;border:1px solid var(--border-color)}.client-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.card-header{padding:20px;background:var(--bg-tertiary);display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--border-color)}.client-avatar{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:20px;flex-shrink:0;box-shadow:0 4px 12px #00000026}.client-info{flex:1;min-width:0}.client-name{margin:0;font-size:18px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-email{margin:4px 0 0;font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-body{padding:20px;flex:1}.info-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border-color)}.info-row:last-child{border-bottom:none}.info-icon{font-size:18px;width:24px;flex-shrink:0}.info-text{font-size:14px;color:var(--text-primary);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.documents-section{margin-top:16px;padding-top:16px;border-top:2px solid var(--border-color)}.documents-label{margin:0 0 8px;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.documents-badges{display:flex;flex-wrap:wrap;gap:8px}.doc-badge{padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:4px;transition:all .2s}.doc-badge:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.doc-cin{background:#dbeafe;color:#1e40af}.doc-cin:hover{background:#1e40af;color:#fff}.doc-permis{background:#d1fae5;color:#065f46}.doc-permis:hover{background:#065f46;color:#fff}.doc-passeport{background:#fef3c7;color:#92400e}.doc-passeport:hover{background:#92400e;color:#fff}.no-docs{font-size:12px;color:#9ca3af;font-style:italic}.card-footer{padding:16px 20px;background:var(--bg-tertiary);display:flex;gap:8px;border-top:1px solid var(--border-color)}.btn-card{flex:1;padding:10px;border:none;border-radius:8px;font-weight:600;font-size:13px;cursor:pointer;transition:all .2s}.btn-edit{background:#0f766e;color:#fff}.btn-edit:hover{background:#0e6b60;transform:translateY(-1px)}.btn-delete{background:#fee2e2;color:#dc2626}.btn-delete:hover{background:#dc2626;color:#fff;transform:translateY(-1px)}.clients-table-container{background:var(--bg-card);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.clients-table{width:100%;border-collapse:collapse}.clients-table thead{background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff}.clients-table th{padding:16px;text-align:left;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.clients-table tbody tr{border-bottom:1px solid var(--border-color);transition:all .2s}.clients-table tbody tr:hover{background:var(--bg-hover)}.clients-table td{padding:16px;font-size:14px;color:var(--text-primary)}.table-client-info{display:flex;align-items:center;gap:12px}.table-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px;flex-shrink:0}.table-name{font-weight:600;color:var(--text-primary);font-size:15px}.table-email{font-size:13px;color:var(--text-secondary);margin-top:2px}.table-contact,.table-identity{font-size:13px;color:var(--text-primary)}.table-contact div,.table-identity div{padding:2px 0}.table-address{color:var(--text-secondary);font-size:12px}.table-documents{display:flex;gap:6px;flex-wrap:wrap}.no-docs-table{color:#9ca3af;font-size:13px}.table-actions{display:flex;gap:8px}.btn-table{padding:8px 12px;border:none;border-radius:6px;cursor:pointer;font-size:16px;transition:all .2s}.btn-edit-table{background:#f0fdfa;color:#0f766e}.btn-edit-table:hover{background:#0f766e;color:#fff}.btn-delete-table{background:#fee2e2;color:#dc2626}.btn-delete-table:hover{background:#dc2626;color:#fff}.empty-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;background:var(--bg-card);border-radius:16px;padding:48px;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.btn-add-empty,.btn-retry{padding:12px 24px;background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:14px}.btn-add-empty:hover,.btn-retry:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0f766e4d}@media(max-width:1200px){.clients-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media(max-width:768px){.clients-professional-page{padding:16px}.clients-header{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{width:100%;flex-wrap:wrap}.view-toggle{order:-1;width:100%;justify-content:center}.btn-export,.btn-add{flex:1}.clients-grid{grid-template-columns:1fr}.clients-table-container{overflow-x:auto}.clients-table{min-width:800px}.page-title{font-size:24px}.title-icon{font-size:28px}}@media(max-width:480px){.client-card{border-radius:12px}.card-header{padding:16px}.client-avatar{width:48px;height:48px;font-size:18px}.client-name{font-size:16px}.card-body{padding:16px}.card-footer{flex-direction:column}.btn-card{width:100%}}.client-card,.clients-table tbody tr{animation:fadeIn .3s ease-out}.reservation-modal-overlay{position:fixed;inset:0;background:#0f172abf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:999;padding:24px}.reservation-modal-card{width:min(960px,95vw);max-height:min(90vh,900px);overflow:hidden;background:linear-gradient(145deg,#0f172af2,#1e293bf2);border:1px solid rgba(99,102,241,.3);border-radius:22px;box-shadow:0 30px 60px #0f172a8c;display:flex;flex-direction:column;color:#e2e8f0}.reservation-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:32px 36px 24px;border-bottom:1px solid rgba(148,163,184,.12)}.reservation-modal-header h2{margin:0 0 6px;font-size:24px;font-weight:700}.reservation-modal-header p{margin:0;color:#a5b4fc;font-size:14px}.reservation-modal-close{border:none;background:#47556940;color:#f8fafc;font-size:20px;font-weight:700;width:40px;height:40px;border-radius:50%;cursor:pointer;transition:background .2s ease,transform .2s ease}.reservation-modal-close:hover{background:#6366f199;transform:scale(1.05)}.reservation-modal-section{padding:28px 36px;border-bottom:1px solid rgba(148,163,184,.12);overflow-y:auto}.reservation-modal-section h3{margin:0 0 18px;font-size:18px;color:#c7d2fe;text-transform:uppercase;letter-spacing:.08em}.reservation-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.reservation-summary-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.reservation-summary-card{background:#4f46e526;border:1px solid rgba(129,140,248,.25);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:8px}.reservation-summary-card.compact{padding:16px}.reservation-summary-card.wide{grid-column:span 1}.reservation-summary-row:last-child{grid-template-columns:repeat(2,1fr)}.summary-period-info{display:flex;flex-direction:column;gap:16px}.period-dates{display:flex;align-items:center;justify-content:center;gap:16px;background:#0f172a66;padding:12px 16px;border-radius:12px}.date-item{display:flex;flex-direction:column;align-items:center;gap:4px}.date-label{font-size:11px;text-transform:uppercase;color:#a5b4fcb3}.date-value{font-size:15px;font-weight:600;color:#e0e7ff}.date-arrow{font-size:20px;color:#6366f1}.duration-stats{display:flex;justify-content:space-around;gap:12px}.duration-item{display:flex;flex-direction:column;align-items:center;padding:10px 16px;background:#0f172a4d;border-radius:10px;flex:1}.duration-item.total{background:#6366f140;border:1px solid rgba(129,140,248,.4)}.duration-value{font-size:16px;font-weight:700;color:#c7d2fe}.duration-item.total .duration-value{color:#a5b4fc}.duration-label{font-size:11px;color:#a5b4fcb3;text-transform:uppercase}.payment-stats{display:flex;gap:12px;margin-top:8px}.payment-item{flex:1;display:flex;flex-direction:column;align-items:center;padding:12px;border-radius:10px;background:#0f172a66}.payment-item.main{background:#6366f133;border:1px solid rgba(129,140,248,.3)}.payment-item.success{background:#10b98126;border:1px solid rgba(16,185,129,.3)}.payment-item.warning{background:#f59e0b26;border:1px solid rgba(245,158,11,.3)}.payment-label{font-size:11px;text-transform:uppercase;color:#a5b4fcb3;margin-bottom:4px}.payment-item.success .payment-label{color:#6ee7b7cc}.payment-item.warning .payment-label{color:#fcd34dcc}.payment-value{font-size:15px;font-weight:700;color:#e0e7ff}.payment-item.success .payment-value{color:#10b981}.payment-item.warning .payment-value{color:#f59e0b}.payment-meta{display:flex;gap:16px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(148,163,184,.15)}.meta-item{font-size:13px;color:#c4b5fdd9}.meta-label{color:#a5b4fc99}.summary-badge.status-termine,.summary-badge.status-terminee{background:#10b98133;border-color:#10b98166;color:#10b981}.summary-badge.status-en_cours{background:#3b82f633;border-color:#3b82f666;color:#3b82f6}.summary-badge.status-planifiee{background:#a855f733;border-color:#a855f766;color:#a855f7}.summary-badge.status-annulee{background:#ef444433;border-color:#ef444466;color:#ef4444}.summary-hint.error{color:#f97316}.summary-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#c4b5fde6}.summary-value{font-size:16px;font-weight:600;color:#eef2ff}.summary-value.highlight{color:#22d3ee}.summary-hint{font-size:13px;color:#c4b5fdcc}.summary-badge{align-self:flex-start;padding:6px 14px;border-radius:999px;background:#818cf833;border:1px solid rgba(129,140,248,.35);font-size:13px;font-weight:700;color:#c7d2fe}.summary-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.summary-list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;color:#e2e8f0e6}.summary-list-row.strong{font-weight:600;color:#c7d2fe}.summary-list-label{text-transform:none;letter-spacing:normal;color:#a5b4fcd9}.summary-list-value{font-weight:600;color:#eef2ff}.summary-list-value.highlight{color:#38bdf8}.summary-list-divider{height:1px;background:linear-gradient(90deg,#94a3b800,#94a3b859,#94a3b800);margin:4px 0}.summary-history{margin-top:16px;padding-top:12px;border-top:1px solid rgba(129,140,248,.25);display:flex;flex-direction:column;gap:10px}.summary-history-title{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#a5b4fce6}.summary-history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.summary-history-item{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#0f172a73;border:1px solid rgba(30,64,175,.35);border-radius:12px;padding:10px 14px}.summary-history-date{font-size:13px;font-weight:600;color:#e2e8f0d9;display:block}.summary-history-notes{font-size:12px;color:#a5b4fcd9}.summary-history-amount{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.summary-history-value{font-weight:700;color:#22d3ee}.summary-history-remise{font-size:12px;color:#facc15}.reservation-empty{margin:0;padding:24px;background:#0f172a99;border-radius:14px;border:1px dashed rgba(148,163,184,.3);text-align:center;color:#94a3b8}.reservation-timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}.timeline-item{display:grid;grid-template-columns:48px 1fr;gap:16px;background:#0f172a80;padding:16px 18px;border-radius:16px;border:1px solid rgba(30,64,175,.35)}.timeline-icon{width:48px;height:48px;border-radius:14px;background:#6366f133;border:1px solid rgba(129,140,248,.4);display:flex;align-items:center;justify-content:center;font-size:22px}.timeline-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.timeline-label{font-weight:600;color:#e0e7ff}.timeline-date{font-size:13px;color:#a5b4fce6}.timeline-description{margin:0;font-size:14px;color:#e2e8f0d9}.reservation-modal-footer{padding:22px 36px 28px;display:flex;justify-content:flex-end;background:#0f172abf;border-top:1px solid rgba(148,163,184,.12)}.reservation-modal-close-btn{border:none;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-weight:600;padding:12px 26px;border-radius:999px;cursor:pointer;font-size:15px;box-shadow:0 12px 24px #6366f159;transition:transform .2s ease,box-shadow .2s ease}.reservation-modal-close-btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px #4f46e573}@media(max-width:768px){.reservation-modal-card{width:100%;max-height:95vh}.reservation-modal-header,.reservation-modal-section,.reservation-modal-footer{padding-left:20px;padding-right:20px}.reservation-summary-row{grid-template-columns:1fr}.reservation-summary-row:last-child{grid-template-columns:1fr}.reservation-summary-card.wide{grid-column:span 1}.period-dates{flex-direction:column;gap:8px}.date-arrow{transform:rotate(90deg)}.duration-stats{flex-wrap:wrap}.payment-stats{flex-direction:column}.payment-meta{flex-direction:column;gap:8px}.timeline-item{grid-template-columns:40px 1fr}.timeline-icon{width:40px;height:40px;font-size:18px}}.reservations-professional-page{padding:24px;max-width:1800px;margin:0 auto;background:var(--bg-secondary);min-height:100vh}.reservations-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;background:var(--bg-card);padding:24px;border-radius:16px;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.header-left{flex:1}.page-title{margin:0;font-size:28px;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:12px}.title-icon{font-size:32px}.page-subtitle{margin:8px 0 0;color:var(--text-secondary);font-size:14px;font-weight:500}.header-actions{display:flex;gap:12px;align-items:center}.btn-export{padding:10px 20px;background:#6b7280;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:14px}.btn-export:hover{background:#4b5563;transform:translateY(-1px)}.btn-secondary{padding:10px 20px;background:#8b5cf6;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:14px}.btn-secondary:hover{background:#7c3aed;transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf64d}.btn-add{padding:10px 20px;background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:14px}.btn-add:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0f766e4d}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:24px}.stat-card{background:linear-gradient(180deg,#ffffff05,#ffffff03);border-radius:16px;padding:22px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;box-shadow:0 10px 30px #02061773;transition:transform .25s ease,box-shadow .25s ease;border:1px solid rgba(255,255,255,.03);min-height:80px}.stat-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}.stat-icon{display:none}.stat-content{width:100%}.stat-label{font-size:12px;color:var(--text-secondary);font-weight:700;text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px}.stat-value{font-size:34px;font-weight:800;color:var(--text-primary)}.stat-active{border-left:6px solid #10b981;padding-left:16px}.stat-revenue{border-left:6px solid #3b82f6;padding-left:16px}.stat-total{border-left:6px solid #8b5cf6;padding-left:16px}.stat-upcoming{border-left:6px solid #f59e0b;padding-left:16px}.stat-active{border-left:4px solid #10b981}.stat-revenue{border-left:4px solid #3b82f6}.stat-total{border-left:4px solid #8b5cf6}.stat-upcoming{border-left:4px solid #f59e0b}.search-section{margin-bottom:24px;background:var(--bg-card);padding:20px;border-radius:16px;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.search-box{position:relative;max-width:100%;margin-bottom:16px}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:20px;color:var(--text-secondary)}.search-input-pro{width:100%;padding:14px 48px;border:2px solid var(--border-color);border-radius:12px;font-size:15px;background:var(--bg-primary);color:var(--text-primary);transition:all .2s}.search-input-pro:focus{outline:none;border-color:#0f766e;box-shadow:0 0 0 3px #0f766e1a}.search-clear{position:absolute;right:16px;top:50%;transform:translateY(-50%);background:var(--bg-tertiary);border:none;width:24px;height:24px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--text-secondary);transition:all .2s}.search-clear:hover{background:var(--bg-hover);color:var(--text-primary)}.filter-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.filter-btn{padding:8px 16px;border:2px solid var(--border-color);background:var(--bg-card);border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;color:var(--text-secondary)}.filter-btn:hover{border-color:#0f766e;color:#0f766e}.filter-btn.active{background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff;border-color:#0f766e}.reservations-content{min-height:400px}.table-info{background:var(--bg-card);padding:12px 20px;border-radius:12px 12px 0 0;font-size:13px;color:var(--text-secondary);font-weight:600;box-shadow:var(--shadow-md);border:1px solid var(--border-color);border-bottom:none}.reservations-table-container{background:linear-gradient(180deg,#0f172aeb,#0a0c14f2);border-radius:18px;overflow:hidden;box-shadow:0 22px 48px #0206178c;border:1px solid rgba(148,163,184,.18)}.reservations-table-pro{width:100%;border-collapse:collapse;table-layout:fixed;background:transparent}.reservations-table-pro thead{background:linear-gradient(135deg,#6366f1f2,#7c84fffa);color:var(--text-white);box-shadow:inset 0 -1px #e2e8f01f}.reservations-table-pro th{padding:16px 14px;text-align:left;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;color:#f8fafceb}.reservations-table-pro th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .2s ease,color .2s ease}.reservations-table-pro th.sortable:hover{transform:translateY(-1px);color:#c7d2fe}.reservations-table-pro tbody tr{border-bottom:1px solid rgba(148,163,184,.12);background:#1118278c;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.reservations-table-pro tbody tr:nth-child(2n){background:#1e293b94}.reservations-table-pro tbody tr:hover{background:#3b82f629;box-shadow:inset 0 0 0 1px #3b82f659;transform:translateY(-2px)}.reservations-table-pro tbody tr:last-child{border-bottom:none}.reservations-table-pro td{padding:14px;font-size:14px;vertical-align:middle;color:#e2e8f0eb}.id-col{font-weight:700;color:var(--text-secondary);font-size:13px}.client-col .client-info{display:flex;align-items:flex-start;gap:8px}.client-icon{font-size:18px;margin-top:2px}.client-details{display:flex;flex-direction:column;gap:4px}.client-primary{font-weight:600;color:var(--text-primary)}.client-secondary{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary);font-style:italic}.secondary-icon{font-size:14px}.car-col .car-info{display:flex;flex-direction:column;gap:4px}.car-name{font-weight:600;color:var(--text-primary)}.car-plate{font-size:12px;color:#94a3b8d9;background:#1e293bb3;border:1px solid rgba(148,163,184,.25);padding:3px 10px;border-radius:999px;display:inline-flex;gap:6px;align-items:center;box-shadow:inset 0 1px #ffffff0a}.period-col .period-info{display:flex;flex-direction:column;gap:4px}.dates{font-size:13px;color:var(--text-primary)}.days-badge{font-size:11px;font-weight:600;color:#34d399;background:#2dd4bf24;padding:3px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;width:fit-content;border:1px solid rgba(45,212,191,.28)}.amount-col .amount-value{font-size:16px;font-weight:700;color:#34d399;background:#0f766e3d;padding:6px 14px;border-radius:10px;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(34,197,94,.35);box-shadow:0 10px 24px #22c55e26}.franchise-col{color:#93c5fdeb;font-weight:600}.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;border-radius:999px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border:1px solid transparent;min-width:110px;box-shadow:0 12px 28px #02061766}.status-en_cours{background:#22c55e2e;color:#4ade80;border-color:#22c55e59}.status-confirmee{background:#7dd3fc29;color:#38bdf8;border-color:#7dd3fc52}.status-en_attente{background:#fbbf2433;color:#fbbf24;border-color:#fbbf2466}.status-termine{background:#94a3b82e;color:#e2e8f0eb;border-color:#94a3b852}.status-annule{background:#f8717133;color:#f87171;border-color:#f8717166}.actions-col{width:150px}.action-buttons{display:flex;gap:6px;justify-content:flex-end}.btn-action{padding:8px 12px;border:none;border-radius:6px;cursor:pointer;font-size:16px;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-edit-action{background:#f0fdfa;color:#0f766e}.btn-edit-action:hover{background:#0f766e;color:#fff;transform:translateY(-1px)}.btn-invoice-action{background:#eff6ff;color:#1e40af}.btn-invoice-action:hover{background:#1e40af;color:#fff;transform:translateY(-1px)}.btn-delete-action{background:#fee2e2;color:#dc2626}.btn-delete-action:hover{background:#dc2626;color:#fff;transform:translateY(-1px)}.empty-state,.error-state{text-align:center;padding:60px 20px;background:var(--bg-card);border-radius:16px;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.empty-icon,.error-icon{font-size:64px;margin-bottom:16px;opacity:.5}.empty-state h3,.error-state p{margin:0 0 8px;color:var(--text-primary);font-size:20px;font-weight:600}.empty-state p{margin:0 0 24px;color:var(--text-secondary);font-size:14px}.btn-add-empty{padding:12px 24px;background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:14px}.btn-add-empty:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0f766e4d}.pagination-container{margin-top:24px;display:flex;justify-content:center}@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.reservations-professional-page{padding:16px}.reservations-header{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{width:100%;flex-wrap:wrap}.btn-export,.btn-add{flex:1}.stats-grid{grid-template-columns:1fr}.reservations-table-container{overflow-x:auto}.reservations-table-pro{min-width:1200px}.page-title{font-size:24px}.title-icon{font-size:28px}.filter-buttons{justify-content:flex-start}.filter-btn{font-size:12px;padding:6px 12px}}@media(max-width:480px){.stat-card{padding:16px}.stat-icon{font-size:36px}.stat-value{font-size:24px}}.stat-card,.reservations-table-pro tbody tr{animation:fadeIn .3s ease-out}.reservations-professional-page .loading-container{display:flex;justify-content:center;align-items:center;min-height:400px}.add-reservation-modern{padding:20px!important;max-width:1200px;margin:0 auto}.modal-container-reservation{background:var(--bg-secondary);min-height:calc(100vh - 200px);display:flex;align-items:flex-start;justify-content:center;padding:20px 0}.modal-card-reservation{background:var(--bg-card);border-radius:16px;width:100%;max-width:1100px;box-shadow:var(--shadow-lg);overflow:hidden;border:1px solid var(--border-color)}.reservation-card-header{background:linear-gradient(135deg,#0f766e,#14b8a6);padding:32px;color:#fff}.reservation-card-header h2{margin:0 0 8px;font-size:28px;font-weight:700}.reservation-card-header p{margin:0;opacity:.95;font-size:15px}.steps-indicator-container{padding:28px 32px;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.steps-track{position:relative;height:4px;border-radius:999px;background:var(--border-color);overflow:hidden;margin-bottom:28px}.steps-track-progress{height:100%;border-radius:inherit;background:linear-gradient(90deg,#0f766e,#14b8a6);transition:width .3s ease}.steps-items{display:flex;justify-content:space-between;gap:12px}.steps-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;position:relative}.steps-circle{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;border:2px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);transition:all .3s ease;box-shadow:none}.steps-item.current .steps-circle{background:linear-gradient(135deg,#0f766e,#14b8a6);border-color:transparent;color:#fff;box-shadow:0 8px 20px #14b8a659;transform:translateY(-2px)}.steps-item.done .steps-circle{background:linear-gradient(135deg,#22c55e,#16a34a);border-color:transparent;color:#fff;box-shadow:0 8px 20px #22c55e59}.steps-label{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);transition:color .3s ease}.steps-item.current .steps-label{color:#0f766e}.steps-item.done .steps-label{color:#16a34a}.page-header-modern{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;box-shadow:0 4px 12px #667eea4d}.header-content h2{margin:0 0 8px;font-size:28px;font-weight:700}.header-content .subtitle{margin:0;font-size:14px;opacity:.9}.btn-back{background:#fff3;border:2px solid rgba(255,255,255,.3);color:#fff;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-back:hover{background:#ffffff4d;transform:translate(-4px)}.modern-form{display:flex;flex-direction:column;gap:24px}.form-step{background:var(--bg-card);border-radius:12px;padding:24px;box-shadow:var(--shadow-md);border:2px solid var(--border-color);transition:all .3s}.form-step:hover{border-color:#667eea;box-shadow:0 4px 16px #667eea26}.form-step.optional-step{border-style:dashed;background:var(--bg-secondary)}.step-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid var(--border-color)}.step-number{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;font-weight:700;font-size:16px;flex-shrink:0}.step-header h3{margin:0;font-size:20px;color:var(--text-primary);font-weight:600}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid-3{display:grid;grid-template-columns:1fr 140px 180px;gap:20px;align-items:center}.form-grid-3 .form-field{padding-left:6px;padding-right:6px}.form-grid-3 .form-field{display:flex;flex-direction:column;align-items:flex-start}.form-grid-3 .form-field label{display:block;width:100%;text-align:left;margin-bottom:8px}.form-grid-3 .form-field:nth-child(2){align-items:center}.form-grid-3 .form-field:last-child .price-field{margin-left:0;margin-right:0;width:100%;max-width:180px}.form-field{display:flex;flex-direction:column;gap:8px}.form-field label{font-weight:600;color:var(--text-primary);font-size:14px}.required{color:#e74c3c;margin-left:4px}.select-enhanced,.input-enhanced,.textarea-enhanced{padding:12px 16px;border:2px solid var(--border-color);border-radius:8px;font-size:15px;transition:all .3s;background:var(--bg-primary);color:var(--text-primary);font-family:inherit}.select-enhanced:hover,.input-enhanced:hover,.textarea-enhanced:hover{border-color:#b0b0b0}.select-enhanced:focus,.input-enhanced:focus,.textarea-enhanced:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.select-enhanced:disabled{background:#94a3b814;color:var(--text-secondary);cursor:not-allowed;border-style:dashed}.field-hint{font-size:12px;color:var(--text-secondary);margin-top:4px}.field-search{margin-bottom:8px}.input-search{width:100%;padding:10px 14px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:13px;transition:all .2s ease}.input-search:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}.btn-add-inline{margin-top:8px;padding:8px 12px;background:var(--bg-secondary);border:2px dashed var(--border-color);border-radius:6px;color:#667eea;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-inline:hover{background:#667eea;color:#fff;border-style:solid}.optional-field{grid-column:1 / -1}.input-with-buttons{display:flex;gap:8px;max-width:320px;width:100%;margin-left:auto;margin-right:auto}.input-with-buttons .input-enhanced{flex:1;min-width:60px;max-width:100px}.input-center{text-align:center;font-weight:700;font-size:18px}.btn-decrement,.btn-increment{width:40px;height:46px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:20px;font-weight:700;cursor:pointer;transition:all .2s}.btn-decrement:hover,.btn-increment:hover{background:#5568d3;transform:scale(1.05)}.btn-decrement:active,.btn-increment:active{transform:scale(.95)}.info-box{margin-top:16px;padding:16px;background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:2px solid #2196f3;border-radius:8px;display:flex;align-items:center;gap:12px}.info-icon{font-size:24px}.info-content{flex:1;color:#1565c0;font-size:14px}.info-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.info-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);font-size:12px;font-weight:600}.price-field{text-align:right;font-weight:700;font-size:1.1rem;max-width:220px;background:var(--bg-primary);color:var(--text-primary);border:2px solid var(--color-primary);border-radius:8px;box-shadow:0 2px 8px #3b82f60f;padding:10px 12px}.price-field:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px #3b82f614}.financial-summary{margin-top:20px;padding:20px;background:linear-gradient(180deg,#0f172aa6,#0f172a80);border:1px solid rgba(255,255,255,.04);border-radius:8px;box-shadow:0 12px 30px #02061780}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.03)}.summary-row:last-child{border-bottom:none}.summary-row span{font-size:14px;color:var(--text-secondary)}.summary-row strong{font-size:18px;font-weight:700}.amount-total{color:var(--text-primary)}.amount-paid{color:var(--text-tertiary)}.amount-remaining{color:#e74c3c}.summary-row.highlight{padding:16px;margin-top:8px;background:var(--bg-card);border-radius:6px}.summary-row.highlight strong{font-size:22px}.amount-progress{margin-top:16px}.amount-progress-track{height:8px;border-radius:999px;background:var(--bg-secondary);overflow:hidden}.amount-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(135deg,#22c55e,#16a34a);transition:width .3s ease}.amount-progress-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--text-secondary);margin-top:6px}.error-banner{background:#f8d7da;border:2px solid #e74c3c;color:#721c24;padding:16px;border-radius:8px;display:flex;align-items:center;gap:12px;font-weight:600}.error-icon{font-size:24px}.error-text{color:#e74c3c;font-size:12px;margin-top:4px;display:block}.form-actions-modern{display:flex;gap:16px;justify-content:flex-end;padding-top:20px;border-top:2px solid var(--border-color)}.btn-cancel-modern{padding:12px 24px;background:var(--bg-secondary);border:2px solid var(--border-color);color:var(--text-primary);border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel-modern:hover{background:#e9ecef;border-color:#adb5bd}.btn-submit-modern{padding:12px 32px;background:linear-gradient(135deg,#27ae60,#229954);border:none;color:#fff;border-radius:8px;font-weight:700;font-size:15px;cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:8px;box-shadow:0 4px 12px #27ae604d}.btn-submit-modern:hover:not(:disabled){background:linear-gradient(135deg,#229954,#1e8449);transform:translateY(-2px);box-shadow:0 6px 16px #27ae6066}.btn-submit-modern:disabled{opacity:.6;cursor:not-allowed}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.form-grid-2,.form-grid-3{grid-template-columns:1fr}.page-header-modern{flex-direction:column;gap:16px}.btn-back{align-self:flex-start}.form-actions-modern{flex-direction:column-reverse}.form-actions-modern button{width:100%}}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid label{display:flex;flex-direction:column;font-weight:500;color:var(--text-primary)}.form-grid label input,.form-grid label select,.form-grid label textarea{margin-top:.5rem;padding:.75rem;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;transition:all .3s ease;background:var(--bg-primary);color:var(--text-primary)}.form-grid label input:hover,.form-grid label select:hover,.form-grid label textarea:hover{border-color:#b0b0b0}.form-grid label input:focus,.form-grid label select:focus,.form-grid label textarea:focus{outline:0;border-color:#2196f3;box-shadow:0 0 0 3px #2196f31a;transform:translateY(-1px)}.form-grid label textarea{resize:vertical;min-height:80px}.prolongation-section{background:linear-gradient(135deg,#fff5e6,#ffe8cc);border:2px solid #ffb84d;position:relative;overflow:hidden}.prolongation-section:before{content:"";position:absolute;top:0;right:0;width:100px;height:100px;background:radial-gradient(circle,rgba(255,184,77,.2) 0%,transparent 70%);border-radius:50%;transform:translate(30%,-30%)}.prolongation-info{margin-bottom:1rem}.prolongation-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:8px;font-weight:600;font-size:.95rem;animation:fadeIn .3s ease}.prolongation-badge.active{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;box-shadow:0 2px 8px #4caf504d}.prolongation-badge.inactive{background:#f0f0f0;color:#666;border:1px dashed #ccc}.prolongation-details{background:var(--bg-card);padding:1rem;border-radius:8px;border:1px solid #ffb84d;margin-top:1rem;animation:slideDown .3s ease}.detail-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f0f0f0}.detail-item:last-child{border-bottom:none}.detail-label{font-weight:500;color:var(--text-secondary);font-size:.9rem}.detail-value{font-weight:700;color:var(--text-primary);font-size:1rem}.summary-section{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:2px solid #2196f3;position:relative}.summary-section:before{content:"💡";position:absolute;top:1rem;right:1rem;font-size:2rem;opacity:.3}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.summary-item{display:flex;flex-direction:column}.summary-item label{font-size:.9rem;color:var(--text-primary);margin-bottom:.25rem;font-weight:500}.summary-item input{padding:.75rem;border:1px solid var(--border-color);border-radius:6px;background-color:var(--bg-tertiary);color:var(--text-primary);font-weight:600;cursor:not-allowed;font-size:1rem}.summary-item.highlight input{background:linear-gradient(135deg,#fff9e6,#ffe8b3);border:2px solid #ffc107;font-size:1.1rem;color:#d68910}.error-text{color:#dc3545;font-size:.875rem;margin-top:.25rem}.error-message{background-color:#f8d7da;color:#721c24;padding:.75rem;border-radius:4px;border:1px solid #f5c6cb;margin-bottom:1rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border-color)}.export-button{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;border:none;padding:.875rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #2196f34d}.export-button:hover:not(:disabled){background:linear-gradient(135deg,#1976d2,#1565c0);transform:translateY(-2px);box-shadow:0 6px 16px #2196f366}.export-button:active:not(:disabled){transform:translateY(0)}.export-button:disabled{background:#b0bec5;cursor:not-allowed;box-shadow:none;transform:none}.cancel-button{background:var(--bg-card);color:var(--text-secondary);border:2px solid var(--border-color);padding:.875rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.reservation-layout{display:grid;grid-template-columns:1fr;gap:28px;padding:24px;align-items:start}.reservation-main{display:flex;flex-direction:column;gap:24px;position:relative;z-index:2}.reservation-summary{position:static;display:flex;flex-direction:column;gap:16px;width:100%;margin-top:4px}.summary-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:20px;box-shadow:var(--shadow-md)}.summary-card.summary-compact{display:flex;flex-direction:column;gap:12px}.summary-card-muted{background:var(--bg-secondary);box-shadow:none;border-style:dashed}.summary-title{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:12px}.summary-compact-list{display:flex;flex-direction:column;gap:8px}.summary-compact-item{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;color:var(--text-secondary)}.summary-key{font-weight:500;color:var(--text-secondary)}.summary-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:13px;color:var(--text-secondary)}.summary-row:last-child{margin-bottom:0}.summary-row.emphasis .summary-value{font-size:16px;color:var(--text-primary)}.summary-label{font-weight:500}.summary-value{font-weight:600;color:var(--text-primary)}.summary-value.warning{color:#dc2626}.summary-value.success{color:#16a34a}.summary-note{font-size:12px;color:var(--text-secondary);line-height:1.5;border-top:1px solid var(--border-color);padding-top:10px}.summary-note.subtle{border:none;padding-top:0;margin-top:4px;font-style:italic;opacity:.75}.summary-divider{height:1px;background:var(--border-color);margin:12px 0}.timeline{display:flex;flex-direction:column;gap:12px}.timeline-item{display:flex;gap:12px;align-items:flex-start}.step-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media(max-width:900px){.step-columns{grid-template-columns:1fr}.modal-card-reservation{max-width:920px}}.selection-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:18px 20px;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow-sm, 0 8px 24px rgba(15, 23, 42, .12))}.selection-card.is-collapsed{padding:16px 20px;gap:12px;box-shadow:none}.selection-card.is-collapsed .selection-summary{border:none;padding:0}.selection-header{display:flex;align-items:flex-start;gap:12px}.card-toggle{margin-left:auto;background:var(--bg-card);border:1px solid var(--border-color);border-radius:999px;padding:6px 14px;font-size:12px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;align-self:flex-start}.card-toggle:hover{color:var(--text-primary);border-color:#667eea;box-shadow:0 4px 12px #667eea40}.card-toggle:disabled,.card-toggle:disabled:hover{opacity:.45;cursor:not-allowed;border-color:var(--border-color);box-shadow:none;color:var(--text-secondary)}.selection-icon{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px;background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff;box-shadow:0 10px 22px #14b8a659}.selection-title{font-size:18px;font-weight:700;color:var(--text-primary)}.selection-subtitle{font-size:12px;color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase}.selection-card .form-field{gap:10px}.selection-summary{border-top:1px solid var(--border-color);padding-top:14px;display:flex;flex-direction:column;gap:12px}.selection-summary.compact{background:var(--bg-card);border-radius:10px;padding:16px;border:1px dashed var(--border-color)}.secondary-summary{border:none;padding-top:0}.summary-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.summary-main{font-size:16px;font-weight:700;color:var(--text-primary)}.summary-subtitle{font-size:12px;color:var(--text-secondary);letter-spacing:.06em;text-transform:uppercase}.summary-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.summary-item{background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:4px}.summary-key{font-size:10px;color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase}.summary-value{font-size:14px;font-weight:600;color:var(--text-primary)}.selection-empty{font-size:12px;color:var(--text-secondary);border:1px dashed var(--border-color);border-radius:10px;padding:14px;background:#94a3b80d}.locked-hint{display:block;margin-top:8px;font-size:12px;color:var(--text-secondary);text-align:left}.secondary-block{border-top:1px dashed var(--border-color);padding-top:16px;margin-top:8px;display:flex;flex-direction:column;gap:12px}.secondary-header{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--text-primary)}.secondary-header small{font-size:11px;color:var(--text-secondary)}.status-pill.status-default{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-secondary)}.timeline-bullet{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary)}.timeline-item.active .timeline-bullet{background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff;border-color:transparent;box-shadow:0 4px 12px #14b8a659}.timeline-item.done .timeline-bullet{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border-color:transparent;box-shadow:0 4px 12px #22c55e59}.timeline-label{font-weight:600;color:var(--text-primary);font-size:13px}.timeline-sub{font-size:12px;color:var(--text-secondary)}.summary-card.tips{background:var(--bg-secondary)}.tips-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px;color:var(--text-secondary);font-size:12px}.highlight-card{margin-top:18px;padding:18px 20px;border-radius:12px;border:1px solid var(--border-color);background:var(--bg-secondary);box-shadow:var(--shadow-sm, 0 6px 18px rgba(15, 23, 42, .15))}.highlight-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.highlight-title{font-size:18px;font-weight:700;color:var(--text-primary)}.highlight-sub{font-size:12px;color:var(--text-secondary)}.meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.meta-item{display:flex;flex-direction:column;gap:4px}.meta-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em}.meta-value{font-size:14px;font-weight:600;color:var(--text-primary)}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--border-color);background:var(--bg-card);font-size:12px;font-weight:600;text-transform:capitalize;color:var(--text-secondary)}.status-pill.status-libre{background:#22c55e1f;border-color:#22c55e66;color:#16a34a}.status-pill.status-loue{background:#f8717126;border-color:#f8717180;color:#dc2626}.status-pill.status-reserve{background:#facc152e;border-color:#facc1573;color:#b45309}.status-pill.status-maintenance{background:#3b82f61f;border-color:#3b82f673;color:#1d4ed8}.prolongation-block{margin-top:16px}.prolongation-toggle{display:flex;flex-direction:column;gap:12px;align-items:flex-start}.toggle-chip{padding:8px 16px;border-radius:999px;border:1px dashed var(--border-color);background:transparent;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.toggle-chip:hover{border-style:solid;border-color:#667eea;color:#667eea}.toggle-chip.active{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:none;box-shadow:0 8px 18px #22c55e59}.recap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.recap-tile{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:6px}.recap-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em}.recap-value{font-size:16px;font-weight:600;color:var(--text-primary)}.recap-meta{font-size:12px;color:var(--text-secondary)}.total-summary-bar{margin-top:20px;padding:18px 20px;border-radius:12px;background:linear-gradient(135deg,#022c22,#065f46);color:#fff;display:flex;flex-direction:column;gap:12px}.total-summary-row{display:flex;justify-content:space-between;align-items:center;font-weight:600}.total-summary-row.accent{font-size:18px}@media(max-width:1200px){.reservation-layout{grid-template-columns:1fr;padding:24px}.reservation-summary{position:static}}@media(max-width:900px){.step-columns{grid-template-columns:1fr}}@media(max-width:768px){.reservation-layout{padding:20px}.steps-items{flex-direction:column;gap:16px}.steps-item{flex-direction:row;justify-content:flex-start}.steps-circle{width:36px;height:36px;font-size:16px}}.cancel-button:hover{background:#f5f5f5;border-color:#999;color:#333;transform:translateY(-2px)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;max-height:0;transform:translateY(-10px)}to{opacity:1;max-height:200px;transform:translateY(0)}}@media(max-width:768px){.form-grid,.summary-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.export-button,.cancel-button{width:100%}.form-section h3{font-size:1.1rem}.prolongation-details{padding:.75rem}.detail-item{flex-direction:column;align-items:flex-start;gap:.25rem}}.reservation-detail-page{display:flex;justify-content:center;padding:var(--spacing-lg, 24px)}.reservation-detail-card{width:100%;max-width:1000px;background:linear-gradient(180deg,#ffffff08,#ffffff05);border:1px solid rgba(255,255,255,.04);border-radius:16px;padding:24px;box-shadow:0 18px 40px #0206178c;color:var(--text-primary, #e2e8f0)}.reservation-detail-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.08)}.reservation-detail-header h2{margin:0;font-size:1.5rem;letter-spacing:-.02em;font-weight:800;color:#f8fafc}.reservation-detail-actions{display:flex;gap:10px}.reservation-detail-actions .btn{padding:10px 16px;border-radius:10px;font-weight:600}.reservation-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.reservation-detail-section{background:#0f172a66;border:1px solid rgba(99,102,241,.15);border-radius:14px;padding:20px}.reservation-detail-section.full-width{grid-column:1 / -1}.reservation-detail-section.metadata{background:#0f172a40;border-color:#94a3b81a}.section-title{margin:0 0 16px;font-size:1.1rem;font-weight:700;color:#a5b4fc;letter-spacing:-.01em}.reservation-detail-row{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid rgba(148,163,184,.08)}.reservation-detail-row:last-child{border-bottom:none}.reservation-detail-label{min-width:140px;color:#a5b4fcd9;font-size:.95rem;font-weight:600}.reservation-detail-value{flex:1;background:#ffffff08;padding:10px 14px;border-radius:10px;color:#f1f5f9;font-size:1rem;font-weight:600}.reservation-detail-value.highlight-success{background:#10b98126;border:1px solid rgba(16,185,129,.3);color:#10b981}.reservation-detail-value.highlight-warning{background:#f59e0b26;border:1px solid rgba(245,158,11,.3);color:#f59e0b}.reservation-detail-value.highlight-info{background:#3b82f626;border:1px solid rgba(59,130,246,.3);color:#3b82f6}.status-badge{display:inline-flex;align-items:center;padding:6px 14px;border-radius:999px;font-size:.85rem;font-weight:700;text-transform:capitalize}.status-badge.status-green{background:#10b98133;border:1px solid rgba(16,185,129,.4);color:#10b981}.status-badge.status-blue{background:#3b82f633;border:1px solid rgba(59,130,246,.4);color:#3b82f6}.status-badge.status-purple{background:#a855f733;border:1px solid rgba(168,85,247,.4);color:#a855f7}.status-badge.status-red{background:#ef444433;border:1px solid rgba(239,68,68,.4);color:#ef4444}.status-badge.status-gray{background:#94a3b833;border:1px solid rgba(148,163,184,.4);color:#94a3b8}.payment-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.payment-summary-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;border-radius:12px;background:#0f172a80;border:1px solid rgba(148,163,184,.15)}.payment-summary-item.main{background:#6366f126;border-color:#6366f14d}.payment-summary-item.success{background:#10b98126;border-color:#10b9814d}.payment-summary-item.warning{background:#f59e0b26;border-color:#f59e0b4d}.payment-summary-label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#a5b4fcb3;margin-bottom:8px}.payment-summary-item.success .payment-summary-label{color:#6ee7b7cc}.payment-summary-item.warning .payment-summary-label{color:#fcd34dcc}.payment-summary-value{font-size:1.4rem;font-weight:800;color:#e0e7ff}.payment-summary-item.success .payment-summary-value{color:#10b981}.payment-summary-item.warning .payment-summary-value{color:#f59e0b}.payment-history-list{display:flex;flex-direction:column;gap:12px}.payment-history-item{display:flex;gap:14px;align-items:flex-start;background:#0f172a80;border:1px solid rgba(99,102,241,.15);border-radius:12px;padding:14px 18px;transition:border-color .2s}.payment-history-item:hover{border-color:#6366f159}.payment-history-icon{width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:#6366f133;border:1px solid rgba(129,140,248,.3);border-radius:10px;font-size:20px}.payment-history-content{flex:1}.payment-history-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}.payment-history-title{font-weight:700;color:#e0e7ff;font-size:.95rem}.payment-history-date{font-size:.85rem;color:#a5b4fccc}.payment-history-details{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.payment-history-amount{font-weight:800;color:#10b981;font-size:1rem}.payment-history-method{font-size:.9rem;color:#c4b5fdd9}.payment-history-remise{font-size:.85rem;color:#facc15;background:#facc151a;padding:4px 10px;border-radius:6px}.reservation-message-panel{grid-column:1 / -1;background:linear-gradient(180deg,#6366f114,#6366f108);border:1px solid rgba(99,102,241,.14);padding:18px;border-radius:12px;color:#f8fbff;font-size:1rem;line-height:1.6}.reservation-message-panel strong{display:block;margin-bottom:10px;font-size:1.1rem;color:#a5b4fc}@media(max-width:768px){.reservation-detail-grid{grid-template-columns:1fr}.reservation-detail-header{flex-direction:column;align-items:flex-start}.reservation-detail-actions{width:100%;justify-content:flex-end}.payment-summary-grid{grid-template-columns:1fr}.reservation-detail-row{flex-direction:column;align-items:flex-start;gap:6px}.reservation-detail-label{min-width:auto}.reservation-detail-value{width:100%}}.payments-page{padding:24px;background:var(--bg-secondary);min-height:100vh}.payments-header{display:flex;justify-content:space-between;align-items:flex-start;padding:3px 10px}.payments-header h1{margin:0 0 8px;font-size:28px;font-weight:600;color:var(--text-primary)}.payments-header .cars-sub{color:var(--text-secondary);margin:0}.cars-actions{display:flex;gap:12px;align-items:center}.search-input{padding:8px 12px 8px 36px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;width:250px;background:var(--bg-card);color:var(--text-primary)}.search-input-pro{width:100%;padding:12px 12px 12px 44px;border:2px solid var(--border-color);border-radius:10px;font-size:14px;outline:none;transition:all .2s;box-sizing:border-box;background:var(--bg-primary);color:var(--text-primary)}.search-input-pro:focus{border-color:#10b981;background:var(--bg-card)}.filter-select{padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;background:var(--bg-card);color:var(--text-primary)}.export-button{background:#3b82f6;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:8px}.export-button:hover{background:#2563eb}.btn-export-modern{padding:12px 24px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;display:flex;align-items:center;gap:8px;box-shadow:0 4px 12px #10b9814d;transition:all .2s}.btn-export-modern:hover{transform:translateY(-2px);box-shadow:0 6px 16px #10b98166}.summary-cards{display:flex;gap:16px;margin-bottom:24px}.stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:20px;flex:1;text-align:center;box-shadow:var(--shadow-sm)}.stat-card h3{margin:0 0 8px;font-size:14px;color:var(--text-secondary);font-weight:500}.stat-value{font-size:24px;font-weight:700;color:var(--text-primary);margin:0}.table-responsive{background:var(--bg-card);border-radius:8px;border:1px solid var(--border-color);overflow:hidden;box-shadow:var(--shadow-sm)}.cars-table{width:100%;border-collapse:collapse}.cars-table th{background:var(--bg-tertiary);padding:12px 16px;text-align:left;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border-color);font-size:14px}.cars-table td{padding:12px 16px;border-bottom:1px solid var(--border-color);font-size:14px;color:var(--text-primary)}.cars-table tr:hover{background:var(--bg-hover)}.progress-bar-container{width:100px;height:20px;background:#e5e7eb;border-radius:10px;position:relative;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#10b981,#3b82f6);border-radius:10px;transition:width .3s ease}.progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:12px;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.badge{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:4px}.status-libre{background:#dcfce7;color:#166534}.status-louee{background:#dbeafe;color:#1e40af}.status-hors_service{background:#fef2f2;color:#dc2626}.action-buttons{display:flex;flex-direction:row;gap:6px;flex-wrap:wrap;justify-content:flex-start;align-items:center}.btn-add-payment,.btn-edit-payment,.btn-history,.btn-view{border:none;border-radius:8px;cursor:pointer;font-size:11px;padding:8px 10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:600;transition:all .3s ease;white-space:nowrap;min-height:32px;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 1px 3px #0000001a}.btn-add-payment{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:1px solid #059669}.btn-add-payment:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px) scale(1.05);box-shadow:0 4px 12px #10b9814d}.btn-edit-payment{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:1px solid #d97706}.btn-edit-payment:hover{background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-2px) scale(1.05);box-shadow:0 4px 12px #f59e0b4d}.btn-history{background:linear-gradient(135deg,#6b7280,#4b5563);color:#fff;border:1px solid #4b5563}.btn-history:hover{background:linear-gradient(135deg,#4b5563,#374151);transform:translateY(-2px) scale(1.05);box-shadow:0 4px 12px #6b72804d}.btn-view{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:1px solid #2563eb}.btn-view:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px) scale(1.05);box-shadow:0 4px 12px #3b82f64d}.btn-add-payment:active,.btn-edit-payment:active,.btn-history:active,.btn-view:active{transform:translateY(0) scale(.98);transition:all .1s ease}.btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 12px;display:inline-flex;align-items:center;justify-content:center}.btn-outline{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.btn-outline:hover{background:var(--bg-hover);border-color:var(--border-hover)}.cars-loading,.cars-empty{text-align:center;padding:48px;color:var(--text-secondary);background:var(--bg-card);border-radius:8px;border:1px solid var(--border-color)}.cars-empty{color:var(--text-tertiary)}@media(max-width:768px){.payments-header{flex-direction:column;gap:16px}.cars-actions{width:100%;justify-content:space-between}.search-input{width:200px}.summary-cards{flex-direction:column}.cars-table{font-size:12px}.cars-table th,.cars-table td{padding:8px}}.payments-table-card{margin-top:20px;padding:var(--spacing-lg);border-radius:var(--radius-lg);background:var(--bg-primary);border:1px solid var(--border-color);box-shadow:var(--shadow-md)}.payments-table thead th{font-weight:var(--font-weight-semibold);color:var(--text-secondary);background:var(--gray-50)}.payments-table tbody tr{cursor:pointer;transition:background-color var(--transition-fast),transform var(--transition-fast)}.payments-table tbody tr:hover{background:var(--gray-50)}.payments-table tbody tr:focus-within{outline:none;box-shadow:inset 0 0 0 2px var(--primary-lighter)}.payments-header-right{text-align:right}.payments-header-center{text-align:center}.payments-client{display:flex;align-items:center;gap:.75rem}.payments-client-avatar{font-size:1.5rem;line-height:1}.payments-client-info{display:flex;flex-direction:column;gap:.2rem}.payments-client-name{font-weight:var(--font-weight-semibold);color:var(--text-primary);text-transform:capitalize}.payments-client-email{font-size:var(--font-size-xs);color:var(--text-tertiary)}.payments-vehicle{display:flex;flex-direction:column;gap:.2rem}.payments-vehicle-name{font-weight:var(--font-weight-medium);color:var(--text-primary)}.payments-plate-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .6rem;border-radius:var(--radius-full);background:#94a3b826;color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border:1px solid rgba(148,163,184,.25)}[data-theme=light] .payments-plate-tag{background:var(--gray-100);border:1px solid var(--gray-200)}.payments-period{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-primary);font-weight:var(--font-weight-medium)}.payments-period-separator{color:var(--text-tertiary)}.payments-period-duration{font-size:var(--font-size-xs);color:var(--text-tertiary);margin-top:.2rem}.payments-cell-right{text-align:right}.payments-amount-badge{display:inline-flex;align-items:center;justify-content:flex-end;min-width:110px;padding:.35rem .75rem;border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);background:var(--gray-100);color:var(--text-primary)}.payments-amount-badge--total{background:#3b82f61f;color:var(--primary-dark)}.payments-amount-badge--advance{background:#10b9811f;color:var(--success-color)}.payments-amount-badge--due{background:#ef44441f;color:var(--danger-color)}.payments-amount-badge--settled{background:#22c55e1f;color:var(--success-color)}.payments-cell-actions{text-align:center}.payments-actions{display:inline-flex;gap:.5rem}.payments-action-btn{width:36px;height:36px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.payments-action-btn:hover{background:var(--primary-lighter);color:var(--primary-dark);transform:translateY(-1px)}.payments-action-btn:focus{outline:none;box-shadow:0 0 0 2px var(--primary-lighter)}@media(max-width:1024px){.payments-amount-badge{min-width:90px}}@media(max-width:768px){.payments-table-card{padding:var(--spacing-md)}.payments-amount-badge{min-width:80px;font-size:var(--font-size-xs)}.payments-action-btn{width:32px;height:32px}}.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:all 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:#0f766e1a;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}}.form-layout-grid{display:grid;grid-template-columns:1fr 350px;gap:30px;align-items:start;margin-top:20px}@media(max-width:1200px){.form-layout-grid{grid-template-columns:1fr}.sidebar-recap{order:-1;position:sticky;top:20px}}.form-modern{display:flex;flex-direction:column;gap:30px}.form-step{background:var(--bg-card);border-radius:12px;padding:24px;box-shadow:var(--shadow-md);border:1px solid var(--border-color);transition:box-shadow .3s ease}.form-step:hover{box-shadow:var(--shadow-lg)}.step-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid var(--border-color)}.step-number{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;box-shadow:0 4px 8px #667eea4d}.step-info{flex:1}.step-title{font-size:20px;font-weight:700;color:var(--text-primary);margin:0 0 6px}.step-description{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.5}.form-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}.form-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:20px}@media(max-width:768px){.form-grid-2,.form-grid-3{grid-template-columns:1fr}}.form-group{display:flex;flex-direction:column;gap:8px}.label-enhanced{font-size:14px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:6px}.label-enhanced .required{color:#e53e3e;font-weight:700}.input-enhanced,.select-enhanced,.textarea-enhanced{padding:12px 16px;border:2px solid var(--border-color);border-radius:8px;font-size:15px;color:var(--text-primary);background:var(--bg-primary);transition:all .2s ease;font-family:inherit}.input-enhanced:focus,.select-enhanced:focus,.textarea-enhanced:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.input-enhanced:hover,.select-enhanced:hover,.textarea-enhanced:hover{border-color:var(--bg-tertiary)}.textarea-enhanced{resize:vertical;min-height:100px}.info-box{background:linear-gradient(135deg,#e6f3ff,#f0f7ff);border-left:4px solid #3182ce;padding:12px 16px;border-radius:6px;font-size:14px;color:#2c5282}.info-box strong{color:#2a4365}.mt-2{margin-top:12px}.text-muted{font-size:13px;color:var(--text-tertiary);margin-top:4px;display:block}.entretien-details-container{background:var(--bg-tertiary);border-radius:8px;padding:20px;border:1px dashed var(--border-color)}.financial-summary{background:linear-gradient(180deg,#0f172a99,#0f172a73);border-radius:10px;padding:20px;margin-top:20px;border:1px solid rgba(255,255,255,.04);box-shadow:0 12px 24px #02061780}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;font-size:15px;color:var(--text-secondary)}.summary-row:not(:last-child){border-bottom:1px solid rgba(255,255,255,.03)}.summary-row.total{padding-top:16px;margin-top:8px;border-top:2px solid rgba(255,255,255,.03);font-weight:700;font-size:18px}.summary-row .amount{font-weight:600;color:var(--text-primary)}.summary-row .amount-total{font-weight:800;font-size:22px;color:var(--text-primary)}.form-actions-modern{display:flex;justify-content:flex-end;gap:16px;padding-top:24px;border-top:2px solid var(--border-color)}.btn-cancel-modern,.btn-submit-modern{padding:14px 28px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:160px}.btn-cancel-modern{background:var(--bg-card);color:var(--text-secondary);border:2px solid var(--border-color)}.btn-cancel-modern:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-primary);transform:translateY(-1px)}.btn-submit-modern{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea66}.btn-submit-modern:hover:not(:disabled){box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.btn-cancel-modern:disabled,.btn-submit-modern:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.sidebar-recap{position:sticky;top:20px}.page-header-modern{background:linear-gradient(135deg,#667eea,#764ba2);padding:32px;border-radius:12px;color:#fff;box-shadow:0 8px 24px #667eea4d;margin-bottom:30px;position:relative;overflow:hidden}.page-header-modern:before{content:"";position:absolute;top:0;right:0;width:300px;height:300px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);pointer-events:none}.btn-back-modern{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:8px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-bottom:16px;display:inline-block}.btn-back-modern:hover{background:#ffffff4d;transform:translate(-4px)}.header-content{position:relative;z-index:1}.page-title-modern{font-size:32px;font-weight:800;margin:0 0 8px;text-shadow:0 2px 4px rgba(0,0,0,.1)}.page-subtitle-modern{font-size:16px;margin:0;opacity:.95;font-weight:400}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.form-step{animation:fadeIn .3s ease-out}.form-step:nth-child(1){animation-delay:.05s}.form-step:nth-child(2){animation-delay:.1s}.form-step:nth-child(3){animation-delay:.15s}.form-step:nth-child(4){animation-delay:.2s}@media print{.form-layout-grid{grid-template-columns:1fr}.sidebar-recap,.form-actions-modern,.btn-back-modern{display:none}.page-header-modern{background:var(--bg-card);color:#000;box-shadow:none}}.entretien-page{padding:20px 28px}.entretien-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.entretien-title{margin:0;font-size:28px;font-weight:800;color:var(--text-white)}.entretien-back{background:#ffffff08;color:var(--text-white);border:1px solid rgba(255,255,255,.04);padding:10px 14px;border-radius:10px}.entretien-card{background:#ffffff05;border-radius:12px;padding:20px;box-shadow:0 8px 20px #02061773;display:block}.entretien-grid{display:grid;grid-template-columns:1fr 360px;gap:20px;align-items:start}.section-subtitle{font-weight:700;color:#e2e8f0e6;margin-bottom:10px;display:flex;align-items:center;gap:8px}.entretien-icon{color:#cbd5e1b3;font-size:16px}.entretien-icon.small{margin-right:6px;font-size:14px;vertical-align:middle}.entretien-vehicle-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.entretien-field{padding:10px 12px;border-radius:8px;background:#02061740}.entretien-field__label{font-size:13px;color:#94a3b8d9;margin-bottom:6px}.entretien-field__value{font-weight:800;color:var(--text-white);font-size:15px}.entretien-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.entretien-type{display:inline-block;padding:6px 12px;border-radius:8px;background:#ffffff08;color:#e2e8f0f2;font-weight:700}.entretien-cost{font-size:18px;font-weight:900;color:#10b981;background:#10b9810f;padding:8px 12px;border-radius:8px;display:inline-block}.entretien-section{margin-top:18px;padding:12px;border-radius:10px;background:#ffffff03}.entretien-description{color:#e2e8f0f2;line-height:1.6}@media(max-width:900px){.entretien-grid,.entretien-vehicle-grid{grid-template-columns:1fr}}.notifications-pro-page{display:flex;flex-direction:column;gap:var(--spacing-xl)}.notifications-header-meta{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;margin-top:var(--spacing-sm)}.notifications-header-badge{display:inline-flex;align-items:center;gap:.45rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-full);padding:.35rem .9rem;font-size:var(--font-size-xs);color:var(--text-secondary)}.notifications-header-badge strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.notifications-pro-page .stats-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:16px!important;margin-bottom:24px;width:100%;max-width:100%;overflow:visible!important}@media(max-width:1200px){.notifications-pro-page .stats-grid{grid-template-columns:repeat(2,1fr)!important}}@media(max-width:600px){.notifications-pro-page .stats-grid{grid-template-columns:1fr!important}}.notifications-pro-page .stats-card-autorisation{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:16px 20px;box-shadow:var(--shadow-md);gap:.5rem;min-height:120px;min-width:0!important;max-width:100%;flex:none!important;transition:all .3s;position:relative;z-index:1}.notifications-pro-page .stats-card-autorisation:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.notifications-pro-page .stats-card-label{font-size:var(--font-size-sm);color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase}.notifications-pro-page .stats-card-value{font-size:2.5rem;font-weight:700;color:var(--text-primary)}.notifications-pro-page .stats-card-detail{font-size:var(--font-size-xs);color:var(--text-tertiary)}.notifications-pro-page .stats-card-blue .stats-card-value{color:var(--text-primary)}.notifications-pro-page .stats-card-red .stats-card-value{color:#ef4444}.notifications-pro-page .stats-card-orange .stats-card-value{color:#f59e0b}.notifications-pro-page .stats-card-green .stats-card-value{color:#22c55e}.notifications-toolbar{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);align-items:stretch;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md)}.notifications-toolbar__group{flex:1 1 320px;display:flex;flex-direction:column;gap:var(--spacing-md)}.notifications-toolbar__group--primary{justify-content:center}.notifications-toolbar__divider{width:1px;background:var(--border-color);border-radius:var(--radius-sm);align-self:stretch;margin:0 var(--spacing-sm)}.notifications-toolbar__group--secondary{border-left:1px solid var(--border-color);padding-left:var(--spacing-lg)}.notifications-toolbar__group-header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--spacing-sm);flex-wrap:wrap}.notifications-toolbar__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.notifications-toolbar__subtitle{font-size:var(--font-size-xs);color:var(--text-tertiary)}.notifications-toolbar__label{font-size:var(--font-size-xxs);font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary)}.notifications-toolbar__chips{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.notifications-chip{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:.65rem 1rem;border-radius:var(--radius-full);border:1px solid rgba(148,163,184,.35);background:#0f172aa6;color:#e2e8f0bf;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.05em;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.notifications-chip:hover:not(:disabled){border-color:#6366f1e6;color:#e2e8f0;background:#1e293be6;transform:translateY(-1px)}.notifications-chip.active{border-color:#3b82f6f2;background:linear-gradient(120deg,#3b82f647,#6366f152);color:#f8fafc;box-shadow:0 6px 18px #0f172a73}.notifications-chip:disabled{opacity:.6;cursor:not-allowed}.notifications-chip--compact{padding:.55rem .85rem}.notifications-chip__icon{font-size:1rem}.notifications-chip__label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.03em}.notifications-chip__count{min-width:1.6rem;padding:.1rem .55rem;border-radius:var(--radius-full);background:#0f172ae6;color:#94a3b8f2;font-weight:var(--font-weight-semibold);text-align:center;transition:background var(--transition-fast),color var(--transition-fast)}.notifications-chip.active .notifications-chip__count{background:#0f172a40;color:#fff}.notifications-empty{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary);background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-color);margin-bottom:var(--spacing-lg)}.notifications-table-card{background:var(--bg-primary);border-radius:16px;border:1px solid rgba(255,255,255,.05);box-shadow:0 20px 45px #0f172a40;overflow:hidden}.notifications-table-scroll{max-height:60vh;overflow-y:auto;padding:1rem 1.25rem}.notifications-table{width:100%;border-collapse:separate;border-spacing:0}.notifications-table{border-radius:12px;overflow:hidden}.notifications-table thead th{padding:.75rem 1rem;text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-white);letter-spacing:.04em;text-transform:uppercase}.notifications-table thead th{padding:.85rem 1rem;font-size:.95rem;font-weight:700;color:#fffffff2;letter-spacing:.08em}.notifications-table tbody td{padding:.6rem .75rem;font-size:.95rem;color:#e2e8f0e0;border-bottom:1px solid rgba(255,255,255,.03);vertical-align:middle;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.notifications-table tbody td{padding:.9rem 1rem}.notifications-table tbody tr:nth-child(2n){background:#ffffff03}.notifications-table tbody tr:nth-child(odd){background:transparent}.notifications-table tbody tr{transition:background .15s ease,box-shadow .15s ease,transform .12s ease}.notifications-table tbody tr:hover{background:#ffffff05;box-shadow:inset 0 1px #ffffff05,0 6px 18px #02061740;transform:translateY(-1px)}.notifications-pill{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .5rem;transition:background var(--transition-fast),color var(--transition-fast);background:transparent;border-radius:6px;font-size:var(--font-size-xxs);color:var(--text-white);border:1px solid rgba(255,255,255,.04)}.notifications-row--alt{background:#1e293b4d}.notifications-row:hover{background:#28324147}.notifications-message{color:#e2e8f0db;line-height:1.5;white-space:pre-line}.notifications-pill{display:inline-flex;align-items:center;justify-content:center;min-width:54px;padding:.28rem .6rem;border-radius:8px;font-size:var(--font-size-xxs);font-weight:var(--font-weight-semibold);letter-spacing:.02em;text-transform:none;background:#ffffff05;color:#e2e8f0e6;border:1px solid rgba(255,255,255,.04)}.notifications-type-badge,.notifications-urgency,.notifications-pill{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;line-height:1;max-width:100%;white-space:nowrap;overflow:hidden;margin:0 auto}.notifications-pill--success{background:#22c55e0f;color:#22c55e;box-shadow:none}.notifications-pill--warning{background:#fbbf240f;color:#fbbf24;box-shadow:none}.notifications-type-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .6rem;border-radius:8px;background:#ffffff05;color:#e2e8f0e6;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border:1px solid rgba(255,255,255,.04);box-shadow:none}.notifications-type-badge__icon{font-size:1rem}.notifications-urgency{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .5rem;border-radius:6px;font-size:var(--font-size-xxs);font-weight:var(--font-weight-semibold);letter-spacing:.02em;text-transform:none;background:#ffffff05;color:#e2e8f0e6;border:1px solid rgba(255,255,255,.04)}.notifications-urgency--urgent{background:#f871710f;color:#f87171;border-color:#f871711f}.notifications-urgency--warning{background:#fbbf240f;color:#fbbf24;border-color:#fbbf241f}.notifications-urgency--normal{background:#2dd4bf0a;color:#2dd4bf;border-color:#2dd4bf14}.notifications-urgency--unread{background:#6366f10d;color:#818cf8;border-color:#6366f117}.notifications-actions{display:flex;gap:.4rem;justify-content:flex-end;align-items:center;flex-wrap:nowrap}.notifications-actions{gap:.4rem}.notifications-action{padding:.35rem .6rem;border:1px solid rgba(255,255,255,.03);border-radius:6px;font-size:.85rem;font-weight:var(--font-weight-medium);letter-spacing:.01em;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);display:inline-flex;align-items:center;gap:.35rem;min-width:auto;justify-content:center;background:transparent}.notifications-action{border-radius:8px;font-size:.86rem;font-weight:700;transition:transform .12s ease,background .12s ease,border-color .12s ease;background:#ffffff03}.notifications-action:disabled{opacity:.6;cursor:not-allowed}.notifications-action--primary{background:transparent;color:var(--text-primary);border-color:#ffffff0a;box-shadow:none}.notifications-action--danger{background:transparent;color:#f56565f2;border-color:#f5656514;box-shadow:none}.notifications-action--danger{color:#f56565fa;border-color:#f565651f}.notifications-action--icon{min-width:auto;padding:.3rem;width:34px;height:34px;border-radius:6px;justify-content:center;background:transparent;border:1px solid rgba(255,255,255,.03)}.notifications-action--icon{padding:.28rem;width:36px;height:36px;border-radius:8px;background:#00000008}.notifications-action--icon svg{width:16px;height:16px}.notifications-action--icon:hover:not(:disabled){transform:scale(1.06);background:#ffffff08;border-color:#ffffff0f}.notifications-action--icon svg{width:14px;height:14px}.notifications-action:hover:not(:disabled){background:#ffffff05}.notifications-action:hover:not(:disabled){background:#ffffff08;transform:translateY(-2px)}.notifications-action--primary:hover:not(:disabled){border-color:#ffffff0f}.notifications-action--danger:hover:not(:disabled){border-color:#f5656524}.notifications-cell{display:flex;flex-direction:column;gap:.25rem}.notifications-cell__primary{font-weight:var(--font-weight-semibold);color:#f8fafcf2}.notifications-cell__secondary{font-size:var(--font-size-xs);color:#94a3b8d9}.notifications-cell__primary,.notifications-cell__secondary{white-space:normal;overflow:visible}.notifications-table thead th:nth-child(2),.notifications-table thead th:nth-child(3){text-align:center}.notifications-table th:nth-child(2){min-width:200px;width:34%}.notifications-table td:nth-child(2){min-width:160px;width:34%;display:table-cell;vertical-align:middle;text-align:center;padding-left:.6rem;padding-right:.6rem}.notifications-table th:nth-child(3){min-width:120px;width:20%}.notifications-table td:nth-child(3){min-width:100px;width:20%;display:table-cell;vertical-align:middle;text-align:center;padding-left:.45rem;padding-right:.45rem}.notifications-table th:nth-child(4),.notifications-table td:nth-child(4){width:12%;min-width:110px;text-align:center}.notifications-amount{display:flex;flex-direction:column;gap:.2rem;font-size:var(--font-size-xs)}.notifications-amount__total{color:#94a3b8d9}.notifications-amount__paid{color:#22c55e;font-weight:var(--font-weight-semibold)}.notifications-amount__due{color:#f97316;font-weight:var(--font-weight-semibold)}.notifications-amount__muted{color:#94a3b8a6}.notifications-table thead th{background:#ffffff05;color:#e2e8f0cc;border-bottom:1px solid rgba(255,255,255,.03);text-transform:none;font-size:.85rem}.notifications-table thead th{background:linear-gradient(180deg,#0a0e14f2,#0f131afa);color:#fffffff2;border-bottom:1px solid rgba(255,255,255,.06);text-transform:uppercase;font-size:.9rem}.notifications-table thead th+th{border-left:none}.notifications-table tbody tr{border-bottom:1px solid rgba(255,255,255,.02)}@media(max-width:1024px){.notifications-toolbar__group--secondary{border-left:none;padding-left:0;border-top:1px solid var(--border-color);padding-top:var(--spacing-lg)}.notifications-toolbar__divider{display:none}}@media(max-width:768px){.notifications-pro-page{gap:var(--spacing-lg)}.notifications-toolbar{padding:var(--spacing-md)}.notifications-actions{flex-direction:row}.notifications-message{max-width:none}}.notification-detail-page{display:flex;justify-content:center;padding:var(--spacing-lg)}.notification-detail-card{width:100%;max-width:980px;background:linear-gradient(180deg,#ffffff08,#ffffff05);border:1px solid rgba(255,255,255,.04);border-radius:14px;padding:20px;box-shadow:0 18px 40px #0206178c;color:var(--text-primary)}.notification-detail-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:16px}.notification-detail-header h2{margin:0;font-size:1.35rem;letter-spacing:-.02em;font-weight:800}.notification-detail-actions{display:flex;gap:10px}.notification-detail-actions .btn{padding:8px 12px;border-radius:8px}.notification-detail-grid{display:grid;grid-template-columns:1fr 2fr;gap:18px;align-items:start}.notification-detail-row{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border-radius:10px}.notification-detail-label{min-width:150px;color:#e2e8f0e6;font-size:1rem;font-weight:800;letter-spacing:-.01em}.notification-detail-value{background:#ffffff05;padding:10px 14px;border-radius:10px;flex:1;color:#f5f7fafa;font-size:1.02rem;font-weight:700;line-height:1.6}.notification-message-panel{grid-column:1 / -1;background:linear-gradient(180deg,#6366f114,#6366f108);border:1px solid rgba(99,102,241,.14);padding:18px;border-radius:12px;margin:8px 0 12px;color:#f8fbff;white-space:pre-wrap;font-size:1.03rem;font-weight:700;line-height:1.7}.notification-detail-full{grid-column:1 / -1;margin-top:12px}.notification-payload{max-height:300px;overflow:auto;background:#020617b3;padding:14px;border-radius:10px;color:#eaf2ff;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Roboto Mono,Courier New,monospace;font-size:13px;line-height:1.55}@media(max-width:880px){.notification-detail-grid{grid-template-columns:1fr}.notification-detail-label{min-width:120px}}:root{--primary: #3b82f6;--primary-dark: #2563eb;--primary-light: #dbeafe;--success: #22c55e;--success-light: #dcfce7;--warning: #eab308;--warning-light: #fef9c3;--danger: #ef4444;--danger-dark: #dc2626;--danger-light: #fee2e2;--gray-50: #f8fafc;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;color:var(--text-primary);background-color:var(--bg-secondary);font-size:14px}#root{min-height:100vh;display:flex;background-color:var(--bg-secondary)}button{cursor:pointer;border:none;background:none;font:inherit}input,button,textarea,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.loading{display:flex;justify-content:center;align-items:center;min-height:200px;color:var(--gray-600)}.error{padding:16px;border-radius:8px;background-color:var(--danger-light);color:var(--danger-dark);margin-bottom:16px}.success{padding:16px;border-radius:8px;background-color:var(--success-light);color:var(--success);margin-bottom:16px}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}:root{--bg-primary: #1e293b;--bg-secondary: #0f172a;--bg-tertiary: #334155;--bg-card: #1e293b;--bg-hover: #334155;--text-primary: #f1f5f9;--text-secondary: #cbd5e1;--text-tertiary: #94a3b8;--border-color: #334155;--border-hover: #475569;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5);--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-success: linear-gradient(135deg, #10b981 0%, #059669 100%);--gradient-warning: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);--gradient-danger: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);--color-primary: #818cf8;--color-success: #34d399;--color-warning: #fbbf24;--color-danger: #f87171;--color-info: #60a5fa}*{transition:background-color .3s ease,color .3s ease,border-color .3s ease}body{background-color:var(--bg-secondary);color:var(--text-primary)}.card,.stats-card,.table-container{background-color:var(--bg-card);border-color:var(--border-color);box-shadow:var(--shadow-md)}input,select,textarea{background-color:var(--bg-primary);color:var(--text-primary);border-color:var(--border-color)}input:focus,select:focus,textarea:focus{border-color:var(--color-primary)}input::placeholder,textarea::placeholder{color:var(--text-tertiary)}.dark-mode .navbar{background:linear-gradient(135deg,#1e293b,#334155);border-bottom-color:var(--border-color)}.dark-mode .sidebar,.dark-mode .sidebar-professional{background-color:var(--bg-card);border-right-color:var(--border-color)}.dark-mode table{background-color:var(--bg-card)}.dark-mode table thead{background-color:var(--bg-tertiary)}.dark-mode table tbody tr{border-bottom-color:var(--border-color)}.dark-mode table tbody tr:hover{background-color:var(--bg-hover)}.dark-mode button:not(.btn-primary):not(.btn-success):not(.btn-danger):not([class*=gradient]){background-color:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-color)}.dark-mode button:hover:not(.btn-primary):not(.btn-success):not(.btn-danger):not([class*=gradient]){background-color:var(--bg-hover)}.dark-mode ::-webkit-scrollbar{background-color:var(--bg-secondary)}.dark-mode ::-webkit-scrollbar-thumb{background-color:var(--bg-tertiary)}.dark-mode ::-webkit-scrollbar-thumb:hover{background-color:var(--border-hover)}.dark-mode .cars-professional-page,.dark-mode .clients-professional-page,.dark-mode .reservations-professional-page,.dark-mode .payments-professional-page{background:var(--bg-secondary)}.dark-mode .cars-header,.dark-mode .clients-header,.dark-mode .reservations-header,.dark-mode .payments-header{background:var(--bg-card);border:1px solid var(--border-color)}.dark-mode .page-title{color:var(--text-primary)}.dark-mode .page-subtitle{color:var(--text-secondary)}.dark-mode .search-input-pro,.dark-mode .search-box input{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-color)}.dark-mode .car-card,.dark-mode .client-card,.dark-mode .reservation-card,.dark-mode .payment-card{background:var(--bg-card);border:1px solid var(--border-color)}.dark-mode .card-header{background:var(--bg-tertiary);border-bottom-color:var(--border-color)}.dark-mode .card-footer{background:var(--bg-tertiary);border-top-color:var(--border-color)}.dark-mode .cars-table-container,.dark-mode .clients-table-container,.dark-mode .reservations-table-container,.dark-mode .payments-table-container,.dark-mode .empty-state,.dark-mode .error-state{background:var(--bg-card);border:1px solid var(--border-color)}.dark-mode .empty-state h3,.dark-mode .error-state p{color:var(--text-primary)}.dark-mode .empty-state p{color:var(--text-secondary)}.dark-mode .modal-content{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color)}.dark-mode .modal-header{border-bottom-color:var(--border-color)}.dark-mode .modal-footer{border-top-color:var(--border-color)}.dark-mode .form-group label{color:var(--text-primary)}.dark-mode .form-control,.dark-mode .form-input,.dark-mode .form-textarea,.dark-mode .form-group input,.dark-mode .form-group select,.dark-mode .form-group textarea{background:var(--bg-primary);color:var(--text-primary);border-color:var(--border-color)}.dark-mode .form-input:focus,.dark-mode .form-textarea:focus,.dark-mode .form-group input:focus,.dark-mode .form-group select:focus,.dark-mode .form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #5160ff1f}.dark-mode .form-group small,.dark-mode .form-hint{color:var(--text-secondary)}.dark-mode .badge,.dark-mode .tag{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-color)}.dark-mode .tooltip{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.dark-mode .alert{background:var(--bg-card);border-color:var(--border-color);color:var(--text-primary)}.dark-mode .pagination button{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-color)}.dark-mode .pagination button:hover:not(:disabled){background:var(--bg-hover)}.dark-mode .pagination button.active{background:var(--gradient-primary);color:#fff;border-color:transparent}.dark-mode .loader-overlay{background:#0f172acc}.dark-mode .notification{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-lg)}
