﻿:root{--zinc-950: #0a0a0a;--zinc-900: #181818;--zinc-850: #1f1f1f;--zinc-800: #272727;--zinc-750: #2e2e2e;--zinc-700: #3f3f3f;--zinc-600: #525252;--zinc-500: #717171;--zinc-400: #a1a1a1;--zinc-300: #d4d4d4;--zinc-200: #e4e4e4;--zinc-100: #f4f4f4;--zinc-50: #fafafa;--color-minor: #22c55e;--color-minor-light: #4ade80;--color-minor-dark: #16a34a;--color-minor-strong: #15803d;--color-minor-strong-hover: #166534;--color-minor-text: #22c55e;--color-minor-alpha: rgba(34, 197, 94, 0.15);--color-minor-subtle: rgba(34, 197, 94, 0.08);--color-lime: #84cc16;--color-lime-light: #a3e635;--color-lime-dark: #65a30d;--color-red: #ef4444;--color-red-light: #f87171;--color-red-dark: #dc2626;--color-red-alpha: rgba(239, 68, 68, 0.15);--amber-500: #f59e0b;--amber-950: #451a03;--green-500: #4ade80;--green-950: #052e16;--red-500: #ef4444;--red-950: #450a0a;--font-family: 'Satoshi', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;--font-family-heading: 'Satoshi', sans-serif;--font-size-xs: 0.75rem;--font-size-sm: 0.8125rem;--font-size-base: 0.9375rem;--font-size-lg: 1.0625rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--spacing-1: 0.25rem;--spacing-2: 0.5rem;--spacing-3: 0.75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--radius-sm: 6px;--radius: 8px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-2xl: 1.25rem;--shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.2);--shadow: 0 2px 8px rgba(0, 0, 0, 0.25);--shadow-md: 0 4px 12px rgba(0, 0, 0, 0.3);--shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.4);--shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.5);--transition: 200ms ease;--transition-fast: 100ms ease;--sidebar-width: 260px}[data-theme=light]{--zinc-950: #ffffff;--zinc-900: #fafafa;--zinc-850: #f5f5f5;--zinc-800: #e9e9e9;--zinc-750: #d4d4d4;--zinc-700: #b5b5b5;--zinc-600: #8c8c8c;--zinc-500: #6b6b6b;--zinc-400: #4a4a4a;--zinc-300: #2d2d2d;--zinc-200: #1a1a1a;--zinc-100: #0d0d0d;--zinc-50: #000000;--color-minor: #22c55e;--color-minor-light: #4ade80;--color-minor-dark: #16a34a;--color-minor-strong: #15803d;--color-minor-strong-hover: #166534;--color-minor-text: #15803d;--color-minor-alpha: rgba(34, 197, 94, 0.15);--color-minor-subtle: rgba(34, 197, 94, 0.08);--color-lime: #65a30d;--color-lime-light: #84cc16;--color-lime-dark: #4d7c0f;--color-red: #dc2626;--color-red-light: #ef4444;--color-red-dark: #b91c1c;--color-red-alpha: rgba(220, 38, 38, 0.12);--amber-950: #fef3c7;--green-950: #dcfce7;--red-950: #fee2e2;--color-success: #166534;--color-warning: #b45309;--color-error: #991b1b;--shadow-sm: 0 1px 2px rgba(45, 42, 37, 0.06);--shadow: 0 1px 3px rgba(45, 42, 37, 0.08), 0 1px 2px rgba(45, 42, 37, 0.04);--shadow-md: 0 4px 6px rgba(45, 42, 37, 0.07), 0 2px 4px rgba(45, 42, 37, 0.04);--shadow-lg: 0 10px 15px rgba(45, 42, 37, 0.08), 0 4px 6px rgba(45, 42, 37, 0.04);--shadow-xl: 0 20px 25px rgba(45, 42, 37, 0.1), 0 10px 10px rgba(45, 42, 37, 0.04);--shadow-glow: 0 0 0 3px var(--color-minor-alpha)}[data-theme=light] .sidebar{background:var(--zinc-950)}[data-theme=light] .nav-item-active{background:rgba(34,197,94,.1607843137)}[data-theme=light] .nav-item-active:hover{background:rgba(34,197,94,.2509803922)}[data-theme=light] .nav-item:hover .nav-icon{color:var(--zinc-200)}[data-theme=light] .nav-item-active .nav-icon{color:var(--color-minor)}[data-theme=light] .nav-item-active:hover .nav-icon{color:var(--color-minor)}[data-theme=light] .main-body{background:none;background-image:none}[data-theme=light] .app-header{background:var(--zinc-950);border-bottom:1px solid var(--zinc-800);box-shadow:none}[data-theme=light] .app-header-tab{color:var(--zinc-500)}[data-theme=light] .app-header-tab:hover{color:var(--zinc-300)}[data-theme=light] .app-header-tab.app-header-tab--active{color:var(--zinc-200);font-weight:500;border-bottom:3px solid var(--color-minor)}[data-theme=light] .app-header-btn{color:var(--zinc-500)}[data-theme=light] .app-header-btn:hover{background:var(--zinc-850);color:var(--zinc-300)}[data-theme=light] .main-content{background:var(--zinc-900)}[data-theme=light] .gantt-container,[data-theme=light] .planning-gantt{background:none}[data-theme=light] .planning-gantt .gcm-timeline__content .gcm-timeline__inner{background:rgba(0,0,0,0)}[data-theme=light] .planning-gantt .gcm-timeline__header-wrapper.gcm-timeline--fortnight{background:rgba(0,0,0,0)}[data-theme=light] .planning-gantt .gcm-week-cell:nth-child(odd){background:rgba(0,0,0,0)}[data-theme=light] .gcm-header{background:none}[data-theme=light] .gcm-month-indicator{background:rgba(0,0,0,0);border:none;box-shadow:none}[data-theme=light] .gcm-timeline__super-header--months{border:none}[data-theme=light] .gcm-timeline__super-header.gcm-timeline__super-header--months{border-bottom:none}[data-theme=light] .planning-gantt .gcm-day:not(.gcm-day--weekend){background-color:var(--zinc-900)}[data-theme=light] .planning-gantt .gcm-day.gcm-day--weekend{background-color:var(--zinc-800)}[data-theme=light] .gcm-timeline__header.gcm-timeline__header--weeks.gcm-timeline__header--weeks-fortnight{border-bottom:1px solid var(--zinc-800)}[data-theme=light] .gcm-timeline__header--weeks-fortnight{border-bottom:1px solid var(--zinc-800)}[data-theme=light] .gcm-timeline__super-header{border-bottom:none}[data-theme=light] .gcm-super-cell--month{border:none}[data-theme=light] .gcm-header__title{color:var(--zinc-300)}[data-theme=light] .gcm-header__count{color:var(--zinc-600);background:none}[data-theme=light] .gantt-timeline-header,[data-theme=light] .gcm-timeline__header{background:none;border-bottom-color:var(--zinc-750)}[data-theme=light] .gcm-body__header-row{background:none}[data-theme=light] .gcm-body__content-row{background:none}[data-theme=light] .gcm-body__content-row .gcm-timeline__row--expanded{border-bottom:1px solid var(--zinc-800)}[data-theme=light] .gcm-body__content-row .gcm-timeline__row--expanded~.gcm-timeline__row--employee.gcm-row-encours{border-bottom:1px solid var(--zinc-800)}[data-theme=light] .planning-gantt .gcm-sidebar__header{background:var(--zinc-900);border-right:1px solid var(--zinc-800);color:var(--zinc-400)}[data-theme=light] .planning-gantt .gcm-sidebar__header .gcm-col{color:var(--zinc-400);font-weight:600}[data-theme=light] .planning-gantt .gcm-sidebar__content{background:var(--zinc-900);border-right:1px solid var(--zinc-800)}[data-theme=light] .gcm-site-row{border-bottom:1px solid var(--zinc-800)}[data-theme=light] .gcm-site-row:hover{background:var(--zinc-850)}[data-theme=light] .gcm-site-row.gcm-site-row--expanded{background:var(--zinc-850)}[data-theme=light] .gcm-site-name{color:var(--zinc-300);font-weight:500}[data-theme=light] .gcm-site-name:hover{color:var(--zinc-100)}[data-theme=light] .gcm-site-status,[data-theme=light] .gcm-site-date,[data-theme=light] .gcm-site-client,[data-theme=light] .gcm-site-city{color:var(--zinc-500)}[data-theme=light] .gcm-site-row__expand{color:var(--zinc-500)}[data-theme=light] .gcm-site-row__expand:hover{color:var(--color-minor)}[data-theme=light] .gcm-employee-row{background:var(--zinc-850);border-bottom:1px solid var(--zinc-800);border-left:2px solid var(--site-color, var(--color-minor-light))}[data-theme=light] .planning-gantt .gcm-timeline__row--affectation.gcm-timeline__row--employee-parent{background:var(--zinc-800)}[data-theme=light] .gcm-employee-row-affectation.gcm-employee-row-affectation--parent,[data-theme=light] .gcm-employee-row-affectation.gcm-employee-row-affectation--parent.gcm-employee-row-affectation--expanded{background:var(--zinc-850)}[data-theme=light] .gcm-employee-name{color:var(--zinc-400)}[data-theme=light] .gcm-body__content-row{scrollbar-color:var(--zinc-700) var(--zinc-900)}[data-theme=light] .gantt-row{border-bottom-color:var(--zinc-800)}[data-theme=light] .gantt-row:hover{background:var(--zinc-850)}[data-theme=light] .gantt-cell{border-right-color:var(--zinc-800)}[data-theme=light] .date-nav-today{color:var(--zinc-500)}[data-theme=light] .date-nav-today:hover{color:var(--zinc-300);background:var(--zinc-850)}[data-theme=light] .date-nav-label{color:var(--zinc-300);background:var(--zinc-850);border:1px solid var(--zinc-750);border-radius:20px;padding:6px 14px}[data-theme=light] .date-nav-label:hover{border-color:var(--color-minor);box-shadow:var(--shadow-glow);color:var(--zinc-200)}[data-theme=light] .date-nav-label svg{color:var(--zinc-500)}[data-theme=light] .gcm-view-tabs{background:var(--zinc-850);border:1px solid var(--zinc-750)}[data-theme=light] .gcm-view-tab{color:var(--zinc-500)}[data-theme=light] .gcm-view-tab:hover{color:var(--zinc-300);background:var(--zinc-800)}[data-theme=light] .gcm-view-tab.gcm-view-tab--active{background:var(--zinc-950);color:var(--zinc-200);box-shadow:var(--shadow-sm)}[data-theme=light] .gcm-view-toggle{display:inline-flex;align-items:center;gap:2px;width:fit-content;max-width:100%;flex-wrap:wrap;padding:3px;background:var(--acb-card);border:1px solid var(--acb-line);border-radius:10px;box-shadow:none}[data-theme=light] .gcm-view-toggle-btn{background:rgba(0,0,0,0);border:none;border-radius:7px;padding:6px 14px;font-size:13.5px;font-weight:500;color:var(--acb-sub);text-decoration:none;white-space:nowrap;transition:color .12s,background .12s;cursor:pointer;user-select:none;-webkit-user-select:none}[data-theme=light] .gcm-view-toggle-btn:hover{color:var(--acb-ink);background:rgba(0,0,0,0)}[data-theme=light] .gcm-view-toggle-btn.active{background:var(--acb-green);color:#fff;font-weight:600;box-shadow:0 1px 2px rgba(22,179,100,.3)}[data-theme=light] .planning-gantt .gcm-view-toggle-btn.active{background:var(--acb-green);color:#fff}[data-theme=light] .planning-gantt .gcm-header{border-bottom-color:var(--zinc-800)}[data-theme=light] .btn-icon{color:var(--zinc-500)}[data-theme=light] .btn-icon:hover{color:var(--zinc-300);background:var(--zinc-850)}[data-theme=light] .gcm-marker--today{border-left:4px solid var(--color-minor-light)}[data-theme=light] .gcm-marker--weekend{background:linear-gradient(180deg, rgba(45, 42, 37, 0.04) 0%, rgba(45, 42, 37, 0.02) 100%),repeating-linear-gradient(-45deg, transparent, transparent 3px, rgba(45, 42, 37, 0.08) 3px, rgba(45, 42, 37, 0.08) 6px)}[data-theme=light] .gcm-marker--holiday{background:linear-gradient(180deg, rgba(201, 182, 22, 0.06) 0%, rgba(201, 182, 22, 0.03) 100%),repeating-linear-gradient(-45deg, rgba(201, 182, 22, 0.08), rgba(201, 182, 22, 0.08) 3px, transparent 3px, transparent 6px)}[data-theme=light] .gcm-marker--closure{background:linear-gradient(180deg, rgba(220, 38, 38, 0.06) 0%, rgba(220, 38, 38, 0.03) 100%),repeating-linear-gradient(-45deg, rgba(220, 38, 38, 0.08), rgba(220, 38, 38, 0.08) 3px, transparent 3px, transparent 6px)}[data-theme=light] .gcm-marker--day-border{background:rgba(75,70,62,.12)}[data-theme=light] .gcm-segment{box-shadow:var(--shadow-sm)}[data-theme=light] .gcm-timeline__row{border-bottom-color:var(--zinc-800)}[data-theme=light] .gcm-timeline__row:hover{background:var(--zinc-850)}[data-theme=light] .gcm-site-row.gcm-row-encours{border-top:1px solid var(--zinc-800);border-left:none}[data-theme=light] .gcm-site-row.gcm-row-encours.gcm-site-row--expanded{background:var(--zinc-800);border-top:1px solid var(--zinc-800);border-left:none}[data-theme=light] .gcm-timeline__super-header.gcm-timeline__super-header--months.gcm-timeline__super-header--affectation{border-bottom:1px solid var(--zinc-800)}[data-theme=light] .planning-gantt .gcm-super-cell.gcm-super-cell--month{border-bottom:1px solid var(--zinc-800)}[data-theme=light] .gcm-scroll-btn{background:var(--zinc-500);border-color:var(--zinc-400);color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.15)}[data-theme=light] .gcm-scroll-btn:hover{background:var(--zinc-400)}[data-theme=light] .gcm-encours-sites-separator{background:var(--zinc-800);border-top:1px solid var(--zinc-800);border-bottom:none}[data-theme=light] .gcm-encours-sites-separator *{color:#1a1815}[data-theme=light] .gcm-encours-sites-toggle{color:#1a1815}[data-theme=light] .gcm-encours-sites-toggle:hover{color:#000}[data-theme=light] .gcm-encours-sites-chevron{color:#1a1815}[data-theme=light] .gcm-encours-sites-count{background:#fff;color:#1a1815}[data-theme=light] .gcm-encours-sites-separator-timeline{background:rgba(0,0,0,0);border-top:none}[data-theme=light] .gcm-timeline__row.gcm-encours-sites-separator-timeline{background-color:var(--zinc-800)}[data-theme=light] code{background:var(--zinc-850);color:var(--zinc-400)}[data-theme=light] code.code-sm{background:var(--zinc-850);color:var(--zinc-500)}[data-theme=light] .card{box-shadow:var(--shadow-sm)}[data-theme=light] .card--table{background:#fff;border:none;box-shadow:none;border-radius:0}[data-theme=light] .card--table .table{background:rgba(0,0,0,0)}[data-theme=light] .card-header{border-bottom-color:var(--zinc-800)}[data-theme=light] .card-footer{border-top-color:var(--zinc-800);background:var(--zinc-900)}[data-theme=light] .table th{background:var(--zinc-850);border-bottom-color:var(--zinc-750)}[data-theme=light] .table td{border-bottom-color:var(--zinc-800)}[data-theme=light] .btn-primary{background:var(--color-minor-strong);color:#fff;font-weight:600;border:none;box-shadow:0 2px 8px rgba(34,197,94,.3),inset 0 1px 0 hsla(0,0%,100%,.15)}[data-theme=light] .btn-primary:hover{background:var(--color-minor-strong-hover);transform:translateY(-1px);box-shadow:0 4px 12px rgba(34,197,94,.35),inset 0 1px 0 hsla(0,0%,100%,.2)}[data-theme=light] .btn-primary:active{transform:translateY(0);box-shadow:0 1px 4px rgba(34,197,94,.25)}[data-theme=light] .btn-secondary{background:var(--zinc-850);border:1px solid var(--zinc-750);color:var(--zinc-400)}[data-theme=light] .btn-secondary:hover{background:var(--zinc-800);border-color:var(--zinc-700);color:var(--zinc-300)}[data-theme=light] .btn-ghost,[data-theme=light] .btn-tertiary{background:rgba(0,0,0,0);color:var(--zinc-500)}[data-theme=light] .btn-ghost:hover,[data-theme=light] .btn-tertiary:hover{background:var(--zinc-850);color:var(--zinc-300)}[data-theme=light] .btn-danger{background:var(--color-red);color:#fff}[data-theme=light] .btn-danger:hover{background:var(--color-red-dark)}[data-theme=light] .btn-icon{color:var(--zinc-500)}[data-theme=light] .btn-icon:hover{background:var(--zinc-850);color:var(--zinc-300)}[data-theme=light] input,[data-theme=light] select,[data-theme=light] textarea{background:rgba(0,0,0,0);border:1px solid var(--zinc-750);color:var(--zinc-300)}[data-theme=light] input::placeholder,[data-theme=light] select::placeholder,[data-theme=light] textarea::placeholder{color:var(--zinc-600)}[data-theme=light] input:hover,[data-theme=light] select:hover,[data-theme=light] textarea:hover{border-color:var(--zinc-700)}[data-theme=light] input:focus,[data-theme=light] select:focus,[data-theme=light] textarea:focus{border-color:var(--color-minor);box-shadow:var(--shadow-glow);outline:none}[data-theme=light] input:disabled,[data-theme=light] select:disabled,[data-theme=light] textarea:disabled{background:var(--zinc-850);color:var(--zinc-600);cursor:not-allowed}[data-theme=light] .select{background-color:#fff;border:1px solid var(--zinc-750);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23000000' d='M3 4.5L6 7.5L9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-2) center;background-size:12px 12px}[data-theme=light] input[type=checkbox],[data-theme=light] input[type=radio]{accent-color:var(--color-minor)}[data-theme=light] label{color:var(--zinc-400)}[data-theme=light] .form-group label{color:var(--zinc-400)}[data-theme=light] .form-hint{color:var(--zinc-600)}[data-theme=light] .form-error{color:var(--color-error)}[data-theme=light] .modal-backdrop{background:rgba(0,0,0,.3);backdrop-filter:blur(4px)}[data-theme=light] .modal-content{background:#fff;border:1px solid var(--zinc-200);box-shadow:0 8px 30px rgba(0,0,0,.12)}[data-theme=light] .modal-header{border-bottom-color:var(--zinc-200)}[data-theme=light] .modal-header h2,[data-theme=light] .modal-header h3,[data-theme=light] .modal-header .modal-title{color:var(--zinc-100)}[data-theme=light] .modal-header .btn-close{color:var(--zinc-400);border-color:var(--zinc-300)}[data-theme=light] .modal-header .btn-close:hover{color:var(--zinc-100);background:var(--zinc-200);border-color:var(--zinc-200)}[data-theme=light] .modal-body{color:var(--zinc-600)}[data-theme=light] .modal-footer{border-top-color:var(--zinc-200);background:var(--zinc-50, #fafafa)}[data-theme=light] .modal-close{color:var(--zinc-400)}[data-theme=light] .modal-close:hover{color:var(--zinc-700);background:var(--zinc-100)}[data-theme=light] .modal-content .select,[data-theme=light] .modal-body .select{background-color:#fff;background-repeat:no-repeat;border:1px solid var(--zinc-300);color:var(--zinc-800)}[data-theme=light] .modal-content .select:hover,[data-theme=light] .modal-body .select:hover{border-color:var(--zinc-400)}[data-theme=light] .modal-content .select:focus,[data-theme=light] .modal-body .select:focus{border-color:var(--color-minor);background-color:var(--zinc-50, #fafafa)}[data-theme=light] .modal-content .select option,[data-theme=light] .modal-body .select option{background:#fff;color:var(--zinc-800)}[data-theme=light] .dropdown-menu{background:var(--zinc-950);border:1px solid var(--zinc-750);box-shadow:var(--shadow-lg)}[data-theme=light] .dropdown-item{color:var(--zinc-400)}[data-theme=light] .dropdown-item:hover{background:var(--zinc-850);color:var(--zinc-300)}[data-theme=light] .dropdown-item.active,[data-theme=light] .dropdown-item.selected{background:var(--color-minor-alpha);color:var(--zinc-300)}[data-theme=light] .dropdown-divider{border-color:var(--zinc-800)}[data-theme=light] .dropdown-header{color:var(--zinc-500)}[data-theme=light] .dropdown-selector{background:#fff;border:1px solid var(--zinc-750);box-shadow:0 4px 16px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.04);border-radius:var(--radius-sm)}[data-theme=light] .dropdown-selector .dropdown-item{border-radius:4px;transition:all 150ms ease,transform 150ms ease}[data-theme=light] .dropdown-selector .dropdown-item:hover{background:var(--color-minor-alpha, rgba(212, 165, 116, 0.1));border-left-color:var(--color-minor);color:var(--zinc-200);transform:translateX(2px)}[data-theme=light] .context-menu{background:var(--zinc-950);border:1px solid var(--zinc-750);box-shadow:var(--shadow-lg)}[data-theme=light] .context-menu-item{color:var(--zinc-400)}[data-theme=light] .context-menu-item:hover{background:var(--zinc-850);color:var(--zinc-300)}[data-theme=light] .context-menu-item.danger{color:var(--color-error)}[data-theme=light] .context-menu-item.danger:hover{background:var(--red-950)}[data-theme=light] .flash-notice,[data-theme=light] .alert-success{background:var(--green-950);border:1px solid #86efac;color:var(--color-success)}[data-theme=light] .flash-alert,[data-theme=light] .alert-error{background:var(--red-950);border:1px solid #fca5a5;color:var(--color-error)}[data-theme=light] .flash-warning,[data-theme=light] .alert-warning{background:var(--amber-950);border:1px solid #fcd34d;color:var(--color-warning)}[data-theme=light] .flash-info,[data-theme=light] .alert-info{background:#e0f2fe;border:1px solid #7dd3fc;color:#0369a1}[data-theme=light] .danger-zone-inline{background:rgba(220,38,38,.08);border-color:rgba(220,38,38,.25);border-left-color:var(--color-red)}[data-theme=light] .danger-zone-inline__text{color:var(--color-error)}[data-theme=light] .danger-zone-inline__detail{color:var(--zinc-500)}[data-theme=light] .tag,[data-theme=light] .badge{background:var(--zinc-850);color:var(--zinc-400);border:none}[data-theme=light] .tag-secondary,[data-theme=light] .badge-secondary{background:var(--zinc-850);color:var(--zinc-400)}[data-theme=light] .tag-primary,[data-theme=light] .badge-primary{background:var(--color-minor-alpha);color:var(--color-minor-dark);border-color:var(--color-minor)}[data-theme=light] .tag-success,[data-theme=light] .badge-success{background:var(--green-950);color:var(--color-success);border-color:#86efac}[data-theme=light] .tag-warning,[data-theme=light] .badge-warning{background:var(--amber-950);color:var(--color-warning);border-color:#fcd34d}[data-theme=light] .tag-danger,[data-theme=light] .badge-danger{background:var(--red-950);color:var(--color-error);border-color:#fca5a5}[data-theme=light] .badge-trajet{background:rgba(59,130,246,.1);color:#2563eb}[data-theme=light] .badge-transport{background:rgba(139,92,246,.1);color:#7c3aed}[data-theme=light] .badge-panier{background:rgba(34,197,94,.1);color:#16a34a}[data-theme=light] .show-details-section{border-bottom-color:var(--zinc-800)}[data-theme=light] .show-details-label{color:var(--zinc-600);font-weight:400}[data-theme=light] .show-details-value{color:var(--zinc-200)}[data-theme=light] .show-details-section h3{color:var(--zinc-600)}[data-theme=light] .geocode-status.geocode-ok{color:var(--color-success)}[data-theme=light] [data-tooltip]::after,[data-theme=light] .tooltip{background:var(--zinc-200);color:var(--zinc-950);box-shadow:var(--shadow-md)}[data-theme=light] .progress{background:var(--zinc-800)}[data-theme=light] .progress-bar{background:var(--color-minor)}[data-theme=light] .progress-bar-success{background:var(--color-lime)}[data-theme=light] .progress-bar-danger{background:var(--color-red)}[data-theme=light] .avatar{background:var(--zinc-800);color:var(--zinc-400);border:2px solid var(--zinc-750)}[data-theme=light] .avatar-group .avatar{border-color:var(--zinc-950)}[data-theme=light] .empty-state{color:var(--zinc-500)}[data-theme=light] .empty-state .empty-state-icon{color:var(--zinc-600)}[data-theme=light] .empty-state .empty-state-title{color:var(--zinc-400)}[data-theme=light] *{scrollbar-color:var(--zinc-700) var(--zinc-850)}[data-theme=light] ::-webkit-scrollbar{width:8px;height:8px}[data-theme=light] ::-webkit-scrollbar-track{background:var(--zinc-850);border-radius:4px}[data-theme=light] ::-webkit-scrollbar-thumb{background:var(--zinc-700);border-radius:4px}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:var(--zinc-600)}[data-theme=light] ::-webkit-scrollbar-corner{background:var(--zinc-850)}[data-theme=light] *:focus-visible{outline:none;box-shadow:0 0 0 2px var(--zinc-950),0 0 0 4px var(--color-minor)}[data-theme=light] input:focus-visible,[data-theme=light] select:focus-visible,[data-theme=light] textarea:focus-visible{box-shadow:var(--shadow-glow)}[data-theme=light] ::selection{background:rgba(201,182,22,.25);color:var(--zinc-200)}.theme-toggle{position:relative;display:inline-flex;align-items:center;cursor:pointer}.theme-toggle input{opacity:0;width:0;height:0;position:absolute}.theme-toggle__track{position:relative;display:flex;align-items:center;width:52px;height:26px;background:#3f3f46;border-radius:26px;padding:0 4px;transition:background-color .2s ease}.theme-toggle__track:hover{background:#52525b}.theme-toggle__thumb{position:absolute;left:3px;width:20px;height:20px;background:#22c55e;border-radius:50%;transition:transform .25s cubic-bezier(0.4, 0, 0.2, 1);box-shadow:0 1px 3px rgba(0,0,0,.3);z-index:2}.theme-toggle__icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;z-index:1;transition:color .2s ease,opacity .2s ease}.theme-toggle__icon--sun{color:#71717a;opacity:.5}.theme-toggle__icon--moon{margin-left:auto;color:#22c55e;opacity:1}.theme-toggle input:checked+.theme-toggle__track{background:#22c55e}.theme-toggle input:checked+.theme-toggle__track:hover{background:#16a34a}.theme-toggle input:checked+.theme-toggle__track .theme-toggle__thumb{transform:translateX(26px);background:#fff;box-shadow:0 2px 6px rgba(45,42,37,.3)}.theme-toggle input:checked+.theme-toggle__track .theme-toggle__icon--sun{color:#fafafa;opacity:1}.theme-toggle input:checked+.theme-toggle__track .theme-toggle__icon--moon{color:#52525b;opacity:.5}[data-theme=light] .calendar-legend{background:var(--zinc-950);border:1px solid var(--zinc-750)}[data-theme=light] .calendar-legend-item{color:var(--zinc-400)}[data-theme=light] .weather-indicator{background:var(--zinc-850);border:1px solid var(--zinc-750);color:var(--zinc-400)}[data-theme=light] .weather-indicator--bad{background:var(--red-950);border-color:#fca5a5;color:var(--color-error)}[data-theme=light] .weather-indicator--warning{background:rgba(34,197,94,.15);border-color:var(--color-minor);color:var(--color-minor)}[data-theme=light] .pagination .page-link{background:var(--zinc-950);border-color:var(--zinc-750);color:var(--zinc-400)}[data-theme=light] .pagination .page-link:hover{background:var(--zinc-850);color:var(--zinc-300)}[data-theme=light] .pagination .page-link.active{background:var(--color-minor);border-color:var(--color-minor);color:#1a1815}[data-theme=light] .pagination .page-item.disabled .page-link{background:var(--zinc-850);color:var(--zinc-600)}[data-theme=light] .panel{background:var(--zinc-950);border:1px solid var(--zinc-750);box-shadow:var(--shadow)}[data-theme=light] .panel-header{background:var(--zinc-900);border-bottom-color:var(--zinc-800);color:var(--zinc-300)}[data-theme=light] .panel-body{color:var(--zinc-400)}[data-theme=light] .panel-footer{background:rgba(0,0,0,0);border-top-color:var(--zinc-800)}[data-theme=light] .notification{background:var(--zinc-950);border:1px solid var(--zinc-750);box-shadow:var(--shadow-lg);color:var(--zinc-400)}[data-theme=light] .notification-title{color:var(--zinc-300)}[data-theme=light] .notification-close{color:var(--zinc-500)}[data-theme=light] .notification-close:hover{color:var(--zinc-300)}[data-theme=light] .confirm-dialog{background:var(--zinc-950);border:1px solid var(--zinc-750);box-shadow:var(--shadow-xl)}[data-theme=light] .confirm-dialog-title{color:var(--zinc-200)}[data-theme=light] .confirm-dialog-message{color:var(--zinc-400)}[data-theme=light] .color-picker{background:var(--zinc-950);border:1px solid var(--zinc-750);box-shadow:var(--shadow-lg)}[data-theme=light] .color-picker-swatch{border:2px solid var(--zinc-750)}[data-theme=light] .color-picker-swatch:hover{border-color:var(--zinc-600)}[data-theme=light] .color-picker-swatch.selected{border-color:var(--color-minor);box-shadow:0 0 0 2px var(--color-minor-alpha)}[data-theme=light] a{color:var(--zinc-400)}[data-theme=light] a:hover{color:var(--zinc-200)}[data-theme=light] a.link-primary{color:var(--color-minor-dark)}[data-theme=light] a.link-primary:hover{color:var(--color-minor)}[data-theme=light] .gc-section-toggle{background:var(--color-minor);color:#fff}[data-theme=light] .gc-section-toggle:hover{background:var(--color-minor-dark)}[data-theme=light] .gc-header__count{color:var(--zinc-900);background:var(--zinc-700)}[data-theme=light] .gc-header__progress{background:var(--color-minor-alpha);height:6px}[data-theme=light] .gc-header__progress-fill{background:var(--color-minor)}[data-theme=light] .todo-card{background:var(--zinc-900);border:1px solid var(--zinc-800)}[data-theme=light] .todo-card:hover{border-color:var(--column-color, var(--zinc-600));background:var(--zinc-900)}[data-theme=light] .todo-card__board{background:var(--zinc-800)}[data-theme=light] .todo-card__badge--urgent,[data-theme=light] .todo-card__badge--late-warning{background:rgba(180,130,0,.15);color:#92600a}[data-theme=light] .todo-card__badge--urgent::before,[data-theme=light] .todo-card__badge--late-warning::before{background:#b48200}[data-theme=light] .todo-card__badge--late-danger{background:rgba(194,80,10,.15);color:#9a3c0a}[data-theme=light] .todo-card__badge--late-danger::before{background:#c2500a}[data-theme=light] .todo-col__body{background:#f2f2f2;border:.5px solid var(--zinc-800)}[data-theme=light] .todo-col__collapse-btn{color:var(--zinc-600)}[data-theme=light] .checkbox-tag{background:rgba(0,0,0,0);border:1.5px solid var(--zinc-750)}[data-theme=light] .todo-side-panel .select{background-color:rgba(0,0,0,0)}[data-theme=light] .accordion-section__next{font-weight:700}[data-theme=light] .accordion-section__next svg{stroke-width:3}[data-theme=light] .show-panel__header-bar{border-bottom-color:var(--zinc-800)}[data-theme=light] .show-panel__grid{background:var(--zinc-800)}[data-theme=light] .show-panel__cell{background:var(--zinc-950)}[data-theme=light] .show-panel__cell:hover{background:var(--zinc-900)}[data-theme=light] .show-panel__progress-bar{background:var(--zinc-800)}[data-theme=light] .show-panel__description-block{background:var(--zinc-900);border-color:var(--zinc-800)}[data-theme=light] .show-panel__section-counter{background:var(--zinc-900)}[data-theme=light] .show-panel__checklist-item:not(:last-child)::after{background:var(--zinc-800)}[data-theme=light] .show-panel__checklist-check{border-color:var(--zinc-700)}[data-theme=light] .show-panel__avatar-img,[data-theme=light] .show-panel__avatar-circle{border-color:var(--zinc-950)}[data-theme=light] .show-panel__late-badge{background:rgba(220,38,38,.1);color:var(--color-error, #991b1b)}[data-theme=light] .show-panel__prio-dot--low{background:#4ade80}[data-theme=light] .show-panel__prio-dot--medium{background:#f59e0b}[data-theme=light] .show-panel__prio-dot--high{background:#ef4444}[data-theme=light] .show-panel__tag--category{background:var(--color-minor-subtle, rgba(34, 197, 94, 0.08));color:var(--color-minor-dark, #16a34a)}[data-theme=light] .show-panel__tag--project{background:rgba(59,130,246,.08);color:#2563eb}*,*::before,*::after{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.5;color:var(--zinc-100);background:var(--zinc-900);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:rgba(0,0,0,0)}::-webkit-scrollbar-thumb{background:var(--zinc-500);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--zinc-400)}*{scrollbar-width:thin;scrollbar-color:var(--zinc-500) rgba(0,0,0,0)}a{color:var(--zinc-700);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{margin:0 0 var(--spacing-4);font-weight:600;line-height:1.25;color:var(--zinc-100);letter-spacing:-0.01em}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}p{margin:0 0 var(--spacing-4)}code{font-family:"SF Mono",Monaco,"Cascadia Code",monospace;font-size:var(--font-size-sm);background:var(--zinc-700);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm)}code.code-sm{font-size:var(--font-size-xs);padding:.125rem .375rem}.text-muted{color:var(--zinc-400)}.hidden{display:none !important}.app-body{overflow:hidden}.app-layout{display:flex;flex-direction:row;height:100vh;overflow:hidden}.app-header{display:flex;align-items:center;min-height:56px;background:var(--zinc-800);border-bottom:1px solid var(--zinc-600);flex-shrink:0;z-index:100;gap:8px}.app-header-nav{display:flex;align-items:flex-end;align-self:stretch;justify-content:flex-start;gap:4px;padding-top:8px;flex:1}.app-header-actions{display:flex;align-items:center;gap:8px;padding:0 16px;margin-left:auto;align-self:center}.app-header-actions .btn-primary{background:var(--color-minor-strong);border:1px solid var(--color-minor-strong);color:#fff}.app-header-actions .btn-primary:hover{background:var(--color-minor-strong-hover);border-color:var(--color-minor-strong-hover)}.app-header-actions .btn-secondary{background:var(--zinc-700);border:1px solid var(--zinc-500);color:var(--zinc-200)}.app-header-actions .btn-secondary:hover{background:var(--zinc-600);border-color:var(--zinc-400)}.app-header-search-separator{width:1px;height:20px;background:var(--zinc-700);align-self:center;margin:0 8px;flex-shrink:0}.app-header-search{position:relative;display:flex;align-items:center;align-self:center;flex-shrink:0}.app-header-search .search-icon{position:absolute;left:10px;color:var(--zinc-400);pointer-events:none;width:16px;height:16px}.app-header-search__input{width:180px;padding:6px 12px 6px 32px;background:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0);border-radius:var(--radius);font-family:var(--font-family);font-size:13px;color:var(--zinc-300);transition:all var(--transition-fast)}.app-header-search__input::placeholder{color:var(--zinc-500)}.app-header-search__input:hover{background:var(--zinc-800)}.app-header-search__input:focus{outline:none;border-color:var(--zinc-600);background:var(--zinc-800);color:var(--zinc-100)}.search-input-header{width:180px;padding:6px 12px 6px 32px;background:var(--zinc-700);border:1px solid var(--zinc-600);border-radius:var(--radius);font-family:var(--font-family);font-size:13px;color:var(--zinc-100);transition:all var(--transition-fast)}.search-input-header::placeholder{color:var(--zinc-400)}.search-input-header:focus{outline:none;border-color:var(--zinc-500);background:var(--zinc-600)}.search-icon{position:absolute;left:10px;color:var(--zinc-400);pointer-events:none;width:16px;height:16px}.app-header-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:rgba(0,0,0,0);border:none;border-radius:var(--radius);font-size:13px;font-weight:500;color:var(--zinc-400);cursor:pointer;transition:all var(--transition-fast)}.app-header-btn:hover{background:var(--zinc-700);color:var(--zinc-100)}.app-header-btn svg{flex-shrink:0;width:16px;height:16px}.app-header-clock{display:flex;align-items:baseline;padding:4px 12px;gap:2px}.app-header-clock__time{font-family:"DSEG7-Classic",monospace;font-size:16px;font-weight:normal;color:var(--zinc-300);letter-spacing:.02em}.app-header-clock__seconds{font-family:"DSEG7-Classic",monospace;font-size:12px;font-weight:normal;color:var(--color-minor);letter-spacing:.02em}.app-launcher{position:relative;display:flex;align-items:center;flex-shrink:0}.app-launcher__trigger{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:rgba(0,0,0,0);border:none;border-radius:var(--radius-sm, 6px);color:var(--zinc-400);cursor:pointer;transition:all .15s ease}.app-launcher__trigger:hover{background:var(--zinc-800);color:var(--zinc-200)}.app-launcher__trigger svg{width:16px;height:16px}.app-launcher__dropdown{position:absolute;top:calc(100% + 8px);left:0;width:260px;background:#fff;border-radius:14px;box-shadow:0 8px 30px rgba(0,0,0,.18),0 2px 8px rgba(0,0,0,.08);z-index:300;padding:14px;animation:app-launcher-fade .18s cubic-bezier(0.4, 0, 0.2, 1)}@keyframes app-launcher-fade{from{opacity:0;transform:translateY(-6px) scale(0.97)}to{opacity:1;transform:translateY(0) scale(1)}}.app-launcher__header{font-size:11px;font-weight:650;color:#a1a19d;text-transform:uppercase;letter-spacing:.04em;padding:2px 4px 10px}.app-launcher__divider{height:1px;background:#e8e8e6;margin:10px -2px}.app-launcher__grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:2px}.app-launcher__item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 6px;border-radius:10px;text-decoration:none;transition:background .15s ease;cursor:pointer}.app-launcher__item:hover{background:#f5f5f4;text-decoration:none}.app-launcher__item span{font-size:11px;font-weight:550;color:#52524e;text-align:center;line-height:1.2;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-launcher__item--active span{color:#1a1a1a;font-weight:650}.app-launcher__item--active .app-launcher__icon{box-shadow:0 0 0 2.5px rgba(34,197,94,.2)}.app-launcher__icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.app-launcher__icon svg{width:22px;height:22px}.app-header-notifications{position:relative;display:flex;align-items:center}.app-header-btn--notifications{position:relative;padding:6px 10px}.app-header-btn--notifications svg{position:relative}.app-header-btn--notifications .notifications-badge{position:absolute;top:-2px;right:0;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;margin-left:0;background:var(--zinc-500);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px rgba(0,0,0,.3)}.app-header-btn--notifications .notifications-badge-hidden{display:none}.app-header-tab{position:relative;display:flex;align-items:center;gap:8px;padding:0 16px 20px;margin-bottom:-1px;font-family:var(--font-family-heading);font-size:14px;font-weight:500;color:var(--zinc-300);text-decoration:none;user-select:none;-webkit-user-select:none;border-radius:var(--radius-md) var(--radius-md) 0 0;border-bottom:1px solid rgba(0,0,0,0);transition:all .2s ease;cursor:pointer}.app-header-tab svg{flex-shrink:0}.app-header-tab:hover{color:var(--zinc-500);text-decoration:none}.app-header-tab.app-header-tab--active{color:#fff;border-bottom:2px solid var(--color-minor)}.app-header-tab.app-header-tab--active .app-header-tab__number{background:var(--color-minor);color:var(--zinc-900)}.app-header-tab__number{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-right:6px;font-size:11px;font-weight:600;background:var(--zinc-500);color:var(--zinc-200);border-radius:50%;transition:all .2s ease}.app-header-tab--closable{display:flex;align-items:center;gap:8px;padding-right:12px}.app-header-tab--closable .app-header-tab__link{color:inherit;text-decoration:none;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-header-tab--closable .app-header-tab__link:hover{text-decoration:none}.app-header-tab--closable .app-header-tab__close{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:var(--radius-sm);color:var(--zinc-400);transition:all .15s ease}.app-header-tab--closable .app-header-tab__close:hover{background:var(--zinc-600);color:var(--zinc-50)}.app-topbar-right{display:flex;align-items:center;gap:16px}.search-input{width:240px;padding:8px 16px;background:var(--zinc-600);border:1px solid var(--zinc-500);border-radius:var(--radius-md);font-family:var(--font-family);font-size:14px;color:var(--zinc-50);transition:all var(--transition-fast)}.search-input::placeholder{color:var(--zinc-300)}.search-input:focus{outline:none;border-color:var(--zinc-600);box-shadow:0 0 0 3px rgba(82,82,91,.15)}.app-content{display:flex;flex-direction:column;flex:1;height:100%;min-height:0;overflow:hidden}.sidebar{width:var(--sidebar-width);background:var(--zinc-900);display:flex;flex-direction:column;flex-shrink:0;border-right:1px solid var(--zinc-800);transition:width .2s ease}.sidebar-header{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-4) var(--spacing-3)}.sidebar-title{font-family:var(--font-family-heading);font-size:24px;font-weight:900;color:var(--zinc-100);letter-spacing:-0.04em;white-space:nowrap}.sidebar-title-accent{color:var(--color-minor)}.sidebar-title .sidebar-logo-acb{color:var(--color-minor)}.sidebar-title .sidebar-logo-app{color:var(--zinc-50)}.sidebar-title em{font-style:normal;font-weight:900;color:var(--color-minor)}.sidebar-title small{font-weight:400;font-size:.75em;opacity:.6}.sidebar-toggle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin-left:auto;background:rgba(0,0,0,0);border:none;border-radius:var(--radius-sm);color:var(--zinc-500);cursor:pointer;transition:all var(--transition-fast)}.sidebar-toggle:hover{background:var(--zinc-800);color:var(--zinc-300)}.sidebar-close-mobile{display:none}.sidebar-nav{flex:1;padding:0 var(--spacing-3);overflow:hidden;display:flex;flex-direction:column}.sidebar-section-bottom{padding:var(--spacing-3)}.nav-section{display:flex;flex-direction:column;gap:2px;margin-bottom:var(--spacing-4);padding-bottom:var(--spacing-4);border-bottom:1px solid var(--zinc-800)}.nav-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}#site-shortcuts{flex:1;overflow-y:auto;min-height:0}.nav-section-title{font-family:var(--font-family);font-size:10px;font-weight:650;color:var(--zinc-500);text-transform:uppercase;letter-spacing:.1em;padding:0 14px;margin-bottom:6px;margin-top:4px}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 14px;margin-bottom:2px;border-radius:8px;color:var(--zinc-400);text-decoration:none;font-family:var(--font-family);font-size:13.5px;font-weight:450;transition:all .2s cubic-bezier(0.4, 0, 0.2, 1)}.nav-item:hover{background:var(--zinc-800);color:var(--zinc-200);text-decoration:none}.nav-item:hover .nav-icon{color:var(--zinc-300)}.nav-item-active{background:var(--zinc-800);color:var(--color-minor);font-weight:600;position:relative}.nav-item-active::before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:3px;background:var(--color-minor);border-radius:0 3px 3px 0}.nav-item-active:hover{background:var(--zinc-750);color:var(--zinc-50)}.nav-item-active .nav-icon{color:var(--color-minor)}.nav-item-active .nav-label{color:var(--color-minor)}.nav-item-active:hover .nav-icon{color:var(--color-minor-light)}.nav-icon{width:18px;height:18px;flex-shrink:0;color:var(--zinc-500);transition:color var(--transition-fast)}.nav-item-small{padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs);color:var(--zinc-500);font-weight:400}.nav-item-small:hover{color:var(--zinc-300)}.nav-item-small.nav-item-active{color:var(--zinc-100);font-weight:500;background:var(--zinc-800)}.nav-item-small.nav-item-active::before{height:12px}.nav-item-small.nav-item-active:hover{background:var(--zinc-750)}.nav-item-small .nav-icon{width:14px;height:14px}.nav-section-header{display:flex;align-items:center;justify-content:space-between;padding-right:var(--spacing-2)}.nav-section-header .nav-section-title{flex:1;margin-bottom:0}.nav-section-add{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:rgba(0,0,0,0);color:var(--zinc-500);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.nav-section-add:hover{background:var(--zinc-800);color:var(--zinc-300)}.nav-item-wrapper{position:relative;display:flex;align-items:center}.nav-item-wrapper .nav-item{flex:1}.nav-item-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border:none;background:rgba(0,0,0,0);color:var(--zinc-600);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0;margin-left:var(--spacing-1);opacity:0}.nav-item-wrapper:hover .nav-item-remove{opacity:1}.nav-item-remove:hover{background:var(--zinc-700);color:var(--zinc-300)}.nav-empty-state{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-xs);color:var(--zinc-600);font-style:italic}.sidebar-footer{padding:var(--spacing-3);background:var(--zinc-900);position:relative}.sidebar-footer-text{display:block;font-size:10px;color:var(--zinc-600);text-align:center;padding:var(--spacing-3) var(--spacing-2) 0;margin-top:var(--spacing-3);border-top:1px solid var(--zinc-800);line-height:1.4}.sidebar-footer-text .text-orange{color:var(--color-minor)}.sidebar-licence-link{display:block;width:100%;padding:var(--spacing-2) var(--spacing-2) 0;background:none;border:none;cursor:pointer;font-size:10px;line-height:1.4;color:var(--zinc-600);text-align:center;transition:color .15s ease}.sidebar-licence-link span{text-decoration:none}.sidebar-licence-link:hover span{text-decoration:underline;text-underline-offset:2px}.sidebar-collapsed .sidebar-licence{display:none}.sidebar-user{width:100%;display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-2) var(--spacing-3);background:none;border:none;border-top:1px solid var(--zinc-800);cursor:pointer;text-align:left}.user-avatar{width:32px;height:32px;border-radius:50%;background:var(--zinc-700);color:var(--zinc-200);display:flex;align-items:center;justify-content:center;font-family:var(--font-family);font-weight:500;font-size:var(--font-size-xs);flex-shrink:0;transition:all var(--transition-fast);position:relative}.user-avatar::after{content:"";position:absolute;bottom:0;right:0;width:8px;height:8px;background:#22c55e;border:2px solid var(--zinc-900);border-radius:50%}.user-info{flex:1;display:flex;flex-direction:column;min-width:0}.user-name{font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-200);transition:color var(--transition-fast)}.user-role{font-size:11px;color:var(--zinc-500)}.user-chevron{width:16px;height:16px;color:var(--zinc-600);flex-shrink:0;transition:color var(--transition-fast)}.sidebar-user:hover .user-chevron{color:var(--zinc-400)}.user-dropdown{position:absolute;bottom:100%;left:var(--spacing-3);right:var(--spacing-3);margin-bottom:var(--spacing-2);background:#fff;border:1px solid #e4e4e7;border-radius:14px;box-shadow:0 12px 32px rgba(0,0,0,.18);overflow:hidden;z-index:100}.user-dropdown .dropdown-item{color:#3f3f46;border-left-color:rgba(0,0,0,0);border-radius:8px;padding:8px 10px;font-size:13px}.user-dropdown .dropdown-item:hover{background:#f4f4f5;border-left-color:rgba(0,0,0,0);color:#18181b}.user-dropdown .dropdown-icon{color:#71717a;width:17px;height:17px}.user-dropdown .dropdown-item-logout{color:#dc2626}.user-dropdown .dropdown-item-logout .dropdown-icon{color:#dc2626}.user-dropdown .dropdown-item-logout:hover{background:#fef2f2;color:#b91c1c}.user-dropdown.hidden{display:none}.dropdown-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-2);padding:12px 12px 10px;border-bottom:1px solid #f1f1f3}.dropdown-header-text{display:flex;flex-direction:column;gap:2px;min-width:0}.dropdown-close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:rgba(0,0,0,0);border-radius:7px;color:#a1a1aa;cursor:pointer;transition:background .12s,color .12s}.dropdown-close:hover{background:#f4f4f5;color:#18181b}.dropdown-close svg{width:14px;height:14px}.dropdown-section{padding:var(--spacing-2)}.dropdown-section+.dropdown-section{border-top:1px solid #f1f1f3}.dropdown-email{display:block;font-size:13px;font-weight:600;color:#18181b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-role{display:block;font-size:11px;color:#71717a}.sidebar-collapsed{width:64px}.sidebar-collapsed .sidebar-header{justify-content:center;padding:var(--spacing-5) var(--spacing-2)}.sidebar-collapsed .sidebar-title,.sidebar-collapsed .sidebar-toggle{display:none}.sidebar-collapsed .sidebar-nav{padding:0 var(--spacing-2)}.sidebar-collapsed .nav-section-title{display:none}.sidebar-collapsed .nav-section{padding-bottom:var(--spacing-2);margin-bottom:var(--spacing-2)}.sidebar-collapsed .nav-item{justify-content:center;padding:var(--spacing-2)}.sidebar-collapsed .nav-item::before{display:none}.sidebar-collapsed .nav-label{display:none}.sidebar-collapsed .nav-icon{margin:0}.sidebar-collapsed .nav-item{position:relative}.sidebar-collapsed .nav-item::after{content:attr(title);position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);background:var(--zinc-800);color:var(--zinc-100);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-fast);z-index:1000;border:1px solid var(--zinc-700)}.sidebar-collapsed .nav-item:hover::after{opacity:1}.sidebar-collapsed .sidebar-footer{padding:var(--spacing-2)}.sidebar-collapsed .sidebar-user{justify-content:center;padding:var(--spacing-2)}.sidebar-collapsed .user-info,.sidebar-collapsed .user-chevron,.sidebar-collapsed .sidebar-footer-text{display:none}.sidebar-collapsed .user-dropdown{left:64px;right:auto;bottom:var(--spacing-2);min-width:200px}.sidebar-collapsed .nav-section-header form{display:none}.sidebar-collapsed .nav-section-header{justify-content:center}.sidebar-collapsed .nav-empty-state{display:none}.nav-ref{display:none}.sidebar-collapsed .nav-ref{display:block;font-size:9px;font-weight:600;color:var(--zinc-400);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.sidebar-collapsed .nav-item-small{padding:var(--spacing-1);justify-content:center}.sidebar-collapsed .nav-item-wrapper{margin-bottom:2px}.sidebar-collapsed .nav-item-wrapper .nav-item{padding:var(--spacing-1)}.sidebar-collapsed .nav-item-remove{display:none}.sidebar-collapsed #site-shortcuts{padding-bottom:var(--spacing-1);margin-bottom:var(--spacing-1)}.sidebar-admin{background:var(--zinc-950);border-right-color:var(--zinc-800)}.sidebar-admin .sidebar-toggle{color:var(--zinc-600)}.sidebar-admin .sidebar-toggle:hover{background:var(--zinc-800);color:var(--zinc-300)}.sidebar-admin .nav-section-title{color:var(--zinc-600)}.sidebar-admin .nav-item{color:var(--zinc-500)}.sidebar-admin .nav-item:hover{background:var(--zinc-800);color:var(--zinc-200)}.sidebar-admin .nav-item:hover .nav-icon{color:var(--zinc-300)}.sidebar-admin .nav-item-active{background:var(--zinc-800);color:var(--zinc-100)}.sidebar-admin .nav-item-active::before{background:#fbbf24}.sidebar-admin .nav-item-active:hover{background:var(--zinc-750)}.sidebar-admin .nav-item-active .nav-icon{color:#fbbf24}.sidebar-admin .nav-icon{color:var(--zinc-600)}.sidebar-admin .sidebar-footer{background:var(--zinc-950);border-top-color:var(--zinc-800)}.sidebar-admin .sidebar-user:hover{background:var(--zinc-800)}.sidebar-admin .user-avatar-admin{background:#fbbf24;color:var(--zinc-950);font-weight:600}.sidebar-admin .user-avatar-admin::after{background:#22c55e;border-color:var(--zinc-950)}.sidebar-admin .user-name{color:var(--zinc-200)}.sidebar-admin .user-role{color:var(--zinc-500)}.sidebar-admin .user-chevron{color:var(--zinc-600)}.sidebar-admin .user-dropdown{background:var(--zinc-850);border-color:var(--zinc-700)}.sidebar-admin .dropdown-email{color:var(--zinc-100)}.sidebar-admin .dropdown-role{color:var(--zinc-500)}.sidebar-admin .dropdown-section+.dropdown-section{border-top-color:var(--zinc-700)}.main-content{position:relative;flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.main-header{flex-shrink:0}.main-body{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow-y:auto;background:var(--zinc-900);background-image:linear-gradient(to bottom, rgba(77, 77, 77, 0.3098039216) 1px, transparent 1px),linear-gradient(to right, rgba(58, 58, 58, 0.6) 1px, transparent 1px);border:none}.main-body--fixed{flex:1 1 0;min-height:0;display:flex;flex-direction:column;padding:var(--spacing-6);background:var(--zinc-900);overflow-y:auto;gap:var(--spacing-4)}.main-body-footer{flex-shrink:0;margin-top:auto;padding:var(--spacing-3) 0;padding-bottom:calc(var(--spacing-3) + 10px)}.main-footer{flex-shrink:0;border-top:1px solid var(--zinc-700);background:var(--zinc-800)}.page-content{flex:1 1 0;min-height:0;display:flex;flex-direction:column;background:var(--zinc-900);gap:var(--spacing-4);overflow-y:auto}.page-content .planning-controls{padding-left:0;padding-right:0}.impersonation-banner{flex-shrink:0;background:rgba(82,82,91,.15);border-bottom:1px solid var(--zinc-700);color:var(--zinc-600);padding:var(--spacing-3) var(--spacing-6)}.flash{flex-shrink:0;padding:var(--spacing-3) var(--spacing-6);border-bottom:1px solid var(--zinc-700)}.flash-notice{background:rgba(113,113,122,.15);color:var(--zinc-500)}.flash-alert{background:rgba(39,39,42,.25);color:var(--zinc-800)}c .page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-6);flex-wrap:wrap;gap:var(--spacing-4)}.page-header h1{margin:0;font-weight:600}.page-actions{display:flex;gap:var(--spacing-2)}.page-tabs{display:flex;gap:var(--spacing-1);background:var(--zinc-700);padding:4px;border-radius:var(--radius)}.page-tab{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-400);text-decoration:none;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.page-tab:hover{color:var(--zinc-100)}.page-tab.active{background:var(--zinc-800);color:var(--zinc-100);box-shadow:0 1px 2px rgba(0,0,0,.05)}.section-header{margin-bottom:var(--spacing-6)}.section-header-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-4)}.section-title{font-size:1.75rem;font-weight:600;margin:0;color:var(--zinc-100)}.section-header-actions{display:flex;align-items:center;gap:var(--spacing-3)}.section-header-actions>.btn{height:36px;padding:0 var(--spacing-4);font-size:var(--font-size-sm)}.section-tabs{display:flex;gap:var(--spacing-1);border-bottom:1px solid var(--zinc-700);margin-bottom:var(--spacing-6)}.section-tab{position:relative;display:inline-flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-400);text-decoration:none;transition:all var(--transition-fast);background:var(--zinc-700);border:1px solid var(--zinc-600);border-bottom:1px solid var(--zinc-700);border-radius:var(--radius) var(--radius) 0 0;cursor:pointer;font-family:inherit;margin-bottom:-1px;user-select:none;-webkit-user-select:none}.section-tab:hover{color:var(--zinc-100);background:var(--zinc-600);text-decoration:none}.section-tab.active{color:var(--zinc-100);background:var(--zinc-800);border-color:var(--zinc-700);border-top:2px solid var(--zinc-600);border-bottom:1px solid var(--zinc-800)}.barre-action{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-4);padding:var(--spacing-3) var(--spacing-4)}.barre-action--right-only{justify-content:flex-end}.barre-action__left{display:flex;align-items:center;gap:var(--spacing-3)}.barre-action__actions{display:flex;align-items:center;gap:var(--spacing-3)}.tab-number{font-size:1.5em;line-height:1}.tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;font-size:var(--font-size-xs);font-weight:500;color:var(--zinc-400);background:var(--zinc-700);border-radius:10px}.section-tab.active .tab-count{background:var(--zinc-600);color:var(--zinc-100)}.section-tab__number{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:.75rem;font-weight:700;background:var(--zinc-500);color:var(--zinc-400);border-radius:50%;flex-shrink:0}.section-tab.active .section-tab__number{background:var(--zinc-600);color:var(--zinc-700)}.planning-stepper{display:flex;align-items:flex-start;justify-content:center;padding:var(--spacing-4) 0}.stepper-step{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-2);text-decoration:none;color:var(--zinc-400);transition:color .2s}.stepper-step:hover{color:var(--zinc-100);text-decoration:none}.stepper-step.active .stepper-circle{background:var(--zinc-600);color:#fff;border-color:var(--zinc-600)}.stepper-step.active .stepper-label{color:var(--zinc-100);font-weight:600}.stepper-circle{width:32px;height:32px;border-radius:50%;border:2px solid var(--zinc-500);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;background:var(--zinc-800);transition:all .2s}.stepper-label{font-size:13px;font-weight:500}.stepper-line{width:120px;height:2px;background:var(--zinc-500);margin:0 var(--spacing-4);margin-top:15px}.view-tabs{display:flex;gap:var(--spacing-2);margin-bottom:var(--spacing-4);padding:var(--spacing-1);background:var(--zinc-700);border-radius:var(--radius-lg);width:fit-content}.view-tab{display:inline-flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-400);background:rgba(0,0,0,0);border:none;border-radius:var(--radius);cursor:pointer;transition:all var(--transition-fast)}.view-tab:hover{color:var(--zinc-100)}.view-tab.active{background:var(--zinc-800);color:var(--zinc-100);box-shadow:0 1px 2px rgba(0,0,0,.05)}.view-tab-icon{width:16px;height:16px}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:var(--radius);background:var(--zinc-700);color:var(--zinc-400);border:none;cursor:pointer;transition:all var(--transition-fast)}.btn-icon:hover{background:var(--zinc-600);color:var(--zinc-100)}.date-nav{display:flex;align-items:center;gap:var(--spacing-2)}.date-label{font-weight:500;min-width:180px;text-align:center;font-size:var(--font-size-sm);color:var(--zinc-400)}.decompte-absence{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;background:var(--zinc-750);color:var(--zinc-300)}.legend-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;background:var(--zinc-750);color:var(--zinc-300)}.dynamic-color{background:var(--zinc-900);color:var(--dynamic-text, var(--zinc-100))}.avatar-initials.dynamic-color,.avatar-preview-initials.dynamic-color{background:var(--dynamic-bg);color:var(--dynamic-text)}.site-color-square.dynamic-color{background:var(--dynamic-bg)}.color-display.dynamic-color{background:var(--dynamic-bg)}.badge.dynamic-color{background:var(--dynamic-bg);color:var(--dynamic-text)}.progress-fill.dynamic-width{width:var(--dynamic-width, 0%)}.agenda-item-dot{background:var(--dynamic-bg, var(--zinc-600))}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);height:34px;padding:0 var(--spacing-3);font-size:var(--font-size-xs);font-weight:500;line-height:1;color:var(--zinc-50);background:rgba(0,0,0,0);border:1px solid var(--zinc-600);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);text-decoration:none}.btn:hover{background:var(--zinc-800);border-color:var(--zinc-500);text-decoration:none}.btn:active{background:var(--zinc-700)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn svg{flex-shrink:0}.btn-primary{color:#fff;background:var(--color-minor-strong);border:1px solid var(--color-minor-strong)}.btn-primary:hover{background:var(--color-minor-strong-hover);border-color:var(--color-minor-strong-hover)}.btn-primary:active{background:var(--color-minor-strong-hover)}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-secondary{color:var(--zinc-50);background:var(--zinc-700);border:1px solid var(--zinc-500)}.btn-secondary:hover{background:var(--zinc-600);border-color:var(--zinc-400)}.btn-secondary:active{background:var(--zinc-600)}.btn-ghost{color:var(--zinc-50);background:rgba(0,0,0,0);border:1px solid var(--zinc-600)}.btn-ghost:hover{background:var(--zinc-800);border-color:var(--zinc-500)}.btn-ghost:active{background:var(--zinc-700)}.btn-danger{color:#fff;background:var(--color-red);border:none}.btn-danger:hover{background:var(--color-red-light)}.btn-danger:active{background:var(--color-red-dark)}.btn-success{color:var(--zinc-900);background:var(--zinc-500);border:none}.btn-success:hover{background:var(--zinc-500);filter:brightness(1.1)}.btn-success:active{background:var(--zinc-500);filter:brightness(0.9)}.btn-link{background:rgba(0,0,0,0);border:none;color:var(--zinc-600);padding:0;text-decoration:underline}.btn-link:hover{color:var(--zinc-500);background:rgba(0,0,0,0);text-decoration:underline}.btn-link-danger{background:rgba(0,0,0,0);border:none;color:var(--zinc-800);padding:0;text-decoration:underline}.btn-link-danger:hover{color:var(--zinc-800);filter:brightness(1.2);background:rgba(0,0,0,0);text-decoration:underline}.btn-accent{color:var(--color-minor);background:rgba(0,0,0,0);border:1px solid var(--color-minor)}.btn-accent:hover{background:var(--color-minor-alpha);border-color:var(--color-minor-light)}.btn-accent:active{background:var(--color-minor-alpha);filter:brightness(0.95)}.btn-accent-solid{color:var(--zinc-900);background:var(--color-minor);border:none}.btn-accent-solid:hover{background:var(--color-minor-light)}.btn-accent-solid:active{background:var(--color-minor-dark)}.btn-lg{height:42px;padding:0 var(--spacing-4);font-size:var(--font-size-base)}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;padding:0;color:var(--zinc-300);background:rgba(0,0,0,0);border:none;border-radius:var(--radius);cursor:pointer;transition:all var(--transition-fast);text-decoration:none}.btn-icon:hover{background:var(--zinc-800);color:var(--zinc-50);text-decoration:none}.btn-icon:active{background:var(--zinc-700)}.btn-icon svg{width:16px;height:16px}.btn-icon-sm{width:24px;height:24px;min-width:24px}.btn-icon-sm svg{width:14px;height:14px}.btn-icon-lg{width:40px;height:40px;min-width:40px}.btn-icon-lg svg{width:20px;height:20px}.btn-icon-danger:hover{background:rgba(39,39,42,.25);color:var(--zinc-800)}.btn-icon-danger:active{background:rgba(39,39,42,.25);filter:brightness(0.9)}.btn-icon-primary{background:var(--zinc-500);color:var(--zinc-900)}.btn-icon-primary:hover{background:var(--zinc-400);filter:brightness(1.05)}.btn-icon-success{background:var(--zinc-500);color:var(--zinc-900)}.btn-icon-success:hover{background:var(--zinc-500);filter:brightness(1.1)}.btn-icon-accent{background:rgba(0,0,0,0);color:var(--color-minor);border:1px solid var(--color-minor)}.btn-icon-accent:hover{background:var(--color-minor-alpha);color:var(--color-minor-light);border-color:var(--color-minor-light)}.btn-icon-accent:active{background:var(--color-minor-alpha);filter:brightness(0.95)}.btn-icon-accent .validate-icon,.btn-icon-accent .validate-loader{display:flex;align-items:center;justify-content:center}.btn-icon-accent .validate-loader{display:none}.btn-icon-accent[disabled]{opacity:.7;cursor:wait;pointer-events:none}.btn-icon-accent[disabled] .validate-icon{display:none}.btn-icon-accent[disabled] .validate-loader{display:flex}.btn-icon-accent[disabled] .spinner{animation:btn-spin .8s linear infinite}.btn-icon-circle{border-radius:999px}.btn-dashed{border-style:dashed;border-color:var(--zinc-600)}.btn-dashed:hover{border-color:var(--zinc-600);color:var(--zinc-600);background:rgba(231,144,82,.05)}.btn-primary-outline{background:rgba(0,0,0,0);border:1px solid var(--zinc-600);color:var(--zinc-600)}.btn-primary-outline:hover{background:rgba(82,82,91,.15)}.btn-danger-outline{background:rgba(0,0,0,0);border:1px solid #ef4444;color:#ef4444}.btn-danger-outline:hover{background:rgba(239,68,68,.15);border-color:#dc2626;color:#dc2626}.btn-success-outline{background:rgba(0,0,0,0);border:1px solid var(--zinc-500);color:var(--zinc-500)}.btn-success-outline:hover{background:rgba(113,113,122,.15)}.btn-block{width:100%}.btn-group{display:inline-flex;gap:var(--spacing-1)}.btn-loading{position:relative;pointer-events:none;opacity:.6}.btn-loading::after{content:"";position:absolute;width:14px;height:14px;border:2px solid currentColor;border-right-color:rgba(0,0,0,0);border-radius:50%;animation:btn-spin .6s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}.btn-close{width:28px;height:28px;min-width:28px;padding:0;border:1px solid var(--zinc-500);border-radius:50%;font-size:var(--font-size-lg);color:#fff;background:rgba(0,0,0,0);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.btn-close:hover{color:var(--zinc-900);background:var(--zinc-200);border-color:var(--zinc-200)}.btn-close svg{width:12px;height:12px}.btn-toggle{padding:4px 12px;font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-400);background:rgba(0,0,0,0);border:none;cursor:pointer;transition:color var(--transition-fast)}.btn-toggle:hover{color:var(--zinc-50)}.btn-toggle.active{color:var(--color-minor);font-weight:600}.btn-toggle-group{display:inline-flex;align-items:center;gap:4px}.btn-dropdown{display:inline-flex;align-items:center;gap:var(--spacing-2)}.btn-dropdown .btn-dropdown-chevron{flex-shrink:0;color:var(--zinc-400);transition:transform var(--transition-fast);width:12px;height:12px}.btn-dropdown[aria-expanded=true] .btn-dropdown-chevron{transform:rotate(180deg)}.btn-icon-text{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-400);background:rgba(0,0,0,0);border:none;cursor:pointer;transition:color var(--transition-fast)}.btn-icon-text:hover{color:var(--zinc-50);background:rgba(0,0,0,0)}.btn-icon-text svg{flex-shrink:0}.btn-tab{height:34px;padding:0 var(--spacing-3);font-size:var(--font-size-xs);font-weight:500;line-height:1;color:var(--zinc-400);background:rgba(0,0,0,0);border:none;border-radius:var(--radius-sm)}.btn-tab:hover{color:var(--zinc-300);background:rgba(0,0,0,0)}.btn-tab.active{background:var(--zinc-700);color:var(--zinc-50)}.btn-add-discrete{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;min-width:20px;padding:0;color:#fff;background:var(--zinc-700);border:none;border-radius:999px;cursor:pointer;transition:all var(--transition-fast);font-size:14px;font-weight:400;line-height:1}.btn-add-discrete:hover{color:#fff;background:var(--zinc-600)}.btn-add-discrete:active{background:var(--color-minor)}.btn-add-discrete svg{width:12px;height:12px}.btn-badge{display:inline-flex;align-items:center;padding:2px var(--spacing-2);font-size:var(--font-size-xs);font-weight:500;border-radius:999px;background:var(--zinc-700);color:var(--zinc-300);border:none;cursor:pointer}.btn-badge:hover{background:var(--zinc-600);color:var(--zinc-50)}.btn-chip{display:inline-flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-2);font-size:var(--font-size-xs);font-weight:500;border-radius:999px;background:var(--zinc-700);color:var(--zinc-300);border:none}.btn-chip:hover{background:var(--zinc-600)}.btn-chip .btn-chip-delete{width:14px;height:14px;padding:0;border:none;background:rgba(0,0,0,0);color:var(--zinc-400)}.btn-chip .btn-chip-delete:hover{color:var(--zinc-800)}.input{width:100%;height:34px;padding:0 var(--spacing-3);font-size:var(--font-size-sm);font-family:inherit;font-weight:400;line-height:34px;color:var(--zinc-300);background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius-sm);transition:border-color .15s,background-color .15s,box-shadow .15s}.input::placeholder{color:var(--zinc-500)}.input:hover{border-color:var(--zinc-500)}.input:focus{outline:none;border-color:var(--zinc-500);background:var(--zinc-750);box-shadow:0 0 0 3px rgba(82,82,91,.15)}.input:disabled{opacity:.5;cursor:not-allowed;background:var(--zinc-850)}.input[type=date],.input[type=week],.input[type=datetime-local]{color-scheme:dark}.input[type=date]::-webkit-calendar-picker-indicator,.input[type=week]::-webkit-calendar-picker-indicator,.input[type=datetime-local]::-webkit-calendar-picker-indicator{opacity:.7;cursor:pointer}.input[type=date]::-webkit-calendar-picker-indicator:hover,.input[type=week]::-webkit-calendar-picker-indicator:hover,.input[type=datetime-local]::-webkit-calendar-picker-indicator:hover{opacity:1}.input-sm{height:32px;padding:0 var(--spacing-2);font-size:var(--font-size-sm);line-height:32px}.input-lg{height:44px;padding:0 var(--spacing-4);font-size:var(--font-size-base);line-height:44px}.input-error{border-color:#f87171 !important}.input-error:focus{border-color:#f87171 !important;box-shadow:0 0 0 3px rgba(248,113,113,.15)}.input-success{border-color:var(--zinc-500) !important}.input-success:focus{box-shadow:0 0 0 3px rgba(113,113,122,.15)}.select{width:100%;height:34px;padding:0 var(--spacing-3);font-size:var(--font-size-sm);font-family:inherit;font-weight:400;line-height:34px;color:var(--zinc-300);background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23ffffff' d='M3 4.5L6 7.5L9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-2) center;background-size:12px 12px;padding-right:var(--spacing-6)}.select:hover{border-color:var(--zinc-600)}.select:focus{outline:none;border-color:var(--zinc-600);background:var(--zinc-850);box-shadow:0 0 0 3px rgba(82,82,91,.15)}.select:disabled{background:var(--zinc-800);color:var(--zinc-500);cursor:not-allowed;border-color:var(--zinc-700);opacity:.6}.select option{background:var(--zinc-800);color:var(--zinc-50);padding:var(--spacing-2)}.select-value{display:block;text-align:left;color:var(--zinc-400);font-weight:400;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.select-value.has-value{color:var(--zinc-50)}.select-filter{padding:var(--spacing-1) var(--spacing-3);background:rgba(0,0,0,0);border:none;color:inherit;font-weight:inherit;cursor:pointer}.select-quick-add{background:var(--color-minor-alpha);border:1px dashed var(--color-minor-dark);color:var(--zinc-200);font-weight:500;padding:var(--spacing-1) var(--spacing-4) var(--spacing-1) var(--spacing-2)}.select-quick-add:hover{border-color:var(--color-minor);color:var(--zinc-50);background:var(--color-minor-alpha)}.select-quick-add:focus{border-color:var(--color-minor);background:var(--color-minor-alpha);color:var(--zinc-50);outline:none}.select-quick-add option{background:var(--zinc-800);color:var(--zinc-50);padding:var(--spacing-2)}.select-context{font-weight:500;border-color:var(--zinc-500);background:var(--zinc-850)}.select-context:hover{background:var(--zinc-800)}.select-mapping{padding:6px 32px 6px 12px;border-radius:999px;font-weight:500;background-color:var(--zinc-700)}.select-mapping:hover{background-color:var(--zinc-600);border-color:var(--zinc-500)}.select-mapping:focus{background-color:var(--zinc-600);border-color:var(--zinc-600);box-shadow:0 0 0 2px rgba(82,82,91,.15)}.select-compact{min-width:28px;height:28px;padding:0;text-align:center;text-align-last:center;border:1px dashed var(--zinc-600);background:rgba(0,0,0,0);color:var(--zinc-400)}.select-compact:hover{border-color:var(--zinc-500);color:var(--zinc-300);background:var(--zinc-800)}.btn-absence-trigger{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;background:rgba(0,0,0,0);cursor:pointer;transition:all var(--transition-fast)}.btn-absence-trigger svg{width:14px;height:14px;color:var(--zinc-300)}.btn-absence-trigger:hover svg{color:var(--zinc-100)}.btn-absence-trigger.active svg{color:var(--color-minor)}.select-full-width{width:100%}.select-uppercase{text-transform:uppercase}.select-uppercase option{text-transform:uppercase}.select-sidebar-add{appearance:none;background:var(--color-minor);border:none;border-radius:50%;color:var(--zinc-950);font-size:16px;font-weight:700;line-height:22px;cursor:pointer;width:22px;height:22px;padding:0;text-align:center;text-indent:0;transition:all var(--transition-fast);box-shadow:0 1px 2px rgba(0,0,0,.2)}.select-sidebar-add:hover{background:var(--color-minor-light);transform:scale(1.1);box-shadow:0 2px 4px rgba(0,0,0,.3)}.select-sidebar-add:focus{outline:none;box-shadow:0 0 0 3px var(--color-minor-alpha)}.select-sidebar-add:active{transform:scale(0.95)}.select-hidden{display:none}.select-wide{min-width:200px}.dropdown{position:absolute;z-index:100;min-width:140px;max-height:300px;margin-top:2px;padding:4px;background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);overflow-y:auto}.dropdown.hidden{display:none}.dropdown.dropdown--full{width:100%}.dropdown.dropdown--scrollable{max-height:200px;overflow-y:auto}.dropdown-item{display:flex;align-items:center;gap:var(--spacing-1);width:100%;padding:6px 8px;margin:0;border:none;border-left:2px solid rgba(0,0,0,0);border-radius:0;font-size:12px;font-family:inherit;text-align:left;cursor:pointer;background:rgba(0,0,0,0);color:var(--zinc-300);transition:all var(--transition-fast);white-space:nowrap}.dropdown-item:hover{background:var(--zinc-750);border-left-color:var(--color-minor);color:var(--zinc-50)}.dropdown-item:disabled{opacity:.5;cursor:not-allowed}.dropdown-danger{color:var(--color-red)}.dropdown-danger:hover{background:var(--color-red-alpha);border-left-color:var(--color-red);color:var(--color-red-light)}.dropdown-item-add{color:var(--zinc-400);font-weight:400}.dropdown-item-add:hover{background:var(--zinc-750);border-left-color:var(--color-minor);color:var(--zinc-50)}.dropdown-contextual{min-width:160px}.dropdown-contextual .dropdown-item{padding:var(--spacing-1) var(--spacing-2)}.dropdown-navigation{min-width:220px}.dropdown-navigation .dropdown-item{padding:var(--spacing-2) var(--spacing-3)}.dropdown-selector{min-width:240px;max-height:min(280px,40vh);overflow-y:auto}.dropdown-selector .dropdown-item{flex-direction:column;align-items:flex-start;padding:var(--spacing-2) var(--spacing-3);white-space:normal}.dropdown-selector .dropdown-item:hover{background:var(--zinc-750);border-left-color:var(--color-minor);color:var(--zinc-50)}.dropdown-selector .dropdown-item:has(.employee-checkbox){flex-direction:row;align-items:center;padding:4px 8px;gap:6px}.dropdown-selector .dropdown-item:has(.employee-checkbox) .dropdown-item-primary{font-size:11px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-selector::-webkit-scrollbar{width:8px}.dropdown-selector::-webkit-scrollbar-track{background:var(--zinc-800);border-radius:var(--radius-sm)}.dropdown-selector::-webkit-scrollbar-thumb{background:var(--zinc-600);border-radius:var(--radius-sm)}.dropdown-selector::-webkit-scrollbar-thumb:hover{background:var(--zinc-500)}.dropdown-multi .dropdown-item{padding-right:var(--spacing-5)}.dropdown-multi .dropdown-checkbox{width:16px;height:16px;margin-right:var(--spacing-2);cursor:pointer}.dropdown-item-primary{font-weight:500;color:var(--zinc-50);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-item-abbr{font-weight:600}.dropdown-item-secondary{font-size:8px;color:var(--color-minor);margin-top:2px;margin-left:0;font-weight:400;text-transform:uppercase;letter-spacing:.02em;display:block}.dropdown-divider{height:1px;margin:4px 0;background:var(--zinc-700)}.dropdown-header{padding:4px 8px;font-size:10px;font-weight:600;color:var(--zinc-500);text-transform:uppercase;letter-spacing:.05em}.dropdown-header--alert{color:#f59e0b;background:rgba(245,158,11,.1);border-radius:var(--radius-sm);padding:6px 8px;margin:2px 4px}.dropdown-section{padding:4px}.dropdown-form{margin:0;padding:0}.dropdown-form button[type=submit]{width:100%}.dropdown-empty{padding:var(--spacing-3);text-align:center;color:var(--zinc-500);font-style:italic;font-size:12px}.dropdown-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--spacing-1);border-radius:999px;background:var(--zinc-600);color:var(--zinc-900);font-size:var(--font-size-xs);font-weight:600}.dropdown-label{display:block;padding:var(--spacing-1) var(--spacing-2);font-size:var(--font-size-xs);font-weight:500;color:var(--zinc-500);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--zinc-700);margin-bottom:var(--spacing-1)}.dropdown-input{width:100%;padding:4px 8px;border:1px solid var(--zinc-600);border-radius:var(--radius-sm);font-size:12px;background:var(--zinc-850);color:var(--zinc-50);text-align:center}.dropdown-input:focus{outline:none;border-color:var(--zinc-600)}.dropdown-btn{display:block;width:100%;padding:6px 8px;border:none;background:var(--zinc-600);color:var(--zinc-900);font-size:12px;font-weight:600;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.dropdown-btn:hover{background:var(--zinc-600)}.dropdown-btn-secondary{background:rgba(0,0,0,0);color:var(--zinc-50);border:1px solid var(--zinc-700)}.dropdown-btn-secondary:hover{background:var(--zinc-700);border-color:var(--zinc-600)}.dropdown-trigger{display:inline-flex;align-items:center;gap:6px;height:34px;padding:6px 10px;background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius-sm);color:var(--zinc-50);font-size:12px;cursor:pointer;transition:all var(--transition-fast)}.dropdown-trigger:hover{border-color:var(--zinc-600);background:var(--zinc-700)}.dropdown-trigger:focus{outline:none;border-color:var(--zinc-600);box-shadow:0 0 0 3px rgba(82,82,91,.15)}.dropdown-trigger svg{width:14px;height:14px;transition:transform var(--transition-fast)}.dropdown-trigger.open svg{transform:rotate(180deg)}.dropdown-trigger .dropdown-placeholder{color:var(--zinc-200)}.dropdown-trigger--full{width:100%;justify-content:space-between;text-align:left}.dropdown-trigger-filter{display:inline-flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-2);background:rgba(0,0,0,0);border:none;color:var(--zinc-400);font-size:var(--font-size-base);font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all var(--transition-fast)}.dropdown-trigger-filter svg{width:12px;height:12px;color:#fff;transition:transform var(--transition-fast);flex-shrink:0;margin-left:2px}.dropdown-trigger-filter:hover{color:var(--zinc-50);background:rgba(0,0,0,0)}.dropdown-trigger-filter:focus{outline:none;background:rgba(0,0,0,0)}.dropdown-trigger-filter.open svg{transform:rotate(180deg)}.dropdown-wrapper{position:relative;display:inline-block}.dropdown-wrapper--full{width:100%}.dropdown-wrapper--flex{flex:1}.dropdown-top{bottom:100%;top:auto;margin-bottom:4px;margin-top:0}.dropdown-left{left:0;right:auto}.dropdown-right{right:0;left:auto}.dropdown-center{left:50%;transform:translateX(-50%)}.dropdown-icon{width:16px;height:16px;flex-shrink:0;color:var(--zinc-500);transition:color var(--transition-fast)}.dropdown-item:hover .dropdown-icon{color:var(--zinc-50)}.dropdown-item-logout{width:100%;background:none;border:none;cursor:pointer;text-align:left}.dropdown-item-logout:hover{background:rgba(239,68,68,.1);color:#f87171;border-left-color:var(--color-red)}.dropdown-item-logout:hover .dropdown-icon{color:#f87171}.dropdown-email{display:block;padding:var(--spacing-2) var(--spacing-3) var(--spacing-1);font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-100)}.dropdown-role{display:block;padding:0 var(--spacing-3) var(--spacing-2);font-size:11px;color:var(--zinc-500)}.column-filter-dropdown{position:relative}.column-filter-dropdown .dropdown-menu{position:absolute;top:100%;left:0;margin-top:var(--spacing-1);min-width:180px;z-index:100}.column-filter-dropdown .dropdown-item.active{background:var(--zinc-500);color:var(--zinc-600)}.column-filter-dropdown .dropdown-item.active:hover{background:var(--zinc-500);color:var(--zinc-600)}.column-filter-btn{display:inline-flex;align-items:center;gap:var(--spacing-1);padding:0;background:none;border:none;font-size:inherit;font-weight:inherit;color:inherit;cursor:pointer;transition:opacity var(--transition-fast)}.column-filter-btn:hover{opacity:.7}.column-filter-btn svg{flex-shrink:0;opacity:.6}.sidebar-admin .dropdown-item{color:var(--zinc-400)}.sidebar-admin .dropdown-icon{color:var(--zinc-600)}.sidebar-admin .dropdown-item-logout:hover{background:rgba(248,113,113,.1);color:#f87171}.sidebar-admin .dropdown-item-logout:hover .dropdown-icon{color:#f87171}@media(max-width: 768px){.dropdown-selector{max-height:300px}.dropdown{min-width:160px}.select{font-size:var(--font-size-base)}}.textarea{width:100%;padding:var(--spacing-3);font-size:var(--font-size-base);font-family:inherit;font-weight:400;line-height:1.5;color:var(--zinc-100);background:var(--zinc-800);border:1px solid var(--zinc-600);border-radius:var(--radius-sm);resize:vertical;min-height:80px;transition:border-color .15s,background-color .15s,box-shadow .15s}.textarea::placeholder{color:var(--zinc-500)}.textarea:hover{border-color:var(--zinc-500)}.textarea:focus{outline:none;border-color:var(--zinc-500);background:var(--zinc-750);box-shadow:0 0 0 3px rgba(82,82,91,.15)}.textarea:disabled{opacity:.5;cursor:not-allowed;background:var(--zinc-850)}.textarea-sm{padding:var(--spacing-2);font-size:var(--font-size-sm);min-height:60px}.textarea-lg{padding:var(--spacing-4);min-height:120px}.label{display:block;font-size:var(--font-size-xs);font-weight:500;color:var(--zinc-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-1)}.label .required{color:var(--color-minor);font-weight:700;margin-left:2px}.detail-label{display:block;font-size:var(--font-size-xs);font-weight:500;color:var(--zinc-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-1)}.label-lg{font-size:var(--font-size-sm);font-weight:500;text-transform:none;letter-spacing:normal;color:var(--zinc-300);margin-bottom:var(--spacing-2)}.checkbox{appearance:none;-webkit-appearance:none;width:16px;height:16px;flex-shrink:0;border:1.5px solid var(--zinc-600);border-radius:3px;background:var(--zinc-800);cursor:pointer;transition:all .15s ease}.checkbox:hover{border-color:var(--zinc-500)}.checkbox:checked{background:var(--zinc-500);border-color:var(--zinc-500)}.checkbox:checked::after{content:"";display:block;width:4px;height:8px;border:solid var(--zinc-900);border-width:0 2px 2px 0;transform:rotate(45deg);margin:1px 0 0 5px}.checkbox:checked:hover{background:var(--zinc-400);border-color:var(--zinc-400)}.checkbox:disabled{opacity:.5;cursor:not-allowed}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);font-weight:400;color:var(--zinc-200);cursor:pointer}.checkbox-label input[type=checkbox]{appearance:none;-webkit-appearance:none;width:16px;height:16px;flex-shrink:0;border:1.5px solid var(--zinc-600);border-radius:3px;background:var(--zinc-800);cursor:pointer;transition:all .15s ease}.checkbox-label input[type=checkbox]:hover{border-color:var(--zinc-500)}.checkbox-label input[type=checkbox]:checked{background:var(--zinc-500);border-color:var(--zinc-500)}.checkbox-label input[type=checkbox]:checked::after{content:"";display:block;width:4px;height:8px;border:solid var(--zinc-900);border-width:0 2px 2px 0;transform:rotate(45deg);margin:1px 0 0 5px}.checkbox-label input[type=checkbox]:checked:hover{background:var(--zinc-400);border-color:var(--zinc-400)}.checkbox-label input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.checkbox-group{display:flex;flex-direction:column;gap:var(--spacing-2)}.checkbox-group.inline{flex-direction:row;flex-wrap:wrap;gap:var(--spacing-3);align-items:center}.checkbox-group.grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:var(--spacing-2)}@media(max-width: 1024px){.checkbox-group.grid{grid-template-columns:1fr}}.checkbox-inline{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--zinc-300);cursor:pointer}.checkbox-inline input[type=checkbox]{appearance:none;-webkit-appearance:none;width:16px;height:16px;flex-shrink:0;border:1.5px solid var(--zinc-600);border-radius:3px;background:var(--zinc-800);cursor:pointer;transition:all .15s ease}.checkbox-inline input[type=checkbox]:hover{border-color:var(--zinc-500)}.checkbox-inline input[type=checkbox]:checked{background:var(--zinc-500);border-color:var(--zinc-500)}.checkbox-inline input[type=checkbox]:checked::after{content:"";display:block;width:4px;height:8px;border:solid var(--zinc-900);border-width:0 2px 2px 0;transform:rotate(45deg);margin:1px 0 0 5px}.checkbox-inline input[type=checkbox]:checked:hover{background:var(--zinc-400);border-color:var(--zinc-400)}.checkbox-inline input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.checkbox-inline span{color:var(--zinc-400)}.checkbox-card{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-4);background:var(--zinc-800);border:2px solid var(--zinc-700);border-radius:var(--radius);cursor:pointer;transition:all var(--transition-fast)}.checkbox-card:hover{background:var(--zinc-700);border-color:var(--zinc-600)}.checkbox-card:has(input:checked){background:var(--zinc-700);border-color:var(--zinc-500)}.checkbox-card input[type=checkbox]{width:20px;height:20px;margin-top:2px;accent-color:var(--zinc-400);flex-shrink:0}.checkbox-card-content{display:flex;flex-direction:column;gap:4px}.checkbox-card-title{font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-200)}.checkbox-card-desc{font-size:var(--font-size-xs);color:var(--zinc-400);line-height:1.4}.checkbox-tag{display:inline-flex;align-items:center;padding:4px 10px;font-size:var(--font-size-sm);font-weight:500;border-radius:999px;cursor:pointer;background:var(--zinc-700);color:var(--zinc-300);border:1.5px solid rgba(0,0,0,0);transition:all .15s ease;user-select:none}.checkbox-tag:hover{background:var(--zinc-600)}.checkbox-tag input[type=checkbox],.checkbox-tag input[type=radio]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.checkbox-tag:has(input:checked){background:var(--color-minor-alpha);color:var(--zinc-100);border-color:var(--color-minor)}.checkbox-tag:has(input:checked):hover{background:var(--color-minor-alpha)}.checkbox-tag--locked{background:var(--green-900);color:var(--green-300);border-color:var(--green-800);cursor:default}.checkbox-tag--locked:hover{background:var(--green-900)}.checkbox-tag--warning{flex-direction:row;gap:var(--spacing-1);background:rgba(0,0,0,0);border-color:var(--zinc-600)}.checkbox-tag--warning:hover{background:var(--zinc-700)}.checkbox-tag__icon{flex-shrink:0;color:var(--amber-500)}.checkbox-tag__content{display:flex;flex-direction:column;gap:1px;line-height:1.2}.checkbox-tag__name{font-weight:500;color:var(--zinc-300)}.checkbox-tag__warning{font-size:10px;font-weight:400;color:var(--amber-500)}.radio{appearance:none;-webkit-appearance:none;width:16px;height:16px;flex-shrink:0;border:1.5px solid var(--zinc-600);border-radius:50%;background:var(--zinc-800);cursor:pointer;transition:all .15s ease}.radio:hover{border-color:var(--zinc-500)}.radio:checked{border-color:var(--zinc-400);border-width:5px}.radio:checked:hover{border-color:var(--zinc-300)}.radio:disabled{opacity:.5;cursor:not-allowed}.radio-label{display:inline-flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);font-weight:400;color:var(--zinc-200);cursor:pointer}.radio-label input[type=radio]{appearance:none;-webkit-appearance:none;width:16px;height:16px;flex-shrink:0;border:1.5px solid var(--zinc-600);border-radius:50%;background:var(--zinc-800);cursor:pointer;transition:all .15s ease}.radio-label input[type=radio]:hover{border-color:var(--zinc-500)}.radio-label input[type=radio]:checked{border-color:var(--zinc-400);border-width:5px}.radio-label input[type=radio]:checked:hover{border-color:var(--zinc-300)}.radio-label input[type=radio]:disabled{opacity:.5;cursor:not-allowed}.radio-group{display:flex;flex-direction:column;gap:var(--spacing-2)}.radio-group-inline{display:flex;flex-wrap:wrap;gap:var(--spacing-3);align-items:center}.radio-group-compact{display:flex;gap:var(--spacing-3)}.radio-compact{display:inline-flex;align-items:center;gap:var(--spacing-1);cursor:pointer;font-size:var(--font-size-sm);color:var(--zinc-100)}.radio-compact input[type=radio]{width:14px;height:14px;cursor:pointer}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;top:0;left:0;right:0;bottom:0;background-color:var(--zinc-700);border-radius:24px;transition:.2s}.toggle-slider::before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-minor)}.toggle-switch input:checked+.toggle-slider::before{transform:translateX(20px)}.toggle-switch-sm{width:36px;height:20px}.toggle-switch-sm .toggle-slider{border-radius:20px}.toggle-switch-sm .toggle-slider::before{width:14px;height:14px;top:3px;left:3px}.toggle-switch-sm input:checked+.toggle-slider::before{transform:translateX(16px)}.form-group{margin-bottom:var(--spacing-3)}.form-group-inline{display:flex;align-items:center;gap:var(--spacing-3)}.form-group-inline label{margin-bottom:0}.form-row{display:grid;grid-template-columns:repeat(2, 1fr);gap:var(--spacing-3)}.form-row-3{grid-template-columns:repeat(3, 1fr)}.form-row-4{grid-template-columns:repeat(4, 1fr)}.form-row-address{grid-template-columns:2fr 80px 1fr}.form-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:var(--spacing-3) var(--spacing-4)}.form-item{display:flex;flex-direction:column;gap:var(--spacing-1)}.form-item-full{grid-column:1/-1}.form-item-wide{grid-column:span 2}.form-separator{grid-column:1/-1;height:1px;background:var(--zinc-600);margin:var(--spacing-1) 0}.form-section{background:var(--zinc-850);border:1px solid var(--zinc-750);border-radius:var(--radius-md);padding:var(--spacing-5);display:flex;flex-direction:column;gap:var(--spacing-3)}.form-section h3{font-size:var(--font-size-xs);color:var(--zinc-400);font-weight:500;text-transform:uppercase;letter-spacing:.05em;margin-bottom:0}.form-actions{display:flex;gap:var(--spacing-3);margin-top:var(--spacing-6)}.form-actions-right{justify-content:flex-end}.form-actions-between{justify-content:space-between}.form{max-width:600px}.form--full-width{max-width:100%;display:grid;grid-template-columns:repeat(2, 1fr);gap:var(--spacing-4)}@media(max-width: 1024px){.form{max-width:100%}.form--full-width{grid-template-columns:1fr}.form-row-3{grid-template-columns:repeat(2, 1fr)}.form-row-4{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 768px){.form-grid{grid-template-columns:1fr;gap:var(--spacing-3)}.form-item-wide{grid-column:span 1}.form-section{padding:var(--spacing-4)}.form-actions{flex-direction:column;gap:var(--spacing-2);margin-top:var(--spacing-4)}.form-actions .btn{width:100%;justify-content:center}.form-row,.form-row-3,.form-row-4{grid-template-columns:1fr;gap:var(--spacing-3)}.form-row-address{grid-template-columns:1fr}}.search-input-wrapper{position:relative;flex:1;max-width:400px}.search-input{width:100%;padding:var(--spacing-2) var(--spacing-3);padding-left:40px;padding-right:36px;font-size:var(--font-size-base);font-family:inherit;font-weight:400;line-height:1.5;color:var(--zinc-100);background:var(--zinc-800);border:1px solid var(--zinc-600);border-radius:var(--radius-lg);transition:border-color .15s,background-color .15s,box-shadow .15s}.search-input::placeholder{color:var(--zinc-500)}.search-input:hover{border-color:var(--zinc-500)}.search-input:focus{outline:none;border-color:var(--zinc-500);background:var(--zinc-750);box-shadow:0 0 0 3px rgba(82,82,91,.15)}.search-input:disabled{opacity:.5;cursor:not-allowed;background:var(--zinc-850)}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--zinc-500);pointer-events:none}.search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);color:var(--zinc-500);padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color .15s,background .15s;background:none;border:none}.search-clear:hover{color:var(--zinc-200);background:var(--zinc-700)}.search-submit{position:absolute;right:8px;top:50%;transform:translateY(-50%);color:var(--zinc-500);padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;transition:color .15s,background .15s}.search-submit:hover{color:var(--zinc-300);background:var(--zinc-700)}.search-input-wrapper:has(.search-clear) .search-submit{right:32px}.search-bar{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-4);border-bottom:1px solid var(--zinc-700);background:var(--zinc-800);border-radius:var(--radius-xl) var(--radius-xl) 0 0;margin:calc(-1*var(--spacing-6));margin-bottom:var(--spacing-4)}.search-form{display:flex;align-items:center;gap:var(--spacing-3);width:100%}.search-form-inline{display:flex;align-items:center;gap:var(--spacing-2)}.search-form-inline .search-input-wrapper{width:200px;flex:none}.search-form-inline .search-input{height:36px;padding:0 var(--spacing-3);padding-left:32px;padding-right:28px;font-size:var(--font-size-sm);line-height:36px}.search-form-inline .search-icon{left:10px;width:16px;height:16px}.search-form-inline .btn{height:36px;padding:0 var(--spacing-3);font-size:var(--font-size-sm)}.inline-filter{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);background:var(--zinc-800);border-bottom:1px solid var(--zinc-700);font-size:var(--font-size-sm)}.inline-filter-label{color:var(--zinc-500);font-weight:500;margin-right:var(--spacing-1)}.inline-filter-input{width:auto;min-width:130px;height:32px;padding:var(--spacing-1) var(--spacing-2);font-size:var(--font-size-sm);font-family:inherit;font-weight:400;line-height:1.5;color:var(--zinc-100);background:var(--zinc-800);border:1px solid var(--zinc-600);border-radius:var(--radius-sm);transition:border-color .15s,background-color .15s,box-shadow .15s}.inline-filter-input::placeholder{color:var(--zinc-500)}.inline-filter-input:hover{border-color:var(--zinc-500)}.inline-filter-input:focus{outline:none;border-color:var(--zinc-500);background:var(--zinc-750);box-shadow:0 0 0 3px rgba(82,82,91,.15)}.inline-filter-input:disabled{opacity:.5;cursor:not-allowed;background:var(--zinc-850)}.inline-filter-separator{color:var(--zinc-500);font-size:var(--font-size-xs)}.inline-filter-reset{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;margin-left:var(--spacing-1);border:none;background:rgba(0,0,0,0);color:var(--zinc-500);border-radius:var(--radius);cursor:pointer;transition:all .15s}.inline-filter-reset:hover{background:var(--zinc-700);color:var(--zinc-200)}.input-with-suffix{display:flex;align-items:center}.input-with-suffix input{border-top-right-radius:0;border-bottom-right-radius:0;flex:1}.input-suffix{padding:var(--spacing-2) var(--spacing-3);background:var(--zinc-700);border:1px solid var(--zinc-600);border-left:none;border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:var(--font-size-sm);color:var(--zinc-400)}.form-hint{font-size:var(--font-size-xs);color:var(--zinc-500);margin-top:var(--spacing-1)}.form-error-message{color:#f87171;font-size:var(--font-size-xs);margin-top:var(--spacing-1)}.form-static-value{padding:var(--spacing-2) var(--spacing-3);background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--zinc-400)}.form-section-danger{background:rgba(248,113,113,.05);margin:var(--spacing-5) calc(-1*var(--spacing-4)) calc(-1*var(--spacing-4));padding:var(--spacing-4);border-radius:0 0 var(--radius-lg) var(--radius-lg);border-bottom:none;border-top:1px solid rgba(248,113,113,.2)}.form-section-danger h3{color:#f87171}.danger-description{color:var(--zinc-400);font-size:var(--font-size-sm);margin-bottom:var(--spacing-4)}.danger-warnings{background:rgba(248,113,113,.1);border:1px solid rgba(248,113,113,.2);border-radius:var(--radius);padding:var(--spacing-3);margin-bottom:var(--spacing-4)}.danger-warning-title{font-size:var(--font-size-sm);font-weight:500;color:#fca5a5;margin-bottom:var(--spacing-2)}.danger-warning-list{margin:0;padding-left:var(--spacing-4);font-size:var(--font-size-sm);color:var(--zinc-400)}.danger-warning-list li{margin-bottom:var(--spacing-1)}.danger-warning-list li:last-child{margin-bottom:0}.gps-manual-link{display:inline-flex;align-items:center;gap:var(--spacing-2);color:var(--zinc-500);font-size:var(--font-size-sm);text-decoration:none;padding:var(--spacing-2) 0;transition:color .15s}.gps-manual-link:hover{color:var(--zinc-300)}.gps-manual-link:hover svg{opacity:1}.gps-manual-link svg{opacity:.6}.hidden-conditional{display:none !important}input:focus,select:focus,textarea:focus{outline:none}.auth-input{width:100%;padding:var(--spacing-3);font-size:var(--font-size-base);font-family:inherit;font-weight:400;line-height:1.5;color:var(--zinc-50);background:var(--zinc-700);border:1px solid var(--zinc-600);border-radius:var(--radius);transition:border-color .15s,background-color .15s,box-shadow .15s}.auth-input::placeholder{color:var(--zinc-500)}.auth-input:hover{border-color:var(--zinc-500)}.auth-input:focus{outline:none;border-color:var(--zinc-500);background:var(--zinc-700);box-shadow:0 0 0 3px rgba(82,82,91,.15)}.auth-input:disabled{opacity:.5;cursor:not-allowed;background:var(--zinc-800)}.auth-input[type=email]{text-transform:lowercase}.auth-input[type=email]::placeholder{text-transform:none}.auth-input.auth-input-error{border-color:rgba(248,113,113,.5);background:rgba(248,113,113,.05)}.auth-input.auth-input-error:focus{border-color:rgba(248,113,113,.5);box-shadow:0 0 0 3px rgba(248,113,113,.1)}.auth-input.auth-input-valid{border-color:rgba(34,197,94,.5)}.auth-input.auth-input-valid:focus{border-color:rgba(34,197,94,.5);box-shadow:0 0 0 3px rgba(34,197,94,.1)}.auth-label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-50);margin-bottom:var(--spacing-1)}.auth-hint{font-size:var(--font-size-xs);color:var(--zinc-500);margin-top:var(--spacing-1)}.auth-error{font-size:var(--font-size-xs);color:#f87171;margin-top:var(--spacing-1);display:flex;align-items:center;gap:var(--spacing-1)}.auth-error svg{width:12px;height:12px;flex-shrink:0}.auth-field{display:flex;flex-direction:column;gap:var(--spacing-1)}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{padding-right:2.75rem}.password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:.25rem;color:var(--zinc-500);transition:color .15s;display:flex;align-items:center;justify-content:center}.password-toggle:hover{color:var(--zinc-300)}.password-toggle:focus{outline:none;color:var(--zinc-400)}.password-toggle svg{width:1.25rem;height:1.25rem}.password-strength-container{margin-top:var(--spacing-3)}.password-strength-meter-wrapper{display:flex;align-items:center;gap:var(--spacing-3)}.password-strength-meter{flex:1;height:4px;background:var(--zinc-700);border-radius:2px;overflow:hidden}.password-strength-bar{height:100%;width:0;transition:width .3s ease,background-color .3s ease;border-radius:2px}.password-strength-bar.strength-weak{background:#ef4444}.password-strength-bar.strength-fair{background:#f59e0b}.password-strength-bar.strength-good{background:#eab308}.password-strength-bar.strength-strong{background:#22c55e}.password-strength-bar.password-strength-red{background:#ef4444}.password-strength-bar.password-strength-orange{background:#f59e0b}.password-strength-bar.password-strength-yellow{background:#eab308}.password-strength-bar.password-strength-green{background:#22c55e}.password-strength-label{font-size:var(--font-size-xs);font-weight:500;min-width:60px;text-align:right}.password-strength-label.strength-weak{color:#ef4444}.password-strength-label.strength-fair{color:#f59e0b}.password-strength-label.strength-good{color:#eab308}.password-strength-label.strength-strong{color:#22c55e}.password-strength-label.password-strength-text-red{color:#ef4444}.password-strength-label.password-strength-text-orange{color:#f59e0b}.password-strength-label.password-strength-text-yellow{color:#eab308}.password-strength-label.password-strength-text-green{color:#22c55e}.password-requirements{display:flex;flex-direction:column;gap:var(--spacing-1);margin-top:var(--spacing-2)}.password-requirement{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-xs);color:var(--zinc-400);transition:color .2s ease}.password-requirement.requirement-pending{color:var(--zinc-500)}.password-requirement.requirement-failed{color:#ef4444}.password-requirement.requirement-passed{color:#22c55e}.requirement-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.requirement-icon svg{width:14px;height:14px}.requirement-label{line-height:1.4}.password-match-indicator{font-size:var(--font-size-xs);margin-top:var(--spacing-1);display:flex;align-items:center;gap:var(--spacing-1)}.password-match-indicator.match-pending{color:var(--zinc-500)}.password-match-indicator.match-error{color:#ef4444}.password-match-indicator.match-success{color:#22c55e}.password-match-indicator svg{width:12px;height:12px}.field-error-message{color:#f87171;font-size:var(--font-size-xs);margin-top:var(--spacing-1);display:block;width:100%}.password-input-wrapper+.field-error-message{margin-top:var(--spacing-2)}.card{padding:var(--spacing-6);margin-bottom:var(--spacing-4)}.card h2{color:var(--zinc-200)}.card h3{color:var(--zinc-500);font-size:var(--font-size-xs);font-weight:400;text-transform:uppercase;letter-spacing:.03em;margin-bottom:var(--spacing-3)}.card:has(.form-section){display:grid;grid-template-columns:repeat(2, 1fr);gap:var(--spacing-4)}.card:has(.form-section)>h2,.card:has(.form-section)>.card-header,.card:has(.form-section)>.card-header-inline{grid-column:1/-1}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-4)}.card-header h2{margin:0}.allowances-icons{display:flex;gap:4px}.allowance-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:10px;font-weight:600;border-radius:var(--radius-sm);color:var(--zinc-300)}.allowance-icon.active{color:var(--zinc-300)}.card-filters{display:flex;align-items:center;gap:var(--spacing-4);padding:var(--spacing-3) var(--spacing-4);border-bottom:1px solid var(--zinc-700);background:var(--zinc-800)}.filter-group{display:flex;align-items:center;gap:var(--spacing-3)}.filter-label{font-size:var(--font-size-sm);color:var(--zinc-400);font-weight:500}.filter-tabs{display:flex;gap:var(--spacing-1)}.filter-tab{padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-sm);color:var(--zinc-400);text-decoration:none;border-radius:var(--radius);transition:var(--transition-fast)}.filter-tab:hover{background:var(--zinc-600);color:var(--zinc-100)}.filter-tab.active{background:var(--zinc-600);color:var(--zinc-900)}.card-inner{background:var(--zinc-800);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--zinc-600);overflow:hidden}.card-inner .table{margin:0}.card-inner .table th,.card-inner .table td{padding:var(--spacing-2) var(--spacing-3)}.card-inner .table tbody tr:last-child td{border-bottom:none}.card-header-inline{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-4)}.card-header-inline h2{margin:0}.card--table{margin-bottom:0;padding:0;border-radius:var(--radius-lg);box-shadow:none}.card--table .table{margin:0}.card--table .table th{position:sticky;top:0;height:44px;padding:var(--spacing-3) var(--spacing-4);color:var(--zinc-400);border-bottom:1px solid var(--zinc-700);font-size:var(--font-size-xs);font-weight:500;text-transform:uppercase;letter-spacing:.03em;z-index:1}.card--table .table td{padding:var(--spacing-3) var(--spacing-4);color:var(--zinc-200);border-bottom:1px solid var(--zinc-800)}.card--table .table tbody tr{transition:background var(--transition-fast)}.card--table .table tbody tr:hover{background:var(--zinc-800)}.card--table .empty-state{padding:var(--spacing-8);text-align:center;color:var(--zinc-500)}.card--scrollable{max-height:calc(100vh - 200px);overflow-y:auto;overflow-x:hidden}.planning-container .card{max-height:calc(100vh - 200px);overflow-y:auto;overflow-x:hidden}.planning-container .card--table{flex:1 1 0;min-height:0;overflow-y:auto}.edit-content{flex:1 1 0;min-height:0;overflow-y:auto;padding:var(--spacing-6) var(--spacing-4) var(--spacing-5)}@media(max-width: 1024px){.card:has(.form-section){grid-template-columns:1fr}}.table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm);font-weight:400;color:var(--zinc-400)}.table th,.table td{padding:var(--spacing-3) var(--spacing-4);text-align:left;border-bottom:1px solid rgba(161,161,170,.2);max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table th{background:rgba(0,0,0,0)}.table tbody tr{transition:background-color var(--transition-fast)}.table tbody tr:hover{background-color:var(--color-minor-subtle)}.th-filter{display:block}.th-filter-header{display:block}.th-filter-title{font-weight:600;color:var(--zinc-100)}.th-filter-count{display:inline-block;margin-left:var(--spacing-2);padding:1px 8px;font-size:var(--font-size-xs);font-weight:600;line-height:1.5;color:var(--zinc-200);background:var(--zinc-700);border-radius:999px}.th-filter-controls{display:flex;align-items:center;width:100%;margin-top:var(--spacing-2)}.th-filter-select{width:100%;height:30px;padding:0 var(--spacing-6) 0 var(--spacing-3);font-size:var(--font-size-xs);font-weight:400;color:var(--zinc-300);background-color:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius-sm);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23a1a1a1' d='M3 4.5L6 7.5L9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-2) center;background-size:12px 12px;transition:border-color var(--transition-fast)}.th-filter-select:hover{border-color:var(--zinc-600)}.th-filter-select:focus{outline:none;border-color:var(--color-minor)}.th-sortable{cursor:pointer;user-select:none;white-space:nowrap;color:inherit;text-decoration:none}.th-sortable:hover,.th-sortable:visited,.th-sortable:active{color:inherit;text-decoration:none}.th-sortable::after{content:"";display:inline-block;width:12px;height:12px;margin-left:var(--spacing-1);vertical-align:middle;opacity:.4;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%3Cpath d='M8 10l4-4 4 4M8 14l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center}.th-sortable:hover::after{opacity:1}.th-sortable.sorted-asc::after,.th-sortable.sorted-desc::after{opacity:1}.th-sortable.sorted-asc::after{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%3Cpath d='M8 14l4-4 4 4'/%3E%3C/svg%3E")}.th-sortable.sorted-desc::after{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%3Cpath d='M8 10l4 4 4-4'/%3E%3C/svg%3E")}.table tfoot td{border-top:2px solid var(--zinc-600);border-bottom:none}.table.table-compact th,.table.table-compact td{padding:var(--spacing-2) var(--spacing-3)}.table.table-mini{font-size:var(--font-size-xs)}.table.table-mini td{padding:var(--spacing-1) var(--spacing-2);border-bottom:1px solid var(--zinc-800)}.table.table-mini td:first-child{width:40px}.table .actions{white-space:nowrap;display:flex;gap:var(--spacing-2);width:120px}.table th:last-child,.table td:last-child{width:120px}.badge{display:inline-flex;align-items:center;padding:2px var(--spacing-2);font-size:var(--font-size-xs);font-weight:500;line-height:1.4;border-radius:999px;background:var(--zinc-700);color:var(--zinc-300);transition:var(--transition-fast);white-space:nowrap}.badge-primary{background:rgba(82,82,91,.15);color:var(--zinc-600)}.badge-secondary,.badge-task-none,.badge-inactive,.badge-archived,.badge-no{background:var(--zinc-700);color:var(--zinc-300)}.badge-success,.badge-available,.badge-validated,.badge-early,.badge-yes{background:rgba(113,113,122,.15);color:var(--zinc-500)}.badge-warning,.badge-completed-late,.badge-pending,.badge-urgent{background:rgba(63,63,70,.2);color:var(--zinc-700)}.badge-danger,.badge-late{background:rgba(39,39,42,.25);color:var(--zinc-800)}.badge-info,.badge-on-time{background:rgba(82,82,91,.15);color:var(--zinc-600)}.badge-sm{padding:1px var(--spacing-1);font-size:10px}.badge-lg{padding:4px var(--spacing-3);font-size:var(--font-size-sm)}.tag{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;font-size:11px;font-weight:500;border-radius:var(--radius-sm);text-decoration:none;background:var(--zinc-700);color:var(--zinc-300);transition:var(--transition-fast);white-space:nowrap}.tag:hover{opacity:.85;transform:translateY(-1px)}.tag svg{flex-shrink:0;width:12px;height:12px}.tag-primary{background:rgba(82,82,91,.15);color:var(--zinc-600)}.tag-secondary{background:var(--zinc-700);color:var(--zinc-300)}.tag-success{background:rgba(113,113,122,.15);color:var(--zinc-500)}.tag-warning{background:rgba(63,63,70,.2);color:var(--zinc-700)}.tag-danger{background:rgba(39,39,42,.25);color:var(--zinc-800)}.tag-info{background:rgba(82,82,91,.15);color:var(--zinc-600)}.tag-gray,.tag-grey{background:var(--zinc-700);color:var(--zinc-400)}.tag-sm{padding:2px 6px;font-size:10px}.tag-lg{padding:4px 12px;font-size:var(--font-size-sm)}.badge-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:600;line-height:1;border-radius:999px;background:var(--zinc-600);color:var(--zinc-100)}.badge-count-sm{min-width:16px;height:16px;font-size:9px}.badge-count-hidden{display:none}.badge-team{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:500;border-radius:999px;background:var(--zinc-750);color:var(--zinc-300)}.badge-team-past{opacity:.6}.employee-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;font-size:10px;font-weight:500;text-transform:uppercase;border-radius:999px;background:var(--zinc-700);color:var(--zinc-300);letter-spacing:.03em}.site-tag{--site-color: var(--zinc-600);display:flex;align-items:center;gap:4px;width:100%;padding:6px 8px;font-size:11px;font-weight:600;background:var(--site-color);color:#fff;border-radius:var(--radius);cursor:context-menu;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:all var(--transition-fast);box-shadow:0 1px 3px rgba(0,0,0,.3);pointer-events:auto;position:relative;z-index:1}.site-tag:hover{transform:translateY(-1px);box-shadow:0 2px 5px rgba(0,0,0,.4)}.site-tag-ref{text-transform:uppercase;letter-spacing:.02em;flex-shrink:0}.site-tag-name{text-transform:none;pointer-events:none;overflow:hidden;text-overflow:ellipsis}.site-tags{display:inline-flex;flex-wrap:wrap;gap:4px;margin-left:8px;vertical-align:middle}.badge-code{display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;padding:4px 8px;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.02em;min-width:36px;text-align:center}.badge-trajet{background:rgba(59,130,246,.12);color:#3b82f6}.badge-transport{background:rgba(139,92,246,.12);color:#8b5cf6}.badge-panier{background:rgba(34,197,94,.12);color:#16a34a}.badge-vehicle--personal{background:#dcfce7;color:#166534}.badge-vehicle--company_vehicle{background:#e0f2fe;color:#075985}.badge-vehicle--pickup_at_depot{background:#ffedd5;color:#9a3412}.badge-vehicle--housed_on_site{background:#fee2e2;color:#991b1b}.badge-vehicle--custom{background:#ede9fe;color:#5b21b6}.row-inactive{opacity:.6;transition:opacity var(--transition-fast)}.row-inactive:hover{opacity:.8}.badge-link{text-decoration:none;margin-right:var(--spacing-1);margin-bottom:var(--spacing-1);cursor:pointer}.badge-link code{font-size:inherit}.badge-link:hover{opacity:.8;transform:translateY(-1px)}.avatar-sm{width:32px;height:32px;border-radius:50%;background:var(--zinc-600);color:var(--zinc-900);font-family:var(--font-family-heading);font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.avatar-mini{width:24px;height:24px;border-radius:50%;background:var(--bg, var(--zinc-600));color:var(--fg, var(--zinc-900));font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;border:2px solid var(--zinc-700);margin-left:-4px}.avatar-mini:first-child{margin-left:0}.avatar-more{width:24px;height:24px;border-radius:50%;background:var(--zinc-600);color:var(--zinc-200);font-size:9px;font-weight:600;display:flex;align-items:center;justify-content:center;margin-left:-4px}.avatars-group{display:flex}.avatar-color-picker{display:flex;align-items:center;gap:1.5rem}.avatar-preview{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600;flex-shrink:0}.avatar-color-controls{display:flex;align-items:flex-end;gap:1rem}.color-input-wrapper{display:flex;flex-direction:column;gap:.25rem}.color-input-wrapper input[type=color]{width:48px;height:32px;padding:0;border:1px solid var(--zinc-500);border-radius:4px;cursor:pointer;background:none}.color-input-wrapper input[type=color]::-webkit-color-swatch-wrapper{padding:2px}.color-input-wrapper input[type=color]::-webkit-color-swatch{border-radius:2px;border:none}.identity-section-layout{display:grid;grid-template-columns:1fr 300px;gap:3rem;align-items:start}.identity-fields{flex:1;min-width:0}.identity-fields .form-grid{grid-template-columns:repeat(auto-fit, minmax(200px, 1fr))}.identity-avatar{flex-shrink:0}.identity-avatar .label{display:block;margin-bottom:1rem;font-size:.875rem;font-weight:500;color:var(--zinc-300)}.identity-avatar-display{display:flex;justify-content:center;align-items:center}.avatar-thumb{width:120px;height:120px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:600;font-family:var(--font-family-heading);flex-shrink:0}.avatar-thumb.avatar-image{padding:0;overflow:hidden}.avatar-thumb.avatar-image img{width:100%;height:100%;object-fit:cover;display:block}.avatar-image{padding:0;overflow:hidden}.avatar-image img{width:100%;height:100%;object-fit:cover;display:block}@media(max-width: 768px){.identity-section-layout{grid-template-columns:1fr;gap:2rem}.identity-avatar{order:-1}}.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1000;align-items:center;justify-content:center;padding:var(--spacing-4)}.modal.open,.modal.active{display:flex}.modal-content{background:var(--zinc-800);font-size:var(--font-size-sm);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);border:1px solid var(--zinc-700);width:fit-content;min-width:320px;max-width:min(520px,100vw - var(--spacing-8));max-height:calc(100vh - var(--spacing-8));overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4);border-bottom:1px solid var(--zinc-700);flex-shrink:0}.modal-header h3{margin:0;font-size:var(--font-size-base);font-weight:600;color:var(--zinc-100)}.modal-header-text{display:flex;flex-direction:column;gap:2px}.modal-subtitle{margin:0;font-size:var(--font-size-xs);color:var(--zinc-400);font-weight:400}.modal-subtitle:empty{display:none}.modal-body{padding:var(--spacing-4);overflow-y:auto;flex:1;min-height:0}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);border-top:1px solid var(--zinc-700);flex-shrink:0}.modal-info{background:var(--zinc-750, var(--zinc-700));padding:var(--spacing-3);border-radius:var(--radius);margin-bottom:var(--spacing-4);font-size:var(--font-size-sm)}.modal-section{border-top:1px solid var(--zinc-700);padding-top:var(--spacing-4);margin-top:var(--spacing-4)}.modal-form-scrollable{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden}.licence-modal-body{max-width:480px;color:var(--zinc-300);line-height:1.5}.licence-modal-body p{margin:0}.licence-intro{color:var(--zinc-400);font-size:var(--font-size-sm);margin-bottom:var(--spacing-4) !important}.licence-section+.licence-section{margin-top:var(--spacing-4);padding-top:var(--spacing-4);border-top:1px solid var(--zinc-700)}.licence-section h4{margin:0 0 var(--spacing-2);font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-100)}.licence-section strong{color:var(--zinc-100)}.licence-list{margin:0;padding-left:var(--spacing-4);display:flex;flex-direction:column;gap:4px;font-size:var(--font-size-sm)}.licence-list li{color:var(--zinc-300)}.licence-highlight{list-style:none;margin-left:calc(-1*var(--spacing-4));padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius);background:color-mix(in srgb, var(--color-minor) 12%, transparent);border-left:3px solid var(--color-minor)}.licence-highlight strong{color:var(--zinc-100)}.licence-highlight-note{display:block;margin-top:4px;font-size:var(--font-size-xs);font-weight:400;color:var(--zinc-400)}.licence-footer-note{margin-top:var(--spacing-4) !important;padding-top:var(--spacing-3);border-top:1px solid var(--zinc-700);font-size:var(--font-size-xs);color:var(--zinc-500);text-align:center}.task-modal-loading,.task-modal-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-8);gap:var(--spacing-3);color:var(--zinc-400);font-size:var(--font-size-sm)}.task-modal-loading .spinner{width:24px;height:24px;border:2px solid var(--zinc-600);border-top-color:var(--zinc-400);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.panel-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0);z-index:1000}.panel-overlay.open{display:block}.panel{position:fixed;top:0;bottom:0;right:0;z-index:1001;transform:translateX(100%);transition:transform .3s ease}.panel.open{transform:translateX(0)}.panel.panel--left{right:auto;left:0;transform:translateX(-100%)}.panel.panel--left.open{transform:translateX(0)}.panel--sm{width:320px;max-width:90vw}.panel--md{width:400px;max-width:90vw}.panel--lg{width:500px;max-width:90vw}.panel--xl{width:600px;max-width:90vw}.panel-title{text-transform:uppercase;letter-spacing:.05em;white-space:normal;word-break:break-word;line-height:1.3}.panel-title--contextual{text-transform:none;letter-spacing:normal}.panel-subtitle{margin:0;font-size:var(--font-size-xs);color:var(--zinc-400)}.panel-content{display:flex;flex-direction:column;height:100%}.panel-segment-info{margin-bottom:var(--spacing-4);padding-bottom:var(--spacing-3);border-bottom:1px solid var(--zinc-700)}.panel-segment-info__site{font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-100);margin-bottom:var(--spacing-1)}.panel-segment-info__date{font-size:var(--font-size-sm);color:var(--zinc-400)}.panel-search{margin-bottom:var(--spacing-3)}.panel-filter{margin-bottom:var(--spacing-4)}.panel-list{flex:1;overflow-y:auto;margin:0 calc(-1*var(--spacing-4));padding:0 var(--spacing-4)}.panel-list__items{display:flex;flex-direction:column;gap:var(--spacing-2)}.panel-list__item{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-2);border-radius:var(--radius);cursor:pointer;transition:background var(--transition-fast)}.panel-list__item:hover{background:var(--zinc-700)}.panel-list__item--disabled{opacity:.5;cursor:not-allowed}.panel-list__item--disabled:hover{background:rgba(0,0,0,0)}.panel-list__item--selected{background:rgba(113,113,122,.15)}.panel-list__item--with-dates{flex-direction:column;align-items:stretch;cursor:default;padding:var(--spacing-3);background:var(--zinc-800)}.panel-list__item--with-dates:hover{background:var(--zinc-800)}.panel-list__item--assigned{opacity:.7}.panel-list__dates{display:flex;flex-wrap:wrap;gap:var(--spacing-2);margin-top:var(--spacing-2)}.panel-list__dates--readonly{gap:var(--spacing-1)}.panel-list__dates-by-day{display:flex;flex-direction:column;gap:var(--spacing-3)}.panel-list__day{background:var(--zinc-800);border-radius:var(--radius);padding:var(--spacing-3)}.panel-list__day-header{font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-200);margin-bottom:var(--spacing-2);text-transform:capitalize}.panel-list__day-employees{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}.panel-list__assigned-employees{display:flex;flex-direction:column;gap:var(--spacing-2)}.panel-list__assigned-employee{display:flex;flex-direction:column;gap:2px;padding:var(--spacing-2) var(--spacing-3);background:var(--zinc-800);border-radius:var(--radius);border-left:3px solid var(--green-600)}.panel-list__assigned-name{font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-200)}.panel-list__assigned-dates{font-size:var(--font-size-xs);color:var(--zinc-400)}.panel-list__absent-employees{display:flex;flex-direction:column;gap:var(--spacing-2)}.panel-list__absent-employee{display:flex;flex-direction:column;gap:4px;padding:var(--spacing-2) var(--spacing-3);background:var(--zinc-800);border-radius:var(--radius);border-left:3px solid var(--red-600)}.panel-list__absent-name{font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-200)}.panel-list__absences{display:flex;flex-direction:column;gap:2px}.panel-list__absence-line{display:flex;align-items:baseline;gap:var(--spacing-2);font-size:var(--font-size-xs)}.panel-list__absence-type{font-weight:500;color:var(--red-400)}.panel-list__absence-dates{color:var(--zinc-400)}.panel-list__date-badge{display:inline-flex;padding:var(--spacing-1) var(--spacing-2);background:var(--green-900);color:var(--green-300);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.panel-list__item--other{opacity:.6}.panel-list__other-sites{display:flex;flex-direction:column;gap:var(--spacing-1);margin-top:var(--spacing-2)}.panel-list__other-site{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--spacing-2);font-size:var(--font-size-xs)}.panel-list__other-site-name{color:var(--amber-400);font-weight:500}.panel-list__other-site-dates{color:var(--zinc-400)}.panel-list__info{flex:1;min-width:0}.panel-list__name{font-size:var(--font-size-sm);color:var(--zinc-200);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel-list__expand-btn{display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:4px;border:none;background:rgba(0,0,0,0);cursor:pointer;color:var(--zinc-500);border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast)}.panel-list__expand-btn:hover{color:var(--zinc-200);background:var(--zinc-700)}.panel-list__expand-icon{transition:transform 150ms ease}.panel-list__item--expanded .panel-list__expand-icon{transform:rotate(180deg)}.panel-list__meta{font-size:var(--font-size-xs);color:var(--zinc-400)}.panel-list__meta--warning{color:var(--amber-400)}.panel-list__detail{font-size:var(--font-size-xs);color:var(--zinc-500)}.panel-list__name-row{display:flex;align-items:center;gap:var(--spacing-2)}.panel-list__checkbox-placeholder{width:16px;flex-shrink:0}.panel-footer{display:flex;gap:var(--spacing-3);padding-top:var(--spacing-4);margin-top:var(--spacing-4);border-top:1px solid var(--zinc-700)}.panel-footer .btn{flex:1}.panel-footer-collapsible{padding-top:var(--spacing-3);margin-top:var(--spacing-3);border-top:1px solid var(--zinc-700)}.panel-footer-toggle{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:var(--spacing-1) 0;list-style:none}.panel-footer-toggle::-webkit-details-marker{display:none}.panel-footer-toggle::marker{display:none;content:""}.panel-footer-toggle svg{color:var(--zinc-500);transition:transform 150ms ease,background 150ms ease;flex-shrink:0}.panel-footer-toggle svg.panel-footer-toggle__icon{width:20px;height:20px;padding:3px;border-radius:50%;background:var(--color-minor);color:#fff}.panel-footer-toggle .panel-list__title{margin-bottom:0;color:var(--color-minor)}.panel-footer-toggle:hover svg{color:#000}.panel-footer-collapsible[open] .panel-footer-toggle svg{transform:rotate(45deg)}.panel-footer-collapsible[open] .panel-footer-toggle svg.panel-footer-toggle__icon{background:var(--zinc-700);color:var(--zinc-400)}.panel-footer-content{display:flex;flex-direction:column;gap:6px;padding-top:var(--spacing-2)}.panel-footer-content .dropdown-wrapper{display:flex}.panel-footer-content .dropdown-trigger{height:100%;box-sizing:border-box}.panel-task-drag-ghost{position:fixed;z-index:2000;padding:6px 10px;background:var(--zinc-800);border:1px solid var(--zinc-600);border-radius:var(--radius-sm);color:var(--zinc-300);font-size:var(--font-size-sm);pointer-events:none;white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis;box-shadow:0 4px 12px rgba(0,0,0,.3);transition:border-color 100ms ease}.panel-task-drag-ghost--valid{border-color:var(--color-minor);color:var(--zinc-100)}.panel-list__drag-handle{display:flex;align-items:center;flex-shrink:0;color:var(--zinc-600);transition:color var(--transition-fast)}.panel-list__item:hover .panel-list__drag-handle{color:var(--zinc-400)}.panel-list__item[data-task-id]{cursor:grab}.panel-list__item[data-task-id]:active{cursor:grabbing}.panel-list__details{display:none;flex-direction:column;gap:2px}.panel-list__item--expanded .panel-list__details{display:flex}.panel-list__meta-row{display:flex;align-items:baseline;gap:var(--spacing-1)}.panel-list__assignments{display:flex;flex-direction:column;gap:1px}.panel-list__assignments-line{font-size:var(--font-size-xs);color:var(--zinc-500)}.panel-task-drag-ghost--invalid{border-color:var(--color-red);color:var(--zinc-400)}.panel-create-form{display:flex;flex-direction:column;gap:6px;padding-top:var(--spacing-3);margin-top:var(--spacing-2);border-top:1px solid var(--zinc-700)}.panel-create-form.hidden{display:none}.panel-create-form .dropdown-wrapper{display:flex}.panel-create-form .dropdown-trigger{height:100%;box-sizing:border-box}.panel-create-form__actions{display:flex;justify-content:flex-end;gap:6px;margin-top:2px}.panel-create-form--card{background:var(--zinc-850);border:1px solid var(--zinc-700);border-radius:var(--radius);padding:var(--spacing-3);margin-top:var(--spacing-2);border-top:none}.panel-create-form__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-2)}.panel-create-form__title{font-size:var(--font-size-xs);font-weight:600;color:var(--zinc-300);text-transform:uppercase;letter-spacing:.03em}.panel-create-form__row{display:flex;gap:6px;align-items:stretch}.btn-close--sm{width:22px;height:22px;min-width:22px;display:flex;align-items:center;justify-content:center}.btn-close--sm svg{width:8px;height:8px}.panel-add-task-btn{display:flex;align-items:center;gap:6px;width:100%;padding:8px 10px;margin-top:8px;border:1px dashed var(--zinc-600);border-radius:6px;background:rgba(0,0,0,0);color:var(--zinc-400);font-size:var(--font-size-sm);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.panel-add-task-btn:hover{color:var(--zinc-200);border-color:var(--zinc-400);background:var(--zinc-800)}.panel-section{margin-bottom:var(--spacing-4)}.panel-section>.label{margin-bottom:var(--spacing-2)}.panel-section__dates{display:flex;gap:8px;align-items:flex-end}.panel-section__date-field{flex:1}.panel-section__date-field .text-xs{display:block;margin-bottom:2px}.panel-accordion{display:flex;flex-direction:column;gap:0}.panel-accordion__item{border-bottom:1px solid var(--zinc-800)}.panel-accordion__item:last-child{border-bottom:none}.panel-accordion__header{display:flex;align-items:center;gap:var(--spacing-2);width:100%;padding:var(--spacing-3) 0;background:none;border:none;cursor:pointer;color:inherit;font-family:inherit;transition:opacity .15s}.panel-accordion__header:hover{opacity:.85}.panel-accordion__header:disabled{cursor:not-allowed;opacity:.4}.panel-accordion__header:disabled:hover{opacity:.4}.panel-accordion__header-left{display:flex;align-items:center;gap:var(--spacing-2);flex-shrink:0}.panel-accordion__number{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--zinc-700);color:var(--zinc-300);font-size:10px;font-weight:600;flex-shrink:0;line-height:1;transition:background .2s,color .2s}.panel-accordion__item--active .panel-accordion__number{background:var(--site-color, var(--zinc-600));color:var(--zinc-900)}.panel-accordion__item--completed .panel-accordion__number{background:var(--site-color, var(--zinc-600));color:var(--zinc-900)}.panel-accordion__title{font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-200)}.panel-accordion__item--locked .panel-accordion__title{color:var(--zinc-500)}.panel-accordion__summary{flex:1;font-size:var(--font-size-xs);color:var(--zinc-400);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:var(--spacing-1)}.panel-accordion__chevron{flex-shrink:0;color:var(--zinc-500);transition:transform .2s ease}.panel-accordion__item--active .panel-accordion__chevron{transform:rotate(180deg)}.panel-accordion__body{display:none;padding-bottom:var(--spacing-4)}.panel-accordion__item--active .panel-accordion__body{display:block}.panel-help-card{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-3);background:var(--zinc-850);border:1px solid var(--zinc-700);border-radius:var(--radius)}.panel-help-card__icon{flex-shrink:0;color:var(--zinc-400);margin-top:1px}.panel-help-card__text{margin:0;font-size:var(--font-size-xs);color:var(--zinc-400);line-height:1.5}.panel-help-card__text strong{color:var(--zinc-200);font-weight:500}.panel-divider-or{display:flex;align-items:center;gap:var(--spacing-3);margin:var(--spacing-3) 0;color:var(--zinc-500);font-size:var(--font-size-xs)}.panel-divider-or::before,.panel-divider-or::after{content:"";flex:1;height:1px;background:var(--zinc-700)}.task-card-list{display:flex;flex-direction:column;gap:var(--spacing-2)}.task-card{display:flex;align-items:flex-start;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);background:var(--zinc-800);border:1px solid var(--zinc-700);border-left:3px solid var(--site-color, var(--color-minor));border-radius:var(--radius);cursor:grab;transition:background var(--transition-fast),border-color var(--transition-fast)}.task-card:hover{background:var(--zinc-750);border-color:var(--zinc-600);border-left-color:var(--site-color, var(--color-minor))}.task-card:active{cursor:grabbing}.task-card--assigned{border-left:3px solid var(--site-color, var(--color-minor));background:color-mix(in srgb, var(--site-color, var(--color-minor)) 10%, transparent)}.task-card--assigned:hover{background:color-mix(in srgb, var(--site-color, var(--color-minor)) 15%, transparent)}.task-card__body{flex:1;min-width:0}.task-card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-2);margin-bottom:2px}.task-card__site{font-size:10px;font-weight:500;color:var(--zinc-500);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-card__badge{display:inline-flex;align-items:center;justify-content:center;padding:1px 6px;background:var(--zinc-700);color:var(--zinc-300);border-radius:var(--radius-sm);font-size:10px;font-weight:600;white-space:nowrap;flex-shrink:0}.task-card--assigned .task-card__badge{background:color-mix(in srgb, var(--site-color, var(--color-minor)) 20%, transparent);color:var(--site-color, var(--color-minor-light))}.task-card__name{flex:1;min-width:0;font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-100);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-card__actions{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0;padding-top:2px}.task-card__check{color:var(--site-color, var(--color-minor))}.task-card .panel-list__details{display:none;margin-top:var(--spacing-1)}.task-card--expanded .panel-list__details{display:flex;flex-direction:column;gap:2px}.empty-state-card__icon{opacity:.4;margin-bottom:8px}.panel-footer-content__row{display:flex;gap:6px;align-items:stretch}.input--hours{width:70px;flex-shrink:0}.btn--no-shrink{flex-shrink:0}.btn--align-end{align-self:flex-end}.show-panel__header-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--zinc-800, #27272a);flex-shrink:0}.show-panel__title-row{display:flex;align-items:center;gap:8px;color:var(--zinc-100)}.show-panel__title-row svg{color:var(--color-minor, #d4a574);flex-shrink:0}.show-panel__title{font-size:.72rem;font-weight:700;text-transform:capitalize;letter-spacing:.06em;color:var(--zinc-100);margin:0}.show-panel__close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:none;background:rgba(0,0,0,0);color:var(--zinc-500);cursor:pointer;transition:all 150ms ease;flex-shrink:0}.show-panel__close:hover{background:var(--zinc-800);color:var(--zinc-200)}.show-panel__scroll{display:flex;flex-direction:column;flex:1;overflow-y:auto;min-height:0}.show-panel__scroll::-webkit-scrollbar{width:4px}.show-panel__scroll::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.show-panel__scroll::-webkit-scrollbar-thumb{background:var(--zinc-700);border-radius:99rem}.show-panel__loading{display:flex;align-items:center;justify-content:center;padding:40px 0}.show-panel__spinner{width:20px;height:20px;border:2px solid var(--zinc-700);border-top-color:var(--color-minor, #d4a574);border-radius:50%;animation:show-panel-spin .6s linear infinite}@keyframes show-panel-spin{to{transform:rotate(360deg)}}.show-panel__error{text-align:center;color:var(--zinc-500);font-size:.75rem;padding:40px 0}.show-panel__tags{display:flex;flex-wrap:wrap;gap:6px;padding:16px 16px 8px 16px}.show-panel__tag{display:inline-flex;align-items:center;gap:4px;font-size:.62rem;font-weight:600;padding:3px 8px;border-radius:4px;transition:all 150ms ease}.show-panel__tag svg{flex-shrink:0}.show-panel__tag--category{background:var(--zinc-800, #27272a);color:var(--zinc-300, #d4d4d8);border:1px solid var(--zinc-700, #3f3f46)}.show-panel__tag--category:hover{border-color:var(--zinc-600, #52525b)}.show-panel__tag--project{background:color-mix(in srgb, var(--project-color, #3b82f6) 12%, transparent);color:var(--project-color, #3b82f6);border:1px solid color-mix(in srgb, var(--project-color, #3b82f6) 20%, transparent)}.show-panel__tag--project:hover{background:color-mix(in srgb, var(--project-color, #3b82f6) 18%, transparent)}.show-panel__grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:14px 16px 0;background:var(--zinc-800, #27272a);border-radius:8px;overflow:hidden}.show-panel__cell{background:var(--zinc-900, #18181b);padding:10px 12px;transition:background 150ms ease}.show-panel__cell:hover{background:var(--zinc-850, #1f1f23)}.show-panel__cell:first-child{border-radius:8px 0 0 0}.show-panel__cell:nth-child(2){border-radius:0 8px 0 0}.show-panel__cell:nth-child(3){border-radius:0 0 0 8px}.show-panel__cell:last-child{border-radius:0 0 8px 0}.show-panel__cell-label{font-size:.55rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--zinc-500);margin-bottom:4px}.show-panel__cell-value{font-size:.7rem;font-weight:500;color:var(--zinc-200);display:flex;align-items:center;gap:5px}.show-panel__cell-value svg{color:var(--zinc-500);flex-shrink:0}.show-panel__cell-value--late{color:#f87171}.show-panel__cell-value--late svg{color:#f87171}.show-panel__cell-empty{color:var(--zinc-600)}.show-panel__section{padding:16px}.show-panel__section-title{font-size:.55rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--zinc-500);margin-bottom:8px}.show-panel__section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;line-height:1}.show-panel__section-header-left{display:flex;align-items:center;gap:8px;line-height:1}.show-panel__section-header-left .show-panel__section-title{margin-bottom:0}.show-panel__section-counter{font-size:.58rem;font-weight:600;color:var(--zinc-500);background:var(--zinc-850, #1f1f23);padding:2px 7px;border-radius:4px;line-height:1}.show-panel__section-add{display:inline-flex;align-items:center;gap:4px;font-size:.62rem;font-weight:500;color:var(--zinc-500);text-decoration:none;padding:3px 6px;border-radius:4px;line-height:1;transition:all 150ms ease}.show-panel__section-add:hover{color:var(--color-minor, #d4a574);background:var(--zinc-800, #27272a)}.show-panel__description-block{font-size:.72rem;line-height:1.55;color:var(--zinc-400);background:var(--zinc-850, #1f1f23);border:1px solid var(--zinc-800, #27272a);border-radius:8px;padding:10px 12px;white-space:pre-wrap}.show-panel__progress-top{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px}.show-panel__progress-pct{font-size:.72rem;font-weight:600;color:var(--zinc-400)}.show-panel__progress-pct--done{color:#22c55e}.show-panel__progress-fraction{font-size:.62rem;color:var(--zinc-500)}.show-panel__progress-fraction strong{color:var(--zinc-400);font-weight:600}.show-panel__progress-bar{width:100%;height:4px;background:var(--zinc-700);border-radius:2px;overflow:hidden}.show-panel__progress-fill{height:100%;border-radius:2px;background:var(--zinc-500);transition:width 400ms ease}.show-panel__progress-fill--animated{min-width:4px}.show-panel__progress-fill--done{background:#22c55e}.show-panel__avatars{display:flex;align-items:center}.show-panel__avatar-img{width:22px;height:22px;border-radius:50%;object-fit:cover;border:2px solid var(--zinc-900, #18181b);margin-right:-5px}.show-panel__avatar-circle{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.5rem;font-weight:700;flex-shrink:0;text-transform:uppercase;border:2px solid var(--zinc-900, #18181b);margin-right:-5px}.show-panel__avatar-circle--more{background:var(--zinc-700);color:var(--zinc-300);font-size:.48rem}.show-panel__employees{display:flex;flex-direction:column;gap:4px}.show-panel__employee{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:6px;transition:background 120ms ease}.show-panel__employee:hover{background:var(--zinc-850, #1f1f23)}.show-panel__employee-avatar{width:22px;height:22px;border-radius:50%;object-fit:cover}.show-panel__employee-initials{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.5rem;font-weight:700;flex-shrink:0;text-transform:uppercase}.show-panel__employee-name{font-size:.7rem;font-weight:500;color:var(--zinc-300)}.show-panel__checklist{display:flex;flex-direction:column;gap:2px}.show-panel__checklist-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:6px;cursor:pointer;transition:background 150ms ease;position:relative}.show-panel__checklist-item:hover{background:var(--zinc-850, #1f1f23)}.show-panel__checklist-item:not(:last-child)::after{content:"";position:absolute;bottom:0;left:36px;right:10px;height:1px;background:var(--zinc-800, #27272a)}.show-panel__checklist-item input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.show-panel__checklist-item--done .show-panel__checklist-name{text-decoration:line-through;color:var(--zinc-600)}.show-panel__checklist-check{width:18px;height:18px;border-radius:5px;border:2px solid var(--zinc-600);background:rgba(0,0,0,0);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all 300ms cubic-bezier(0.34, 1.56, 0.64, 1)}.show-panel__checklist-check svg{opacity:0;transform:scale(0.5);transition:all 300ms cubic-bezier(0.34, 1.56, 0.64, 1);color:#fff}.show-panel__checklist-item:hover .show-panel__checklist-check{border-color:var(--color-minor, #d4a574);background:var(--color-minor-alpha, rgba(212, 165, 116, 0.1))}input:checked+.show-panel__checklist-check{background:#22c55e;border-color:#22c55e;animation:show-panel-check-bounce 400ms cubic-bezier(0.34, 1.56, 0.64, 1)}input:checked+.show-panel__checklist-check svg{opacity:1;transform:scale(1)}@keyframes show-panel-check-bounce{0%{transform:scale(1)}30%{transform:scale(0.85)}60%{transform:scale(1.1)}100%{transform:scale(1)}}.show-panel__checklist-name{font-size:.72rem;font-weight:500;color:var(--zinc-300);flex:1;min-width:0;transition:all 150ms ease}.show-panel__prio-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.show-panel__prio-dot--low{background:#4ade80;box-shadow:0 0 6px rgba(34,197,94,.3)}.show-panel__prio-dot--medium{background:#fbbf24;box-shadow:0 0 6px rgba(251,191,36,.3)}.show-panel__prio-dot--high{background:#f87171;box-shadow:0 0 6px rgba(239,68,68,.3)}.show-panel__status-badge{display:inline-flex;align-items:center;gap:5px;font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:3px 10px;border-radius:999px;color:#fff}.show-panel__status-badge::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.show-panel__late-badge{font-size:.55rem;font-weight:600;padding:2px 8px;border-radius:999px;background:rgba(239,68,68,.15);color:#f87171}.show-panel__actions{display:flex;gap:6px;padding:14px 16px 16px;margin-top:4px;border-top:1px solid var(--zinc-800, #27272a)}.show-panel__action-btn{display:flex;align-items:center;justify-content:center;gap:5px;padding:7px 12px;border:1px solid var(--zinc-700);border-radius:6px;background:rgba(0,0,0,0);color:var(--zinc-400);font-size:.65rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all 150ms ease}.show-panel__action-btn:hover{background:var(--zinc-800);color:var(--zinc-200)}.show-panel__action-btn--primary{flex:1;background:var(--color-minor, #d4a574);border-color:var(--color-minor, #d4a574);color:#fff}.show-panel__action-btn--primary:hover{background:var(--color-minor-dark, #b8905e);transform:translateY(-1px);box-shadow:0 4px 12px var(--color-minor-alpha, rgba(212, 165, 116, 0.25))}.show-panel__action-btn--edit:hover{color:var(--color-minor, #d4a574);border-color:var(--color-minor-alpha, rgba(212, 165, 116, 0.3));background:var(--color-minor-alpha, rgba(212, 165, 116, 0.08))}.show-panel__action-btn--danger{border-color:rgba(0,0,0,0)}.show-panel__action-btn--danger:hover{border-color:rgba(239,68,68,.3);color:#f87171;background:rgba(239,68,68,.08)}.show-panel__filter-list{display:flex;flex-direction:column;gap:2px;flex:1;min-height:0;overflow-y:auto}.show-panel__filter-list::-webkit-scrollbar{width:4px}.show-panel__filter-list::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.show-panel__filter-list::-webkit-scrollbar-thumb{background:var(--zinc-700);border-radius:99rem}.show-panel__filter-option{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer;transition:background 150ms ease;white-space:nowrap}.show-panel__filter-option:hover{background:var(--zinc-850, #1f1f23)}.show-panel__filter-option input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.show-panel__filter-checkbox{width:18px;height:18px;border-radius:5px;border:2px solid var(--zinc-600);background:rgba(0,0,0,0);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all 150ms ease}.show-panel__filter-checkbox::after{content:"";display:block;width:10px;height:10px;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 6l3 3 5-5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;opacity:0;transform:scale(0.5);transition:all 150ms ease}input[type=checkbox]:checked+.show-panel__filter-checkbox{background:var(--color-minor, #d4a574);border-color:var(--color-minor, #d4a574)}input[type=checkbox]:checked+.show-panel__filter-checkbox::after{opacity:1;transform:scale(1)}.show-panel__filter-avatar{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.5rem;font-weight:700;flex-shrink:0;text-transform:uppercase}.show-panel__filter-label{flex:1;min-width:0;font-size:.72rem;font-weight:500;color:var(--zinc-200);overflow:hidden;text-overflow:ellipsis}.show-panel__filter-label--muted{color:var(--zinc-500);font-style:italic}.show-panel__filter-count{font-size:.62rem;font-weight:600;color:var(--zinc-500);background:var(--zinc-850, #1f1f23);padding:2px 7px;border-radius:4px;flex-shrink:0}.show-panel--editable{outline:1px dashed var(--zinc-600, #52525b);outline-offset:2px;border-radius:4px;padding:2px 4px;cursor:text}.show-panel--editable:focus{outline-color:var(--color-minor, #d4a574)}.alert{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-sm);font-size:var(--font-size-sm);line-height:1.5;background:var(--zinc-800);border:1px solid var(--zinc-600);border-left:3px solid var(--zinc-500);color:var(--zinc-200)}.alert svg{flex-shrink:0;width:18px;height:18px;margin-top:1px}.alert-content{flex:1;min-width:0}.alert-title{font-weight:600;color:var(--zinc-100);margin-bottom:var(--spacing-1)}.alert-message{color:var(--zinc-300)}.alert-list,.decompte-inconsistencies-list{margin:var(--spacing-2) 0 0 0;padding-left:var(--spacing-4);font-size:var(--font-size-xs);color:var(--zinc-400)}.alert-list li,.decompte-inconsistencies-list li{margin-bottom:var(--spacing-1);line-height:1.5}.alert-list li:last-child,.decompte-inconsistencies-list li:last-child{margin-bottom:0}.alert-bullets{display:flex;flex-direction:column;gap:var(--spacing-2)}.alert-bullets .alert-list,.alert-bullets .decompte-inconsistencies-list{margin:0;padding-left:var(--spacing-5);font-size:var(--font-size-sm);color:var(--zinc-300);list-style-type:disc}.alert-bullets .alert-list li,.alert-bullets .decompte-inconsistencies-list li{margin-bottom:var(--spacing-2);padding-left:var(--spacing-1)}.alert-bullets .alert-list li::marker,.alert-bullets .decompte-inconsistencies-list li::marker{color:var(--zinc-500)}.alert-close{flex-shrink:0;background:none;border:none;padding:var(--spacing-1);margin:calc(-1*var(--spacing-1));cursor:pointer;color:var(--zinc-500);border-radius:var(--radius-sm);transition:all .15s ease}.alert-close:hover{background:var(--zinc-700);color:var(--zinc-300)}.alert-close svg{width:16px;height:16px}.alert-warning{background:rgba(245,158,11,.12);border-left-color:var(--color-minor);border-color:rgba(245,158,11,.25)}.alert-warning svg{color:var(--color-minor)}.alert-warning .alert-title{color:var(--color-minor-light)}.alert-error{background:rgba(239,68,68,.12);border-left-color:var(--color-red);border-color:rgba(239,68,68,.25)}.alert-error svg{color:var(--color-red)}.alert-error .alert-title{color:var(--color-red-light)}.alert-success{border-left-color:#22c55e}.alert-success svg{color:#22c55e}.alert-info{border-left-color:var(--zinc-400)}.alert-info svg{color:var(--zinc-400)}.flash{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-4);padding:var(--spacing-4) var(--spacing-5);margin-bottom:var(--spacing-4);border-radius:var(--radius);font-size:var(--font-size-base);font-weight:500;background:var(--zinc-800);border:1px solid var(--zinc-600);border-left:5px solid var(--zinc-500);color:#fff;box-shadow:0 4px 12px rgba(0,0,0,.3);position:relative}.flash-message{flex:1;line-height:1.4}.flash-close{background:hsla(0,0%,100%,.1);border:none;border-radius:var(--radius-sm);width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1;cursor:pointer;color:#fff;transition:all .2s ease;flex-shrink:0}.flash-close:hover{background:hsla(0,0%,100%,.2);transform:scale(1.1)}.flash-notice{border-left-color:var(--color-minor);background:linear-gradient(90deg, var(--color-minor-alpha) 0%, var(--zinc-800) 100%)}.flash-alert{border-left-color:var(--color-red);background:linear-gradient(90deg, var(--color-red-alpha) 0%, var(--zinc-800) 100%)}.toast-container{position:fixed;top:var(--spacing-4);right:var(--spacing-4);z-index:9999;display:flex;flex-direction:column;gap:var(--spacing-2);pointer-events:none}.toast{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);background:var(--zinc-800);border:1px solid var(--zinc-600);border-left:3px solid var(--zinc-500);border-radius:var(--radius-sm);font-size:var(--font-size-sm);max-width:380px;pointer-events:auto;animation:toast-slide-in .3s ease-out;color:var(--zinc-200)}.toast.toast-leaving{animation:toast-slide-out .2s ease-in forwards}@keyframes toast-slide-in{from{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes toast-slide-out{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}.toast-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.toast-icon svg{width:18px;height:18px}.toast-content{flex:1;min-width:0}.toast-title{font-weight:600;color:var(--zinc-100);margin-bottom:2px}.toast-message{color:var(--zinc-300);line-height:1.4;word-break:break-word}.toast-close{flex-shrink:0;background:none;border:none;padding:var(--spacing-1);margin:calc(-1*var(--spacing-1));cursor:pointer;color:var(--zinc-500);border-radius:var(--radius-sm);transition:all .15s ease}.toast-close:hover{background:var(--zinc-700);color:var(--zinc-300)}.toast-close svg{width:16px;height:16px}.toast-warning{border-left-color:var(--color-minor)}.toast-warning .toast-icon{color:var(--color-minor)}.toast-warning .toast-title{color:var(--color-minor-light)}.toast-error{border-left-color:var(--color-red)}.toast-error .toast-icon{color:var(--color-red)}.toast-error .toast-title{color:var(--color-red-light)}.toast-success{border-left-color:#22c55e}.toast-success .toast-icon{color:#22c55e}.toast-success .toast-title{color:#4ade80}.toast-info{border-left-color:var(--zinc-400)}.toast-info .toast-icon{color:var(--zinc-400)}.toast-info .toast-title{color:var(--zinc-300)}.inline-warning,.decompte-warning{display:inline-flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);margin-bottom:var(--spacing-3);background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.25);border-left:3px solid var(--color-minor);border-radius:var(--radius-sm);color:var(--zinc-200);font-size:var(--font-size-sm)}.inline-warning svg,.decompte-warning svg{color:var(--color-minor);flex-shrink:0;width:18px;height:18px}.inline-warning-error,.decompte-warning-error{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.25);border-left-color:var(--color-red);display:flex;align-items:flex-start}.inline-warning-error svg,.decompte-warning-error svg{color:var(--color-red);margin-top:2px}.inline-warning-content,.decompte-warning-content{display:flex;flex-direction:column;gap:var(--spacing-1)}.inline-warning-content strong,.decompte-warning-content strong{color:var(--zinc-100);font-weight:600}.impersonation-banner{background:var(--zinc-800);color:var(--zinc-200);border:1px solid var(--zinc-600);border-left:3px solid var(--color-red);border-radius:var(--radius-sm);padding:var(--spacing-3) var(--spacing-4);margin-bottom:var(--spacing-4);font-size:var(--font-size-sm);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-3)}.impersonation-btn{background:var(--color-red);color:#fff;border:none;padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-sm);font-size:var(--font-size-xs);cursor:pointer;white-space:nowrap;transition:background-color .2s}.impersonation-btn:hover{background:var(--color-red-dark)}.form-errors{padding:var(--spacing-3) var(--spacing-4);margin-bottom:var(--spacing-4);background:var(--zinc-800);border:1px solid var(--zinc-600);border-left:3px solid var(--color-red);border-radius:var(--radius-sm);color:var(--zinc-200);font-size:var(--font-size-sm)}.form-errors ul{margin:0;padding-left:var(--spacing-4)}.form-errors li{margin-bottom:var(--spacing-1);color:var(--zinc-300)}.form-errors li:last-child{margin-bottom:0}.import-banner,.import-error-banner,.import-success-banner{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-4);margin-bottom:var(--spacing-4);background:var(--zinc-800);border:1px solid var(--zinc-600);border-left:3px solid var(--zinc-500);border-radius:var(--radius-sm);color:var(--zinc-200)}.import-banner svg,.import-error-banner svg,.import-success-banner svg{flex-shrink:0;width:24px;height:24px}.import-banner h3,.import-error-banner h3,.import-success-banner h3{margin:0 0 var(--spacing-1) 0;font-size:var(--font-size-base);font-weight:600;color:var(--zinc-100)}.import-banner p,.import-error-banner p,.import-success-banner p{margin:0;color:var(--zinc-300)}.import-banner-success,.import-success-banner{border-left-color:#22c55e}.import-banner-success svg,.import-success-banner svg{color:#22c55e}.import-banner-error,.import-error-banner{border-left-color:var(--color-red)}.import-banner-error svg,.import-error-banner svg{color:var(--color-red)}.alert-danger,.card-danger{display:flex;flex-direction:column;gap:var(--spacing-3);padding:var(--spacing-4);background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.25);border-left:3px solid var(--color-red);border-radius:var(--radius-sm)}.danger-zone{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-4)}.danger-zone-content{flex:1;min-width:0}.danger-zone-content h3{margin:0 0 var(--spacing-1);font-size:var(--font-size-base);font-weight:600;color:var(--zinc-100);text-transform:none;letter-spacing:normal}.danger-zone-content p{margin:0;font-size:var(--font-size-sm);line-height:1.5;color:var(--zinc-300)}.danger-zone-content ul{margin:var(--spacing-2) 0 0 0;padding-left:var(--spacing-5);font-size:var(--font-size-sm);color:var(--zinc-400);list-style-type:disc}.danger-zone-content ul li{margin-bottom:var(--spacing-1);line-height:1.5}.danger-zone-content ul li:last-child{margin-bottom:0}.danger-zone-content ul li::marker{color:var(--color-red)}.danger-zone-actions{flex-shrink:0;display:flex;align-items:center;gap:var(--spacing-2)}.form-section--danger{border-bottom:none;border-top:none;margin-top:var(--spacing-5);padding-top:var(--spacing-4);margin-bottom:0;padding-bottom:var(--spacing-4)}.danger-zone-inline{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-4);padding:var(--spacing-3) var(--spacing-4);background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.25);border-left:3px solid var(--color-red);border-radius:var(--radius-sm)}.danger-zone-inline__text{font-size:var(--font-size-sm);color:var(--zinc-200);font-weight:500}.danger-zone-inline__detail{color:var(--zinc-400);font-size:var(--font-size-xs);font-weight:400}.link{color:inherit;text-decoration:none}.text-lowercase{text-transform:lowercase}.text-capitalize-first{text-transform:lowercase}.text-capitalize-first::first-letter{text-transform:uppercase}.address-cell{line-height:1.4}.address-city{color:var(--zinc-400);font-size:var(--font-size-xs)}.breadcrumb{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);padding-top:20px;padding-left:20px;flex-shrink:0}.breadcrumb__link{color:var(--zinc-400);text-decoration:none}.breadcrumb__link:hover{color:var(--zinc-200)}.breadcrumb__sep{color:var(--zinc-600)}.breadcrumb__current{color:var(--zinc-200);font-weight:500}.grid{display:grid;gap:var(--spacing-6)}.grid-2{grid-template-columns:repeat(2, 1fr)}.details{display:grid;grid-template-columns:180px 1fr;gap:var(--spacing-3) var(--spacing-4)}.details dt{font-weight:500;color:var(--zinc-400);font-size:var(--font-size-sm)}.details dd{margin:0}.detail-value{font-size:var(--font-size-sm);color:var(--zinc-300)}.color-picker-wrapper{display:flex;align-items:center;gap:var(--spacing-2)}.color-picker-input{width:60px;height:32px;padding:2px;border:1px solid var(--zinc-700);border-radius:var(--radius-sm);background:var(--zinc-800);cursor:pointer}.color-picker-input::-webkit-color-swatch-wrapper{padding:0}.color-picker-input::-webkit-color-swatch{border:none;border-radius:var(--radius-sm)}.contact-info-centered{text-align:center}.contact-intro{font-size:var(--font-size-base);margin-bottom:var(--spacing-4)}.contact-details{background:var(--zinc-800);border-radius:var(--radius-lg);padding:var(--spacing-4);margin-bottom:var(--spacing-4)}.contact-item{display:flex;align-items:center;justify-content:center;gap:var(--spacing-2);margin-bottom:var(--spacing-2)}.contact-item:last-child{margin-bottom:0}.contact-item a{color:var(--zinc-300);text-decoration:none;font-weight:500}.contact-item a:hover{text-decoration:underline}.contact-item svg{color:var(--zinc-500);flex-shrink:0}.contact-note{font-size:var(--font-size-sm);color:var(--zinc-500);margin:0}.show-details-layout{display:flex;gap:var(--spacing-6);align-items:flex-start;padding:var(--spacing-5) var(--spacing-4)}.show-details-avatar{flex-shrink:0;padding-top:var(--spacing-1)}.show-details-content{flex:1;min-width:0;max-width:520px}.show-details-section{margin-bottom:var(--spacing-5);padding-bottom:var(--spacing-4);border-bottom:1px solid var(--zinc-800)}.show-details-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.show-details-section h3{font-size:var(--font-size-xs);color:var(--zinc-400);margin:0 0 var(--spacing-3) 0;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.show-details-row{display:flex;align-items:baseline;padding:var(--spacing-1) 0;font-size:var(--font-size-sm);line-height:1.6}.show-details-label{width:160px;flex-shrink:0;color:var(--zinc-500)}.show-details-value{color:var(--zinc-300)}@media(max-width: 1024px){.show-details-layout{flex-direction:column}}.empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-4);text-align:center;padding:var(--spacing-6) var(--spacing-4);color:var(--zinc-300)}.empty-state h3{color:var(--zinc-50);font-size:1.3rem;font-weight:600;margin-bottom:var(--spacing-2);margin-top:var(--spacing-3)}.empty-state>p.text-muted{margin-bottom:var(--spacing-4);font-size:.95rem;color:var(--zinc-400)}.empty-state__tutorial{max-width:900px;margin:0 auto var(--spacing-5);display:grid;grid-template-columns:repeat(4, 1fr);gap:var(--spacing-4)}.empty-state__btn{margin-top:0}.empty-state__btn .btn-chevron{margin-left:var(--spacing-2);transition:transform .2s ease}.empty-state__planning-selector{position:relative;display:inline-block}.empty-state__planning-selector .btn:hover .btn-chevron{transform:translateY(2px)}.empty-state-dropdown-menu{position:absolute;top:calc(100% + var(--spacing-2));left:50%;transform:translateX(-50%);min-width:320px;max-width:400px;background:var(--zinc-800);border:1px solid var(--zinc-600);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.4);overflow:hidden;z-index:1000;max-height:150px;overflow-y:auto}.empty-state-dropdown-menu.hidden{display:none}.empty-state-dropdown-item{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);cursor:pointer;transition:background-color .2s ease;text-decoration:none;color:var(--zinc-50);border:none;background:none;width:100%;text-align:left}.empty-state-dropdown-item:hover{background-color:var(--zinc-700)}.empty-state-dropdown-item__content{flex:1;min-width:0}.empty-state-dropdown-item__name{font-weight:400;font-size:.9rem;color:var(--zinc-50);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-state-dropdown-item__client{font-size:.85rem;color:var(--zinc-400);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-state-dropdown-item svg{flex-shrink:0;color:var(--zinc-400)}.empty-state-dropdown-item--create{color:var(--zinc-600);font-weight:600}.empty-state-dropdown-item--create:hover{background-color:rgba(193,196,88,.15)}.empty-state-dropdown-item--create svg{color:var(--zinc-600)}.empty-state-dropdown-divider{height:1px;background-color:var(--zinc-700);margin:var(--spacing-2) 0}.tutorial-step{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-2);padding:var(--spacing-4);background-color:var(--zinc-800);border-radius:12px;border:1px solid var(--zinc-700);transition:transform .2s ease,box-shadow .2s ease}.tutorial-step:hover{transform:translateY(-3px);box-shadow:0 6px 16px rgba(0,0,0,.3);background-color:var(--zinc-700);border-color:var(--zinc-600)}.tutorial-step__number{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--zinc-600);color:var(--zinc-900);border-radius:50%;font-weight:700;font-size:1rem}.tutorial-step__content{text-align:center}.tutorial-step__content h4{color:var(--zinc-50);font-size:.95rem;font-weight:600;margin:0 0 var(--spacing-1) 0}.tutorial-step__content p{color:var(--zinc-300);font-size:.8rem;margin:0;line-height:1.4}.tutorial-step__content p strong{color:var(--zinc-600);font-weight:600}.empty-state-card{text-align:center;padding:var(--spacing-8);color:var(--zinc-300)}.empty-state-card p{margin-bottom:var(--spacing-4);color:var(--zinc-400)}.empty-state-icon{width:48px;height:48px;margin-bottom:var(--spacing-4);color:var(--zinc-500)}.progress-bar{width:40px;height:4px;background:var(--zinc-600);border-radius:2px;overflow:hidden}.progress-bar-inline{width:60px;height:4px;background:var(--zinc-600);border-radius:2px;overflow:hidden;display:inline-block;vertical-align:middle;margin-right:var(--spacing-2)}.progress-bar-lg{width:100%;max-width:200px;height:8px;background:var(--zinc-600);border-radius:4px;overflow:hidden;margin-bottom:var(--spacing-2)}.progress-fill{height:100%;background:var(--zinc-600);border-radius:inherit;transition:width .3s ease}.context-menu{position:fixed;background:var(--zinc-800);border:1px solid var(--zinc-600);border-radius:var(--radius);box-shadow:0 4px 12px rgba(0,0,0,.4),0 0 0 1px rgba(0,0,0,.2);min-width:180px;z-index:1100;padding:var(--spacing-1);animation:contextMenuFadeIn .1s ease-out}@keyframes contextMenuFadeIn{from{opacity:0;transform:scale(0.95)}to{opacity:1;transform:scale(1)}}.context-menu.hidden{display:none}.context-menu-header{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-xs);font-weight:600;color:var(--zinc-400);border-bottom:1px solid var(--zinc-700)}.context-menu-distance{display:flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);color:var(--zinc-400);border-bottom:1px solid var(--zinc-700);margin-bottom:var(--spacing-1)}.context-menu-distance svg{flex-shrink:0}.context-menu-item{display:flex;align-items:center;gap:var(--spacing-2);width:100%;padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);color:var(--zinc-200);background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:background var(--transition-fast)}.context-menu-item:hover{background:var(--zinc-700)}.context-menu-item svg{flex-shrink:0;color:var(--zinc-400)}.context-menu-item-danger{color:#ef4444}.context-menu-item-danger svg{color:#ef4444}.context-menu-item-danger:hover{background:rgba(239,68,68,.15);color:#f87171}.context-menu-item-danger:hover svg{color:#f87171}.context-menu-tasks__header{padding:var(--spacing-1) var(--spacing-3);font-size:10px;font-weight:500;color:var(--zinc-500);text-transform:uppercase;letter-spacing:.03em}.context-menu-tasks__item{padding:2px var(--spacing-3) 2px var(--spacing-4);font-size:var(--font-size-xs);color:var(--zinc-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px}.context-menu-separator{height:1px;background:var(--zinc-700);margin:var(--spacing-1) 0}.gcm--copy-mode{cursor:copy}.gcm--copy-mode .gcm-timeline__row{cursor:copy}.gcm-segment--copy-preview{background:var(--segment-color, var(--blue-500));border-radius:var(--radius-sm);height:24px;opacity:.7;pointer-events:none;border:2px dashed currentColor}.gcm-segment--just-created{animation:segmentCreated .5s ease-out}@keyframes segmentCreated{0%{transform:scale(0.9);opacity:.5}50%{transform:scale(1.05)}100%{transform:scale(1);opacity:1}}.gcm-dialog{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:var(--spacing-4)}.gcm-dialog--visible{display:flex}.gcm-dialog__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.5);animation:gcm-backdrop-fade .15s ease-out}@keyframes gcm-backdrop-fade{from{opacity:0}to{opacity:1}}.gcm-dialog__content{position:relative;width:100%;max-width:360px;padding:var(--spacing-5);background:var(--zinc-900);border-radius:var(--radius-lg);box-shadow:0 4px 24px rgba(0,0,0,.3);animation:gcm-dialog-enter .15s ease-out}@keyframes gcm-dialog-enter{from{opacity:0;transform:scale(0.98)}to{opacity:1;transform:scale(1)}}.gcm-dialog__title{margin:0 0 var(--spacing-2);font-size:var(--font-size-base);font-weight:600;color:var(--zinc-100);letter-spacing:-0.01em}.gcm-dialog__message{margin:0 0 var(--spacing-5);font-size:var(--font-size-sm);color:var(--zinc-400);line-height:1.6}.gcm-dialog__actions{display:flex;justify-content:flex-end;gap:var(--spacing-2)}.gcm-dialog__cancel,.gcm-dialog__confirm{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);font-weight:500;border-radius:var(--radius);cursor:pointer;transition:background .1s ease,opacity .1s ease}.gcm-dialog__cancel:focus-visible,.gcm-dialog__confirm:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}.gcm-dialog__cancel{background:rgba(0,0,0,0);border:none;color:var(--zinc-400)}.gcm-dialog__cancel:hover{color:var(--zinc-200)}.gcm-dialog__confirm{background:var(--zinc-100);border:none;color:var(--zinc-900)}.gcm-dialog__confirm:hover{background:#fff}.gcm-dialog__confirm--danger{background:var(--red-500);color:#fff}.gcm-dialog__confirm--danger:hover{background:var(--red-400)}.gcm-dialog__confirm--warning{background:var(--amber-500);color:var(--zinc-900)}.gcm-dialog__confirm--warning:hover{background:var(--amber-400)}@media(prefers-reduced-motion: reduce){.gcm-dialog__content,.gcm-dialog__backdrop{animation:none}}.color-picker{display:flex;gap:var(--spacing-2);flex-wrap:wrap}.color-option{cursor:pointer}.color-option input{display:none}.color-option .color-swatch{width:32px;height:32px;border-radius:var(--radius);border:2px solid rgba(0,0,0,0);transition:transform var(--transition),border-color var(--transition)}.color-option input:checked+.color-swatch{border-color:#fff;transform:scale(1.1)}.color-option:hover .color-swatch{transform:scale(1.05)}.color-picker-wrapper{display:flex;align-items:center;gap:var(--spacing-2)}.color-picker-input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.color-picker-preview{width:36px;height:36px;border-radius:var(--radius);border:2px solid var(--zinc-700);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.color-picker-preview:hover{transform:scale(1.05);box-shadow:0 2px 8px rgba(0,0,0,.15)}.color-palette{display:grid;grid-template-columns:repeat(auto-fill, minmax(48px, 1fr));gap:var(--spacing-2);margin-top:var(--spacing-2)}.color-palette-btn{width:48px;height:48px;border-radius:var(--radius-md);border:2px solid rgba(0,0,0,0);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px rgba(0,0,0,.2);position:relative}.color-palette-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.3);border-color:var(--zinc-600)}.color-palette-btn.active{border-color:var(--zinc-50);box-shadow:0 0 0 3px hsla(0,0%,100%,.2)}.color-palette-btn svg{color:#1a1a1a;filter:drop-shadow(0 1px 2px rgba(255, 255, 255, 0.3))}.color-palette-large{display:grid;grid-template-columns:repeat(auto-fill, minmax(32px, 1fr));gap:var(--spacing-1);margin-top:var(--spacing-2)}.color-palette-btn-large{position:relative;width:100%;height:32px;border-radius:var(--radius);border:2px solid var(--zinc-700);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;background:var(--zinc-800);overflow:hidden}.color-palette-btn-large .color-display{position:absolute;inset:0;width:100%;height:100%;transition:transform var(--transition-fast)}.color-palette-btn-large .color-checkmark{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transform:scale(0.5);transition:all .2s cubic-bezier(0.34, 1.56, 0.64, 1);z-index:2}.color-palette-btn-large .color-checkmark svg{color:#fff;filter:drop-shadow(0 2px 4px rgba(0, 0, 0, 0.8));width:16px;height:16px}.color-palette-btn-large:hover{transform:translateY(-1px);box-shadow:0 2px 4px rgba(0,0,0,.4);border-color:var(--zinc-600)}.color-palette-btn-large:hover .color-display{transform:scale(1.05)}.color-palette-btn-large.checked{border-color:#fff}.color-palette-btn-large.checked .color-checkmark{opacity:1;visibility:visible;transform:scale(1)}.color-palette-compact{display:grid;grid-template-columns:repeat(auto-fill, minmax(24px, 1fr));gap:3px}.color-palette-btn-compact{position:relative;width:100%;height:24px;border-radius:var(--radius-sm);border:2px solid rgba(0,0,0,0);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;background:var(--zinc-800);overflow:hidden}.color-palette-btn-compact .color-display{position:absolute;inset:0;width:100%;height:100%}.color-palette-btn-compact .color-checkmark{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transform:scale(0.5);transition:all .2s cubic-bezier(0.34, 1.56, 0.64, 1);z-index:2}.color-palette-btn-compact .color-checkmark svg{color:#fff;filter:drop-shadow(0 1px 2px rgba(0, 0, 0, 0.8));width:12px;height:12px}.color-palette-btn-compact:hover{border-color:var(--zinc-500)}.color-palette-btn-compact.checked{border-color:#fff}.color-palette-btn-compact.checked .color-checkmark{opacity:1;visibility:visible;transform:scale(1)}@media(max-width: 1024px){.color-palette-large{grid-template-columns:repeat(auto-fill, minmax(28px, 1fr))}.color-palette-btn-large{height:28px}}@media(max-width: 640px){.color-palette-large{grid-template-columns:repeat(8, 1fr);gap:var(--spacing-1)}.color-palette-btn-large{height:28px}.color-palette-btn-large .color-checkmark svg{width:14px;height:14px}}.color-free{position:relative;width:26px;height:26px;border-radius:7px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;background:conic-gradient(red, orange, yellow, lime, cyan, blue, magenta, red)}.color-free input[type=color]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;border:none;padding:0}.color-free svg{width:14px;height:14px;filter:drop-shadow(0 0 1px rgba(0, 0, 0, 0.6));pointer-events:none}.form-hint-banner{padding:var(--spacing-2) var(--spacing-3);margin-bottom:var(--spacing-3);background:var(--zinc-700);border-radius:var(--radius);font-size:var(--font-size-sm);color:var(--zinc-400)}.form-hint-banner strong{color:var(--zinc-100)}.notifications-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1000;align-items:flex-start;justify-content:center;padding-top:8vh}.notifications-overlay.open{display:flex}.notifications-modal{background:var(--zinc-800);font-size:var(--font-size-sm);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);border:1px solid var(--zinc-700);width:100%;max-width:520px;max-height:70vh;display:flex;flex-direction:column;overflow:hidden;animation:notifications-slide-in .15s ease-out}@keyframes notifications-slide-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.notifications-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4);border-bottom:1px solid var(--zinc-700);flex-shrink:0}.notifications-modal-title{margin:0;font-size:var(--font-size-base);font-weight:600;color:var(--zinc-100)}.notifications-header-actions{display:flex;align-items:center;gap:var(--spacing-3)}.notifications-mark-all{background:none;border:none;color:var(--zinc-400);font-size:var(--font-size-xs);cursor:pointer;padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.notifications-mark-all:hover{color:var(--zinc-100);background:var(--zinc-700)}.notifications-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:none;border-radius:var(--radius);color:var(--zinc-400);cursor:pointer;transition:all var(--transition-fast)}.notifications-close:hover{background:var(--zinc-700);color:var(--zinc-100)}.notifications-content{flex:1;overflow-y:auto;min-height:0}.notifications-list{padding:var(--spacing-2) 0}.notifications-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-8) var(--spacing-4);gap:var(--spacing-3);color:var(--zinc-400);font-size:var(--font-size-sm)}.notifications-empty svg{opacity:.3}.notifications-empty p{margin:0}.notifications-tabs{display:flex;gap:var(--spacing-1);padding:0 var(--spacing-4) var(--spacing-3)}.notifications-tab{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);background:none;border:none;font-size:var(--font-size-sm);color:var(--zinc-400);cursor:pointer;border-radius:var(--radius);transition:all var(--transition-fast)}.notifications-tab:hover{color:var(--zinc-100)}.notifications-tab.notifications-tab-active{background:var(--zinc-700);color:var(--zinc-100);font-weight:500}.notifications-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:var(--zinc-700);font-size:11px;font-weight:500;border-radius:9px}.notifications-tab-active .notifications-tab-count{background:var(--zinc-600)}.notification-item{padding:var(--spacing-3) var(--spacing-4);margin:var(--spacing-2) var(--spacing-3);border-radius:var(--radius);transition:background var(--transition-fast)}.notification-item:hover{background:var(--zinc-750)}.notification-item-unread{background:var(--zinc-750)}.notification-item-unread .notification-title{font-weight:600}.notification-item-unread:hover{background:var(--zinc-700)}.notification-item-header{display:flex;align-items:center;gap:var(--spacing-3)}.notification-avatar{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--zinc-600);display:flex;align-items:center;justify-content:center;overflow:hidden}.avatar-initials{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;color:var(--zinc-50)}.avatar-icon{color:var(--zinc-400)}.avatar-icon svg{display:block}.notification-title-row{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.notification-title{font-size:var(--font-size-sm);font-weight:400;color:var(--zinc-50);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-time{font-size:var(--font-size-xs);color:var(--zinc-400)}.notification-actions{display:flex;gap:var(--spacing-1);flex-shrink:0}.notification-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:none;border:none;border-radius:var(--radius-sm);color:var(--color-minor);cursor:pointer;transition:all var(--transition-fast)}.notification-btn:hover{background:var(--color-minor-alpha);color:var(--color-minor-light)}.notification-btn-unfollow{color:var(--zinc-500)}.notification-btn-unfollow:hover{color:var(--zinc-400)}.notification-item-body{margin-top:var(--spacing-2);padding-left:calc(32px + var(--spacing-3))}.notification-body{margin:0;font-size:var(--font-size-sm);color:var(--zinc-400);line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;box-orient:vertical}.notification-action{display:inline-block;margin-top:var(--spacing-2);font-size:var(--font-size-sm);color:var(--color-minor);text-decoration:none}.notification-action:hover{color:var(--color-minor-light);text-decoration:underline}.notifications-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:var(--color-red);color:#fff;font-size:11px;font-weight:600;border-radius:9px}.notifications-badge-hidden{display:none}.sidebar-section-notifications{padding:0;margin-top:var(--spacing-2)}.notifications-trigger{display:flex;align-items:center;gap:var(--spacing-3);width:100%;padding:10px 12px;background:none;border:none;border-radius:var(--radius-md);color:var(--zinc-300);cursor:pointer;transition:all var(--transition-fast);position:relative;font-family:var(--font-family-heading);font-size:14px;font-weight:450;text-align:left;margin:0}.notifications-trigger:hover{background:var(--zinc-700);color:var(--zinc-100)}.notifications-trigger:hover .nav-icon{color:var(--zinc-100);opacity:1}.notifications-trigger .nav-icon{width:18px;height:18px;flex-shrink:0;opacity:.7;transition:all var(--transition-fast)}.notifications-trigger .notifications-badge{margin-left:auto}.sidebar-collapsed .notifications-trigger{justify-content:center;padding:var(--spacing-2)}.sidebar-collapsed .notifications-trigger .nav-label{display:none}.sidebar-collapsed .notifications-trigger .notifications-badge{position:absolute;top:2px;right:2px;min-width:14px;height:14px;padding:0 3px;font-size:9px;margin-left:0}.sidebar-collapsed .notifications-trigger:hover{transform:none}.app-header-notifications{position:relative;display:flex;align-items:center}.app-header-notifications .notifications-badge{position:absolute;top:0;right:2px;min-width:16px;height:16px;padding:0 4px;font-size:10px;transform:translate(50%, -25%)}@media(max-width: 640px){.notifications-overlay{padding-top:0;align-items:flex-end}.notifications-modal{max-width:100%;max-height:85vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;border-bottom:none}}.pagination{display:flex;align-items:center;justify-content:center;margin:0;padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-sm);flex-shrink:0;position:relative}.pagination-info{position:absolute;left:var(--spacing-6);color:var(--zinc-400);font-size:var(--font-size-xs)}.pagination-nav{display:flex;align-items:center;gap:var(--spacing-1)}.pagination-link,.pagination-current,.pagination-gap{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--spacing-2);border-radius:var(--radius);font-size:var(--font-size-sm);font-weight:500;text-decoration:none;transition:var(--transition-fast)}.pagination-link{color:var(--zinc-400);background:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0)}.pagination-link:hover{background:var(--zinc-700);color:var(--zinc-100)}.pagination-current{background:#beefd0;color:#000;border:1px solid #21c55e}.pagination-gap{color:var(--zinc-400);cursor:default}.pagination-prev,.pagination-next{padding:0 var(--spacing-3)}.pagination-prev svg,.pagination-next svg{width:16px;height:16px}.pagination-disabled{opacity:.4;pointer-events:none}.calendar-legend{display:flex;align-items:center;gap:var(--spacing-4);font-size:var(--font-size-xs);color:var(--zinc-400)}.calendar-legend__item{display:flex;flex-direction:row-reverse;align-items:center;gap:var(--spacing-2)}.calendar-legend__color{width:12px;height:12px;border-radius:var(--radius-sm);flex-shrink:0;background-color:var(--zinc-700)}.calendar-legend__color--weekend{background:var(--zinc-800)}.calendar-legend__color--today{border-left:3px solid var(--zinc-600)}.calendar-legend__color--holiday{background:repeating-linear-gradient(45deg, var(--zinc-800), var(--zinc-800) 3px, var(--zinc-700) 3px, var(--zinc-700) 6px)}.calendar-legend__color--closure{background:repeating-linear-gradient(45deg, rgba(248, 113, 113, 0.15), rgba(248, 113, 113, 0.15) 3px, rgba(248, 113, 113, 0.25) 3px, rgba(248, 113, 113, 0.25) 6px)}.calendar-legend__color--assignment{background-color:var(--zinc-800);background-image:radial-gradient(circle at 3px 3px, var(--zinc-600) 1.5px, transparent 1.5px),radial-gradient(circle at 9px 9px, var(--zinc-500) 1.5px, transparent 1.5px);background-size:12px 12px}.calendar-legend__color--no-assignment{background:var(--zinc-700)}.calendar-legend__label{white-space:nowrap;font-weight:500;color:var(--zinc-300)}.gantt-fixed-column{flex-shrink:0;width:200px;background:var(--zinc-850);border-right:2px solid var(--zinc-600);z-index:10}.gantt-fixed-header{padding:var(--spacing-3);border-bottom:2px solid var(--zinc-600);background:var(--zinc-850);font-weight:500;color:var(--zinc-300);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.03em;height:60px;display:flex;flex-direction:column;justify-content:center;gap:var(--spacing-1)}.gantt-footer{display:flex;align-items:center;justify-content:center;width:100%;height:36px;min-height:36px;flex-shrink:0;border-top:1px solid var(--zinc-700);background:var(--zinc-850)}.gantt-footer-fixed{width:200px;min-width:200px;flex-shrink:0}.gantt-footer-content{display:flex;align-items:center;gap:var(--spacing-4);padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-xs);color:var(--zinc-400)}.gantt-row,.gantt-fixed-row{display:flex;align-items:center;box-sizing:border-box;flex-shrink:0}.site-name{font-weight:500;color:var(--zinc-300);font-size:var(--font-size-xs);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-name:hover{color:var(--zinc-600)}.assignment{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);padding:2px 4px;font-size:9px;font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.15);background:var(--tag-bg);color:var(--tag-color)}.text-light.assignment{color:#fff}.text-dark.assignment{color:#1f2937}.gantt-dates{border-bottom:2px solid var(--zinc-600);background:var(--zinc-850);height:60px}.planning-header-compact{display:flex;flex-direction:column;gap:0;flex-shrink:0}.planning-tabs{display:flex;gap:0;border-bottom:1px solid var(--zinc-600);background:var(--zinc-800);padding:var(--spacing-8) var(--spacing-4) 0}.planning-tab{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-400);text-decoration:none;border-bottom:3px solid rgba(0,0,0,0);transition:var(--transition);white-space:nowrap;position:relative;margin-bottom:-1px}.planning-tab:hover{color:var(--zinc-100);text-decoration:none}.planning-tab.active{color:var(--zinc-900);border-bottom-color:var(--zinc-500);background:var(--zinc-500);font-weight:600}.planning-tab.active .planning-tab__number{background:var(--zinc-900);color:var(--zinc-500)}.planning-tab__number{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--zinc-700);color:var(--zinc-400);border-radius:50%;font-size:11px;font-weight:600;flex-shrink:0}.planning-controls{display:flex;align-items:center;gap:var(--spacing-4);padding:var(--spacing-8) var(--spacing-6)}.planning-controls .date-nav,.planning-controls .month-nav{display:flex;align-items:center}.planning-controls .date-nav{gap:0}.planning-controls .month-nav{gap:var(--spacing-2)}.planning-controls .date-label,.planning-controls .month-label{font-size:var(--font-size-sm);font-weight:400;color:var(--zinc-200);padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius);background:rgba(0,0,0,0);border:none;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:var(--spacing-1)}.planning-controls .date-label:hover,.planning-controls .month-label:hover{background:var(--zinc-700)}.planning-controls .date-label svg,.planning-controls .month-label svg{color:var(--zinc-400);flex-shrink:0}.planning-controls .view-toggle{display:flex;gap:var(--spacing-1);background:var(--zinc-850);padding:var(--spacing-1);border-radius:var(--radius-sm)}.planning-controls .timesheet-switch-btn{margin-right:0}.view-by-toggle{display:flex;align-items:center;gap:var(--spacing-3)}.view-by-label{font-size:var(--font-size-sm);font-weight:400;color:var(--zinc-400);text-transform:uppercase;letter-spacing:.03em}.view-by-option{display:flex;align-items:center;gap:var(--spacing-1);cursor:pointer;font-size:var(--font-size-sm);color:var(--zinc-100)}.view-by-option input[type=radio]{margin:0;cursor:pointer;accent-color:var(--zinc-600)}.view-by-option span{user-select:none}.planning-controls-left,.planning-controls-right{display:flex;align-items:center;gap:var(--spacing-3)}.planning-controls-right{margin-left:auto}.planning-page{display:flex;flex-direction:column;overflow:hidden;width:100%;box-sizing:border-box;flex:1 1 0;min-height:0}.planning-container.planning-gantt{padding:0}.planning-container{flex:1 1 0;height:100%;max-height:100%;overflow:hidden;display:flex;flex-direction:column;min-height:0}.planning-container>[data-controller=planning],.planning-container>[data-controller=planning-salarie]{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.planning-nav{display:flex;gap:var(--spacing-2)}.planning-days-row{display:flex;width:100%}.planning-day-header{flex:1;min-width:60px;padding:var(--spacing-2) var(--spacing-1);text-align:center;font-size:var(--font-size-xs);border-right:1px solid var(--zinc-800);display:flex;flex-direction:column;gap:2px;box-sizing:border-box;background:var(--zinc-850)}.planning-day-header .day-name{color:var(--zinc-400);text-transform:uppercase;font-size:9px;font-weight:500}.planning-day-header .day-num{font-weight:600;color:var(--zinc-50)}.planning-day-header .month-name{font-size:9px;color:#ff9b58;font-weight:600;text-transform:lowercase}.planning-day-header .month-name.month-faded{color:var(--zinc-500);font-weight:500}.planning-day-cell{flex:1;min-width:60px;padding:var(--spacing-1);border-right:1px solid var(--zinc-800);display:flex;align-items:center;justify-content:center;box-sizing:border-box;background:var(--zinc-850)}.planning-day-header.planning-day--weekend,.planning-day-cell.planning-cell--weekend{background:var(--zinc-800);flex:.4;min-width:30px}.planning-day-header.planning-day--weekend .day-name,.planning-day-header.planning-day--weekend .day-num{color:var(--zinc-500)}.planning-day-header.planning-day--today,.planning-day-cell.planning-cell--today{position:relative}.planning-day-header.planning-day--today::before,.planning-day-cell.planning-cell--today::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-minor);z-index:1}.planning-day-header.planning-day--today .day-name,.planning-day-header.planning-day--today .day-num{color:var(--zinc-50);font-weight:600}.planning-day-header.planning-day--holiday,.planning-day-cell.planning-cell--holiday{background:repeating-linear-gradient(45deg, var(--zinc-800), var(--zinc-800) 3px, var(--zinc-700) 3px, var(--zinc-700) 6px)}.planning-day-header.planning-day--closure,.planning-day-cell.planning-cell--closure{background:repeating-linear-gradient(45deg, rgba(248, 113, 113, 0.15), rgba(248, 113, 113, 0.15) 3px, rgba(248, 113, 113, 0.25) 3px, rgba(248, 113, 113, 0.25) 6px)}.planning-day-cell.planning-cell--non-working,.gantt-cell.planning-cell--non-working{cursor:default;pointer-events:none}.planning-day-cell.planning-cell--outside-dates,.gantt-cell.planning-cell--outside-dates{position:relative;cursor:not-allowed;pointer-events:none}.planning-day-cell.planning-cell--outside-dates::after,.gantt-cell.planning-cell--outside-dates::after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom right, transparent calc(50% - 0.5px), var(--zinc-600) calc(50% - 0.5px), var(--zinc-600) calc(50% + 0.5px), transparent calc(50% + 0.5px))}.holiday-hidden.planning-day--holiday,.holiday-hidden.planning-cell--holiday,.closure-hidden.planning-day--closure,.closure-hidden.planning-cell--closure{background:rgba(0,0,0,0) !important}.gantt-wrapper{border:1px solid var(--zinc-600);overflow:hidden;flex:0 1 auto;display:grid;grid-template-columns:200px 1fr;grid-template-rows:max-content 36px}.gantt-fixed-column{display:flex;flex-direction:column}.gantt-header-title,.staff-header-title{font-weight:600}.gantt-header-filter,.staff-header-filter{display:flex;align-items:center;gap:var(--spacing-1)}.staff-header-filter{gap:var(--spacing-2);text-transform:none}.gantt-fixed-body{flex:0 1 auto;overflow-y:auto}.gantt-fixed-row{padding:var(--spacing-2) var(--spacing-3);min-height:36px;transition:background var(--transition-fast);border-bottom:1px solid var(--zinc-800)}.gantt-fixed-row:last-child{border-bottom:none}.gantt-fixed-row:hover{background:var(--zinc-800)}.gantt-row-locate,.gantt-row-locate-nav{display:flex;align-items:center;justify-content:center;padding:4px;border:none;background:rgba(0,0,0,0);cursor:pointer;color:var(--zinc-400);transition:color var(--transition-fast);flex-shrink:0;text-decoration:none}.gantt-row-locate:hover,.gantt-row-locate-nav:hover{color:var(--zinc-50)}.gantt-scrollable{flex:0 1 auto;overflow:hidden;display:flex;flex-direction:column}.gantt{display:flex;flex-direction:column;width:100%;flex:1;min-height:0}.gantt-header{display:flex;border-bottom:2px solid var(--zinc-600);background:var(--zinc-850);height:60px}.gantt-body{flex:0 1 auto;overflow-y:auto}.gantt-row{align-items:stretch}.gantt-row .planning-days-row{align-items:stretch}.gantt-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-6) var(--spacing-4);text-align:center;min-height:144px}.gantt-empty-message{color:var(--zinc-50);font-size:1.1rem;font-weight:600;margin-bottom:var(--spacing-3);max-width:700px}.gantt-empty-hint{color:var(--zinc-400);font-size:.95rem;max-width:700px;line-height:1.6}.site-name{text-transform:uppercase}.site-ref{font-size:var(--font-size-xs);color:var(--zinc-300);background:var(--zinc-700);padding:2px 4px;border-radius:var(--radius-sm)}.site-color-square{display:inline-block;width:14px;height:14px;border-radius:var(--radius-sm);margin-right:var(--spacing-2);flex-shrink:0;box-shadow:0 1px 2px rgba(0,0,0,.3)}.gantt-cell{min-height:36px;cursor:pointer;flex-wrap:nowrap;align-content:center;align-items:center;justify-content:flex-start;gap:0;transition:background var(--transition-fast);border-bottom:1px solid var(--zinc-800)}.gantt-cell>[data-assignment-id]{margin-left:-8px}.gantt-cell>[data-assignment-id]:first-child{margin-left:0}.gantt-row:last-child .gantt-cell{border-bottom:none}.gantt-cell:hover{background:var(--zinc-800)}.gantt-cell.planning-cell--non-working:hover{background:inherit}.gantt-footer{grid-column:1/-1}.gantt-footer-content .legend-color{width:12px;height:12px;margin-right:var(--spacing-1)}.assignment{justify-content:space-between}.assignment-initials{text-transform:uppercase}.status-indicator{width:10px;height:10px;border-radius:50%;flex-shrink:0}.status-indicator.status-available{border:2px solid var(--zinc-500);background:rgba(0,0,0,0)}.status-indicator.status-assigned{background:var(--zinc-400);border:none}.status-indicator.status-unavailable{width:auto;height:auto;border-radius:0;font-size:16px;font-weight:400;color:var(--zinc-500);line-height:1}.planning-legend{background:var(--zinc-800);border-radius:var(--radius-xl);box-shadow:var(--shadow);padding:var(--spacing-4) var(--spacing-6);margin-bottom:var(--spacing-6);border:1px solid rgba(0,0,0,.04)}.planning-legend h3{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.03em;color:var(--zinc-400);margin-bottom:var(--spacing-3)}.legend-items{display:flex;gap:var(--spacing-8);flex-wrap:wrap}.legend-section{display:flex;flex-direction:column;gap:var(--spacing-2)}.legend-title{font-size:var(--font-size-xs);font-weight:600;color:var(--zinc-400);text-transform:uppercase;letter-spacing:.03em}.legend-item{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm)}.employee-availability-grid{display:grid;gap:var(--spacing-2)}.employee-row{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-2) var(--spacing-3);background:var(--zinc-800);border-radius:var(--radius);transition:background var(--transition-fast)}.employee-row:hover{background:var(--zinc-700)}.employee-name{font-weight:500;font-size:var(--font-size-sm)}.gantt-container{overflow-x:auto;padding:var(--spacing-4);min-height:300px}.gantt-controls{display:flex;gap:var(--spacing-4);align-items:center;margin-bottom:var(--spacing-4);padding:var(--spacing-3) var(--spacing-4);border-bottom:1px solid var(--zinc-700)}.gantt-controls label{font-size:var(--font-size-sm);color:var(--zinc-400)}.gantt-controls select{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--zinc-700);border-radius:var(--radius);background:var(--zinc-800);font-size:var(--font-size-base)}.gantt .bar,.gantt .bar-progress{border-radius:var(--radius)}.gantt-bar-todo .bar{fill:var(--zinc-400)}.gantt-bar-in_progress .bar{fill:var(--zinc-600)}.gantt-bar-done .bar{fill:var(--zinc-500)}.gantt-popup{padding:var(--spacing-3);background:var(--zinc-800);border-radius:var(--radius);box-shadow:var(--shadow-lg);border:1px solid var(--zinc-700)}.gantt-popup h4{margin:0 0 var(--spacing-2);font-size:var(--font-size-base);font-weight:600}.gantt-popup p{margin:0;font-size:var(--font-size-sm);color:var(--zinc-400)}.gantt-popup-dates{margin-bottom:var(--spacing-1)}:has(.sidebar-collapsed) .gantt-fixed-column{width:80px}:has(.sidebar-collapsed) .gantt-fixed-header{padding:var(--spacing-2)}:has(.sidebar-collapsed) .gantt-header-title{font-size:9px}:has(.sidebar-collapsed) .gantt-header-filter{flex-direction:column;align-items:flex-start;gap:2px}:has(.sidebar-collapsed) .gantt-header-filter .select-filter{width:100%;font-size:var(--font-size-base);padding:var(--spacing-1)}:has(.sidebar-collapsed) .gantt-header-filter .th-filter-count{font-size:9px}:has(.sidebar-collapsed) .gantt-fixed-row{padding:var(--spacing-2)}:has(.sidebar-collapsed) .gantt-fixed-row .site-name{display:none}:has(.sidebar-collapsed) .gantt-fixed-row .site-ref{font-weight:600;color:var(--zinc-100);font-size:var(--font-size-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%}:has(.sidebar-collapsed) .gantt-footer-fixed{width:80px}.date-label--clickable{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-1) var(--spacing-3);background:rgba(0,0,0,0);border:none;font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-100);cursor:pointer;border-radius:var(--radius);transition:var(--transition)}.date-label--clickable:hover{background:var(--zinc-700)}.date-label--clickable svg{color:var(--zinc-400)}.date-picker-input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}#assign-modal .modal-content,#assign-salarie-modal .modal-content{overflow:visible}#assign-modal .modal-body,#assign-salarie-modal .modal-body{overflow:visible;min-height:200px}.selected-count{font-weight:400;color:var(--zinc-400);font-size:var(--font-size-xs)}.dropdown-item--assigned{opacity:.6}.dropdown-item--assigned:hover{opacity:.85}.dropdown-item--disabled,.dropdown-item--already-assigned{opacity:.4;cursor:not-allowed;pointer-events:none}.employee-checkbox{appearance:none;-webkit-appearance:none;width:14px;height:14px;flex-shrink:0;cursor:pointer;margin:0;margin-right:6px;align-self:center;vertical-align:middle;border:1.5px solid var(--zinc-500);border-radius:2px;background:rgba(0,0,0,0);position:relative}.employee-checkbox:checked{background:rgba(0,0,0,0);border-color:var(--zinc-500)}.employee-checkbox:checked:hover{background:rgba(0,0,0,0);border-color:var(--zinc-400)}.employee-checkbox:checked::after{content:"";position:absolute;left:2px;top:0px;width:4px;height:7px;border:solid var(--zinc-300);border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.employee-checkbox:disabled{cursor:not-allowed;opacity:.5}.dropdown-item:has(.employee-checkbox:checked) .dropdown-item-primary{color:#fff}.gantt-cell-help{font-size:9px;color:var(--zinc-400);font-style:italic;pointer-events:none;text-align:center;width:100%;line-height:1.2;display:flex;align-items:center;justify-content:center;height:100%}.gantt-header--with-weather{height:120px;min-height:120px;border-bottom:2px solid var(--zinc-600)}.gantt-header--with-weather .gantt-dates{height:120px;min-height:120px}.gantt-header--with-weather .planning-day-header{height:120px;min-height:120px;padding:var(--spacing-2) var(--spacing-1);gap:2px;justify-content:flex-start;border-right:1px solid var(--zinc-800);border-bottom:2px solid var(--zinc-600)}.planning-day--warning{background:rgba(245,158,11,.15) !important}.planning-day--alert{background:rgba(220,38,38,.15) !important}.planning-weather{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:auto}.planning-weather-icon{display:flex;align-items:center;justify-content:center}.planning-weather-icon svg{width:18px;height:18px}.planning-weather-details{display:flex;flex-direction:column;align-items:center;gap:0}.planning-weather-temps{display:flex;align-items:center;gap:2px;font-size:9px;color:var(--zinc-300)}.planning-weather-temp{font-weight:500}.planning-weather-temp--pm{color:var(--zinc-400)}.planning-weather-temp-separator{color:var(--zinc-500);font-size:8px}.planning-weather-precip{display:flex;align-items:center;gap:2px;font-size:9px;color:var(--zinc-400)}.planning-weather-precip-icon{color:#60a5fa;flex-shrink:0}.gantt-wrapper:has(.gantt-header--with-weather) .gantt-fixed-header{height:120px;min-height:120px;justify-content:flex-start;padding-top:var(--spacing-3);border-bottom:2px solid var(--zinc-600)}.gantt-wrapper--salarie{grid-template-columns:220px 1fr}.gantt-wrapper--salarie .gantt-fixed-column{width:220px}.gantt-wrapper--salarie .gantt-fixed-row{padding:var(--spacing-2) var(--spacing-3);min-height:36px}.gantt-wrapper--salarie .gantt-cell{justify-content:flex-start;align-items:center;align-content:center}.gantt-wrapper--salarie .planning-day-cell.gantt-cell{min-width:0;overflow:hidden}.gantt-wrapper--salarie .gantt-footer-fixed{width:220px;min-width:220px}.gantt-wrapper--salarie .gantt-footer{border-top:none}.employee-name-link{display:flex;align-items:center;gap:var(--spacing-2);text-decoration:none;color:var(--zinc-300);transition:color var(--transition-fast)}.employee-name-link:hover{color:var(--zinc-600)}.employee-fullname{font-weight:500;font-size:var(--font-size-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.planning-cell--not-employed{background:var(--zinc-800);cursor:default;pointer-events:none}.planning-cell--absence{cursor:default;pointer-events:none;position:relative}.planning-cell--absence::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom right, transparent calc(50% - 0.5px), var(--zinc-500) calc(50% - 0.5px), var(--zinc-500) calc(50% + 0.5px), transparent calc(50% + 0.5px))}.planning-cell--absence .status-unavailable{display:none}.site-assignment-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;background:var(--zinc-600);color:var(--zinc-900);font-size:10px;font-weight:700;border-radius:var(--radius-sm)}.site-name-compact{display:flex;align-items:center;gap:var(--spacing-2);text-decoration:none;color:var(--zinc-300);font-size:var(--font-size-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-name-compact:hover{color:var(--zinc-600)}.site-name-compact .site-ref{flex-shrink:0}.site-name-compact .site-name-text{text-transform:uppercase;overflow:hidden;text-overflow:ellipsis}.gcm-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-3) 20px;border-bottom:1px solid var(--zinc-800);flex-shrink:0}.gcm-header__left{display:flex;align-items:center;gap:var(--spacing-3);flex-shrink:0}.gcm-header__title{margin:0}.gcm-header__right{display:flex;align-items:center;gap:var(--spacing-2);flex-shrink:1;min-width:0}.distance-alert{display:inline-flex;align-items:center;vertical-align:middle;margin-left:5px;color:#ef4444}.td-name-cell{display:inline-flex;align-items:center;gap:2px}.abs-cal__legend{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-2) var(--spacing-4);margin-bottom:var(--spacing-3)}.abs-cal__legend-item{display:inline-flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-xs);color:var(--zinc-400)}.abs-cal__legend-badge{display:inline-flex;align-items:center;justify-content:center;min-width:26px;padding:2px 6px;border-radius:var(--radius-sm, 4px);font-size:10px;font-weight:700;line-height:1.4}.abs-cal__person{color:var(--zinc-200);text-decoration:none;font-weight:500}.abs-cal__person:hover{color:var(--color-minor);text-decoration:underline}.abs-cal__cell{padding:2px !important}.abs-cal__bar{display:block;width:100%;padding:3px 6px;border-radius:var(--radius-sm, 4px);font-size:10px;font-weight:600;line-height:1.4;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.abs-cal__bar--pending{opacity:.7;border:1px dashed currentColor}.abs-cal__bar--rejected{opacity:.45;text-decoration:line-through}.abs-cal__empty{text-align:center;padding:var(--spacing-6) !important;color:var(--zinc-500)}.abs-cal__cover-row{border-top:2px solid var(--zinc-700)}.abs-cal__cover-label{font-weight:600;color:var(--zinc-300)}.abs-cal__cover-cell{font-weight:700;text-align:center}.abs-cal__cover-cell.is-good{color:var(--color-minor)}.abs-cal__cover-cell.is-warn{color:#f59e0b}.abs-cal__cover-cell.is-low{color:#ef4444}.taches-chantier-container .todo-list{padding-top:0}.gc-container{width:100%;border-radius:var(--radius-lg);border:1px solid var(--zinc-600);overflow:hidden;display:flex;flex-direction:column}.gc-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-3) var(--spacing-4);background:var(--zinc-800);border-bottom:1px solid var(--zinc-600)}.gc-header__left{display:flex;align-items:center;gap:var(--spacing-3)}.taches-site-selector__select{height:34px;padding:0 36px 0 var(--spacing-4);font-size:var(--font-size-base);font-weight:500;color:var(--zinc-100);background:var(--zinc-850);border-width:1px;border-style:solid;border-color:var(--zinc-500);border-radius:var(--radius-sm);cursor:pointer;appearance:none;-webkit-appearance:none;-moz-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;width:180px;flex-shrink:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.taches-site-selector__select:hover{background-color:var(--zinc-800)}.taches-site-selector__select:focus{outline:none;border-color:var(--zinc-300)}.taches-site-selector__select option{background:var(--zinc-850);color:var(--zinc-100)}.gc-header__reference{font-size:var(--font-size-xs);color:var(--zinc-400)}.gc-header__title{font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-100);margin:0;text-transform:uppercase;letter-spacing:.02em}.gc-header__count{font-size:var(--font-size-xs);font-weight:600;color:var(--zinc-400);padding:2px 8px;background:var(--zinc-600);border-radius:var(--radius)}.gc-header__progress{width:60px;height:4px;background:var(--zinc-600);border-radius:2px;overflow:hidden}.gc-header__progress-fill{height:100%;background:var(--zinc-700);border-radius:2px;transition:width var(--transition)}.gc-header__right{display:flex;align-items:center;gap:var(--spacing-2)}.gc-site-selector{padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-100);background:var(--zinc-800);border:1px solid var(--zinc-500);border-radius:var(--radius);cursor:pointer;transition:var(--transition-fast);min-width:200px;max-width:300px}.gc-site-selector:hover{background:var(--zinc-800);border-color:var(--zinc-400)}.gc-site-selector:focus{outline:none;border-color:var(--zinc-600);box-shadow:0 0 0 2px var(--zinc-500)}.gc-view-selector{padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs);font-weight:500;color:var(--zinc-100);background:var(--zinc-800);border:1px solid var(--zinc-500);border-radius:var(--radius);cursor:pointer;outline:none}.gc-view-selector:hover{border-color:var(--zinc-400)}.gc-view-selector:focus{border-color:var(--zinc-600);box-shadow:0 0 0 2px rgba(251,191,36,.2)}.gc-body{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch;width:100%;min-height:300px;max-height:calc(100vh - 280px);overflow:hidden}.gc-sidebar{width:var(--gc-sidebar-width, 500px);min-width:var(--gc-sidebar-width, 500px);flex-shrink:0;border-right:1px solid var(--zinc-600);display:flex;flex-direction:column;transition:width var(--transition),min-width var(--transition)}.gc-sidebar--collapsed{--gc-sidebar-width: 350px;width:var(--gc-sidebar-width);min-width:var(--gc-sidebar-width)}.gc-sidebar--collapsed .gc-collapsible{width:0 !important;opacity:0;margin:0;padding:0;overflow:hidden}.gc-sidebar--collapsed .gc-sidebar__toggle .gc-toggle-collapse{display:none}.gc-sidebar--collapsed .gc-sidebar__toggle .gc-toggle-expand{display:block}.gc-sidebar--collapsed .gc-col--task{flex:1}.gc-sidebar__header{display:flex;align-items:center;padding:var(--spacing-3) var(--spacing-4);background:var(--zinc-850);border-bottom:1px solid var(--zinc-700);font-size:11px;font-weight:600;color:var(--zinc-300);text-transform:uppercase;letter-spacing:.05em;height:138px;gap:var(--spacing-3);flex-shrink:0}.gc-sidebar__header--simple{height:80px}.gc-sidebar__header .gc-col{justify-content:flex-start}.gc-sidebar__header .gc-col--task{color:var(--zinc-100);font-size:12px;font-weight:700}.gc-sidebar__header .gc-col--sort{width:24px;justify-content:center;flex-shrink:0}.gc-sidebar__header .gc-col--date{width:60px;justify-content:center;text-align:center;flex-shrink:0}.gc-sidebar__header .gc-col--status{width:50px;justify-content:center;text-align:center;flex-shrink:0}.gc-sidebar__header .gc-col--assigned{justify-content:center;text-align:center;flex-shrink:0}.gc-sidebar__header .gc-header__right{display:flex;align-items:center;gap:var(--spacing-2);margin-left:auto;padding:var(--spacing-2) var(--spacing-3);background:var(--zinc-800);border-radius:var(--radius-sm)}.gc-sidebar__header .gc-header__count{font-size:12px;font-weight:600;color:var(--zinc-600)}.gc-sidebar__header .gc-header__progress{width:60px;height:4px;background:var(--zinc-700);border-radius:2px;overflow:hidden}.gc-sidebar__header .gc-header__progress-fill{height:100%;background:var(--zinc-600);border-radius:2px;transition:width var(--transition)}.gc-sort-all-btn,.gc-section-sort-btn,.gc-task-menu-btn,.gc-section-menu-btn{background:none;border:none;padding:0;cursor:pointer;color:var(--zinc-400);display:flex;align-items:center;justify-content:center}.gc-sort-all-btn:hover,.gc-section-sort-btn:hover,.gc-task-menu-btn:hover,.gc-section-menu-btn:hover{color:var(--zinc-100)}.gc-sidebar__toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--zinc-600);background:var(--zinc-800);border-radius:var(--radius-sm);color:var(--zinc-400);cursor:pointer;transition:var(--transition-fast);flex-shrink:0}.gc-sidebar__toggle:hover{background:var(--zinc-700);color:var(--zinc-200);border-color:var(--zinc-500)}.gc-sidebar__toggle .gc-toggle-expand{display:none}.gc-collapsible{transition:width var(--transition),opacity var(--transition),margin var(--transition);overflow:hidden}.gc-sidebar__content{flex:1;overflow-y:auto}.gc-sidebar__row{display:flex;align-items:center;padding:var(--spacing-2) var(--spacing-3);padding-right:calc(var(--spacing-3) + 28px);border-bottom:1px solid var(--zinc-700);height:44px;transition:background var(--transition-fast)}.gc-sidebar__row:hover{background:var(--zinc-800)}.gc-col{display:flex;align-items:center;gap:var(--spacing-2)}.gc-col--task{flex:1;min-width:0;justify-content:flex-start}.gc-col--sort{width:24px;justify-content:center;flex-shrink:0}.gc-col--date{width:60px;justify-content:center;font-size:11px;color:var(--zinc-300)}.gc-col--status{width:50px;justify-content:center}.gc-col--assigned{width:56px;justify-content:flex-end}.gc-col--actions{width:40px;justify-content:flex-end}.gc-checkbox{position:relative;width:16px;height:16px;flex-shrink:0}.gc-checkbox input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;z-index:1}.gc-checkmark{position:absolute;top:0;left:0;width:16px;height:16px;border:1.5px solid var(--zinc-500);border-radius:var(--radius-sm);background:var(--zinc-800);transition:var(--transition)}.gc-checkbox input:checked+.gc-checkmark{background:var(--zinc-700);border-color:var(--zinc-700)}.gc-checkbox input:checked+.gc-checkmark::after{content:"";position:absolute;left:4px;top:1px;width:4px;height:7px;border:solid #fff;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.gc-checkbox:hover .gc-checkmark{border-color:var(--zinc-400)}.gc-task-name{flex:1;min-width:0;font-size:var(--font-size-xs);font-weight:500;color:var(--zinc-100);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color var(--transition-fast);cursor:pointer}.gc-task-name:hover{color:var(--zinc-600)}.gc-task-name--done{color:var(--zinc-400)}.gc-status-badge{font-size:10px;font-weight:600;padding:2px 8px;border-radius:var(--radius);text-transform:capitalize}.gc-status-badge--todo{background:var(--zinc-700);color:var(--zinc-200)}.gc-status-badge--in_progress{background:rgba(82,82,91,.15);color:var(--zinc-600)}.gc-status-badge--done{background:rgba(113,113,122,.15);color:var(--zinc-500)}.gc-status-badge--archived{background:var(--zinc-700);color:var(--zinc-300)}.gc-priority-badge{font-size:10px;font-weight:600;padding:2px 8px;border-radius:var(--radius);text-transform:capitalize}.gc-priority-badge--low{background:var(--zinc-700);color:var(--zinc-200)}.gc-priority-badge--medium{background:rgba(63,63,70,.2);color:var(--zinc-700)}.gc-priority-badge--high{background:rgba(39,39,42,.25);color:var(--zinc-800)}.gc-late-flag{flex-shrink:0;color:var(--zinc-800)}.gc-avatars{display:flex;align-items:center}.gc-avatar{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:9px;font-weight:600;background:var(--bg, var(--zinc-600));color:var(--fg, var(--zinc-100));flex-shrink:0;border:2px solid var(--zinc-800);margin-left:-6px}.gc-avatar:first-child{margin-left:0}.gc-avatar-more{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:9px;font-weight:600;background:var(--zinc-600);color:var(--zinc-200);flex-shrink:0;border:2px solid var(--zinc-800);margin-left:-6px}.gc-no-assignee{font-size:var(--font-size-xs);color:var(--zinc-400)}.gc-sidebar__actions{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-2);padding-left:var(--spacing-3);height:32px;box-sizing:border-box}.gc-add-section{display:flex;align-items:center;justify-content:flex-start;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-2);font-size:11px;font-weight:400;font-style:italic;color:var(--zinc-300);background:none;border:none;box-shadow:none;text-decoration:none;cursor:pointer;transition:var(--transition-fast)}.gc-add-section:hover{color:var(--zinc-700)}.gc-sidebar__actions .gc-add-section{border-top:none}.gc-add-section--primary{border-left:none;color:#fff;background:var(--zinc-600);font-weight:600;padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius);margin-top:var(--spacing-2)}.gc-add-section--primary:hover{background:var(--zinc-500);box-shadow:0 0 0 2px var(--zinc-600)}.gc-add-task--section{display:flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-3);padding-left:calc(var(--spacing-3) + 16px + var(--spacing-2));font-size:11px;font-weight:400;font-style:italic;color:var(--zinc-400);background:none;border:none;text-decoration:none;cursor:pointer;transition:var(--transition-fast);height:28px}.gc-add-task--section:hover{color:var(--zinc-700)}.gc-add-task--section svg{width:12px;height:12px}.gc-section-header{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);border-bottom:1px solid var(--zinc-700);height:32px;box-sizing:border-box;cursor:pointer;transition:background var(--transition-fast)}.gc-section-header:hover{background:var(--zinc-800)}.gc-section-header.gc-section-header--collapsed .gc-section-toggle__minus{display:none}.gc-section-header.gc-section-header--collapsed .gc-section-toggle__plus{display:block}.gc-section-header.gc-section-header--dragging{opacity:.5;background:var(--zinc-600)}.gc-section-header.gc-section-header--drag-over{border-top:2px solid var(--zinc-600);background:#eef6ff}.gc-section-drag-handle{display:flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--zinc-400);cursor:grab;flex-shrink:0;opacity:0;transition:opacity var(--transition-fast),color var(--transition-fast)}.gc-section-header:hover .gc-section-drag-handle{opacity:1}.gc-section-drag-handle:hover{color:var(--zinc-200)}.gc-section-drag-handle:active{cursor:grabbing}.gc-section-toggle{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--zinc-600);border:none;border-radius:var(--radius-sm);color:var(--zinc-200);cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast)}.gc-section-toggle:hover{background:var(--zinc-500);color:var(--zinc-100)}.gc-section-toggle svg{width:12px;height:12px}.gc-section-toggle .gc-section-toggle__plus{display:none}.gc-section-name{font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-100);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gc-section-info{display:flex;align-items:center;gap:var(--spacing-3);margin-left:auto;margin-right:var(--spacing-2)}.gc-section-dates{font-size:11px;color:var(--zinc-300)}.gc-section-progress{font-size:11px;font-weight:600;color:var(--zinc-300);padding:2px 8px;border:1px solid var(--zinc-500);border-radius:var(--radius-sm)}.gc-section-progress.gc-section-progress--complete{color:var(--zinc-700);border-color:var(--zinc-700)}.gc-section-tasks{display:flex;flex-direction:column}.gc-section-tasks.gc-section-tasks--collapsed{display:none}.gc-section-tasks .gc-section-actions{order:999}.gc-section-actions{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-3);padding-left:calc(var(--spacing-3) + 16px + var(--spacing-2));height:32px;box-sizing:border-box}.gc-section-actions .gc-add-task--section{padding-left:0;padding-right:0;height:auto}.gc-task-row{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-1) var(--spacing-3);border-bottom:1px solid var(--zinc-700);height:32px;box-sizing:border-box;transition:background var(--transition-fast);cursor:grab}.gc-task-row:hover{background:var(--zinc-800)}.gc-task-row:hover .gc-drag-handle{opacity:1}.gc-task-row:active{cursor:grabbing}.gc-task-row .gc-col--sort{width:24px;justify-content:center;flex-shrink:0}.gc-task-row .gc-col--date{width:60px;justify-content:center;text-align:center;flex-shrink:0}.gc-task-row .gc-col--status{width:50px;justify-content:center;text-align:center;flex-shrink:0}.gc-task-row .gc-col--assigned{justify-content:center;text-align:center;flex-shrink:0}.gc-task-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-1);width:56px;flex-shrink:0}.gc-drag-handle{display:flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--zinc-400);opacity:0;transition:opacity var(--transition-fast);flex-shrink:0;cursor:grab}.gc-drag-handle:active{cursor:grabbing}.gc-task-row--dragging{opacity:.5;background:var(--zinc-700)}.gc-task-row--drag-over{border-bottom:2px solid var(--zinc-600)}.gc-section-tasks--drag-over{min-height:40px}.gc-task-number{font-size:11px;font-weight:500;color:var(--zinc-400);width:20px;text-align:center;flex-shrink:0}.gc-task-assign{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:rgba(0,0,0,0);border:none;border-radius:var(--radius-sm);color:var(--zinc-400);cursor:pointer;transition:var(--transition-fast);opacity:1;flex-shrink:0;position:relative}.gc-task-assign:hover{background:var(--zinc-700);color:var(--zinc-200)}.gc-task-assign:active{background:var(--zinc-600)}.gc-task-assign--assigned{color:#ffb27d}.gc-task-assign--assigned:hover{background:#f5f7d0;color:#b5b842}.gc-assign-menu{position:relative;z-index:9999;min-width:200px;max-height:250px;overflow-y:auto;background:var(--zinc-800);border:1px solid var(--zinc-600);border-radius:var(--radius-md);box-shadow:0 4px 12px rgba(0,0,0,.15);padding:var(--spacing-2) 0}.gc-assign-menu__header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-2) var(--spacing-3);font-size:10px;font-weight:600;color:var(--zinc-400);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--zinc-700)}.gc-assign-menu__close{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background:rgba(0,0,0,0);color:var(--zinc-400);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition-fast)}.gc-assign-menu__close:hover{background:var(--zinc-700);color:var(--zinc-100)}.gc-assign-menu__item{display:flex;align-items:center;justify-content:flex-start;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);min-height:36px;cursor:pointer;transition:var(--transition-fast);border-left:3px solid rgba(0,0,0,0)}.gc-assign-menu__item:hover{background:var(--zinc-800)}.gc-assign-menu__item:focus-within{outline:2px solid rgba(218,221,82,.5);outline-offset:-2px}.gc-assign-menu__item input[type=checkbox]{width:16px;height:16px;accent-color:#c1c458;cursor:pointer;flex-shrink:0;transition:transform .15s ease}.gc-assign-menu__item input[type=checkbox]:focus-visible{outline:2px solid #dadd52;outline-offset:2px}.gc-assign-menu__item--selected{background:#f5f7d0;border-left:3px solid #dadd52}.gc-assign-menu__item--selected .gc-assign-menu__name{font-weight:600;color:#5c5e1f}.gc-assign-menu__item--selected .gc-assign-menu__avatar{box-shadow:0 0 0 2px #dadd52}.gc-assign-menu__item--selected input[type=checkbox]{accent-color:#b5b842;transform:scale(1.1)}.gc-assign-menu__item--selected:hover{background:#eef0b8}.gc-assign-menu__label{display:flex;align-items:center;gap:var(--spacing-2);width:100%;cursor:pointer}.gc-assign-menu__avatar{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:9px;font-weight:600;background:var(--bg, var(--zinc-600));color:var(--fg, var(--zinc-100));flex-shrink:0}.gc-assign-menu__name{font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-100);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4;transition:color .15s ease,font-weight .15s ease}.gc-assign-menu__check{width:16px;height:16px;color:#d97706;flex-shrink:0}.gc-assign-menu__empty{padding:var(--spacing-3);font-size:var(--font-size-xs);color:var(--zinc-400);text-align:center}.gc-assign-menu--by-date{min-width:220px;max-height:300px}.gc-assign-menu--inline{position:static;box-shadow:none;border:1px solid var(--zinc-600);border-radius:var(--radius);max-height:180px;overflow-y:auto}.gc-assign-menu--inline .gc-assign-menu__item{min-height:28px;padding:var(--spacing-1) var(--spacing-2)}.gc-assign-menu--inline .gc-assign-menu__avatar{width:18px;height:18px;font-size:7px}.gc-assign-menu--inline .gc-assign-menu__name{font-size:var(--font-size-xs)}.gc-assign-menu--inline .gc-assign-menu__date-label{font-size:10px}.gc-assign-menu--inline .gc-assign-menu__date-header{padding:var(--spacing-1) var(--spacing-2)}.gc-assign-menu--inline input[type=checkbox]{width:14px;height:14px}.gc-assign-menu__date-group:not(:first-child){border-top:1px solid var(--zinc-700)}.gc-assign-menu__date-header{display:flex;align-items:center;padding:var(--spacing-2) var(--spacing-3);background:var(--zinc-800)}.gc-assign-menu__date-label{font-size:11px;font-weight:600;color:var(--zinc-400);text-transform:capitalize}.gc-assign-menu__no-resource{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-xs);color:var(--zinc-400);font-style:italic}.gc-task-menu{position:relative}.gc-task-dropdown{position:absolute;top:100%;right:0;margin-top:var(--spacing-1);min-width:140px;background:var(--zinc-800);border:1px solid var(--zinc-600);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:100;padding:var(--spacing-1) 0;display:none}.gc-task-dropdown.gc-task-dropdown--open{display:block}.gc-task-dropdown-item{display:flex;align-items:center;gap:var(--spacing-2);width:100%;padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);color:var(--zinc-100);background:none;border:none;cursor:pointer;text-align:left;transition:background var(--transition-fast)}.gc-task-dropdown-item:hover{background:var(--zinc-800)}.gc-task-dropdown-item svg{flex-shrink:0;color:var(--zinc-300)}.gc-task-dropdown-item--danger{color:var(--zinc-800)}.gc-task-dropdown-item--danger svg{color:var(--zinc-800)}.gc-task-dropdown-item--danger:hover{background:#fef2f2}.gc-task-name-input{flex:1;min-width:0;font-size:var(--font-size-xs);font-weight:500;color:var(--zinc-100);background:none;border:1px solid var(--zinc-700);border-radius:var(--radius-sm);padding:var(--spacing-1) var(--spacing-2);outline:none}.gc-task-name-input:focus{border-color:var(--zinc-500)}.gc-task-name-input::placeholder{font-weight:400;color:var(--zinc-400)}.gc-task-name-input:disabled{opacity:.7;cursor:not-allowed}.gc-task-row--new{background:none;border-bottom:1px dashed var(--zinc-700)}.gc-task-meta{display:flex;align-items:center;margin-left:auto}.gc-task-date{font-size:11px;color:var(--zinc-300);width:55px;text-align:center}.gc-task-status{font-size:11px;font-weight:600;color:var(--zinc-300);padding:2px 8px;border:1px solid var(--zinc-500);border-radius:var(--radius-sm)}.gc-task-status.gc-task-status--done{color:var(--zinc-700);border-color:var(--zinc-700)}.gc-task-avatars{display:flex;align-items:center;flex-direction:row-reverse}.gc-task-avatar{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:9px;font-weight:600;background:var(--bg, var(--zinc-600));color:var(--fg, var(--zinc-100));flex-shrink:0;border:2px solid var(--zinc-800);margin-left:-8px}.gc-task-avatar:last-child{margin-left:0}.gc-task-avatar.gc-task-avatar--empty{width:24px;height:24px;background:var(--zinc-700);color:var(--zinc-400);border:none;margin-left:0}.gc-task-avatar.gc-task-avatar--more{background:var(--zinc-600);color:var(--zinc-200);font-size:8px}.gc-section-icon{color:var(--zinc-300);flex-shrink:0}.gc-section-name-input{flex:1;font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-100);background:var(--zinc-800);border:1px solid var(--zinc-500);border-radius:var(--radius-sm);padding:var(--spacing-1) var(--spacing-2);outline:none;min-width:0}.gc-section-name-input:focus{border-color:var(--zinc-600);box-shadow:0 0 0 2px var(--zinc-500)}.gc-section-name-input::placeholder{font-weight:400;color:var(--zinc-400)}.gc-section-header--new{background:var(--zinc-800);border:1px solid var(--zinc-600);border-bottom:1px solid var(--zinc-600)}.gc-section-menu{position:relative;display:flex;align-items:center;justify-content:flex-end;width:56px;flex-shrink:0}.gc-section-dropdown{position:absolute;top:100%;right:0;margin-top:var(--spacing-1);min-width:140px;background:var(--zinc-800);border:1px solid var(--zinc-600);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:100;padding:var(--spacing-1) 0;display:none}.gc-section-dropdown.gc-section-dropdown--open{display:block}.gc-section-dropdown-item{display:flex;align-items:center;gap:var(--spacing-2);width:100%;padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);color:var(--zinc-100);background:none;border:none;cursor:pointer;text-align:left;transition:background var(--transition-fast)}.gc-section-dropdown-item:hover{background:var(--zinc-800)}.gc-section-dropdown-item svg{flex-shrink:0;color:var(--zinc-300)}.gc-section-dropdown-item--danger{color:var(--zinc-800)}.gc-section-dropdown-item--danger svg{color:var(--zinc-800)}.gc-section-dropdown-item--danger:hover{background:#fef2f2}.gc-section-actions{display:flex;height:32px;box-sizing:border-box}.gc-empty-sections{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-8) var(--spacing-6);gap:var(--spacing-2);text-align:center}.gc-empty-icon{color:var(--zinc-400);margin-bottom:var(--spacing-2)}.gc-empty-title{font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-100);margin:0}.gc-empty-message{font-size:var(--font-size-xs);color:var(--zinc-300);margin:0;max-width:280px;line-height:1.5}.gc-empty-actions{display:flex;gap:var(--spacing-2);margin-top:var(--spacing-3)}.gc-section-form{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);background:var(--zinc-800);border-bottom:1px solid var(--zinc-600)}.gc-section-input{flex:1;padding:var(--spacing-1) var(--spacing-2);font-size:var(--font-size-sm);border:1px solid var(--zinc-500);border-radius:var(--radius);outline:none}.gc-section-input:focus{border-color:var(--zinc-600);box-shadow:0 0 0 2px var(--zinc-500)}.gc-section-save,.gc-section-cancel{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:var(--radius);cursor:pointer;transition:var(--transition-fast)}.gc-section-save{background:var(--zinc-500);color:#fff}.gc-section-save:hover{background:#22c55e}.gc-section-cancel{background:var(--zinc-600);color:var(--zinc-200)}.gc-section-cancel:hover{background:var(--zinc-500)}.gc-timeline{flex:1 1 0%;min-width:0;overflow:hidden;display:flex;flex-direction:column;--day-width: 80px}.gc-timeline.gc-timeline--fortnight{overflow-x:scroll;overflow-y:hidden}.gc-timeline.gc-timeline--fortnight::-webkit-scrollbar{height:8px}.gc-timeline.gc-timeline--fortnight::-webkit-scrollbar-track{background:var(--zinc-850)}.gc-timeline.gc-timeline--fortnight::-webkit-scrollbar-thumb{background:var(--zinc-600);border-radius:4px}.gc-timeline.gc-timeline--fortnight::-webkit-scrollbar-thumb:hover{background:var(--zinc-500)}.gc-timeline__super-header{display:flex;border-top:1px solid var(--zinc-600);border-bottom:1px solid var(--zinc-600);height:28px}.gc-super-cell{min-width:calc(var(--span, 1)*var(--day-width));width:calc(var(--span, 1)*var(--day-width));display:flex;align-items:center;justify-content:flex-start;font-size:11px;font-weight:500;color:var(--zinc-400);border-right:1px solid var(--zinc-600);border-bottom:1px solid var(--zinc-600);flex-shrink:0;white-space:nowrap}.gc-super-cell:last-child{border-right:none}.gc-super-cell--month{text-transform:capitalize;font-size:12px;font-weight:600;color:var(--zinc-100);letter-spacing:.01em;border-right:1px solid var(--zinc-500)}.gc-super-cell--month span{position:sticky;left:8px;padding:0 var(--spacing-1)}.gc-super-cell--year{font-weight:700;font-size:13px;color:var(--zinc-100);letter-spacing:.02em;background:var(--zinc-700)}.gc-timeline__header-wrapper{flex-shrink:0;z-index:3;border-bottom:1px solid var(--zinc-600);overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.gc-timeline__header-wrapper::-webkit-scrollbar{display:none}.gc-timeline__header{display:flex;position:relative;background:var(--zinc-800);border-bottom:1px solid var(--zinc-600);height:52px}.gc-day{min-width:var(--day-width);width:var(--day-width);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-1);border-right:1px solid var(--zinc-800);gap:2px;flex-shrink:0}.gc-day:last-child{border-right:none}.gc-day--today{border-left:3px solid var(--color-minor)}.gc-day--today .gc-day__number{background:var(--color-minor);color:var(--zinc-950);border-radius:50%;width:24px;height:24px;min-height:24px;display:flex;align-items:center;justify-content:center}.gc-day--weekend{background:var(--zinc-700)}.gc-day--holiday{background:var(--zinc-600)}.gc-day--closure{background:rgba(147,197,253,.5)}.gc-day--has-assignment{background:radial-gradient(circle, var(--zinc-600) 1.5px, transparent 1.5px);background-size:8px 8px}.gc-day__name{font-size:9px;font-weight:500;color:var(--zinc-400);text-transform:uppercase}.gc-day__number{font-weight:700;color:#fff;font-size:13px}.gc-day__week,.gc-day__quarter{display:none;font-size:10px;font-weight:600;color:var(--zinc-100)}.gc-timeline__header--with-weather{height:110px}.gc-weather-icon{margin-top:2px;line-height:1;height:24px;display:flex;align-items:center;justify-content:center;color:var(--zinc-400)}.gc-weather-icon .weather-icon{width:24px;height:24px}.gc-weather-icon .weather-sun,.gc-weather-icon .weather-cloud,.gc-weather-icon .weather-cloud-light,.gc-weather-icon .weather-rain,.gc-weather-icon .weather-snow,.gc-weather-icon .weather-lightning{color:inherit}.gc-weather-icon svg{color:inherit}.gc-weather-details{display:flex;flex-direction:column;align-items:center;gap:1px}.gc-weather-temps{display:flex;align-items:center;justify-content:center;gap:2px;height:14px}.gc-weather-temp{font-size:10px;font-weight:500;color:var(--zinc-100)}.gc-weather-temp--pm{color:var(--zinc-400)}.gc-weather-temp-separator{font-size:9px;color:var(--zinc-400)}.gc-weather-precip{display:flex;align-items:center;gap:2px;font-size:9px;color:var(--zinc-400)}.gc-weather-precip-icon{width:10px;height:10px;color:var(--zinc-500)}.gc-day--warning{position:relative}.gc-day--warning::after{content:"⚠";position:absolute;top:2px;right:2px;width:14px;height:14px;border-radius:50%;background:rgba(34,197,94,.15);color:#22c55e;display:flex;align-items:center;justify-content:center;font-size:8px;line-height:1;z-index:5}.gc-day--warning .gc-weather-precip{color:var(--zinc-400)}.gc-day--warning .gc-weather-precip-icon{color:var(--zinc-500)}.gc-day--alert{position:relative}.gc-day--alert::after{content:"⚠";position:absolute;top:2px;right:2px;width:14px;height:14px;border-radius:50%;background:rgba(239,68,68,.15);color:#ef4444;display:flex;align-items:center;justify-content:center;font-size:8px;line-height:1;z-index:5}.gc-day--alert .gc-weather-precip{color:var(--zinc-400)}.gc-day--alert .gc-weather-precip-icon{color:var(--zinc-500)}.gc-day--no-weather .gc-weather-icon,.gc-day--no-weather .gc-weather-details{display:none}.gc-day--past .gc-weather-icon,.gc-day--past .gc-weather-details{opacity:.4}.gc-day--past .gc-weather-precip,.gc-day--past .gc-weather-precip-icon{color:var(--zinc-400) !important}.gc-timeline--week .gc-day__name,.gc-timeline--week .gc-day__number,.gc-timeline--fortnight .gc-day__name,.gc-timeline--fortnight .gc-day__number,.gc-timeline--month .gc-day__name,.gc-timeline--month .gc-day__number{display:flex}.gc-timeline--week .gc-day__week,.gc-timeline--week .gc-day__quarter,.gc-timeline--fortnight .gc-day__week,.gc-timeline--fortnight .gc-day__quarter,.gc-timeline--month .gc-day__week,.gc-timeline--month .gc-day__quarter{display:none}.gc-timeline--quarter .gc-day__name,.gc-timeline--quarter .gc-day__number{display:none}.gc-timeline--quarter .gc-day__week{display:none}.gc-timeline--quarter .gc-day__quarter{display:none}.gc-timeline--quarter .gc-day--first-of-week .gc-day__week{display:flex}.gc-timeline--quarter .gc-day{justify-content:center;border-right-color:rgba(0,0,0,0)}.gc-timeline--quarter .gc-day--first-of-week{border-left:1px solid var(--zinc-600)}.gc-timeline--semester .gc-day__name,.gc-timeline--semester .gc-day__number,.gc-timeline--semester .gc-day__week,.gc-timeline--year .gc-day__name,.gc-timeline--year .gc-day__number,.gc-timeline--year .gc-day__week{display:none}.gc-timeline--semester .gc-day__quarter,.gc-timeline--year .gc-day__quarter{display:none}.gc-timeline--semester .gc-day--first-of-quarter .gc-day__quarter,.gc-timeline--year .gc-day--first-of-quarter .gc-day__quarter{display:flex}.gc-timeline--semester .gc-day,.gc-timeline--year .gc-day{justify-content:center;border-right-color:rgba(0,0,0,0)}.gc-timeline--semester .gc-day--first-of-quarter,.gc-timeline--year .gc-day--first-of-quarter{border-left:1px solid var(--zinc-600)}.gc-timeline__content{flex:1;position:relative;overflow-x:auto;overflow-y:scroll}.gc-timeline__content::-webkit-scrollbar{height:8px;width:0}.gc-timeline__content::-webkit-scrollbar-track{background:var(--zinc-800)}.gc-timeline__content::-webkit-scrollbar-thumb{background:var(--zinc-600);border-radius:4px}.gc-timeline__content::-webkit-scrollbar-thumb:hover{background:var(--zinc-500)}.gc-timeline__content{scrollbar-width:thin;scrollbar-color:var(--zinc-600) var(--zinc-800)}.gc-timeline__row{display:flex;height:32px;min-height:32px;position:relative;flex-shrink:0}.gc-timeline__row--section{height:32px;min-height:32px;background:var(--zinc-700)}.gc-timeline__row--actions{background:var(--zinc-800)}.gc-timeline__row--collapsed{display:none}.gc-cell{min-width:var(--day-width);width:var(--day-width);height:100%;border-right:1px solid var(--zinc-800);flex-shrink:0;box-sizing:border-box}.gc-cell:last-child{border-right:none}.gc-cell--today{border-left:3px solid var(--color-minor)}.gc-cell--weekend{background:var(--zinc-800)}.gc-cell--has-assignment{background:radial-gradient(circle, rgba(254, 254, 254, 0.28) 1.5px, transparent 1.5px);background-size:8px 8px}.gc-cell--holiday{background:var(--zinc-700)}.gc-cell--closure{background:rgba(147,197,253,.5)}.gc-bar{position:absolute;top:50%;transform:translateY(-50%);height:18px;border-radius:var(--radius-sm);display:flex;align-items:center;padding:0 var(--spacing-1);overflow:visible;cursor:grab;transition:filter var(--transition-fast),transform var(--transition-fast);z-index:2;left:calc(var(--bar-start)*var(--day-width) + 2px);width:calc(var(--bar-duration)*var(--day-width) - 4px);min-width:24px}.gc-bar:hover{filter:brightness(0.95);transform:translateY(calc(-50% - 1px))}.gc-bar:active{cursor:grabbing}.gc-bar__segments{position:absolute;inset:0;display:flex;border-radius:inherit;overflow:hidden;border:1px solid #c8c5c1;pointer-events:none}.gc-bar__segment{flex:1;height:100%;background:var(--zinc-800)}.gc-bar__segment--assigned{background:#d98043}.gc-bar--todo{background:var(--zinc-800);color:var(--zinc-100)}.gc-bar--done{background:linear-gradient(135deg, #86efac 0%, #4ade80 100%);border:1px solid #22c55e;color:#14532d}.gc-bar--done .gc-bar__segments{border:1px solid var(--zinc-300)}.gc-bar--done .gc-bar__segment--assigned{background:var(--zinc-300)}.gc-bar--in_progress .gc-bar__segments{border:1px solid var(--zinc-300)}.gc-bar--in_progress .gc-bar__segment--assigned{background:var(--zinc-300)}.gc-bar--section{background:#b8b9ad;border:none;color:var(--zinc-900);height:6px;border-radius:0;cursor:default;top:40%}.gc-bar--section:hover{filter:none;transform:translateY(-50%)}.gc-bar--section::before{content:"";position:absolute;left:0;top:100%;width:0;height:0;border-left:4px solid #b8b9ad;border-right:4px solid #b8b9ad;border-top:5px solid #b8b9ad;border-bottom:none}.gc-bar--section::after{content:"";position:absolute;right:0;top:100%;width:0;height:0;border-right:4px solid #b8b9ad;border-left:4px solid #b8b9ad;border-top:5px solid #b8b9ad;border-bottom:none}.gc-bar--section .gc-bar__label{font-weight:700;color:var(--zinc-100);text-transform:uppercase}.gc-bar--event{width:12px !important;min-width:12px !important;height:12px;border-radius:0;transform:translateY(-50%) rotate(45deg);padding:0;left:calc(var(--bar-start)*var(--day-width) + var(--day-width)/2 - 6px);background:#1f2937;border:1px solid #111827}.gc-bar--event:hover{transform:translateY(calc(-50% - 1px)) rotate(45deg)}.gc-bar--event .gc-bar__label{transform:rotate(-45deg);position:absolute;top:-10px;left:16px;white-space:nowrap}.gc-bar--event .gc-bar__handle{display:none}.gc-bar--event .gc-bar__segments{display:none}.gc-bar--event .gc-bar__anchor{transform:translateY(-50%) rotate(-45deg)}.gc-bar__label{position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:var(--spacing-2);font-size:10px;font-weight:600;white-space:nowrap;color:var(--zinc-100)}.gc-bar__anchor{position:absolute;left:-4px;top:50%;transform:translateY(-50%);width:8px;height:8px;border-radius:50%;background:#d77d3f;border:2px solid #fff;box-shadow:0 1px 2px rgba(0,0,0,.2);opacity:0;transition:opacity var(--transition-fast),transform var(--transition-fast),background var(--transition-fast);z-index:10;cursor:pointer;padding:0}.gc-bar__anchor:hover{opacity:1 !important;transform:translateY(-50%) scale(1.3);background:var(--zinc-600)}.gc-bar__anchor:focus{outline:none}.gc-bar:hover .gc-bar__anchor{opacity:1}.gc-bar--linking{box-shadow:0 0 0 2px var(--zinc-600)}.gc-bar__anchor--selected{opacity:1 !important;background:var(--zinc-600) !important;transform:translateY(-50%) scale(1.3) !important;box-shadow:0 0 0 3px rgba(79,70,229,.3)}.gc-bar__anchor--target{opacity:1 !important;background:var(--zinc-500) !important;animation:pulse-anchor 1s ease-in-out infinite}@keyframes pulse-anchor{0%,100%{transform:translateY(-50%) scale(1)}50%{transform:translateY(-50%) scale(1.2)}}.gc-dependencies-svg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:3;overflow:visible}.gc-dependency-line{fill:none;stroke:var(--color-minor-dark);stroke-width:1;marker-end:url(#arrowhead);pointer-events:none}.gc-dependency-hitbox{fill:none;stroke:#dadd52;stroke-width:1;pointer-events:stroke;cursor:pointer}.gc-dependency-hitbox:hover+.gc-dependency-line{stroke:var(--zinc-600);stroke-width:2}.gc-dependency-delete{position:fixed;width:14px;height:14px;border-radius:50%;background:var(--color-error);border:1px solid #fff;box-shadow:0 1px 3px rgba(0,0,0,.2);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:100;padding:0;transition:transform var(--transition-fast),background var(--transition-fast)}.gc-dependency-delete:hover{transform:scale(1.15);background:#f59e0b}.gc-dependency-delete svg{width:8px;height:8px}.gc-dependency-line--temp{stroke:var(--zinc-600);stroke-dasharray:5,3;opacity:.7}.gc-dependency-line--invalid{stroke:var(--zinc-800);stroke-dasharray:5,3}.gc-bar__handle{position:absolute;top:0;bottom:0;width:8px;cursor:ew-resize;opacity:0;transition:opacity var(--transition-fast)}.gc-bar__handle::before{content:"";position:absolute;top:50%;transform:translateY(-50%);width:2px;height:12px;background:rgba(0,0,0,.3);border-radius:1px}.gc-bar:hover .gc-bar__handle,.gc-bar--resizing .gc-bar__handle{opacity:1}.gc-bar__handle--left{left:0;cursor:w-resize}.gc-bar__handle--left::before{left:2px}.gc-bar__handle--right{right:0;cursor:e-resize}.gc-bar__handle--right::before{right:2px}.gc-bar--resizing{opacity:.8;z-index:10}.gc-bar--dragging{opacity:.9;z-index:10;cursor:grabbing;box-shadow:0 4px 12px rgba(0,0,0,.15)}.gc-bar--has-assignments{cursor:default}.gc-bar--has-assignments .gc-bar__handle--left{cursor:w-resize}.gc-bar--has-assignments .gc-bar__handle--right{cursor:e-resize}.gc-bar--error{animation:gc-bar-error-shake .3s ease-in-out;box-shadow:0 0 0 2px #ef4444}@keyframes gc-bar-error-shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}.gc-archived{border-top:1px solid var(--zinc-600);background:var(--zinc-800)}.gc-archived__header{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);width:100%;background:none;border:none;cursor:pointer;transition:background var(--transition-fast)}.gc-archived__header:hover{background:var(--zinc-700)}.gc-archived__toggle{color:var(--zinc-400);transition:transform var(--transition-fast);flex-shrink:0}.gc-archived__toggle.gc-archived__toggle--expanded{transform:rotate(90deg)}.gc-archived__title{font-size:var(--font-size-xs);font-weight:500;color:var(--zinc-300)}.gc-archived__count{font-size:10px;font-weight:600;color:var(--zinc-400);background:var(--zinc-600);padding:1px 6px;border-radius:var(--radius-sm)}.gc-archived__content{padding:0 var(--spacing-4) var(--spacing-3)}.gc-archived__content.gc-archived__content--hidden{display:none}.gc-archived__row{display:flex;align-items:center;padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius);opacity:.6}.gc-archived__row:hover{background:var(--zinc-700)}.gc-footer{display:flex;justify-content:flex-start;padding:var(--spacing-2) var(--spacing-4);border-top:1px solid var(--zinc-600);margin-left:500px}.gc-container:has(.gc-sidebar--collapsed) .gc-footer{margin-left:350px}.gc-workload{width:100%;background:var(--zinc-800);border-radius:var(--radius-lg);border:1px solid var(--zinc-600);overflow:hidden;display:flex;flex-direction:column;margin-top:var(--spacing-4)}.gc-workload__header{display:flex;align-items:center;padding:var(--spacing-3) var(--spacing-4);background:var(--zinc-800);border-bottom:1px solid var(--zinc-600)}.gc-workload__title{font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-100);margin:0;text-transform:uppercase;letter-spacing:.02em}.gc-workload__body{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch;width:100%;max-height:300px;overflow:hidden}.gc-workload__sidebar{width:280px;min-width:280px;flex-shrink:0;border-right:1px solid var(--zinc-600);display:flex;flex-direction:column;transition:width var(--transition),min-width var(--transition)}.gc-container:not(:has(.gc-sidebar--collapsed))~.gc-workload .gc-workload__sidebar{width:500px;min-width:500px}.gc-workload__sidebar-header{display:flex;align-items:center;padding:var(--spacing-2) var(--spacing-3);background:var(--zinc-800);border-bottom:1px solid var(--zinc-600);font-size:10px;font-weight:600;color:var(--zinc-400);text-transform:uppercase;letter-spacing:.03em;height:80px;flex-shrink:0}.gc-workload__sidebar-content{flex:1;overflow-y:auto}.gc-workload__resource{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);border-bottom:1px solid var(--zinc-700);height:32px}.gc-workload__avatar{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:9px;font-weight:600;background:var(--bg, var(--zinc-600));color:var(--fg, var(--zinc-100));flex-shrink:0}.gc-workload__name{font-size:var(--font-size-xs);font-weight:500;color:var(--zinc-100);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gc-workload__timeline{flex:1 1 0%;min-width:0;overflow:auto;display:flex;flex-direction:column;--day-width: 80px}.gc-workload__timeline-header-wrapper{flex-shrink:0;position:sticky;top:0;z-index:3;background:var(--zinc-800)}.gc-workload__super-header{display:flex;background:var(--zinc-800);border-bottom:1px solid var(--zinc-600);height:28px}.gc-workload__super-cell{min-width:calc(var(--span, 1)*var(--day-width));width:calc(var(--span, 1)*var(--day-width));display:flex;align-items:center;justify-content:flex-start;font-size:11px;font-weight:600;color:var(--zinc-100);border-right:1px solid var(--zinc-500);flex-shrink:0;white-space:nowrap;text-transform:capitalize}.gc-workload__super-cell span{position:sticky;left:8px;background:var(--zinc-800);padding:0 var(--spacing-1)}.gc-workload__super-cell:last-child{border-right:none}.gc-workload__day-header{display:flex;background:var(--zinc-800);border-bottom:1px solid var(--zinc-600);height:52px}.gc-workload__day{min-width:var(--day-width);width:var(--day-width);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-1);border-right:1px solid var(--zinc-700);gap:2px;flex-shrink:0;background:var(--zinc-800)}.gc-workload__day:last-child{border-right:none}.gc-workload__day-name{font-size:9px;font-weight:600;color:var(--zinc-400);text-transform:uppercase;letter-spacing:.02em}.gc-workload__day-number{font-size:var(--font-size-xs);font-weight:600;color:var(--zinc-100)}.gc-workload__timeline-content{flex:1;position:relative}.gc-workload__row{display:flex;height:32px;min-height:32px;position:relative;flex-shrink:0}.gc-workload__cell{min-width:var(--day-width);width:var(--day-width);height:100%;border-right:1px solid var(--zinc-700);flex-shrink:0;box-sizing:border-box;background:var(--zinc-800)}.gc-workload__cell:last-child{border-right:none}.gc-workload-cell--today{border-left:3px solid var(--zinc-600)}.gc-workload-cell--weekend{background:var(--zinc-800)}.gc-workload-cell--holiday{background:var(--zinc-700)}.gc-workload-cell--closure{background:rgba(147,197,253,.5)}.gc-workload__cell--assigned{background:#fff3cf !important;box-shadow:inset 0 0 0 3px var(--zinc-800);border:1px dashed var(--zinc-400)}.gc-workload-day--today{border-left:3px solid var(--zinc-600)}.gc-workload-day--today .gc-workload__day-number{background:var(--zinc-200);color:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center}.gc-workload-day--weekend{background:var(--zinc-700)}.gc-workload-day--holiday{background:var(--zinc-600)}.gc-body{position:relative}.gc-body .gcm-scroll-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:10;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--zinc-700);border:1px solid var(--zinc-500);border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.15);color:var(--zinc-200);cursor:pointer;transition:all var(--transition-fast);opacity:.9}.gc-body .gcm-scroll-btn:hover{opacity:1;background:var(--zinc-600);color:var(--zinc-900);border-color:var(--zinc-500);box-shadow:0 4px 12px rgba(212,165,116,.4)}.gc-body .gcm-scroll-btn:active{transform:translateY(-50%) scale(0.95)}.gc-body .gcm-scroll-btn--left{left:358px}.gc-body .gcm-scroll-btn--right{right:8px}.gc-body .gcm-scroll-btn svg{flex-shrink:0}.gc-container:has(.gc-sidebar:not(.gc-sidebar--collapsed)) .gc-body .gcm-scroll-btn--left{left:508px}.main-body:has(.decompte-container),.main-body:has(.card--table),.main-body:has(.settings-panel){--zinc-950: #ffffff;--zinc-900: #fafafb;--zinc-850: #ffffff;--zinc-800: #ffffff;--zinc-750: #f3f3f5;--zinc-700: #e5e7eb;--zinc-600: #6b7280;--zinc-500: #9aa0aa;--zinc-400: #6b7280;--zinc-300: #374151;--zinc-200: #1f2430;--zinc-100: #1f2430;--zinc-50: #111827;--color-minor: #22c55e;--color-minor-light: #4ade80;--color-minor-alpha: rgba(34, 197, 94, 0.12);background-color:#fafafb;background-image:none;color:#1f2430}.main-body:has(.decompte-container) .planning-container,.main-body:has(.card--table) .planning-container,.main-body:has(.settings-panel) .planning-container{padding:var(--spacing-6) var(--spacing-8) calc(var(--spacing-8)*2)}.main-body:has(.decompte-container) .gcm-header,.main-body:has(.card--table) .gcm-header,.main-body:has(.settings-panel) .gcm-header{margin-bottom:var(--spacing-5);padding-left:20px;padding-right:20px;background:none;border:none}.main-body:has(.decompte-container) .decompte-container,.main-body:has(.card--table) .decompte-container,.main-body:has(.settings-panel) .decompte-container{border:1px solid var(--zinc-700)}@media(max-width: 768px){.main-body:has(.decompte-container) .planning-container,.main-body:has(.card--table) .planning-container{padding:var(--spacing-4) var(--spacing-4) var(--spacing-8)}}.main-body:has(.decompte-wrapper),.main-body--fixed:has(.decompte-wrapper){overflow:hidden}.main-body:has(.decompte-wrapper) .planning-container,.main-body--fixed:has(.decompte-wrapper) .planning-container{flex:1;min-height:0;display:flex;flex-direction:column}.decompte-wrapper{display:flex;flex-direction:column;gap:var(--spacing-4);flex:1;min-height:0;overflow:auto}.decompte-container{background:var(--zinc-800);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:visible}.decompte-scroll{overflow:visible;max-width:100%;padding-bottom:var(--spacing-4)}.decompte-table{width:100%;border-collapse:collapse;font-size:var(--font-size-xs);white-space:nowrap}.decompte-table thead{position:sticky;top:0;z-index:10;background:var(--zinc-800)}.decompte-header-row th{padding:var(--spacing-2) var(--spacing-1);text-align:center;font-weight:600;color:var(--zinc-100);border-bottom:1px solid var(--zinc-700)}.decompte-zones-row{display:table-row}.decompte-zones-row th{padding:var(--spacing-1);font-weight:500;font-size:.625rem;color:var(--zinc-400);border-bottom:2px solid var(--zinc-700);background:#f3f3f5}.decompte-col-fixed{position:sticky;background:var(--zinc-800);z-index:5}.decompte-col-salarie{left:0;min-width:150px;max-width:150px;text-align:left !important;padding-left:var(--spacing-3) !important;border-right:1px solid var(--zinc-700)}.decompte-warning{display:inline-flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);margin-bottom:var(--spacing-3);background:var(--zinc-800);border:1px solid var(--zinc-600);border-left:3px solid var(--color-minor);border-radius:var(--radius-sm);color:var(--zinc-200);font-size:var(--font-size-sm);position:relative;z-index:10}.decompte-warning svg{color:var(--color-minor);flex-shrink:0;width:18px;height:18px}.decompte-warning-error{border-left-color:#ef4444;display:flex;align-items:flex-start}.decompte-warning-error svg{color:#ef4444;margin-top:2px}.decompte-warning-content{display:flex;flex-direction:column;gap:var(--spacing-1)}.decompte-warning-content strong{color:var(--zinc-100);font-weight:600}.decompte-warning-action{align-self:flex-start;margin-top:6px;background:var(--color-minor);color:#fff;border:none;border-radius:7px;padding:6px 12px;font-size:12.5px;font-weight:600;cursor:pointer;transition:background .12s}.decompte-warning-action:hover{background:var(--color-minor-light)}.decompte-inconsistencies-list{margin:0;padding-left:var(--spacing-4);font-size:var(--font-size-xs);color:var(--zinc-400)}.decompte-inconsistencies-list li{margin-bottom:var(--spacing-1)}.decompte-col-coef{left:150px;min-width:45px;text-align:center !important}.decompte-col-contract{left:195px;min-width:70px;text-align:center !important;border-right:1px solid var(--zinc-700)}.decompte-col-day{min-width:32px;max-width:32px;text-align:center;padding:var(--spacing-1) !important}.decompte-col-day.non-working{background:var(--zinc-700)}.decompte-col-day .day-name{display:block;font-size:.5625rem;color:var(--zinc-400);text-transform:capitalize}.decompte-col-day .day-number{display:block;font-weight:600}.decompte-col-zone-group{background:var(--zinc-800) !important;border-left:2px solid var(--zinc-700);border-right:2px solid var(--zinc-700)}.decompte-col-zone-group-transport{background:#f3f3f5 !important}.decompte-col-zone{min-width:24px;max-width:24px;text-align:center;padding:var(--spacing-1) !important}.decompte-col-zone-trajet{background:var(--zinc-800)}.decompte-col-zone-transport{background:#f3f3f5}th.decompte-col-zone-transport{background:#f3f3f5 !important}.decompte-col-meals{min-width:45px;text-align:center !important;border-left:2px solid var(--zinc-700);background:var(--zinc-800) !important;border-right:1px solid var(--zinc-700)}.decompte-col-total{min-width:70px;text-align:center !important;border-left:2px solid var(--zinc-700);background:var(--zinc-800) !important}.decompte-row{border-bottom:1px solid var(--zinc-700)}.decompte-row:hover{background:var(--zinc-800)}.decompte-row:hover .decompte-col-fixed{background:var(--zinc-800)}.decompte-row td{padding:var(--spacing-2) var(--spacing-1);vertical-align:middle}.salarie-info{display:flex;flex-direction:column;gap:2px}.salarie-name{font-weight:500;color:var(--zinc-100);text-decoration:none}.salarie-name:hover{color:var(--zinc-700)}.salarie-name-row{display:flex;align-items:center;gap:6px}.office-worker-icon{display:inline-flex;align-items:center;color:var(--zinc-400)}.office-worker-icon svg{stroke:var(--zinc-500)}.salarie-regime{font-size:.5625rem;color:var(--zinc-400)}.decompte-hours{font-weight:500;color:var(--zinc-100)}.decompte-absence{display:inline-block;padding:2px 4px;border-radius:var(--radius-sm);font-size:.5625rem;font-weight:600}.decompte-empty{color:var(--zinc-500)}.zone-disabled{color:var(--zinc-500);font-size:.5rem}.decompte-legend{margin-top:var(--spacing-4);padding:var(--spacing-4);background:var(--zinc-800);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.decompte-legend .legend-section{margin-bottom:var(--spacing-3)}.decompte-legend .legend-section:last-child{margin-bottom:0}.decompte-legend h4{margin:0 0 var(--spacing-2) 0;font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-100)}.decompte-legend .legend-items{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}.decompte-legend .legend-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.decompte-legend .legend-text{font-size:var(--font-size-xs);color:var(--zinc-400)}.decompte-col-acb-group{background:rgba(82,82,91,.15) !important;border-left:2px solid var(--zinc-600);border-right:2px solid var(--zinc-600);color:var(--zinc-600)}.decompte-col-acb{min-width:50px;max-width:50px;text-align:center !important;padding:var(--spacing-1) !important;background:#f3f3f5 !important;border-right:1px solid var(--zinc-700);color:#6b7280}th.decompte-col-acb{font-size:10px;line-height:1.2;white-space:normal;word-wrap:break-word;background:#f3f3f5 !important;color:#6b7280}.decompte-row td.decompte-col-acb{font-weight:500;background:#f3f3f5 !important}.acb-info-box{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);margin-top:var(--spacing-4);background:rgba(82,82,91,.15);border:1px solid rgba(106,159,212,.3);border-radius:var(--radius-md);color:var(--zinc-600);font-size:var(--font-size-sm)}.acb-info-box svg{flex-shrink:0;margin-top:2px;stroke:var(--zinc-600)}.acb-info-box-content{display:flex;flex-direction:column;gap:var(--spacing-2)}.acb-info-box-title{font-weight:600;margin-bottom:var(--spacing-1)}.acb-info-box ul{margin:0;padding-left:var(--spacing-4)}.acb-info-box li{margin-bottom:var(--spacing-1)}.acb-info-box li:last-child{margin-bottom:0}.acb-info-box strong{color:var(--zinc-600)}.acb-page{--acb-accent: #22c55e;--acb-accent-soft: #dcfce7;--acb-coral: #16a34a;--acb-coral-soft: #dcfce7;--acb-ink: #1f2430;--acb-ink-soft: #6b7280;--acb-line: #e5e7eb;--acb-card: #f3f3f5;--acb-white: #ffffff;--acb-muted: #9a9aa3;display:block;width:100%;max-width:1280px;margin:0 auto;padding:var(--spacing-8) var(--spacing-8) calc(var(--spacing-8)*2);color:var(--acb-ink)}.main-body:has(.acb-page){background-image:none;background-color:#fafafb}@media(max-width: 768px){.acb-page{padding:var(--spacing-5) var(--spacing-4) var(--spacing-8)}}.acb-page-title{font-size:24px;font-weight:700;color:var(--acb-ink);margin:4px 0 24px}.acb-disclaimer{margin:-8px 0 16px;padding:12px 16px;background:var(--acb-card);border:1px solid var(--acb-line);border-left:3px solid var(--color-minor, #22c55e);border-radius:10px;font-size:13px;line-height:1.5;color:var(--acb-ink, #1f2430)}.acb-panel{background:var(--acb-white);border:1px solid var(--acb-line);border-radius:18px;padding:22px;overflow:auto}.acb-panel--muted{background:var(--acb-card)}.acb-grid-2{display:grid;grid-template-columns:repeat(auto-fit, minmax(420px, 1fr));gap:22px;align-items:start}.acb-section-label{font-size:12px;font-weight:600;letter-spacing:.1em;color:var(--acb-ink-soft);text-transform:uppercase;margin-bottom:16px}.acb-hint{font-size:13px;color:var(--acb-ink-soft);line-height:1.5;margin:14px 0 0}.acb-divider{border-top:1px solid var(--acb-line);margin:0 0 22px}.acb-summary-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:14px}.acb-summary-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;background:var(--acb-card);border-radius:14px;padding:18px 12px}.acb-summary-icon{width:44px;height:44px;flex-shrink:0;border-radius:12px;background:#d8d8de;color:#6f6f79;display:grid;place-items:center}.acb-summary-label{font-size:11px;font-weight:600;letter-spacing:.07em;color:var(--acb-ink-soft);text-transform:uppercase}.acb-summary-value{font-size:17px;font-weight:700;color:var(--acb-ink);white-space:nowrap;margin-top:2px}.acb-inline-row{display:flex;align-items:stretch;gap:8px}.acb-input-number{width:90px;text-align:center;font-size:16px;font-weight:600;color:var(--acb-ink);background:var(--acb-white);border:1px solid var(--acb-line);border-radius:10px;padding:10px 14px}.acb-input-suffix{display:grid;place-items:center;font-size:13px;font-weight:500;color:#6f6f79;background:var(--acb-card);border-radius:10px;padding:10px 18px}.acb-btn-accent{font-size:14px;font-weight:600;color:var(--acb-white);background:var(--color-minor-strong);border:none;border-radius:10px;padding:10px 18px;cursor:pointer;transition:background .18s ease}.acb-btn-accent:hover{background:var(--color-minor-strong-hover);color:var(--acb-white)}.acb-table-wrapper{overflow-x:auto}.acb-table{width:100%;border-collapse:collapse;font-size:14px}.acb-table th{text-align:left;font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--acb-ink-soft);padding:10px 12px}.acb-table td{padding:14px 12px;color:var(--acb-ink)}.acb-table tbody tr{border-top:1px solid var(--acb-line)}.acb-table--center th:not(:first-child),.acb-table--center td:not(:first-child){text-align:center}.acb-table--center tbody tr{background:var(--acb-white)}.acb-td-mode{font-weight:500}.acb-regime-table input[type=checkbox]{width:17px;height:17px;accent-color:var(--color-minor);cursor:pointer}.acb-table td.acb-yes,.acb-yes{color:var(--color-minor-text);font-weight:700}.acb-table td.acb-no,.acb-no{color:#b0b0b8;font-weight:500}.acb-zones-head{margin-bottom:18px}.acb-zones-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.acb-zones-col-label{font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--acb-ink-soft);margin-bottom:10px}.acb-chips{display:flex;flex-wrap:wrap;gap:8px}.acb-chip{font-size:13px;font-weight:500;color:var(--acb-coral);background:var(--acb-coral-soft);border-radius:8px;padding:6px 12px}.acb-effectifs-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));gap:16px}.acb-effectif-card{border:1px solid var(--acb-line);border-radius:14px;padding:16px}.acb-effectif-card--muted{background:var(--acb-card)}.acb-effectif-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.acb-effectif-title{font-size:14px;font-weight:600;color:var(--acb-ink)}.acb-count{min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#d8d8de;color:#6f6f79;font-size:12px;font-weight:700;display:grid;place-items:center}.acb-count--filled{background:var(--acb-ink);color:var(--acb-white)}.acb-effectif-tags{display:flex;gap:6px;margin:12px 0 14px}.acb-tag{width:26px;height:26px;border-radius:50%;background:var(--acb-card);color:var(--acb-ink-soft);font-size:11px;font-weight:600;display:grid;place-items:center}.acb-tag--no{width:auto;border-radius:999px;padding:0 12px}.acb-effectif-people{display:grid;gap:8px}.acb-person-chip{display:flex;align-items:center;gap:10px;border:1px solid var(--acb-line);border-radius:999px;padding:5px 10px 5px 5px;text-decoration:none}.acb-person-avatar{width:26px;height:26px;border-radius:50%;background:var(--acb-accent);color:var(--acb-white);font-size:11px;font-weight:700;display:grid;place-items:center;flex-shrink:0}.acb-person-name{font-size:13px;color:var(--acb-ink)}.acb-empty{font-size:13px;font-style:italic;color:var(--acb-muted);margin:0}.acb-av-header{display:flex;align-items:center;gap:14px;margin:4px 0 18px}.acb-status{font-size:13px;font-weight:600;border-radius:8px;padding:5px 12px}.acb-status--on{color:#2e8b57;background:#e6f4ec}.acb-status--off{color:var(--acb-ink-soft);background:var(--acb-card)}.acb-av-description{font-size:15px;line-height:1.6;color:var(--acb-ink-soft);margin:0 0 24px;max-width:920px}.acb-av-description strong{color:var(--acb-ink)}.acb-communes{display:flex;flex-wrap:wrap;gap:10px}.acb-commune-chip{display:inline-flex;align-items:center;gap:8px;background:var(--acb-white);border:1px solid var(--acb-line);border-radius:10px;padding:10px 12px;font-size:14px}.acb-commune-name{font-weight:600;color:var(--acb-ink)}.acb-commune-cp{color:var(--acb-ink-soft)}.acb-commune-remove{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;padding:0;color:#b0b0b8;cursor:pointer;transition:color .15s ease}.acb-commune-remove:hover{color:var(--acb-coral)}.acb-commune-form{display:flex;gap:10px;flex-wrap:wrap}.acb-input-text{flex:1 1 200px;max-width:280px;font-size:14px;color:var(--acb-ink);background:var(--acb-white);border:1px solid var(--acb-line);border-radius:10px;padding:12px 14px}.acb-input-text--cp{flex:0 1 160px}.acb-calc-head{display:flex;align-items:center;gap:12px;margin-bottom:16px;color:var(--acb-ink-soft)}.acb-calc-head svg{flex-shrink:0}.acb-calc-title{font-size:16px;font-weight:700;margin:0;color:var(--acb-ink)}.acb-calc-list{margin:0;padding-left:22px;display:grid;gap:8px;font-size:14px;color:var(--acb-ink-soft);line-height:1.5}.acb-calc-list strong{color:var(--acb-ink)}@media(max-width: 768px){.acb-summary-grid,.acb-zones-grid{grid-template-columns:1fr}}.settings-container{display:flex;flex-direction:column;gap:var(--spacing-4);flex:1 1 0;min-height:0;overflow-y:auto;padding-bottom:var(--spacing-6)}.settings-tabs{display:flex;gap:var(--spacing-2);border-bottom:1px solid var(--zinc-700);padding-bottom:var(--spacing-2)}.settings-panel{display:none}.settings-panel.active{display:block}.settings-panel .card .form{max-width:none}.settings-description{color:var(--zinc-400);font-size:var(--font-size-xs);margin-bottom:var(--spacing-3)}.card-header-with-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-4)}.card-header-with-nav h2{margin:0}.year-nav{display:flex;gap:var(--spacing-2)}.holidays-grid{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}.holidays-grid.holidays-disabled{opacity:.6}.closures-list{display:flex;flex-direction:column;gap:var(--spacing-2);margin-bottom:var(--spacing-4)}.closure-card{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);background:var(--zinc-800);border-radius:var(--radius);border:1px solid var(--zinc-700);transition:all var(--transition-fast)}.closure-card:hover{background:var(--zinc-700);border-color:var(--zinc-600)}.closure-card-content{display:flex;align-items:center;gap:var(--spacing-4);flex:1}.closure-card-name{font-weight:500;font-size:var(--font-size-sm);color:var(--zinc-200);min-width:150px}.closure-card-dates{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--zinc-400)}.closure-card-recurring{display:inline-flex;align-items:center;padding:2px var(--spacing-2);background:var(--zinc-700);color:var(--zinc-300);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;white-space:nowrap}.inline-form-compact{display:flex;align-items:center;gap:var(--spacing-2);flex-wrap:wrap}.inline-form-compact input[type=text],.inline-form-compact input[type=date]{padding:var(--spacing-2);font-size:var(--font-size-sm);border:1px solid var(--zinc-600);border-radius:var(--radius);background:var(--zinc-800);color:var(--zinc-200)}.inline-form-compact input[type=text]{width:150px}.inline-form-compact input[type=date]{width:130px}.form-separator{color:var(--zinc-500)}.closure-dates{color:var(--zinc-400);font-size:var(--font-size-sm)}.input-with-suffix{display:flex;align-items:center;gap:var(--spacing-2)}.input-with-suffix input{width:120px}.input-suffix{color:var(--zinc-400);font-size:var(--font-size-sm)}.inline-save-group{max-width:320px}.inline-save-group label{display:block;font-size:var(--font-size-sm);font-weight:500;margin-bottom:var(--spacing-2);color:var(--zinc-200)}.inline-save-input{display:flex;align-items:center;gap:var(--spacing-2)}.inline-save-input input{width:70px;padding:var(--spacing-2);font-size:var(--font-size-sm);font-family:inherit;font-weight:500;color:var(--zinc-200);background:var(--zinc-800);border:1px solid var(--zinc-600);border-radius:var(--radius);transition:all var(--transition-fast);text-align:center}.inline-save-input input:focus{outline:none;border-color:var(--zinc-600);background:var(--zinc-800)}.inline-save-input .input-suffix{color:var(--zinc-400);font-size:var(--font-size-sm);white-space:nowrap}.inline-save-group.saved .inline-save-input input{background-color:var(--zinc-800)}.inline-save-group.modified .inline-save-input input{border-color:var(--zinc-600)}.custom-allowances-section{margin-top:var(--spacing-4);padding:var(--spacing-4);background:var(--zinc-800);border-radius:var(--radius);border:1px solid var(--zinc-700)}.custom-allowances-section h4{font-size:var(--font-size-sm);font-weight:600;margin:0 0 var(--spacing-1) 0;color:var(--zinc-200)}.custom-allowances-section .form-hint{margin-top:0;margin-bottom:var(--spacing-3)}.custom-allowances-grid{display:flex;flex-direction:column;gap:var(--spacing-2)}.custom-allowance-item{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-3);background:var(--zinc-850);border:1px solid var(--zinc-700);border-radius:var(--radius);cursor:pointer;transition:all var(--transition-fast)}.custom-allowance-item:hover{border-color:var(--zinc-600)}.custom-allowance-item:has(.custom-allowance-checkbox:checked){border-color:var(--zinc-500);background:var(--zinc-800)}.custom-allowance-checkbox{margin-top:2px;width:18px;height:18px;accent-color:var(--zinc-400)}.custom-allowance-content{flex:1}.custom-allowance-title{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-200)}.custom-allowance-desc{display:block;font-size:var(--font-size-xs);color:var(--zinc-400);margin-top:2px}.info-cards{display:flex;gap:var(--spacing-3);margin-top:var(--spacing-2)}.info-card{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);background:var(--zinc-800);border-radius:var(--radius);border:1px solid var(--zinc-700);flex:1}.info-card-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--zinc-700);border-radius:var(--radius);color:var(--zinc-300);flex-shrink:0}.info-card-icon svg{width:20px;height:20px}.info-card h4{margin:0;font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-200)}.info-card p{margin:0;font-size:var(--font-size-xs);color:var(--zinc-400)}.table-rules-wrapper{background:var(--zinc-800);border-radius:var(--radius);padding:var(--spacing-4);border:1px solid var(--zinc-700)}.table-rules-wrapper .table{background:var(--zinc-850);border-radius:var(--radius-sm);overflow:hidden}.table-rules-wrapper .table th{background:var(--zinc-800);white-space:nowrap}.table-rules-wrapper .table td:first-child{font-weight:500}.rules-table{max-width:600px}.rules-table th:not(:first-child),.rules-table td:not(:first-child){text-align:center;width:90px}.rules-table th:first-child,.rules-table td:first-child{width:auto}.badge-yes{background:var(--zinc-700);color:var(--zinc-200)}.badge-no{background:var(--zinc-800);color:var(--zinc-500)}.zones-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:var(--spacing-4);margin-top:var(--spacing-2)}.zone-column h4{font-size:var(--font-size-xs);font-weight:600;margin-bottom:var(--spacing-2);color:var(--zinc-400);text-transform:uppercase;letter-spacing:.05em}.zones-table{max-width:100%}.zones-table td:last-child{width:auto}.vehicle-types-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:var(--spacing-3)}.vehicle-type-card{background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius);padding:var(--spacing-3)}.vehicle-type-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-2)}.vehicle-type-card-header h4{font-size:var(--font-size-xs);font-weight:600;margin:0;color:var(--zinc-200)}.employee-count{background:var(--zinc-700);color:var(--zinc-300);font-size:var(--font-size-xs);font-weight:600;padding:2px 6px;border-radius:var(--radius);min-width:18px;text-align:center}.vehicle-type-badges{display:flex;flex-wrap:wrap;gap:var(--spacing-1);margin-bottom:var(--spacing-2);padding-bottom:var(--spacing-2);border-bottom:1px solid var(--zinc-700)}.vehicle-type-badges .badge{font-size:10px;padding:2px 6px}.vehicle-type-employees{display:flex;flex-wrap:wrap;gap:var(--spacing-1)}.employee-chip{background:var(--zinc-850);padding:2px var(--spacing-2);border-radius:var(--radius);font-size:var(--font-size-xs);color:var(--zinc-300);text-decoration:none;transition:all .15s ease;border:1px solid var(--zinc-700)}.employee-chip:hover{background:var(--zinc-700);color:var(--zinc-100);border-color:var(--zinc-600)}.empty-hint{font-size:var(--font-size-xs);color:var(--zinc-500);font-style:italic;margin:0}.weekend-days-grid{display:flex;gap:var(--spacing-3);flex-wrap:wrap}.weekend-day-checkbox{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);background:var(--zinc-800);border-radius:var(--radius);cursor:pointer;transition:background var(--transition-fast)}.closure-dates{display:flex;align-items:center;gap:var(--spacing-1)}.weekend-days-grid{display:grid;grid-template-columns:repeat(7, 1fr);gap:var(--spacing-2)}.weekend-day-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3) var(--spacing-2);background:var(--zinc-800);border:2px solid rgba(0,0,0,0);border-radius:var(--radius);cursor:pointer;transition:all var(--transition-fast);text-align:center}.weekend-day-card:hover{background:var(--zinc-700);border-color:var(--zinc-600)}.weekend-day-card.active{background:var(--zinc-700);border-color:var(--zinc-500)}.weekend-day-name{font-size:var(--font-size-sm);font-weight:500;color:var(--zinc-300);margin-bottom:var(--spacing-1)}.weekend-day-card.active .weekend-day-name{color:var(--zinc-100)}.weekend-day-status{font-size:var(--font-size-xs);color:var(--zinc-500)}.weekend-day-card.active .weekend-day-status{color:var(--zinc-300);font-weight:500}.weekend-day-input{position:absolute;opacity:0;pointer-events:none}.empty-state-inline{padding:var(--spacing-4);text-align:center;color:var(--zinc-400);font-size:var(--font-size-sm);background:var(--zinc-800);border-radius:var(--radius);margin-bottom:var(--spacing-4)}.form-actions-inline{margin-top:var(--spacing-4);padding-top:var(--spacing-4);border-top:1px solid var(--zinc-700)}.weekend-days-row{display:flex;align-items:center;gap:var(--spacing-2);flex-wrap:wrap}.weekend-day-item{display:flex;align-items:center;justify-content:center;padding:var(--spacing-2);background:var(--zinc-800);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.weekend-day-item:hover{background:var(--zinc-700)}.weekend-day-item.active{background:var(--zinc-700);color:var(--zinc-200)}.weekend-day-abbrev{font-size:var(--font-size-xs);font-weight:500;text-transform:capitalize}.btn-block{width:100%}.absence-types-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));gap:var(--spacing-3)}.absence-type-card{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3);background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius)}.absence-type-info{display:flex;flex-direction:column;gap:2px}.absence-type-name{font-weight:500;font-size:var(--font-size-sm);color:var(--zinc-200)}.absence-type-key{font-size:var(--font-size-xs);color:var(--zinc-500);font-family:monospace}.absence-legend{display:flex;flex-direction:column;gap:var(--spacing-2)}.absence-legend-item{display:flex;align-items:center;gap:var(--spacing-3);font-size:var(--font-size-sm);color:var(--zinc-400)}.absence-legend-item .timesheet-absence{flex-shrink:0;width:32px;text-align:center}.absence-types-list{display:flex;flex-direction:column;gap:var(--spacing-2)}.absence-type-row{background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius);padding:var(--spacing-3)}.absence-type-row:hover{background:var(--zinc-700)}.absence-type-preview{display:flex;align-items:center;gap:var(--spacing-3)}.absence-type-desc{font-size:var(--font-size-xs);color:var(--zinc-400)}.absence-type-actions{display:flex;gap:var(--spacing-1);margin-left:auto}.absence-type-row{display:flex;align-items:center;flex-wrap:wrap}.absence-type-edit{width:100%;margin-top:var(--spacing-3);padding-top:var(--spacing-3);border-top:1px solid var(--zinc-700)}.absence-type-edit-form{display:flex;flex-direction:column;gap:var(--spacing-3)}.absence-type-edit-fields{display:flex;gap:var(--spacing-2);flex-wrap:wrap;align-items:center}.absence-type-edit-actions{display:flex;gap:var(--spacing-2)}.absence-type-add-form{max-width:none}.absence-type-add-fields{display:flex;gap:var(--spacing-2);flex-wrap:wrap;align-items:stretch}.absence-type-add-fields .btn{align-self:stretch}.form-input-sm{padding:var(--spacing-2);font-size:var(--font-size-sm);border:1px solid var(--zinc-600);border-radius:var(--radius-sm);background:var(--zinc-800);color:var(--zinc-200)}.form-input-sm:focus{outline:none;border-color:var(--zinc-500);background:var(--zinc-700)}.form-input-abbrev{width:100px;text-transform:uppercase}.form-input-desc{flex:1;min-width:200px}.form-select-sm{padding:var(--spacing-2);font-size:var(--font-size-base);border:1px solid var(--zinc-600);border-radius:var(--radius-sm);background:var(--zinc-800);color:var(--zinc-200);cursor:pointer}.form-select-sm:focus{outline:none;border-color:var(--zinc-500);background:var(--zinc-700)}.color-palette{display:flex;gap:var(--spacing-2);flex-wrap:wrap}.color-swatch{padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500}.weather-status-card{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-4);padding:var(--spacing-4);background:var(--zinc-800);border-radius:var(--radius);border:1px solid var(--zinc-700)}.weather-status-info{display:flex;flex-direction:column;gap:var(--spacing-2);flex:1}.weather-status-row{display:flex;align-items:center;gap:var(--spacing-3)}.weather-status-label{font-size:var(--font-size-xs);color:var(--zinc-400);min-width:150px}.weather-status-value{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--zinc-200)}.weather-api-counter{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;background:var(--zinc-700);color:var(--zinc-200);border-radius:var(--radius-sm);font-weight:600;font-size:var(--font-size-sm)}.weather-api-counter--empty{background:var(--zinc-800);color:var(--zinc-500)}.weather-api-hint{font-size:var(--font-size-xs);color:var(--zinc-500)}.weather-status-actions{flex-shrink:0}.weather-disclaimer{margin-top:var(--spacing-3);font-style:italic;color:var(--zinc-500)}.acb-section-content{display:flex;flex-direction:column;gap:var(--spacing-4)}.acb-communes-section{margin-top:0}.acb-communes-section h4{font-size:var(--font-size-xs);font-weight:600;margin-bottom:var(--spacing-2);color:var(--zinc-400);text-transform:uppercase;letter-spacing:.05em}.communes-list{display:flex;flex-wrap:wrap;gap:var(--spacing-2);padding:var(--spacing-3);background:var(--zinc-800);border-radius:var(--radius);border:1px solid var(--zinc-700)}.commune-chip{display:inline-flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-1) var(--spacing-2);background:var(--zinc-850);border:1px solid var(--zinc-700);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.commune-name{font-weight:500;color:var(--zinc-200)}.commune-postal{color:var(--zinc-500);font-family:var(--font-mono)}.commune-delete{display:inline-flex;align-items:center;justify-content:center;padding:2px;background:rgba(0,0,0,0);border:none;color:var(--zinc-500);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);margin-left:var(--spacing-1)}.commune-delete:hover{background:rgba(39,39,42,.25);color:var(--zinc-800)}.communes-list-footer{width:100%;margin-top:var(--spacing-2);padding-top:var(--spacing-3);border-top:1px solid var(--zinc-700)}.communes-list-footer .inline-form-compact{display:flex;gap:var(--spacing-2);align-items:center}.communes-list-footer input[type=text]{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--zinc-600);border-radius:var(--radius-sm);font-size:var(--font-size-xs);background:var(--zinc-850);color:var(--zinc-200)}.communes-list-footer input[name="arcachon_basin_commune[name]"]{width:150px}.communes-list-footer input[name="arcachon_basin_commune[postal_code]"]{width:100px}.table-mini{font-size:var(--font-size-xs)}.table-mini td{padding:var(--spacing-1) var(--spacing-2);color:var(--zinc-300)}.table-mini td:first-child{font-weight:600;color:var(--zinc-200);width:50px}.vehicle-type-card-muted{background:var(--zinc-850);border:1px dashed var(--zinc-700);margin-top:var(--spacing-4)}.vehicle-type-card-muted .vehicle-type-card-header h4{color:var(--zinc-400)}.vehicle-type-card-muted .employee-count{background:var(--zinc-800);color:var(--zinc-500)}.acb-info-box{display:flex;gap:var(--spacing-3);padding:var(--spacing-4);background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius);margin-top:var(--spacing-4)}.acb-info-box>svg{flex-shrink:0;color:var(--zinc-400)}.acb-info-box-content{flex:1}.acb-info-box-title{font-weight:600;font-size:var(--font-size-sm);color:var(--zinc-200);margin-bottom:var(--spacing-2)}.acb-info-box p{font-size:var(--font-size-sm);color:var(--zinc-400);margin:0 0 var(--spacing-2) 0}.acb-info-box ul{margin:0;padding-left:var(--spacing-4);font-size:var(--font-size-sm);color:var(--zinc-400)}.acb-info-box li{margin-bottom:var(--spacing-1)}.acb-info-box li:last-child{margin-bottom:0}.acb-info-box strong{color:var(--zinc-200)}.table-compact{width:100%;border-collapse:collapse}.table-compact th,.table-compact td{padding:var(--spacing-2) var(--spacing-3);text-align:left;border-bottom:1px solid var(--zinc-700)}.table-compact th{font-size:var(--font-size-xs);font-weight:600;color:var(--zinc-400);text-transform:uppercase;letter-spacing:.05em;background:var(--zinc-800)}.table-compact td{font-size:var(--font-size-sm);color:var(--zinc-300)}.table-compact td:first-child{color:var(--zinc-200);font-weight:500}.table-compact tbody tr:last-child td{border-bottom:none}.table-compact tbody tr:hover{background:var(--zinc-800)}@media(max-width: 1024px){.vehicle-types-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 768px){.info-cards{flex-direction:column}.info-card{flex:none}.zones-grid{grid-template-columns:1fr;gap:var(--spacing-3)}.vehicle-types-grid{grid-template-columns:1fr}.weekend-days-grid{grid-template-columns:repeat(auto-fit, minmax(90px, 1fr))}.closure-card-content{flex-direction:column;align-items:flex-start;gap:var(--spacing-2)}.closure-card-name{min-width:auto}.table-rules-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-rules-wrapper .table{min-width:400px}.inline-save-group{max-width:100%}.communes-list-footer .inline-form-compact{flex-wrap:wrap}.communes-list-footer input[name="arcachon_basin_commune[name]"]{flex:1;min-width:120px}.checkbox-card{max-width:100%}.absence-type-add-fields,.absence-type-edit-fields{flex-direction:column;align-items:stretch}.absence-type-add-fields>*,.absence-type-edit-fields>*{width:100%}.form-input-abbrev{width:100%}.form-input-desc{min-width:auto}}@media(max-width: 480px){.card-header-with-nav{flex-direction:column;align-items:flex-start;gap:var(--spacing-2)}.year-nav{width:100%;justify-content:space-between}.holiday-chip-btn{padding:var(--spacing-1) var(--spacing-2);flex-direction:column;align-items:flex-start;gap:var(--spacing-1)}.weather-status-card{flex-direction:column;gap:var(--spacing-3)}.weather-status-actions{width:100%}.weather-status-actions .btn{width:100%;justify-content:center}.weather-status-row{flex-direction:column;align-items:flex-start;gap:var(--spacing-1)}.weather-status-label{min-width:auto}.inline-form-compact{flex-direction:column;align-items:stretch}.inline-form-compact input[type=text],.inline-form-compact input[type=date]{width:100%}.acb-info-box{flex-direction:column}.acb-info-box>svg{align-self:flex-start}}.allowance-stats{display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--spacing-4);margin-bottom:var(--spacing-5)}.allowance-stat-card{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-4);background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius-lg);transition:all var(--transition-fast);position:relative}.allowance-stat-card:hover{border-color:var(--zinc-600);background:var(--zinc-750)}.allowance-stat-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(82,82,91,.15);border-radius:var(--radius);color:var(--zinc-600);flex-shrink:0}.allowance-stat-icon svg{width:24px;height:24px}.allowance-stat-content{display:flex;flex-direction:column;gap:var(--spacing-1);flex:1}.allowance-stat-label{font-size:var(--font-size-xs);font-weight:500;color:var(--zinc-400);text-transform:uppercase;letter-spacing:.05em}.allowance-stat-value{font-size:var(--font-size-lg);font-weight:600;color:var(--zinc-100)}.regime-cards-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:var(--spacing-3)}.regime-card{background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius);padding:var(--spacing-4);text-align:center;transition:all var(--transition-fast)}.regime-card:hover{border-color:var(--zinc-600)}.regime-card--muted{background:var(--zinc-850);border-style:dashed;opacity:.7}.regime-card-icon{width:40px;height:40px;margin:0 auto var(--spacing-3);display:flex;align-items:center;justify-content:center;background:var(--zinc-700);border-radius:var(--radius);color:var(--zinc-300)}.regime-card-icon svg{width:20px;height:20px}.regime-card-title{font-size:var(--font-size-xs);font-weight:600;color:var(--zinc-200);margin:0 0 var(--spacing-3) 0}.regime-card-allowances{display:flex;justify-content:center;gap:var(--spacing-2)}.regime-allowance{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--zinc-850);color:var(--zinc-600);transition:all var(--transition-fast)}.regime-allowance svg{width:14px;height:14px}.regime-allowance--active{background:var(--zinc-700);color:var(--zinc-200)}.disclosure-section{margin-bottom:var(--spacing-4)}.disclosure-header{display:flex;align-items:center;gap:var(--spacing-3);width:100%;padding:var(--spacing-3) var(--spacing-4);background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius);cursor:pointer;user-select:none;transition:all var(--transition-fast);text-align:left}.disclosure-header:hover{background:var(--zinc-750);border-color:var(--zinc-600)}.disclosure-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--zinc-400);transition:transform var(--transition-fast);flex-shrink:0}.disclosure-icon svg{width:14px;height:14px}.disclosure-icon.rotated{transform:rotate(90deg)}.disclosure-title{flex:1;font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-200);margin:0}.disclosure-summary{font-size:var(--font-size-xs);color:var(--zinc-400)}.disclosure-content{padding:var(--spacing-4);background:var(--zinc-800);border:1px solid var(--zinc-700);border-top:none;border-radius:0 0 var(--radius) var(--radius)}.disclosure-section.expanded .disclosure-header{border-radius:var(--radius) var(--radius) 0 0}.zone-visual-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-6)}.zone-visual-column h4{font-size:var(--font-size-xs);font-weight:600;color:var(--zinc-400);text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--spacing-3) 0}.zone-list-compact{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}.zone-item{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-1) var(--spacing-2);background:var(--zinc-850);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.zone-label{font-weight:600;color:var(--zinc-200);min-width:24px}.zone-distance{color:var(--zinc-500)}.zone-hint{font-size:var(--font-size-xs);color:var(--zinc-500);margin:var(--spacing-3) 0 0 0;font-style:italic}.employee-avatar-chip{display:inline-flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-1) var(--spacing-2) var(--spacing-1) var(--spacing-1);background:var(--zinc-850);border:1px solid var(--zinc-700);border-radius:999px;text-decoration:none;transition:all var(--transition-fast)}.employee-avatar-chip:hover{background:var(--zinc-700);border-color:var(--zinc-600)}.avatar-mini{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:9px;font-weight:600;color:var(--zinc-850);flex-shrink:0}.employee-avatar-chip .employee-name{font-size:var(--font-size-xs);color:var(--zinc-300);max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-count-badge{display:flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 var(--spacing-2);background:rgba(82,82,91,.15);color:var(--zinc-600);font-size:var(--font-size-xs);font-weight:600;border-radius:999px}.card-collapsible .card-header-collapsible{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4) var(--spacing-6);cursor:pointer;user-select:none;border-bottom:1px solid rgba(0,0,0,0);transition:all var(--transition-fast);margin:calc(-1*var(--spacing-6));margin-bottom:0}.card-collapsible .card-header-collapsible:hover{background:var(--zinc-800)}.card-header-left{display:flex;align-items:center;gap:var(--spacing-3)}.card-header-left h2{margin:0}.card-collapse-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--zinc-400);transition:transform var(--transition-fast)}.card-collapse-icon svg{width:16px;height:16px}.card-header-right{display:flex;align-items:center;gap:var(--spacing-3)}.card-content-collapsible{padding-top:var(--spacing-6);border-top:1px solid var(--zinc-700);margin-top:var(--spacing-4)}.card-collapsible.expanded .card-collapse-icon{transform:rotate(90deg)}.card-collapsible.collapsed .card-content-collapsible{display:none}.card-collapsible.collapsed .card-header-collapsible{margin-bottom:calc(-1*var(--spacing-6))}.badge-success{background:rgba(106,172,126,.2);color:#6aac7e}.badge-secondary{background:var(--zinc-700);color:var(--zinc-400)}.vehicle-type-card-enhanced{background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius);padding:var(--spacing-4)}.vehicle-type-card-enhanced .vehicle-type-card-header{display:flex;align-items:center;gap:var(--spacing-3);margin-bottom:var(--spacing-3);padding-bottom:var(--spacing-3);border-bottom:1px solid var(--zinc-700)}.vehicle-type-card-enhanced .vehicle-type-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--zinc-700);border-radius:var(--radius-sm);color:var(--zinc-300);flex-shrink:0}.vehicle-type-card-enhanced .vehicle-type-icon svg{width:18px;height:18px}.vehicle-type-card-enhanced .vehicle-type-info{flex:1}.vehicle-type-card-enhanced .vehicle-type-info h4{font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-200);margin:0 0 var(--spacing-1) 0}.vehicle-type-card-enhanced .vehicle-type-badges{display:flex;gap:var(--spacing-1);padding:0;border:none;margin:0}@media(max-width: 1024px){.regime-cards-grid{grid-template-columns:repeat(2, 1fr)}.allowance-stats{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 768px){.regime-cards-grid,.allowance-stats{grid-template-columns:1fr}.zone-visual-grid{grid-template-columns:1fr;gap:var(--spacing-4)}.disclosure-header{flex-wrap:wrap}.disclosure-summary{width:100%;margin-left:32px;margin-top:var(--spacing-1)}.card-collapsible .card-header-collapsible{flex-wrap:wrap;gap:var(--spacing-2)}.card-header-right{width:100%;justify-content:space-between;margin-left:36px}}.abstype-list{display:flex;flex-direction:column;gap:var(--spacing-2)}.abstype-item{background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius-md);overflow:hidden}.abstype-item__main{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3)}.abstype-badge{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:28px;padding:0 10px;border-radius:6px;font-size:12px;font-weight:700;flex-shrink:0}.abstype-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.abstype-name{font-weight:600;color:var(--zinc-100)}.abstype-desc{font-size:var(--font-size-xs);color:var(--zinc-400)}.abstype-actions{display:flex;gap:var(--spacing-1);flex-shrink:0}.abstype-edit{padding:var(--spacing-4);border-top:1px solid var(--zinc-700);background:var(--zinc-850)}.abstype-edit.hidden{display:none}.abstype-form{display:flex;flex-direction:column;gap:var(--spacing-3)}.abstype-form--add{padding:var(--spacing-4);background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius-md)}.abstype-form__row{display:flex;gap:var(--spacing-3)}.abstype-field{display:flex;flex-direction:column;gap:var(--spacing-1);flex:1;min-width:0}.abstype-field--abbrev{flex:0 0 110px}.abstype-field__label{font-size:var(--font-size-xs);font-weight:600;color:var(--zinc-300)}.abstype-optional{font-weight:400;color:var(--zinc-500)}.abstype-form__actions{display:flex;justify-content:flex-end;gap:var(--spacing-2);margin-top:var(--spacing-1)}.abstype-toggles{display:grid;gap:10px;margin-top:4px}.abstype-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.abstype-tag{font-size:11px;font-weight:600;color:var(--color-minor-dark, #16a34a);background:var(--color-minor-alpha, rgba(34, 197, 94, 0.12));border:1px solid var(--color-minor-alpha, rgba(34, 197, 94, 0.25));padding:2px 8px;border-radius:999px}.gps-tag{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;white-space:nowrap;line-height:1.4}.gps-tag--ok{background:#dcfce7;color:#166534}.gps-tag--warn{background:#fef3c7;color:#92400e}.gps-tag--danger{background:#fee2e2;color:#991b1b}:root{--acb-green: #16B364;--acb-green-dark: #0E9152;--acb-green-soft: #E7F7EE;--acb-green-ring: rgba(22, 179, 100, 0.30);--acb-ink: #1A1A1A;--acb-sub: #6B7280;--acb-faint: #9CA3AF;--acb-line: #E5E7EB;--acb-line2: #EEF0F2;--acb-card: #F6F7F8;--acb-panel: #FBFBFC;--acb-warn: #B97B12;--acb-warn-soft: #FEF3C7}.acb-settings{background:#fff;color:var(--acb-ink);min-height:100%}.acb-wrap{max-width:880px;margin:0 auto 0 0;padding:22px 24px 56px}.acb-input{width:100%;border:1px solid var(--acb-line);background:#fff;border-radius:8px;padding:8px 11px;font-size:13.5px;color:var(--acb-ink);outline:none;transition:border-color .12s,box-shadow .12s;font-family:inherit}.acb-input:focus{border-color:var(--acb-green);box-shadow:0 0 0 3px var(--acb-green-ring)}.acb-input::placeholder{color:var(--acb-faint)}select.acb-input{cursor:pointer}.acb-ico{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);color:var(--acb-sub);cursor:pointer;transition:background .12s,color .12s}.acb-ico:hover{background:#fff;color:var(--acb-ink)}.acb-ico.danger:hover{color:#dc2626;background:#fef2f2}.acb-ico:disabled{opacity:.35;cursor:not-allowed}.acb-ico svg{width:15px;height:15px}.acb-primary{display:inline-flex;align-items:center;gap:6px;background:var(--color-minor-strong);color:#fff;border:none;border-radius:8px;padding:8px 14px;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .12s;white-space:nowrap;text-decoration:none;font-family:inherit}.acb-primary:hover{background:var(--color-minor-strong-hover);color:#fff}.acb-primary:disabled{opacity:.45;cursor:not-allowed}.acb-primary svg{width:15px;height:15px}.acb-ghost{display:inline-flex;align-items:center;gap:6px;background:#fff;color:var(--acb-sub);border:1px solid var(--acb-line);border-radius:8px;padding:8px 12px;font-size:13.5px;font-weight:500;cursor:pointer;text-decoration:none;font-family:inherit}.acb-ghost:hover{color:var(--acb-ink);border-color:#d1d5db}.acb-tabs{border-bottom:1px solid var(--acb-line);padding:0 24px;display:flex;gap:26px;flex-wrap:wrap}.acb-tab{background:none;border:none;font-size:15px;cursor:pointer;padding:13px 2px;color:var(--acb-sub);font-weight:500;position:relative;text-decoration:none;user-select:none;-webkit-user-select:none}.acb-tab.active{color:var(--acb-ink);font-weight:600}.acb-tab.active::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2.5px;background:var(--acb-green);border-radius:3px}.acb-subtabs,.acb-pills{display:inline-flex;align-items:center;gap:2px;width:fit-content;max-width:100%;flex-wrap:wrap;margin:14px 24px 0;padding:3px;background:var(--acb-card);border:1px solid var(--acb-line);border-radius:10px}.acb-subtab,.acb-pill{background:rgba(0,0,0,0);border:none;font-size:13.5px;cursor:pointer;padding:6px 14px;border-radius:7px;color:var(--acb-sub);font-weight:500;transition:color .12s,background .12s;text-decoration:none;white-space:nowrap;user-select:none;-webkit-user-select:none}.acb-subtab:hover,.acb-pill:hover{color:var(--acb-ink);background:rgba(0,0,0,0)}.acb-subtab.active,.acb-pill.active{background:var(--acb-green);color:#fff;font-weight:600;box-shadow:0 1px 2px rgba(22,179,100,.3)}.acb-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.acb-bar__title{font-size:22px;font-weight:700;margin:0}.acb-bar__desc{color:var(--acb-sub);font-size:13.5px;margin:5px 0 0;line-height:1.45}.acb-bar__action{flex-shrink:0;display:flex;gap:8px;align-items:center}.acb-lbl{display:block;font-size:11px;font-weight:600;color:var(--acb-sub);margin-bottom:4px}.acb-list{display:grid;gap:7px;min-height:0;overflow:auto}.acb-row{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:9px;background:#fff;border:1px solid var(--acb-line2);transition:border-color .12s}.acb-row:hover{border-color:var(--acb-line)}.acb-row__body{flex:1;min-width:0}.acb-row__title{font-weight:600;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acb-row__desc{color:var(--acb-sub);font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acb-row__chips{display:flex;gap:5px;flex-shrink:0}.acb-row__actions{display:flex;flex-shrink:0}.acb-badge{font-weight:700;font-size:11.5px;padding:4px 8px;border-radius:6px;min-width:42px;text-align:center;border:1px solid rgba(0,0,0,.05);flex-shrink:0}.acb-chip{font-size:10.5px;font-weight:600;color:var(--acb-green-dark);background:var(--acb-green-soft);border:1px solid #c7efd8;padding:1px 6px;border-radius:999px;white-space:nowrap}.acb-lock{display:inline-flex;align-items:center;gap:4px;background:var(--acb-green-soft);color:var(--acb-green-dark);font-size:10.5px;font-weight:600;padding:2px 8px;border-radius:999px;flex-shrink:0}.acb-lock svg{width:10px;height:10px}.acb-code{background:var(--acb-card);border:1px solid var(--acb-line);border-radius:6px;padding:3px 8px;font-size:11.5px;font-weight:600;color:var(--acb-sub);white-space:nowrap;flex-shrink:0;max-width:180px;overflow:hidden;text-overflow:ellipsis;font-family:ui-monospace,monospace}.acb-empty{background:var(--acb-card);border-radius:9px;padding:16px;text-align:center;color:var(--acb-sub);font-size:13px}.acb-card,.acb-panel{background:var(--acb-panel);border:1px solid var(--acb-line);border-radius:12px}.acb-panel{padding:18px 22px;overflow:auto}.acb-emp-page .settings-panel.active{display:flex;flex-direction:column;flex:1 1 0;min-height:0}.acb-emp-wrap{max-width:940px;margin:0;padding:6px 0 40px;flex:1 1 0;min-height:0;overflow:auto}.acb-emp-page .acb-panel,.acb-emp-page .acb-emp-panel,.acb-emp-page .acb-list{overflow:visible;min-height:auto}.acb-emp-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:6px 0 18px;max-width:940px;flex-shrink:0}.acb-emp-toolbar .acb-pills{display:inline-flex;gap:2px;margin:0;background:var(--acb-card);border:1px solid var(--acb-line);border-radius:10px;padding:3px}.acb-emp-toolbar .acb-pill{background:rgba(0,0,0,0);border:none;border-radius:7px;padding:6px 14px;font-size:13.5px;font-weight:500;color:var(--acb-sub)}.acb-emp-toolbar .acb-pill:hover{color:var(--acb-ink);background:rgba(0,0,0,.03)}.acb-emp-toolbar .acb-pill.active{background:var(--acb-green);color:#fff;font-weight:600;box-shadow:0 1px 2px rgba(22,179,100,.3)}.acb-emp-panel{padding:8px 18px;overflow:auto}.acb-emp-panel .acb-block{border:none;padding:0;margin-bottom:0}.acb-emp-panel .acb-block+.acb-block{border-top:1px solid var(--acb-line2);margin-top:6px}.acb-note--warn{background:var(--acb-warn-soft);border-color:#fce8a6;color:var(--acb-warn);margin-bottom:14px}.acb-emp-filter{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:18px}.acb-emp-filter__input{width:auto;max-width:150px}.acb-emp-filter__sep{color:var(--acb-faint);font-size:13px}.acb-emp-total{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:10px 12px;border-radius:9px;background:var(--acb-card);font-size:13px;color:var(--acb-sub)}.acb-emp-total strong{color:var(--acb-ink)}.acb-row--stack{flex-direction:column;align-items:stretch;gap:8px}.acb-row__head{display:flex;align-items:center;gap:12px}.acb-row__sites{display:flex;flex-wrap:wrap;gap:5px}.acb-chip--muted{background:var(--acb-card);color:var(--acb-sub);border-color:var(--acb-line)}.acb-chip .link,.acb-chip--muted .link{color:inherit;text-decoration:none}.acb-emp-abs-type{flex-shrink:0;display:inline-flex;align-items:center}.acb-swatches{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.acb-swatch{width:26px;height:26px;border-radius:6px;border:1px solid rgba(0,0,0,.08);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;position:relative}.acb-swatch.checked,.acb-swatch.sel{box-shadow:0 0 0 2px #fff,0 0 0 3.5px var(--acb-green)}.acb-swatch svg{width:13px;height:13px;display:none}.acb-swatch.checked svg{display:block}.acb-swatch--free{background:conic-gradient(red, orange, yellow, green, cyan, blue, magenta, red);overflow:hidden}.acb-swatch--free svg{display:block;filter:drop-shadow(0 0 2px rgba(0, 0, 0, 0.5))}.acb-swatch--free input[type=color]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.acb-switchrow{display:flex;align-items:center;gap:9px;font-size:13.5px;cursor:pointer}.acb-toggle{display:flex;align-items:center;gap:9px;background:none;border:none;padding:0;cursor:pointer;text-align:left}.acb-toggle__track{width:34px;height:20px;border-radius:999px;background:#d1d5db;position:relative;transition:background .12s;flex-shrink:0}.acb-toggle__thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .12s;box-shadow:0 1px 2px rgba(0,0,0,.2)}.acb-toggle input{position:absolute;opacity:0;pointer-events:none}.acb-toggle input:checked+.acb-toggle__track{background:var(--acb-green)}.acb-toggle input:checked+.acb-toggle__track .acb-toggle__thumb{left:16px}.acb-toggle__label{font-size:13.5px;color:var(--acb-ink)}.acb-seats{display:flex;align-items:center;gap:10px;margin-bottom:14px}.acb-seats__bar{flex:0 0 180px;height:7px;background:var(--acb-card);border-radius:999px;overflow:hidden}.acb-seats__fill{height:100%;background:var(--acb-green);transition:width .2s}.acb-seats__fill.full{background:#e0a03a}.acb-seats__txt{font-size:12.5px;font-weight:600;color:var(--acb-sub)}.acb-seats__txt.full{color:var(--acb-warn)}.acb-seats__limit{font-size:12px;color:var(--acb-warn);display:inline-flex;align-items:center;gap:4px}.acb-seats__limit svg{width:12px;height:12px}.acb-avatar{width:32px;height:32px;border-radius:50%;background:var(--acb-card);border:1px solid var(--acb-line);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--acb-sub);font-size:12px;font-weight:600}.acb-avatar svg{width:15px;height:15px}.acb-status{font-size:10.5px;font-weight:600;padding:2px 8px;border-radius:999px;flex-shrink:0;background:var(--acb-green-soft);color:var(--acb-green-dark);border:1px solid #c7efd8}.acb-status.invited{background:var(--acb-warn-soft);color:var(--acb-warn);border-color:#fce8a6}.acb-days{display:grid;grid-template-columns:repeat(7, 1fr);gap:8px}@media(max-width: 720px){.acb-days{grid-template-columns:repeat(auto-fit, minmax(110px, 1fr))}}.acb-day{border:1px solid var(--acb-line);background:var(--acb-card);border-radius:9px;padding:11px 6px;cursor:pointer;text-align:center;transition:all .12s}.acb-day.off{border-color:var(--acb-green);background:var(--acb-green-soft)}.acb-day__name{font-weight:600;font-size:12.5px;color:var(--acb-ink)}.acb-day__state{font-size:11px;font-weight:600;margin-top:3px;color:var(--acb-sub)}.acb-day.off .acb-day__state{color:var(--acb-green-dark)}.acb-feries{display:flex;flex-wrap:wrap;gap:7px}.holiday-chip{display:inline-flex;align-items:center;gap:2px}.holiday-toggle-form{display:inline-flex}.acb-ferie{display:inline-flex;align-items:baseline;gap:5px;cursor:pointer;border:1px solid #c7efd8;background:var(--acb-green-soft);border-radius:999px;padding:5px 11px;transition:all .12s;text-decoration:none}.acb-ferie.off{border-color:var(--acb-line);background:var(--acb-card);opacity:.5}.acb-ferie__date{font-weight:700;font-size:11.5px;color:var(--acb-green-dark)}.acb-ferie.off .acb-ferie__date{color:var(--acb-sub)}.acb-ferie__name{font-size:12.5px;color:var(--acb-ink)}.acb-ferie__del{background:none;border:none;cursor:pointer;color:var(--acb-sub);font-size:14px;line-height:1;padding:0 2px}.acb-ferie__del:hover{color:#dc2626}.acb-infos__header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.acb-infos__actions{display:flex;gap:8px;flex-shrink:0}.acb-block{background:var(--acb-panel);border:1px solid var(--acb-line);border-radius:12px;padding:4px 14px;margin-bottom:10px}.acb-block__label{font-size:11px;letter-spacing:.07em;color:var(--acb-sub);font-weight:600;text-transform:uppercase;padding:9px 0 7px;border-bottom:1px solid var(--acb-line2)}.acb-kv{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--acb-line2)}.acb-kv:last-child{border-bottom:none}.acb-kv__label{font-size:12.5px;color:var(--acb-sub);width:120px;flex-shrink:0}.acb-kv__value{font-size:13.5px;color:var(--acb-ink)}.acb-kv__value.muted{color:var(--acb-sub)}.acb-infos__input{display:none;max-width:300px;padding:5px 9px}.acb-infos.is-editing .acb-kv__value{display:none}.acb-infos.is-editing .acb-kv__value--locked{display:inline-flex}.acb-kv__value--locked{display:inline-flex;align-items:center;gap:7px}.acb-kv__lock{display:inline-flex;color:var(--acb-faint)}.acb-kv__lock svg{width:13px;height:13px}.acb-infos.is-editing .acb-infos__input{display:block}.acb-infos.is-editing .acb-infos__btn-edit{display:none}.acb-infos__save{display:none}.acb-infos.is-editing .acb-infos__save{display:inline-flex;gap:8px;align-items:center}.acb-key-wrap{position:relative;max-width:440px}.acb-key-wrap .acb-input{padding-right:38px;font-family:ui-monospace,monospace}.acb-key-eye{position:absolute;right:7px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--acb-sub);display:inline-flex;padding:3px}.acb-key-eye svg{width:16px;height:16px}.acb-note{background:var(--acb-green-soft);border:1px solid #c7efd8;border-radius:9px;padding:9px 12px;display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--acb-green-dark);margin-top:12px}.acb-modal{display:none;position:fixed;inset:0;background:rgba(20,22,26,.42);z-index:1050;align-items:flex-start;justify-content:center;padding:60px 16px;overflow-y:auto}.acb-modal.open{display:flex}.acb-modal__dialog{background:#fff;border-radius:14px;width:100%;max-width:460px;box-shadow:0 12px 40px rgba(0,0,0,.18);border:1px solid var(--acb-line)}@media(max-width: 560px){.acb-modal__dialog{max-width:none}}.acb-modal__h{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--acb-line2)}.acb-modal__title{font-weight:700;font-size:15px}.acb-modal__b{padding:18px}.acb-modal__f{display:flex;justify-content:flex-end;gap:8px;padding:14px 18px;border-top:1px solid var(--acb-line2)}.acb-modal__close{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;border:none;background:rgba(0,0,0,0);color:var(--acb-sub);cursor:pointer}.acb-modal__close:hover{background:var(--acb-card);color:var(--acb-ink)}.acb-modal__close svg{width:17px;height:17px}.acb-grid-2{display:grid;gap:10px}.acb-mt{margin-top:12px}.acb-mt-lg{margin-top:14px}.acb-reset{max-width:720px}.acb-reset__note{font-size:13px;line-height:1.55;color:var(--acb-sub);background:var(--acb-card);border:1px solid var(--acb-line);border-radius:10px;padding:14px 16px;margin:0 0 18px}.acb-reset__note strong{color:var(--acb-ink)}.acb-reset__card{padding:18px 20px;margin-bottom:16px}.acb-reset__card .acb-card__head{margin-bottom:14px}.acb-card__head .acb-card__title{font-size:15px;font-weight:700;margin:0}.acb-card__head .acb-card__sub{font-size:12.5px;color:var(--acb-sub);margin:4px 0 0;line-height:1.45}.acb-reset__card--danger{border-color:#f3c2c2;background:#fdf2f2}.acb-reset__months{display:grid;grid-template-columns:repeat(auto-fill, minmax(150px, 1fr));gap:8px;margin-bottom:16px}.acb-reset__month{display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid var(--acb-line);border-radius:9px;background:var(--acb-panel);cursor:pointer;font-size:13px;color:var(--acb-ink);transition:border-color .12s,background .12s}.acb-reset__month:hover{border-color:var(--acb-green)}.acb-reset__month:has(input:checked){border-color:var(--acb-green);background:var(--acb-green-soft)}.acb-reset__month input{width:16px;height:16px;accent-color:var(--acb-green);margin:0}.acb-reset__actions{display:flex;justify-content:flex-end}.acb-danger{display:inline-flex;align-items:center;gap:7px;background:#dc2626;color:#fff;border:1px solid #dc2626;font-size:13.5px;font-weight:600;padding:9px 16px;border-radius:9px;cursor:pointer;transition:background .12s}.acb-danger:hover{background:#b91c1c;border-color:#b91c1c}.acb-addr-list{display:grid;gap:8px;margin-bottom:14px}.acb-addr-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px;border:1px solid var(--acb-line2);border-radius:9px;background:#fff}.acb-addr-row .acb-input{width:auto;flex:1;min-width:120px}.acb-addr-date{flex:0 0 150px !important}.acb-addr-cp{flex:0 0 90px !important}.acb-addr-gps{font-size:11px;color:var(--acb-faint);white-space:nowrap;min-width:110px}.acb-addr-row .acb-primary{flex-shrink:0}.acb-addr-row form{display:contents}.cascade-delete{display:inline-block}.cascade-overlay{display:none;position:fixed;inset:0;z-index:1000;background:rgba(17,24,39,.55);align-items:center;justify-content:center;padding:20px}.cascade-overlay.open{display:flex}.cascade-dialog{background:#fff;border-radius:14px;width:100%;max-width:440px;box-shadow:0 20px 50px rgba(0,0,0,.25);overflow:hidden}.cascade-dialog__h{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--acb-line2)}.cascade-dialog__title{font-weight:700;font-size:15px;color:var(--acb-ink)}.cascade-dialog__b{padding:18px;font-size:13.5px;color:var(--acb-ink)}.cascade-dialog__b p{margin:0 0 10px;line-height:1.5}.cascade-list{margin:0 0 12px;padding:12px 14px;list-style:none;background:#fdf2f2;border:1px solid #f3c2c2;border-radius:9px}.cascade-list li{font-size:13px;color:var(--acb-ink);padding:2px 0}.cascade-list li strong{color:#b91c1c}.cascade-warn{color:#b91c1c;font-weight:600;font-size:12.5px;margin:0 !important}.cascade-dialog__f{display:flex;justify-content:flex-end;gap:8px;padding:14px 18px;border-top:1px solid var(--acb-line2)}.verification-page{padding-bottom:40px}.verification-wrap{max-width:1180px;margin:0;padding:6px 24px 0}.verification-bar{align-items:flex-start}.verification-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-left:auto}.ts-datenav{display:inline-flex;align-items:center;gap:4px}.ts-datelabel{display:inline-flex;align-items:center;gap:7px;background:var(--acb-card);border:1px solid var(--acb-line);border-radius:9px;padding:7px 12px;font-size:13px;font-weight:600;color:var(--acb-ink);cursor:pointer;white-space:nowrap}.ts-datelabel:hover{border-color:var(--acb-green)}.ts-weekinput{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.verification-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:6px 0 14px}.verification-toolbar .acb-pills{margin:0}.verification-toolbar__right{display:flex;align-items:center;gap:10px}.ts-switch{display:inline-flex;align-items:center;justify-content:center;width:34px;height:32px;border-radius:9px;background:var(--acb-card);border:1px solid var(--acb-line);color:var(--acb-sub);cursor:pointer;transition:all .12s}.ts-switch:hover{border-color:var(--acb-green);color:var(--acb-green)}.ts-switch.all-expanded{background:var(--acb-green-soft);border-color:var(--acb-green);color:var(--acb-green-dark)}.ts-switch .icon-collapse{display:none}.ts-switch.all-expanded .icon-expand{display:none}.ts-switch.all-expanded .icon-collapse{display:block}.timesheet-container{width:100%;overflow-x:auto;background:var(--acb-panel);border:1px solid var(--acb-line);border-radius:12px}.verification-empty{margin:0;border:none;line-height:1.6;padding:40px 16px}.timesheet-site-row,.timesheet-employee-row,.timesheet-header{display:grid;grid-template-columns:240px repeat(var(--timesheet-days, 5), minmax(90px, 1fr)) 78px 120px;min-width:888px}.timesheet-header{background:var(--acb-card);border-bottom:1px solid var(--acb-line);border-radius:12px 12px 0 0;position:sticky;top:0;z-index:5}.timesheet-header .timesheet-col-employee{font-size:11px;font-weight:700;color:var(--acb-sub);text-transform:uppercase;letter-spacing:.04em;overflow:visible;position:relative}.timesheet-header .timesheet-col-day .day-name{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--acb-sub)}.timesheet-header .timesheet-col-day .day-number{font-size:13px;font-weight:700;color:var(--acb-ink)}.timesheet-header .timesheet-col-total,.timesheet-header .timesheet-col-action{font-size:10px;font-weight:700;color:var(--acb-sub);text-transform:uppercase;letter-spacing:.04em}.timesheet-col-employee{padding:10px 12px;display:flex;align-items:center;gap:7px;min-width:0;overflow:visible}.timesheet-col-day{padding:7px 5px;text-align:center;border-left:1px solid var(--acb-line2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;position:relative}.timesheet-col-day.non-working{background:repeating-linear-gradient(45deg, var(--acb-card), var(--acb-card) 6px, #f0f1f3 6px, #f0f1f3 12px)}.timesheet-col-total{width:78px;padding:10px;text-align:center;border-left:1px solid var(--acb-line2);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--acb-ink);font-size:13px}.timesheet-col-action{width:120px;padding:8px 10px;border-left:1px solid var(--acb-line2);display:flex;align-items:center;justify-content:center}.timesheet-body{min-width:888px}.timesheet-employee-section{border-bottom:1px solid var(--acb-line)}.timesheet-employee-section:last-child{border-bottom:none}.timesheet-employee-section:last-child .timesheet-site-row:last-child{border-radius:0 0 12px 12px}.timesheet-employee-row{background:var(--acb-panel);cursor:pointer;user-select:none}.timesheet-employee-row:hover{background:var(--acb-card)}.timesheet-employee-row .timesheet-employee-name{color:var(--acb-ink);text-decoration:none;font-weight:700;font-size:13.5px}.timesheet-employee-row .timesheet-employee-name:hover{color:var(--acb-green-dark)}.timesheet-employee-row .timesheet-col-total{color:var(--acb-ink)}.timesheet-toggle-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--acb-faint);transition:transform .15s}.timesheet-employee-section.expanded .timesheet-toggle-icon{transform:rotate(90deg)}.timesheet-sites-container{display:none}.timesheet-employee-section.expanded .timesheet-sites-container{display:block}.timesheet-site-row{border-top:1px solid var(--acb-line2);background:#fff}.timesheet-site-row .timesheet-col-employee{padding-left:30px}.timesheet-site-name{color:var(--acb-sub);text-decoration:none;font-size:13px;font-weight:500}.timesheet-site-name:hover{color:var(--acb-green-dark)}.timesheet-site-row .timesheet-col-day.validated{background:var(--acb-green-soft)}.timesheet-col-day turbo-frame{display:flex;flex-direction:column;align-items:center;gap:3px;width:100%}.timesheet-cell-placeholder{height:18px}.ts-del{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;line-height:1;font-size:14px;border:1px solid rgba(0,0,0,0);border-radius:5px;background:rgba(0,0,0,0);color:var(--acb-faint);cursor:pointer;padding:0}.ts-del form,.ts-del{background:rgba(0,0,0,0);border:none}button.ts-del:hover{color:#dc2626;background:#fdf2f2;border-color:#f3c2c2}.timesheet-input{width:46px;height:28px;text-align:center;border:1px solid var(--acb-line);border-radius:7px;font-size:13px;font-weight:600;color:var(--acb-ink);background:#fff;padding:0}.timesheet-input:focus{outline:none;border-color:var(--acb-green);box-shadow:0 0 0 3px var(--acb-green-ring)}.timesheet-input.forced{color:#dc2626;border-color:#f3c2c2}.ts-hours-btn{width:46px;height:28px;border-radius:7px;border:1px solid var(--acb-green);background:var(--acb-green-soft);color:var(--acb-green-dark);font-size:13px;font-weight:700;cursor:pointer;padding:0}.ts-hours-btn:hover{background:#fff}.ts-hours-btn.forced{border-color:#f3c2c2;color:#dc2626;background:#fdf2f2}.timesheet-distance{display:inline-flex;align-items:center;gap:3px;height:18px;padding:0 5px;border-radius:5px;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);font-size:10.5px;font-weight:600;color:var(--acb-faint);cursor:pointer}.timesheet-distance svg{width:10px;height:10px}.timesheet-distance:hover{border-color:var(--acb-line);color:var(--acb-sub)}.timesheet-distance.validated{color:var(--acb-green-dark);background:var(--acb-green-soft)}.timesheet-distance.geocoding-failed{color:#dc2626;background:#fdf2f2}.timesheet-distance.forced{color:#dc2626}.ts-force{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;border:1px dashed var(--acb-line);background:rgba(0,0,0,0);color:var(--acb-faint);cursor:pointer;padding:0}.ts-force svg{width:14px;height:14px}.ts-force:hover{border-color:var(--acb-green);color:var(--acb-green);background:var(--acb-green-soft)}.timesheet-absence-badge{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:24px;padding:0 7px;border-radius:6px;font-size:11px;font-weight:700;cursor:pointer;border:none;background:var(--dynamic-bg, var(--acb-card));color:var(--dynamic-text, var(--acb-sub))}.timesheet-empty{color:var(--acb-faint);font-size:13px}.btn-absence-trigger{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;padding:0;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);color:var(--acb-faint);cursor:pointer;opacity:0;transition:opacity .12s}.btn-absence-trigger svg{width:13px;height:13px}.timesheet-col-day:hover .btn-absence-trigger{opacity:1}.btn-absence-trigger:hover,.btn-absence-trigger.active{color:var(--acb-green);background:var(--acb-green-soft);opacity:1}.timesheet-check{color:var(--acb-green-dark);font-weight:700;font-size:15px}.ts-calc-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 13px;border-radius:8px;border:1px solid var(--acb-green);background:var(--acb-green);color:#fff;font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap}.ts-calc-btn:hover{background:var(--acb-green-dark)}.ts-calc-btn--error{background:#dc2626;border-color:#dc2626}.verification-page .dropdown-wrapper{position:relative}.verification-page .dropdown.hidden,.verification-page .dropdown-wrapper .hidden{display:none}.ts-filter-trigger{display:inline-flex;align-items:center;gap:6px;background:rgba(0,0,0,0);border:none;cursor:pointer;font-size:11px;font-weight:700;color:var(--acb-sub);text-transform:uppercase;letter-spacing:.04em;padding:0}.ts-filter-trigger:hover{color:var(--acb-ink)}.ts-add-discrete{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:5px;line-height:1;font-size:15px;border:1px solid var(--acb-line);background:#fff;color:var(--acb-sub);cursor:pointer;padding:0}.ts-add-discrete:hover{border-color:var(--acb-green);color:var(--acb-green);background:var(--acb-green-soft)}.verification-page .dropdown{position:absolute;z-index:50;margin-top:6px;min-width:220px;background:#fff;border:1px solid var(--acb-line);border-radius:10px;box-shadow:0 10px 30px rgba(16,24,40,.12);padding:6px;max-height:320px;overflow-y:auto}.verification-page .dropdown-right{right:0;left:auto}.verification-page .dropdown-left,.verification-page .dropdown-selector{left:0;right:auto}.verification-page .dropdown-center{left:50%;transform:translateX(-50%);min-width:180px}.verification-page .dropdown-form{margin:0}.verification-page .dropdown-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;text-align:left;padding:7px 10px;border:none;background:rgba(0,0,0,0);border-radius:7px;font-size:13px;color:var(--acb-ink);cursor:pointer}.verification-page .dropdown-item:hover{background:var(--acb-card)}.verification-page .dropdown-item-add .dropdown-item-primary{color:var(--acb-green-dark);font-weight:600}.verification-page .dropdown-item-secondary,.verification-page .ts-out{font-size:11px;color:#dc2626}.verification-page .dropdown-item-abbr{font-weight:700;color:var(--acb-green-dark)}.verification-page .dropdown-danger{color:#dc2626}.verification-page .dropdown-danger:hover{background:#fdf2f2}.verification-page .dropdown-divider{height:1px;background:var(--acb-line2);margin:5px 0}.verification-page .dropdown-header{padding:5px 10px;font-size:10.5px;font-weight:700;color:var(--acb-faint);text-transform:uppercase;letter-spacing:.04em}.verification-pipeline{margin-top:18px;display:flex;justify-content:flex-end}.verification-pipeline .acb-ghost{display:inline-flex;align-items:center;gap:7px}.auth-body{min-height:100vh;background:var(--bg-page);display:flex;align-items:center;justify-content:center;padding:var(--spacing-4)}.auth-container{width:100%;max-width:400px}.auth-card{background:var(--zinc-800);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--zinc-700);padding:var(--spacing-8)}.auth-header{text-align:center;margin-bottom:var(--spacing-6)}.auth-header h1{font-size:1.75rem;font-weight:700;color:var(--zinc-50);margin:0 0 var(--spacing-2) 0;letter-spacing:-0.02em}.auth-header p{color:var(--zinc-400);font-size:var(--font-size-sm);margin:0}.auth-logo{display:block;margin:0 0 var(--spacing-4);font-size:2.5rem;font-weight:800;letter-spacing:-0.03em;line-height:1}.auth-logo .auth-logo-acb{color:var(--color-minor)}.auth-logo .auth-logo-app{color:var(--zinc-50)}.auth-form{display:flex;flex-direction:column;gap:var(--spacing-4)}.auth-form .form-item{margin-bottom:0}.auth-form .form-actions{margin-top:var(--spacing-2)}.btn-block{width:100%;display:block;text-align:center}.auth-footer{margin-top:var(--spacing-6);text-align:center;padding-top:var(--spacing-4);border-top:1px solid var(--zinc-700)}.auth-link{color:var(--zinc-400);font-size:var(--font-size-sm);text-decoration:none;transition:color .15s}.auth-link:hover{color:var(--zinc-300)}.auth-separator{display:flex;align-items:center;gap:var(--spacing-3);margin:var(--spacing-4) 0;color:var(--zinc-500);font-size:var(--font-size-xs)}.auth-separator::before,.auth-separator::after{content:"";flex:1;height:1px;background:var(--zinc-700)}.auth-info{text-align:center;margin-bottom:var(--spacing-4);padding:var(--spacing-3);background:var(--zinc-700);border-radius:var(--radius)}.auth-info p{margin:0;color:var(--zinc-300);font-size:var(--font-size-sm)}.auth-info .auth-email{color:var(--zinc-100);font-weight:500;margin-top:var(--spacing-1)}.auth-card .alert{margin-bottom:var(--spacing-4)}@media(max-width: 480px){.auth-body{padding:var(--spacing-3)}.auth-card{padding:var(--spacing-6)}.auth-logo{font-size:2rem}}.import-content{--imp-accent: #22c55e;--imp-accent-soft: #dcfce7;--imp-violet: #16a34a;--imp-violet-soft: #dcfce7;--imp-ink: #1f2430;--imp-ink-soft: #6b7280;--imp-line: #e5e7eb;--imp-card: #f3f3f5;--imp-red: #e2655b;color:var(--imp-ink);display:block;width:100%;max-width:1280px;margin:0 auto;padding:var(--spacing-8) var(--spacing-8) calc(var(--spacing-8)*2)}@media(max-width: 768px){.import-content{padding:var(--spacing-5) var(--spacing-4) var(--spacing-8)}}.main-body:has(.import-content){background-image:none;background-color:#fafafb}.import-container{padding:var(--spacing-6);max-width:1280px;margin:0 auto}.import-header{margin-bottom:var(--spacing-6);text-align:center;padding:var(--spacing-8) var(--spacing-6) var(--spacing-6)}.import-header h2{font-size:26px;font-weight:700;color:var(--imp-ink);margin:0 0 var(--spacing-3);display:flex;align-items:center;justify-content:center;gap:var(--spacing-3)}.import-header h2 svg{width:22px;height:22px;padding:10px;box-sizing:content-box;color:var(--imp-accent);background:var(--imp-accent-soft);border:1px solid rgba(34,197,94,.35);border-radius:12px}.import-description{color:var(--imp-ink-soft);font-size:15px;line-height:1.55;margin:0 auto;max-width:560px}.import-warning{color:#9a9aa3;font-size:13px;margin:var(--spacing-5) 0 0;font-style:italic;text-align:left;padding:12px 16px;background:#f0f0f2;border:1px solid var(--imp-line);border-radius:12px;display:inline-block}.import-form{margin-bottom:var(--spacing-6)}.import-files-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:22px;margin-bottom:var(--spacing-4)}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:220px;background:var(--imp-card);border:2px dashed #cbcbd2;border-radius:20px;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease;position:relative}.dropzone:hover{border-color:var(--imp-accent);background:var(--imp-accent-soft);transform:translateY(-2px)}.dropzone-dragover{border-color:var(--imp-accent);background:var(--imp-accent-soft);transform:translateY(-2px);box-shadow:0 0 0 4px rgba(34,197,94,.15)}.dropzone-has-file{border-color:var(--imp-violet);border-style:solid;background:var(--imp-violet-soft)}.dropzone-has-file .dropzone-icon{background:var(--imp-violet);color:#fff}.dropzone-input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}.dropzone-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-4);padding:var(--spacing-6);text-align:center;pointer-events:none}.dropzone-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:#d8d8de;border-radius:16px;color:#7a7a85;transition:all .18s ease}.dropzone-icon svg{width:26px;height:26px}.dropzone:hover .dropzone-icon{background:var(--imp-accent);color:#fff}.dropzone-text{display:flex;flex-direction:column;gap:var(--spacing-2)}.dropzone-title{font-size:18px;font-weight:600;color:var(--imp-ink)}.dropzone-hint{font-size:13px;color:var(--imp-ink-soft)}.dropzone-formats{font-size:11px;font-weight:600;color:#9a9aa3;margin-top:var(--spacing-1);padding:9px 14px;background:#e3e3e8;border-radius:10px;letter-spacing:.14em}.dropzone-selected{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-4) var(--spacing-5);pointer-events:none}.dropzone-selected svg{color:var(--imp-violet);flex-shrink:0}.dropzone-filename{font-size:13px;font-weight:500;color:var(--imp-ink);word-break:break-all}.dropzone-remove{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--imp-violet);background:#fff;border:1px solid rgba(109,78,201,.2);border-radius:10px;cursor:pointer;transition:all .2s ease;pointer-events:auto;flex-shrink:0}.dropzone-remove::after{content:"Retirer"}.dropzone-remove:hover{background:var(--imp-violet);color:#fff;border-color:var(--imp-violet)}.dropzone-remove svg{color:currentColor}.dropzone-remove:hover svg{color:#fff}.import-actions{text-align:center;margin-top:var(--spacing-8)}.import-actions .btn,.import-actions .btn-primary{height:auto;padding:15px 34px;font-size:15px;font-weight:600;color:#fff;background:var(--color-minor-strong);border:none;border-radius:14px;box-shadow:0 10px 24px -10px rgba(34,197,94,.7);transition:background .18s ease,box-shadow .18s ease,transform .12s ease}.import-actions .btn:hover,.import-actions .btn-primary:hover{background:var(--color-minor-strong-hover);color:#fff;box-shadow:0 12px 28px -10px rgba(34,197,94,.8)}.import-actions .btn:active,.import-actions .btn-primary:active{transform:scale(0.98)}.import-results-container{background:#fff;border:1px solid var(--imp-line);border-radius:var(--radius-lg);padding:var(--spacing-6);margin-top:var(--spacing-6)}.import-results-container h3{font-size:var(--font-size-lg);font-weight:600;color:var(--imp-ink);margin:0 0 var(--spacing-4);display:flex;align-items:center;gap:var(--spacing-2)}.import-results-container h3::before{content:"";width:4px;height:20px;background:var(--imp-accent);border-radius:2px}.import-success-banner,.import-error-banner{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-4);border-radius:var(--radius);margin-bottom:var(--spacing-4)}.import-success-banner{background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.35);color:#15803d}.import-success-banner svg{flex-shrink:0;color:#15803d}.import-error-banner{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.3);color:#b91c1c}.import-error-banner svg{flex-shrink:0;color:#b91c1c}.import-success-banner p,.import-error-banner p{margin:var(--spacing-1) 0 0;font-size:var(--font-size-sm);opacity:.9}.import-results-summary{margin-bottom:var(--spacing-4)}.import-result-item{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius);margin-bottom:var(--spacing-2);background:var(--imp-card);border:1px solid var(--imp-line)}.import-result-item.success{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.35);color:#15803d}.import-result-item.success svg{color:#15803d}.import-result-item svg{flex-shrink:0}.import-loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:99999;backdrop-filter:blur(4px)}.import-loading-overlay.hidden{display:none}.import-loading-content{position:relative;background:#fff;border:1px solid var(--imp-line);padding:var(--spacing-8);border-radius:var(--radius-xl);text-align:center;box-shadow:0 4px 12px rgba(31,36,48,.06);max-width:420px}.import-loading-close{position:absolute;top:var(--spacing-3);right:var(--spacing-3);background:none;border:none;padding:var(--spacing-1);cursor:pointer;color:var(--imp-ink-soft);border-radius:var(--radius);transition:all .2s ease}.import-loading-close:hover{background:var(--imp-card);color:var(--imp-ink)}.import-loading-cancel{margin-top:var(--spacing-4)}.import-loading-spinner{width:56px;height:56px;border:4px solid var(--imp-line);border-top-color:var(--imp-accent);border-radius:50%;animation:import-spin 1s linear infinite;margin:0 auto var(--spacing-5)}@keyframes import-spin{to{transform:rotate(360deg)}}.import-loading-title{font-size:var(--font-size-lg);font-weight:600;color:var(--imp-ink);margin:0 0 var(--spacing-5)}.import-loading-steps{display:flex;flex-direction:column;gap:var(--spacing-2);margin-bottom:var(--spacing-4);text-align:left}.import-step{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius);font-size:var(--font-size-sm);color:var(--imp-ink-soft);background:var(--imp-card);border:1px solid var(--imp-line);transition:all .3s ease}.import-step svg{flex-shrink:0}.import-step.active{color:var(--imp-accent);background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.35);font-weight:500}.import-step.active svg{color:var(--imp-accent);animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}.import-step.completed{color:#15803d;background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.35)}.import-step.completed svg{stroke:#15803d}.import-loading-message,.import-loading-info{font-size:var(--font-size-sm);color:var(--imp-ink-soft);margin:0}.import-loading-info{margin-top:var(--spacing-2)}.import-missing-fields{background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.4);border-radius:var(--radius-lg);padding:var(--spacing-5);margin-bottom:var(--spacing-4)}.import-missing-fields h4{font-size:var(--font-size-base);font-weight:600;color:#b45309;margin:0 0 var(--spacing-3);display:flex;align-items:center;gap:var(--spacing-2)}.import-missing-fields h4 svg{color:#b45309}.missing-fields-description{font-size:var(--font-size-sm);color:#374151;margin:0 0 var(--spacing-3)}.missing-fields-list{font-size:var(--font-size-sm)}.missing-fields-category{margin-bottom:var(--spacing-3);padding:var(--spacing-3);background:#fff;border-radius:var(--radius)}.missing-fields-category h5{font-size:var(--font-size-sm);font-weight:600;color:var(--imp-ink-soft);margin:0 0 var(--spacing-2)}.missing-fields-category ul{margin:0;padding-left:var(--spacing-4);color:#374151}.missing-fields-category li{margin-bottom:var(--spacing-1)}.import-errors{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-lg);padding:var(--spacing-5);margin-bottom:var(--spacing-4)}.import-errors h4{font-size:var(--font-size-base);font-weight:600;color:#b91c1c;margin:0 0 var(--spacing-3);display:flex;align-items:center;gap:var(--spacing-2)}.import-errors h4 svg{color:#b91c1c}.import-errors ul{margin:0;padding-left:var(--spacing-4)}.import-error-item{color:#b91c1c;font-size:var(--font-size-sm);margin-bottom:var(--spacing-2)}.import-preview-container{background:#fff;border:1px solid var(--imp-line);border-radius:var(--radius-lg);padding:var(--spacing-6);margin-top:var(--spacing-6)}.import-preview-container h3{font-size:var(--font-size-lg);font-weight:600;color:var(--imp-ink);margin:0 0 var(--spacing-5);display:flex;align-items:center;gap:var(--spacing-2)}.import-preview-container h3::before{content:"";width:4px;height:20px;background:var(--imp-accent);border-radius:2px}.import-preview-section{margin-bottom:var(--spacing-5);padding-bottom:var(--spacing-5);border-bottom:1px solid var(--imp-line)}.import-preview-section:last-of-type{border-bottom:none;padding-bottom:0;margin-bottom:0}.import-preview-section h4{font-size:var(--font-size-base);font-weight:600;color:var(--imp-ink);margin:0 0 var(--spacing-3)}.preview-note{font-size:var(--font-size-sm);color:var(--imp-ink-soft);margin:0 0 var(--spacing-3)}.preview-list{margin:0;padding-left:var(--spacing-4);font-size:var(--font-size-sm);color:#374151}.preview-list li{margin-bottom:var(--spacing-2)}.preview-more{color:var(--imp-ink-soft);font-style:italic}.import-entity-card{background:#fff;border:1px solid var(--imp-line);border-radius:var(--radius);padding:var(--spacing-4);margin-bottom:var(--spacing-3);transition:all var(--transition-fast)}.import-entity-card:last-child{margin-bottom:0}.import-entity-card:hover{border-color:#cbcbd2}.entity-card-header{display:flex;align-items:center;gap:var(--spacing-3);margin-bottom:var(--spacing-3)}.entity-card-header strong a{color:var(--imp-ink);text-decoration:none;font-size:var(--font-size-sm)}.entity-card-header strong a:hover{color:var(--imp-accent)}.entity-ref{font-size:var(--font-size-xs);color:var(--imp-ink-soft);background:var(--imp-card);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm)}.entity-changes{margin-top:var(--spacing-3)}.changes-table{width:100%;font-size:var(--font-size-xs);border-collapse:collapse;background:#fff;border-radius:var(--radius);overflow:hidden;border:1px solid var(--imp-line)}.changes-table th,.changes-table td{padding:var(--spacing-3);text-align:left;border-bottom:1px solid var(--imp-line)}.changes-table th{background:var(--imp-card);font-weight:600;color:var(--imp-ink-soft);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em}.changes-table tbody tr:last-child td{border-bottom:none}.changes-table tbody tr{transition:background .15s ease}.changes-table tbody tr:hover{background:var(--imp-card)}.changes-table .old-value{color:#b91c1c;background:rgba(239,68,68,.1);font-family:var(--font-mono);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm)}.changes-table .new-value{color:#15803d;background:rgba(34,197,94,.12);font-family:var(--font-mono);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm)}.changes-table .change-action{text-align:center}.change-completion{background:rgba(34,197,94,.12)}.change-overwrite{background:rgba(245,158,11,.12)}.badge{display:inline-block;padding:4px 8px;font-size:var(--font-size-xs);font-weight:500;border-radius:var(--radius-sm)}.badge-success{background:rgba(34,197,94,.12);color:#15803d}.badge-warning{background:rgba(245,158,11,.12);color:#b45309}.entity-missing-fields{margin-top:var(--spacing-3);padding:var(--spacing-3);background:rgba(245,158,11,.12);border-radius:var(--radius-sm);border-left:3px solid rgba(245,158,11,.4)}.missing-label{font-size:var(--font-size-xs);font-weight:600;color:#b45309}.missing-values{font-size:var(--font-size-xs);color:#374151;margin-left:var(--spacing-2)}.entity-missing-blocking{background:rgba(239,68,68,.08);border-left-color:rgba(239,68,68,.3)}.entity-missing-blocking .missing-label{color:#b91c1c;display:flex;align-items:center;gap:var(--spacing-1)}.entity-missing-blocking .missing-label svg{stroke:#b91c1c}.entity-missing-blocking .missing-values{color:#b91c1c}.entity-compensated-fields{margin-top:var(--spacing-3);padding:var(--spacing-3);background:rgba(34,197,94,.12);border-radius:var(--radius-sm);border-left:3px solid rgba(34,197,94,.35)}.compensated-label{font-size:var(--font-size-xs);font-weight:600;color:#15803d;display:flex;align-items:center;gap:var(--spacing-1)}.compensated-label svg{stroke:#15803d}.compensated-values{font-size:var(--font-size-xs);color:#374151;margin-left:var(--spacing-2)}.blocking-errors-section{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-lg);padding:var(--spacing-5)}.blocking-title{display:flex;align-items:center;gap:var(--spacing-2);color:#b91c1c;font-weight:600}.blocking-title svg{stroke:#b91c1c}.preview-error{color:#b91c1c}.blocking-errors-list{display:flex;flex-direction:column;gap:var(--spacing-2);margin-top:var(--spacing-4)}.blocking-error-item{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3);background:#fff;border-radius:var(--radius);border:1px solid rgba(239,68,68,.3)}.error-entity-type{font-size:var(--font-size-xs);color:var(--imp-ink-soft);background:var(--imp-card);padding:4px 8px;border-radius:var(--radius-sm)}.error-fields{font-size:var(--font-size-sm);color:#b91c1c;margin-left:auto}.missing-fields-list{display:flex;flex-direction:column;gap:var(--spacing-3);margin-top:var(--spacing-4)}.missing-fields-group{background:#fff;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius);padding:var(--spacing-3) var(--spacing-4)}.missing-fields-group__head{display:flex;align-items:center;gap:var(--spacing-3);margin-bottom:var(--spacing-3)}.missing-fields-group__inputs{display:grid;grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));gap:var(--spacing-3)}.missing-field{display:flex;flex-direction:column;gap:4px}.missing-field__label{font-size:var(--font-size-xs);font-weight:600;color:var(--imp-ink-soft)}.missing-address-section{background:#fff;border:1px solid var(--imp-line);border-radius:var(--radius-lg);padding:var(--spacing-5)}.missing-address-section .entity-changes{padding:0;margin-top:var(--spacing-4)}.missing-address-section .changes-table{margin:0;background:#fff;border-radius:var(--radius);overflow:hidden}.missing-address-section .warning-title{color:var(--imp-ink)}.missing-address-section .warning-title svg{stroke:var(--imp-ink-soft)}.missing-address-list{display:flex;flex-direction:column;gap:var(--spacing-2)}.missing-address-item{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);background:var(--imp-card);border-radius:var(--radius);border:1px solid var(--imp-line)}.missing-address-item .employee-link{color:var(--imp-violet);text-decoration:none;font-weight:500}.missing-address-item .employee-link:hover{text-decoration:underline}.address-status{margin-left:auto;font-size:var(--font-size-xs);padding:4px 10px;border-radius:var(--radius-sm)}.address-missing{background:rgba(239,68,68,.08);color:#b91c1c}.address-partial{background:rgba(245,158,11,.12);color:#b45309}.badge-neutral{background:var(--imp-card);color:#374151}.badge-info{background:var(--imp-violet-soft);color:var(--imp-violet)}.geocode-status{display:inline-flex;align-items:center;gap:var(--spacing-1);padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);cursor:help}.geocode-ok{background:rgba(34,197,94,.12);color:#15803d}.geocode-ok svg{stroke:#15803d}.geocode-pending{background:rgba(245,158,11,.12);color:#b45309}.geocode-pending svg{stroke:#b45309}.geocode-missing{background:var(--imp-card);color:var(--imp-ink-soft)}.geocode-missing svg{stroke:var(--imp-ink-soft)}.employee-name-cell{display:flex;align-items:center;gap:var(--spacing-2)}.employee-name-with-avatar{display:flex;align-items:center;gap:var(--spacing-3)}.employee-name-info{display:flex;align-items:center;gap:var(--spacing-2)}.geocode-warning-icon{display:inline-flex;align-items:center;justify-content:center;cursor:help}.geocode-warning-icon svg{stroke:#f59e0b;fill:#fef3c7}.geocode-warning{display:inline-flex;align-items:center;justify-content:center;margin-left:var(--spacing-1);cursor:help}.geocode-warning svg{stroke:#ef4444}.no-site-section{background:#fff;border:1px solid var(--imp-line);border-radius:var(--radius-lg);padding:var(--spacing-5)}.no-site-section .entity-changes{padding:0;margin-top:var(--spacing-4)}.no-site-section .changes-table{margin:0;background:#fff;border-radius:var(--radius);overflow:hidden}.no-site-resolution-cell{display:flex;flex-direction:column;gap:var(--spacing-2)}.warning-title{display:flex;align-items:center;gap:var(--spacing-2);color:var(--imp-ink);font-size:var(--font-size-lg);margin:0;font-weight:600}.warning-title svg{stroke:var(--imp-ink-soft)}.no-site-assignments{display:flex;flex-direction:column;gap:var(--spacing-3)}.no-site-card{background:#fff;border:1px solid var(--imp-line);border-radius:var(--radius)}.no-site-dates{display:flex;flex-wrap:wrap;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);background:var(--imp-card);font-size:var(--font-size-sm);border-radius:var(--radius) var(--radius) 0 0}.dates-label{color:var(--imp-ink-soft)}.dates-list{color:var(--imp-ink)}.no-site-resolution{display:flex;flex-direction:column;gap:var(--spacing-3);padding:var(--spacing-4);border-top:1px solid var(--imp-line)}.no-site-option{display:flex;align-items:center;gap:var(--spacing-3);cursor:pointer;color:#374151}.no-site-option input[type=radio]{width:18px;height:18px;accent-color:var(--imp-accent)}.change-select-col{width:80px;text-align:center}.change-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--imp-accent)}.new-sites-list{display:flex;flex-direction:column;gap:var(--spacing-2)}.new-site-checkbox{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);background:#fff;border:1px solid var(--imp-line);border-radius:var(--radius);cursor:pointer;transition:all .15s}.new-site-checkbox:hover{border-color:#cbcbd2;background:var(--imp-card)}.new-site-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--imp-accent)}.site-info{display:flex;flex-direction:column;gap:var(--spacing-1)}.site-info strong{color:var(--imp-ink)}.site-detail{font-size:var(--font-size-xs);color:var(--imp-ink-soft)}.partial-matches-section{background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.4);border-radius:var(--radius-lg);padding:var(--spacing-5);margin-bottom:var(--spacing-4)}.partial-matches-section h4{color:#b45309}.preview-warning{color:var(--imp-ink);background:#fff;padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius);margin-bottom:var(--spacing-4);border:1px solid var(--imp-line)}.partial-match-card{background:#fff;border:1px solid var(--imp-line);border-radius:var(--radius);padding:var(--spacing-4)}.partial-match-comparison{display:flex;align-items:center;gap:var(--spacing-4);flex-wrap:wrap}.partial-match-side{flex:1;min-width:200px;display:flex;flex-direction:column;gap:var(--spacing-1)}.partial-match-label{font-size:var(--font-size-xs);color:var(--imp-ink-soft);text-transform:uppercase;letter-spacing:.5px}.partial-match-side strong{font-size:var(--font-size-sm);color:var(--imp-ink)}.partial-match-side strong a{color:var(--imp-violet)}.partial-match-arrow{color:var(--imp-ink-soft);flex-shrink:0}.partial-match-hint{font-size:var(--font-size-xs);color:var(--imp-ink-soft);font-style:italic;margin:var(--spacing-3) 0 0 0;padding-top:var(--spacing-3);border-top:1px dashed var(--imp-line)}.partial-match-actions{display:flex;gap:var(--spacing-3);margin-top:var(--spacing-4);padding-top:var(--spacing-4);border-top:1px dashed var(--imp-line)}.partial-match-option{flex:1;cursor:pointer}.partial-match-option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.partial-match-option .option-content{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-4);border:2px solid var(--imp-line);border-radius:var(--radius);transition:all .2s ease;background:#fff}.partial-match-option:hover .option-content{border-color:#cbcbd2;background:var(--imp-card)}.partial-match-option input[type=radio]:checked+.option-content{border-color:var(--imp-violet);background:var(--imp-violet-soft)}.partial-match-option-link input[type=radio]:checked+.option-content{border-color:var(--imp-violet);background:var(--imp-violet-soft)}.partial-match-option-ignore input[type=radio]:checked+.option-content{border-color:#cbcbd2;background:var(--imp-card)}.option-icon{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--imp-card)}.option-icon-success{background:var(--imp-violet-soft);color:var(--imp-violet)}.option-icon-neutral{background:var(--imp-card);color:var(--imp-ink-soft)}.option-text{display:flex;flex-direction:column;gap:var(--spacing-1)}.option-text strong{font-size:var(--font-size-sm);color:var(--imp-ink)}.option-text span:last-child{font-size:var(--font-size-xs);color:var(--imp-ink-soft)}.new-employees-list{display:flex;flex-direction:column;gap:var(--spacing-2)}.new-employee-checkbox{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);background:#fff;border:1px solid var(--imp-line);border-radius:var(--radius);cursor:pointer;transition:all .15s ease}.new-employee-checkbox:hover{background:var(--imp-card);border-color:#cbcbd2}.new-employee-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--imp-accent)}.employee-info{display:flex;flex-direction:column;gap:var(--spacing-1)}.employee-info strong{font-size:var(--font-size-sm);color:var(--imp-ink)}.employee-detail{font-size:var(--font-size-xs);color:var(--imp-ink-soft)}.import-confirm-actions{display:flex;gap:var(--spacing-4);justify-content:center;margin-top:var(--spacing-6);padding-top:var(--spacing-5);border-top:1px solid var(--imp-line)}.btn-lg{padding:var(--spacing-3) var(--spacing-8);font-size:var(--font-size-base);font-weight:600}.required-star{color:#b91c1c;font-weight:bold}.missing-data-indicator{display:inline-flex;align-items:center;color:#b45309;margin-left:var(--spacing-1);cursor:help}.missing-data-indicator svg{stroke:#b45309}.pending-changes-container{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-6);margin-bottom:var(--spacing-6);border:1px solid rgba(245,158,11,.4)}.pending-changes-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-5);padding-bottom:var(--spacing-4);border-bottom:1px solid var(--imp-line)}.pending-changes-header h3{margin:0;color:#b45309;font-size:var(--font-size-lg);font-weight:600;display:flex;align-items:center;gap:var(--spacing-2)}.pending-changes-header h3::before{content:"";width:4px;height:20px;background:#b45309;border-radius:2px}.pending-changes-actions{display:flex;gap:var(--spacing-3)}.pending-changes-table{margin-bottom:0;border-collapse:collapse;width:100%;background:#fff;border-radius:var(--radius);overflow:hidden;border:1px solid var(--imp-line)}.pending-changes-table th,.pending-changes-table td{padding:var(--spacing-3) var(--spacing-4);text-align:left;border-bottom:1px solid var(--imp-line)}.pending-changes-table th{background:var(--imp-card);font-weight:600;color:var(--imp-ink-soft);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em}.pending-changes-table tbody tr{transition:background .15s ease}.pending-changes-table tbody tr:hover{background:var(--imp-card)}.pending-changes-table tbody tr:last-child td{border-bottom:none}.pending-changes-table code{font-size:var(--font-size-xs);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-family:var(--font-mono)}.pending-changes-table code.old-value{background:rgba(239,68,68,.1);color:#b91c1c}.pending-changes-table code.new-value{background:rgba(34,197,94,.12);color:#15803d}.btn-icon-success{color:#15803d}.btn-icon-success:hover{color:#fff;background:#15803d}.btn-success{background:#15803d;color:#fff;border:none}.btn-success:hover{background:#15803d;filter:brightness(0.92)}@media(max-width: 1024px){.import-files-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 768px){.import-files-grid{grid-template-columns:1fr}.import-header{padding:var(--spacing-4)}.import-header h2{font-size:var(--font-size-xl)}.pending-changes-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-3)}.pending-changes-actions{width:100%}.pending-changes-actions .btn{flex:1;justify-content:center}.dropzone{min-height:180px}.partial-match-actions{flex-direction:column}.import-confirm-actions{flex-direction:column}.import-confirm-actions .btn{width:100%;justify-content:center}}.import-results-container h3 svg,.import-missing-fields h4 svg,.import-errors h4 svg,.pending-changes-header h3 svg{flex-shrink:0}.import-results-container h3{display:flex;align-items:center;gap:var(--spacing-3)}.import-missing-fields h4,.import-errors h4{display:flex;align-items:center;gap:var(--spacing-2)}.pending-changes-header h3{display:flex;align-items:center;gap:var(--spacing-3)}.pending-changes-header h3::before{display:none}.pending-changes-header h3 svg{color:#b45309}.pending-changes-actions .btn{display:inline-flex;align-items:center;gap:var(--spacing-2)}.pending-changes-actions .btn svg{flex-shrink:0}.pending-changes-table td{color:#374151;font-size:var(--font-size-sm)}.pending-changes-table td strong{color:var(--imp-ink)}.import-preview-section h4{display:flex;align-items:center;gap:var(--spacing-2);color:var(--imp-ink)}.import-preview-section h4 svg{color:var(--imp-accent);flex-shrink:0}.partial-matches-section h4 svg{color:#b45309}.blocking-errors-section h4 svg{color:#b91c1c}.preview-list li strong{color:var(--imp-violet)}.dashboard-home{padding:var(--spacing-8) var(--spacing-6);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:0;overflow-y:auto;height:100%}.dashboard-home a{text-decoration:none}.dashboard-home a:hover{text-decoration:none}.dashboard-company-name{font-size:11px;font-weight:600;color:var(--zinc-500);text-transform:uppercase;letter-spacing:.15em;margin-bottom:var(--spacing-4)}.dashboard-logo-section{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-2);margin-bottom:var(--spacing-6)}.dashboard-logo-container{position:relative;display:inline-block}.dashboard-logo-container:hover .dashboard-logo-overlay{opacity:1}.dashboard-logo{max-width:200px;max-height:80px;object-fit:contain}.dashboard-logo-overlay{position:absolute;top:-8px;right:-8px;opacity:0;transition:var(--transition)}.dashboard-logo-delete{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--zinc-700);border:1px solid var(--zinc-600);border-radius:50%;color:var(--zinc-300);cursor:pointer;transition:var(--transition)}.dashboard-logo-delete svg{width:14px;height:14px}.dashboard-logo-delete:hover{background:var(--red-600, #dc2626);border-color:var(--red-500, #ef4444);color:#fff}.dashboard-logo-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;width:180px;height:180px;border:1px dashed var(--zinc-600);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease;color:var(--zinc-500)}.dashboard-logo-dropzone:hover{border-color:var(--zinc-400);color:var(--zinc-300);background:var(--zinc-800)}.dashboard-logo-dropzone.dragover{border-color:var(--color-minor);background:rgba(251,191,36,.05)}.dashboard-logo-dropzone-icon{width:48px;height:48px;opacity:.6;margin-bottom:var(--spacing-4)}.dashboard-logo-dropzone-content{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.dashboard-logo-dropzone-text{font-size:14px;font-weight:500;color:var(--zinc-300);margin:0}.dashboard-logo-dropzone-hint{font-size:12px;color:var(--zinc-500);margin:0}.dashboard-logo-input{display:none}.dashboard-greeting{text-align:center;margin-bottom:var(--spacing-6)}.dashboard-greeting-title{font-size:1.75rem;font-weight:500;color:var(--zinc-200);margin:0 0 var(--spacing-1);letter-spacing:-0.01em}.dashboard-greeting-date{font-size:var(--font-size-sm);color:var(--zinc-500);margin:0}.dashboard-actions{display:flex;gap:var(--spacing-2)}.dashboard-action-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;border-radius:var(--radius);font-size:13px;font-weight:500;text-decoration:none;transition:all .15s ease;border:1px solid rgba(0,0,0,0)}.dashboard-action-btn svg{flex-shrink:0;width:16px;height:16px}.dashboard-action-btn--primary{background:var(--color-minor);color:var(--zinc-900)}.dashboard-action-btn--primary:hover{background:color-mix(in srgb, var(--color-minor) 90%, white)}.dashboard-action-btn--secondary{background:rgba(0,0,0,0);border-color:var(--zinc-700);color:var(--zinc-400)}.dashboard-action-btn--secondary:hover{background:var(--zinc-800);border-color:var(--zinc-600);color:var(--zinc-300)}.dashboard-section{width:100%;margin-top:var(--spacing-8);padding:0 var(--spacing-4);display:flex;flex-direction:column;align-items:center}.dashboard-section--empty{display:none}.dashboard-section:has(.dashboard-projects-grid:empty){display:none}.dashboard-section-title{display:flex;align-items:center;gap:var(--spacing-3);font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-400);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-4);width:100%}.dashboard-section-title::before,.dashboard-section-title::after{content:"";flex:1;height:1px;background:var(--zinc-700)}.dashboard-section-icon{width:16px;height:16px;color:var(--zinc-500)}.dashboard-projects-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-3);width:100%;position:relative}.dashboard-projects-grid .project-card{width:200px;flex-shrink:0}.dashboard-projects-grid a,.dashboard-projects-grid img{-webkit-user-drag:none;user-drag:none}.project-card{position:relative;background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius);transition:all .15s ease;cursor:grab}.project-card:hover{border-color:var(--color-minor);background:var(--zinc-750, #2a2a2f)}.project-card:hover .project-card-pin-btn{opacity:1}.project-card--pinned{border-color:var(--color-minor-alpha)}.project-card--pinned .project-card-pin-btn--active{opacity:1}.project-card.dragging{background:rgba(0,0,0,0) !important;border:2px dashed var(--color-minor) !important;box-shadow:none !important;cursor:grabbing}.project-card.dragging>*{visibility:hidden}[data-theme=light] .project-card{background:#fff;border:1px solid var(--zinc-800);box-shadow:0 2px 8px rgba(0,0,0,.06)}[data-theme=light] .project-card:hover{border-color:var(--color-minor);background:color-mix(in srgb, var(--color-minor) 8%, white)}[data-theme=light] .project-card--pinned:hover{border-color:var(--color-minor);background:color-mix(in srgb, var(--color-minor) 8%, white)}[data-theme=light] .project-card-status{background:rgba(113,113,122,.12);color:var(--zinc-600)}[data-theme=light] .project-card-status[data-status=non-planifie],[data-theme=light] .project-card-status.status-non-planifie{background:rgba(113,113,122,.12);color:var(--zinc-500)}[data-theme=light] .project-card-status[data-status=en-cours],[data-theme=light] .project-card-status.status-en-cours{background:color-mix(in srgb, var(--color-minor) 15%, transparent);color:var(--color-minor-dark, #8b6914)}[data-theme=light] .project-card-status[data-status=termine],[data-theme=light] .project-card-status.status-termine{background:rgba(34,197,94,.12);color:#15803d}[data-theme=light] .project-card-status[data-status=en-attente],[data-theme=light] .project-card-status.status-en-attente{background:rgba(245,158,11,.12);color:#b45309}[data-theme=light] .project-card-status[data-status=archive],[data-theme=light] .project-card-status.status-archive{background:rgba(113,113,122,.1);color:var(--zinc-500)}[data-theme=light] .project-card-name{color:var(--zinc-100)}[data-theme=light] .project-card-subtitle{color:var(--zinc-600)}[data-theme=light] .project-card-avatar{background:var(--zinc-600);color:var(--zinc-100);border-color:#fff}[data-theme=light] .project-card-avatar--more{background:var(--zinc-400);color:var(--zinc-900)}[data-theme=light] .project-card-reference{color:var(--zinc-400)}[data-theme=light] .project-card-pin-btn{color:var(--zinc-400)}[data-theme=light] .project-card-pin-btn:hover{color:var(--zinc-600);background:var(--zinc-100)}[data-theme=light] .project-card-pin-btn--active{color:var(--red-500)}[data-theme=light] .project-card-pin-btn--active:hover{background:var(--zinc-100)}[data-theme=light] .dashboard-section-title{color:var(--zinc-500)}[data-theme=light] .dashboard-section-title::before,[data-theme=light] .dashboard-section-title::after{background:var(--zinc-750)}[data-theme=light] .dashboard-section-icon{color:var(--zinc-400)}.project-card-pin{position:absolute;top:var(--spacing-2);right:var(--spacing-2);z-index:2}.project-card-pin-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:rgba(0,0,0,0);border:none;border-radius:50%;color:var(--zinc-500);cursor:pointer;transition:all .15s ease}.project-card-pin-btn svg{width:16px;height:16px}.project-card-pin-btn:hover{color:var(--zinc-300);background:var(--zinc-700)}.project-card-pin-btn--active{color:var(--red-500)}.project-card-pin-btn--active:hover{color:var(--red-400);background:var(--zinc-700)}.project-card-content{display:flex;flex-direction:column;padding:var(--spacing-4);padding-top:var(--spacing-5);text-decoration:none;color:inherit;height:160px}.project-card-status{display:inline-flex;align-items:center;padding:2px var(--spacing-2);font-size:10px;font-weight:500;line-height:1.4;border-radius:999px;background:var(--zinc-700);color:var(--zinc-300);white-space:nowrap;min-height:18px;margin-bottom:var(--spacing-1);align-self:flex-start}.project-card-status:empty{display:none}.project-card-status[data-status=non-planifie]{background:rgba(113,113,122,.2);color:var(--zinc-400)}.project-card-status[data-status=en-cours]{background:color-mix(in srgb, var(--color-minor) 25%, transparent);color:var(--color-minor)}.project-card-status[data-status=termine]{background:rgba(34,197,94,.2);color:#86efac}.project-card-status[data-status=en-attente]{background:rgba(245,158,11,.2);color:#fcd34d}.project-card-status[data-status=archive]{background:rgba(113,113,122,.15);color:var(--zinc-400)}.project-card-name{font-size:var(--font-size-sm);font-weight:600;color:var(--zinc-100);margin:0;line-height:1.4;text-transform:uppercase;letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:calc(var(--font-size-sm)*1.4*2)}.project-card-subtitle{font-size:10px;font-weight:500;color:var(--zinc-500);text-transform:uppercase;letter-spacing:.03em;margin:0;margin-top:var(--spacing-1);min-height:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-card-avatars{display:flex;margin-top:auto;padding-top:var(--spacing-2);min-height:28px}.project-card-avatar{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--zinc-600);color:var(--zinc-200);font-size:10px;font-weight:600;border:2px solid var(--zinc-800);margin-left:-8px;overflow:hidden}.project-card-avatar:first-child{margin-left:0}.project-card-avatar img{width:100%;height:100%;object-fit:cover}.project-card-avatar--more{background:var(--zinc-700);color:var(--zinc-400);font-size:9px}.project-card-reference{font-size:var(--font-size-xs);color:var(--zinc-600);font-family:var(--font-mono)}.th-pin,.td-pin{width:40px;text-align:center}.pin-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0);border-radius:50%;color:var(--zinc-500);cursor:pointer;transition:all .15s ease}.pin-btn svg{width:16px;height:16px}.pin-btn:hover{background:var(--zinc-700);border-color:var(--zinc-600);color:var(--zinc-300)}.pin-btn--active{background:rgba(0,0,0,0);border-color:rgba(0,0,0,0);color:var(--color-minor)}.pin-btn--active:hover{background:var(--zinc-700);border-color:var(--zinc-600);color:var(--color-minor-light)}.pin-legend{display:inline-flex;align-items:center;gap:var(--spacing-1);font-size:var(--font-size-xs);color:var(--zinc-400)}.pin-legend svg{color:var(--color-minor)}.empty-state{grid-column:1/-1;text-align:center;padding:var(--spacing-4)}.empty-state p{margin:0 0 var(--spacing-2);color:var(--zinc-400);font-size:var(--font-size-sm)}.stack-card{--stack-color: #c8b6ff;position:relative;width:200px;background:var(--stack-color);border:1px solid var(--stack-color);border-radius:var(--radius);padding:var(--spacing-4) var(--spacing-3);cursor:pointer;transition:all .15s ease;display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-2)}.stack-card:hover{border-color:var(--stack-color);transform:translateY(-1px)}.stack-card.dragging{background:rgba(0,0,0,0) !important;border:2px dashed var(--color-minor) !important;box-shadow:none !important;cursor:grabbing}.stack-card.dragging>*{visibility:hidden}.stack-card-logo{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);overflow:hidden;color:color-mix(in srgb, var(--stack-color) 50%, var(--zinc-900))}.stack-card-logo img{width:100%;height:100%;object-fit:contain}.stack-card-logo svg{width:32px;height:32px;opacity:.8}.stack-card-name{font-size:var(--font-size-sm);font-weight:700;color:color-mix(in srgb, var(--stack-color) 20%, var(--zinc-900));margin:0;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.stack-card-count{font-size:10px;font-weight:600;color:color-mix(in srgb, var(--stack-color) 30%, var(--zinc-700));text-transform:uppercase;letter-spacing:.05em}.drag-clone{box-shadow:0 12px 32px rgba(0,0,0,.35),0 4px 12px rgba(0,0,0,.2);opacity:.95;border-color:var(--color-minor) !important;transition:none !important}.project-card.drop-target,.stack-card.drop-target{outline:2px solid var(--color-minor);outline-offset:2px;background:color-mix(in srgb, var(--color-minor) 10%, var(--zinc-800));position:relative}.project-card.drop-target::after,.stack-card.drop-target::after{content:"Créer une pile";position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);background:var(--color-minor);color:var(--zinc-900);font-size:10px;font-weight:600;padding:2px 8px;border-radius:999px;white-space:nowrap;z-index:10;pointer-events:none}.stack-card.drop-target::after{content:"Ajouter à la pile"}.stack-modal-content{max-width:700px;width:90vw;padding:var(--spacing-6);position:relative}.stack-modal-header{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:var(--spacing-2)}.stack-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:rgba(0,0,0,0);border:none;border-radius:50%;color:var(--zinc-400);font-size:1.5rem;cursor:pointer;transition:all .15s ease;line-height:1}.stack-modal-close:hover{background:var(--zinc-700);color:var(--zinc-200)}.stack-modal-color-toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:rgba(0,0,0,0);border:none;border-radius:50%;cursor:pointer;transition:all .15s ease}.stack-modal-color-toggle:hover{background:var(--zinc-700);transform:scale(1.1)}.stack-modal-colors[hidden]{display:none}.stack-modal-form{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-5);padding-top:var(--spacing-4)}.stack-modal-name{text-align:center;width:100%;max-width:320px}.stack-modal-name-display{font-size:1.25rem;font-weight:700;color:var(--zinc-100);margin:0;cursor:pointer;padding:var(--spacing-2) var(--spacing-3);border-bottom:2px solid rgba(0,0,0,0);transition:border-color .15s ease}.stack-modal-name-display:hover{border-color:var(--zinc-600)}.stack-modal-name-edit[hidden]{display:none}.stack-modal-name-input{font-size:1.25rem;font-weight:700;color:var(--zinc-100);background:rgba(0,0,0,0);border:none;border-bottom:2px solid var(--zinc-600);text-align:center;padding:var(--spacing-2) var(--spacing-3);width:100%;outline:none;transition:border-color .15s ease}.stack-modal-name-input:focus{border-color:var(--color-minor)}.stack-modal-name-input::placeholder{color:var(--zinc-500)}.stack-modal-actions{display:flex;gap:var(--spacing-2);justify-content:center;margin-top:var(--spacing-2)}.stack-modal-btn{padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all .15s ease;border:1px solid rgba(0,0,0,0)}.stack-modal-btn--primary{background:var(--color-minor);color:var(--zinc-900)}.stack-modal-btn--primary:hover{background:color-mix(in srgb, var(--color-minor) 90%, white)}.stack-modal-btn--secondary{background:rgba(0,0,0,0);border-color:var(--zinc-600);color:var(--zinc-300)}.stack-modal-btn--secondary:hover{background:var(--zinc-700)}.stack-modal-colors{display:flex;align-items:center;gap:var(--spacing-2);justify-content:center}.stack-modal-color-swatch{width:36px;height:36px;border-radius:50%;border:2px solid rgba(0,0,0,0);cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;padding:0}.stack-modal-color-swatch svg{width:16px;height:16px;stroke:var(--zinc-600);opacity:0;transition:opacity .15s ease}.stack-modal-color-swatch:hover{transform:scale(1.1);border-color:var(--zinc-400)}.stack-modal-color-swatch.active{border-color:var(--zinc-400)}.stack-modal-color-swatch.active svg{opacity:1}.stack-modal-cards{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-3);width:100%;padding:var(--spacing-2) 0}.stack-modal-cards .project-card{width:180px;flex-shrink:0;cursor:default}.stack-modal-cards .project-card:hover{transform:none}.stack-modal-card-wrapper{position:relative}.stack-modal-card-wrapper:hover .stack-modal-card-remove{opacity:1}.stack-modal-card-remove{position:absolute;top:-6px;right:-6px;z-index:3;display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--zinc-700);border:1px solid var(--zinc-600);border-radius:50%;color:var(--zinc-300);cursor:pointer;opacity:0;transition:all .15s ease}.stack-modal-card-remove svg{width:14px;height:14px}.stack-modal-card-remove:hover{background:var(--color-red);border-color:var(--color-red);color:#fff}.stack-modal-empty{display:block;background:rgba(0,0,0,0);border:none;color:var(--zinc-500);font-size:12px;cursor:pointer;text-align:center;padding:var(--spacing-2) 0;width:100%;transition:color .15s ease}.stack-modal-empty:hover{color:var(--red-400)}[data-theme=light] .stack-card{box-shadow:0 2px 8px rgba(0,0,0,.06)}[data-theme=light] .stack-card-name{color:#1a1a1a}[data-theme=light] .stack-card-count{color:#4a4a4a}[data-theme=light] .stack-card-logo{color:#3a3a3a}[data-theme=light] .stack-modal-close{color:var(--zinc-400)}[data-theme=light] .stack-modal-close:hover{background:var(--zinc-100);color:var(--zinc-700)}[data-theme=light] .stack-modal-color-toggle:hover{background:var(--zinc-100)}[data-theme=light] .stack-modal-name-display{color:#1a1a1a}[data-theme=light] .stack-modal-name-display:hover{border-color:#d4d4d8}[data-theme=light] .stack-modal-name-input{color:#1a1a1a;border-color:#d4d4d8}[data-theme=light] .stack-modal-name-input:focus{border-color:var(--color-minor)}[data-theme=light] .stack-modal-btn--secondary{border-color:var(--zinc-300);color:var(--zinc-600)}[data-theme=light] .stack-modal-btn--secondary:hover{background:var(--zinc-100)}[data-theme=light] .stack-modal-empty{color:var(--zinc-400)}[data-theme=light] .stack-modal-empty:hover{color:var(--red-500)}[data-theme=light] .stack-modal-card-remove{background:var(--zinc-100);border-color:var(--zinc-300);color:var(--zinc-500)}[data-theme=light] .stack-modal-card-remove:hover{background:var(--color-red);border-color:var(--color-red);color:#fff}[data-theme=light] .project-card.drop-target,[data-theme=light] .stack-card.drop-target{background:color-mix(in srgb, var(--color-minor) 10%, white)}[data-theme=light] .project-card.drop-target::after,[data-theme=light] .stack-card.drop-target::after{background:var(--color-minor);color:var(--zinc-900)}.dash{--dgreen: #22c55e;--dgreen-dark: #16a34a;--dbg: #f7f7f5;--dcard: #ffffff;--dline: #e7e5e4;--dtext: #1c1917;--dmuted: #78716c;color:var(--dtext);padding:24px 28px 56px;max-width:1180px;margin:0 auto;width:100%;overflow-y:auto;height:100%}.dash *{box-sizing:border-box}.dash a{text-decoration:none}.dash-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px;gap:16px;flex-wrap:wrap}.dash-h1{font-size:24px;font-weight:800;margin:0;color:var(--dtext)}.dash-sub{color:var(--dmuted);font-size:13px;margin:4px 0 0}.dash-period{display:flex;align-items:center;gap:10px}.dash-select{font:inherit;padding:8px 12px;border:1px solid var(--dline);border-radius:10px;background:var(--dcard);color:var(--dtext);cursor:pointer}.dash-attention{margin-bottom:26px}.dash-attention-ok{display:flex;align-items:center;gap:10px;background:#f0fdf4;border:1px solid #bbf7d0;color:var(--dgreen-dark);border-radius:14px;padding:14px 18px;font-size:13.5px;font-weight:600}.dash-attention-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));gap:12px}.dash-attn{display:flex;align-items:center;gap:14px;background:var(--dcard);border:1px solid var(--dline);border-left-width:4px;border-radius:14px;padding:14px 16px;color:var(--dtext);transition:.15s}.dash-attn:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,0,0,.06)}.dash-attn-count{font-size:24px;font-weight:800;min-width:40px;text-align:center}.dash-attn-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.dash-attn-body strong{font-size:14px}.dash-attn-detail{font-size:12px;color:var(--dmuted);line-height:1.35}.dash-attn-cta{font-size:12px;font-weight:700;white-space:nowrap}.dash-attn--danger{border-left-color:#ef4444}.dash-attn--danger .dash-attn-count,.dash-attn--danger .dash-attn-cta{color:#dc2626}.dash-attn--warn{border-left-color:#f59e0b}.dash-attn--warn .dash-attn-count,.dash-attn--warn .dash-attn-cta{color:#b45309}.dash-attn--info{border-left-color:#3b82f6}.dash-attn--info .dash-attn-count,.dash-attn--info .dash-attn-cta{color:#2563eb}.dash-quick{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}.dash-quick-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:12px;background:var(--dcard);border:1px solid var(--dline);color:var(--dtext);font-weight:600;font-size:14px;transition:.15s}.dash-quick-btn:hover{border-color:var(--dgreen);color:var(--dgreen-dark);transform:translateY(-1px)}.dash-quick-ic{font-size:16px}.dash-kpis{display:grid;grid-template-columns:repeat(5, 1fr);gap:12px;margin-bottom:14px}.dash-kpi{background:var(--dcard);border:1px solid var(--dline);border-radius:14px;padding:16px}.dash-kpi-val{font-size:26px;font-weight:800}.dash-kpi-val small{font-size:14px;font-weight:600;color:var(--dmuted);margin-left:3px}.dash-kpi-label{font-size:12px;color:var(--dmuted);margin-top:2px}.dash-empty{background:var(--dcard);border:1px dashed var(--dline);border-radius:14px;padding:18px;color:var(--dmuted);font-size:13px;margin-bottom:26px}.dash-theme{margin:28px 0 0}.dash-theme-title{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--dmuted);margin:0 0 14px}.dash-dot{width:9px;height:9px;border-radius:50%}.dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dash-card{background:var(--dcard);border:1px solid var(--dline);border-radius:16px;padding:18px}.dash-card--full{grid-column:1/-1}.dash-card-title{font-size:15px;font-weight:700;margin:0 0 14px;color:var(--dtext)}.dash-table-wrap{overflow-x:auto}.dash .dash-matrix,.dash .dash-mini{width:100%;border-collapse:collapse;font-size:13px}.dash th{font-weight:600;color:var(--dmuted);padding:8px 10px;text-align:center;font-size:12px}.dash td{padding:9px 10px;text-align:center;border-top:1px solid var(--dline);color:var(--dtext)}.dash th.left,.dash td.left{text-align:left}.dash-matrix td b{font-weight:700}.dash-matrix .pct{display:block;font-size:11px;color:var(--dmuted)}.dash-matrix .total,.dash th.total{font-weight:800;color:var(--dgreen-dark);background:#f0fdf4}.dash .muted{color:#d6d3d1}.dash-barlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.dash-barlist li{display:grid;grid-template-columns:130px 1fr auto;align-items:center;gap:12px}.dash-barlist-label{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-barlist-val{font-size:13px;font-weight:700;min-width:80px;text-align:right}.dash-bar-track{height:10px;background:#f0efed;border-radius:6px;overflow:hidden}.dash-bar-fill{display:block;height:100%;border-radius:6px;background:var(--dgreen)}.dash-tag{font-style:normal;font-size:10px;padding:2px 6px;border-radius:6px;margin-left:6px;vertical-align:middle}.dash-tag--warn{background:#fef3c7;color:#92400e}.dash-tag--mut{background:#f5f5f4;color:var(--dmuted)}.dash-trend{width:100%;height:auto}.dash-trend-label{font-size:9px;fill:var(--dmuted)}.dash-zone{display:inline-block;min-width:26px;padding:2px 7px;background:#f0fdf4;color:var(--dgreen-dark);border-radius:6px;font-weight:700;font-size:12px}.dash .warn-cell{color:#b45309;font-weight:700}.dash-note{font-size:12px;color:var(--dmuted);margin:14px 0 0;padding-top:12px;border-top:1px dashed var(--dline)}@media(max-width: 860px){.dash-kpis,.dash-kpis-4,.dash-kpis-5{grid-template-columns:repeat(2, 1fr)}.dash-grid,.dash-grid2{grid-template-columns:1fr}}.dash-seg{display:inline-flex;gap:2px;background:#f6f7f8;border:1px solid var(--dline);border-radius:10px;padding:3px}.dash-seg a{font-size:13px;font-weight:500;color:var(--dmuted);padding:7px 16px;border-radius:7px;transition:all .12s;white-space:nowrap}.dash-seg a:hover{color:var(--dtext)}.dash-seg a.active{background:var(--dgreen);color:#fff;font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.12)}.dash-tab-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;flex-wrap:wrap}.dash-tab-sub{color:var(--dmuted);font-size:13px;margin:0}.dash-entity-pick{display:inline-flex;align-items:center;gap:9px}.dash-entity-ic{color:var(--dgreen-dark);flex-shrink:0}.dash-period-range{display:flex;align-items:center;gap:6px}.dash-period-arrow{color:var(--dmuted);font-size:13px}.dash-period-all{font-size:13px;color:var(--dmuted);font-weight:600}.dash-select-wrap{position:relative;display:inline-flex;align-items:center}.dash-select-wrap .dash-select{appearance:none;-webkit-appearance:none;padding-right:30px;font-weight:600;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2316a34a' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}.dash-select:focus{outline:none;border-color:var(--dgreen);box-shadow:0 0 0 3px rgba(34,197,94,.22)}.dash-kpis-4{grid-template-columns:repeat(4, 1fr);margin-bottom:20px}.dash-kpis-5{grid-template-columns:repeat(5, 1fr);margin-bottom:20px}.dash-kpi{position:relative}.dash-kpi-delta{position:absolute;top:14px;right:14px;font-size:11px;font-weight:700;padding:1px 6px;border-radius:6px}.dash-kpi-delta.up{background:#f0fdf4;color:var(--dgreen-dark)}.dash-kpi-delta.down{background:#fef3c7;color:#92400e}.dash-grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.dash-grid2 .dash-card--full{grid-column:1/-1}.dash-card--full{margin-bottom:16px}.dash-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.dash-card-head .dash-card-title{margin:0}.dash-trend-legend{display:flex;gap:14px;margin-top:8px;flex-wrap:wrap}.dash-leg{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--dmuted)}.dash-leg::before{content:"";width:14px;border-top:2.5px solid}.dash-leg-hours::before{border-top-color:var(--dgreen)}.dash-leg-km::before{border-top-color:#3b82f6;border-top-style:dashed}.dash-leg-bars::before{width:9px;height:9px;border:none;border-radius:2px;background:#e7f7ee;box-shadow:inset 0 0 0 1px #c7efd8}.dash-gauge-row{display:flex;align-items:center;gap:12px}.dash-gauge-row .dash-bar-track{flex:1}.dash-gauge-val{font-size:13px;font-weight:700;white-space:nowrap}.dash-empty-inline{font-size:13px;color:var(--dmuted);margin:4px 0}[data-controller=gps-toggle]{display:flex;flex-direction:column;gap:var(--spacing-3)}.avatar-upload-container{width:96px;height:96px;position:relative;flex-shrink:0}.avatar-preview-wrapper{width:100%;height:100%;border-radius:50%;overflow:hidden;border:2px solid var(--zinc-700);background:var(--zinc-800);cursor:pointer;transition:border-color var(--transition)}.avatar-preview-wrapper:hover{border-color:var(--zinc-500)}.avatar-preview-image,.avatar-preview-placeholder{width:100%;height:100%;object-fit:cover;display:block}.avatar-preview-placeholder{display:flex;align-items:center;justify-content:center;background:var(--zinc-700)}.avatar-preview-initials{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2.25rem;font-weight:600;font-family:var(--font-family-heading)}.avatar-badge{position:absolute;bottom:2px;right:2px;width:26px;height:26px;border-radius:50%;background:var(--zinc-600);border:2px solid var(--zinc-850);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition);color:var(--zinc-200)}.avatar-badge:hover{background:var(--zinc-500)}.avatar-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:200px;background:var(--zinc-800);border:1px solid var(--zinc-700);border-radius:var(--radius-md);box-shadow:0 8px 24px rgba(0,0,0,.35);padding:4px;z-index:50;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity 150ms ease,transform 150ms ease,visibility 150ms}.avatar-menu--open{opacity:1;visibility:visible;transform:translateY(0)}.avatar-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;border:none;background:none;color:var(--zinc-200);font-size:.8125rem;font-family:inherit;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition);white-space:nowrap}.avatar-menu-item:hover{background:var(--zinc-700)}.avatar-menu-item svg{flex-shrink:0;color:var(--zinc-400)}.avatar-menu-item--danger{color:#d98c8c}.avatar-menu-item--danger svg{color:#d98c8c}.avatar-menu-item--danger:hover{background:rgba(217,112,112,.1)}.avatar-message{position:absolute;top:calc(100% + 6px);left:0;font-size:.6875rem;padding:.25rem 0;white-space:nowrap;z-index:49}.avatar-message--success{color:#6aac7e}.avatar-message--error{color:#d98c8c}.avatar-file-input-hidden{display:none}.avatar-upload-hint{display:none}.geocode-status-compact{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-xs);color:var(--zinc-400);padding:var(--spacing-2);background:var(--zinc-800);border-radius:var(--radius-sm);border:1px solid var(--zinc-700)}.geocode-status-compact svg{flex-shrink:0}.geocode-status-compact.geocode-ok{color:#6aac7e;border-color:rgba(106,172,126,.2);background:rgba(106,172,126,.08)}.geocode-status-compact.geocode-missing{color:#d98c8c;border-color:rgba(217,112,112,.2);background:rgba(217,112,112,.08)}@media(max-width: 768px){.avatar-upload-container{width:80px;height:80px}.avatar-preview-initials{font-size:1.875rem}.avatar-badge{width:24px;height:24px}.avatar-badge svg{width:12px;height:12px}}.m-0{margin:0}.m-1{margin:var(--spacing-1)}.m-2{margin:var(--spacing-2)}.m-3{margin:var(--spacing-3)}.m-4{margin:var(--spacing-4)}.m-5{margin:var(--spacing-5)}.m-6{margin:var(--spacing-6)}.m-auto{margin:auto}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing-1)}.mt-2{margin-top:var(--spacing-2)}.mt-3{margin-top:var(--spacing-3)}.mt-4{margin-top:var(--spacing-4)}.mt-5{margin-top:var(--spacing-5)}.mt-6{margin-top:var(--spacing-6)}.mr-0{margin-right:0}.mr-1{margin-right:var(--spacing-1)}.mr-2{margin-right:var(--spacing-2)}.mr-3{margin-right:var(--spacing-3)}.mr-4{margin-right:var(--spacing-4)}.mr-5{margin-right:var(--spacing-5)}.mr-6{margin-right:var(--spacing-6)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing-1)}.mb-2{margin-bottom:var(--spacing-2)}.mb-3{margin-bottom:var(--spacing-3)}.mb-4{margin-bottom:var(--spacing-4)}.mb-5{margin-bottom:var(--spacing-5)}.mb-6{margin-bottom:var(--spacing-6)}.ml-0{margin-left:0}.ml-1{margin-left:var(--spacing-1)}.ml-2{margin-left:var(--spacing-2)}.ml-3{margin-left:var(--spacing-3)}.ml-4{margin-left:var(--spacing-4)}.ml-5{margin-left:var(--spacing-5)}.ml-6{margin-left:var(--spacing-6)}.mx-0{margin-left:0;margin-right:0}.mx-1{margin-left:var(--spacing-1);margin-right:var(--spacing-1)}.mx-2{margin-left:var(--spacing-2);margin-right:var(--spacing-2)}.mx-3{margin-left:var(--spacing-3);margin-right:var(--spacing-3)}.mx-4{margin-left:var(--spacing-4);margin-right:var(--spacing-4)}.mx-auto{margin-left:auto;margin-right:auto}.my-0{margin-top:0;margin-bottom:0}.my-1{margin-top:var(--spacing-1);margin-bottom:var(--spacing-1)}.my-2{margin-top:var(--spacing-2);margin-bottom:var(--spacing-2)}.my-3{margin-top:var(--spacing-3);margin-bottom:var(--spacing-3)}.my-4{margin-top:var(--spacing-4);margin-bottom:var(--spacing-4)}.p-0{padding:0}.p-1{padding:var(--spacing-1)}.p-2{padding:var(--spacing-2)}.p-3{padding:var(--spacing-3)}.p-4{padding:var(--spacing-4)}.p-5{padding:var(--spacing-5)}.p-6{padding:var(--spacing-6)}.pt-0{padding-top:0}.pt-1{padding-top:var(--spacing-1)}.pt-2{padding-top:var(--spacing-2)}.pt-3{padding-top:var(--spacing-3)}.pt-4{padding-top:var(--spacing-4)}.pt-5{padding-top:var(--spacing-5)}.pt-6{padding-top:var(--spacing-6)}.pr-0{padding-right:0}.pr-1{padding-right:var(--spacing-1)}.pr-2{padding-right:var(--spacing-2)}.pr-3{padding-right:var(--spacing-3)}.pr-4{padding-right:var(--spacing-4)}.pr-5{padding-right:var(--spacing-5)}.pr-6{padding-right:var(--spacing-6)}.pb-0{padding-bottom:0}.pb-1{padding-bottom:var(--spacing-1)}.pb-2{padding-bottom:var(--spacing-2)}.pb-3{padding-bottom:var(--spacing-3)}.pb-4{padding-bottom:var(--spacing-4)}.pb-5{padding-bottom:var(--spacing-5)}.pb-6{padding-bottom:var(--spacing-6)}.pl-0{padding-left:0}.pl-1{padding-left:var(--spacing-1)}.pl-2{padding-left:var(--spacing-2)}.pl-3{padding-left:var(--spacing-3)}.pl-4{padding-left:var(--spacing-4)}.pl-5{padding-left:var(--spacing-5)}.pl-6{padding-left:var(--spacing-6)}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:var(--spacing-1);padding-right:var(--spacing-1)}.px-2{padding-left:var(--spacing-2);padding-right:var(--spacing-2)}.px-3{padding-left:var(--spacing-3);padding-right:var(--spacing-3)}.px-4{padding-left:var(--spacing-4);padding-right:var(--spacing-4)}.py-0{padding-top:0;padding-bottom:0}.py-1{padding-top:var(--spacing-1);padding-bottom:var(--spacing-1)}.py-2{padding-top:var(--spacing-2);padding-bottom:var(--spacing-2)}.py-3{padding-top:var(--spacing-3);padding-bottom:var(--spacing-3)}.py-4{padding-top:var(--spacing-4);padding-bottom:var(--spacing-4)}.gap-0{gap:0}.gap-1{gap:var(--spacing-1)}.gap-2{gap:var(--spacing-2)}.gap-3{gap:var(--spacing-3)}.gap-4{gap:var(--spacing-4)}.gap-5{gap:var(--spacing-5)}.gap-6{gap:var(--spacing-6)}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.inline-grid{display:inline-grid}.hidden{display:none}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-initial{flex:0 1 auto}.flex-none{flex:none}.flex-grow{flex-grow:1}.flex-grow-0{flex-grow:0}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.self-auto{align-self:auto}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.w-auto{width:auto}.w-full{width:100%}.w-screen{width:100vw}.w-fit{width:fit-content}.min-w-0{min-width:0}.min-w-full{min-width:100%}.max-w-full{max-width:100%}.max-w-screen{max-width:100vw}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.h-fit{height:fit-content}.min-h-0{min-height:0}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.max-h-full{max-height:100%}.max-h-screen{max-height:100vh}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:900;color:var(--zinc-100)}.font-bold{font-weight:700}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.normal-case{text-transform:none}.underline{text-decoration:underline}.line-through{text-decoration:line-through}.no-underline{text-decoration:none}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.text-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-light{color:var(--zinc-200)}.text-white{color:var(--zinc-50)}.border-0{border-width:0}.border{border-width:1px}.border-2{border-width:2px}.border-t{border-top-width:1px}.border-r{border-right-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-dotted{border-style:dotted}.border-none{border-style:none}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.rounded{border-radius:var(--radius)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-full{border-radius:9999px}.border-grey{border-color:var(--zinc-700)}.border-light{border-color:var(--zinc-600)}.border-dark{border-color:var(--zinc-800)}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.cursor-auto{cursor:auto}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.cursor-move{cursor:move}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.select-none{user-select:none}.select-text{user-select:text}.select-all{user-select:all}.select-auto{user-select:auto}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-auto{z-index:auto}.transition{transition:var(--transition-fast)}.transition-none{transition:none}.visible{visibility:visible}.invisible{visibility:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.skip-link{position:absolute;left:8px;top:-48px;z-index:1000;padding:8px 16px;background:var(--color-minor-dark);color:#fff;border-radius:6px;font-weight:600;text-decoration:none;transition:top .15s ease-out}.skip-link:focus{top:8px;outline:2px solid #fff;outline-offset:2px}.text-orange{color:var(--color-minor) !important}.text-orange-light{color:var(--color-minor-light) !important}.text-orange-dark{color:var(--color-minor-dark) !important}.bg-orange{background-color:var(--color-minor)}.bg-orange-light{background-color:var(--color-minor-light)}.bg-orange-dark{background-color:var(--color-minor-dark)}.bg-orange-alpha{background-color:var(--color-minor-alpha)}.border-orange{border-color:var(--color-minor)}.border-orange-light{border-color:var(--color-minor-light)}.border-orange-dark{border-color:var(--color-minor-dark)}.text-lime{color:var(--color-lime) !important}.text-lime-light{color:var(--color-lime-light) !important}.text-lime-dark{color:var(--color-lime-dark) !important}.bg-lime{background-color:var(--color-lime)}.bg-lime-light{background-color:var(--color-lime-light)}.bg-lime-dark{background-color:var(--color-lime-dark)}.border-lime{border-color:var(--color-lime)}.border-lime-light{border-color:var(--color-lime-light)}.border-lime-dark{border-color:var(--color-lime-dark)}.bg-transparent{background-color:rgba(0,0,0,0) !important}.bg-zinc-950{background-color:var(--zinc-950)}.bg-zinc-900{background-color:var(--zinc-900)}.bg-zinc-850{background-color:var(--zinc-850)}.bg-zinc-800{background-color:var(--zinc-800)}.bg-zinc-750{background-color:var(--zinc-750)}.bg-zinc-700{background-color:var(--zinc-700)}.bg-zinc-600{background-color:var(--zinc-600)}.bg-zinc-500{background-color:var(--zinc-500)}.bg-zinc-400{background-color:var(--zinc-400)}.bg-zinc-300{background-color:var(--zinc-300)}.bg-zinc-200{background-color:var(--zinc-200)}.bg-zinc-100{background-color:var(--zinc-100)}.bg-zinc-50{background-color:var(--zinc-50)}.text-zinc-950{color:var(--zinc-950)}.text-zinc-900{color:var(--zinc-900)}.text-zinc-850{color:var(--zinc-850)}.text-zinc-800{color:var(--zinc-800)}.text-zinc-750{color:var(--zinc-750)}.text-zinc-700{color:var(--zinc-700)}.text-zinc-600{color:var(--zinc-600)}.text-zinc-500{color:var(--zinc-500)}.text-zinc-400{color:var(--zinc-400)}.text-zinc-300{color:var(--zinc-300)}.text-zinc-200{color:var(--zinc-200)}.text-zinc-100{color:var(--zinc-100)}.text-zinc-50{color:var(--zinc-50)}.border-zinc-950{border-color:var(--zinc-950)}.border-zinc-900{border-color:var(--zinc-900)}.border-zinc-850{border-color:var(--zinc-850)}.border-zinc-800{border-color:var(--zinc-800)}.border-zinc-750{border-color:var(--zinc-750)}.border-zinc-700{border-color:var(--zinc-700)}.border-zinc-600{border-color:var(--zinc-600)}.border-zinc-500{border-color:var(--zinc-500)}.border-zinc-400{border-color:var(--zinc-400)}.border-zinc-300{border-color:var(--zinc-300)}.border-zinc-200{border-color:var(--zinc-200)}.border-zinc-100{border-color:var(--zinc-100)}.border-zinc-50{border-color:var(--zinc-50)}
