@import url(https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=Geist+Mono:wght@400;500;600&display=swap);:root{--color-amber-50:#fffbeb;--color-amber-100:#fef3c7;--color-amber-200:#fde68a;--color-amber-300:#fcd34d;--color-amber-400:#fbbf24;--color-amber-500:#f59e0b;--color-amber-600:#d97706;--color-amber-700:#b45309;--color-amber-800:#92400e;--color-amber-900:#78350f;--color-slate-50:#f8fafc;--color-slate-100:#f1f5f9;--color-slate-200:#e2e8f0;--color-slate-300:#cbd5e1;--color-slate-400:#94a3b8;--color-slate-500:#64748b;--color-slate-600:#475569;--color-slate-700:#334155;--color-slate-800:#1e293b;--color-slate-900:#0f172a;--color-slate-950:#0a0f1a;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-red-50:#fef2f2;--color-red-100:#fee2e2;--color-red-200:#fecaca;--color-red-300:#fca5a5;--color-red-400:#f87171;--color-red-500:#ef4444;--color-red-600:#dc2626;--color-red-700:#b91c1c;--color-red-800:#991b1b;--color-green-50:#f0fdf4;--color-green-100:#dcfce7;--color-green-200:#bbf7d0;--color-green-300:#86efac;--color-green-400:#4ade80;--color-green-500:#22c55e;--color-green-600:#16a34a;--color-green-700:#15803d;--color-green-800:#166534;--color-blue-50:#eff6ff;--color-blue-100:#dbeafe;--color-blue-200:#bfdbfe;--color-blue-300:#93c5fd;--color-blue-400:#60a5fa;--color-blue-500:#3b82f6;--color-blue-600:#2563eb;--color-blue-700:#1d4ed8;--color-blue-800:#1e40af;--color-blue-900:#1e3a8a;--color-paper-0:#fff;--color-paper-50:#fafaf7;--color-paper-100:#f5f4ef;--color-paper-150:#efeee8;--color-paper-200:#eeede7;--color-paper-250:#ecebe3;--color-paper-300:#e3e1da;--color-paper-350:#e2e0d8;--color-paper-400:#cfccc3;--color-ink-400:#8a8d93;--color-ink-500:#5f636b;--color-ink-700:#3b3e45;--color-ink-900:#15171c;--color-forest:#187044;--color-ember:#c2410c;--color-cobalt:#1e5bd9;--color-night-950:#111214;--color-night-900:#17181b;--color-night-850:#1c1e22;--color-night-800:#222429;--color-night-700:#2c2f35;--color-night-600:#3a3d44;--color-mist-400:#9a9da3;--color-mist-300:#b8bac0;--color-mist-200:#d6d5cf;--color-mist-100:#f2f1ec;--color-white:#fff;--color-black:#000;--space-0:0px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:16px;--text-xl:18px;--text-2xl:20px;--text-3xl:22px;--text-4xl:28px;--text-5xl:36px;--text-6xl:48px;--leading-none:1;--leading-tight:1.2;--leading-snug:1.35;--leading-normal:1.5;--leading-relaxed:1.65;--leading-loose:2;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--font-black:900;--font-sans:"Geist","Inter",system-ui,-apple-system,sans-serif;--font-display:"Geist","Inter",system-ui,-apple-system,sans-serif;--font-mono:"Geist Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;--z-base:0;--z-above:10;--z-dropdown:30;--z-sticky:40;--z-topbar:50;--z-sidebar:100;--z-overlay:200;--z-modal:1000;--z-toast:9999;--brand:var(--color-ink-900);--brand-dark:#000;--brand-darker:#000;--brand-contrast:var(--color-paper-0);--on-accent:#fff;--brand-soft:var(--color-paper-200);--brand-border:var(--color-paper-400);--focus-ring:var(--color-cobalt);--bg:var(--color-paper-100);--bg-secondary:var(--color-paper-200);--surface:var(--color-paper-0);--card:var(--color-paper-0);--surface-2:var(--color-paper-50);--fill-muted:var(--color-paper-200);--border:var(--color-paper-300);--border-light:var(--color-paper-250);--border-strong:var(--color-paper-400);--text:var(--color-ink-900);--text-2:var(--color-ink-700);--text-3:var(--color-ink-500);--text-4:var(--color-ink-500);--text-muted:var(--color-ink-400);--success:var(--color-forest);--success-bg:#eef5f0;--success-border:#cfe3d6;--danger:var(--color-ember);--danger-bg:#fbf1ec;--danger-border:#f0d3c4;--warning:var(--color-ember);--warning-bg:#fbf1ec;--warning-border:#f0d3c4;--info:var(--color-cobalt);--info-bg:#eef2fb;--info-border:#d3dcf3;--sidebar-width:240px;--sidebar-bg:var(--color-paper-150);--sidebar-text:var(--color-ink-700);--sidebar-text-muted:var(--color-ink-500);--sidebar-text-active:var(--color-ink-900);--sidebar-active-bg:var(--color-paper-350);--sidebar-hover-bg:var(--color-paper-200);--shadow-sm:none;--shadow:0 8px 24px #15171c1a;--shadow-lg:0 16px 48px #15171c24;--radius-sm:8px;--radius:12px;--radius-md:12px;--radius-lg:12px;--radius-xl:16px;--transition:all 0.15s ease;color-scheme:light}[data-theme=dark]{--brand:var(--color-mist-100);--brand-dark:#fff;--brand-darker:#fff;--brand-contrast:var(--color-ink-900);--on-accent:#fff;--brand-soft:var(--color-night-700);--brand-border:var(--color-night-600);--focus-ring:#8ab4f8;--bg:var(--color-night-950);--bg-secondary:var(--color-night-800);--surface:var(--color-night-850);--card:var(--color-night-850);--surface-2:var(--color-night-800);--fill-muted:var(--color-night-700);--border:var(--color-night-600);--border-light:var(--color-night-700);--border-strong:#4a4e56;--text:var(--color-mist-100);--text-2:var(--color-mist-200);--text-3:var(--color-mist-300);--text-4:var(--color-mist-300);--text-muted:var(--color-mist-400);--success:#7fd3a1;--success-bg:#7fd3a11a;--success-border:#7fd3a147;--danger:#f4a27a;--danger-bg:#f4a27a1a;--danger-border:#f4a27a4d;--warning:#f4a27a;--warning-bg:#f4a27a1a;--warning-border:#f4a27a4d;--info:#8ab4f8;--info-bg:#8ab4f81a;--info-border:#8ab4f84d;--sidebar-bg:var(--color-night-900);--sidebar-text:var(--color-mist-200);--sidebar-text-muted:var(--color-mist-400);--sidebar-text-active:var(--color-mist-100);--sidebar-active-bg:var(--color-night-700);--sidebar-hover-bg:var(--color-night-800);--shadow-sm:none;--shadow:0 8px 24px #0006;--shadow-lg:0 16px 48px #00000080;color-scheme:dark}*,:after,:before{box-sizing:border-box;margin:0;padding:0}#root,body,html{max-width:100vw;overflow-x:hidden;width:100%}html{-webkit-font-smoothing:antialiased;font-size:16px}body{background:var(--color-paper-100);background:var(--bg);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);transition:background .2s,color .2s}body,h1,h2,h3,h4,h5,h6{color:var(--color-ink-900);color:var(--text)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--font-semibold);line-height:var(--leading-tight)}button{cursor:pointer;font-family:inherit}button,input,select,textarea{accent-color:var(--color-ink-900);accent-color:var(--brand)}:is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--color-cobalt);outline:3px solid var(--focus-ring);outline-offset:3px}input,select,textarea{font-family:inherit}a{color:inherit;text-decoration:none}img{max-width:100%}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:var(--color-paper-300);background:var(--border);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--color-ink-500);background:var(--text-4)}.app-layout{display:flex;min-height:100vh}.app-sidebar{background:var(--color-paper-150);background:var(--sidebar-bg);bottom:0;display:flex;flex-direction:column;left:0;overflow:hidden;position:fixed;top:0;transition:width .2s ease,transform .2s ease;width:240px;width:var(--sidebar-width);z-index:var(--z-sidebar)}.app-sidebar.collapsed{width:64px}.app-sidebar.collapsed .sidebar-item span:last-child,.app-sidebar.collapsed .sidebar-logo-sub,.app-sidebar.collapsed .sidebar-logo-title,.app-sidebar.collapsed .sidebar-section-label,.app-sidebar.collapsed .sidebar-user-name,.app-sidebar.collapsed .sidebar-user-role{display:none}.app-sidebar.collapsed .sidebar-item{justify-content:center;padding:9px}.app-sidebar.collapsed .sidebar-user{justify-content:center}.app-sidebar.collapsed .sidebar-avatar{margin:0}.app-main{display:flex;flex:1 1;flex-direction:column;margin-left:240px;margin-left:var(--sidebar-width);min-height:100vh;min-width:0;overflow-x:hidden;transition:margin-left .2s ease}.app-main.collapsed{margin-left:64px}.sidebar-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;display:none;inset:0;position:fixed;z-index:calc(var(--z-sidebar) - 1)}.sidebar-collapse-btn{align-items:center;background:var(--color-paper-0);background:var(--surface);border:1px solid var(--border-strong);border-radius:50%;color:var(--color-ink-700);color:var(--text-2);cursor:pointer;display:flex;font-size:12px;height:24px;justify-content:center;position:absolute;right:-12px;top:20px;transition:all .15s ease;transition:var(--transition);width:24px;z-index:101}.sidebar-collapse-btn:hover{transform:scale(1.1)}.app-topbar{align-items:center;background:var(--color-paper-0);background:var(--surface);border-bottom:1px solid var(--border);display:flex;gap:var(--space-4);height:60px;padding:0 var(--space-6);position:sticky;top:0;z-index:var(--z-topbar)}.app-content{box-sizing:border-box;flex:1 1;max-width:1100px;min-width:0;padding:28px 32px;width:100%}.sidebar-logo{border-bottom:1px solid var(--border);padding:20px 16px}.sidebar-logo-title{color:var(--color-ink-900);color:var(--text);font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--font-semibold);margin-top:var(--space-1)}.sidebar-logo-sub{color:var(--color-ink-700);color:var(--sidebar-text);font-size:12px;font-weight:500;margin-top:2px}.sidebar-nav{flex:1 1;overflow-y:auto;padding:12px 8px}.sidebar-section-label{color:var(--color-ink-500);color:var(--sidebar-text-muted);font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.06em;margin-top:8px;padding:8px 8px 4px;text-transform:uppercase}.sidebar-item{align-items:center;background:none;border:none;border-radius:8px;border-radius:var(--radius-sm);color:var(--color-ink-700);color:var(--sidebar-text);display:flex;font-size:14px;font-weight:500;gap:10px;margin-bottom:2px;min-height:40px;padding:9px 10px;text-align:left;transition:all .15s ease;transition:var(--transition);width:100%}.sidebar-item:hover{background:var(--color-paper-200);background:var(--sidebar-hover-bg)}.sidebar-item.active,.sidebar-item:hover{color:var(--color-ink-900);color:var(--sidebar-text-active)}.sidebar-item.active{background:var(--color-paper-350);background:var(--sidebar-active-bg);font-weight:600}.sidebar-item-icon{align-items:center;display:flex;flex-shrink:0}.sidebar-bottom{border-top:1px solid var(--border);padding:12px 8px}.sidebar-user{border-radius:8px;border-radius:var(--radius-sm);gap:10px;padding:10px}.sidebar-avatar,.sidebar-user{align-items:center;display:flex}.sidebar-avatar{background:var(--color-ink-900);background:var(--brand);border-radius:50%;color:var(--color-paper-0);color:var(--brand-contrast);flex-shrink:0;font-size:13px;font-weight:800;height:32px;justify-content:center;width:32px}.sidebar-user-name{color:var(--color-ink-900);color:var(--sidebar-text-active);font-size:13px;font-weight:600}.sidebar-user-role{color:var(--color-ink-500);color:var(--sidebar-text-muted);font-size:12px;text-transform:capitalize}.card{background:var(--color-paper-0);background:var(--surface);border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);padding:24px}.card-title{color:var(--color-ink-900);color:var(--text);font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--font-semibold);margin-bottom:var(--space-1)}.card-sub{color:var(--color-ink-500);color:var(--text-3);font-size:13px;line-height:1.5;margin-bottom:20px}.field{margin-bottom:16px}.label{color:var(--color-ink-700);color:var(--text-2);display:block;font-size:13px;font-weight:600;margin-bottom:6px}.input{background:var(--color-paper-0);background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;border-radius:var(--radius-sm);color:var(--color-ink-900);color:var(--text);font-size:14px;outline:none;padding:10px 14px;transition:all .15s ease;transition:var(--transition);width:100%}.input:focus{border-color:var(--text-3);box-shadow:0 0 0 3px var(--color-paper-200);box-shadow:0 0 0 3px var(--fill-muted)}.input::placeholder{color:var(--color-ink-400);color:var(--text-muted)}.input-error{border-color:var(--danger)!important;box-shadow:0 0 0 3px #dc26261a!important}.field-hint-error{color:var(--color-ember);color:var(--danger);font-size:12px;font-weight:500;margin-top:4px}.form-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.btn{align-items:center;border:1px solid #0000;border-radius:8px;border-radius:var(--radius-sm);display:inline-flex;font-family:inherit;font-size:14px;font-weight:600;gap:8px;justify-content:center;line-height:1.35;min-height:44px;padding:10px 18px;transition:all .15s ease;transition:var(--transition);white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5}.btn:not(:disabled):hover{filter:brightness(.96)}.btn:not(:disabled):active{filter:brightness(.92)}.btn-primary{background:var(--color-ink-900);background:var(--brand);color:var(--color-paper-0);color:var(--brand-contrast)}.btn-secondary{border:1px solid var(--border-strong);color:var(--color-ink-900);color:var(--text)}.btn-danger,.btn-secondary{background:var(--color-paper-0);background:var(--surface)}.btn-danger{border:1px solid #f0d3c4;border:1px solid var(--danger-border);color:var(--color-ember);color:var(--danger)}.btn-ghost{background:#0000;border:1px solid #0000;color:var(--color-ink-500);color:var(--text-3)}.btn-ghost:not(:disabled):hover{background:var(--color-paper-200);background:var(--fill-muted);color:var(--color-ink-900);color:var(--text);filter:none}.mono,.num{font-feature-settings:"tnum";font-family:var(--font-mono);font-variant-numeric:tabular-nums}.btn-sm{font-size:13px;min-height:40px;padding:8px 12px}@media (pointer:coarse){.btn-sm{min-height:44px}}.btn-lg{font-size:15px;padding:13px 24px}.btn-full{width:100%}.btn-spinner{animation:spin .8s linear infinite;flex-shrink:0}.btn-icon{flex-shrink:0}.badge,.btn-icon{align-items:center;display:inline-flex}.badge{border:1px solid #0000;border-radius:6px;font-size:12px;font-weight:600;gap:4px;line-height:1.5;padding:3px 10px}.badge-success{background:#eef5f0;background:var(--success-bg);border-color:#cfe3d6;border-color:var(--success-border);color:var(--color-forest);color:var(--success)}.badge-danger{background:#fbf1ec;background:var(--danger-bg);border-color:#f0d3c4;border-color:var(--danger-border);color:var(--color-ember);color:var(--danger)}.badge-warning{background:#fbf1ec;background:var(--warning-bg);border-color:#f0d3c4;border-color:var(--warning-border);color:var(--color-ember);color:var(--warning)}.badge-info{background:#eef2fb;background:var(--info-bg);border-color:#d3dcf3;border-color:var(--info-border);color:var(--color-cobalt);color:var(--info)}.badge-neutral{background:var(--color-paper-200);background:var(--bg-secondary);border-color:var(--border);color:var(--color-ink-500);color:var(--text-3)}.table-wrap{border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);overflow-x:auto}table{border-collapse:collapse;font-size:14px;width:100%}thead tr{background:var(--color-paper-200);background:var(--bg-secondary)}th{border-bottom:1px solid var(--border);color:var(--color-ink-500);color:var(--text-3);font-size:11px;font-weight:700;letter-spacing:.06em;padding:10px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}td{border-bottom:1px solid var(--border-light);color:var(--color-ink-700);color:var(--text-2);padding:13px 16px;vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--color-paper-200);background:var(--bg-secondary)}.toast-container{bottom:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2);position:fixed;right:var(--space-6);z-index:var(--z-toast)}.toast{align-items:center;animation:slideIn .2s ease;background:var(--color-paper-0);background:var(--surface);border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);box-shadow:0 16px 48px #15171c24;box-shadow:var(--shadow-lg);display:flex;font-size:13px;font-weight:600;gap:10px;max-width:380px;min-width:280px;padding:12px 16px}@media (max-width:768px){.toast-container{bottom:88px;left:12px;right:12px}.toast{max-width:none;min-width:0;min-width:auto;width:100%}}.toast-success{border-left:3px solid var(--success)}.toast-error{border-left:3px solid var(--danger)}.toast-info{border-left:3px solid var(--info)}.toast-warning{border-left:3px solid var(--warning)}.toast-icon{align-items:center;display:inline-flex;flex-shrink:0}.toast-icon-success{color:var(--color-forest);color:var(--success)}.toast-icon-error{color:var(--color-ember);color:var(--danger)}.toast-icon-warning{color:var(--color-ember);color:var(--warning)}.toast-icon-info{color:var(--color-cobalt);color:var(--info)}.toast-message{flex:1 1}.toast-dismiss{align-items:center;background:none;border:none;border-radius:4px;color:var(--color-ink-500);color:var(--text-4);cursor:pointer;display:inline-flex;flex-shrink:0;height:20px;justify-content:center;padding:0;transition:color .1s,background .1s;width:20px}.toast-dismiss:hover{background:var(--color-paper-200);background:var(--bg-secondary);color:var(--color-ink-900);color:var(--text)}@keyframes slideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;display:flex;inset:0;justify-content:center;padding:var(--space-4);position:fixed;z-index:var(--z-modal)}.modal{animation:modalIn .2s ease;background:var(--color-paper-0);background:var(--surface);border-radius:16px;border-radius:var(--radius-xl);box-shadow:0 16px 48px #15171c24;box-shadow:var(--shadow-lg);max-width:480px;padding:28px;width:100%}@keyframes modalIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--font-bold);margin-bottom:var(--space-1)}.modal-sub{color:var(--color-ink-500);color:var(--text-3);font-size:13px;margin-bottom:20px}.modal.modal-fixed-actions{display:flex;flex-direction:column;max-height:90vh;max-height:90dvh;overflow:hidden;padding:0}.modal-fixed-header{align-items:flex-start;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:12px;justify-content:space-between;padding:18px 20px}.modal-fixed-header .modal-sub{margin:4px 0 0}.modal-close{background:var(--color-paper-200);background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--color-ink-900);color:var(--text);cursor:pointer;flex-shrink:0;font-size:24px;height:40px;width:40px}.modal-scroll-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px 20px}.modal-fixed-footer{background:var(--color-paper-0);background:var(--surface);border-top:1px solid var(--border);flex-shrink:0;padding:14px 20px}.empty-state{color:var(--color-ink-500);color:var(--text-3);padding:48px 24px;text-align:center}.empty-state-icon{font-size:40px;margin-bottom:12px}.empty-state-title{color:var(--color-ink-700);color:var(--text-2);font-size:15px;font-weight:700;margin-bottom:4px}.empty-state-sub{font-size:13px}.avatar{align-items:center;background:var(--color-ink-900);background:var(--brand);border-radius:10px;color:var(--color-paper-0);color:var(--brand-contrast);display:flex;flex-shrink:0;font-size:14px;font-weight:800;height:36px;justify-content:center;width:36px}.avatar-blue{background:linear-gradient(135deg,#0ea5e9,#2563eb);color:#fff}.avatar-purple{background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#fff}.avatar-green{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.divider{background:var(--color-paper-300);background:var(--border);border:none;height:1px;margin:20px 0}.page-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:24px}.page-title{color:var(--color-ink-900);color:var(--text);font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--font-bold);letter-spacing:-.035em}.page-sub{color:var(--color-ink-500);color:var(--text-3);font-size:13px;margin-top:2px}.bottom-nav{background:var(--color-paper-0);background:var(--surface);border-top:1px solid var(--border);bottom:0;display:none;left:0;padding-bottom:env(safe-area-inset-bottom);position:fixed;right:0;z-index:100}.bottom-nav-items{display:flex}.bottom-nav-item{align-items:center;background:none;border:none;color:var(--color-ink-500);color:var(--text-3);display:flex;flex:1 1;flex-direction:column;font-size:11px;font-weight:600;gap:4px;padding:8px 4px;transition:all .15s ease;transition:var(--transition)}.bottom-nav-item.active{color:var(--color-blue-400)}.bottom-nav-item-icon{align-items:center;display:flex;justify-content:center}@media (max-width:768px){.app-sidebar{transform:translateX(-100%);width:240px!important;width:var(--sidebar-width)!important}.app-sidebar.mobile-open{transform:translateX(0)}.app-sidebar.mobile-open+.sidebar-overlay,.sidebar-overlay.active{display:block}.sidebar-collapse-btn{display:none}.app-main{margin-left:0!important}.app-content{padding:16px}.bottom-nav{display:block}.form-grid{grid-template-columns:1fr}.page-header{align-items:flex-start;flex-direction:column}.mobile-menu-btn{display:flex!important}.responsive-two-col{grid-template-columns:1fr!important}}.bottom-drawer-backdrop{animation:fadeIn .2s ease;background:#0006;inset:0;position:fixed;z-index:1100}.bottom-drawer{animation:drawerUp .25s cubic-bezier(.34,1.56,.64,1);background:var(--color-paper-0);background:var(--surface);border-radius:20px 20px 0 0;border-top:1px solid var(--border);bottom:0;left:0;padding:0 0 calc(env(safe-area-inset-bottom) + 16px);position:fixed;right:0;z-index:1101}.bottom-drawer-handle{background:var(--color-paper-300);background:var(--border);border-radius:999px;height:4px;margin:10px auto 0;width:40px}.bottom-drawer-header{align-items:center;display:flex;justify-content:space-between;padding:10px 20px 8px}.bottom-drawer-title{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.bottom-drawer-close,.bottom-drawer-title{color:var(--color-ink-500);color:var(--text-3)}.bottom-drawer-close{align-items:center;background:none;border:none;border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:flex;justify-content:center;padding:6px;transition:all .15s ease;transition:var(--transition)}.bottom-drawer-close:hover{background:var(--color-paper-200);background:var(--bg-secondary);color:var(--color-ink-900);color:var(--text)}.bottom-drawer-close:focus-visible{outline:2px solid var(--color-ink-900);outline:2px solid var(--brand);outline-offset:2px}.bottom-drawer-item{align-items:center;background:none;border:none;color:var(--color-ink-900);color:var(--text);cursor:pointer;display:flex;font-family:inherit;font-size:15px;font-weight:600;gap:16px;padding:14px 24px;text-align:left;transition:background .1s;width:100%}.bottom-drawer-item:hover{background:var(--color-paper-200);background:var(--bg-secondary)}.bottom-drawer-item.active{color:var(--color-blue-400)}.bottom-drawer-item:focus-visible{outline:2px solid var(--color-ink-900);outline:2px solid var(--brand);outline-offset:-2px}@keyframes drawerUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.bottom-drawer,.bottom-drawer-backdrop{animation:none}}.responsive-two-col{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--color-paper-200) 25%,var(--color-paper-300) 50%,var(--color-paper-200) 75%);background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--border) 50%,var(--bg-secondary) 75%);background-size:200% 100%;border-radius:8px;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(1turn)}}.mobile-menu-btn{display:none}@media (max-width:768px){.mobile-menu-btn{display:block}}.flex{display:flex}.flex-between,.flex-center{align-items:center;display:flex}.flex-between{justify-content:space-between}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.text-sm{font-size:var(--text-sm)}.text-xs{font-size:var(--text-xs)}.text-muted{color:var(--color-ink-500);color:var(--text-3)}.font-bold{font-weight:700}.w-full{width:100%}@media (max-width:768px){.app-sidebar{transform:translateX(-100%);width:240px!important;width:var(--sidebar-width)!important;z-index:100}.app-sidebar-wrapper.mobile-open .app-sidebar{transform:translateX(0)}.app-main{margin-left:0!important}.app-content{padding:16px 16px 80px}.sidebar-collapse-btn{display:none}.app-topbar{padding:0 16px}.kpi-grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width:640px){.app-content{padding:20px 16px calc(88px + env(safe-area-inset-bottom, 0px))!important}}@media (max-width:768px){.topbar-logout-text{display:none}.topbar-logout-btn{padding:6px 8px!important}}.restaurant-tabs-strip{-webkit-overflow-scrolling:touch;align-items:center;background:var(--color-paper-0);background:var(--surface);border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:2px;overflow-x:auto;padding:0 20px;position:sticky;scrollbar-width:none;top:60px;z-index:40}.restaurant-tabs-strip::-webkit-scrollbar{display:none}.restaurant-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:var(--color-ink-500);color:var(--text-3);cursor:pointer;flex-shrink:0;font-family:inherit;font-size:13px;font-weight:600;padding:10px 16px;transition:color .15s,border-color .15s;white-space:nowrap}.restaurant-tab:hover{color:var(--color-ink-700);color:var(--text-2)}.restaurant-tab.active{border-bottom-color:var(--brand);color:var(--color-ink-900);color:var(--brand)}@media (max-width:768px){.restaurant-tabs-strip{padding:0 6px;top:60px}.restaurant-tab{font-size:11px;padding:8px}}.shift-delete-confirm{align-items:center;display:flex;flex-shrink:0;gap:6px}.shift-delete-confirm-label{color:var(--color-ember);color:var(--danger);font-size:13px;font-weight:600;white-space:nowrap}.quick-punch-row{transition:background .12s}.quick-punch-row:hover{background:var(--color-paper-200)!important;background:var(--bg-secondary)!important}.quick-punch-row.late-row:hover{background:#ef44440a!important}.employee-portal{margin:0 auto;max-width:480px}.employee-portal-nav{max-width:480px}@media (min-width:1024px){.employee-portal,.employee-portal-nav{max-width:640px}}.schedule-tab:focus-visible,[role=menuitem]:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{border-radius:6px;outline:2px solid var(--color-ink-900);outline:2px solid var(--brand);outline-offset:2px}.schedule-tab-bar{align-items:flex-end;border-bottom:1px solid var(--border);display:flex;margin-bottom:20px;overflow-x:auto;scrollbar-width:thin}.schedule-tab-bar::-webkit-scrollbar{height:3px}.schedule-tab-bar::-webkit-scrollbar-thumb{background:var(--color-paper-300);background:var(--border);border-radius:3px}.schedule-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:var(--color-ink-500);color:var(--text-3);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:13px;font-weight:600;gap:6px;margin-bottom:-1px;padding:10px 16px;transition:color .15s,border-color .15s;white-space:nowrap}.schedule-tab.active{border-bottom-color:var(--color-blue-500);color:var(--color-blue-500)}.schedule-tab:hover:not(.active){color:var(--color-ink-900);color:var(--text)}.schedule-tab-badge{align-items:center;background:var(--color-red-600);border-radius:9px;color:#fff;display:inline-flex;font-size:10px;font-weight:700;height:18px;justify-content:center;line-height:1;min-width:18px;padding:0 5px}.timesheet-prompt-card{align-items:center;background:var(--color-paper-0);background:var(--card);border:1px solid var(--border);border-left:3px solid var(--warning);border-radius:14px;cursor:pointer;display:flex;gap:12px;margin-bottom:10px;padding:12px 14px;text-align:left;transition:background .12s;width:100%}.timesheet-prompt-card:hover{background:var(--color-paper-200);background:var(--bg-secondary)}.timesheet-prompt-icon{flex-shrink:0;font-size:20px}.timesheet-prompt-text{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.timesheet-prompt-title{color:var(--color-ink-900);color:var(--text);font-size:13px;font-weight:700}.timesheet-prompt-sub{color:var(--color-ink-500);color:var(--text-3);font-size:11px}.timesheet-prompt-arrow{color:var(--color-ink-500);color:var(--text-4);flex-shrink:0;font-size:16px}.section-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.section-header--bordered{border-bottom:1px solid var(--border-light);padding-bottom:12px}.section-header-text{display:flex;flex-direction:column;gap:2px}.section-header-actions{align-items:center;display:flex;flex-shrink:0;gap:8px}.section-title{color:var(--color-ink-900);color:var(--text);font-size:14px;font-weight:700}.section-sub{font-size:12px}.error-state,.section-sub{color:var(--color-ink-500);color:var(--text-3)}.error-state{align-items:center;display:flex;flex-direction:column;padding:48px 24px;text-align:center}.error-state-icon{color:var(--color-ember);color:var(--danger);margin-bottom:12px}.error-state-title{color:var(--color-ink-700);color:var(--text-2);font-size:15px;font-weight:700;margin-bottom:4px}.error-state-sub{color:var(--color-ink-500);color:var(--text-3);font-size:13px}.error-state-compact{align-items:center;background:#fbf1ec;background:var(--danger-bg);border:1px solid #f0d3c4;border:1px solid var(--danger-border);border-radius:8px;border-radius:var(--radius-sm);color:var(--color-ember);color:var(--danger);display:flex;font-size:12px;font-weight:600;gap:6px;padding:8px 12px}.error-retry-link{background:none;border:none;color:var(--color-cobalt);color:var(--info);cursor:pointer;font-size:12px;font-weight:600;padding:0;text-decoration:underline}.modal-footer{align-items:center;border-top:1px solid var(--border-light);display:flex;gap:8px;justify-content:flex-end;margin-top:16px;padding-top:16px}.modal-actions{margin-top:20px}.form-actions,.modal-actions{align-items:center;display:flex;gap:10px}.form-card{background:var(--color-paper-0);background:var(--surface);border:2px solid var(--brand);border-radius:12px;border-radius:var(--radius-lg);margin-bottom:20px;padding:20px}.form-card-title{color:var(--color-ink-900);color:var(--text);font-size:15px;font-weight:700;margin-bottom:16px}.btn-success{background:#eef5f0;background:var(--success-bg);border:1px solid #cfe3d6;border:1px solid var(--success-border);color:var(--color-forest);color:var(--success)}.stat-card{background:var(--color-paper-0);background:var(--card);border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);display:flex;flex-direction:column;gap:4px;padding:16px}.stat-card-label{color:var(--color-ink-500);color:var(--text-3);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.stat-card-value{color:var(--color-ink-900);color:var(--text);font-size:24px;font-weight:800;line-height:1}.stat-card-sub{color:var(--color-ink-500);color:var(--text-3);font-size:12px}.status-dot{border-radius:50%;display:inline-block;flex-shrink:0;height:8px;width:8px}.status-dot--success{background:var(--color-forest);background:var(--success)}.status-dot--warning{background:var(--color-ember);background:var(--warning)}.status-dot--danger{background:var(--color-ember);background:var(--danger)}.status-dot--info{background:var(--color-cobalt);background:var(--info)}.status-dot--muted{background:var(--color-ink-500);background:var(--text-4)}.interactive-row{align-items:center;border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:background .12s}.interactive-row:hover{background:var(--color-paper-200);background:var(--bg-secondary)}.delta{font-size:11px;font-weight:600}.delta--up{color:var(--color-forest);color:var(--success)}.delta--down{color:var(--color-ember);color:var(--danger)}.delta--flat{color:var(--color-ink-500);color:var(--text-4)}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.error-boundary-screen{align-items:center;background:var(--color-paper-100);background:var(--bg);color:var(--color-ink-900);color:var(--text);display:flex;flex-direction:column;font-family:Inter,sans-serif;font-family:var(--font-sans,Inter,sans-serif);gap:12px;justify-content:center;min-height:100vh;padding:40px 24px;text-align:center}.error-boundary-icon{color:var(--color-ember);color:var(--warning);margin-bottom:4px}.error-boundary-title{color:var(--color-ink-900);color:var(--text);font-size:20px;font-weight:700;margin:0}.error-boundary-sub{color:var(--color-ink-500);color:var(--text-3);font-size:14px;line-height:1.5;margin:0;max-width:380px}.error-boundary-detail{background:#fbf1ec;background:var(--danger-bg);border:1px solid #f0d3c4;border:1px solid var(--danger-border);border-radius:8px;border-radius:var(--radius-sm);color:var(--color-ember);color:var(--danger);font-size:11px;margin-top:16px;max-width:600px;overflow:auto;padding:12px 16px;text-align:left;white-space:pre-wrap;word-break:break-word}.network-banner{align-items:center;animation:slideUp .2s ease;bottom:0;display:flex;font-size:13px;font-weight:600;gap:8px;justify-content:center;left:0;padding:10px 16px;position:fixed;right:0;z-index:1000}.network-banner--offline{background:#fbf1ec;background:var(--danger-bg);border-top:1px solid #f0d3c4;border-top:1px solid var(--danger-border);color:var(--color-ember);color:var(--danger)}.network-banner--online{background:#eef5f0;background:var(--success-bg);border-top:1px solid #cfe3d6;border-top:1px solid var(--success-border);color:var(--color-forest);color:var(--success)}@media (max-width:768px){.network-banner{bottom:calc(60px + env(safe-area-inset-bottom))}}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}@keyframes shimmer{0%,to{background-position:0 0}}@keyframes fadeIn{0%,to{opacity:1;transform:none}}@keyframes slideUp{0%,to{opacity:1;transform:none}}}.mobile-shift-card{-webkit-tap-highlight-color:transparent;background:var(--color-paper-0);background:var(--surface);border:1px solid var(--border);border-radius:14px;cursor:pointer;overflow:hidden;transition:background .1s}.mobile-add-shift-btn,.mobile-shift-card:active{background:var(--color-paper-200);background:var(--bg-secondary)}.mobile-add-shift-btn{-webkit-tap-highlight-color:transparent;align-items:center;border:1px dashed var(--border);border-radius:14px;color:var(--color-ink-500);color:var(--text-3);cursor:pointer;display:flex;font-family:inherit;font-size:14px;font-weight:600;justify-content:center;min-height:48px;padding:12px 16px;transition:background .1s,color .1s;width:100%}.mobile-add-shift-btn:active{background:var(--color-paper-100);background:var(--bg);color:var(--color-ink-700);color:var(--text-2)}.mobile-empty-day{-webkit-tap-highlight-color:transparent;align-items:center;background:var(--color-paper-0);background:var(--surface);border:1px dashed var(--border);border-radius:16px;color:var(--color-ink-500);color:var(--text-4);cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:40px 24px;text-align:center;transition:background .1s}.mobile-empty-day:active{background:var(--color-paper-200);background:var(--bg-secondary)}.mobile-shift-card:not(.mobile-shift-card--draft){box-shadow:0 1px 4px #00000012}.mobile-day-stats{display:flex;flex-wrap:wrap;gap:6px}.mobile-day-stats-pill{align-items:center;background:var(--color-paper-200);background:var(--bg-secondary);border:1px solid var(--border);border-radius:999px;color:var(--color-ink-500);color:var(--text-3);display:inline-flex;font-size:12px;font-weight:700;padding:3px 10px}.mobile-day-stats-pill--hours{background:#0000;border-color:#0000;color:var(--color-ink-900);color:var(--brand)}.mobile-day-stats-pill--published{background:#eef5f0;background:var(--success-bg);border-color:#cfe3d6;border-color:var(--success-border);color:var(--color-forest);color:var(--success)}.mobile-day-stats-pill--draft{background:#fbf1ec;background:var(--warning-bg);border-color:#f0d3c4;border-color:var(--warning-border);color:var(--color-ember);color:var(--warning)}.mobile-quick-publish-btn{-webkit-tap-highlight-color:transparent;align-items:center;border:1px solid #cfe3d6;border:1px solid var(--success-border);border-radius:999px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:11px;font-weight:700;padding:4px 10px;transition:background .1s,color .1s}.mobile-quick-publish-btn,.mobile-quick-publish-btn:active:not(:disabled){background:#eef5f0;background:var(--success-bg);color:var(--color-forest);color:var(--success)}.mobile-quick-publish-btn:active:not(:disabled){border-color:var(--success)}.mobile-quick-publish-btn:disabled{cursor:default;opacity:.6}.not-scheduled-section{margin-top:16px}.not-scheduled-summary{color:var(--color-ink-500);color:var(--text-3);cursor:pointer;font-size:13px;font-weight:700;list-style:none;padding:8px 4px;-webkit-user-select:none;user-select:none}.not-scheduled-summary::-webkit-details-marker{display:none}.not-scheduled-summary:before{content:"▶ ";display:inline-block;font-size:10px;margin-right:4px;transition:transform .15s}details[open] .not-scheduled-summary:before{transform:rotate(90deg)}.payroll-presets{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.payroll-preset{background:var(--color-paper-200);background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--color-ink-500);color:var(--text-3);cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;padding:6px 12px;text-align:left;transition:border-color .15s,background .15s}.payroll-preset:hover{border-color:var(--brand);color:var(--color-ink-900);color:var(--text)}.payroll-preset.active{background:var(--color-ink-900);background:var(--brand);border-color:var(--brand);color:var(--color-paper-0);color:var(--brand-contrast)}.payroll-preset-label{font-size:12px;font-weight:700}.payroll-preset-sub{font-size:11px;margin-top:1px;opacity:.75}.payroll-preset.active .payroll-preset-sub{opacity:.85}.reports-period-bar{align-items:center;display:flex;flex-wrap:wrap;gap:4px;margin-bottom:20px}.reports-period-btn{background:var(--color-paper-200);background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--color-ink-500);color:var(--text-3);cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;padding:6px 14px;transition:border-color .15s,background .15s,color .15s}.reports-period-btn:hover{border-color:var(--color-blue-400);color:var(--color-ink-900);color:var(--text)}.reports-period-btn.active{background:var(--color-paper-200);background:var(--brand-soft);border-color:var(--brand-border);color:var(--color-ink-900);color:var(--brand)}.reports-export-btn:hover{border-color:var(--color-blue-400);color:var(--color-ink-900);color:var(--text)}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto;width:100%}.table-scroll>table{min-width:max-content}@media print{.app-sidebar,.app-topbar,.bottom-nav,.mobile-menu-btn,.network-status-banner,.progress-bar,.reports-export-btn,.reports-period-bar{display:none!important}.app-content,.app-main{margin:0!important;max-width:100%!important;padding:0!important;width:100%!important}.card,.surface{border-color:#ddd!important;box-shadow:none!important;break-inside:avoid;page-break-inside:avoid}body{background:#fff!important;color:#000!important}}.workspace-ui{--workspace-accent:var(--brand)}.workspace-ui .app-content{margin:0 auto;max-width:1440px;min-width:0;width:100%}.workspace-ui .page-header{flex-wrap:wrap;gap:16px;margin-bottom:24px}.workspace-ui .page-title,.workspace-ui h1{font-size:clamp(22px,2vw,28px);letter-spacing:-.025em;line-height:1.25}.workspace-ui .page-sub{font-size:14px;line-height:1.6}.workspace-ui .sidebar-section-label{font-size:11px;letter-spacing:.07em;margin-top:18px}.workspace-ui .sidebar-item{min-height:42px}.workspace-ui .app-sidebar{overflow-y:auto}.workspace-ui .sidebar-logo{padding:24px 16px 20px}.workspace-ui .sidebar-collapse-btn{right:12px}.workspace-ui .app-sidebar.collapsed .sidebar-collapse-btn{flex-shrink:0;margin:12px auto;position:static}.workspace-ui .app-sidebar.collapsed .sidebar-bottom .sidebar-item>div{display:none}.employee-portal :is(button,a,input,select,textarea):focus-visible,.workspace-ui :is(button,a,input,select,textarea):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.workspace-ui :is(input,select,textarea){max-width:100%}.workspace-ui .btn{min-height:44px}.context-bar{flex-wrap:nowrap;gap:16px}.context-bar,.context-bar label{align-items:center;display:flex;min-width:0}.context-bar label{color:var(--text-3);font-size:12px;font-weight:500;gap:8px}.context-bar strong{color:var(--text);font-size:14px;font-weight:600}.context-bar select{background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;color:var(--text);font:inherit;font-size:14px;font-weight:500;max-width:240px;min-height:40px;min-width:0;padding:8px 30px 8px 12px}.workflow-steps{background:var(--surface);border:1px solid var(--border);border-radius:12px;display:flex;flex-wrap:wrap;gap:8px 20px;list-style:none;margin:0 0 24px;padding:16px}.workflow-steps li{align-items:center;color:var(--text-3);display:flex;font-size:13px;gap:8px}.workflow-steps li>span{background:var(--bg-secondary);border:1px solid var(--border);border-radius:50%;display:grid;flex-shrink:0;height:26px;place-items:center;width:26px}.workflow-steps .is-current{color:var(--text);font-weight:700}.workflow-steps .is-current>span{background:var(--brand);border-color:var(--brand);color:var(--brand-contrast)}.section-intro{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px}.section-intro h2{color:var(--text);font-size:18px;line-height:1.4;margin:0}.section-intro p{color:var(--text-3);font-size:14px;line-height:1.6;margin:6px 0 0;max-width:72ch}.workspace-actions,.workspace-filters{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.workspace-filters{margin-bottom:20px}.workspace-filters label{color:var(--text-2);display:flex;flex-direction:column;font-size:12px;font-weight:600;gap:6px;min-width:140px}.workspace-filters :is(input,select){background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font:inherit;font-size:14px;min-height:42px;padding:9px 12px}.workspace-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.workspace-tabs button{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text-2);cursor:pointer;font:inherit;font-size:14px;min-height:42px;padding:10px 16px}.workspace-tabs button[aria-pressed=true]{border-color:var(--brand);color:var(--brand);font-weight:700}.workspace-panel{background:var(--surface);border:1px solid var(--border);border-radius:14px;margin-bottom:24px;min-width:0;padding:24px}.workspace-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.workspace-link{background:var(--surface);border:1px solid var(--border);border-radius:12px;color:var(--text);cursor:pointer;display:flex;flex-direction:column;font:inherit;gap:8px;padding:20px;text-align:left;text-decoration:none}.workspace-link:hover{background:var(--bg-secondary);border-color:var(--brand)}.workspace-link span{color:var(--text-3);font-size:13px;line-height:1.6}.page-notice{align-items:center;background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;color:var(--text-2);display:flex;flex-wrap:wrap;font-size:14px;gap:12px;justify-content:space-between;line-height:1.6;margin-bottom:20px;padding:16px}.page-notice.is-error{background:var(--danger-bg);color:var(--danger)}.record-details{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:10px;overflow:hidden}.record-details>summary{align-items:center;color:var(--text);cursor:pointer;display:flex;gap:16px;justify-content:space-between;list-style:none;padding:16px}.record-details>summary::-webkit-details-marker{display:none}.record-details summary small{color:var(--text-3);display:block;font-size:13px;line-height:1.5;margin-top:5px}.record-details-hint{color:var(--brand);flex-shrink:0;font-size:12px}.record-details-hint:after{content:" +"}.record-details[open] .record-details-hint:after{content:" −"}.record-details-body{border-top:1px solid var(--border);padding:16px}.record-details.needs-review{border-color:#d97706;border-color:var(--warning,#d97706)}.record-values{grid-gap:10px 16px;display:grid;font-size:14px;gap:10px 16px;grid-template-columns:minmax(0,1fr) auto;margin:0}.record-values dt{color:var(--text-3)}.record-values dd{font-feature-settings:"tnum";color:var(--text);font-variant-numeric:tabular-nums;margin:0;overflow-wrap:anywhere;text-align:right}.mobile-records{display:none}.readable-table{max-width:100%;overflow-x:auto}.readable-table table{min-width:640px}.readable-table :is(th,td):first-child{background:var(--surface);left:0;position:sticky;z-index:1}.readable-table th:first-child{z-index:2}.readable-table :is(th,td){font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.modal-backdrop:has(.modal-side-panel){justify-content:flex-end;padding:0}.modal.modal-side-panel{border-radius:0;height:100dvh;max-height:100dvh!important;max-width:560px;padding:24px;width:min(100%,560px)}.modal-side-panel .modal-title{padding-right:40px}.modal-side-close{position:absolute;right:16px;top:16px}.onboarding-step{scroll-margin-top:24px}.onboarding-actions{border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:20px;padding-top:20px}.onboarding-review{grid-gap:16px;display:grid;gap:16px}.overview-primary-metrics{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:24px}.overview-metric{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px}.overview-metric strong{font-feature-settings:"tnum";color:var(--text);display:block;font-size:28px;font-variant-numeric:tabular-nums}.overview-metric span{color:var(--text-2);display:block;font-size:13px;font-weight:600;margin:5px 0}.overview-metric small{color:var(--text-3);font-size:12px}.overview-attention{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));margin:16px 0 24px}.overview-attention button{background:var(--surface);border-left:3px solid #d97706;border:1px solid var(--border);border-left:3px solid var(--warning,#d97706);border-radius:10px;color:var(--text);cursor:pointer;padding:16px;text-align:left}.overview-attention span{color:var(--text-3);display:block;font-size:13px;line-height:1.5;margin-top:6px}.checklist-progress{background:var(--surface);border:1px solid var(--border);border-radius:10px;margin-bottom:16px;padding:12px 16px;position:sticky;top:64px;z-index:5}.checklist-progress progress{accent-color:var(--brand);display:block;height:8px;margin-top:8px;width:100%}@media (max-width:767px){.context-bar{gap:8px}.context-bar .context-label{clip:rect(0 0 0 0);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.context-bar label{flex:1 1}.context-bar select{max-width:none;width:100%}.workspace-panel{padding:16px}.workflow-steps{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;padding:12px}.workspace-filters label{flex:1 1 140px}.mobile-records{display:block}.desktop-records{display:none}.overview-primary-metrics{grid-template-columns:1fr 1fr}.overview-metric{padding:16px}.overview-metric strong{font-size:24px}.workspace-ui :is(input,select,textarea){font-size:16px}.workspace-tabs button{flex:1 1 auto}.checklist-progress{top:60px}}.checklist-submit{bottom:16px;box-shadow:0 4px 16px #0002;position:sticky;z-index:4}@media(max-width:767px){.checklist-submit{bottom:84px;margin-bottom:24px}.checklist-question>div>div:first-child{flex-basis:100%!important}}.employee-portal .btn-primary,.workspace-ui .btn-primary{background:var(--brand);border-color:var(--brand);color:var(--brand-contrast)}.workspace-ui .sidebar-item.active{background:var(--sidebar-active-bg);color:var(--sidebar-text-active)}.workspace-ui .sidebar-item.active .sidebar-item-icon{color:var(--sidebar-text-active)}.workspace-ui .bottom-nav-item.active{color:var(--text)}.workspace-ui .app-content :is(div,span,small)[style*="font-size: 10px"],.workspace-ui .app-content :is(div,span,small)[style*="font-size: 11px"]{font-size:12px!important;line-height:1.45}.workspace-ui .app-content button{font-family:var(--font-sans)}.workspace-ui .app-content button[style*="background: linear-gradient(135deg, rgb(245, 158, 11)"], .workspace-ui .app-content button[style*="background: rgb(245, 158, 11)"]{background:var(--brand)!important;color:var(--brand-contrast)!important}.modal-side-panel{position:relative}.workspace-ui .page-header .page-title{margin:0}.readable-table .record-details{background:#0000;border:none;margin:0;min-width:180px}.readable-table .record-details>summary{padding:6px 0}.readable-table .record-details-body{min-width:220px;padding:12px 0}@media(max-width:767px){.workspace-ui .app-content button{min-height:44px}}.app-topbar-context{flex:1 1;min-width:0}@media (max-width:767px){.app-topbar{flex-wrap:wrap;height:auto;min-height:60px;padding-bottom:8px;padding-top:8px;row-gap:8px}.app-topbar-context{flex:1 1 100%;order:10}.app-topbar-context:empty{display:none}.app-topbar>.mobile-menu-btn{margin-right:auto}.app-topbar .topbar-notifications{left:12px!important;max-height:min(70vh,520px)!important;max-width:none!important;position:fixed!important;right:12px!important;top:64px!important;width:auto!important}}.brand-lockup{align-items:center;color:var(--text);display:flex;gap:10px;min-width:0}.brand-mark{border:1px solid var(--border);border-radius:10px;display:block;flex-shrink:0;height:38px;width:38px}.brand-copy{min-width:0}.brand-copy strong{display:block;font-size:15px;font-weight:600;letter-spacing:-.02em;line-height:1.35}.brand-copy span{color:var(--text-3);display:block;font-size:12px;line-height:1.5;margin-top:3px;overflow-wrap:anywhere}.brand-inverse{color:#f8fafc}.brand-inverse .brand-copy span{color:#bac5d0}.brand-inverse .brand-mark{border-color:#0000}.brand-compact{justify-content:center}.auth-heading{margin-bottom:28px;text-align:center}.auth-heading .brand-lockup{justify-content:center;margin-bottom:28px;text-align:left}.auth-heading h1{font-size:26px;letter-spacing:-.035em;margin-bottom:10px}.auth-heading p{color:var(--text-3);font-size:14px;line-height:1.6}.page-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;max-width:100%}.metric-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));margin-bottom:24px}.metric-card{align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);display:flex;flex-direction:column;font:inherit;gap:10px;min-width:0;padding:20px;text-align:left}button.metric-card:hover{background:var(--surface-2);border-color:var(--brand)}.metric-label{color:var(--text-2);font-size:13px;font-weight:600;line-height:1.4}.metric-value{font-feature-settings:"tnum";font-size:clamp(24px,2.4vw,30px);font-variant-numeric:tabular-nums;font-weight:650;letter-spacing:-.04em;line-height:1.2;overflow-wrap:anywhere}.metric-detail{color:var(--text-3);font-size:12px;line-height:1.5}.metric-attention{border-left:3px solid var(--danger)}.metric-attention .metric-value{color:var(--danger)}.metric-highlight{background:var(--brand-soft);border-color:var(--brand-border)}.device-notice{align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);display:flex;font-size:13px;gap:12px;line-height:1.55;margin-bottom:24px;padding:12px 16px}.device-notice>svg{color:var(--text-3);flex-shrink:0;margin-top:3px}.device-notice-copy{flex:1 1;min-width:0}.device-notice-copy strong{font-weight:600}.device-notice-copy details{margin-top:2px}.device-notice-copy summary{color:var(--text-3);cursor:pointer;padding:4px 0;width:fit-content}.device-notice-copy details p{color:var(--text-3);margin:8px 0 4px;max-width:68ch}.device-notice-actions{align-items:center;display:flex;flex-shrink:0;gap:6px}.device-notice.is-error{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger)}.icon-action{align-items:center;background:#0000;border:0;border-radius:var(--radius-sm);color:var(--text-3);display:inline-flex;flex:0 0 40px;height:40px;justify-content:center;padding:8px;width:40px}.icon-action:hover{background:var(--bg-secondary);color:var(--text)}.empty-state-icon{align-items:center;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;color:var(--text-3);display:flex;height:48px;justify-content:center;margin:0 auto 14px;width:48px}.dashboard-page{min-width:0;width:100%}.dashboard-page .responsive-two-col{align-items:start}@media(max-width:767px){.metric-grid{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{gap:8px;padding:16px}.metric-value{font-size:26px}.device-notice{flex-wrap:wrap;gap:10px;padding:12px}.device-notice-copy{flex-basis:150px}.page-header-actions{width:100%}.page-header-actions .btn{flex:0 1 auto;white-space:normal}}.overview-clear{align-items:center;color:var(--text-2);display:flex;font-size:13px;gap:12px;padding:16px 20px}.overview-clear svg{color:var(--success);flex-shrink:0}.overview-clear p{color:var(--text-3);margin-top:3px}.dashboard-upcoming{padding:18px 24px}.dashboard-upcoming .section-intro{margin-bottom:8px}.reports-scope{margin-bottom:16px;max-width:72ch}.payroll-preset,.reports-period-btn{min-height:44px}.workspace-ui .payroll-preset.active{background:var(--brand-soft);border-color:var(--brand-border);color:var(--brand)}.workspace-ui .payroll-preset.active .payroll-preset-sub{color:var(--text-2)}.workspace-ui .reports-period-btn:hover{border-color:var(--brand-border)}.payroll-fields{grid-gap:14px;align-items:end;display:grid;gap:14px;grid-template-columns:repeat(3,minmax(120px,1fr)) auto}.payroll-fields>div{min-width:0}.payroll-fields input{min-height:44px;min-width:0;width:100%}.payroll-fields>button{min-height:44px}@media(max-width:1100px){.payroll-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.payroll-fields{grid-template-columns:1fr}}.kit-intro{grid-gap:24px 48px;align-items:end;display:grid;gap:24px 48px;grid-template-columns:minmax(0,1fr) auto;margin-bottom:32px}.kit-intro-main{display:flex;flex-direction:column;gap:12px;min-width:0}.kit-eyebrow{align-items:center;color:var(--text-3);display:flex;flex-wrap:wrap;font-family:var(--font-mono);font-size:12px;gap:8px;letter-spacing:.04em;margin:0;text-transform:uppercase}.kit-live{align-items:center;color:var(--success);display:inline-flex;gap:6px}.kit-live:before{color:var(--text-3);content:"·";margin-right:2px}.kit-dot{background:currentColor;border-radius:999px;flex:none;height:6px;width:6px}.kit-headline,.workspace-ui .kit-headline{text-wrap:balance;color:var(--text);font-family:var(--font-display);font-size:36px;font-weight:650;letter-spacing:-.03em;line-height:1.08;margin:0}.kit-headline-detail{color:var(--text-muted);display:block}.kit-intro-actions{display:flex;flex-wrap:wrap;gap:8px}.kit-stats{border-top:1px solid var(--text);display:flex;gap:0;margin:0;padding-top:12px}.kit-stat{border-left:1px solid var(--border);min-width:88px;padding:0 20px}.kit-stat:first-child{border-left:none;padding-left:0}.kit-stat dt{color:var(--text-3);font-size:12px;margin-bottom:6px;white-space:nowrap}.kit-stat dd{color:var(--text);font-size:28px;font-weight:500;letter-spacing:-.02em;line-height:1.1;margin:0}.kit-stat dd.is-quiet{color:var(--text-muted)}.kit-stat dd.tone-warning{color:var(--warning)}.kit-stat dd.tone-danger{color:var(--danger)}.kit-status{align-items:center;color:var(--text-2);display:inline-flex;font-size:12px;font-weight:500;gap:6px}.kit-status.tone-success{color:var(--success)}.kit-status.tone-warning{color:var(--warning)}.kit-status.tone-danger{color:var(--danger)}.kit-status.tone-info{color:var(--info)}.kit-status.tone-muted{color:var(--text-muted)}.kit-segmented{background:var(--fill-muted);border-radius:8px;display:inline-flex;gap:2px;padding:3px}.kit-segmented button{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--text-2);cursor:pointer;display:inline-flex;font:inherit;font-size:13px;font-weight:500;gap:6px;min-height:34px;padding:6px 12px}.kit-segmented button:hover{color:var(--text)}.kit-segmented button.is-selected{background:var(--surface);box-shadow:0 0 0 1px var(--border);color:var(--text)}.kit-segmented button:focus-visible{outline:2px solid var(--info);outline:2px solid var(--focus-ring,var(--info));outline-offset:1px}.kit-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.kit-section{margin-top:32px}.kit-section-title{border-top:1px solid var(--text);color:var(--text);font-size:15px;font-weight:600;margin:0 0 12px;padding-top:12px}.kit-empty{color:var(--text-3);font-size:14px;margin:0;padding:16px 18px}.kit-list{--cols:1;width:100%}.kit-list-head,.kit-list-row{grid-gap:16px;align-items:center;display:grid;gap:16px;grid-template-columns:repeat(var(--cols),minmax(0,1fr));grid-template-columns:var(--kit-cols,repeat(var(--cols),minmax(0,1fr)));padding:12px 18px}.kit-list-head{background:var(--surface-2);border-bottom:1px solid var(--border);color:var(--text-3);font-size:12px}.kit-list-row{border-bottom:1px solid var(--border-light);color:var(--text-2);font-size:14px;min-height:56px}.kit-list-row:last-child{border-bottom:none}.kit-list-row.is-clickable{cursor:pointer}.kit-list-row.is-clickable:hover{background:var(--surface-2)}.kit-list .is-right{justify-content:flex-end;text-align:right}.kit-list-primary{color:var(--text);font-weight:500;min-width:0}.kit-list-open{all:unset;cursor:pointer;display:block;min-width:0}.kit-list-open:focus-visible{border-radius:4px;outline:2px solid var(--info);outline-offset:4px}.kit-list-arrow{color:var(--text-muted);display:flex;justify-content:flex-end;width:16px}.kit-meter{background:var(--fill-muted);border-radius:999px;display:block;height:4px;margin-top:6px;max-width:120px;overflow:hidden}.kit-meter>span{background:var(--text);border-radius:inherit;display:block;height:100%}.kit-links{list-style:none;margin:0;padding:0}.kit-links li+li{border-top:1px solid var(--border-light)}.kit-links a,.kit-links button{all:unset;align-items:center;box-sizing:border-box;color:var(--text);cursor:pointer;display:flex;font-size:14px;font-weight:500;justify-content:space-between;min-height:44px;padding:10px 0;width:100%}.kit-links a:hover,.kit-links button:hover{color:var(--text-2)}.kit-links a:focus-visible,.kit-links button:focus-visible{outline:2px solid var(--info);outline-offset:2px}.kit-links svg{color:var(--text-muted)}.kit-confirm-message{color:var(--text-2);font-size:14px;line-height:1.5;margin:0}@media (max-width:900px){.kit-intro{align-items:start;grid-template-columns:1fr}}@media (max-width:767px){.kit-headline,.workspace-ui .kit-headline{font-size:28px}.kit-stats{flex-wrap:wrap;row-gap:16px}.kit-stat{flex:1 1 40%;min-width:0;padding:0 12px}.kit-stat:nth-child(odd){border-left:none;padding-left:0}.kit-stat dd{font-size:24px}.kit-list-head{display:none}.kit-list-row{gap:4px 12px;grid-template-columns:1fr auto;padding:14px 16px}.kit-list-row>[role=cell]{grid-column:1}.kit-list-row>.kit-list-arrow{align-self:center;grid-column:2;grid-row:1/span 9}.kit-list-row>[data-label]:before{color:var(--text-3);content:attr(data-label) " ";font-family:var(--font-sans);font-size:12px;margin-right:6px}.kit-list-row>[data-label]{align-items:baseline;display:flex;font-size:13px;justify-content:flex-start;text-align:left}.kit-list .hide-phone{display:none}.kit-segmented button{min-height:44px}}.kit-inline-link{all:unset;align-items:center;color:var(--warning);cursor:pointer;display:inline-flex;font-weight:600;min-height:32px;min-width:44px}.kit-inline-link:hover{text-decoration:underline}.kit-inline-link:focus-visible{border-radius:4px;outline:2px solid var(--info);outline-offset:2px}.is-quiet-text{color:var(--text-muted)}.overview-location{display:flex;flex-direction:column;gap:2px;min-width:0}.overview-location-name{color:var(--text);font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-floor{color:var(--text);display:block}.overview-lower{grid-gap:0 48px;display:grid;gap:0 48px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.overview-quiet{color:var(--text-3);font-size:14px;margin:0}.overview-request{display:flex;flex-direction:column;gap:2px;min-width:0}.overview-request-name{color:var(--text);font-weight:600}.overview-request-meta{color:var(--text-3);font-size:12px;font-weight:400}@media (max-width:767px){.overview-lower{grid-template-columns:1fr}.overview-floor .kit-meter{display:none}}.kit-timeline{margin:0;padding:12px 18px 16px}.kit-timeline-row{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:120px minmax(0,1fr);min-height:28px}.kit-timeline-axis{min-height:20px}.kit-timeline-name{color:var(--text-2);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-timeline-track{height:28px;position:relative}.kit-timeline-axis .kit-timeline-track{height:20px}.kit-timeline-hour{color:var(--text-muted);font-size:12px;position:absolute;top:0;transform:translateX(-50%)}.kit-timeline-bar{background:#0000;border:1.5px solid var(--text);border-radius:4px;box-sizing:border-box;height:14px;min-width:4px;position:absolute;top:7px}.kit-timeline-bar.is-working{background:var(--text)}.kit-timeline-bar.is-late{border-color:var(--warning)}.kit-timeline-bar.is-done{border-color:var(--border-strong)}.kit-timeline-now{background:var(--warning);bottom:-4px;margin-left:-1px;position:absolute;top:-4px;width:2px}@media (max-width:767px){.kit-timeline{padding:12px 16px}.kit-timeline-row{gap:8px;grid-template-columns:84px minmax(0,1fr)}}.today-grid{grid-gap:48px;align-items:start;display:grid;gap:48px;grid-template-columns:minmax(0,1fr) 320px}.today-side>.kit-section:first-child{margin-top:0}.today-notice{align-items:center;color:var(--text-2);display:flex;font-size:14px;gap:8px;margin:0 0 24px}.today-notice svg{color:var(--warning);flex:none}.today-notice strong{color:var(--text);font-weight:600}.today-error{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:12px;color:var(--danger);display:flex;flex-wrap:wrap;font-size:14px;gap:12px;justify-content:space-between;margin:0 0 24px;padding:12px 18px}.today-roster{border-top:1px solid var(--border);list-style:none;margin:0;padding:0}.today-roster>li+li{border-top:1px solid var(--border-light)}.today-roster-row{grid-gap:16px;align-items:center;display:grid;gap:16px;grid-template-columns:minmax(120px,1.2fr) minmax(140px,1.4fr) minmax(120px,1.2fr) auto;min-height:52px;padding:8px 12px 8px 18px}.today-roster-name{color:var(--text);font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-roster-shift{color:var(--text-2);font-size:13px}.today-roster-dept{color:var(--text-3);font-family:var(--font-sans)}.today-roster .is-late .today-roster-shift{color:var(--warning)}.today-quick-punch{align-items:flex-end;background:var(--surface-2);border-top:1px solid var(--border-light);display:flex;flex-wrap:wrap;gap:12px;padding:12px 18px 16px}.today-quick-punch label{color:var(--text-3);display:flex;flex-direction:column;font-size:12px;gap:4px}.today-quick-punch .input{min-width:140px}.today-section-meta{color:var(--text-3);font-size:12px;font-weight:400;margin-left:8px}.today-hours{--overtime:80%;list-style:none;margin:0;padding:0}.today-hours li{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:140px minmax(0,1fr) 64px;min-height:32px}.today-hours-name{color:var(--text-2);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-hours-track{background:var(--fill-muted);border-radius:999px;height:8px;position:relative}.today-hours-track:after{background:var(--text);bottom:-4px;content:"";left:var(--overtime);position:absolute;top:-4px;width:1px}.today-hours-bar{background:var(--text);border-radius:inherit;display:block;height:100%}.today-hours-bar.is-high{background:var(--warning)}.today-hours-value{color:var(--text);font-size:13px;text-align:right}.today-hours-value.is-high{color:var(--warning)}.today-hours-key{color:var(--text-3);font-size:12px;margin:8px 0 0}@media (max-width:1100px){.today-grid{gap:0;grid-template-columns:1fr}.today-side{margin-top:32px}}@media (max-width:767px){.today-roster-row{gap:4px 12px;grid-template-columns:minmax(0,1fr) auto;padding:12px 16px}.today-roster-row .kit-status,.today-roster-row .today-roster-shift{grid-column:1}.today-roster-row .btn{grid-column:2;grid-row:1/span 3}.today-hours li{grid-template-columns:96px minmax(0,1fr) 56px}.today-quick-punch .input{min-width:0;width:100%}.today-quick-punch label{flex:1 1 140px}.kit-timeline-hour.is-odd{display:none}}.schedule-page-header{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.schedule-page-header .kit-eyebrow{margin-bottom:8px}.schedule-title,.workspace-ui .schedule-title{color:var(--text);font-size:28px;font-weight:650;letter-spacing:-.02em;line-height:1.15;margin:0}.schedule-subtitle{color:var(--text-3);font-size:14px;gap:12px;margin:6px 0 0}.schedule-primary-actions,.schedule-subtitle{align-items:center;display:flex;flex-wrap:wrap}.schedule-primary-actions{gap:8px}.schedule-published{align-items:center;color:var(--success);display:inline-flex;font-size:14px;font-weight:500;gap:6px;min-height:40px;padding:0 12px}.btn[aria-pressed=true]{background:var(--fill-muted);border-color:var(--text)}.schedule-more{position:relative}.schedule-menu-backdrop{inset:0;position:fixed;z-index:40}.schedule-menu{background:var(--surface);border:1px solid var(--border);border-radius:12px;min-width:200px;padding:4px;position:absolute;right:0;top:calc(100% + 6px);z-index:41}.schedule-menu-item{background:none;border:none;border-radius:8px;color:var(--text);cursor:pointer;display:block;font:inherit;font-size:14px;min-height:40px;padding:8px 12px;text-align:left;width:100%}.schedule-menu-item:focus-visible,.schedule-menu-item:hover{background:var(--fill-muted);outline:none}.schedule-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.schedule-date-controls,.schedule-view-controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.schedule-week-label{color:var(--text);font-size:14px;font-weight:500;min-width:132px;text-align:center}.btn-icon{justify-content:center;padding:0;width:40px}.schedule-dept-select{min-height:40px;width:auto}.schedule-fullscreen{background:var(--bg);display:flex;flex-direction:column;inset:0;overflow:auto;position:fixed;z-index:9999}.schedule-fullscreen-bar{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;padding:12px 20px;position:sticky;top:0;z-index:10}.schedule-fullscreen-bar,.schedule-fullscreen-group{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.schedule-fullscreen-group strong{color:var(--text);font-size:15px;font-weight:600}.schedule-fullscreen-legend{padding:12px 20px 0}.shift-legend{align-items:center;color:var(--text-3);display:flex;flex-wrap:wrap;font-size:12px;gap:8px 16px;list-style:none;margin:0 0 12px;padding:0}.shift-legend li{align-items:center;display:inline-flex;gap:6px}.shift-legend-swatch{border-radius:3px;box-sizing:border-box;height:10px;width:20px}.shift-legend-swatch.is-published{background:var(--fill-muted);border:1px solid var(--border-strong)}.shift-legend-swatch.is-working{background:var(--text)}.shift-legend-swatch.is-draft{background:var(--surface);border:1px dashed var(--text-3)}.shift-legend-dept{background:var(--dept);border-radius:2px;height:12px;width:4px}.shift-legend-off{color:var(--text-muted);font-weight:500}.week-grid-loading{color:var(--text-3);margin:0;padding:48px 18px;text-align:center}.week-grid-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.week-grid-summary{align-items:baseline;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;font-size:14px;gap:12px;justify-content:space-between;padding:14px 18px}.week-grid-summary strong{color:var(--text);font-weight:600}.week-grid-summary-meta{color:var(--text-3);font-size:12px;margin-left:8px}.week-grid-overtime{color:var(--warning);font-size:12px}.week-grid-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.week-grid{border-collapse:collapse;font-size:13px;min-width:760px;table-layout:fixed;width:100%}.week-grid-name-col{width:170px}.week-grid-hours-col{width:64px}.week-grid thead th{border-bottom:1px solid var(--border);color:var(--text-3);font-weight:400;padding:10px 6px 8px;text-align:left;vertical-align:bottom}.week-grid thead th.week-grid-team{font-size:12px;padding-left:18px}.week-grid-dow{display:block;font-size:12px}.week-grid-stat{color:var(--warning)}.week-grid-date{color:var(--text);display:block;font-size:18px;font-weight:500;margin-top:2px}.week-grid thead th.is-today{background:var(--surface-2);box-shadow:inset 0 -2px 0 var(--text)}.week-grid thead th.is-today .week-grid-date{font-weight:650}.week-grid .week-grid-hours{padding-right:18px;text-align:right}.week-grid tbody tr+tr>*{border-top:1px solid var(--border-light)}.week-grid-person{color:var(--text);font-weight:600;overflow:hidden;padding:8px 8px 8px 18px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.week-grid tr.is-idle .week-grid-person{color:var(--text-muted);font-weight:400}.week-grid-cell{height:44px;padding:4px;position:relative;vertical-align:top}.week-grid-cell.is-today{background:var(--surface-2)}.week-grid-cell.is-unavailable{background:repeating-linear-gradient(135deg,#0000 0 6px,var(--fill-muted) 6px 7px)}.week-grid-cell.is-drop{background:var(--fill-muted);box-shadow:inset 0 0 0 1px var(--text)}.week-grid-off{color:var(--text-muted);display:block;font-size:12px;font-weight:500;padding:6px 4px}.week-grid td.week-grid-hours{color:var(--text);padding-top:12px;vertical-align:top}.week-grid td.week-grid-hours.is-over{color:var(--warning);font-weight:600}.week-grid .is-quiet{color:var(--text-muted)}.week-grid-empty{color:var(--text-3);padding:48px 18px;text-align:center}.week-grid tfoot td,.week-grid tfoot th{background:var(--surface-2);border-top:1px solid var(--border);color:var(--text-2);font-size:12px;padding:10px 6px;text-align:left;vertical-align:top}.week-grid tfoot th{padding-left:18px}.week-grid-add{align-items:center;background:#0000;border:1px dashed var(--border-strong);border-radius:6px;color:var(--text-3);cursor:pointer;display:flex;justify-content:center;margin-top:2px;min-height:26px;opacity:0;width:100%}.week-grid-add:focus-visible,.week-grid-cell:hover .week-grid-add{opacity:1}.week-grid-add:focus-visible{outline:2px solid var(--info);outline-offset:1px}@media (hover:none){.week-grid-add{min-height:32px;opacity:1}}.shift-chip{--dept:#0000;align-items:center;background:var(--fill-muted);border:1px solid var(--border-strong);border-radius:6px;box-shadow:inset 3px 0 0 var(--dept);color:var(--text);cursor:pointer;display:flex;font:inherit;font-size:12px;gap:4px;justify-content:space-between;margin-bottom:2px;min-height:26px;padding:4px 6px 4px 8px;position:relative;text-align:left;width:100%}.shift-chip.is-working{background:var(--text);border-color:var(--text);color:var(--surface)}.shift-chip.is-draft{background:var(--surface);border-color:var(--text-3);border-style:dashed}.shift-chip.is-selected{outline:2px solid var(--info);outline-offset:1px}.shift-chip.is-dimmed{opacity:.55}.shift-chip:hover{border-color:var(--text)}.shift-chip:focus-visible{outline:2px solid var(--info);outline-offset:1px}.shift-chip-tag{color:inherit;font-size:12px;opacity:.75}@media (max-width:767px){.schedule-title,.workspace-ui .schedule-title{font-size:24px}.schedule-controls{gap:8px}}.day-view-add{align-items:center;background:#0000;border:none;border-top:1px solid var(--border-light);color:var(--text-3);cursor:pointer;display:flex;font:inherit;font-size:14px;font-weight:500;gap:6px;justify-content:center;min-height:48px;width:100%}.day-view-add:focus-visible,.day-view-add:hover{background:var(--fill-muted);color:var(--text);outline:none}.week-grid th,.workspace-ui .week-grid th{background:#0000;letter-spacing:normal;text-transform:none}.week-grid tfoot td,.week-grid tfoot th,.week-grid thead th.is-today,.workspace-ui .week-grid tfoot td,.workspace-ui .week-grid tfoot th,.workspace-ui .week-grid thead th.is-today{background:var(--surface-2)}.week-grid thead th.week-grid-hours,.week-grid thead th.week-grid-team{font-size:12px}.week-grid thead tr{background:#0000}.week-grid tbody th.week-grid-person{border-bottom:none;color:var(--text);font-size:14px;font-weight:600}.week-grid tbody tr.is-idle th.week-grid-person{color:var(--text-muted);font-weight:400}.week-grid tfoot th{color:var(--text-2);font-size:12px;font-weight:500}.approvals-page .kit-segmented{margin-bottom:8px}.approval-section{margin-top:32px}.approval-count{color:var(--warning);font-weight:400}.approval-empty{color:var(--text-3);font-size:14px;margin:0;padding:4px 0}.approval-list{background:var(--surface);border:1px solid var(--border);border-radius:12px;list-style:none;margin:0;padding:0}.approval-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) auto;padding:16px 18px}.approval-row+.approval-row{border-top:1px solid var(--border-light)}.approval-main{display:flex;flex-direction:column;gap:4px;min-width:0}.approval-who{color:var(--text);font-size:15px;font-weight:600}.approval-what{color:var(--text-2);font-size:13px}.approval-quote{color:var(--text-3);font-size:13px;quotes:"“" "”"}.approval-note{margin-top:8px;max-width:420px}.approval-actions{display:flex;flex-direction:column;gap:8px;min-width:132px}.approval-recent{margin-top:16px}.approval-recent h3{color:var(--text-3);font-size:12px;font-weight:500;margin:0 0 8px}.approval-recent ul{list-style:none;margin:0;padding:0}.approval-recent li{grid-gap:12px;align-items:center;border-top:1px solid var(--border-light);display:grid;font-size:14px;gap:12px;grid-template-columns:minmax(120px,1fr) minmax(0,1fr) auto;min-height:40px}.approval-recent .approval-who{font-size:14px;font-weight:500}.correction-punches{background:var(--surface-2);border:1px solid var(--border-light);border-radius:8px;margin:12px 0 4px;padding:12px}.correction-punches h3{color:var(--text-3);font-size:12px;font-weight:500;margin:0 0 8px}.correction-punches ul{list-style:none;margin:0 0 8px;padding:0}.correction-punches li{align-items:center;display:flex;gap:8px;min-height:40px}.correction-punches li+li{border-top:1px solid var(--border-light)}.correction-punch-action{color:var(--text);flex:1 1;font-size:14px}.correction-punch-time{color:var(--text-2);min-width:72px;text-align:right}.correction-punches input[type=time]{width:130px}.correction-add{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.correction-add select{flex:1 1 140px;width:auto}@media (max-width:767px){.approval-row{grid-template-columns:1fr;padding:14px 16px}.approval-actions{flex-direction:row;min-width:0}.approval-actions .btn{flex:1 1}.approval-note{max-width:none}.approval-recent li{grid-template-columns:1fr auto}.approval-recent li .approval-what{grid-column:1;grid-row:2}}.kit-segmented{max-width:100%;overflow-x:auto;scrollbar-width:none}.kit-segmented button{flex:none;white-space:nowrap}.confirmation-top{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px 32px;justify-content:space-between}.confirmation-top .kit-intro{margin-bottom:16px}.confirmation-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.confirmation-week{align-items:center;display:flex;gap:8px}.confirmation-week>span{color:var(--text);font-size:14px;min-width:120px;text-align:center}.confirmation-progress{background:var(--fill-muted);border-radius:999px;height:6px;margin:0 0 24px;overflow:hidden}.confirmation-progress>span{background:var(--success);border-radius:inherit;display:block;height:100%}.confirmation-empty{padding-left:0}.confirmation-columns{grid-gap:16px;align-items:start;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.confirmation-card-title{border-bottom:1px solid var(--border);color:var(--text);font-size:15px;font-weight:600;margin:0;padding:14px 18px}.confirmation-card-title .num{color:var(--text-3);font-weight:400;margin-left:6px}.confirmation-list{list-style:none;margin:0;padding:0}.confirmation-list li{align-items:center;display:flex;gap:12px;justify-content:space-between;min-height:56px;padding:12px 18px}.confirmation-list li+li{border-top:1px solid var(--border-light)}.confirmation-person{display:flex;flex-direction:column;gap:2px;min-width:0}.confirmation-name{color:var(--text);font-size:14px;font-weight:600;overflow-wrap:anywhere}.confirmation-detail{color:var(--text-3);font-size:12px}.confirmation-warning{align-items:center;color:var(--warning);display:inline-flex;font-size:12px;gap:4px}@media (max-width:900px){.confirmation-columns{grid-template-columns:1fr}}@media (max-width:767px){.confirmation-list li{align-items:flex-start;padding:12px 16px}}.reports-controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.reports-custom{display:flex;flex-wrap:wrap;gap:12px;margin:-16px 0 24px}.reports-custom label{align-items:center;color:var(--text-3);display:flex;font-size:13px;gap:8px}.reports-custom .input{width:auto}.reports-note{color:var(--warning);font-size:13px;margin:-16px 0 24px}.reports-grid{grid-gap:48px;align-items:start;display:grid;gap:48px;grid-template-columns:minmax(0,1fr) 340px}.reports-meta{color:var(--text-3);font-size:12px;font-weight:400;margin-left:6px}.reports-people{border-collapse:collapse;font-size:14px;width:100%}.reports-people thead tr{background:var(--surface-2)}.reports-people th,.workspace-ui .reports-people th{border-bottom:1px solid var(--border);color:var(--text-3);font-size:12px;font-weight:400;letter-spacing:normal;padding:10px 18px;text-align:left;text-transform:none;white-space:nowrap}.reports-people tbody th{border-bottom:none;color:var(--text);display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:2px;white-space:normal}.reports-people td{color:var(--text-2);padding:10px 18px;vertical-align:middle}.reports-people tbody tr+tr>*{border-top:1px solid var(--border-light)}.reports-people .is-right{text-align:right}.reports-people td.is-over{color:var(--warning);font-weight:600}.reports-people .reports-bar{min-width:120px}.reports-bar{background:var(--fill-muted);border-radius:999px;display:block;height:8px;position:relative}.reports-people .reports-bar:after{background:var(--text);bottom:-4px;content:"";left:var(--overtime);position:absolute;top:-4px;width:1px}.reports-bar>span{background:var(--text);border-radius:inherit;display:block;height:100%}.reports-bar>span.is-over{background:var(--warning)}.reports-subtitle{color:var(--text-3);font-size:12px;font-weight:500;margin:12px 0 4px}.reports-quiet{color:var(--text-3);font-size:14px;margin:0}.reports-rows{list-style:none;margin:0;padding:0}.reports-rows li{align-items:center;color:var(--text);display:flex;font-size:14px;gap:12px;justify-content:space-between;min-height:36px}.reports-rows li+li{border-top:1px solid var(--border-light)}.reports-rows .is-warning{color:var(--warning)}.reports-dept{flex-wrap:wrap;padding:6px 0}.reports-dept .reports-bar{flex:1 1 100%;height:4px}.reports-dept-swatch{background:var(--dept);border-radius:2px;display:inline-block;height:12px;margin-right:8px;vertical-align:-1px;width:4px}.reports-chart{margin:0}.reports-chart-bars{align-items:flex-end;display:flex;gap:6px;height:150px;position:relative}.reports-chart-col{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:4px;height:100%}.reports-chart-value{color:var(--text-3);font-size:12px;min-height:16px}.reports-chart-track{align-items:flex-end;display:flex;flex:1 1;width:100%}.reports-chart-track>span{background:var(--border-strong);border-radius:3px 3px 0 0;display:block;width:100%}.reports-chart-col.is-latest .reports-chart-track>span{background:var(--text)}.reports-chart-col.is-latest .reports-chart-value{color:var(--text)}.reports-chart-label{color:var(--text-muted);font-size:12px;white-space:nowrap}.reports-chart-caption{color:var(--text-3);font-size:13px;margin-top:8px}.reports-chart-caption .is-up{color:var(--warning)}@media (max-width:1100px){.reports-grid{gap:32px;grid-template-columns:1fr}}@media (max-width:767px){.reports-people .hide-phone{display:none}.reports-people td,.reports-people th{padding:10px 12px}.reports-chart-label{font-size:12px;writing-mode:horizontal-tb}.reports-chart-col:nth-child(odd):not(.is-latest) .reports-chart-label{visibility:hidden}}.people-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.people-search{flex:1 1 240px;max-width:360px}.people-select{align-items:center;color:var(--text-3);display:flex;font-size:13px;gap:8px}.people-select .input{width:auto}.people-check{align-items:center;color:var(--text-2);cursor:pointer;display:inline-flex;font-size:14px;gap:8px;min-height:40px}.people-check input{accent-color:var(--text);height:18px;width:18px}.people-list{list-style:none;margin:0;padding:0}.people-list>li{grid-gap:16px;align-items:center;display:grid;gap:16px;grid-template-columns:36px minmax(140px,1.2fr) minmax(160px,1.6fr) 96px auto;min-height:64px;padding:12px 12px 12px 18px}.people-list>li+li{border-top:1px solid var(--border-light)}.people-list>li.is-inactive .people-name{color:var(--text-muted)}.people-contact,.people-who{display:flex;flex-direction:column;gap:2px;min-width:0}.people-name{color:var(--text);font-size:14px;font-weight:600}.people-role{color:var(--text-3);font-size:12px}.people-contact{color:var(--text-2);font-size:13px}.people-contact>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.people-contact .num{color:var(--text-3);font-size:12px}.people-pay{color:var(--text-2);font-size:13px}.people-actions{align-items:center;display:flex;gap:2px;justify-content:flex-end}.people-menu-wrap{position:relative}.people-empty{padding:24px 18px}.people-empty p{color:var(--text-2);margin:0 0 12px}.people-pin-line{margin:16px 0 0}@media (max-width:900px){.people-list>li{grid-template-columns:36px minmax(0,1fr) auto}.people-contact{grid-column:2;grid-row:2}.people-pay{grid-column:2;grid-row:3}.people-actions{grid-column:3;grid-row:1/span 3}}@media (max-width:767px){.people-search{max-width:none}.people-list>li{gap:4px 12px;padding:12px 8px 12px 16px}}.reports-controls{justify-content:space-between}.reports-controls,.reports-custom{margin:-8px 0 24px}.reports-people tbody th,.workspace-ui .reports-people tbody th{border-bottom:none;color:var(--text);font-size:14px;font-weight:600;letter-spacing:normal;padding:10px 18px;text-transform:none}.people-list>li{grid-template-columns:36px minmax(140px,1.2fr) minmax(160px,1.6fr) 96px 150px}@media (max-width:900px){.people-list>li{grid-template-columns:36px minmax(0,1fr) auto}}.reports-people tbody tr+tr>th,.workspace-ui .reports-people tbody tr+tr>th{border-top:1px solid var(--border-light)}.locations-create{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:16px 18px}.locations-create label{color:var(--text-3);display:flex;flex:1 1 220px;flex-direction:column;font-size:13px;gap:6px}.locations-error{padding:16px 18px}.locations-error p{margin:0 0 12px}.locations-card{margin-bottom:16px}.locations-card.is-inactive .locations-who h2{color:var(--text-muted)}.locations-head{grid-gap:16px;align-items:center;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(140px,auto) auto;padding:16px 18px}.locations-who h2{color:var(--text);font-size:16px;font-weight:600;margin:0}.locations-meta{color:var(--text-3);font-size:12px}.locations-kiosk{color:var(--text-2);display:flex;flex-direction:column;font-size:13px;gap:2px}.locations-label{color:var(--text-3);font-size:12px}.locations-actions{align-items:center;display:flex;gap:4px}.locations-edit{align-items:flex-end;background:var(--surface-2);border-top:1px solid var(--border-light);display:flex;flex-wrap:wrap;gap:12px;padding:16px 18px}.locations-edit label{color:var(--text-3);display:flex;flex:1 1 200px;flex-direction:column;font-size:13px;gap:6px}.locations-edit-actions{display:flex;gap:8px}@media (max-width:767px){.locations-head{grid-template-columns:minmax(0,1fr) auto}.locations-kiosk{grid-column:1;grid-row:2}.locations-actions{grid-column:2;grid-row:1/span 2}}.locations-card .kiosk-device-panel{background:#0000;border:0;border-radius:0;border-top:1px solid var(--border-light);margin:0;padding:12px 18px 16px}.locations-card .kiosk-device-panel>button[aria-expanded]{background:#0000;border:0;color:var(--text-2);font-weight:500;min-height:40px;padding:0}.locations-card .kiosk-device-panel>button[aria-expanded]:after{color:var(--text-muted);content:" ▾"}.locations-card .kiosk-device-panel>button[aria-expanded=true]:after{content:" ▴"}@media (max-width:768px),(pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=button]):not([type=submit]),select,textarea{font-size:max(16px,1em)!important}}.overview-clear-compact{margin-bottom:12px;padding:12px 0}.overview-operating-figures{margin-top:28px}.device-notice-disclosure{color:var(--text-3);font-size:13px;margin-bottom:16px}.device-notice-disclosure>summary{align-items:center;cursor:pointer;display:flex;gap:8px;min-height:44px;width:fit-content}.device-notice-disclosure>summary:after{content:"+";font-size:18px;margin-left:4px}.device-notice-disclosure[open]>summary:after{content:"−"}.device-notice-disclosure .device-notice{margin-bottom:0}.schedule-mobile-sections{display:none}.schedule-tab.active{border-bottom-color:var(--brand)}.schedule-tab-badge,.schedule-tab.active{background:var(--brand-soft);color:var(--brand)}.schedule-view-controls{min-width:0}.schedule-view-controls [aria-pressed=true]{box-shadow:0 0 0 1px var(--brand-border)}.employee-portal .portal-toolbar-button{color:var(--text-2)!important;min-height:44px;min-width:44px}.employee-portal .ep-segments button[aria-pressed=true]{background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand-border);color:var(--brand)}.portal-profile-button{height:44px!important;width:44px!important}.portal-nav-button:focus-visible,[role=button]:focus-visible,summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.vendor-catalog-toolbar{margin-bottom:14px;scroll-margin-top:20px}.vendor-catalog-toolbar .vendor-catalog-tools{gap:12px;margin-bottom:4px}.vendor-filter-row{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:space-between}.vendor-filter-row .page-sub{font-size:12px;margin:0}.vendor-catalog-filters{flex:1 1;min-width:180px}.vendor-catalog-filters>summary{align-content:center;color:var(--text-2);cursor:pointer;font-size:13px;min-height:44px}.vendor-catalog-filters .workspace-filters{margin-bottom:8px;padding:12px}.vendor-filter-active{color:var(--brand);font-weight:600}@media (max-width:768px){.schedule-tab-bar{display:none}.schedule-mobile-sections{align-items:center;color:var(--text-3);display:flex;font-size:12px;gap:12px;justify-content:space-between;margin-bottom:16px}.schedule-mobile-sections select{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font:inherit;font-size:16px;max-width:70%;min-height:44px;padding:8px 12px}.schedule-page-header{gap:8px!important;margin-bottom:12px!important}.schedule-page-header p{margin-bottom:4px}.schedule-primary-actions{gap:6px!important;width:100%}.schedule-primary-actions>button{flex:1 1;padding:8px 10px!important}.schedule-primary-actions .schedule-desktop-action{display:none}.schedule-primary-actions.has-drafts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-primary-actions.has-drafts>button:first-child{order:1}.schedule-primary-actions.has-drafts .schedule-publish-action{order:2}.schedule-primary-actions.has-drafts [aria-controls=schedule-view-controls]{order:3}.schedule-primary-actions.has-drafts>div:last-child{order:4}.schedule-primary-actions.has-drafts>div:last-child>button{width:100%}.schedule-controls{margin-bottom:12px!important;padding:8px!important}.schedule-date-controls{flex-wrap:nowrap!important;gap:4px!important;width:100%}.schedule-date-controls>span{flex:1 1;font-size:12px!important;min-width:0!important;padding:0!important}.schedule-date-controls>button{flex-shrink:0}.schedule-date-controls>button:last-child{margin-left:0!important;padding:5px 8px!important}.schedule-view-controls{border-top:1px solid var(--border);gap:8px!important;padding-top:10px;width:100%}.schedule-view-controls>div:last-child{margin:6px 0 0!important}.device-notice-disclosure{margin-bottom:8px}.vendor-workspace .workflow-steps{display:flex;gap:10px 18px}.vendor-workspace .workflow-steps li{font-size:12px}.vendor-catalog-toolbar .vendor-search{flex-basis:100%}.vendor-catalog-toolbar .vendor-catalog-tools{gap:0}.vendor-filter-row{gap:0 8px}}@media print{.device-notice-disclosure,.schedule-mobile-sections{display:none}}.mobile-shift-card[aria-pressed=true]{background:var(--brand-soft);outline:2px solid var(--brand);outline-offset:1px}.kiosk-device-card,.kiosk-device-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;color:var(--text);margin:12px 0;padding:16px}.kiosk-device-card a,.kiosk-device-card button,.kiosk-device-panel button,.kiosk-device-panel select{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);cursor:pointer;font:inherit;max-width:100%;min-height:44px;padding:8px 12px}.kiosk-device-card button:disabled,.kiosk-device-panel button:disabled{cursor:default;opacity:.55}.kiosk-device-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.kiosk-device-row{border-top:1px solid var(--border);overflow-wrap:anywhere;padding:12px 0}.kiosk-device-card p,.kiosk-device-panel p{line-height:1.5;margin:8px 0}.kiosk-device-panel output{display:block;font-family:monospace;font-size:1.35rem;letter-spacing:.08em;padding:12px 0}.kiosk-device-panel h2,.kiosk-device-panel h3{margin:10px 0}.kiosk-pair-screen{margin:8vh auto;max-width:32rem;padding:12px}.kiosk-device-card{grid-gap:12px;display:grid;gap:12px}.kiosk-device-card label{grid-gap:6px;display:grid;gap:6px}.kiosk-device-card input,.kiosk-device-card select{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-sizing:border-box;color:var(--text);font:inherit;font-size:16px;min-height:44px;padding:8px;width:100%}.legal-shell{background:#f5f5f4;background:var(--bg,#f5f5f4);color:#172b35;color:var(--text,#172b35);min-height:100vh;padding:40px 20px}.legal-card{background:#fff;background:var(--surface,#fff);border:1px solid #ddd;border:1px solid var(--border,#ddd);border-radius:16px;line-height:1.65;margin:0 auto;max-width:820px;overflow-wrap:anywhere;padding:32px}.legal-card h1{font-size:clamp(24px,4vw,32px);line-height:1.2;margin:28px 0 14px}.legal-card h2{font-size:20px;margin:24px 0 12px}.legal-card p{margin:12px 0}.legal-card a{color:#226146;color:var(--brand-dark,#226146);text-decoration:underline;text-underline-offset:3px}.legal-muted{color:#4b5563;color:var(--text-2,#4b5563);font-size:14px}.legal-document{border:1px solid #ddd;border:1px solid var(--border,#ddd);border-radius:10px;margin:12px 0}.legal-document summary{cursor:pointer;font-weight:700;min-height:48px;padding:16px}.legal-document summary span{color:#4b5563;color:var(--text-2,#4b5563);display:block;font-size:13px;font-weight:400;margin-left:18px}.legal-document-body{padding:0 20px 20px}.legal-document-body h3{font-size:17px;margin:24px 0 8px}.legal-document-body p{font-size:15px}.legal-checks{border:0;margin:24px 0 12px;padding:0}.legal-checks legend{font-weight:700;margin-bottom:8px}.legal-checks label{align-items:flex-start;cursor:pointer;display:flex;gap:12px;padding:12px 0}.legal-checks input{accent-color:#226146;accent-color:var(--brand,#226146);flex-shrink:0;height:20px;margin-top:3px;width:20px}.legal-help{background:#f6f7f8;background:var(--bg-secondary,#f6f7f8);border:1px solid #ddd;border:1px solid var(--border,#ddd);border-radius:10px;font-size:14px;margin:24px 0;padding:18px}.legal-actions{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-top:20px}.legal-error{background:#fff1f2;background:var(--danger-bg,#fff1f2);border-radius:8px;color:#a11230;color:var(--danger,#a11230);padding:14px}.legal-error button{margin:8px}.legal-receipts{padding-left:20px}.legal-receipts li{margin:12px 0}.legal-receipts span{color:#4b5563;color:var(--text-2,#4b5563);display:block;font-size:13px}.legal-record{border-top:1px solid #ddd;border-top:1px solid var(--border,#ddd);padding:20px 0}.legal-record summary{cursor:pointer;padding:8px 0}.legal-record form{grid-gap:12px;display:grid;gap:12px;max-width:430px}.legal-record label{grid-gap:6px;display:grid;gap:6px}.legal-record .legal-hold{align-items:center;display:flex;gap:10px}.legal-record input[type=date],.legal-search{background:var(--surface);border:1px solid #ddd;border:1px solid var(--border,#ddd);border-radius:8px;box-sizing:border-box;color:var(--text);font:inherit;padding:10px;width:100%}.legal-record-status{color:var(--text-2);display:flex;flex-wrap:wrap;font-size:14px;gap:12px}@media(max-width:600px){.legal-shell{padding:16px 10px}.legal-card{padding:20px 16px}.legal-document-body{padding:0 14px 14px}.legal-card form>.btn,.legal-card>.btn{width:100%}}
/*# sourceMappingURL=main.6cab99b2.css.map*/