:root{--black:#0f1011;--black-soft:#1c1d20;--bg:#f1f1f0;--bg-2:#ebebea;--surface:#ffffff;--surface-2:#fafafa;--surface-hover:#f5f5f5;--fg:#1a1a1a;--fg-strong:#0a0a0a;--muted:#6b6b6b;--muted-2:#9a9a9a;--border:rgba(0,0,0,0.08);--border-strong:rgba(0,0,0,0.14);--accent:#5ba3f5;--accent-hover:#87b8ff;--accent-text:#0f1011;--accent-blue:#5ba3f5;--brand:#1f5fab;--brand-hover:#184a85;--sidebar-bg:rgba(255,255,255,0.55);--sidebar-fg:var(--fg);--sidebar-fg-strong:var(--fg-strong);--sidebar-muted:var(--muted);--sidebar-border:var(--border);--accent-peach:#ffb69e;--accent-mint:#b9e6c8;--accent-lavender:#d6c4f5;--success:#28a745;--warning:#f59e0b;--danger:#ef4444;--info:var(--accent-blue);--card-peach:#fff1ea;--card-blue:#eaf2ff;--card-mint:#e8f7ee;--card-lavender:#f2ebff;--card-yellow:#fff5d6;--card-pink:#ffeaf2;--radius-sm:8px;--radius:16px;--radius-lg:28px;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(15,16,17,0.04);--shadow:0 6px 24px rgba(15,16,17,0.06);--shadow-lg:0 20px 48px rgba(15,16,17,0.10);--ok:#1f8a4c;--ok-bg:rgba(31,138,76,0.10);--warn:#b97800;--warn-bg:rgba(185,120,0,0.10);--crit:#c43838;--crit-bg:rgba(196,56,56,0.08);--info-strong:#1f5fab;--info-bg:var(--card-blue);--accent-navy:#1e3a8a;--radius-md:12px}:root[data-theme=dark]{--bg:#0f1113;--bg-2:#15181b;--surface:#1a1d21;--surface-2:#20242a;--surface-hover:#262b31;--fg:#e6e8ea;--fg-strong:#f5f6f7;--muted:#9aa0a6;--muted-2:#6b7178;--border:rgba(255,255,255,0.10);--border-strong:rgba(255,255,255,0.16);--sidebar-bg:rgba(21,25,29,0.78);--sidebar-fg:var(--fg);--sidebar-fg-strong:var(--fg-strong);--sidebar-muted:var(--muted);--sidebar-border:var(--border);--card-peach:rgba(255,182,158,0.14);--card-blue:rgba(91,163,245,0.16);--card-mint:rgba(185,230,200,0.14);--card-lavender:rgba(214,196,245,0.14);--card-yellow:rgba(255,213,100,0.14);--card-pink:rgba(255,170,200,0.14);--ok-bg:rgba(31,138,76,0.18);--warn-bg:rgba(185,120,0,0.20);--crit-bg:rgba(196,56,56,0.18);--info-bg:rgba(91,163,245,0.16);--accent-navy:#6f9ae8;--ok:#4ccb86;--warn:#e0a23a;--crit:#ef7a7a;--info-strong:#6fa8f0;--success:#4ccb86;--warning:#e0a23a;--danger:#ef7a7a;--shadow-sm:0 1px 2px rgba(0,0,0,0.4);--shadow:0 6px 24px rgba(0,0,0,0.5);--shadow-lg:0 20px 48px rgba(0,0,0,0.6)}.app-shell[data-accent=aluminum],.app-shell[data-accent=beige],.app-shell[data-accent=blueprint],.app-shell[data-accent=graphite],.app-shell[data-accent=indigo],.app-shell[data-accent=lime],.app-shell[data-accent=rust],.app-shell[data-accent=signal],.app-shell[data-accent=vivid]{background:var(--bg)}:root:not([data-theme=dark]) .app-shell[data-accent=indigo]{--bg:#eeecf3;--bg-2:#e6e3ec;--surface:#ffffff;--surface-2:#f6f4f9;--surface-hover:#efecf4;--fg:#22223b;--fg-strong:#16162a;--muted:#6f6a78;--muted-2:#9a8c98;--border:rgba(34,34,59,0.12);--border-strong:rgba(34,34,59,0.20);--brand:#4a4e69;--brand-hover:#3a3e54;--accent:#f2a900;--accent-hover:#ffc233;--accent-text:#22223b;--accent-blue:#4a4e69;--card-blue:#ebeaf1;--accent-navy:#22223b;--info-strong:#4a4e69;--sidebar-bg:#22223b;--sidebar-fg:#eceaf3;--sidebar-fg-strong:#ffffff;--sidebar-muted:#9a8c98;--sidebar-border:rgba(255,255,255,0.10)}:root[data-theme=dark] .app-shell[data-accent=indigo]{--bg:#13131c;--bg-2:#181824;--surface:#1d1d2b;--surface-2:#232333;--surface-hover:#2a2a3c;--brand:#5d6280;--brand-hover:#6d7290;--accent:#f2b733;--accent-blue:#9a9fc0;--accent-hover:#b0b4cf;--card-blue:rgba(74,78,105,0.32);--accent-navy:#c3c5d6;--info-strong:#9a9fc0;--sidebar-bg:#101019}:root:not([data-theme=dark]) .app-shell[data-accent=graphite]{--bg:#ecebe9;--bg-2:#e3e1de;--surface:#ffffff;--surface-2:#f6f5f3;--surface-hover:#ecebe8;--fg:#16212a;--fg-strong:#0e171e;--muted:#6b6b6b;--muted-2:#8a8480;--border:rgba(22,33,42,0.12);--border-strong:rgba(22,33,42,0.20);--brand:#2b3942;--brand-hover:#1f2a31;--accent:#51606b;--accent-hover:#6a7a86;--accent-text:#ffffff;--accent-blue:#51606b;--card-blue:#e9ebec;--accent-navy:#16212a;--info-strong:#2b3942;--sidebar-bg:#16212a;--sidebar-fg:#e3e7ea;--sidebar-fg-strong:#ffffff;--sidebar-muted:#94a0a6;--sidebar-border:rgba(255,255,255,0.10)}:root[data-theme=dark] .app-shell[data-accent=graphite]{--bg:#0e151b;--bg-2:#121b22;--surface:#16212a;--surface-2:#1c2832;--surface-hover:#22303b;--brand:#3c4d58;--brand-hover:#485b67;--accent:#9aa7b0;--accent-blue:#9aa7b0;--accent-hover:#b3bdc4;--card-blue:rgba(128,118,114,0.22);--accent-navy:#c8d0d5;--info-strong:#9aa7b0;--sidebar-bg:#0b1015}:root:not([data-theme=dark]) .app-shell[data-accent=vivid]{--bg:#eaf1f9;--bg-2:#e1ebf5;--surface:#ffffff;--surface-2:#f5f8fc;--surface-hover:#eaf1f9;--fg:#2b2f36;--fg-strong:#1a1d22;--muted:#5f6670;--muted-2:#9aa0a8;--border:rgba(43,47,54,0.12);--border-strong:rgba(43,47,54,0.20);--brand:#2f7fd4;--brand-hover:#2569b3;--accent:#1aa888;--accent-hover:#2bbf9e;--accent-text:#ffffff;--accent-blue:#2f7fd4;--card-blue:#e0eefb;--accent-navy:#1e466f;--info-strong:#2f7fd4;--sidebar-bg:#2a2d33;--sidebar-fg:#e8eaed;--sidebar-fg-strong:#ffffff;--sidebar-muted:#9aa0a8;--sidebar-border:rgba(255,255,255,0.10)}:root[data-theme=dark] .app-shell[data-accent=vivid]{--bg:#101216;--bg-2:#15181d;--surface:#1a1e24;--surface-2:#20252c;--surface-hover:#272d35;--brand:#3f8ee0;--brand-hover:#5aa0e8;--accent:#4fd6b5;--accent-blue:#6fb0f0;--accent-hover:#8cc0f4;--card-blue:rgba(77,144,232,0.20);--accent-navy:#8cc0f4;--info-strong:#6fb0f0;--sidebar-bg:#0d0f12}:root:not([data-theme=dark]) .app-shell[data-accent=rust]{--bg:#f4ece3;--bg-2:#ece0d4;--surface:#ffffff;--surface-2:#faf4ee;--surface-hover:#f3e9e0;--fg:#1f2326;--fg-strong:#14171a;--muted:#6e6258;--muted-2:#9a8a7c;--border:rgba(31,35,38,0.12);--border-strong:rgba(31,35,38,0.20);--brand:#a04b2b;--brand-hover:#863c20;--accent:#a04b2b;--accent-hover:#c06848;--accent-text:#ffffff;--accent-blue:#a04b2b;--card-blue:#f4e3d8;--accent-navy:#1f2326;--info-strong:#a04b2b;--sidebar-bg:#1f2326;--sidebar-fg:#ece3da;--sidebar-fg-strong:#ffffff;--sidebar-muted:#b6a89a;--sidebar-border:rgba(255,255,255,0.10)}:root[data-theme=dark] .app-shell[data-accent=rust]{--bg:#161210;--bg-2:#1d1815;--surface:#221c18;--surface-2:#2a221d;--surface-hover:#322822;--brand:#b5613f;--brand-hover:#c47350;--accent:#c87a55;--accent-blue:#c87a55;--accent-hover:#d8906f;--card-blue:rgba(160,75,43,0.22);--accent-navy:#e0c8b8;--info-strong:#d08a63;--sidebar-bg:#120f0d}:root:not([data-theme=dark]) .app-shell[data-accent=blueprint]{--bg:#eef1f5;--bg-2:#e4e9ef;--surface:#ffffff;--surface-2:#f5f7fa;--surface-hover:#eaeef3;--fg:#1c2936;--fg-strong:#111b25;--muted:#5f7585;--muted-2:#8a9aa8;--border:rgba(28,41,54,0.12);--border-strong:rgba(28,41,54,0.20);--brand:#344a5c;--brand-hover:#263644;--accent:#344a5c;--accent-hover:#4a6478;--accent-text:#ffffff;--accent-blue:#344a5c;--card-blue:#e3e9f0;--accent-navy:#1c2936;--info-strong:#344a5c;--sidebar-bg:#1c2936;--sidebar-fg:#dfe6ed;--sidebar-fg-strong:#ffffff;--sidebar-muted:#8fa3b3;--sidebar-border:rgba(255,255,255,0.10)}:root[data-theme=dark] .app-shell[data-accent=blueprint]{--bg:#0d141b;--bg-2:#111a23;--surface:#15202b;--surface-2:#1b2833;--surface-hover:#22303d;--brand:#4a6478;--brand-hover:#5a7589;--accent:#6e8aa0;--accent-blue:#6e8aa0;--accent-hover:#87a0b4;--card-blue:rgba(52,74,92,0.30);--accent-navy:#aab7c4;--info-strong:#8fa3b3;--sidebar-bg:#0a1017}:root:not([data-theme=dark]) .app-shell[data-accent=aluminum]{--bg:#eeeef1;--bg-2:#e5e5e9;--surface:#ffffff;--surface-2:#f6f6f9;--surface-hover:#ececf0;--fg:#303035;--fg-strong:#1d1d21;--muted:#60656e;--muted-2:#9aa1ae;--border:rgba(48,48,53,0.12);--border-strong:rgba(48,48,53,0.20);--brand:#3b3e45;--brand-hover:#2c2e33;--accent:#60656e;--accent-hover:#7a808b;--accent-text:#ffffff;--accent-blue:#60656e;--card-blue:#e9eaee;--accent-navy:#303035;--info-strong:#4a4e57;--sidebar-bg:#303035;--sidebar-fg:#e2e3e7;--sidebar-fg-strong:#ffffff;--sidebar-muted:#9aa1ae;--sidebar-border:rgba(255,255,255,0.10)}:root[data-theme=dark] .app-shell[data-accent=aluminum]{--bg:#141416;--bg-2:#1a1a1d;--surface:#1f1f22;--surface-2:#26262a;--surface-hover:#2d2d32;--brand:#5a5e68;--brand-hover:#6a6e78;--accent:#9aa1ae;--accent-blue:#9aa1ae;--accent-hover:#b3b9c2;--card-blue:rgba(96,101,110,0.25);--accent-navy:#d0d5de;--info-strong:#9aa1ae;--sidebar-bg:#101012}:root:not([data-theme=dark]) .app-shell[data-accent=signal]{--bg:#f1f1f2;--bg-2:#e7e7e9;--surface:#ffffff;--surface-2:#f7f7f8;--surface-hover:#ededee;--fg:#1b1b20;--fg-strong:#0e0e12;--muted:#6e7582;--muted-2:#9a9fa8;--border:rgba(27,27,32,0.12);--border-strong:rgba(27,27,32,0.20);--brand:#ff682a;--brand-hover:#e2551c;--accent:#ff682a;--accent-hover:#ff8552;--accent-text:#1b1b20;--accent-blue:#ff682a;--card-blue:#ffe7dc;--accent-navy:#1b1b20;--info-strong:#c44e1a;--sidebar-bg:#1b1b20;--sidebar-fg:#e6e6e8;--sidebar-fg-strong:#ffffff;--sidebar-muted:#8e94a0;--sidebar-border:rgba(255,255,255,0.10)}:root[data-theme=dark] .app-shell[data-accent=signal]{--bg:#121214;--bg-2:#18181b;--surface:#1d1d21;--surface-2:#242429;--surface-hover:#2b2b31;--brand:#ff682a;--brand-hover:#ff8552;--accent:#ff7d44;--accent-blue:#ff8552;--accent-hover:#ff9d6e;--card-blue:rgba(255,104,42,0.20);--accent-navy:#ff9d6e;--info-strong:#ff8552;--sidebar-bg:#0e0e10}:root:not([data-theme=dark]) .app-shell[data-accent=lime]{--bg:#f2f3ec;--bg-2:#e9eae0;--surface:#ffffff;--surface-2:#f6f7f0;--surface-hover:#eceee3;--fg:#1b1e22;--fg-strong:#101216;--muted:#5d636b;--muted-2:#8a9099;--border:rgba(27,30,34,0.12);--border-strong:rgba(27,30,34,0.20);--brand:#40454e;--brand-hover:#2e323a;--accent:#b8c421;--accent-hover:#cdd93a;--accent-text:#1b1e22;--accent-blue:#7e8a14;--card-blue:#eef0d8;--accent-navy:#1b1e22;--info-strong:#5f6a12;--sidebar-bg:#1b1e22;--sidebar-fg:#eceee3;--sidebar-fg-strong:#ffffff;--sidebar-muted:#8a9099;--sidebar-border:rgba(255,255,255,0.10)}:root[data-theme=dark] .app-shell[data-accent=lime]{--bg:#131410;--bg-2:#181a14;--surface:#1d1f18;--surface-2:#24271e;--surface-hover:#2b2e24;--brand:#565c66;--brand-hover:#656c77;--accent:#cdd93a;--accent-blue:#c3cf57;--accent-hover:#d8e25c;--card-blue:rgba(184,196,33,0.18);--accent-navy:#d2dd6a;--info-strong:#c3cf57;--sidebar-bg:#0f1009}:root:not([data-theme=dark]) .app-shell[data-accent=beige]{--bg:#f4efe8;--bg-2:#ece4d9;--surface:#ffffff;--surface-2:#faf6f0;--surface-hover:#f2ebe1;--fg:#2d2925;--fg-strong:#1c1916;--muted:#6e655a;--muted-2:#9a8d7e;--border:rgba(45,41,37,0.12);--border-strong:rgba(45,41,37,0.20);--brand:#6b5d4d;--brand-hover:#564a3d;--accent:#8a7c6a;--accent-hover:#a3957f;--accent-text:#ffffff;--accent-blue:#6b5d4d;--card-blue:#efe7da;--accent-navy:#2d2925;--info-strong:#6b5d4d;--sidebar-bg:#2d2925;--sidebar-fg:#ece4d9;--sidebar-fg-strong:#ffffff;--sidebar-muted:#b0a392;--sidebar-border:rgba(255,255,255,0.10)}:root[data-theme=dark] .app-shell[data-accent=beige]{--bg:#16130f;--bg-2:#1c1813;--surface:#211c16;--surface-2:#29231b;--surface-hover:#312a21;--brand:#8a7c6a;--brand-hover:#9a8c79;--accent:#b9ac9f;--accent-blue:#b9ac9f;--accent-hover:#cabfb3;--card-blue:rgba(185,172,159,0.20);--accent-navy:#e6ddd3;--info-strong:#b9ac9f;--sidebar-bg:#120f0c}:root[data-theme=dark] body{background:var(--bg)}:root[data-theme=dark] .app-sidebar{background:var(--sidebar-bg);border-right-color:var(--sidebar-border)}:root[data-theme=dark] .role-badge[data-tint=active],:root[data-theme=dark] .role-badge[data-tint=approved],:root[data-theme=dark] .role-badge[data-tint=done],:root[data-theme=dark] .role-badge[data-tint=green],:root[data-theme=dark] .role-badge[data-tint=hr],:root[data-theme=dark] .role-badge[data-tint=signed]{color:#4ccb86}:root[data-theme=dark] .role-badge[data-tint=auto-draft],:root[data-theme=dark] .role-badge[data-tint=foreman],:root[data-theme=dark] .role-badge[data-tint=in_progress],:root[data-theme=dark] .role-badge[data-tint=manager],:root[data-theme=dark] .role-badge[data-tint=on_hold],:root[data-theme=dark] .role-badge[data-tint=pending],:root[data-theme=dark] .role-badge[data-tint=submitted],:root[data-theme=dark] .role-badge[data-tint=warning],:root[data-theme=dark] .role-badge[data-tint=yellow]{color:#e0a23a}:root[data-theme=dark] .role-badge[data-tint=info],:root[data-theme=dark] .role-badge[data-tint=office],:root[data-theme=dark] .role-badge[data-tint=open]{color:#6fa8f0}:root[data-theme=dark] .role-badge[data-tint=inspector],:root[data-theme=dark] .role-badge[data-tint=planned],:root[data-theme=dark] .role-badge[data-tint=quit],:root[data-theme=dark] .role-badge[data-tint=violet]{color:#b69cf0}:root[data-theme=dark] .role-badge[data-tint=blocked],:root[data-theme=dark] .role-badge[data-tint=critical],:root[data-theme=dark] .role-badge[data-tint=red],:root[data-theme=dark] .role-badge[data-tint=rejected]{color:#ef7a7a}:root[data-theme=dark] .role-badge[data-tint=orange]{color:#f0915a}:root[data-theme=dark] .role-badge[data-tint=admin]{color:#f0c0d0}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;background:radial-gradient(1400px 800px at -15% -20%,rgba(255,182,158,.35),transparent 60%),radial-gradient(1200px 700px at 115% -10%,rgba(180,200,230,.25),transparent 55%),var(--bg);background-attachment:fixed;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.55;min-height:100vh;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a,body,html{color:var(--fg)}a{transition:color .12s}a,a:hover{text-decoration:none}a:hover{color:var(--fg-strong)}main{max-width:720px;margin:0 auto;padding:4rem 1.5rem}h1{font-size:3rem;font-weight:800;letter-spacing:-.035em;margin:0 0 .5rem;line-height:1.05}h1,h2{color:var(--fg-strong)}h2{font-size:1.4rem;font-weight:700;letter-spacing:-.01em;margin:0 0 .6rem}h3{font-size:1.05rem;font-weight:600;margin:0 0 .4rem}p{margin:0 0 .75rem}code{font-family:ui-monospace,SF Mono,JetBrains Mono,Menlo,Consolas,monospace;font-size:.85em;background:var(--card-blue);color:#1e40af;padding:.1em .45em;border-radius:6px;border:1px solid rgba(91,163,245,.18)}a code{color:#1d4ed8}a:hover code{background:#dbe7ff}.muted{color:var(--muted)}.app-shell{display:flex;flex-direction:row;min-height:100vh}.app-sidebar{width:224px;flex-shrink:0;position:-webkit-sticky;position:sticky;top:0;align-self:flex-start;height:100vh;overflow-y:auto;display:flex;flex-direction:column;gap:3px;padding:16px 12px;background:var(--sidebar-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid var(--sidebar-border)}.sidebar-brand{padding:4px 8px 14px}.sidebar-nav{display:flex;flex-direction:column;gap:2px}.sidebar-back{display:flex;align-items:center;gap:8px;padding:6px 10px;margin-bottom:4px;color:var(--sidebar-muted);text-decoration:none;font-size:.85rem;font-weight:500;border-radius:9px}.sidebar-back:hover{color:var(--fg-strong);background:color-mix(in srgb,var(--fg-strong) 6%,transparent);text-decoration:none}.sidebar-group{display:flex;flex-direction:column;gap:1px;margin-top:6px}.sidebar-group-title{font-size:.64rem;text-transform:uppercase;letter-spacing:.07em;font-weight:700;color:var(--sidebar-muted);padding:8px 10px 3px}.sidebar-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px;color:var(--sidebar-fg);text-decoration:none;font-size:.92rem;font-weight:500;transition:background .12s ease,color .12s ease}.sidebar-item .sidebar-ico{display:inline-flex;color:var(--mod);transition:color .12s ease}.sidebar-item:hover{background:color-mix(in srgb,var(--mod) 9%,transparent);color:var(--mod);text-decoration:none}.sidebar-item:hover .sidebar-ico{color:var(--mod)}.sidebar-item.is-active{background:var(--mod);color:#fff}.sidebar-item.is-active .sidebar-ico{color:#fff}.sidebar-sub{display:block;padding:5px 10px 5px 38px;color:var(--sidebar-muted);text-decoration:none;font-size:.85rem;border-radius:8px;transition:color .12s ease}.sidebar-sub:hover{color:var(--mod);text-decoration:none}.sidebar-sub.is-active{color:var(--mod);font-weight:600}.sidebar-footer{margin-top:auto;display:flex;flex-direction:column;gap:1px;padding-top:8px;border-top:1px solid var(--sidebar-border)}.sidebar-footer form{margin:0}.sidebar-user-b{display:flex;align-items:center;gap:9px;padding:6px 8px 2px}.sidebar-user-b .sidebar-user-meta{flex:1 1;min-width:0}.sidebar-logout-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:0;background:transparent;border-radius:9px;color:#c43838;cursor:pointer;transition:background .12s ease}.sidebar-logout-btn:hover{background:color-mix(in srgb,#c43838 12%,transparent)}.sidebar-user{margin-top:auto;position:relative;padding-top:10px;border-top:1px solid var(--sidebar-border)}.sidebar-user-row{display:flex;align-items:center;gap:10px;width:100%;padding:7px 8px;border:0;background:transparent;border-radius:10px;cursor:pointer;font-family:inherit;color:var(--sidebar-fg);text-align:left;transition:background .12s ease}.sidebar-user-row.is-open,.sidebar-user-row:hover{background:color-mix(in srgb,var(--sidebar-fg) 12%,transparent)}.sidebar-user-av{width:34px;height:34px;border-radius:50%;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.78rem;text-transform:uppercase}.sidebar-user-meta{flex:1 1;min-width:0;display:flex;flex-direction:column;line-height:1.25}.sidebar-user-name{font-size:.85rem;font-weight:600;color:var(--sidebar-fg-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-role{font-size:.72rem;color:var(--sidebar-muted)}.sidebar-user-menu{position:absolute;bottom:calc(100% + 6px);left:0;right:0;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.14);padding:5px;z-index:60}.sidebar-user-menu form{margin:0}.sidebar-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:0;background:transparent;border-radius:8px;font-family:inherit;font-size:.86rem;font-weight:500;color:var(--sidebar-fg);text-decoration:none;cursor:pointer;text-align:left}.sidebar-menu-item:hover{background:color-mix(in srgb,var(--sidebar-fg) 12%,transparent);text-decoration:none}.sidebar-menu-item.is-danger{color:#c43838}.sidebar-menu-badge{margin-left:auto;background:#c43838;color:#fff;border-radius:999px;font-size:.66rem;font-weight:700;padding:1px 7px}.sidebar-menu-sep{height:1px;background:var(--border);margin:4px 6px}.app-content{flex:1 1;min-width:0;display:flex;flex-direction:column}.th-sort{color:inherit;text-decoration:none;cursor:pointer;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.th-sort:hover{color:var(--fg-strong);text-decoration:none}.data-table th[data-sortable="1"]{white-space:nowrap}.data-table th[data-sortable="1"]:hover{color:var(--fg-strong)}.th-sort-arrow{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--accent-blue,#1f5fab);font-weight:700}.switch{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;display:inline-block;width:46px;height:26px;border-radius:999px;background:#cbd0d6;border:0;padding:0;margin:0;cursor:pointer;flex-shrink:0;list-style:none;transition:background .16s ease}.switch::-webkit-details-marker{display:none}summary:has(>.panel-caret)::-webkit-details-marker{display:none}summary.row-action--icon::-webkit-details-marker{display:none}summary.row-action--icon{list-style:none}.panel-caret{transition:transform .16s ease}details[open]>summary .panel-caret{transform:rotate(180deg)}.switch:after{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:999px;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.25);transition:transform .16s ease}.switch.is-on{background:var(--accent-blue,#5ba3f5)}.switch.is-on:after{transform:translateX(20px)}.tfa-card{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.1rem 1.4rem}.tfa-head{display:flex;align-items:center;gap:.85rem;cursor:pointer;list-style:none;margin:0}.tfa-head::-webkit-details-marker{display:none}.tfa-chip{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:13px;flex-shrink:0}.tfa-chip,.tfa-details[open] .tfa-chip{background:var(--card-blue);color:#1e3a8a}.tfa-meta{flex:1 1;min-width:0}.tfa-meta h2{margin:0;font-size:1.02rem;font-weight:700}.tfa-meta p{margin:2px 0 0;font-size:.83rem}.tfa-disable{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.admin-hub-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.85rem;gap:.85rem}@media (max-width:1024px){.admin-hub-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:768px){.admin-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.admin-hub-grid{grid-template-columns:1fr}}@media (max-width:768px){.admin-inline-form{grid-template-columns:1fr!important}}@keyframes adminHubIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.admin-hub-card{display:flex;flex-direction:column;gap:4px;padding:1.1rem 1.2rem;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-sm);text-decoration:none;color:inherit;animation:adminHubIn .42s cubic-bezier(.22,.7,.3,1) both;transition:border-color .14s ease,box-shadow .16s ease,transform .16s ease}.admin-hub-card:hover{border-color:color-mix(in srgb,var(--accent-blue,#1f5fab) 45%,var(--border));box-shadow:0 10px 24px rgba(0,0,0,.12);transform:translateY(-4px);text-decoration:none}.admin-hub-card:active{transform:translateY(-1px)}.admin-hub-card:first-child{animation-delay:.04s}.admin-hub-card:nth-child(2){animation-delay:.09s}.admin-hub-card:nth-child(3){animation-delay:.14s}.admin-hub-card:nth-child(4){animation-delay:.19s}.admin-hub-card:nth-child(5){animation-delay:.24s}.admin-hub-card:nth-child(6){animation-delay:.29s}.admin-hub-card:nth-child(7){animation-delay:.34s}.admin-hub-card:nth-child(8){animation-delay:.39s}.admin-hub-ico{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:11px;margin-bottom:6px;background:color-mix(in srgb,var(--accent-blue,#1f5fab) 13%,transparent);color:var(--accent-blue,#1f5fab);transition:transform .16s ease,background .16s ease}.admin-hub-card:hover .admin-hub-ico{transform:scale(1.08) rotate(-3deg);background:color-mix(in srgb,var(--accent-blue,#1f5fab) 20%,transparent)}@media (prefers-reduced-motion:reduce){.admin-hub-card{animation:none}.admin-hub-card,.admin-hub-card:hover,.admin-hub-card:hover .admin-hub-ico{transition:none;transform:none}}.admin-hub-title{font-size:1rem;font-weight:600;color:var(--fg-strong)}.admin-hub-sub{font-size:.78rem;color:var(--muted);line-height:1.4}.admin-tabs-wrap{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap;margin-bottom:1.5rem}.admin-tabs-back{display:inline-flex;align-items:center;gap:7px;padding:8px 14px 8px 11px;border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--muted);text-decoration:none;font-size:.88rem;font-weight:500;transition:background .12s ease,border-color .12s ease,color .12s ease}.admin-tabs-back:hover{border-color:var(--border-strong,var(--border));background:var(--surface-hover,color-mix(in srgb,var(--fg-strong,#111) 6%,transparent));color:var(--fg-strong);text-decoration:none}.admin-tabs{display:flex;flex-wrap:wrap}.admin-tab,.admin-tabs{gap:8px;align-items:center}.admin-tab{display:inline-flex;padding:8px 14px;border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--fg);font-size:.88rem;font-weight:500;text-decoration:none;transition:background .12s ease,border-color .12s ease,color .12s ease}.admin-tab .admin-tab-ico{display:inline-flex;color:var(--accent-blue,#1f5fab);transition:color .12s ease}.admin-tab:hover{border-color:color-mix(in srgb,var(--accent-blue,#1f5fab) 40%,var(--border));background:color-mix(in srgb,var(--accent-blue,#1f5fab) 7%,var(--surface));color:var(--fg-strong);text-decoration:none}.admin-tab.is-active{background:var(--accent-blue,#1f5fab);border-color:var(--accent-blue,#1f5fab);color:#fff;font-weight:600}.admin-tab.is-active .admin-tab-ico{color:#fff}.app-topbar{position:-webkit-sticky;position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:12px;padding:.7rem 2rem;background:rgba(255,255,255,.55);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}:root[data-theme=dark] .app-topbar{background:rgba(15,17,19,.6)}.app-topbar .mobile-menu-trigger{margin-left:auto}.mobile-only{display:none}@media (max-width:1024px){.desktop-only{display:none!important}.mobile-only{display:flex}.app-shell{flex-direction:column}}.app-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:rgba(255,255,255,.55);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:0}.app-header-inner{display:flex;align-items:center;gap:1rem;flex-wrap:nowrap;max-width:1280px;width:100%;margin:0 auto;padding:1rem 2rem}.app-header .brand{font-size:1.4rem;font-weight:800;letter-spacing:-.04em;color:var(--fg-strong)}.app-header .brand .muted{color:var(--muted);font-weight:500;font-size:.85rem}.app-header .nav-strip{display:flex;gap:.35rem;flex:1 1;flex-wrap:nowrap}.app-header .nav-strip a{color:var(--fg);font-size:.9rem;font-weight:500;padding:.5rem .85rem;border-radius:var(--radius-pill);background:rgba(255,255,255,.6);border:1px solid var(--border);white-space:nowrap;transition:all .15s ease}.app-header .nav-strip a:hover{background:color-mix(in srgb,var(--accent-blue) 12%,var(--surface));border-color:color-mix(in srgb,var(--accent-blue) 35%,var(--border));color:#1e3a8a;text-decoration:none}.app-header .nav-strip a[aria-current=page]{background:var(--card-blue);border-color:rgba(91,163,245,.45);color:#1e3a8a;font-weight:700}.app-header .nav-strip a[aria-current=page]:hover{background:#dbe7ff}.app-header .nav-strip a.nav-mod{background:var(--surface);border-color:var(--border);color:var(--fg)}.app-header .nav-strip a.nav-mod .nav-mod-ico{color:var(--mod)}.app-header .nav-strip a.nav-mod:hover{background:color-mix(in srgb,var(--mod) 10%,var(--surface));border-color:color-mix(in srgb,var(--mod) 35%,var(--border));color:var(--mod)}.app-header .nav-strip a.nav-mod:hover .nav-mod-ico{color:var(--mod)}.app-header .nav-strip a.nav-mod[aria-current=page]{background:var(--mod);border-color:var(--mod);color:#fff;font-weight:600}.app-header .nav-strip a.nav-mod[aria-current=page] .nav-mod-ico{color:#fff}.app-header .nav-strip a.nav-mod[aria-current=page]:hover{background:var(--mod);filter:brightness(.95)}.app-header .user-info{display:flex;align-items:center;gap:.6rem;font-size:.85rem;color:var(--fg)}.app-header .user-info .muted{color:var(--muted)}.admin-content a.admin-overview-card[style*="border:"],.admin-overview-card{border-radius:16px!important}.admin-overview-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)!important;border-color:var(--border-strong)!important}.admin-content h1{font-size:1.75rem;letter-spacing:-.02em;margin-bottom:.25rem}.admin-content h2{font-size:1.05rem;font-weight:700}.admin-content a[style*="#6ea8ff"],.admin-content a[style*="rgba(110,168,255"]{color:var(--fg)!important;border-color:var(--border-strong)!important;background:var(--surface)!important;border-radius:999px!important;font-weight:500!important;box-shadow:var(--shadow-sm)!important}.admin-content a[style*="#6ea8ff"]:hover,.admin-content a[style*="rgba(110,168,255"]:hover{background:var(--black)!important;color:#fff!important;border-color:var(--black)!important}.admin-content a[style*="border:"]{border-radius:999px!important}.admin-sidebar-item,.admin-sidebar-item:hover{text-decoration:none}.admin-sidebar-item:hover .admin-sidebar-icon{background:var(--black)!important;color:#fff!important;border-color:var(--black)!important;transform:translateY(-1px);box-shadow:var(--shadow)}.admin-sidebar-item:hover>span:last-child{color:var(--fg-strong)!important;font-weight:700!important}.icon-btn{display:inline-flex;align-items:center;justify-content:center;position:relative;width:38px;height:38px;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--fg-strong);text-decoration:none;transition:all .15s ease;box-shadow:var(--shadow-sm);flex-shrink:0}.icon-btn:hover{background:var(--black);color:#fff;border-color:var(--black);text-decoration:none;transform:translateY(-1px);box-shadow:var(--shadow)}.icon-btn svg{width:18px;height:18px}.icon-btn-dot{position:absolute;top:-2px;right:-2px;min-width:18px;height:18px;padding:0 5px;background:#ef4444;color:#fff;border:2px solid var(--surface);border-radius:999px;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.data-table a.row-action,.data-table button.row-action,.row-action,a.row-action,button.row-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:82px;height:30px;padding:0 13px;margin:0;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--fg-strong);font-family:inherit!important;font-size:.78rem!important;font-weight:600!important;font-style:normal!important;letter-spacing:.01em!important;text-decoration:none;cursor:pointer;line-height:1!important;transition:all .12s ease;box-sizing:border-box;vertical-align:middle}.row-action:hover{background:var(--black);color:#fff;border-color:var(--black);text-decoration:none}.row-action:disabled,.row-action[disabled],button.row-action:disabled{cursor:not-allowed;opacity:1}.row-action:disabled,.row-action:disabled:hover,.row-action[disabled],button.row-action:disabled{background:#e2e2e0!important;color:var(--muted-2)!important;border-color:#e2e2e0!important}.row-action svg{width:13px;height:13px;flex-shrink:0}.row-action--icon{min-width:0!important;width:32px;height:32px;padding:0!important;gap:0!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:9px!important;color:var(--muted,#6b7280)!important}.row-action--icon:hover{background:color-mix(in srgb,var(--fg-strong,#111) 8%,transparent)!important;color:var(--fg-strong)!important;transform:none!important}.row-action--icon svg{width:16px;height:16px}.row-action--icon.row-action--danger{background:transparent!important;border:0!important;color:#c43838!important}.row-action--icon.row-action--danger:hover{background:color-mix(in srgb,#c43838 12%,transparent)!important;border:0!important;color:#c43838!important}.row-action--icon.row-action--success{background:transparent!important;border:0!important;color:#1f8a4c!important}.row-action--icon.row-action--success:hover{background:color-mix(in srgb,#1f8a4c 12%,transparent)!important;border:0!important;color:#1f8a4c!important}.row-action--icon.row-action--warning{background:transparent!important;border:0!important;color:#b97800!important}.row-action--icon.row-action--warning:hover{background:color-mix(in srgb,#b97800 14%,transparent)!important;border:0!important;color:#b97800!important}.row-action--icon.row-action--info{background:transparent!important;border:0!important;color:#1f5fab!important}.row-action--icon.row-action--info:hover{background:color-mix(in srgb,#1f5fab 12%,transparent)!important;border:0!important;color:#1f5fab!important}.eakta-act{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border-radius:10px;border:1px solid var(--border-strong);background:var(--surface);color:var(--fg);cursor:pointer;text-decoration:none;transition:background .12s ease,border-color .12s ease}.eakta-act svg{width:17px;height:17px;flex-shrink:0}.eakta-act{position:relative}.eakta-act-label{display:block;position:absolute;bottom:calc(100% + 6px);right:0;z-index:60;padding:.3rem .5rem;border-radius:7px;background:var(--fg-strong);color:var(--surface);font-size:.72rem;font-weight:600;line-height:1.2;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transform:translateY(3px);transition:opacity .12s ease,transform .12s ease;box-shadow:0 6px 16px rgba(0,0,0,.22)}.eakta-act:focus-visible .eakta-act-label,.eakta-act:hover .eakta-act-label{opacity:1;visibility:visible;transform:translateY(0)}.eakta-act:hover{background:color-mix(in srgb,var(--fg-strong) 7%,transparent);text-decoration:none}.eakta-act--success{border-color:color-mix(in srgb,var(--ok) 40%,transparent);background:var(--ok-bg);color:var(--ok)}.eakta-act--success:hover{background:color-mix(in srgb,var(--ok) 18%,transparent)}.eakta-act--info{border-color:color-mix(in srgb,var(--accent-blue) 40%,transparent);background:var(--card-blue);color:var(--info-strong)}.eakta-act--info:hover{background:color-mix(in srgb,var(--accent-blue) 18%,transparent)}.row-action--lg,a.row-action--lg,button.row-action--lg{height:36px;min-width:0;padding:0 16px;gap:7px;font-size:.85rem!important}.row-action--lg svg{width:15px;height:15px}.row-action--danger{background:rgba(196,56,56,.14)!important;color:#c43838!important;border-color:rgba(196,56,56,.45)!important}.row-action--danger:hover{background:#c43838!important;border-color:#c43838!important;color:#fff!important}.row-action--success{background:rgba(31,138,76,.14)!important;color:#1f8a4c!important;border-color:rgba(31,138,76,.45)!important}.row-action--success:hover{background:#1f8a4c!important;border-color:#1f8a4c!important;color:#fff!important}.row-action--warning{background:rgba(245,158,11,.18)!important;color:#b97800!important;border-color:rgba(185,120,0,.45)!important}.row-action--warning:hover{background:#b97800!important;border-color:#b97800!important;color:#fff!important}.row-action--info{background:rgba(91,163,245,.18)!important;color:#1f5fab!important;border-color:rgba(91,163,245,.5)!important}.row-action--info:hover{background:#1f5fab!important;border-color:#1f5fab!important;color:#fff!important}.btn-danger,a.btn-danger,button.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 16px;border:1px solid var(--crit);border-radius:var(--radius,8px);background:var(--crit);color:#fff;font-size:.9rem;font-weight:500;cursor:pointer;text-decoration:none;transition:filter .15s}.btn-danger:hover{filter:brightness(.92)}.btn-danger:disabled{opacity:.55;cursor:default;filter:none}.alert{display:flex;align-items:center;gap:.6rem;padding:.6rem .85rem;border-radius:10px;border:1px solid transparent;font-size:.9rem;line-height:1.4}.alert svg{flex-shrink:0}.alert-ok{background:var(--ok-bg);border-color:color-mix(in srgb,var(--ok) 40%,transparent);color:var(--ok)}.alert-warn{background:var(--warn-bg);border-color:color-mix(in srgb,var(--warn) 40%,transparent);color:var(--warn)}.alert-crit{background:var(--crit-bg);border-color:color-mix(in srgb,var(--crit) 40%,transparent);color:var(--crit)}.alert-info{background:var(--card-blue);border-color:color-mix(in srgb,var(--accent-blue) 45%,transparent);color:var(--info-strong)}.stripe-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:.55rem 1.1rem;border:1px solid var(--border-strong);border-radius:999px;background:repeating-linear-gradient(45deg,#f4f4f4,#f4f4f4 5px,#ffffff 0,#ffffff 8px);color:var(--fg);font-family:inherit;font-size:.85rem;font-weight:500;cursor:pointer;box-shadow:var(--shadow-sm);transition:all .14s ease}.stripe-button:hover{background:repeating-linear-gradient(45deg,#eaeaea,#eaeaea 5px,#fafafa 0,#fafafa 8px);border-color:var(--border-strong);box-shadow:var(--shadow)}.stripe-button svg{width:14px;height:14px;flex-shrink:0}.donut-action-btn{display:inline-flex;align-items:center;gap:5px;padding:.3rem .6rem;border:none;border-radius:8px;background:color-mix(in srgb,var(--accent-blue,#1f5fab) 11%,transparent);color:var(--accent-blue,#1f5fab);font-family:inherit;font-size:.72rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .14s ease}.donut-action-btn:hover{background:color-mix(in srgb,var(--accent-blue,#1f5fab) 18%,transparent)}.donut-action-btn svg{width:14px;height:14px;flex-shrink:0}.file-input{height:38px;display:inline-flex;align-items:center;max-width:100%}.file-input::-webkit-file-upload-button{height:30px;margin-right:10px;padding:0 .75rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--fg);font-family:inherit;font-size:.8rem;font-weight:500;cursor:pointer;-webkit-transition:background .14s ease;transition:background .14s ease}.file-input::file-selector-button{height:30px;margin-right:10px;padding:0 .75rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--fg);font-family:inherit;font-size:.8rem;font-weight:500;cursor:pointer;transition:background .14s ease}.file-input::-webkit-file-upload-button:hover{background:var(--surface-2)}.file-input::file-selector-button:hover{background:var(--surface-2)}.confirm-dialog{border:0;border-radius:28px;padding:0;background:var(--surface);color:var(--fg-strong);box-shadow:0 24px 60px rgba(8,15,30,.2),0 8px 16px rgba(0,0,0,.08);width:460px!important;max-width:calc(100vw - 2rem)!important;min-width:0!important;box-sizing:border-box;overflow:hidden;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);margin:0}.confirm-dialog::-webkit-backdrop{background:rgba(13,20,35,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-dialog::backdrop{background:rgba(13,20,35,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-dialog[open]{animation:confirm-dialog-pop .16s ease-out}.confirm-dialog:focus,.confirm-dialog:focus-visible,.mobile-menu-dialog:focus,.mobile-menu-dialog:focus-visible{outline:none}.toast-stack{position:fixed;right:1.25rem;bottom:1.25rem;z-index:1000;display:flex;flex-direction:column;gap:.5rem;max-width:min(92vw,380px);pointer-events:none}.toast-item{pointer-events:auto;display:flex;align-items:flex-start;gap:.6rem;width:100%;text-align:left;padding:.7rem .85rem;border-radius:var(--radius-lg,14px);border:1px solid var(--border);background:var(--surface);color:var(--fg-strong);box-shadow:0 8px 24px rgba(8,15,30,.16);font-size:.88rem;font-family:inherit;cursor:pointer;animation:toast-in .18s ease-out}.toast-icon{flex-shrink:0;display:inline-flex;width:22px;height:22px;border-radius:999px;align-items:center;justify-content:center}.toast-item[data-kind=success] .toast-icon{background:rgba(31,138,76,.12);color:#1f8a4c}.toast-item[data-kind=error] .toast-icon{background:rgba(196,56,56,.12);color:#c43838}.toast-item[data-kind=info] .toast-icon{background:color-mix(in srgb,var(--accent-blue,#1f5fab) 14%,transparent);color:var(--accent-blue,#1f5fab)}.toast-msg{flex:1 1;min-width:0;line-height:1.4;overflow-wrap:anywhere}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes confirm-dialog-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.gsearch-overlay{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.45);animation:fade-in .16s ease}.gsearch-overlay,.gsearch-panel{display:flex;flex-direction:column}.gsearch-panel{width:100%;height:100%;background:var(--surface);overflow:hidden;animation:gsearch-pop .22s cubic-bezier(.32,.72,0,1)}@keyframes gsearch-pop{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.gsearch-overlay,.gsearch-panel{animation:none}}@media (min-width:769px){.gsearch-overlay{align-items:flex-start}.gsearch-panel{width:640px;max-width:calc(100vw - 2rem);height:auto;max-height:72vh;margin:8vh auto 0;border:.5px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 24px 70px rgba(0,0,0,.3)}}.gsearch-tabs{display:flex;align-items:center;gap:6px;padding:12px 14px;border-bottom:1px solid var(--border)}.gsearch-tabs>button{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid transparent;border-radius:999px;background:var(--surface-hover);color:var(--muted);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:background .14s ease,color .14s ease}.gsearch-tabs>button:hover{color:var(--fg)}.gsearch-tabs>button.is-on{background:var(--card-blue);color:#1f5fab;border-color:color-mix(in srgb,#1f5fab 22%,transparent)}.gsearch-close{margin-left:auto;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-hover)!important;color:var(--muted)!important;border-radius:999px!important;padding:0!important}.gsearch-close:hover{color:var(--fg)!important}.gsearch-inputrow{display:flex;align-items:center;gap:10px;height:46px;margin:12px 14px;padding:0 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-hover);color:var(--muted);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.gsearch-inputrow:focus-within{background:var(--surface);border-color:color-mix(in srgb,#1f5fab 45%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,#1f5fab 16%,transparent);color:#1f5fab}.gsearch-panel .gsearch-inputrow input,.gsearch-panel .gsearch-inputrow input:focus{flex:1 1;min-width:0;height:100%;border:none;outline:none;box-shadow:none;border-radius:0;padding:0;background:transparent;font-size:16px;font-family:inherit;color:var(--fg)}.gsearch-inputrow>button{border:none;background:none;cursor:pointer;padding:2px;display:inline-flex;color:var(--muted)}.gsearch-results{flex:1 1;overflow-y:auto;padding-bottom:16px;-webkit-overflow-scrolling:touch}.gsearch-grouptitle{display:flex;align-items:center;gap:6px;margin:0;padding:12px 16px 4px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.gsearch-row{display:flex;align-items:center;gap:11px;width:100%;padding:9px 16px;border:none;background:none;text-align:left;cursor:pointer;font-family:inherit;color:var(--fg)}.gsearch-row:focus-visible,.gsearch-row:hover{background:var(--surface-hover)}.gsearch-row{animation:gsearch-rowin .24s ease both}@keyframes gsearch-rowin{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.gsearch-chev{display:inline-flex;color:var(--muted);transition:transform .15s ease,color .15s ease}.gsearch-row--nav{transition:background .15s ease}.gsearch-row--nav:focus-visible,.gsearch-row--nav:hover{background:color-mix(in srgb,#1f5fab 9%,var(--surface))}.gsearch-row--nav:hover .gsearch-name{color:#1f5fab}.gsearch-row--nav:hover .gsearch-ico{background:var(--card-blue);color:#1f5fab}.gsearch-row--nav:hover .gsearch-chev{transform:translateX(3px);color:#1f5fab}@media (prefers-reduced-motion:reduce){.gsearch-row{animation:none}.gsearch-row--nav:hover .gsearch-chev{transform:none}}.gsearch-av{border-radius:50%;background:var(--card-blue);color:#1f5fab;font-size:13px;font-weight:600}.gsearch-av,.gsearch-ico{width:38px;height:38px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.gsearch-ico{border-radius:8px;background:var(--surface-hover);color:var(--muted)}.gsearch-text{flex:1 1;min-width:0;display:flex;flex-direction:column}.gsearch-name{font-size:15px;font-weight:500}.gsearch-name,.gsearch-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gsearch-sub{font-size:13px;color:var(--muted)}.gsearch-hint{padding:28px 16px;text-align:center;color:var(--muted);font-size:14px}.gsearch-crumbs{display:flex;align-items:center;gap:6px;padding:12px 14px 2px;flex-wrap:wrap}.gsearch-crumbs>button{display:inline-flex;gap:5px;padding:5px 10px;border:none;border-radius:999px;color:var(--fg)}.gsearch-crumbs>button,.gsearch-triggerbar{align-items:center;background:var(--surface-hover);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer}.gsearch-triggerbar{display:flex;gap:8px;width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:10px;color:var(--muted);white-space:nowrap;overflow:hidden;transition:background .15s ease,border-color .15s ease,transform .11s ease,box-shadow .15s ease}.gsearch-triggerbar-ic{display:inline-flex;color:#1f5fab;transition:transform .15s ease}.gsearch-triggerbar-label{flex:1 1;text-align:left;overflow:hidden;text-overflow:ellipsis}.gsearch-triggerbar:hover{background:color-mix(in srgb,#1f5fab 10%,var(--surface));border-color:color-mix(in srgb,#1f5fab 30%,transparent)}.gsearch-triggerbar:hover .gsearch-triggerbar-ic{transform:scale(1.12)}.gsearch-triggerbar:active{transform:scale(.985)}.gsearch-triggerbar:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,#1f5fab 22%,transparent)}.gsearch-kbd{font-size:11px;font-family:inherit;padding:1px 6px;border-radius:6px;background:var(--surface);border:1px solid var(--border);color:var(--muted)}.mobile-search-trigger{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border:1px solid color-mix(in srgb,#1f5fab 25%,transparent);border-radius:12px;background:var(--card-blue,#e6f1fb);color:#1f5fab;cursor:pointer;transition:transform .12s ease,background .15s ease,box-shadow .15s ease}.mobile-search-trigger:hover{background:color-mix(in srgb,#1f5fab 16%,var(--surface))}.mobile-search-trigger:active{transform:scale(.9)}.mobile-search-trigger:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,#1f5fab 22%,transparent)}@keyframes spin{to{transform:rotate(1turn)}}.icon-spin{animation:spin .8s linear infinite;transform-origin:center}@keyframes recompute-pop{0%{opacity:0;transform:scale(.4)}60%{transform:scale(1.18)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.icon-spin{animation-duration:1.6s}}.skeleton{position:relative;overflow:hidden;background:color-mix(in srgb,var(--muted) 16%,transparent);border-radius:8px}.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--surface) 70%,transparent),transparent);animation:skeleton-shimmer 1.25s ease-in-out infinite}@keyframes skeleton-shimmer{to{transform:translateX(100%)}}.flash-in{animation:flash-in .26s cubic-bezier(.32,.72,0,1)}@keyframes flash-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fade-in .22s ease-out}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.donut-draw{animation:donut-draw .48s ease-out both;transform-origin:center}@keyframes donut-draw{0%{opacity:0;transform:scale(.92) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(0)}}.donut-arc{animation:donut-arc-grow .72s cubic-bezier(.22,.61,.36,1) both}@keyframes donut-arc-grow{0%{stroke-dasharray:0 var(--circ)}to{stroke-dasharray:var(--dash) var(--rest)}}.donut-center{animation:donut-center-in .42s ease-out .42s both}@keyframes donut-center-in{0%{opacity:0}to{opacity:1}}.compliance-bar-grow{animation:compliance-bar-grow .62s cubic-bezier(.22,.61,.36,1) both;transform-origin:left center}@keyframes compliance-bar-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.compliance-chip-in{animation:fade-in .32s ease-out both}.action-card,.admin-overview-card{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}.action-card:hover,.admin-overview-card:hover{transform:translateY(-2px)}@keyframes funnel-card-in{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.funnel-card{transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s ease,border-color .18s ease;animation:funnel-card-in .46s cubic-bezier(.16,1,.3,1) backwards;will-change:transform,opacity}.funnel-card:first-child{animation-delay:0s}.funnel-card:nth-child(2){animation-delay:55ms}.funnel-card:nth-child(3){animation-delay:.11s}.funnel-card:nth-child(4){animation-delay:165ms}.funnel-card:nth-child(5){animation-delay:.22s}.funnel-card:nth-child(6){animation-delay:275ms}.funnel-card:hover{transform:translateY(-3px);border-color:var(--accent-blue,#5ba3f5);box-shadow:0 6px 18px rgba(31,95,171,.14)}.funnel-card:active{transform:translateY(-1px) scale(.995)}.funnel-bar-fill{transform-origin:left center;animation:compliance-bar-grow .72s cubic-bezier(.22,1,.36,1) .26s backwards}.funnel-grid{position:relative}.funnel-grid:before{content:"";position:absolute;inset:-10px;z-index:0;border-radius:var(--radius-lg);background:linear-gradient(120deg,rgba(91,163,245,.18),rgba(31,138,76,.14),rgba(91,163,245,.18));background-size:220% 220%;filter:blur(14px);opacity:.7;pointer-events:none;animation:funnel-bg-pan 11s ease-in-out infinite}.funnel-grid>*{position:relative;z-index:1}@keyframes funnel-bg-pan{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@media (prefers-reduced-motion:reduce){.skeleton:after{animation:none}.compliance-bar-grow,.compliance-chip-in,.donut-arc,.donut-center,.donut-draw,.fade-in,.flash-in,.funnel-bar-fill,.funnel-card{animation:none;transform:none}.funnel-grid:before{animation:none}.action-card:hover,.admin-hub-card:hover,.admin-overview-card:hover,.funnel-card:hover{transform:none}}.confirm-dialog-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:999px;background:transparent;border:0;cursor:pointer;color:var(--fg);display:inline-flex;align-items:center;justify-content:center;transition:background .12s ease}.confirm-dialog-close:hover{background:var(--surface-hover)}.confirm-dialog-cancel:focus,.confirm-dialog-close:focus,.confirm-dialog-confirm:focus{outline:none}.confirm-dialog-cancel:focus-visible,.confirm-dialog-close:focus-visible,.confirm-dialog-confirm:focus-visible{outline:2px solid color-mix(in srgb,var(--accent-blue,#1f5fab) 60%,transparent);outline-offset:2px}.confirm-dialog-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:40px auto 0;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--fg-strong);box-shadow:var(--shadow-sm)}.confirm-dialog-icon[data-variant=danger]{background:rgba(196,56,56,.1);border-color:rgba(196,56,56,.22);color:#c43838;box-shadow:0 4px 12px rgba(196,56,56,.12)}.confirm-dialog-icon[data-variant=success]{background:rgba(31,138,76,.1);border-color:rgba(31,138,76,.25);color:#1f8a4c;box-shadow:0 4px 12px rgba(31,138,76,.12)}.confirm-dialog-icon[data-variant=default]{background:var(--surface-2);border-color:var(--border);color:var(--fg-strong);box-shadow:var(--shadow-sm)}.confirm-dialog-message{margin:18px 0 24px;padding:0 32px;width:100%;box-sizing:border-box;text-align:center;font-size:1.05rem;font-weight:600;line-height:1.4;color:var(--fg-strong);white-space:normal;overflow-wrap:anywhere;word-break:break-word}.confirm-dialog-actions{display:flex;gap:12px;padding:0 24px 28px}.confirm-dialog-cancel,.confirm-dialog-confirm{flex:1 1;height:44px;border-radius:999px;border:0;font-size:.95rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all .12s ease}.confirm-dialog-cancel{background:transparent;color:var(--fg);border:1px solid var(--border)}.confirm-dialog-cancel:hover{background:var(--surface-hover)}.confirm-dialog-confirm{background:var(--black);color:#fff}.confirm-dialog-confirm:hover{background:#2a2a2a}.confirm-dialog-confirm--danger{background:var(--black);color:#fff}.confirm-dialog-confirm--danger:hover{background:#2a2a2a}.confirm-dialog-confirm--success{background:#1f8a4c}.confirm-dialog-confirm--success:hover{background:#176837}.confirm-dialog-cancel:disabled,.confirm-dialog-confirm:disabled{opacity:.6;cursor:not-allowed}.filter-bar{display:flex;gap:.6rem;align-items:flex-end;flex-wrap:wrap;margin-top:1rem;padding:.85rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.filter-input,input.filter-input,select.filter-input{height:36px!important;padding:0 14px!important;border:1px solid var(--border)!important;border-radius:999px!important;background:var(--surface)!important;color:var(--fg-strong)!important;font-family:inherit!important;font-size:.85rem!important;font-weight:500!important;line-height:1!important;box-sizing:border-box!important;transition:border-color .12s ease,box-shadow .12s ease;outline:none}.filter-input:focus{border-color:var(--accent-blue,#378add)!important;box-shadow:0 0 0 3px rgba(91,163,245,.28)!important}input.filter-input::placeholder{color:var(--muted-2);font-weight:400}input.filter-input[type=date]{padding-right:10px!important}.filter-bar .btn-primary,.filter-bar a.row-action,.filter-bar button.row-action,.filter-bar>button[type=submit]{height:36px;min-height:36px}.role-badge{display:inline-block;background:var(--black);color:#fff;padding:.22em .95em;border-radius:var(--radius-pill);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;min-width:150px;white-space:nowrap;text-align:center;box-sizing:border-box}.small-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;font-size:.72rem;font-weight:600;line-height:1.4;white-space:nowrap;background:var(--surface-hover,#f4f7fb);color:var(--fg);border:1px solid transparent}.small-pill[data-tint=success]{background:var(--card-mint);color:#1f8a4c}.small-pill[data-tint=info]{background:var(--card-blue);color:#1f5fab}.small-pill[data-tint=warning]{background:var(--card-yellow);color:#9a6f00}.small-pill[data-tint=danger]{background:var(--card-pink);color:#c43838}.small-pill[data-tint=muted]{background:var(--surface-hover);color:var(--muted)}.role-badge[data-tint=admin]{background:#1a1a1a;color:#fff}.role-badge[data-tint=manager]{background:var(--card-yellow);color:#9a6f00}.role-badge[data-tint=office]{background:var(--card-blue);color:#1f5fab}.role-badge[data-tint=hr]{background:var(--card-mint);color:#1f8a4c}.role-badge[data-tint=foreman]{background:var(--card-peach);color:#b97800}.role-badge[data-tint=inspector]{background:var(--card-lavender);color:#6b3fb3}.role-badge[data-tint=active],.role-badge[data-tint=approved],.role-badge[data-tint=done],.role-badge[data-tint=green],.role-badge[data-tint=signed]{background:var(--card-mint);color:#1f8a4c}.role-badge[data-tint=auto-draft],.role-badge[data-tint=in_progress],.role-badge[data-tint=on_hold],.role-badge[data-tint=pending],.role-badge[data-tint=submitted],.role-badge[data-tint=warning],.role-badge[data-tint=yellow]{background:var(--card-yellow);color:#9a6f00}.role-badge[data-tint=draft]{background:var(--surface-hover);color:var(--muted);border:1px solid var(--border)}.role-badge[data-tint=info]{background:var(--card-blue);color:#1f5fab}.role-badge[data-tint=critical]{background:var(--card-pink);color:#c43838}.data-table tr[data-urgency=critical] td:first-child{box-shadow:inset 4px 0 0 var(--danger)}.data-table tr[data-urgency=warning] td:first-child{box-shadow:inset 4px 0 0 var(--warning)}.data-table tr[data-urgency=info] td:first-child{box-shadow:inset 4px 0 0 var(--accent-blue)}.data-table tr[data-urgency=success] td:first-child{box-shadow:inset 4px 0 0 var(--success)}.action-card{--accent-color:var(--muted-2);display:flex;align-items:center;gap:.85rem;padding:.85rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-decoration:none;color:var(--fg-strong);transition:transform .14s ease,box-shadow .14s ease,background .14s ease,border-left-width .14s ease}.action-card:hover{transform:translateY(-1px);box-shadow:var(--shadow);border-left-width:5px;background:color-mix(in srgb,var(--accent-color) 6%,var(--surface))}.action-card:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.role-badge[data-tint=cancelled],.role-badge[data-tint=closed],.role-badge[data-tint=ended],.role-badge[data-tint=snoozed]{background:var(--surface-hover);color:var(--fg)}.role-badge[data-tint=quit]{background:var(--card-lavender);color:#6b3fb3}.role-badge[data-tint=open]{background:var(--card-blue);color:#1f5fab}.role-badge[data-tint=blocked],.role-badge[data-tint=red],.role-badge[data-tint=rejected]{background:var(--card-pink);color:#c43838}.role-badge[data-tint=orange]{background:var(--card-peach);color:#c2410c}.role-badge[data-tint=planned],.role-badge[data-tint=violet]{background:var(--card-lavender);color:#6b3fb3}.link-button{background:none;border:0;color:var(--fg);cursor:pointer;font:inherit;padding:0;text-decoration:underline;transition:color .12s}.link-button:hover{color:var(--accent-blue)}.subnav-bar{width:100%;background:rgba(255,255,255,.55);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);margin-top:-.25rem}.subnav-bar-inner{padding:0 2rem .5rem}.app-main,.subnav-bar-inner{max-width:1280px;width:100%;margin:0 auto}.app-main{flex:1 1;min-width:0;padding:1.5rem 2rem}.app-footer{padding:1.25rem 2rem;text-align:center;font-size:.78rem;color:var(--muted);border-top:1px solid var(--border);background:rgba(255,255,255,.4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}:root[data-theme=dark] .app-footer{background:rgba(26,29,33,.5)}.logo-dark,:root[data-theme=dark] .logo-light{display:none}:root[data-theme=dark] .logo-dark{display:inline-block}.app-shell[data-accent=aluminum] .app-sidebar .logo-light,.app-shell[data-accent=beige] .app-sidebar .logo-light,.app-shell[data-accent=blueprint] .app-sidebar .logo-light,.app-shell[data-accent=graphite] .app-sidebar .logo-light,.app-shell[data-accent=indigo] .app-sidebar .logo-light,.app-shell[data-accent=lime] .app-sidebar .logo-light,.app-shell[data-accent=rust] .app-sidebar .logo-light,.app-shell[data-accent=signal] .app-sidebar .logo-light,.app-shell[data-accent=vivid] .app-sidebar .logo-light{display:none}.app-shell[data-accent=aluminum] .app-sidebar .logo-dark,.app-shell[data-accent=beige] .app-sidebar .logo-dark,.app-shell[data-accent=blueprint] .app-sidebar .logo-dark,.app-shell[data-accent=graphite] .app-sidebar .logo-dark,.app-shell[data-accent=indigo] .app-sidebar .logo-dark,.app-shell[data-accent=lime] .app-sidebar .logo-dark,.app-shell[data-accent=rust] .app-sidebar .logo-dark,.app-shell[data-accent=signal] .app-sidebar .logo-dark,.app-shell[data-accent=vivid] .app-sidebar .logo-dark{display:inline-block}.btn,button[type=submit]:not(.link-button):not(.row-action):not(.stripe-button):not(.btn-primary):not(.sidebar-menu-item):not(.icon-btn):not(.sidebar-logout-btn):not(.eakta-act){display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--fg);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .15s ease;box-shadow:var(--shadow-sm)}.btn:hover,button[type=submit]:not(.link-button):not(.row-action):not(.stripe-button):not(.btn-primary):not(.sidebar-menu-item):not(.icon-btn):not(.sidebar-logout-btn):not(.eakta-act):hover{background:var(--surface-hover);transform:translateY(-1px);box-shadow:var(--shadow)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:40px;padding:.55rem 1.4rem;border:1px solid var(--brand);border-radius:var(--radius-pill);background:var(--brand);color:#fff;font-family:inherit;font-size:.92rem;font-weight:600;line-height:1;text-decoration:none;cursor:pointer;box-sizing:border-box;box-shadow:var(--shadow-sm);transition:all .15s ease}.btn-primary:hover{background:var(--brand-hover);border-color:var(--brand-hover);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{background:#e2e2e0;border-color:#e2e2e0;color:var(--muted-2);cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:40px;padding:.55rem 1.4rem;border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--fg);font-family:inherit;font-size:.92rem;font-weight:500;line-height:1;text-decoration:none;cursor:pointer;box-sizing:border-box;box-shadow:var(--shadow-sm);transition:all .15s ease}.btn-secondary:hover{background:var(--surface-hover);transform:translateY(-1px);box-shadow:var(--shadow)}.form-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;padding-top:1rem;margin-top:.25rem;border-top:1px solid var(--border)}.btn-primary:focus-visible,.btn-secondary:focus-visible,.row-action:focus-visible,.stripe-button:focus-visible{outline:2px solid #1f5fab;outline-offset:2px}.btn-danger{border-color:rgba(239,68,68,.4);color:var(--danger)}.btn-danger:hover{background:rgba(239,68,68,.08);border-color:var(--danger)}input[type=date],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=text],input[type=time],input[type=url],select,textarea{background:var(--surface);color:var(--fg);border:1px solid var(--border-strong);border-radius:var(--radius-pill);padding:.5rem .95rem;font:inherit;font-size:.9rem;transition:all .15s;box-shadow:var(--shadow-sm);min-width:0}textarea{border-radius:var(--radius);font-family:inherit}select{cursor:pointer;padding-right:2rem}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-blue,#378add)!important;box-shadow:0 0 0 3px rgba(91,163,245,.28)!important}input.field-error,input:user-invalid,select.field-error,select:user-invalid,textarea.field-error,textarea:user-invalid{border-color:var(--crit)!important}input.field-error:focus,input:user-invalid:focus,select.field-error:focus,textarea.field-error:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--crit) 22%,transparent)!important}input.field-ok,select.field-ok,textarea.field-ok{border-color:var(--ok)!important}input.field-ok:focus,textarea.field-ok:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--ok) 20%,transparent)!important}input:disabled,select:disabled,textarea:disabled{background:var(--surface-2)!important;color:var(--muted)!important;cursor:not-allowed;box-shadow:none!important}@media (prefers-reduced-motion:reduce){input,select,textarea{transition:none}}input[type=checkbox],input[type=radio]{accent-color:var(--black);width:16px;height:16px;cursor:pointer}label.muted{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;color:var(--muted)}fieldset{border:0;border-radius:var(--radius-lg);padding:1.75rem 2rem;margin:0;background:var(--surface);box-shadow:var(--shadow)}fieldset legend{padding:0 .75rem;font-weight:700;font-size:1rem;color:var(--fg-strong);letter-spacing:-.005em}.data-table{width:100%;border-collapse:separate;border-spacing:0;margin-top:1rem;font-size:.88rem;background:var(--surface);border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 1px 2px rgba(15,16,17,.03)}.data-table td,.data-table th{text-align:left;padding:1.15rem 1.25rem;line-height:1.4}.data-table th{padding-top:.95rem;padding-bottom:.95rem}.data-table td{border-bottom:1px solid rgba(0,0,0,.05);vertical-align:middle}.data-table--dense td,.data-table--dense th{padding-left:.8rem;padding-right:.8rem}.data-table thead{background:#fafafa}.data-table th{font-weight:500;color:#6b6b6b;font-size:.78rem;text-transform:none;letter-spacing:normal;background:transparent;border-bottom:1px solid rgba(0,0,0,.06);line-height:1.2}:root[data-theme=dark] .data-table thead{background:rgba(255,255,255,.04)}:root[data-theme=dark] .data-table th{color:var(--muted);border-bottom-color:var(--border)}:root[data-theme=dark] .data-table td{border-bottom-color:var(--border)}.data-table td.col-action,.data-table th.col-action{width:1%;white-space:nowrap;text-align:right}.data-table td:first-child,.data-table th:first-child{padding-left:1.5rem}.data-table td:last-child,.data-table th:last-child{padding-right:1.5rem}.data-table tbody tr{transition:background .14s ease}.data-table tbody tr:hover td{background:rgba(91,163,245,.04)}.data-table tbody tr:last-child td{border-bottom:0}.data-table a{color:var(--fg);font-weight:500}.data-table a:hover,.doc-card{color:var(--fg-strong);text-decoration:none}.doc-card{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto 1fr;grid-column-gap:.85rem;column-gap:.85rem;grid-row-gap:.85rem;row-gap:.85rem;padding:1.1rem 1.25rem;border-radius:18px;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease;height:132px;background:#ececec}.doc-card:hover{transform:translateY(-2px);box-shadow:0 8px 18px -8px rgba(0,0,0,.18);text-decoration:none;filter:brightness(1.02)}.doc-card[data-fmt=pdf]{background:#fffdf6;color:#4a1d10}.doc-card[data-fmt=pdf] .doc-card-icon{color:#c43838}.doc-card[data-fmt=docx]{background:#f7fafd;color:#142e54}.doc-card[data-fmt=docx] .doc-card-icon{color:#1f5fab}.doc-card[data-fmt=xlsx]{background:#f7fbf7;color:#16401e}.doc-card[data-fmt=xlsx] .doc-card-icon{color:#1f8a4c}.doc-card-icon{grid-column:1;grid-row:1;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px}.doc-card-icon svg{width:28px;height:28px;stroke-width:1.6}.doc-card-check{grid-column:3;grid-row:1;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;border:1.5px solid;opacity:.45;transition:opacity .12s ease}.doc-card:hover .doc-card-check{opacity:.85}.doc-card-title{grid-column:1/-1;grid-row:2;align-self:end;font-size:1.05rem;font-weight:700;line-height:1.25;color:inherit;word-break:break-word}.viewer-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:#fff!important;border-radius:999px;font-size:.82rem;font-weight:500;font-family:inherit;cursor:pointer;text-decoration:none;transition:background .12s}.viewer-btn svg{display:block;flex-shrink:0}.viewer-btn:hover{background:rgba(255,255,255,.18)}.viewer-btn--close{background:rgba(196,56,56,.18);border-color:rgba(196,56,56,.45)}.viewer-btn--close:hover{background:rgba(196,56,56,.32)}.empty-state{margin-top:2rem;padding:3rem 2rem 2.5rem;border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;color:var(--muted);background:radial-gradient(circle at 50% 0,var(--card-blue) 0,transparent 55%),var(--surface);box-shadow:var(--shadow-sm);position:relative}.empty-state:before{content:"";display:block;width:48px;height:48px;margin:0 auto 1rem;border-radius:999px;background:var(--card-blue);border:1px solid rgba(91,163,245,.25);box-shadow:0 0 0 6px color-mix(in srgb,var(--accent-blue) 8%,transparent)}.empty-state p{margin:0;font-size:.95rem;color:var(--muted)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;transition:all .15s}.card,.card:hover{box-shadow:var(--shadow)}.card:hover{transform:translateY(-1px)}.card-peach{background:var(--card-peach)}.card-blue{background:var(--card-blue)}.card-mint{background:var(--card-mint)}.card-lavender{background:var(--card-lavender)}dialog{background:var(--surface);color:var(--fg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:0}dialog::-webkit-backdrop{background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}dialog::backdrop{background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}::selection{background:var(--black);color:#fff}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(0,0,0,.18);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.28)}a[style*="var(--accent)"],button[type=submit][style*="var(--accent)"]{background:var(--surface)!important;color:var(--fg-strong)!important;border:1px solid var(--border-strong)!important;border-radius:var(--radius-pill)!important;font-weight:500!important;box-shadow:var(--shadow-sm)!important;transition:all .15s ease!important}a[style*="var(--accent)"]:hover,button[type=submit][style*="var(--accent)"]:hover{background:var(--black)!important;color:#fff!important;border-color:var(--black)!important;text-decoration:none!important}form a[style*="border: 1px solid"][href^="/"]{border-radius:var(--radius-pill)!important}section[style*=border-top]{border-top:1px solid var(--border)!important}[style*="rgba(255, 255, 255, 0.02)"],[style*="rgba(255, 255, 255, 0.03)"],[style*="rgba(255, 255, 255, 0.04)"],[style*="rgba(255, 255, 255, 0.05)"],[style*="rgba(255,255,255,0.02)"],[style*="rgba(255,255,255,0.03)"],[style*="rgba(255,255,255,0.04)"],[style*="rgba(255,255,255,0.05)"]{background:var(--surface)!important;border:1px solid var(--border)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-sm)!important}section h2+div[style*=grid]>div[style*=border]{background:var(--surface)!important;border:1px solid var(--border)!important;border-radius:var(--radius)!important;box-shadow:var(--shadow-sm)!important}@media (max-width:1024px){.login-grid{grid-template-columns:1fr!important}.login-visual{display:none!important}.login-form-logo{display:block!important}}@media (max-width:640px){.login-main{padding:.75rem!important;align-items:flex-start!important}.login-grid{gap:0!important}.login-card{padding:1.5rem 1.25rem!important;border-radius:18px!important;min-height:auto!important}}input.attendance-num::-webkit-inner-spin-button,input.attendance-num::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input.attendance-num{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.mobile-menu-trigger{display:none;position:relative;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--border,rgba(0,0,0,.1));border-radius:12px;background:var(--surface,white);color:var(--fg,#111);cursor:pointer;flex-shrink:0;margin-left:auto}.mobile-menu-trigger:active{background:rgba(0,0,0,.04)}.mobile-menu-dot{position:absolute;top:8px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--accent-red,#a01f23);border:2px solid var(--surface,white)}.mobile-menu-dialog{padding:0;border:none;margin:0;width:100vw;max-width:100%;height:100dvh;max-height:100dvh;background:transparent;color:var(--fg);overflow:hidden}.mobile-menu-dialog::-webkit-backdrop{background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mobile-menu-dialog::backdrop{background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mobile-menu-content{background:var(--surface,white);width:min(360px,92vw);height:100%;display:flex;flex-direction:column;padding:0;animation:mobileMenuSlideIn .22s cubic-bezier(.32,.72,0,1);box-shadow:4px 0 24px rgba(0,0,0,.12);overflow-y:auto}@keyframes mobileMenuSlideIn{0%{transform:translateX(-100%)}to{transform:translateX(0)}}.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border,rgba(0,0,0,.08));position:-webkit-sticky;position:sticky;top:0;background:var(--surface,white);z-index:1}.mobile-menu-brand img{height:32px!important;width:auto!important}.mobile-menu-close{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border,rgba(0,0,0,.1));border-radius:10px;color:var(--fg);cursor:pointer}.mobile-menu-close:active{background:rgba(0,0,0,.04)}.mobile-menu-user{padding:14px 20px;font-size:.9rem;font-weight:600;color:var(--fg)}.mobile-menu-nav,.mobile-menu-user{border-bottom:1px solid var(--border,rgba(0,0,0,.08))}.mobile-menu-nav{padding:12px 16px}.mobile-menu-nav .nav-strip{flex-direction:column;align-items:stretch;gap:4px}.mobile-menu-nav .nav-strip a{width:100%;justify-content:flex-start;padding:12px 14px!important;border-radius:10px;font-size:.95rem}.mobile-menu-nav .subnav-strip{margin-top:8px!important;padding-left:12px!important;border-left:2px solid var(--border,rgba(0,0,0,.08))}.mobile-menu-actions{display:flex;flex-direction:column;padding:12px 16px;gap:2px;border-bottom:1px solid var(--border,rgba(0,0,0,.08));flex:1 1}.mobile-menu-action{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;text-decoration:none;color:var(--fg);font-size:.92rem;position:relative}.mobile-menu-action:active{background:rgba(0,0,0,.04)}.mobile-menu-action svg{flex-shrink:0;opacity:.7}.mobile-menu-badge{margin-left:auto;background:var(--accent-red,#a01f23);color:white;font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:999px;min-width:22px;text-align:center}.mobile-menu-locale{pointer-events:none}.mobile-menu-locale>*{pointer-events:auto}.mobile-menu-locale .icon-btn{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center}.mobile-menu-logout-form{padding:16px 20px calc(24px + env(safe-area-inset-bottom))}.mobile-menu-logout{width:100%;padding:14px;background:transparent;border:1px solid var(--accent-red,#a01f23);color:var(--accent-red,#a01f23);border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer}.mobile-menu-logout:active{background:rgba(160,31,35,.06)}@media (max-width:1024px){.mobile-menu-trigger{display:inline-flex}.app-header-inner>.desktop-only{display:none!important}.app-header-inner{padding:.6rem 1rem!important;gap:.75rem!important}.app-header .brand img{height:32px!important}.data-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}}@media (max-width:768px){.data-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%;font-size:.8rem}.data-table td,.data-table th{padding:.6rem .7rem!important;white-space:nowrap}.data-table td.muted{white-space:normal;word-break:break-word}.app-main{padding:1.25rem 1rem 1rem!important}}@media (max-width:640px){.data-table{display:block;overflow-x:visible;font-size:.85rem}.data-table thead{display:none}.data-table tbody,.data-table td,.data-table tr{display:block;width:100%}.data-table tr{border:1px solid var(--border);border-radius:12px;margin-bottom:.65rem;padding:.25rem .15rem;background:var(--surface)}.data-table tr[data-urgency=critical]{border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}.data-table td{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;text-align:right;border:none!important;padding:.4rem .8rem!important;white-space:normal!important;word-break:break-word}.data-table td:before{content:attr(data-label);flex-shrink:0;text-align:left;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.data-table td[data-label=""]{justify-content:flex-end;gap:.4rem;flex-wrap:wrap}.data-table td[data-label=""]:before{content:none}.data-table td.col-action{width:auto}.data-table.report-edit-table{display:table;width:auto;min-width:760px;overflow-x:visible;font-size:.82rem}.data-table.report-edit-table thead{display:table-header-group}.data-table.report-edit-table tbody{display:table-row-group}.data-table.report-edit-table tr{display:table-row;width:auto;border:none;border-radius:0;margin-bottom:0;padding:0;background:transparent}.data-table.report-edit-table td,.data-table.report-edit-table th{display:table-cell;width:auto;text-align:left;white-space:normal}.data-table.report-edit-table td:before{content:none}}.salary-pin-modal{padding:0;border:none;border-radius:16px;background:transparent;max-width:460px;width:min(92vw,460px)}.salary-pin-modal::-webkit-backdrop{background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.salary-pin-modal::backdrop{background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.salary-pin-modal-content{background:var(--surface,white);border-radius:16px;padding:1.5rem 1.5rem 1.25rem;color:var(--fg);box-shadow:0 12px 32px rgba(0,0,0,.18)}@media (max-width:640px){.procedure-row{display:flex!important;flex-direction:column;gap:6px!important}.procedure-row>div{width:100%}.procedure-row>div:first-child{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.procedure-row>div:nth-child(4){position:absolute;right:.75rem;top:.55rem;text-align:right!important}.procedure-row{position:relative}.procedure-row>div:nth-child(2),.procedure-row>div:nth-child(3){display:inline-block}.procedure-row>div:nth-child(2){width:calc(100% - 110px);padding-right:8px;vertical-align:middle}.procedure-row>div:nth-child(3){width:110px;vertical-align:middle}}.report-cal-cell{cursor:pointer}.report-cal-cell:hover{border-color:var(--accent-blue,#5ba3f5)!important;box-shadow:0 2px 10px rgba(31,95,171,.16)!important;transform:translateY(-1px)}@media (max-width:640px){.report-calendar-grid{gap:3px!important}.report-calendar-grid>a,.report-calendar-grid>div{min-height:56px!important}.report-calendar-grid>a{padding:.3rem!important;gap:.2rem!important;border-radius:8px!important}.report-calendar-grid>a>div:first-child{font-size:.72rem!important}.report-calendar-grid>a>div:last-child>div{font-size:.58rem!important;padding:1px 4px!important}.report-calendar-grid--head>div{font-size:.6rem!important;padding:.25rem 0!important}.pdf-toolbar-actions .viewer-btn .btn-label{display:none}.pdf-toolbar-actions .viewer-btn{padding:.45rem .6rem;gap:0}.funnel-step-label{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.15}}@media (hover:none){.action-card:hover,.icon-btn:hover,.nav-strip a:hover,.row-action:hover{background:inherit!important}}.wtab{display:inline-flex;align-items:center;gap:7px;text-decoration:none;padding:.45rem .85rem;border-radius:var(--radius-sm,8px);font-size:.85rem;font-weight:500;white-space:nowrap;border:1px solid var(--border);background:var(--surface);color:var(--fg);transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.wtab:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent-blue) 35%,var(--border));background:color-mix(in srgb,var(--accent-blue) 5%,var(--surface))}.wtab:active{transform:translateY(0)}.wtab--active,.wtab--active:hover{color:var(--accent-blue);background:color-mix(in srgb,var(--accent-blue) 13%,var(--surface));border-color:color-mix(in srgb,var(--accent-blue) 45%,var(--border));transform:translateY(-2px)}.wtab__icon{display:inline-flex;flex-shrink:0}.wtab__badge{font-size:.65rem;line-height:1;padding:3px 7px;border-radius:var(--radius-pill,999px);background:var(--surface-hover);color:var(--muted);border:1px solid var(--border);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:background .18s ease,color .18s ease}.wtab--active .wtab__badge{background:color-mix(in srgb,var(--accent-blue) 22%,transparent);color:var(--accent-blue);border-color:transparent}.teczka-cta{display:inline-flex;align-items:center;gap:11px;text-decoration:none;background:var(--surface);border:2px solid var(--warning);border-radius:var(--radius,16px);padding:.55rem .9rem;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease;animation:teczkaPulse 2.6s ease-in-out infinite}.teczka-cta:hover{transform:translateY(-2px);animation:none;box-shadow:0 4px 14px color-mix(in srgb,var(--warning) 30%,transparent)}.teczka-cta__chip{width:36px;height:36px;border-radius:10px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--warning) 18%,var(--surface));color:var(--warning)}.teczka-cta__title{font-size:.9rem;font-weight:600;color:var(--fg-strong);line-height:1.2}.teczka-cta__sub{font-size:.72rem;color:var(--muted)}@keyframes teczkaPulse{0%,to{transform:scale(1)}50%{transform:scale(1.025)}}.wtab__divider{width:1px;align-self:stretch;min-height:1.6rem;background:var(--border);margin:0 .15rem 0 .35rem;flex-shrink:0}.teczka-pill{display:inline-flex;align-items:center;gap:7px;text-decoration:none;white-space:nowrap;font-size:.85rem;font-weight:600;border-radius:var(--radius-pill,999px);padding:.45rem .95rem;color:var(--fg-strong);background:color-mix(in srgb,var(--warning) 18%,var(--surface));border:1.5px solid var(--warning);transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.teczka-pill__icon{display:inline-flex;flex-shrink:0;color:color-mix(in srgb,var(--warning) 80%,#000)}.teczka-pill:hover{transform:translateY(-2px);background:color-mix(in srgb,var(--warning) 28%,var(--surface));box-shadow:0 4px 12px color-mix(in srgb,var(--warning) 28%,transparent)}.teczka-pill--active,.teczka-pill--active:hover{background:var(--warning);border-color:var(--warning);color:#3a2406}.teczka-pill--active .teczka-pill__icon{color:#3a2406}@media (prefers-reduced-motion:reduce){.teczka-cta{animation:none}.teczka-pill,.teczka-pill:hover,.wtab,.wtab--active,.wtab:hover{transition:none}}.tdoc-group{border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:7px;background:var(--surface)}.tdoc-head{list-style:none;display:flex;align-items:center;gap:10px;padding:9px 12px;cursor:pointer;font-size:.86rem}.tdoc-head::-webkit-details-marker{display:none}.tdoc-head:hover{background:var(--surface-hover)}.tdoc-name{font-weight:600}.tdoc-sub{color:var(--muted);font-weight:400;font-size:.78rem}.tdoc-count{font-size:.7rem;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--surface-hover);color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tdoc-chev{margin-left:auto;color:var(--muted);transition:transform .18s ease;flex-shrink:0}.tdoc-group[open]>.tdoc-head .tdoc-chev{transform:rotate(90deg)}.tdoc-body{border-top:1px solid var(--border);padding:10px 12px}.tdoc-year{font-size:.7rem;color:var(--muted);margin:0 0 5px;font-weight:600}.tdoc-months{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}.tdoc-mo{display:inline-flex;align-items:center;justify-content:center;min-width:32px;padding:4px 8px;border-radius:7px;font-size:.72rem;font-weight:600;text-decoration:none;background:color-mix(in srgb,var(--success) 14%,transparent);color:var(--success);border:1px solid color-mix(in srgb,var(--success) 30%,transparent);transition:transform .12s ease}.tdoc-mo:hover{transform:translateY(-1px)}.tdoc-mo--miss{background:transparent;color:var(--muted);border:1px dashed var(--border-strong,var(--border));cursor:default}.tdoc-single{cursor:default}.tdoc-single:hover{background:transparent}.tdoc-actions{margin-left:auto;display:inline-flex;align-items:center;gap:.4rem;flex-shrink:0}.hrdoc-grouprow td{background:var(--surface-hover);font-size:.85rem;font-weight:500}.hrdoc-grouprow:hover td{background:color-mix(in srgb,var(--accent-blue) 7%,var(--surface-hover))}.hrdoc-chev{color:var(--muted);transition:transform .18s ease}.hrdoc-chev--open{transform:rotate(90deg)}.att-cell:not(:disabled):hover{background:color-mix(in srgb,var(--accent-blue) 9%,var(--surface))!important}.att-catmenu{position:fixed;z-index:1100;min-width:232px;max-width:280px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 18px 50px rgba(15,23,42,.28);padding:6px;animation:catmenuIn .12s ease}@keyframes catmenuIn{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.att-catmenu__head{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:.45rem .6rem .35rem}.att-catmenu-item{display:flex;align-items:center;gap:9px;width:100%;padding:.5rem .6rem;border:0;background:transparent;cursor:pointer;font-size:.88rem;font-family:inherit;color:var(--fg);text-align:left;border-radius:9px;transition:background .12s ease}.att-catmenu-item:hover{background:var(--surface-hover)}.att-catmenu-item__dot{width:11px;height:11px;border-radius:50%;flex-shrink:0}.att-catmenu-item__abbrev{margin-left:auto;font-size:.7rem;color:var(--muted);font-weight:700}.att-catmenu__sep{height:1px;background:var(--border);margin:5px 4px}.att-catmenu-item--danger{color:var(--danger,#c43838)}.anim-btn{transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .12s ease,box-shadow .16s ease}.anim-btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.anim-btn:not(:disabled):active{transform:scale(.95);box-shadow:none}.anim-switch{transition:background-color .2s ease,transform .12s ease}.anim-switch:not(:disabled):active{transform:scale(.93)}.anim-switch-knob{transition:transform .2s cubic-bezier(.34,1.56,.64,1);will-change:transform}@media (prefers-reduced-motion:reduce){.anim-btn,.anim-btn:active,.anim-btn:hover,.anim-switch,.anim-switch-knob,.anim-switch:active{transition:none;transform:none}}.anim-seg{transition:background-color .16s ease,color .16s ease}.anim-seg:not(:disabled):hover{background-color:var(--surface-hover)}@media (prefers-reduced-motion:reduce){.anim-seg{transition:none}}.worker-id-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:.6rem .75rem;gap:.6rem .75rem}.worker-id-grid .wf-span2{grid-column:span 2}@media (max-width:1024px){.worker-id-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.worker-id-grid .wf-span2{grid-column:span 1}}@media (max-width:640px){.worker-id-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.reminder-events-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.65rem;gap:.65rem}@media (max-width:768px){.reminder-events-grid{grid-template-columns:1fr}}.day-tab{position:relative;height:38px;border:0;background:transparent;color:var(--muted);font-size:.83rem;font-weight:600;font-family:inherit;cursor:pointer;transition:color .18s ease,transform .15s ease}.day-tab:after{content:"";position:absolute;left:50%;bottom:2px;width:0;height:2px;border-radius:2px;background:#378add;opacity:0;transform:translateX(-50%);transition:width .22s ease,opacity .2s ease,box-shadow .25s ease}.day-tab:not(:disabled):hover{color:var(--fg)}.day-tab:not(:disabled):active{transform:scale(.96)}.day-tab--on{color:#185fa5}.day-tab--on:after{width:72%;opacity:1;box-shadow:0 0 8px rgba(55,138,221,.9),0 0 3px rgba(55,138,221,.85);animation:day-underline-glow 2.4s ease-in-out infinite}@keyframes day-underline-glow{0%,to{box-shadow:0 0 6px rgba(55,138,221,.65),0 0 2px rgba(55,138,221,.7)}50%{box-shadow:0 0 13px rgba(55,138,221,1),0 0 5px rgba(55,138,221,.95)}}.day-tab:disabled{cursor:default}@media (prefers-reduced-motion:reduce){.day-tab,.day-tab:after{transition:none}.day-tab--on:after{animation:none;box-shadow:0 0 8px rgba(55,138,221,.8)}}summary.row-action{list-style:none}summary.row-action::-webkit-details-marker{display:none}.export-menu-item{display:block;padding:.5rem .7rem;border-radius:7px;font-size:.88rem;color:var(--fg-strong);text-decoration:none}.export-menu-item:hover{background:var(--surface-hover)}.q-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-auto-rows:1fr;grid-gap:.8rem;gap:.8rem}.q-tile{display:flex;flex-direction:column;justify-content:center;gap:4px;min-height:96px;padding:.9rem 1.05rem;background:var(--surface);border-left:1px solid var(--border);border:1px solid var(--border);border-left-width:3px;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-decoration:none;color:var(--fg);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;animation:q-rise .3s ease both}a.q-tile:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,16,17,.1)}.q-tile:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(30,58,138,.35)}.q-tile__value{font-size:1.9rem;font-weight:800;line-height:1;color:var(--fg)}.q-tile__label{font-size:.78rem;color:var(--muted)}.q-tile[data-tint=critical]{border-left-color:#a01f23}.q-tile[data-tint=auto-draft],.q-tile[data-tint=warning]{border-left-color:#c98a00}.q-tile[data-tint=active],.q-tile[data-tint=success]{border-left-color:#1f8a4c}.q-tile[data-tint=info]{border-left-color:#1e3a8a}.q-tile[data-tint=critical] .q-tile__value{color:#a01f23}.q-tile[data-tint=auto-draft] .q-tile__value,.q-tile[data-tint=warning] .q-tile__value{color:#9a6a00}.q-actions{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center}.q-actions .btn-primary,.q-actions .btn-secondary,.q-actions .row-action{min-height:38px;display:inline-flex;align-items:center;justify-content:center}@keyframes q-rise{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@media (max-width:640px){.q-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.q-tile{min-height:84px;padding:.75rem .85rem}.q-tile__value{font-size:1.55rem}.q-actions .row-action{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 0.45rem)}}@media (prefers-reduced-motion:reduce){.q-tile{animation:none;transition:none}a.q-tile:hover{transform:none}}.q-scope .row-action{min-height:36px;box-sizing:border-box}.q-scope .btn-primary,.q-scope .btn-secondary{min-height:40px;box-sizing:border-box}.q-scope section{transition:box-shadow .16s ease}@media (max-width:1024px){.q-scope .data-table{font-size:.85rem}}@media (max-width:640px){.q-scope h1{font-size:1.4rem!important;line-height:1.2}.q-scope .data-table{font-size:.8rem}.q-scope .data-table td,.q-scope .data-table th{padding:.42rem .5rem!important}.q-scope .row-action{min-height:40px}}.attendance-list{display:flex;flex-direction:column;gap:6px}.attendance-head,.attendance-row{display:grid;grid-template-columns:minmax(150px,2.2fr) 132px 92px 84px 84px 74px minmax(140px,2fr);grid-gap:8px;gap:8px}.attendance-head{padding:0 .5rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.attendance-row{align-items:center;padding:.45rem .5rem;border-radius:10px}.att-cell{min-width:0}.att-worker{font-size:.85rem;line-height:1.3}@media (max-width:768px){.attendance-head{display:none}.attendance-row{gap:8px;border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:.75rem}.att-cell,.attendance-row{display:flex;flex-direction:column}.att-cell{gap:3px}.att-cell[data-label]:before{content:attr(data-label);font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.att-worker{padding-bottom:6px;border-bottom:1px solid var(--border)}}.cal-chips{display:flex}.cal-dots{display:none}@media (max-width:640px){.cal-chips{display:none!important}.cal-dots{display:flex!important}}.pwa-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:1500;display:flex;align-items:flex-start;justify-content:space-around;gap:2px;padding:12px 8px calc(18px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -2px 12px rgba(0,0,0,.06)}.pwa-bottom-nav svg{width:24px!important;height:24px!important}.pwa-bottom-nav span{font-size:11px!important}.pwa-fab{flex:0 0 auto;width:72px;height:72px;margin-top:-32px;border-radius:50%;background:#1f8a4c;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;text-decoration:none;box-shadow:0 6px 18px rgba(31,138,76,.45)}.pwa-bottom-nav .pwa-fab span{font-size:10px!important;white-space:nowrap;letter-spacing:-.2px;line-height:1}html.pwa-standalone .app-main{padding-bottom:calc(98px + env(safe-area-inset-bottom))!important}html.pwa-standalone .pwa-hide{display:none!important}#pwa-splash{display:none}#pwa-splash img{width:64%;max-width:330px;height:auto}html[data-splash=fade] #pwa-splash,html[data-splash=show] #pwa-splash{display:flex;position:fixed;inset:0;z-index:2147483647;background:#3b4ee6;align-items:center;justify-content:center;padding-bottom:24vh;box-sizing:border-box;transition:opacity .45s ease}html[data-splash=fade] #pwa-splash{opacity:0;pointer-events:none}.foreman-stats-compact{display:none}html.pwa-standalone .foreman-stats-compact{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px;margin-bottom:1.1rem}.fstat{display:flex;flex-direction:column;gap:2px;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--muted);border-radius:10px;text-decoration:none;color:var(--fg-strong)}.fstat[data-accent=amber]{border-left-color:#d4870f}.fstat[data-accent=mint]{border-left-color:#1f8a4c}.fstat[data-accent=blue]{border-left-color:#1f5fab}.fstat-v{font-size:1.4rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.1}.fstat-l{font-size:.7rem;color:var(--muted);line-height:1.2}@media (max-width:640px){.report-cal-cell{min-height:0!important;aspect-ratio:1/1;padding:.3rem .35rem!important;gap:.2rem!important}}.audit-mobile-list{display:none}html.pwa-standalone .audit-mobile-list{display:flex;flex-direction:column;gap:.6rem;margin-top:.5rem}html.pwa-standalone .audit-desktop-table{display:none}.audit-m-card{border:1px solid var(--border-strong);border-radius:14px;background:var(--surface);box-shadow:0 2px 12px rgba(0,0,0,.07);overflow:hidden}:root[data-theme=dark] .audit-m-card{box-shadow:0 2px 12px rgba(0,0,0,.35)}.audit-m-summary{display:flex;align-items:center;gap:.6rem;padding:.8rem .9rem;cursor:pointer;list-style:none}.audit-m-summary::-webkit-details-marker{display:none}.audit-m-dot{width:9px;height:9px;border-radius:999px;flex-shrink:0;background:var(--muted)}.audit-m-card[data-sev=critical] .audit-m-dot{background:#c43838}.audit-m-card[data-sev=warning] .audit-m-dot{background:#b97800}.audit-m-head{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1}.audit-m-action{font-size:.92rem;font-weight:600}.audit-m-action,.audit-m-meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audit-m-meta{font-size:.78rem;color:var(--muted)}.audit-m-chev{flex-shrink:0;color:var(--muted);display:inline-flex;transition:transform .18s ease}.audit-m-card[open] .audit-m-chev{transform:rotate(180deg)}.audit-m-body{gap:.5rem;border-top:1px solid var(--border);padding:.75rem .9rem .85rem;margin-top:.1rem}.audit-m-body,.audit-m-row{display:flex;flex-direction:column}.audit-m-row{gap:1px;font-size:.85rem}.audit-m-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600}@media (max-width:640px){html.pwa-standalone .data-table tr{border:1px solid var(--border-strong)!important;border-radius:14px!important;margin-bottom:.9rem!important;padding:.4rem .3rem!important;background:var(--surface)!important;box-shadow:0 2px 12px rgba(0,0,0,.07)!important}html.pwa-standalone[data-theme=dark] .data-table tr{box-shadow:0 2px 12px rgba(0,0,0,.35)!important}html.pwa-standalone .setting-card-row{flex-wrap:wrap}html.pwa-standalone .setting-card-control{flex-basis:100%;margin-top:.6rem}html.pwa-standalone .setting-card-control>div{align-items:flex-start!important;width:100%}html.pwa-standalone .setting-card-control>div>span{text-align:left!important;max-width:none!important}}.tile-lift{transition:transform .13s ease,box-shadow .13s ease,border-color .13s ease}.tile-lift:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(15,16,17,.1)}.apt-field{width:100%;padding:.55rem .75rem;border:1px solid var(--border);border-radius:10px;background:var(--surface,#fff);color:var(--fg-strong,#111);font:inherit;font-size:.9rem;box-sizing:border-box;transition:border-color .12s ease,box-shadow .12s ease;outline:none}.apt-field:focus{border-color:var(--accent-blue,#378add);box-shadow:0 0 0 3px rgba(91,163,245,.25)}.apt-field::placeholder{color:var(--muted-2,#9aa3af)}.apt-form-card{display:grid;grid-gap:.95rem;gap:.95rem;max-width:760px;background:var(--surface,#fff);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-sm);padding:1.4rem 1.5rem}.apt-section-lab{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:.5rem 0 0;padding-top:.6rem;border-top:1px solid var(--border)}.apt-lab{display:block;font-size:.75rem;font-weight:600;color:var(--muted);margin-bottom:5px}.acc>summary{list-style:none;position:relative;padding-right:2rem;border-radius:12px;transition:background .12s}.acc>summary::-webkit-details-marker{display:none}.acc>summary:hover{background:var(--surface-2,#f4f6f9)}.acc>summary:after{content:"›";position:absolute;right:.5rem;top:50%;transform:translateY(-50%);font-size:1.5rem;line-height:1;color:var(--muted);transition:transform .15s ease}.acc[open]>summary:after{transform:translateY(-50%) rotate(90deg)}.apt-invoice-line{display:grid;grid-template-columns:1fr 70px 70px 100px 90px 32px;grid-gap:.5rem;gap:.5rem;align-items:center}@media (max-width:640px){.apt-invoice-line{grid-template-columns:1fr 1fr}.apt-invoice-line>:first-child{grid-column:1/-1}}.apt-limit-card{background:var(--surface,#fff);border:1px solid var(--border);border-radius:14px;padding:.9rem 1.1rem;box-shadow:var(--shadow-sm)}.apt-bar-track{position:relative;height:14px;background:var(--surface-2,#f1f3f6);border:1px solid var(--border);border-radius:999px;overflow:hidden}.apt-bar-fill{position:absolute;left:0;top:0;bottom:0;border-radius:999px;transform-origin:left center;animation:apt-bar-grow .75s cubic-bezier(.22,1,.36,1) both}.apt-bar-fill.ok{background:#639922}.apt-bar-fill.near{background:#ba7517}.apt-bar-fill.over{background:#a32d2d}.apt-threshold{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--fg-strong,#111);border-radius:0}@keyframes apt-bar-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.apt-bar-fill{animation:none}}@keyframes apt-pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.12);opacity:1}to{transform:scale(1);opacity:1}}.apt-check-pop{animation:apt-pop .22s cubic-bezier(.34,1.56,.64,1)}.mod-tile-btn{transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .12s ease}.mod-tile-btn:not(:disabled):active{transform:scale(.97)}.mod-tile-ico{transition:background .16s ease,color .16s ease,transform .2s ease}.mod-tile-btn:not(:disabled):hover .mod-tile-ico{transform:translateY(-1px) scale(1.06)}.apt-role-seg{display:inline-flex;background:var(--surface-2,#fff);border:1px solid var(--border);border-radius:10px;padding:3px;gap:2px}.apt-role-seg label{position:relative;cursor:pointer;margin:0}.apt-role-seg input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}.apt-role-seg span{display:block;padding:6px 13px;font-size:.8rem;border-radius:7px;color:var(--muted);white-space:nowrap;transition:background .13s ease,color .13s ease}.apt-role-seg label:hover span{color:var(--fg)}.apt-role-seg label:has(input:checked) span{background:#be185d;color:#fff;font-weight:600}.apt-role-seg input:focus-visible+span{box-shadow:0 0 0 2px rgba(190,24,93,.35)}.apt-edit-pencil{width:26px;height:26px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:7px;background:var(--surface,#fff);color:var(--muted);cursor:pointer;list-style:none;transition:background .12s ease,color .12s ease,border-color .12s ease}.apt-edit-pencil::-webkit-details-marker{display:none}.apt-edit-pencil:hover{color:var(--accent-blue,#1f5fab);border-color:var(--accent-blue,#1f5fab)}.hub-metrics{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:.25rem .9rem}.hub-metrics>summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;gap:.6rem;padding:.7rem .15rem;font-size:.9rem;color:var(--fg-strong)}.hub-metrics>summary::-webkit-details-marker{display:none}.hub-metrics>summary:before{content:"▸";color:var(--muted);font-size:.85rem;transition:transform .14s ease}.hub-metrics[open]>summary:before{transform:rotate(90deg)}.hub-metrics-pct{font-weight:700;color:var(--fg-strong)}.hub-metrics[open]{padding-bottom:1.1rem}.hub-attn-group>summary{list-style:none}.hub-attn-group>summary::-webkit-details-marker{display:none}.hub-attn-chev{transition:transform .14s ease}.hub-attn-group[open]>summary .hub-attn-chev{transform:rotate(180deg)}