@import "https://fonts.googleapis.com/css2?family=Familjen+Grotesk:wght@400;500;600;700&family=IBM+Plex+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:64px;--space-3xl:96px;--space-4xl:144px;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.2rem;--text-xl:1.44rem;--text-2xl:1.728rem;--text-3xl:2.074rem;--text-display-s:1.44rem;--text-display:1.728rem;--text-section:1.2rem;--text-title:1rem;--text-lead:1rem;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--color-error:#be2323;--color-success:#21763c;--container:1440px;--gutter:64px;--gap-columns:32px;--section-gap-s:120px;--section-gap:144px;--section-gap-l:176px;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-sticky-nav:300;--z-modal:400;--z-toast:500;--z-tooltip:600;--color-paper:#f8fbfe;--color-paper-2:#eff3f8;--color-paper-3:#e3e8ef;--color-ink:#111825;--color-ink-2:#363e49;--color-muted:#5d646e;--color-rule:#dadee4;--color-rule-2:#c2c8cf;--color-graphite:#121823;--color-graphite-2:#1e2532;--color-graphite-ink:#e3e8ee;--color-graphite-muted:#939ca9;--color-accent:#0462d3;--color-accent-2:#77b4ff;--color-accent-wash:#e4f0ff;--color-accent-ink:#f8fbfe;--color-focus:#0462d3;--color-accent-deep:#0041ba;--color-accent-edge:#003d98;--color-glyph-1:#d0dceb;--color-glyph-2:#aec3de;--color-glyph-3:#7ba1d3;--color-glyph-4:#4a81cc;--color-graphite-glyph-1:#2d3645;--color-graphite-glyph-2:#3a4b66;--color-graphite-glyph-3:#466ca5;--color-key-face:#fcfdff;--color-key-edge:#b7bec8;--font-display:"Familjen Grotesk", system-ui, sans-serif;--font-body:"IBM Plex Sans", system-ui, sans-serif;--font-outlier:"JetBrains Mono", ui-monospace, monospace;--radius-card:8px;--radius-input:6px;--radius-pill:999px;--cell-w:8px;--cell-h:16px;--cut:8px;--cut-l:16px;--rule-hair:1px;--shadow-card:0 1px 2px #1118250f;--shadow-key:0 3px 0 0 var(--color-key-edge), 0 6px 8px -4px #11182547, inset 0 1px 0 #ffffffe6;--shadow-key-accent:0 3px 0 0 var(--color-accent-edge), 0 6px 8px -4px #01286873, inset 0 1px 0 #ffffff38;--shadow-key-press:inset 0 1px 2px #11182524;--tracking-display:-.028em;--display-weight:600;--legacy-color-001:white;--legacy-color-002:#fff;--legacy-color-003:#0000000d;--legacy-color-004:#16242c33;--legacy-color-005:#22384440;--legacy-color-006:#05966940;--legacy-color-007:#dc262640;--legacy-color-008:#22384433;--legacy-color-009:#dc262633;--legacy-color-010:#d9770633;--legacy-color-011:#05966933;--legacy-color-012:#2563eb33;--legacy-color-013:#0000000f;--legacy-color-014:#00000026;--legacy-color-015:#00000005;--legacy-color-016:#271f2024;--legacy-color-017:#8c8177;--legacy-color-018:#fff;--legacy-color-019:#17110f;--legacy-color-020:#8ca9c4;--legacy-color-021:#1118270f;--legacy-color-022:#012169;--legacy-color-023:#00174a;--legacy-color-024:#d71921;--legacy-color-025:#01216947;--legacy-color-026:#fffffffa;--legacy-color-027:#ffffff4d;--legacy-color-028:#ffffff14;--legacy-color-029:#fff3;--legacy-color-030:#fff6;--legacy-color-031:#ffffff1f;--legacy-color-032:#e4e8ee;--legacy-color-033:#5d646e;--legacy-color-034:#272e3b;--legacy-color-035:#f1f5f9;--legacy-color-036:#01216933;--legacy-color-037:#0f172a66;--legacy-color-038:#e2e8f0;--legacy-color-039:#131b28;--legacy-color-040:#cbd5e1;--legacy-color-041:#ffffff26;--legacy-color-042:#ffffff40;--legacy-color-043:#fef2f2;--legacy-color-044:#fecaca;--legacy-color-045:#991b1b;--legacy-color-046:#0000000f;--legacy-color-047:#00000026;--legacy-color-048:#05966940;--legacy-color-049:#d9770640;--legacy-color-050:#dc262640;--legacy-color-051:#2563eb40;--legacy-color-052:#fff5f5;--legacy-color-053:#ecfdf5;--legacy-color-054:#065f46;--legacy-color-055:#a7f3d0;--legacy-color-056:#fffbeb;--legacy-color-057:#fde68a;--legacy-color-058:#78350f;--legacy-color-059:#ffffff80;--legacy-color-060:#11182714;--legacy-color-061:#c4ae7e;--legacy-color-062:#f8e2de;--legacy-color-063:#4f0c280f;--legacy-color-064:#4f0c282e;--legacy-color-065:#4f0c2833;--legacy-color-066:#4f0c2814;--legacy-color-067:#e7f0e3;--legacy-color-068:#2f5a2d;--legacy-color-069:#7a2424;--legacy-color-070:#6f1d14;--legacy-color-071:#e2f0e0;--legacy-color-072:#2a5e28;--legacy-color-073:#b3d9b1;--legacy-color-074:#fef3cd;--legacy-color-075:#7a5a00;--legacy-color-076:#f5d88a;--legacy-color-077:#fde9e6;--legacy-color-078:#7a1c14;--legacy-color-079:#f5c0bb;--legacy-color-080:#e8edf5;--legacy-color-081:#3a4f6e;--legacy-color-082:#e8f0ff;--legacy-color-083:#1a3a8a;--legacy-color-084:#d4edda;--legacy-color-085:#155724;--legacy-color-086:#ffe5b4;--legacy-color-087:#805500;--legacy-color-088:#dc2626;--legacy-color-089:#1118250d;--legacy-color-090:#1118251a;--font-sans:var(--font-body);--font-mono:var(--font-outlier);--color-boa-navy:var(--color-accent);--color-boa-navy-deep:var(--color-accent-deep);--color-boa-red:var(--color-error);--color-boa-canvas:var(--color-paper-2);--color-brand-primary:var(--color-accent);--color-brand-deep:var(--color-ink);--color-text-muted:var(--color-muted);--color-border:var(--color-rule);--color-surface-subtle:var(--color-paper-2);--color-surface-soft:var(--color-paper);--color-surface:var(--color-paper);--color-accent-warm:var(--color-accent-2);--color-success-bg:#e3f4e6;--color-warning:#805300;--color-warning-bg:#faf1df;--color-danger:var(--color-error);--color-danger-bg:#ffedea;--color-info:var(--color-accent);--color-info-bg:var(--color-accent-wash);--bg-primary:var(--color-paper-2);--bg-surface:var(--color-paper);--bg-card:var(--color-paper);--bg-card-subtle:var(--color-paper-2);--border:var(--color-rule);--border-subtle:var(--color-rule);--border-strong:var(--color-rule-2);--border-accent:color-mix(in oklab, var(--color-accent) 24%, transparent);--border-color:var(--color-rule);--text-main:var(--color-ink);--text-secondary:var(--color-ink-2);--text-muted:var(--color-muted);--text-tertiary:var(--color-muted);--accent-primary:var(--color-accent);--accent-primary-hover:var(--color-accent-deep);--accent-blue:var(--color-accent);--accent-blue-hover:var(--color-accent-deep);--accent-purple:var(--color-accent-deep);--accent-gold:var(--color-accent-2);--accent-success:var(--color-success);--accent-warning:var(--color-warning);--accent-danger:var(--color-danger);--burgundy:var(--color-accent);--burgundy-hover:var(--color-accent-deep);--burgundy-subtle:var(--color-accent-wash);--accent-green:var(--color-success);--accent-yellow:var(--color-warning);--accent-red:var(--color-danger);--panel-tint:var(--color-paper-2);--panel-tint-strong:var(--color-paper-3);--panel-border:var(--color-rule);--code-bg:var(--color-graphite);--focus-ring:color-mix(in oklab, var(--color-focus) 28%, transparent);--scrim:#11182594;--radius-xs:4px;--radius-sm:6px;--radius-md:6px;--radius-lg:8px;--radius-xl:8px;--radius-2xl:8px;--shadow-subtle:var(--shadow-card);--shadow-card-hover:0 4px 14px #11182517;--shadow-modal:0 18px 48px #11182538;--transition-fast:var(--dur-micro) var(--ease-out);--transition:var(--dur-short) var(--ease-out);--transition-slow:var(--dur-long) var(--ease-out)}@supports (color:lab(0% 0 0)){:root{--color-error:lab(42.4236% 59.8149 41.9956);--color-success:lab(43.5038% -36.3107 24.0307);--color-paper:lab(98.3722% -.553489 -1.78939);--color-paper-2:lab(95.5817% -.788182 -2.89234);--color-paper-3:lab(91.8653% -1.07244 -3.97073);--color-ink:lab(8.19522% -.0281557 -10.0994);--color-ink-2:lab(25.6703% -.797093 -8.05533);--color-muted:lab(41.943% -1.00316 -6.60855);--color-rule:lab(88.3882% -.882238 -3.25141);--color-rule-2:lab(80.2634% -1.16071 -4.32668);--color-graphite:lab(8.22743% -.176646 -8.69651);--color-graphite-2:lab(14.6042% -.329629 -9.46176);--color-graphite-ink:lab(91.8716% -1.09071 -3.5696);--color-graphite-muted:lab(63.9824% -1.50895 -8.02803);--color-accent:lab(42.4634% 11.5155 -65.8268);--color-accent-2:lab(71.5687% -4.4961 -45.207);--color-accent-wash:lab(94.1278% -1.94106 -10.2274);--color-accent-ink:lab(98.3722% -.553489 -1.78939);--color-focus:lab(42.4634% 11.5155 -65.8268);--color-accent-deep:lab(31.1672% 24.0612 -70.0927);--color-accent-edge:lab(27.4022% 14.2122 -55.7501);--color-glyph-1:lab(87.1881% -2.03154 -9.05489);--color-glyph-2:lab(77.8353% -3.01746 -16.2053);--color-glyph-3:lab(64.846% -3.38858 -30.1494);--color-glyph-4:lab(52.789% -.103921 -45.4601);--color-graphite-glyph-1:lab(22.1273% -.45073 -10.9397);--color-graphite-glyph-2:lab(31.3011% -.819787 -17.9876);--color-graphite-glyph-3:lab(44.8851% -.500143 -35.2551);--color-key-face:lab(99.3018% -.333905 -1.07464);--color-key-edge:lab(76.7689% -1.33908 -5.81472);--shadow-card:0 1px 2px lab(8.19522% -.0281557 -10.0994/.06);--shadow-key:0 3px 0 0 var(--color-key-edge), 0 6px 8px -4px lab(8.19522% -.0281557 -10.0994/.28), inset 0 1px 0 lab(100% 0 0/.9);--shadow-key-accent:0 3px 0 0 var(--color-accent-edge), 0 6px 8px -4px lab(17.4531% 10.1863 -41.82/.45), inset 0 1px 0 lab(100% 0 0/.22);--shadow-key-press:inset 0 1px 2px lab(8.19522% -.0281557 -10.0994/.14);--legacy-color-033:lab(41.943% -1.00316 -6.60855);--legacy-color-034:lab(18.6762% -.436872 -9.13678);--legacy-color-039:lab(9.35846% -.0850633 -10.1137);--legacy-color-089:lab(8.19522% -.0281557 -10.0994/.05);--legacy-color-090:lab(8.19522% -.0281557 -10.0994/.1);--color-success-bg:lab(94.5352% -7.39104 4.71039);--color-warning:lab(39.4811% 17.4358 64.8795);--color-warning-bg:lab(95.4537% .830799 9.61384);--color-danger-bg:lab(95.1381% 7.53295 4.42773);--scrim:lab(8.19522% -.0281557 -10.0994/.58);--shadow-card-hover:0 4px 14px lab(8.19522% -.0281557 -10.0994/.09);--shadow-modal:0 18px 48px lab(8.19522% -.0281557 -10.0994/.22)}}
*,:before,:after{box-sizing:border-box}html,body{overflow-x:clip}html{scrollbar-color:var(--color-muted) var(--color-paper);scroll-padding-top:var(--space-3xl)}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-md);-webkit-font-smoothing:antialiased;caret-color:var(--color-accent);margin:0;line-height:1.55}::selection{background:color-mix(in oklab, var(--color-accent) 22%, transparent);color:var(--color-ink)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}a{color:inherit;text-underline-offset:.16em;text-decoration-thickness:1px}h1,h2,h3{font-family:var(--font-display);font-weight:var(--display-weight,700);font-synthesis:none;letter-spacing:var(--tracking-display);overflow-wrap:break-word;text-wrap:balance;min-width:0;margin:0;line-height:1.05}h1{max-width:20ch;font-size:var(--text-display)}h2{max-width:30ch;font-size:var(--text-section)}h3{max-width:40ch;font-size:var(--text-title);line-height:1.2}.lead{font-size:var(--text-lead);max-width:52ch;line-height:1.45}p{text-wrap:pretty;margin:0}p:not([class]){max-width:65ch}img,video{max-width:100%;height:auto;display:block}svg{display:block}[hidden]{display:none!important}button,input,select,textarea{font:inherit}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);box-sizing:border-box;margin-inline:auto}.num,.figure,td.num{font-variant-numeric:tabular-nums}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}[data-slot]{background:linear-gradient(160deg, var(--color-paper-2,var(--color-paper)), var(--color-paper-3,var(--color-paper)));position:relative;overflow:hidden}[data-slot]>img{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute;inset:0}[data-slot]:has(>img)>:not(img):not([data-keep]){display:none!important}@media (max-width:60rem){:root{--gutter:24px;--section-gap-s:80px;--section-gap:96px;--section-gap-l:120px}}@media (max-width:40rem){:root{--gutter:16px;--section-gap-s:56px;--section-gap:72px;--section-gap-l:96px;--gap-columns:16px}}@media (prefers-reduced-motion:reduce){:not(.keep-motion),:not(.keep-motion):before,:not(.keep-motion):after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[data-slot]:has(>img){isolation:isolate;background:var(--color-paper);outline:1px solid color-mix(in oklab, var(--color-ink) 8%, transparent);outline-offset:-1px}[data-slot]>img{z-index:0;filter:grayscale()contrast(1.08);mix-blend-mode:multiply}[data-slot]:has(>img):before{content:"";z-index:1;background:var(--color-graphite);mix-blend-mode:lighten;pointer-events:none;position:absolute;inset:0}
:root{--font-sans:var(--font-body);--font-mono:var(--font-outlier)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-feature-settings:"cv02", "cv03", "cv04", "cv11", "tnum"}body{background-color:var(--bg-primary);color:var(--text-main);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.5}.tabular-nums,.stat-value,.metric-chip .val,.data-table td,code{font-variant-numeric:tabular-nums}.btn{padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);cursor:pointer;transition:transform var(--dur-micro) var(--ease-out), background-color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out), box-shadow var(--dur-micro) var(--ease-out);white-space:nowrap;box-shadow:var(--shadow-subtle);-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:.45rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none!important}.btn-primary{background:var(--color-brand-primary);color:var(--legacy-color-002);border-color:var(--color-brand-primary);box-shadow:0 1px 2px var(--legacy-color-003)}.btn-primary:hover{background:var(--color-brand-deep);border-color:var(--color-brand-deep);box-shadow:0 4px 10px var(--legacy-color-004)}.btn-secondary{background:var(--legacy-color-002);color:var(--color-brand-primary);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-surface-subtle);border-color:var(--border-strong);color:var(--color-brand-deep)}.btn-accent{background:var(--color-brand-primary);color:var(--legacy-color-002);box-shadow:0 1px 3px var(--legacy-color-005)}.btn-accent:hover{background:var(--color-brand-deep)}.btn-success{background:var(--color-success);color:var(--legacy-color-002);box-shadow:0 1px 3px var(--legacy-color-006)}.btn-success:hover{filter:brightness(.92)}.btn-outline{background:var(--legacy-color-002);border:1px solid var(--color-border);color:var(--color-brand-primary)}.btn-outline:hover{background:var(--color-surface-subtle);color:var(--color-brand-deep);border-color:var(--border-strong)}.btn-ghost{color:var(--color-brand-primary);box-shadow:none;background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--color-surface-subtle)}.btn-destructive{background:var(--color-danger);color:var(--legacy-color-002);box-shadow:0 1px 3px var(--legacy-color-007)}.btn-destructive:hover{filter:brightness(.92)}.btn-sm{padding:.3rem var(--space-sm);border-radius:var(--radius-sm);font-size:.8rem}.btn-lg{border-radius:var(--radius-lg);padding:.7rem 1.4rem;font-size:1rem}.btn-spinner{width:1rem;height:1rem;animation:.6s linear infinite btn-spin}@keyframes btn-spin{to{transform:rotate(360deg)}}.badge{padding:var(--space-2xs) var(--space-sm);background:var(--color-surface-subtle);color:var(--text-secondary);letter-spacing:.02em;border-radius:9999px;align-items:center;gap:.35rem;font-size:.75rem;font-weight:600;line-height:1.35;display:inline-flex}.role-badge.super_admin{background:var(--color-brand-primary);color:var(--legacy-color-002);box-shadow:0 1px 2px var(--legacy-color-008);text-transform:none;letter-spacing:0}.role-badge.admin{background:var(--color-info);color:var(--legacy-color-002);text-transform:none;letter-spacing:0}.role-badge.office_admin{background:var(--color-brand-deep);color:var(--legacy-color-002);text-transform:none;letter-spacing:0}.role-badge.employee{background:var(--color-surface-subtle);color:var(--color-brand-primary);border:1px solid var(--color-border);text-transform:none;letter-spacing:0}.badge.danger{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--legacy-color-009)}.badge.warning{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--legacy-color-010)}.badge.success{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--legacy-color-011)}.badge.info{background:var(--color-info-bg);color:var(--color-info);border:1px solid var(--legacy-color-012)}.badge.neutral{background:var(--color-surface-subtle);color:var(--color-brand-deep);border:1px solid var(--color-border)}.badge.brand{background:var(--legacy-color-013);color:var(--color-brand-primary);border:1px solid var(--legacy-color-014)}.badge-dot{border-radius:9999px;flex-shrink:0;width:.4rem;height:.4rem}.badge-dot-pulse{animation:1.6s ease-in-out infinite badge-pulse}@keyframes badge-pulse{0%,to{opacity:1}50%{opacity:.35}}button{font-family:inherit}input,select,textarea{font-family:var(--font-sans);color:var(--text-main);background:var(--legacy-color-002);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;transition:border-color var(--transition), box-shadow var(--transition);box-shadow:inset 0 1px 2px var(--legacy-color-015);padding:.55rem .8rem;font-size:.88rem}input::placeholder,textarea::placeholder{color:var(--text-tertiary)}input:focus,select:focus,textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--focus-ring);background:var(--legacy-color-002);outline:none}input[type=date]:not(:focus){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}input[type=file]{padding:.45rem .6rem}label{color:var(--text-secondary);letter-spacing:.01em;font-size:.78rem;font-weight:600;display:block}.form-group{flex-direction:column;gap:.35rem;margin-bottom:1.1rem;display:flex}.form-group label{color:var(--text-secondary);font-size:.78rem;font-weight:600}.form-group input,.form-group textarea,.form-group select{background:var(--legacy-color-002);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-main);padding:.55rem .8rem;font-size:.88rem}.login-container{min-height:100vh;padding:var(--space-lg);background:var(--bg-primary);justify-content:center;align-items:center;display:flex}.login-box{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-xl);width:100%;max-width:480px;box-shadow:0 20px 45px var(--legacy-color-016)}.login-box h2{margin-top:var(--space-md);font-size:1.5rem}.login-subtitle{color:var(--text-muted);margin-bottom:var(--space-lg);font-size:.875rem}.login-form{gap:var(--space-md);flex-direction:column;display:flex}.quick-login-section{padding-top:var(--space-lg);border-top:1px solid var(--border);margin-top:2rem}.quick-login-section h3{color:var(--text-muted);font-size:.9rem}.quick-login-section p{color:var(--legacy-color-017);margin-bottom:var(--space-sm);font-size:.75rem}.quick-buttons{gap:var(--space-xs);flex-wrap:wrap;display:flex}.quick-btn{padding:.35rem var(--space-sm);border-radius:var(--radius-sm);cursor:pointer;color:var(--legacy-color-018);transition:background var(--transition), transform var(--transition-fast);border:none;font-size:.75rem;font-weight:600}.quick-btn:active{transform:translateY(1px)}.quick-btn.super-admin{background:var(--burgundy)}.quick-btn.super-admin:hover{background:var(--accent-primary-hover)}.quick-btn.admin{background:var(--accent-blue)}.quick-btn.admin:hover{background:var(--accent-blue-hover)}.quick-btn.office-admin{background:var(--charcoal)}.quick-btn.office-admin:hover{background:var(--legacy-color-019)}.quick-btn.employee{background:var(--dusty-blue);color:var(--charcoal)}.quick-btn.employee:hover{background:var(--legacy-color-020)}.login-brand{margin-bottom:var(--space-lg);justify-content:center;display:flex}body.has-app-sidebar{padding-left:var(--sidebar-width);padding-top:var(--header-height)}.brand-lockup-wrap{align-items:center;gap:var(--space-sm);flex-wrap:wrap;min-width:0;display:flex}.brand-lockup{background:var(--legacy-color-002);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-subtle);transition:border-color var(--dur-micro) var(--ease-out), box-shadow var(--dur-micro) var(--ease-out);align-items:center;gap:.65rem;padding:.4rem .85rem;text-decoration:none;display:inline-flex}.brand-lockup:hover{border-color:var(--border-strong);box-shadow:0 2px 8px var(--legacy-color-021)}.brand-lockup-logo{width:auto;display:block}.brand-lockup-logo-ck{height:21px}.brand-lockup-logo-az{height:23px}.brand-lockup-divider{background:var(--border-strong);width:1px;height:18px}.product-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--accent-primary);background:var(--burgundy-subtle);border-radius:var(--radius-sm);white-space:nowrap;border:1px solid var(--border-accent);padding:.2rem .55rem;font-size:.75rem;font-weight:700}.navbar{justify-content:space-between;align-items:center;gap:var(--space-md);padding:0 var(--space-lg);height:var(--header-height);background:linear-gradient(180deg, var(--legacy-color-022) 0%, var(--legacy-color-023) 100%);border-bottom:3.5px solid var(--legacy-color-024);box-shadow:0 4px 14px var(--legacy-color-025);color:var(--legacy-color-002);z-index:100;display:flex;position:fixed;top:0;left:0;right:0}.navbar .brand-lockup{background:var(--legacy-color-026);border:1px solid var(--legacy-color-027)}.navbar .btn-outline{background:var(--legacy-color-028);color:var(--legacy-color-002);border:1px solid var(--legacy-color-029)}.navbar .btn-outline:hover{background:var(--legacy-color-029);border-color:var(--legacy-color-030);color:var(--legacy-color-002)}.navbar .btn-primary{background:var(--legacy-color-002);color:var(--color-boa-navy);border-color:var(--legacy-color-002);font-weight:800}.navbar .btn-primary:hover{background:var(--color-surface-subtle);color:var(--color-boa-navy-deep)}.nav-user-info{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.user-name{color:var(--legacy-color-002);font-size:.84rem;font-weight:600}.app-sidebar-toggle{background:var(--legacy-color-031);border:1px solid var(--legacy-color-029);width:2.1rem;height:2.1rem;color:var(--legacy-color-002);cursor:pointer;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:none}.app-sidebar{top:var(--header-height);width:var(--sidebar-width);height:calc(100vh - var(--header-height));background:var(--color-surface,var(--legacy-color-002));border-right:1px solid var(--color-border,var(--legacy-color-032));z-index:90;transition:transform .2s cubic-bezier(.16,1,.3,1);position:fixed;bottom:0;left:0;overflow-y:auto}.app-sidebar-nav{gap:var(--space-2xs);padding:1.25rem var(--space-sm);flex-direction:column;display:flex}.app-sidebar-section-label{color:var(--legacy-color-033);text-transform:uppercase;letter-spacing:.08em;padding:.4rem var(--space-sm) var(--space-xs) var(--space-sm);font-size:.68rem;font-weight:800}.app-sidebar-link{border-radius:var(--radius-md,8px);color:var(--legacy-color-034);transition:color var(--dur-micro) var(--ease-out), background-color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out);align-items:center;gap:.65rem;padding:.65rem .85rem;font-size:.86rem;font-weight:600;line-height:1.25;text-decoration:none;display:flex}.app-sidebar-link:hover{background:var(--legacy-color-035);color:var(--color-boa-navy)}.app-sidebar-link-active,.app-sidebar-link-active:hover{background:var(--color-boa-navy);color:var(--legacy-color-002);box-shadow:0 2px 6px var(--legacy-color-036);font-weight:700}.app-sidebar-link-icon{flex-shrink:0;align-items:center;display:flex}.app-sidebar-link-label{white-space:normal}.app-sidebar-link-badge{background:var(--color-boa-red);min-width:1.3rem;color:var(--legacy-color-002);text-align:center;border-radius:9999px;margin-left:auto;padding:.05rem .4rem;font-size:.75rem;font-weight:800}.app-sidebar-scrim{display:none}@media (max-width:900px){body.has-app-sidebar{padding-left:0;padding-top:var(--header-height)}.app-sidebar-toggle{display:inline-flex}.app-sidebar{top:var(--header-height);height:calc(100vh - var(--header-height));box-shadow:4px 0 24px var(--legacy-color-014);z-index:110;transform:translate(-100%)}.app-sidebar-open{transform:translate(0)}.app-sidebar-scrim{top:var(--header-height);background:var(--legacy-color-037);z-index:105;display:block;position:fixed;bottom:0;left:0;right:0}}.role-badge{padding:var(--space-2xs) var(--space-sm);color:var(--legacy-color-018);background:var(--color-brand-deep);text-transform:none;letter-spacing:0;border-radius:9999px;font-size:.75rem;font-weight:700;line-height:1.4;display:inline-block}.office-tag{letter-spacing:.06em;text-transform:uppercase;padding:var(--space-3xs) var(--space-xs);border-radius:var(--radius-sm);background:var(--legacy-color-038);color:var(--legacy-color-039);border:1px solid var(--legacy-color-040);font-size:.75rem;font-weight:700;display:inline-block}header .office-tag,.app-header .office-tag{background:var(--legacy-color-041);color:var(--legacy-color-002);border:1px solid var(--legacy-color-042)}.error-banner{background:var(--legacy-color-043);border:1px solid var(--legacy-color-044);color:var(--legacy-color-045);padding:var(--space-sm) 1.25rem;border-radius:var(--radius-md);margin-bottom:var(--space-xs);box-shadow:var(--shadow-subtle);font-size:.85rem}.dashboard-container{max-width:none;padding:0 var(--space-lg);margin:1.75rem 0}.dashboard-body{max-width:none;margin:0;padding:0}.section-grid{gap:var(--space-lg);grid-template-columns:1fr;display:grid}@media (min-width:860px){.section-grid{grid-template-columns:1fr 1fr}}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-lg) 1.75rem;margin-bottom:var(--space-lg);box-shadow:var(--shadow-card);transition:box-shadow var(--transition), border-color var(--transition);position:relative}.card:hover{box-shadow:var(--shadow-card-hover);border-color:var(--border-strong)}.card h3{letter-spacing:-.01em;border-bottom:1px solid var(--border-subtle);color:var(--text-main);justify-content:space-between;align-items:center;margin-bottom:1.1rem;padding-bottom:.65rem;font-size:1.05rem;font-weight:700;display:flex}.card-header-row{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.card-header-row h2{letter-spacing:-.02em;font-size:1.25rem;font-weight:700}.metric-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-subtle);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);justify-content:space-between;align-items:flex-start;gap:var(--space-sm);padding:1.15rem 1.25rem;display:flex}.metric-card-clickable{cursor:pointer}.metric-card-clickable:hover{border-color:var(--border-strong);box-shadow:var(--shadow-card-hover)}.metric-card-body{flex:1;min-width:0}.metric-card-label{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;text-transform:none;letter-spacing:0;font-size:.75rem;font-weight:600;overflow:hidden}.metric-card-value-row{align-items:baseline;gap:var(--space-xs);margin-top:.35rem;display:flex}.metric-card-value{letter-spacing:-.01em;color:var(--color-brand-deep);font-size:1.6rem;font-weight:700}.metric-card-trend{border-radius:9999px;padding:.1rem .4rem;font-size:.75rem;font-weight:700}.metric-card-trend-up{background:var(--color-success-bg);color:var(--color-success)}.metric-card-trend-down{background:var(--color-danger-bg);color:var(--color-danger)}.metric-card-subtext{margin-top:var(--space-2xs);color:var(--text-muted);font-size:.76rem}.metric-card-icon{border-radius:var(--radius-lg);border:1px solid;flex-shrink:0;justify-content:center;align-items:center;width:2.6rem;height:2.6rem;display:flex}.metric-card-icon-brand{background:var(--legacy-color-046);color:var(--color-brand-primary);border-color:var(--legacy-color-047)}.metric-card-icon-success{background:var(--color-success-bg);color:var(--color-success);border-color:var(--legacy-color-048)}.metric-card-icon-warning{background:var(--color-warning-bg);color:var(--color-warning);border-color:var(--legacy-color-049)}.metric-card-icon-danger{background:var(--color-danger-bg);color:var(--color-danger);border-color:var(--legacy-color-050)}.metric-card-icon-info{background:var(--color-info-bg);color:var(--color-info);border-color:var(--legacy-color-051)}.card-subtitle{color:var(--text-muted);margin-top:var(--space-2xs);font-size:.84rem}.stat-value{letter-spacing:-.03em;color:var(--accent-primary);font-size:2.25rem;font-weight:800;line-height:1.15}.stat-label{color:var(--text-muted);text-transform:none;letter-spacing:0;margin-top:.35rem;font-size:.75rem;font-weight:700}.meta-grid{grid-template-columns:1fr 1fr;gap:.85rem;margin:1.25rem 0;font-size:.85rem;display:grid}.meta-grid span{color:var(--text-muted);text-transform:none;letter-spacing:0;font-size:.78rem}.meta-grid strong{color:var(--text-main);margin-top:.15rem;font-weight:600;display:block}.action-buttons{flex-wrap:wrap;gap:.65rem;margin-top:1.35rem;display:flex}.button-group{flex-wrap:wrap;gap:.45rem;display:flex}.empty-state{text-align:center;padding:var(--space-xl) var(--space-lg);color:var(--text-muted)}.empty-state p{margin-bottom:var(--space-md);font-size:.9rem}.stat-card{background:var(--panel-tint);border:1px solid var(--panel-border);padding:var(--space-md) 1.2rem;border-radius:var(--radius-lg);transition:transform var(--transition-fast), background var(--transition-fast)}.stat-card:hover{background:var(--legacy-color-002);border-color:var(--border-strong)}.stat-card span{color:var(--text-muted);text-transform:none;letter-spacing:0;margin-bottom:.35rem;font-size:.75rem;font-weight:700;display:block}.stat-card div{letter-spacing:-.02em;color:var(--text-main);font-size:1.45rem;font-weight:800}.text-muted{color:var(--text-muted)}.subtext{color:var(--text-muted);margin-top:.35rem;font-size:.76rem;line-height:1.45}.restriction-banner{background:var(--legacy-color-052);border:1px solid var(--legacy-color-044);border-left:4px solid var(--accent-danger);border-radius:var(--radius-lg);padding:1.15rem var(--space-lg);margin:var(--space-lg) 0 0;gap:var(--space-md);max-width:none;box-shadow:var(--shadow-subtle);align-items:flex-start;display:flex}.banner-icon{flex-shrink:0;font-size:1.5rem}.banner-content h3{color:var(--accent-danger);margin-bottom:var(--space-2xs);font-size:.98rem;font-weight:700}.banner-content p{color:var(--text-secondary);font-size:.86rem}.status-toast{max-width:none;margin:var(--space-md) 0 0;border-radius:var(--radius-md);box-shadow:var(--shadow-subtle);padding:.8rem 1.25rem;font-size:.86rem;font-weight:600;animation:.2s cubic-bezier(.16,1,.3,1) slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.status-toast.success{background:var(--legacy-color-053);color:var(--legacy-color-054);border:1px solid var(--legacy-color-055)}.status-toast.error{background:var(--legacy-color-043);color:var(--legacy-color-045);border:1px solid var(--legacy-color-044)}.warning-banner{background:var(--legacy-color-056);border:1px solid var(--legacy-color-057);border-left:4px solid var(--accent-warning);color:var(--legacy-color-058);border-radius:var(--radius-md);margin-bottom:var(--space-md);padding:.85rem 1.1rem;font-size:.85rem}.data-table{border-collapse:separate;border-spacing:0;width:100%;margin-top:var(--space-xs);font-size:.875rem}.data-table th{padding:var(--space-sm) 1.15rem;text-align:left;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);background:var(--color-surface-subtle);text-transform:none;letter-spacing:0;font-size:.75rem;font-weight:700}.data-table th:first-child{border-top-left-radius:var(--radius-sm);text-transform:none;letter-spacing:0}.data-table th:last-child{border-top-right-radius:var(--radius-sm);text-transform:none;letter-spacing:0}.data-table td{text-align:left;border-bottom:1px solid var(--border-subtle);color:var(--text-main);vertical-align:middle;padding:.85rem 1.15rem}.data-table tbody tr{transition:background var(--transition-fast)}.data-table tbody tr:hover{background:var(--color-surface-soft)}.data-table tbody tr:last-child td{border-bottom:none}.data-table code{background:var(--color-surface-subtle);padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-xs);font-size:.75rem;font-family:var(--font-mono);border:1px solid var(--color-border);color:var(--text-main)}.modal-overlay,.modal-backdrop{background:var(--scrim);-webkit-backdrop-filter:blur(8px);z-index:1000;justify-content:center;align-items:center;padding:1.25rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--legacy-color-002);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:520px;box-shadow:var(--shadow-modal);padding:2rem 2.25rem;animation:.24s cubic-bezier(.16,1,.3,1) modalPop;position:relative}@keyframes modalPop{0%{opacity:0;transform:scale(.96)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-large{max-width:840px}.modal-content h3{letter-spacing:-.01em;margin-bottom:.35rem;font-size:1.15rem;font-weight:700}.modal-subtitle{color:var(--text-muted);margin-bottom:1.25rem;font-size:.84rem}.modal-actions{padding-top:var(--space-md);border-top:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:flex-end;gap:.65rem;margin-top:1.75rem;display:flex}.grid-form{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.full-width{grid-column:span 2}.tabs{background:var(--panel-tint);border-radius:var(--radius-lg);border:1px solid var(--border);margin-bottom:var(--space-lg);flex-wrap:wrap;gap:.4rem;padding:.35rem;display:flex}.tab-btn{padding:var(--space-xs) 1.15rem;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:background-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out);white-space:nowrap;align-items:center;gap:var(--space-xs);background:0 0;border:none;font-size:.84rem;font-weight:600;display:inline-flex}.tab-btn:hover{color:var(--text-main);background:var(--legacy-color-059)}.tab-btn.active{background:var(--legacy-color-002);color:var(--accent-primary);box-shadow:0 1px 3px var(--legacy-color-060);font-weight:700}.tab-badge{padding:var(--space-3xs) var(--space-xs);background:var(--panel-tint-strong);color:var(--text-muted);border-radius:9999px;font-size:.75rem;font-weight:700}.tab-btn.active .tab-badge{background:var(--burgundy-subtle);color:var(--accent-primary)}.filter-bar{gap:var(--space-md);margin-bottom:var(--space-lg);background:var(--legacy-color-002);border:1px solid var(--border);padding:var(--space-md) 1.25rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-subtle);flex-wrap:wrap;align-items:flex-end;display:flex}.filter-bar label{color:var(--text-muted);text-transform:none;letter-spacing:0;margin-bottom:.35rem;font-size:.78rem;font-weight:600}.admin-section{margin-bottom:2rem}.admin-header{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.admin-header h2{font-size:1.25rem}.timeline-list{gap:var(--space-md);padding-left:var(--space-lg);flex-direction:column;display:flex;position:relative}.json-dump{background:var(--code-bg);max-width:300px;max-height:100px;color:var(--text-main);padding:var(--space-2xs);border-radius:var(--radius-sm);font-size:.75rem;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;overflow:auto}.dashboard-loading{justify-content:center;align-items:center;gap:var(--space-md);min-height:80vh;color:var(--text-muted);flex-direction:column;display:flex}.spinner{border:4px solid var(--border);border-top-color:var(--accent-primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-lg)}::-webkit-scrollbar-thumb:hover{background:var(--legacy-color-061)}:focus-visible,a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.modal-header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);border-bottom:1px solid var(--border);padding-bottom:var(--space-sm);margin-bottom:1.25rem;display:flex}.modal-title{color:var(--text-main);margin:0;font-size:1.1rem;font-weight:700}.modal-content .modal-header+.modal-subtitle{margin-top:calc(-1 * var(--space-xs));margin-bottom:var(--space-md)}.modal-close-btn{background:var(--panel-tint);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;width:2rem;height:2rem;color:var(--text-muted);transition:background var(--transition), color var(--transition);flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:.9rem;display:flex}.modal-close-btn:hover{background:var(--legacy-color-062);color:var(--accent-danger);border-color:var(--accent-danger)}.master-nav-group{padding:var(--space-2xs) var(--space-xs);background:var(--legacy-color-063);border:1px solid var(--legacy-color-064);border-radius:var(--radius-md);align-items:center;gap:.35rem;display:flex}.master-nav-label{color:var(--burgundy);padding-right:var(--space-2xs);white-space:nowrap;text-transform:none;letter-spacing:0;font-size:.75rem;font-weight:800}.master-nav-btn{border-color:var(--legacy-color-065)!important;color:var(--burgundy)!important}.master-nav-btn:hover{background:var(--legacy-color-066)!important}.admin-page-container{max-width:none;padding:0 var(--space-lg);margin:2rem 0}.admin-page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);flex-wrap:wrap;margin-bottom:1.75rem;display:flex}.admin-page-header h1{color:var(--text-main);font-size:1.5rem}.admin-page-header p{color:var(--text-muted);margin-top:var(--space-2xs);font-size:.875rem}.metrics-bar{gap:var(--space-md);margin-bottom:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.metric-chip{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md)}.metric-chip .val{color:var(--accent-primary);font-size:1.6rem;font-weight:800}.metric-chip .lbl{color:var(--text-muted);text-transform:none;letter-spacing:0;margin-top:.15rem;font-size:.75rem}.office-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem var(--space-lg);margin-bottom:var(--space-md)}.office-card-header{margin-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.office-card-header h3{font-size:1rem}.office-card-grid{gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));font-size:.85rem;display:grid}.adj-table-badge{padding:var(--space-3xs) var(--space-xs);border-radius:4px;font-size:.75rem;font-weight:700}.adj-plus{background:var(--legacy-color-067);color:var(--legacy-color-068)}.adj-minus{background:var(--legacy-color-062);color:var(--legacy-color-069)}.modal-overlay{overflow-y:auto}.modal-content{max-height:calc(100vh - 2rem);overflow-y:auto}.modal-close-btn:disabled{opacity:.45;cursor:not-allowed}.btn-danger{background:var(--accent-danger);color:var(--legacy-color-018)}.btn-danger:hover{filter:brightness(.92)}.confirm-message{margin:var(--space-2xs) 0 var(--space-xs);font-size:1rem;line-height:1.5}.dialog-error{margin-top:var(--space-sm);border:1px solid var(--accent-danger);border-radius:var(--radius-md);background:var(--legacy-color-062);color:var(--legacy-color-070);padding:.65rem .85rem;font-size:.9rem}.audit-figures{gap:.15rem var(--space-sm);grid-template-columns:max-content 1fr;margin:0;font-size:.8rem;display:grid}.audit-figures dt{color:var(--text-muted)}.audit-figures dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.btn:disabled[aria-busy=true]{cursor:progress}.receipt-context-panel{gap:var(--space-xs) 1.25rem;margin-bottom:var(--space-md);background:var(--panel-tint);border:1px solid var(--panel-border);border-radius:var(--radius-md);color:var(--text-muted);flex-wrap:wrap;align-items:center;padding:.65rem .9rem;font-size:.82rem;display:flex}.receipt-context-panel .ctx-label{color:var(--text-muted);margin-right:var(--space-2xs);text-transform:none;letter-spacing:0;font-size:.75rem;font-weight:600}.field-signal{letter-spacing:.03em;vertical-align:middle;border-radius:9999px;margin-left:.4rem;padding:.1rem .45rem;font-size:.75rem;font-weight:600;line-height:1.6;display:inline-block}.field-signal.signal-confident{background:var(--legacy-color-071);color:var(--legacy-color-072);border:1px solid var(--legacy-color-073)}.field-signal.signal-review{background:var(--legacy-color-074);color:var(--legacy-color-075);border:1px solid var(--legacy-color-076)}.field-signal.signal-missing{background:var(--legacy-color-077);color:var(--legacy-color-078);border:1px solid var(--legacy-color-079)}.ai-original{color:var(--text-muted);margin-top:.15rem;margin-bottom:.35rem;padding-left:.1rem;font-size:.75rem;font-style:italic}.receipt-analyzing{text-align:center;padding:2rem var(--space-md);color:var(--text-muted)}.receipt-retake-panel{text-align:center;padding:var(--space-md) 0}.receipt-retake-panel .warning-banner{text-align:left}.line-items-table{border:1px solid var(--border);border-radius:var(--radius-md);max-height:200px;overflow-y:auto}.status-chip{text-transform:none;letter-spacing:0;border-radius:9999px;padding:.15rem .55rem;font-size:.75rem;font-weight:700;display:inline-block}.status-chip.uploaded{background:var(--legacy-color-080);color:var(--legacy-color-081);text-transform:none;letter-spacing:0}.status-chip.processing{background:var(--legacy-color-082);color:var(--legacy-color-083);text-transform:none;letter-spacing:0;animation:1.4s ease-in-out infinite pulse}.status-chip.extracted{background:var(--legacy-color-071);color:var(--legacy-color-072);text-transform:none;letter-spacing:0}.status-chip.review_required{background:var(--legacy-color-074);color:var(--legacy-color-075);text-transform:none;letter-spacing:0}.status-chip.confirmed{background:var(--legacy-color-084);color:var(--legacy-color-085);text-transform:none;letter-spacing:0}.status-chip.failed{background:var(--legacy-color-077);color:var(--legacy-color-078);text-transform:none;letter-spacing:0}.status-chip.retake_required{background:var(--legacy-color-086);color:var(--legacy-color-087);text-transform:none;letter-spacing:0}@keyframes pulse{0%,to{opacity:1}50%{opacity:.55}}.surface-subtle{background:var(--panel-tint)}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--color-danger,var(--legacy-color-088))}.login-form .form-group{margin-bottom:0}.login-box .error-banner{margin-bottom:var(--space-md)}@media (pointer:coarse){.btn,.btn-sm,button.btn,.app-sidebar-link,select,textarea,input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]){min-height:44px}}@media (max-width:640px){.brand-lockup-wrap .product-tag,.nav-user-info .office-clock-header{display:none!important}.nav-user-info{gap:.4rem}}.skip-link{z-index:10000;padding:.6rem var(--space-md);background:var(--color-graphite);color:var(--legacy-color-018);border-radius:8px;font-weight:700;text-decoration:none;position:absolute;top:-4rem;left:.75rem}.skip-link:focus{top:.75rem}main:focus{outline:none}:root{--header-height:68px;--sidebar-width:236px}body{font-family:var(--font-body);background:var(--color-paper-2);color:var(--color-ink)}body.has-app-sidebar{padding-top:var(--header-height)}.navbar{height:var(--header-height);gap:var(--space-md);background:var(--color-paper);border-bottom:1px solid var(--color-rule);box-shadow:0 1px 3px var(--legacy-color-089);color:var(--color-ink);padding-inline:1.25rem}.navbar .brand-lockup,.brand-lockup{padding:var(--space-2xs);box-shadow:none;background:0 0;border:0;border-radius:0}.navbar .brand-lockup:hover,.brand-lockup:hover{box-shadow:none;border-color:#0000}.brand-lockup-divider{background:var(--color-rule-2)}.brand-lockup-wrap{gap:.7rem}.product-tag{color:var(--color-ink-2);letter-spacing:0;text-transform:none;background:0 0;border:0;padding:.2rem .35rem;font-size:.78rem;font-weight:500}.nav-user-info{gap:var(--space-xs)}.nav-identity{min-height:38px;padding:var(--space-2xs) .55rem;border:1px solid var(--color-rule);border-radius:var(--radius-input);background:var(--color-paper);align-items:center;gap:.45rem;font-size:.8rem;display:inline-flex}.nav-identity-name{color:var(--color-ink);font-weight:600}.nav-role{border:1px solid var(--color-rule);color:var(--color-ink-2);white-space:nowrap;border-radius:4px;padding:.15rem .4rem;font-size:.72rem;font-weight:500}.nav-role-super_admin{color:var(--color-accent-deep);background:var(--color-accent-wash)}.nav-role-admin{color:var(--color-accent-deep);background:var(--color-paper-2)}.office-tag{letter-spacing:0;text-transform:none;border-radius:4px}.navbar .office-tag{color:var(--color-ink-2);background:var(--color-paper-2);border-color:var(--color-rule)}.btn-receipt{gap:.35rem}.navbar .btn-receipt{color:var(--color-ink-2)}.nav-user-info .btn-sm{min-height:38px}.app-sidebar{top:var(--header-height);width:var(--sidebar-width);height:calc(100dvh - var(--header-height));background:var(--color-paper);border-right:1px solid var(--color-rule);padding:var(--space-md) .65rem;transition:transform var(--dur-short) var(--ease-out)}.app-sidebar-nav{padding:var(--space-2xs) .15rem;gap:.2rem}.app-sidebar-section-label{color:var(--color-muted);letter-spacing:0;text-transform:none;padding:.65rem .7rem .55rem;font-size:.74rem;font-weight:500}.app-sidebar-link{border-radius:var(--radius-input);min-height:42px;color:var(--color-ink-2);transition:color var(--dur-micro) var(--ease-out), background var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out);border:1px solid #0000;gap:.7rem;padding:.55rem .7rem;font-weight:500}.app-sidebar-link:hover{color:var(--color-ink);background:var(--color-paper-2)}.app-sidebar-link-active,.app-sidebar-link-active:hover{color:var(--color-accent-deep);background:var(--color-accent-wash);border-color:color-mix(in oklab, var(--color-accent) 15%, transparent);box-shadow:none;font-weight:600}.app-sidebar-link-icon{color:inherit}.app-sidebar-link-badge{background:var(--color-accent);border-radius:4px;font-weight:600}.app-sidebar-toggle{border-radius:var(--radius-input);border:1px solid var(--color-rule);background:var(--color-paper);width:2.5rem;height:2.5rem;color:var(--color-ink)}.dashboard-container{max-width:1480px;margin:var(--space-lg) auto;padding-inline:1.75rem}.dashboard-body{max-width:1480px;margin-inline:auto}.card{border:1px solid var(--color-rule);border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:border-color var(--dur-micro) var(--ease-out), box-shadow var(--dur-micro) var(--ease-out)}.card:hover{border-color:var(--color-rule-2);box-shadow:var(--shadow-card-hover)}.card h3{border-color:var(--color-rule)}.btn{border-radius:var(--radius-input);min-height:40px;font-family:var(--font-display);transition:transform var(--dur-micro) var(--ease-out), background-color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out), box-shadow var(--dur-micro) var(--ease-out);font-weight:500}.btn-primary,.btn-accent{background:var(--color-accent);border-color:var(--color-accent-edge);color:var(--color-accent-ink);box-shadow:var(--shadow-key-accent)}.btn-primary:hover,.btn-accent:hover{background:var(--color-accent-deep)}.btn-secondary,.btn-outline{background:var(--color-key-face);border-color:var(--color-key-edge);color:var(--color-ink);box-shadow:var(--shadow-key)}.btn-secondary:hover,.btn-outline:hover{background:var(--color-paper-2)}.btn-ghost{color:var(--color-ink-2);box-shadow:none}.btn-success{background:var(--color-success);box-shadow:none}.btn-destructive,.btn-danger{background:var(--color-danger);box-shadow:none}.btn:active{transform:translateY(1px)}.btn:disabled{background:var(--color-paper-3);color:var(--color-muted);border-color:var(--color-rule);cursor:not-allowed;box-shadow:none;opacity:1}.form-group input,.form-group textarea,.form-group select,input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),select,textarea{border-radius:var(--radius-input);border-color:var(--color-rule-2);background:var(--color-paper);color:var(--color-ink)}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.login-container{min-height:100dvh;padding:clamp(var(--space-md), 4vw, var(--space-xl));background:var(--color-paper-2)}.login-box{max-width:440px;padding:clamp(var(--space-lg), 4vw, var(--space-xl));border:1px solid var(--color-rule);border-radius:var(--radius-card);box-shadow:0 12px 36px var(--legacy-color-090)}.login-box h2{font-family:var(--font-display);letter-spacing:var(--tracking-display)}.login-subtitle{line-height:1.5}.data-table,table{font-variant-numeric:tabular-nums}th{color:var(--color-muted);font-family:var(--font-display);text-transform:none;letter-spacing:0;font-weight:500}td,th{border-color:var(--color-rule)}.modal-content{border-color:var(--color-rule);border-radius:var(--radius-card)}.badge,.role-badge,.status-chip,.field-signal,.role-badge,.metric-card-label,.stat-label,.meta-grid span,.stat-card span,.data-table th,.filter-bar label,.master-nav-label,.metric-chip .lbl,.receipt-context-panel .ctx-label,.status-chip{text-transform:none;letter-spacing:0}.skip-link{background:var(--color-graphite)}@media (max-width:900px){.app-sidebar{padding:var(--space-md) .65rem}.app-sidebar-toggle{display:inline-flex}.app-sidebar-scrim{top:var(--header-height);background:var(--scrim)}}@media (max-width:640px){body.has-app-sidebar{padding-left:0}.navbar{padding-inline:var(--space-sm);gap:var(--space-xs)}.brand-lockup-wrap{gap:.3rem}.brand-lockup-logo-ck{height:18px}.brand-lockup-logo-az{height:19px}.nav-user-info{gap:.3rem}.nav-identity{background:0 0;border-color:#0000;padding:.2rem}.nav-identity-name,.nav-role,.nav-action-label,.office-clock-header{display:none}.office-tag{font-size:.7rem}.dashboard-container{margin:var(--space-md) auto;padding-inline:var(--space-md)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}}.navbar .btn-outline{color:var(--color-ink);background:var(--color-key-face);border-color:var(--color-key-edge);box-shadow:var(--shadow-key)}.navbar .btn-outline:hover{color:var(--color-ink);background:var(--color-paper-2);border-color:var(--color-rule-2)}
