:root{--navy:#07111d;--sky:#c5d8e4;--gold:#dfd5c9;--slate:#888c95;--stone:#afb3bc;--mist:#f1f1f1;--paper:#fff;--blue-200:#10263f;--blue-400:#27537f;--blue-1000:#c5d8e4;--pos:#36854d;--neg:#9d2f2f;--pos-soft:#e4efe7;--neg-soft:#f2e4e4;--surface-page:#f8f8f8;--surface-card:var(--paper);--surface-sunken:#f1f1f1;--surface-hover:#f1f1f1;--surface-active:#d0d2d7;--surface-inverse:var(--navy);--text-strong:var(--navy);--text-body:#1b2733;--text-muted:var(--slate);--text-subtle:var(--stone);--text-inverse:var(--paper);--text-link:var(--blue-400);--border-default:#e2e3e6;--border-muted:#ececee;--border-strong:var(--navy);--border-focus:var(--blue-400);--accent:var(--navy);--accent-soft:var(--blue-1000);--accent-hover:var(--blue-200);--accent-gold:#dfd5c9;--accent-gold-ink:#6f5f43;--font-sans:"Host Grotesk", "Helvetica Neue", Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-2xs:11px;--text-xs:13px;--text-sm:14px;--text-base:16px;--text-lg:18px;--leading-snug:1.18;--leading-normal:1.5;--tracking-label:.12em;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-pill:999px;--shadow-xs:0 1px 2px #07111d0d;--shadow-sm:0 1px 3px #07111d12, 0 1px 2px #07111d0a;--shadow-md:0 4px 12px #07111d14, 0 1px 3px #07111d0d;--ring:0 0 0 3px #346b9d52;--dur-fast:.12s;--ease:cubic-bezier(.2, 0, .1, 1);--topbar-h:60px;--container-max:1280px;--gutter:24px;--ink:var(--text-strong);--muted:var(--text-muted);--panel:var(--surface-card);--line:var(--border-default);--accent-deep:var(--navy);--warn:#8a5a12;--danger:var(--neg);--shadow:var(--shadow-sm);--vac-weekday:color-mix(in srgb, var(--text-body) 16%, var(--surface-card));--vac-weekend:var(--surface-sunken);--vac-weekend-wash:color-mix(in srgb, var(--surface-hover) 50%, transparent);--vac-holiday:#e8c98a;--vac-holiday-wash:#e8c98a57;--vac-holiday-ink:#8a6a2e;--vac-approved:#07111d;--vac-past:#8896a8;--vac-pending-bg:#c5d8e4;--vac-pending-border:#07111d;--vac-mandatory:#a85a32;--vac-select:#07111d;--attention-bg:#6b4fbf;--attention-fg:#f6f3ff}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--sky:#3a5166;--gold:#8a7d6a;--slate:#9aa3ae;--stone:#6f7884;--mist:#1a222c;--paper:#121a24;--blue-200:#8eb4d4;--blue-400:#7aa3c4;--blue-1000:#1a2e42;--pos:#5aa870;--neg:#d16a6a;--pos-soft:#1a2e22;--neg-soft:#2e1a1a;--surface-page:#0b1219;--surface-card:#121a24;--surface-sunken:#0e151d;--surface-hover:#1a2430;--surface-active:#243041;--surface-inverse:#e8eef4;--text-strong:#eef3f7;--text-body:#d2dae3;--text-muted:#9aa3ae;--text-subtle:#6f7884;--text-inverse:#07111d;--text-link:#8eb4d4;--border-default:#2a3542;--border-muted:#1e2833;--border-strong:#c5d8e4;--border-focus:#5a8ab5;--accent:#c5d8e4;--accent-soft:#1a2e42;--accent-hover:#e8eef4;--accent-gold:#3d362c;--accent-gold-ink:#d4c4a8;--shadow-xs:0 1px 2px #00000059;--shadow-sm:0 1px 3px #0006, 0 1px 2px #00000047;--shadow-md:0 8px 24px #00000073, 0 2px 6px #0000004d;--ring:0 0 0 3px #7aa3c459;--warn:#d4a45a;--shadow:var(--shadow-sm);--vac-weekday:#243140;--vac-weekend:#151c26;--vac-weekend-wash:#24304138;--vac-holiday:#9a7eb0;--vac-holiday-wash:#9a7eb038;--vac-holiday-ink:#d0bce0;--vac-approved:#5aa3d4;--vac-past:#5c6b7a;--vac-pending-bg:#1a3348;--vac-pending-border:#8eb4d4;--vac-mandatory:#d4895c;--vac-select:#5aa3d4;--attention-bg:#ffd84a;--attention-fg:#1a1608}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-body);background:var(--surface-page);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-weight:400}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{min-width:320px}a{color:inherit;cursor:pointer;text-decoration:none}button,input,select,textarea{font:inherit}button:not(:disabled),[role=button]:not([aria-disabled=true]),summary{cursor:pointer}button:disabled,[aria-disabled=true]{cursor:not-allowed}input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]),textarea{cursor:text}input[type=checkbox],input[type=radio],input[type=file],select:not(:disabled){cursor:pointer}button svg,a svg,[role=button] svg,.btn svg,.menu-picker-trigger svg{pointer-events:none}:focus-visible{box-shadow:var(--ring);outline:none}.tabular{font-variant-numeric:tabular-nums}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{background:var(--surface-page);min-width:0;min-height:100vh}.topbar{z-index:50;height:calc(var(--topbar-h) + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) max(1.5rem, env(safe-area-inset-right,0px)) 0 max(1.5rem, env(safe-area-inset-left,0px));border-bottom:1px solid var(--border-default);background:var(--surface-card);align-items:center;gap:1rem;display:flex;position:sticky;top:0}.topbar-menu-btn{border-radius:var(--radius-sm);width:2.75rem;height:2.75rem;color:var(--text-strong);background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:none}.topbar-menu-btn:hover{background:var(--surface-hover)}.nav-backdrop{display:none}.brand{flex-shrink:0;align-items:center;display:inline-flex}.brand-logo-swap{align-items:center;line-height:0;display:inline-flex}.brand-logo{width:auto;height:1.5rem;display:block}.brand-logo-on-dark,:root[data-theme=dark] .brand-logo-on-light{display:none}:root[data-theme=dark] .brand-logo-on-dark{display:block}.brand.large{margin-bottom:1.25rem}.brand.large .brand-logo{height:2rem}.topbar-nav{flex:1;align-items:center;gap:.15rem;min-width:0;display:flex;overflow:visible}.nav a.nav-tab{color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;transition:color var(--dur-fast) var(--ease);align-items:center;gap:.4rem;padding:1.15rem .75rem;font-weight:500;display:inline-flex;position:relative}.nav a.nav-tab:hover{color:var(--text-strong);background:0 0}.nav a.nav-tab.active{color:var(--text-strong);font-weight:600}.nav a.nav-tab.active:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:0;left:.75rem;right:.75rem}.nav-approver-group,.nav-manage-group{border-left:1px solid var(--border-default);align-items:center;gap:.25rem;margin-left:.5rem;padding-left:.75rem;display:flex}.manage-menu{z-index:50;position:relative}.manage-menu-trigger{border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);background:0 0;border:0;align-items:center;gap:.35rem;margin:0;padding:.35rem .75rem;font-weight:500;display:inline-flex}.manage-menu-trigger:hover,.manage-menu.is-open .manage-menu-trigger,.manage-menu.is-active .manage-menu-trigger{color:var(--text-strong);background:var(--surface-hover)}.manage-menu-panel{z-index:60;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card);min-width:11rem;padding:.25rem;position:absolute;top:calc(100% + .35rem);left:0;box-shadow:0 10px 30px #0f172a14}.manage-menu-list{margin:0;padding:0;list-style:none}.manage-menu-item{border-radius:var(--radius-sm);color:var(--text-body,var(--text));font-size:var(--text-sm);cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem .65rem;text-decoration:none;display:flex}.manage-menu-item:hover,.manage-menu-item.is-active{background:var(--surface-hover);color:var(--text-strong)}.nav a.nav-pill{border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--text-sm);transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);align-items:center;gap:.4rem;padding:.35rem .75rem;font-weight:500;display:inline-flex}.nav a.nav-pill:hover{color:var(--text-strong);background:var(--surface-hover)}.nav a.nav-pill.is-active,.nav a.nav-pill.active{color:var(--text-strong);background:var(--surface-hover);font-weight:500}.nav a.nav-pill.active:after,.nav a.nav-pill.is-active:after{content:none}.nav-count{background:var(--attention-bg);min-width:1.25rem;color:var(--attention-fg);font-family:var(--font-mono,ui-monospace, monospace);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;padding:.1rem .4rem;font-size:.625rem;font-weight:650;display:inline-flex}.inbox-list{margin:0;padding:0;list-style:none}.inbox-list>li+li{border-top:1px solid var(--border-default)}.inbox-toolbar{border-bottom:1px solid var(--border-default);background:var(--surface-sunken);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem 1rem;padding:.65rem .85rem .65rem .75rem;display:flex}.inbox-select-all{font-size:var(--text-sm);color:var(--text-body);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.55rem;margin:0;font-weight:500;display:inline-flex}.inbox-select-all input,.inbox-row-check input{width:.95rem;height:.95rem;accent-color:var(--navy);margin:0}.inbox-bulk-actions{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.inbox-bulk-actions .btn{align-items:center;gap:.35rem;display:inline-flex}.inbox-row{--inbox-status-col:6.75rem;--inbox-type-col:5.5rem;grid-template-columns:2.25rem var(--inbox-status-col) var(--inbox-type-col) minmax(0, 1fr) 7.5rem max-content 2.5rem;transition:background var(--dur-fast) var(--ease);background:0 0;align-items:center;column-gap:.75rem;padding:.55rem .55rem .55rem 0;display:grid}.inbox-row:hover{background:var(--surface-hover)}.inbox-row:has(:focus-visible){background:var(--surface-hover)}.inbox-row.is-unread{background:color-mix(in srgb, var(--accent-soft) 45%, transparent)}.inbox-row.is-unread:hover{background:color-mix(in srgb, var(--accent-soft) 70%, transparent)}.inbox-row.is-unread:has(:focus-visible){background:color-mix(in srgb, var(--accent-soft) 70%, transparent)}.inbox-row.is-selected{background:color-mix(in srgb, var(--sky) 55%, transparent)}.inbox-row.is-selected.is-unread{background:color-mix(in srgb, var(--sky) 40%, color-mix(in srgb, var(--accent-soft) 50%, transparent))}.inbox-row.is-selected:hover{background:color-mix(in srgb, var(--sky) 70%, transparent)}.inbox-row.is-selected:has(:focus-visible){background:color-mix(in srgb, var(--sky) 70%, transparent)}.inbox-row-check{cursor:pointer;flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;margin:0;padding:0 0 0 .75rem;display:inline-flex}.inbox-row-open{grid-column:2/5;grid-template-columns:subgrid;text-align:left;cursor:pointer;min-width:0;color:inherit;background:0 0;border:0;align-items:center;column-gap:.75rem;padding:.3rem 0;display:grid}.inbox-col-status{align-items:center;min-width:0;display:flex}.inbox-col-type{font-size:var(--text-sm);color:var(--text-body);min-width:0;font-weight:500}.inbox-col-detail{gap:.25rem;min-width:0;display:grid}.inbox-row-detail{font-size:var(--text-sm);color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.inbox-row-body{font-size:var(--text-sm);margin:0;line-height:1.4}.inbox-row-actor{text-overflow:ellipsis;white-space:nowrap;text-align:right;min-width:0;line-height:1.3;overflow:hidden}.inbox-row-time{text-align:right;white-space:nowrap;padding:0 .15rem 0 0;line-height:1.3}.inbox-mark-toggle{border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--text-muted);opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;margin:0;display:inline-flex}.inbox-mark-toggle:disabled{opacity:.35;cursor:help;pointer-events:auto}.inbox-row:hover .inbox-mark-toggle:not(:disabled){opacity:1;pointer-events:auto}.inbox-row:has(:focus-visible) .inbox-mark-toggle:not(:disabled){opacity:1;pointer-events:auto}.inbox-row:hover .inbox-mark-toggle:disabled{opacity:.45}.inbox-row:has(:focus-visible) .inbox-mark-toggle:disabled{opacity:.45}.inbox-mark-toggle:hover:not(:disabled),.inbox-mark-toggle:focus-visible:not(:disabled){color:var(--text-strong);background:var(--surface-card);border-color:var(--border-default)}@media (hover:none),(pointer:coarse){.inbox-mark-toggle{opacity:.55;pointer-events:auto}}@media (width<=720px){.inbox-row{grid-template-columns:2.25rem minmax(0,1fr) max-content 2.5rem;column-gap:.5rem}.inbox-row-open{flex-wrap:wrap;grid-column:2;align-items:center;gap:.3rem .65rem;display:flex}.inbox-col-detail{flex:100%}.inbox-row-actor{display:none}}.user-chip{flex-shrink:0;align-items:center;gap:.5rem;margin-left:auto;display:flex}.inbox-icon-btn{border-radius:var(--radius-sm);width:2.25rem;height:2.25rem;color:var(--text-muted);transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);justify-content:center;align-items:center;display:inline-flex;position:relative}.inbox-icon-btn:hover,.inbox-icon-btn.is-active,.inbox-icon-btn.active{color:var(--text-strong);background:var(--surface-hover)}.inbox-icon-badge{background:var(--attention-bg);min-width:1rem;height:1rem;color:var(--attention-fg);font-family:var(--font-mono,ui-monospace, monospace);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;padding:0 .25rem;font-size:.5625rem;font-weight:650;line-height:1;display:inline-flex;position:absolute;top:.15rem;right:.1rem}.menu-picker{position:relative}.menu-picker-trigger{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);cursor:pointer;max-width:18rem;min-height:2.5rem;color:inherit;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);align-items:center;gap:.5rem;padding:.35rem .65rem;display:inline-flex}.menu-picker-trigger:hover:not(:disabled),.menu-picker.is-open .menu-picker-trigger{background:var(--surface-hover);border-color:var(--border-strong,var(--border-default))}.menu-picker-trigger:disabled{opacity:.55;cursor:not-allowed}.user-menu .menu-picker-trigger{background:0 0;border-color:#0000;min-height:0;padding:.35rem .55rem}.user-menu .menu-picker-trigger:hover:not(:disabled),.user-menu.is-open .menu-picker-trigger{background:var(--surface-hover);border-color:var(--border-default)}.user-menu-avatar{background:color-mix(in srgb, var(--text-body) 12%, var(--surface-card));width:1.65rem;height:1.65rem;color:var(--text-muted);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.user-menu-avatar img{object-fit:cover;width:100%;height:100%}.user-menu-avatar-fallback{letter-spacing:.02em;color:var(--text-strong);font-size:.62rem;font-weight:650;line-height:1}.user-menu-identity{border-bottom:1px solid var(--border-muted);padding:.75rem .85rem .65rem}.user-menu-identity-name{font-size:var(--text-sm);color:var(--text-strong);margin:0;font-weight:650;line-height:1.25}.user-menu-identity-title{font-size:var(--text-xs);color:var(--text-body);margin:.2rem 0 0;font-weight:500;line-height:1.3}.user-menu-identity-voice{flex-wrap:wrap;align-items:baseline;gap:.35rem;margin:.28rem 0 0;line-height:1.35;display:flex}.user-menu-identity-pronouns{font-size:var(--text-xs);color:var(--text-muted)}.user-menu-identity-sep{color:var(--text-subtle);font-size:var(--text-xs)}.user-menu-identity-pronunciation{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--accent-gold-ink);letter-spacing:.01em;font-style:italic}.user-menu-identity-email{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-body);margin:.35rem 0 0;line-height:1.3}.menu-picker-name{text-overflow:ellipsis;white-space:nowrap;max-width:10rem;font-size:var(--text-sm);color:var(--text-strong);font-weight:500;overflow:hidden}.menu-picker-caret{color:var(--text-muted);margin-left:auto;font-size:.7rem;line-height:1}.menu-picker-panel{z-index:50;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card);width:min(20rem,100vw - 2rem);padding:.4rem;position:absolute;top:calc(100% + .4rem);right:0;box-shadow:0 10px 30px #0f172a14}.person-picker .menu-picker-panel{width:min(18rem,100vw - 2rem);left:0;right:auto}.person-picker .menu-picker-panel.is-above{top:auto;bottom:calc(100% + .4rem)}.person-picker-popover.menu-picker-panel{z-index:80;width:var(--radix-popover-trigger-width,min(18rem, calc(100vw - 2rem)));min-width:min(18rem,100vw - 2rem);position:relative;top:auto;left:auto;right:auto}.person-picker-popover.menu-picker-panel.is-wide{width:var(--radix-popover-trigger-width,min(28rem, calc(100vw - 2rem)));min-width:var(--radix-popover-trigger-width,min(28rem, calc(100vw - 2rem)))}.person-picker.is-wide .menu-picker-trigger{width:100%;min-width:22rem;max-width:min(28rem,100vw - 2rem)}.person-picker.is-wide .menu-picker-name{flex:1;max-width:none}.person-picker.is-wide .menu-picker-panel{box-sizing:border-box;width:100%;min-width:100%;max-width:min(28rem,100vw - 2rem)}.menu-picker-heading{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;margin:.25rem .55rem .35rem;font-size:.7rem;font-weight:600}.menu-picker-search{z-index:1;background:var(--surface-card);margin:-.05rem -.05rem .35rem;padding:.15rem .15rem .4rem;position:sticky;top:0}.menu-picker-search input{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-sunken);width:100%;height:2.1rem;color:var(--text-body);font:inherit;font-size:var(--text-sm);box-sizing:border-box;padding:0 .55rem}.menu-picker-search input:focus{border-color:var(--border-focus);box-shadow:var(--ring);outline:none}.menu-picker-empty{margin:0;padding:.55rem .65rem;list-style:none}.menu-picker-list{max-height:16rem;margin:0;padding:0;list-style:none;overflow-y:auto}.menu-picker-item{border-radius:var(--radius-sm);text-align:left;cursor:pointer;width:100%;color:inherit;transition:background var(--dur-fast) var(--ease);background:0 0;border:0;align-items:center;gap:.65rem;padding:.55rem .6rem;display:flex}.menu-picker-item:hover:not(:disabled){background:var(--surface-hover)}.menu-picker-item.is-active{background:var(--accent-soft);color:var(--text-strong)}.menu-picker-item.is-active:hover:not(:disabled){background:color-mix(in srgb, var(--accent-soft) 70%, var(--surface-hover))}.menu-picker-item:disabled{opacity:.6;cursor:wait}.menu-picker-item-main{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.menu-picker-item-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-sm);color:var(--text-strong);flex:1;font-weight:500;overflow:hidden}.menu-picker-item.is-active .menu-picker-item-name{font-weight:650}.menu-picker-item-check{color:var(--accent,var(--text-strong));flex-shrink:0}.menu-picker-item-meta{text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font-size:.7rem;overflow:hidden}.menu-picker-footer.has-divider{border-top:1px solid var(--border-default);margin-top:.35rem;padding-top:.35rem}.menu-picker-action,.menu-picker-signout{color:var(--text-muted);font-size:var(--text-sm);font-weight:500}.menu-picker-action svg,.menu-picker-signout svg{color:var(--text-muted);flex-shrink:0}.menu-picker-action:hover,.menu-picker-signout:hover{color:var(--text-strong)}.person-picker-field{font-size:var(--text-xs);color:var(--text-muted);gap:.25rem;display:grid}.person-picker-label{font-size:var(--text-xs);color:var(--text-muted)}.person-picker .menu-picker-trigger{width:100%;min-width:14rem}.people-head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;display:flex}.people-org{gap:.35rem;display:grid}.people-org-tree,.people-org-children{margin:0;padding:0;list-style:none}.people-org-item{margin:0}.people-org-row{border-radius:var(--radius-sm);align-items:center;gap:.15rem;min-height:2.5rem;display:flex}.people-org-row.is-selected{background:color-mix(in srgb, var(--accent-soft) 45%, transparent)}.people-org-twist{border-radius:var(--radius-sm);width:1.75rem;height:1.75rem;color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.people-org-twist:hover{background:var(--surface-hover);color:var(--text-strong)}.people-org-twist.is-leaf{cursor:default}.people-org-person{border-radius:var(--radius-sm);min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-wrap:wrap;flex:1;align-items:center;gap:.45rem .65rem;margin:0;padding:.35rem .55rem .35rem .15rem;display:flex}.people-org-person:hover{background:var(--surface-hover)}.people-org-name{color:var(--text-strong);font-weight:500}.people-org-email{color:var(--text-muted);font-size:var(--text-xs)}.people-org-count{color:var(--text-subtle);font-size:var(--text-xs);font-family:var(--font-mono);margin-left:auto}.people-employee-row{flex-wrap:wrap;align-items:center;gap:.65rem 1rem;display:flex}.people-employee-row .person-picker-field{flex:0 18rem;min-width:12rem;max-width:22rem}.people-employee-meta{flex-wrap:wrap;flex:10rem;align-items:center;gap:.45rem .65rem;min-width:0;margin:0;display:flex}.people-employee-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:.5rem;margin-left:auto;display:flex}.people-section-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.85rem;display:flex}.people-section-head .eyebrow{margin:0 0 .2rem}.people-sections{gap:1rem}.people-block .people-contract-form,.people-block .table-scroll,.people-block .people-manager-list{margin-top:.25rem}.people-block .row-actions{margin-top:.85rem}.people-manager-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.people-manager-option{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);color:var(--text-body);font-size:var(--text-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem .85rem;margin:0;padding:.7rem .85rem;font-weight:400;display:grid}.people-manager-option:hover{background:var(--surface-hover);border-color:var(--border-strong,var(--border-default))}.people-manager-option.is-checked{background:color-mix(in srgb, var(--accent-soft) 55%, var(--surface-card));border-color:color-mix(in srgb, var(--accent) 22%, var(--border-default))}.people-manager-option.is-locked{cursor:default}.people-manager-option.is-locked:hover{background:color-mix(in srgb, var(--accent-soft) 55%, var(--surface-card));border-color:color-mix(in srgb, var(--accent) 22%, var(--border-default))}.people-manager-option input[type=checkbox],.people-manager-option input[type=radio]{width:1.05rem;height:1.05rem;accent-color:var(--accent);cursor:pointer;margin:0}.people-manager-option input[type=checkbox]:disabled,.people-manager-option input[type=radio]:disabled{cursor:default;opacity:1}.people-manager-name{min-width:0;color:var(--text-strong);font-weight:500}.people-contract-form{flex-direction:column;gap:1.15rem;margin-top:.35rem;display:flex}.people-block .people-contract-form .people-contract-hint.muted.small{margin:0}.people-contract-row{grid-template-columns:minmax(8.5rem,1.15fr) minmax(6.25rem,7rem) minmax(6.25rem,7rem) minmax(7rem,8rem) minmax(8rem,1fr) minmax(8rem,1fr) auto auto;align-items:end;gap:.55rem .65rem;display:grid}.people-contract-row .field{min-width:0}.people-contract-from input,.people-contract-to input{width:100%;min-width:0;font-size:var(--text-xs);padding-inline:.45rem}.people-contract-hours input,.people-contract-workdays input,.people-contract-vacation input{width:100%;padding-inline:.45rem}.people-contract-row .field>span,.people-contract-note-label{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:.3rem;font-weight:500;display:block}.people-contract-note-wrap,.people-contract-save{flex-direction:column;justify-content:flex-end;align-items:flex-start;display:flex}.people-contract-save .btn{width:auto;min-width:0;height:2rem;margin-bottom:.25rem;padding-inline:.75rem}.people-contract-note-btn{width:2.5rem;height:2.5rem}.people-contract-note-btn.has-note{color:var(--text-strong);background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 35%, var(--border-default))}.people-contract-note-panel{z-index:70;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card);width:min(16rem,100vw - 2rem);box-shadow:var(--shadow-md);padding:.75rem}.people-contract-note-panel textarea{resize:vertical;width:100%;min-height:4.5rem}.people-contract-note-actions{justify-content:space-between;align-items:center;gap:.5rem;margin-top:.55rem;display:flex}.people-contract-edit-row td{vertical-align:middle}.people-contract-edit-row .people-contract-inline-input{width:100%;min-width:0;max-width:8.5rem;font-size:var(--text-xs);padding:.35rem .45rem}.people-contract-edit-row td:first-child{min-width:9rem}.people-contract-edit-row .field-select-trigger,.people-contract-edit-row .project-combo-trigger{min-height:2.25rem;font-size:var(--text-xs);padding-block:.3rem}.people-contract-edit-row .people-contract-note-btn{width:2.25rem;height:2.25rem}.people-contract-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;display:grid}@media (width<=960px){.people-contract-row{grid-template-columns:repeat(3,minmax(0,1fr))}.people-contract-type{grid-column:1/-1}.people-contract-note-wrap,.people-contract-save{grid-column:span 1}}@media (width<=720px){.people-contract-row,.people-contract-grid{grid-template-columns:1fr}.people-contract-type,.people-contract-note-wrap,.people-contract-save{grid-column:auto}}.page{width:min(var(--container-max), calc(100% - 3rem));min-width:0;max-width:100%;margin:0 auto;padding:2rem 0 3rem}.stack{gap:1.5rem;min-width:0;display:grid}.stack>*{min-width:0;max-width:100%}.btn{border-radius:var(--radius-sm);font-family:var(--font-sans);white-space:nowrap;cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);justify-content:center;align-items:center;gap:.5rem;font-weight:500;line-height:1;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-md{height:2.5rem;font-size:var(--text-sm);padding:0 1rem}.btn-sm{height:2rem;font-size:var(--text-sm);gap:.35rem;padding:0 .75rem}.btn-primary{background:var(--accent);color:var(--text-inverse);border:1px solid var(--accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-secondary{background:var(--surface-card);color:var(--text-strong);border:1px solid var(--border-default)}.btn-secondary:hover:not(:disabled){background:var(--surface-hover)}.btn-ghost{color:var(--text-strong);background:0 0;border:1px solid #0000}.btn-ghost:hover:not(:disabled){background:var(--surface-hover)}.btn-danger{background:var(--neg);color:#fff;border:1px solid var(--neg)}.btn-wide{width:100%}.primary-btn,.ghost-btn{border-radius:var(--radius-sm);cursor:pointer;height:2.5rem;font-size:var(--text-sm);transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);border:1px solid #0000;justify-content:center;align-items:center;padding:0 1rem;font-weight:500;display:inline-flex}.primary-btn{background:var(--accent);color:var(--text-inverse);border-color:var(--accent)}.primary-btn:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.primary-btn:disabled,.ghost-btn:disabled{opacity:.45;cursor:not-allowed}.primary-btn.wide{width:100%}.ghost-btn{background:var(--surface-card);border-color:var(--border-default);color:var(--text-strong)}.ghost-btn:hover:not(:disabled){background:var(--surface-hover)}.icon-btn{box-sizing:border-box;border-radius:var(--radius-sm);min-width:2rem;min-height:1.85rem;color:var(--text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:.3rem .45rem;display:inline-flex}.icon-btn:hover{background:color-mix(in srgb, var(--text-body) 12%, transparent);color:var(--text-strong)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn:disabled:hover{color:var(--text-muted);background:0 0}.icon-btn.danger:hover{background:var(--neg-soft);color:var(--neg)}.icon-btn.positive:hover{background:var(--pos-soft);color:var(--pos)}.link-btn{border-radius:var(--radius-sm);color:var(--text-link);font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;padding:.25rem .5rem;font-weight:500;display:inline-flex}.link-btn:hover:not(:disabled){background:var(--surface-hover)}.link-btn:disabled{opacity:.45;cursor:not-allowed}.badge{border-radius:var(--radius-sm);height:22px;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;align-items:center;padding:0 .625rem;font-weight:500;display:inline-flex}.badge.tone-neutral,.badge.draft{background:var(--surface-sunken);color:var(--text-body)}.badge.tone-brand,.badge.submitted,.badge.brand{background:var(--accent-soft);color:var(--text-strong)}.badge.tone-positive,.badge.approved,.badge.positive,.badge.parsed{background:var(--pos-soft);color:var(--pos)}.badge.tone-negative,.badge.rejected,.badge.negative,.badge.failed{background:var(--neg-soft);color:var(--neg)}.badge.tone-gold{background:var(--accent-gold);color:var(--accent-gold-ink)}.role-pill{border-radius:var(--radius-sm);background:var(--accent-soft);height:22px;color:var(--text-strong);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.06em;text-transform:uppercase;align-items:center;padding:0 .625rem;font-weight:500;display:inline-flex}.panel,.login-card,.hero-panel,.tool-card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-xs)}.panel,.hero-panel{padding:1.25rem}.panel.flush{padding:0;overflow:hidden}.eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:var(--tracking-label);font-size:var(--text-2xs);color:var(--text-muted);margin:0 0 .35rem;font-weight:500}.pref-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1rem 1.5rem;display:grid}.pref-row-vcenter{align-items:center}.pref-row-vcenter .pref-row-controls{margin-top:0}.pref-row-copy{min-width:0}.pref-row-title{font-size:var(--text-sm);color:var(--text-strong);margin:0 0 .35rem;font-weight:600}.pref-row-desc{margin:0}.pref-row-controls{flex-wrap:wrap;justify-self:end;align-items:center;gap:.75rem;margin-top:.05rem;display:flex}.pref-theme-option{align-items:center;gap:.35rem;display:inline-flex}.pref-row-controls-grow{width:min(22rem,100%);min-width:0}.pref-row-controls-grow .person-picker-field,.pref-row-controls-grow .menu-picker{width:100%}.pref-panel{background:color-mix(in srgb, var(--text-body) 8%, var(--surface-sunken));border-color:color-mix(in srgb, var(--text-body) 8%, var(--surface-sunken));box-shadow:none;flex-direction:column;gap:0;padding:0;display:flex;overflow:hidden}.pref-panel#notifications,.pref-row#birthday{scroll-margin-top:1.25rem}.pref-panel.is-hash-target,.pref-row.is-hash-target{outline:2px solid color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:2px;transition:outline-color .8s}.pref-group-head,.pref-actions{background:0 0;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.7rem 1.15rem;display:flex}.pref-group-head{justify-content:flex-start}.pref-group-title{font-size:var(--text-sm);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin:0;font-weight:650}.pref-panel-body{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-sm,6px);flex-direction:column;gap:1.25rem;margin:0 .65rem;padding:1.15rem;display:flex}.pref-panel-body .pref-row+.pref-row{border-top:1px solid var(--border-muted);padding-top:1.25rem}.profile-photo-controls{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.profile-avatar-lg{background:color-mix(in srgb, var(--text-body) 10%, var(--surface-sunken));width:3.5rem;height:3.5rem;color:var(--text-muted);border:1px solid var(--border-muted);border-radius:999px;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.profile-avatar-lg img{object-fit:cover;width:100%;height:100%}.profile-photo-actions{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.profile-identity-value{text-align:right;flex-direction:column;align-items:flex-end;gap:.15rem;display:flex}.profile-name-readonly{font-size:var(--text-sm);color:var(--text-strong);margin:0;font-weight:600;line-height:1.3}.profile-email-readonly{max-width:100%;margin:0;line-height:1.3}.profile-field-stack{flex-direction:column;align-items:stretch;gap:.55rem;width:min(100%,18rem);display:flex}.profile-pronoun-presets{flex-wrap:wrap;justify-content:flex-end;gap:.35rem;display:flex}.profile-chip{appearance:none;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);min-height:1.85rem;color:var(--text-body);font:inherit;font-size:var(--text-xs);cursor:pointer;margin:0;padding:.3rem .65rem;font-weight:500;transition:background .12s,border-color .12s,color .12s}.profile-chip:hover:not(:disabled){background:var(--surface-hover);border-color:color-mix(in srgb, var(--text-body) 22%, var(--border-default))}.profile-chip.is-active{border-color:color-mix(in srgb, var(--accent) 50%, var(--border-default));background:var(--accent-soft);color:var(--text-strong)}.notify-channel-note{margin:0 0 .25rem}.notify-channel-controls{flex-wrap:wrap;justify-self:end;align-items:center;gap:.85rem 1.25rem;display:flex}.notify-channel{flex-direction:column;align-items:center;gap:.3rem;display:flex}.notify-channel-label{text-align:center;align-items:center;gap:.35rem;font-weight:500;display:inline-flex}@media (width<=720px){.notify-channel-controls{justify-self:start;width:100%}}.profile-chip:disabled{opacity:.55;cursor:not-allowed}.profile-input{box-sizing:border-box;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);width:100%;max-width:18rem;height:2.5rem;color:var(--text-body);font:inherit;font-size:var(--text-sm);padding:0 .75rem;line-height:1.3}.profile-birthday-controls{flex-wrap:nowrap;align-items:center;gap:.4rem;width:max-content;max-width:100%;display:flex}.profile-birthday-month{flex:0 0 8.25rem;width:8.25rem}.profile-birthday-day{flex:0 0 4.35rem;width:4.35rem}.profile-birthday-controls .project-combo-trigger{gap:.25rem;width:100%;padding-inline:.5rem}.profile-birthday-controls .project-combo-chevron{flex-shrink:0}.profile-birthday-month .field-select-panel{width:8.25rem;min-width:8.25rem}.profile-birthday-day .field-select-panel{width:4.35rem;min-width:4.35rem}.profile-birthday-day .project-combo-option{font-variant-numeric:tabular-nums;justify-content:center}.profile-birthday-day .field-select-option-main{flex:0 auto;justify-content:center}.profile-birthday-day .project-combo-option svg{display:none}.profile-birthday-clear{color:var(--text-muted);flex-shrink:0}.profile-birthday-clear:hover:not(:disabled){color:var(--text-strong)}.profile-input::placeholder{color:var(--text-subtle)}.profile-input:hover:not(:disabled){background:var(--surface-hover)}.profile-input:focus{border-color:color-mix(in srgb, var(--accent) 55%, var(--border-default));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:none}.profile-input:disabled{opacity:.65;cursor:not-allowed;background:var(--surface-sunken)}@media (width<=720px){.profile-identity-value{text-align:left;align-items:flex-start}.profile-pronoun-presets{justify-content:flex-start}}.avatar-crop{flex-direction:column;align-items:center;gap:.85rem;display:flex}.avatar-crop>.muted{text-align:center;max-width:22rem;margin:0}.avatar-crop-frame{touch-action:none;overscroll-behavior:none;cursor:grab;-webkit-user-select:none;user-select:none;background:var(--surface-sunken);border:1px solid var(--border-default);border-radius:12px;position:relative;overflow:hidden}.avatar-crop-frame:active{cursor:grabbing}.avatar-crop-frame.is-loading{cursor:default}.avatar-crop-image{pointer-events:none;transform-origin:0 0;max-width:none;position:absolute;top:0;left:0}.avatar-crop-guide{pointer-events:none;border:2px solid #ffffffe0;border-radius:999px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 999px #00000042}.avatar-crop-zoom{width:340px;max-width:100%;font-size:var(--text-xs);color:var(--text-muted);flex-direction:column;gap:.35rem;margin:0;font-weight:500;display:flex}.avatar-crop-zoom-slider{--thumb:.875rem;align-items:center;width:100%;height:1.35rem;display:flex;position:relative}.avatar-crop-zoom-slider:before{content:"";left:calc(var(--thumb) / 2);right:calc(var(--thumb) / 2);background:color-mix(in srgb, var(--text-body) 18%, var(--surface-sunken));pointer-events:none;border-radius:999px;height:3px;margin-top:-1.5px;position:absolute;top:50%}.avatar-crop-zoom-slider input[type=range]{z-index:1;appearance:none;cursor:pointer;width:100%;height:100%;box-shadow:none;background:0 0;border:0;outline:none;margin:0;padding:0;position:relative}.avatar-crop-zoom-slider input[type=range]:focus,.avatar-crop-zoom-slider input[type=range]:focus-visible{box-shadow:none;outline:none}.avatar-crop-zoom-slider input[type=range]:disabled{cursor:not-allowed;opacity:.55}.avatar-crop-zoom-slider input[type=range]::-webkit-slider-runnable-track{background:0 0;border:0;height:3px}.avatar-crop-zoom-slider input[type=range]::-webkit-slider-thumb{appearance:none;width:var(--thumb);height:var(--thumb);margin-top:calc((3px - var(--thumb)) / 2);background:var(--accent,var(--text-strong));box-shadow:0 0 0 2px var(--surface-card);border:0;border-radius:999px}.avatar-crop-zoom-slider input[type=range]::-moz-range-track{background:0 0;border:0;height:3px}.avatar-crop-zoom-slider input[type=range]::-moz-range-thumb{width:var(--thumb);height:var(--thumb);background:var(--accent,var(--text-strong));box-shadow:0 0 0 2px var(--surface-card);border:0;border-radius:999px}.avatar-crop-zoom-slider input[type=range]::-moz-focus-outer{border:0}.pref-actions{justify-content:flex-end}.panel-toolbar{justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem .5rem;display:flex}.panel-toolbar-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;display:flex}.panel-toolbar .eyebrow{margin:0}.panel.flush .panel-toolbar+.week-empty,.panel.flush .panel-toolbar+.table-scroll{border-top:1px solid var(--border-muted)}h1,h2,h3{font-family:var(--font-sans);letter-spacing:-.01em;color:var(--text-strong);margin:0}h1{font-size:1.5rem;font-weight:600;line-height:var(--leading-snug)}h2{font-size:1.05rem;font-weight:600}.lede,.muted{color:var(--text-muted)}.lede{max-width:40rem;font-size:var(--text-sm);margin:.35rem 0 0}.section-head{justify-content:space-between;align-items:start;gap:1rem;display:flex}.section-head.compact{margin-bottom:1rem}.tool-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;display:grid}.tool-card{flex-direction:column;justify-content:space-between;gap:1.25rem;min-height:148px;padding:1.25rem;display:flex}.tool-card.planned{opacity:.72}.tool-card p{color:var(--text-muted);font-size:var(--text-sm);margin:.4rem 0 0}.stats-row{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.stat{border-radius:var(--radius-md);background:var(--surface-card);border:1px solid var(--border-default);box-shadow:var(--shadow-xs);padding:1rem 1.15rem}.stat span{color:var(--text-muted);font-size:var(--text-2xs);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;display:block}.stat strong{letter-spacing:-.02em;color:var(--text-strong);font-variant-numeric:tabular-nums;font-size:1.5rem}.stat strong.pos{color:var(--pos)}.stat strong.neg{color:var(--neg)}.inline-filters{flex-wrap:wrap;align-items:end;gap:.75rem;display:flex}.inline-filters label{font-size:var(--text-xs);color:var(--text-muted);gap:.25rem;display:grid}.inline-filters select,.inline-filters input,.inline-row input,.form-grid input,.form-grid select{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);height:2.5rem;color:var(--text-body);padding:0 .65rem}.inline-filters select{min-width:14rem}.compact-filter{margin:0}.compact-filter select{min-width:10rem}.project-filter select{min-width:11rem;max-width:16rem}.col-filter-head{align-items:center;gap:.35rem;max-width:100%;display:inline-flex}.col-filter-label{font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit}.col-filter-btn{border-radius:var(--radius-sm);min-width:1.35rem;height:1.35rem;color:var(--text-muted);cursor:pointer;vertical-align:middle;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:.15rem;padding:0 .25rem;display:inline-flex}.col-filter-btn:hover{background:var(--surface-hover);color:var(--text-strong)}.col-filter-btn.is-active,.col-filter-btn[data-state=open]{background:var(--accent-soft);color:var(--text-strong);border-color:#0000}.col-filter-count{font-family:var(--font-mono);font-size:9px;font-weight:600;line-height:1}.col-filter-panel{width:min(18rem,100vw - 2rem)}.col-filter-actions{border-bottom:1px solid var(--border-muted);justify-content:space-between;align-items:center;gap:.85rem;padding:.4rem .75rem;display:flex}.vac-hidden-person{text-align:left;background:0 0;border:0;width:100%}.col-filter-footer{border-top:1px solid var(--border-muted);justify-content:flex-end;gap:.5rem;padding:.55rem .75rem;display:flex}.col-filter-list{padding:.35rem 0}.col-filter-option{width:100%;font-size:var(--text-sm);letter-spacing:0;text-transform:none;color:var(--text-body);cursor:pointer;align-items:center;gap:.55rem;margin:0;padding:.4rem .75rem;font-weight:400;display:flex}.col-filter-option:hover{background:var(--surface-hover)}.col-filter-option.is-checked{color:var(--text-strong)}.col-filter-option input{width:.9rem;height:.9rem;accent-color:var(--accent);cursor:pointer;flex-shrink:0;margin:0}.inline-row{gap:.5rem;margin-top:.5rem;display:flex}.inline-row input{flex:1}.viewing-as{align-self:end;margin:0;padding-bottom:.55rem}.data-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.table-scroll{overscroll-behavior-x:contain;scrollbar-width:thin;width:100%;min-width:0;max-width:100%;overflow-x:auto}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border-default);vertical-align:middle;padding:.65rem .75rem}.data-table th{color:var(--text-muted);font-weight:500;font-size:var(--text-2xs);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.rule-note{max-width:42rem;font-size:var(--text-sm);margin:.35rem 0 .9rem}.week-cell-head{flex-wrap:wrap;align-items:center;gap:.4rem .55rem;display:flex}.badge.week-bridge{text-transform:none;letter-spacing:0;background:var(--surface-sunken);height:auto;color:var(--text-body);padding:.15rem .5rem;font-size:.7rem}.week-bridge-detail{font-size:var(--text-xs);margin-top:.15rem}.pos{color:var(--pos);font-weight:600}.neg{color:var(--neg);font-weight:600}.time-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.time-toolbar-start{flex-wrap:wrap;align-items:center;gap:.75rem;min-width:0;display:flex}.time-toolbar-end{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;margin-left:auto;display:flex}.time-period-bar{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.75rem 1rem;min-height:2.25rem;display:grid}.time-period-side{flex-wrap:wrap;align-items:center;gap:.65rem;min-width:0;display:flex}.time-period-end{justify-content:flex-end}.time-period-center{justify-self:center}.view-toggle{--seg-count:2;--seg-index:0;--seg-pad:.2rem;--seg-gap:.15rem;padding:var(--seg-pad);gap:var(--seg-gap);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card);isolation:isolate;grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;position:relative}.view-toggle-thumb{z-index:0;top:var(--seg-pad);bottom:var(--seg-pad);left:calc(var(--seg-pad) + var(--seg-index) * ( (100% - 2 * var(--seg-pad) - (var(--seg-count) - 1) * var(--seg-gap)) / var(--seg-count) + var(--seg-gap) ));width:calc((100% - 2 * var(--seg-pad) - (var(--seg-count) - 1) * var(--seg-gap)) / var(--seg-count));border-radius:var(--radius-sm);background:var(--accent);pointer-events:none;transition:left .34s cubic-bezier(.22,1,.36,1);position:absolute}.view-toggle button{z-index:1;border-radius:var(--radius-sm);height:2rem;color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:.35rem;padding:0 .85rem;font-weight:500;transition:color .22s,background .22s;display:inline-flex;position:relative}.view-toggle button:hover:not(.active){color:var(--text-strong);background:var(--surface-hover)}.view-toggle button.active{color:var(--text-inverse);background:0 0}@media (prefers-reduced-motion:reduce){.view-toggle-thumb,.view-toggle button{transition:none}}.time-layout-hint{font-size:var(--text-sm)}.month-grid-panel{max-width:100%;overflow:hidden}.month-grid-scroll{overscroll-behavior-x:contain;background:linear-gradient(to bottom, var(--surface-card) 0, var(--surface-card) calc(100% - .55rem), var(--surface-sunken) calc(100% - .55rem), var(--surface-sunken) 100%);scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--text-muted) 42%, transparent) var(--surface-sunken);width:100%;max-width:100%;padding-bottom:.55rem;overflow-x:auto}.month-grid-scroll::-webkit-scrollbar{height:8px}.month-grid-scroll::-webkit-scrollbar-track{background:0 0;margin-inline:.65rem}.month-grid-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--text-muted) 38%, var(--surface-sunken));border:2px solid var(--surface-sunken);background-clip:padding-box;border-radius:999px}.month-grid-scroll::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--text-muted) 55%, var(--surface-sunken));border:2px solid var(--surface-sunken);background-clip:padding-box}.month-grid{border-collapse:separate;border-spacing:0;width:max-content;font-size:var(--text-sm);table-layout:fixed}.month-grid.is-short-period{width:100%;min-width:100%}.month-grid.is-short-period .month-grid-day{width:auto;min-width:3.75rem;max-width:none}.month-grid.is-short-period .month-grid-input,.month-grid.is-short-period .month-grid-cell-btn,.month-grid.is-short-period .month-grid-cell-value{max-width:5rem;margin-inline:auto}.month-grid th,.month-grid td{border-bottom:1px solid var(--border-default);vertical-align:middle}.month-grid thead th{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;text-align:center;background:var(--surface-card);z-index:1;padding:.45rem .35rem;font-size:.65rem;font-weight:600;position:sticky;top:0}.month-grid-project{z-index:2;text-align:left;background:var(--surface-card);box-sizing:border-box;width:15rem;min-width:15rem;max-width:15rem;padding:.35rem .5rem;position:sticky;left:0;overflow:visible}.month-grid-project:after{content:"";background:var(--border-default);width:1px;box-shadow:3px 0 6px color-mix(in srgb, var(--text-body) 18%, transparent);pointer-events:none;z-index:1;position:absolute;top:0;bottom:0;right:0}.month-grid thead .month-grid-project{z-index:4;top:0}.month-grid-project-name{text-overflow:ellipsis;white-space:nowrap;color:var(--text-strong);font-weight:500;display:block;overflow:hidden}.month-grid-project .project-combo-trigger{width:100%;min-width:0;max-width:100%;height:1.85rem;min-height:1.85rem;font-size:var(--text-sm);background:0 0;border-color:#0000;padding:0 .35rem 0 .45rem;overflow:hidden}.month-grid-project .project-combo-trigger>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;display:block;overflow:hidden}.month-grid-project .project-combo-chevron{flex-shrink:0}.month-grid-project .project-combo-trigger:hover,.month-grid-project .project-combo-trigger[data-state=open]{border-color:var(--border-default);background:var(--surface-card)}.month-grid-project .project-combo-trigger.is-empty{color:var(--text-muted)}.month-grid-day{text-align:center;box-sizing:border-box;width:3.35rem;min-width:3.35rem;max-width:3.35rem;padding:.2rem .15rem}.month-grid-day.is-weekend{background:color-mix(in srgb, var(--surface-hover) 70%, transparent)}.month-grid-day.is-holiday{background:color-mix(in srgb, var(--accent-gold,#e8c547) 28%, transparent)}.month-grid-day.is-today{background:color-mix(in srgb, var(--accent-soft) 45%, var(--surface-card))}.month-grid-day.is-weekend.is-today,.month-grid-day.is-holiday.is-today{background:color-mix(in srgb, var(--accent-soft) 40%, var(--surface-hover))}.month-grid thead .month-grid-day.is-holiday .month-grid-dom{color:color-mix(in srgb, var(--accent-gold,#b8860b) 70%, var(--text-strong));font-weight:600}.month-grid thead .month-grid-day.is-today{color:var(--text-strong)}.month-grid thead .month-grid-day.is-today .month-grid-dom{color:var(--accent);font-weight:700}.month-grid-dow{line-height:1.1;display:block}.month-grid-dom{color:var(--text-strong);text-transform:none;letter-spacing:0;margin-top:.1rem;font-size:.75rem;font-weight:600;display:block}.month-grid-input,.month-grid-cell-btn,.month-grid-cell-value{border-radius:var(--radius-xs);text-align:center;width:100%;height:1.85rem;color:var(--text-strong);font-size:var(--text-xs);font-variant-numeric:tabular-nums;letter-spacing:0;background:0 0;border:1px solid #0000;padding:0 .2rem}.month-grid-cell-btn{cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.month-grid-cell-btn.is-empty,.month-grid-cell-value.is-empty{color:var(--text-subtle,var(--text-muted))}.month-grid-cell-btn.is-editing{border-color:var(--border-focus,var(--accent,#2f6fed));background:var(--surface-card);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent,#2f6fed) 22%, transparent)}.hours-cell-popover{z-index:60;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card);width:min(18.5rem,100vw - 1.5rem);box-shadow:var(--shadow-md);outline:none;padding:.75rem}.hours-cell-popover-head{flex-direction:column;gap:.15rem;margin-bottom:.65rem;display:flex}.hours-cell-popover-project{font-size:var(--text-sm);color:var(--text-strong);font-weight:600;line-height:1.3}.hours-cell-popover-meta{font-size:var(--text-xs);color:var(--text-muted)}.hours-cell-popover-actions{justify-content:flex-end;gap:.5rem;margin-top:.75rem;display:flex}.hours-cell-desc-add{appearance:none;color:var(--text-muted);font:inherit;font-size:var(--text-xs);cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;margin:.65rem 0 0;padding:0;font-weight:500;display:inline-flex}.hours-cell-desc-add:hover:not(:disabled){color:var(--text-body)}.hours-cell-desc-add:disabled{opacity:.55;cursor:default}.hours-cell-desc-field{font-size:var(--text-xs);color:var(--text-muted);gap:.3rem;margin-top:.65rem;font-weight:500;display:grid}.hours-cell-desc-field textarea{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);width:100%;min-height:3.25rem;color:var(--text-body);font:inherit;font-size:var(--text-sm);resize:vertical;box-sizing:border-box;padding:.45rem .55rem;font-weight:400;line-height:1.35}.hours-cell-desc-field textarea:focus{border-color:var(--border-focus,var(--accent));box-shadow:var(--ring);outline:none}.month-grid-cell-btn.has-note,.month-grid-cell-value.has-note{position:relative}.month-grid-note-mark{width:8px;height:8px;color:var(--text-muted);opacity:.75;pointer-events:none;position:absolute;inset:1px 1px auto auto;transform:none}.month-grid-cell-btn:disabled{color:var(--text-muted);cursor:default}.month-grid-cell-value{cursor:default;justify-content:center;align-items:center;display:inline-flex}.month-grid-input:hover:not(:disabled),.month-grid-input:focus{border-color:var(--border-default);background:var(--surface-card);outline:none}.month-grid-input:disabled{color:var(--text-muted);cursor:default}.month-grid-total{text-align:right;font-variant-numeric:tabular-nums;width:5.75rem;min-width:5.75rem;max-width:5.75rem;font-weight:600;font-size:var(--text-xs);color:var(--text-strong);box-sizing:border-box;white-space:nowrap;background:color-mix(in srgb, var(--accent-soft) 18%, var(--surface-card));padding:.4rem .45rem}.month-grid-actions{text-align:center;box-sizing:border-box;width:2.25rem;min-width:2.25rem;max-width:2.25rem;padding:.2rem}.month-grid tfoot td{color:var(--text-strong);border-bottom:1px solid var(--border-default);background:color-mix(in srgb, var(--accent-soft) 18%, var(--surface-card));padding-top:.55rem;padding-bottom:.55rem;font-weight:600}.month-grid tfoot .month-grid-day,.month-grid tfoot .month-grid-day.is-weekend,.month-grid tfoot .month-grid-day.is-holiday,.month-grid tfoot .month-grid-day.is-today,.month-grid tfoot .month-grid-total{background:color-mix(in srgb, var(--accent-soft) 18%, var(--surface-card))}.month-grid tfoot .month-grid-project,.month-grid tfoot .month-grid-actions{background:var(--surface-card)}.month-grid tfoot .month-grid-project{text-align:left;z-index:3;padding:.55rem 1rem}.month-grid-footer{background:var(--surface-card);border-top:0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem .65rem;display:flex}.month-grid-add-btn,.month-grid-today-btn{border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;padding:.35rem .5rem;font-weight:500;display:inline-flex}.month-grid-today-btn{border:1px solid color-mix(in srgb, var(--accent,#2f6fed) 28%, var(--border-default));background:var(--surface-card);color:var(--text-body);box-shadow:0 1px 0 color-mix(in srgb, var(--text-strong) 4%, transparent);padding:.35rem .6rem;font-weight:500}.month-grid-today-btn svg{color:var(--accent,#2f6fed);opacity:.85;flex-shrink:0}.month-grid-add-btn:hover:not(:disabled){color:var(--text-strong);background:var(--surface-hover)}.month-grid-today-btn:hover{color:var(--text-strong);border-color:color-mix(in srgb, var(--accent,#2f6fed) 45%, var(--border-default));background:color-mix(in srgb, var(--accent,#2f6fed) 6%, var(--surface-card))}.month-grid-today-btn:hover svg{opacity:1}.month-grid-add-btn:disabled{opacity:.55;cursor:not-allowed}.month-grid-footer .month-grid-today-btn{margin-left:auto}.entry-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem 1rem;margin-top:.75rem;display:grid}.entry-form label{font-size:var(--text-xs);color:var(--text-muted);gap:.3rem;display:grid}.entry-form label.span-2{grid-column:span 2}.entry-form label.span-full{grid-column:1/-1}.entry-form input,.entry-form select{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);height:2.5rem;color:var(--text-body);padding:0 .65rem}.entry-form input:read-only{background:var(--surface-sunken);color:var(--text-strong);cursor:default}.project-combo-trigger{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);width:100%;height:2.5rem;color:var(--text-body);font-size:var(--text-sm);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:.5rem;min-width:0;padding:0 .65rem;display:flex;overflow:hidden}.project-combo-trigger>.truncate{flex:1}.project-combo-trigger:hover{background:var(--surface-hover)}.project-combo-trigger.is-empty{color:var(--text-subtle)}.project-combo-trigger:disabled{opacity:.65;cursor:not-allowed;background:var(--surface-sunken)}.project-combo-trigger:disabled:hover{background:var(--surface-sunken)}.project-combo-chevron{color:var(--text-muted);flex-shrink:0}.project-combo-panel{z-index:60;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card);width:min(20rem,100vw - 2rem);box-shadow:var(--shadow-md);overflow:hidden}.project-combo-search{border-bottom:1px solid var(--border-muted);color:var(--text-muted);align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.project-combo-search input{width:100%;height:auto;color:var(--text-body);font-size:var(--text-sm);box-shadow:none;background:0 0;border:0;outline:none;padding:0}.project-combo-search input::placeholder{color:var(--text-subtle)}.project-combo-list{max-height:18rem;padding:.25rem 0;overflow-y:auto}.project-combo-option{width:100%;color:var(--text-body);font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .75rem;display:flex}.project-combo-option:hover{background:var(--surface-hover)}.project-combo-option.is-selected{background:var(--accent-soft);color:var(--text-strong)}.project-combo-trigger-label,.project-combo-option-main{flex:1;align-items:center;gap:.4rem;min-width:0;display:flex}.project-combo-badges{flex-shrink:0;align-items:center;gap:.25rem;display:inline-flex}.project-combo-badges .badge{letter-spacing:.04em;height:1.15rem;padding:0 .4rem;font-size:.625rem}.project-combo-empty{font-size:var(--text-sm);color:var(--text-muted);margin:0;padding:.75rem}.project-combo-meta{color:var(--text-muted)}.project-combo-footer{border:0;border-top:1px solid var(--border-muted);width:100%;color:var(--text-link,var(--accent));font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:.5rem;padding:.65rem .75rem;font-weight:500;display:flex}.project-combo-footer:hover{background:var(--surface-hover)}.project-combo-group+.project-combo-group{margin-top:.25rem}.project-combo-group-label{font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);padding:.35rem .75rem .2rem;font-size:.6875rem}.destination-combo-group+.destination-combo-group,.destination-combo-group+.project-combo-option,.project-combo-option+.destination-combo-group{margin-top:.15rem}.destination-combo-heading{color:var(--text-muted);font-size:var(--text-sm);cursor:default;-webkit-user-select:none;user-select:none;padding:.4rem .75rem .1rem;font-weight:600;line-height:1.3}.project-combo-option.is-nested{padding-left:1.65rem}.clients-table-head,.projects-table-head{justify-content:space-between;align-items:center;gap:1rem;padding:.75rem .85rem .5rem;display:flex}.clients-table-head .eyebrow,.projects-table-head .eyebrow{margin:0}.clients-table-head-actions,.projects-table-head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.projects-status-filters{gap:.25rem;display:flex}.clients-table{table-layout:fixed}.clients-table .clients-col-code{width:4.5rem}.clients-table .clients-col-status{width:6.5rem}.clients-table .clients-col-name{width:auto}.clients-table .clients-col-created{width:10.5rem}.clients-table .clients-col-projects{width:5.5rem}.clients-table .clients-col-actions,.clients-table .actions-col{width:7.5rem}.clients-table .actions-col .row-action-pair{justify-content:center;gap:.05rem;width:100%;display:inline-flex}.projects-staff-table .projects-col-actions,.projects-staff-table .actions-col{width:13.5rem}.panel.flush .data-table.projects-staff-table .actions-col{text-align:center;padding-right:.75rem}.projects-staff-table .actions-col .row-action-pair{justify-content:center;gap:.05rem;width:100%;display:inline-flex}.clients-code-cell{white-space:nowrap}.projects-staff-table{table-layout:fixed}.projects-staff-table .projects-col-code{width:5.5rem}.projects-staff-table .projects-col-name{width:auto}.projects-staff-table .projects-col-status{width:7.5rem}.projects-staff-table .projects-col-logged{width:5.5rem}.projects-staff-table .project-request-actions{flex-wrap:nowrap;justify-content:center;align-items:center;gap:.15rem;width:100%;display:inline-flex}.projects-staff-table .project-request-btn{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);min-width:0;height:1.75rem;color:var(--text-strong);white-space:nowrap;cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);flex:none;padding:0 .45rem;font-size:.7rem;font-weight:600;line-height:1}.projects-staff-table .project-request-btn.is-review{height:2rem;padding:0 .7rem;font-size:.78rem}.projects-staff-table .project-request-btn.is-confirm:hover{background:var(--pos-soft);border-color:color-mix(in srgb, var(--pos) 35%, var(--border-default));color:var(--pos)}.projects-staff-table .project-request-btn.is-reject:hover{background:var(--neg-soft);border-color:color-mix(in srgb, var(--neg) 35%, var(--border-default));color:var(--neg)}.projects-staff-table .project-requested-row td{background:color-mix(in srgb, var(--accent-soft) 42%, var(--surface-card))}.projects-staff-table .project-requested-row:hover td{background:color-mix(in srgb, var(--accent-soft) 58%, var(--surface-hover))}.project-add-row td{background:var(--surface);border-bottom:1px solid var(--border-muted);padding:.35rem .75rem}.project-add-inline{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.project-add-inline input{flex:1;min-width:12rem;max-width:24rem}.panel-inset-head{padding:.75rem .85rem .25rem}.request-cell{flex-direction:column;gap:.15rem;display:flex}.request-cell strong{color:var(--text-strong);font-weight:600}.projects-staff-table .client-group-row td,.projects-staff-table .client-group-row th{background:var(--surface-sunken);border-bottom:1px solid var(--border-muted);vertical-align:middle;padding:.65rem .75rem}.projects-staff-table .client-group-title td{border-bottom:none;padding-bottom:.35rem}.projects-staff-table .client-group-title.is-collapsed td{border-bottom:1px solid var(--border-muted);padding-bottom:.65rem}.client-group-toggle{max-width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.4rem;margin:0;padding:0;display:inline-flex}.client-group-toggle:hover .client-group-name{color:var(--brand,var(--text-strong))}.client-group-toggle svg{color:var(--text-muted);flex-shrink:0}.projects-staff-table .client-group-cols th{font-size:var(--text-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;text-align:left;padding-top:.2rem;font-weight:600}.projects-staff-table .client-group-cols th:nth-child(3),.projects-staff-table tbody td:nth-child(3),.panel.flush .data-table.projects-staff-table .client-group-cols th.actions-col{text-align:center}.projects-staff-table .client-group-name{font-size:var(--text-sm);color:var(--text-strong);font-weight:600}.projects-staff-table .client-project-count{font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--text-2xs);letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb, var(--text-body) 72%, var(--surface-sunken));margin-left:.65rem}.projects-admin-form{flex-wrap:wrap;align-items:end;gap:.75rem 1rem;display:flex}.projects-admin-form label{font-size:var(--text-sm);color:var(--text-muted);flex-direction:column;flex:1;gap:.35rem;min-width:10rem;display:flex}.projects-admin-form .person-picker-field{flex:1;min-width:12rem}.projects-admin-form .person-picker-label{font-size:var(--text-sm)}.client-pill-list{flex-wrap:wrap;gap:.4rem;margin:.85rem 0 0;padding:0;list-style:none;display:flex}.member-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.member-list li{border-bottom:1px solid var(--border-muted);font-size:var(--text-sm);justify-content:space-between;align-items:center;gap:.75rem;padding:.35rem 0;display:flex}.member-list li:last-child{border-bottom:0}.stack.tight{gap:.75rem}.checkbox-row{font-size:var(--text-sm);color:var(--text-body,var(--text));cursor:pointer;align-items:center;gap:.5rem;display:flex}.checkbox-row input{width:auto;margin:0}.project-form-row{grid-template-columns:6.5rem minmax(0,1fr);align-items:end;gap:.75rem;display:grid}.project-form-code,.project-form-name{font-size:var(--text-sm);color:var(--text-muted);flex-direction:column;gap:.35rem;min-width:0;display:flex}.project-form-field-label{display:block}.project-form-code-value{box-sizing:border-box;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-sunken,var(--surface-hover));height:2.5rem;color:var(--text-strong);font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--text-sm);letter-spacing:.02em;-webkit-user-select:none;user-select:none;pointer-events:none;align-items:center;padding:0 .65rem;display:flex}.project-form-code-value:empty{color:var(--text-muted)}.project-form-code input.is-readonly,input.is-readonly{background:var(--surface-sunken,var(--surface-hover));color:var(--text-muted);cursor:default;font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--text-sm);letter-spacing:.02em;-webkit-user-select:none;user-select:none;pointer-events:none}.project-form-kind{justify-content:space-between;align-items:center;gap:1rem;padding-top:.15rem;display:flex}.project-form-kind-copy{min-width:0}.project-form-kind-title{font-size:var(--text-sm);color:var(--text-strong);margin:0 0 .15rem;font-weight:600}.project-form-kind .muted.small{margin:0}.project-form-kind .view-toggle{flex-shrink:0;min-width:11.5rem}.project-form-kind-copy .muted.small{min-height:2.4em}.month-submit-bar{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.month-submit-bar .row-actions{margin-left:auto}.review-layout{grid-template-columns:minmax(16rem,22rem) minmax(0,1fr);gap:1rem;display:grid}@media (width<=860px){.review-layout{grid-template-columns:1fr}}.review-filters{gap:.25rem;display:flex}.review-filter{border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;padding:.35rem .75rem;font-weight:500}.review-filter:hover{background:var(--surface-hover);color:var(--text-strong)}.review-filter.is-active{background:var(--accent);color:var(--text-inverse,#fff)}.review-inbox-table th{font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--text-2xs);letter-spacing:.08em;text-transform:uppercase}.th-sort{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:.28rem;margin:0;padding:0;display:inline-flex}.th-sort:hover{color:var(--text-strong)}.review-inbox-row{cursor:pointer}.review-inbox-row:hover td{background:var(--surface-hover)}.review-inbox-table .strong{color:var(--text-strong);font-weight:600}.review-detail-head{margin-bottom:-1.15rem}.back-link{cursor:pointer;background:0 0;border:0;align-items:center;gap:.15rem;padding:0;display:inline-flex}.review-detail-sub{color:var(--text-muted);font-weight:500}.review-detail-meta{flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:.45rem;display:flex}tr.is-selected-row td{background:var(--accent-soft)}.text-link{color:var(--text-link);font-size:var(--text-sm);text-decoration:none}.text-link:hover{text-decoration:underline}.muted.small{font-size:var(--text-sm);margin:0}.entries-table{table-layout:fixed}.entries-table .num-col{white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;width:4.5rem;padding-left:1rem}.entries-table .project-col{text-overflow:ellipsis;width:16rem;overflow:hidden}.entries-table .desc-col{width:auto}.entries-table .booking-col,.entries-table .clock-col{white-space:nowrap;width:5.5rem}.entries-table .group-row td{background:var(--surface-sunken);color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.06em;text-transform:uppercase;padding:.45rem .75rem;font-weight:500}.entries-table .group-row.is-holiday td{background:color-mix(in srgb, var(--accent-gold,#e8c547) 22%, var(--surface-sunken));color:var(--text-body)}.entries-table .actions-col{width:4.75rem;padding-right:.75rem}.entries-table .flag-col{text-align:center;width:2.75rem;padding-left:.55rem;padding-right:.25rem}.entries-table .select-col{text-align:center;vertical-align:middle;width:2.5rem;padding-left:.55rem;padding-right:.15rem}.entries-table .entry-select{width:.95rem;height:.95rem;accent-color:var(--brand,var(--accent));cursor:pointer}.select-all-toggle{border-radius:var(--radius-sm);width:1.85rem;height:1.85rem;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.select-all-toggle:hover{background:var(--surface-hover);color:var(--text-body)}.select-all-toggle.is-partial{color:var(--brand,var(--accent));border-color:color-mix(in srgb, var(--brand,var(--accent)) 28%, var(--border-default));background:color-mix(in srgb, var(--brand-soft,var(--surface-hover)) 65%, transparent)}.select-all-toggle.is-on{color:var(--brand,var(--accent));border-color:color-mix(in srgb, var(--brand,var(--accent)) 35%, var(--border-default));background:color-mix(in srgb, var(--brand-soft,var(--surface-hover)) 80%, transparent)}.entries-table tr.is-selected:not(.is-flagged) td{background:color-mix(in srgb, var(--brand-soft,var(--surface-hover)) 55%, transparent)}.bulk-flag-bar{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-sunken);gap:.75rem;margin:0 1rem .85rem;padding:.85rem 1rem;display:grid}.bulk-flag-bar-head{font-size:var(--text-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;font-weight:600;display:flex}.bulk-flag-bar-actions{flex-wrap:wrap;gap:.4rem;display:flex}.bulk-flag-panel{padding-left:0}.entries-table tr.is-flagged td{background:color-mix(in srgb, var(--neg-soft) 55%, transparent);border-bottom-color:#0000}.flag-toggle{border-radius:var(--radius-sm);width:1.85rem;height:1.85rem;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.flag-toggle:hover{background:var(--surface-hover);color:var(--text-strong)}.flag-toggle.is-on{color:var(--neg);background:color-mix(in srgb, var(--neg-soft) 70%, var(--surface-card));border-color:color-mix(in srgb, var(--neg) 25%, var(--border-default))}.flag-note-row td{background:color-mix(in srgb, var(--neg-soft) 35%, transparent);border-top:0;padding:.55rem .75rem .85rem}.flag-note-field{gap:.4rem;margin:0;display:grid}.flag-issue-panel{border-radius:var(--radius-sm);gap:.65rem;padding-left:2.5rem;display:grid}.flag-issue-panel.is-incomplete{outline:1px solid color-mix(in srgb, var(--neg) 45%, var(--border-default));background:color-mix(in srgb, var(--neg-soft) 35%, var(--surface-card));padding:.65rem .75rem .65rem 2.5rem}.flag-issue-panel.is-shaking,.field.is-shaking{animation:.48s field-shake}@keyframes field-shake{0%,to{transform:translate(0)}18%{transform:translate(-7px)}36%{transform:translate(7px)}54%{transform:translate(-5px)}72%{transform:translate(5px)}90%{transform:translate(-2px)}}.flag-note-field.is-invalid input,.field textarea.is-invalid{border-color:var(--neg);box-shadow:0 0 0 1px color-mix(in srgb, var(--neg) 35%, transparent)}.flag-issue-error{color:var(--neg)}.flag-attention{border-radius:var(--radius-sm);border:1px solid color-mix(in srgb, var(--neg) 30%, var(--border-default));background:color-mix(in srgb, var(--neg-soft) 55%, var(--surface-card));color:var(--neg);font-size:var(--text-sm);margin:0 0 .35rem;padding:.55rem .75rem}.flag-issue-options{flex-wrap:wrap;gap:.4rem;display:flex}.flag-issue-chip{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);color:var(--text-body);font-size:var(--text-sm);cursor:pointer;align-items:center;padding:.3rem .65rem;font-weight:500;display:inline-flex}.flag-issue-chip:hover{background:var(--surface-hover)}.flag-issue-chip.is-on{border-color:color-mix(in srgb, var(--neg) 35%, var(--border-default));background:color-mix(in srgb, var(--neg-soft) 70%, var(--surface-card));color:var(--neg)}.flag-issue-chip.is-resolved{border-color:color-mix(in srgb, var(--pos) 35%, var(--border-default));background:color-mix(in srgb, var(--pos-soft) 70%, var(--surface-card));color:var(--pos)}.entries-table tr.is-flagged-resolved td{background:color-mix(in srgb, var(--pos-soft) 45%, transparent);border-bottom-color:#0000}.entry-flag-issues{flex-direction:column;gap:.45rem;margin:0;display:flex}.entry-flag-note-row.is-resolved td{background:color-mix(in srgb, var(--pos-soft) 35%, transparent)}.flag-note-field input{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);width:100%;max-width:36rem;font:inherit;font-size:var(--text-sm);padding:.45rem .6rem}.review-flag-hint{white-space:nowrap;margin:0;padding:0 1rem .75rem}.entry-flag-note-row td{background:color-mix(in srgb, var(--neg-soft) 40%, transparent);border-top:0;padding:.35rem .75rem .7rem}.entry-flag-note{font-size:var(--text-sm);flex-wrap:wrap;align-items:baseline;gap:.35rem .65rem;margin:0;line-height:1.45;display:flex}.entry-flag-note.is-resolved .entry-flag-note-body{color:var(--pos);font-style:italic}.entry-flag-note:not(.is-resolved) .entry-flag-note-body{color:var(--neg);font-style:italic}.entry-flag-note-label{font-size:var(--text-xs);letter-spacing:.03em;text-transform:uppercase;color:color-mix(in srgb, var(--neg) 72%, var(--navy));flex-shrink:0;font-weight:700}.entry-flag-note-label:after{content:":";margin-left:.1rem}.entry-flag-note.is-resolved .entry-flag-note-label{color:color-mix(in srgb, var(--pos) 58%, white)}.entry-flag-note-body{color:var(--text-body);font-style:italic;font-weight:500}.month-grid-day.is-flagged .month-grid-cell-value,.month-grid-day.is-flagged .month-grid-cell-btn{background:color-mix(in srgb, var(--neg-soft) 75%, var(--surface-card));color:var(--neg);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--neg) 22%, transparent)}.modal-overlay{z-index:50;background:#07111d66;position:fixed;inset:0}.modal-content{z-index:51;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card);width:min(36rem,100vw - 2rem);max-height:calc(100vh - 2rem);box-shadow:var(--shadow-md);padding:1.25rem;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.modal-content.is-wide{width:min(60rem,100vw - 2rem)}.hours-import-summary{font-size:var(--text-sm);color:var(--text-body);align-items:center;gap:.5rem;display:flex}.hours-import-map{flex-direction:column;gap:.65rem;margin-top:.35rem;display:flex}.hours-import-map-head{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);grid-template-columns:minmax(0,1fr) minmax(14rem,1.2fr);gap:.75rem;display:grid}.hours-import-map-row{grid-template-columns:minmax(0,1fr) minmax(14rem,1.2fr);align-items:start;gap:.75rem;display:grid}.hours-import-label{flex-direction:column;gap:.15rem;min-width:0;display:flex}.hours-import-label strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hours-import-map-control{min-width:0}.hours-import-map-control .project-combo-trigger{width:100%}.hours-import-errors,.hours-import-warnings,.hours-import-overlaps{margin:0;padding-left:1.1rem}.hours-import-mode{border:1px solid var(--border-default);border-radius:var(--radius-md);flex-direction:column;gap:.65rem;padding:.75rem .9rem;display:flex}.hours-import-mode legend{font-size:var(--text-sm);color:var(--text-strong);padding:0 .25rem;font-weight:600}.hours-import-mode-option{cursor:pointer;align-items:flex-start;gap:.55rem;display:flex}.hours-import-mode-option>span{flex-direction:column;gap:.15rem;min-width:0;display:flex}@media (width<=640px){.hours-import-map-head,.hours-import-map-row{grid-template-columns:1fr}}.modal-content.is-roomy{width:min(42rem,100vw - 2rem)}.modal-content.is-compact{width:min(20rem,100vw - 2rem);padding:1rem}.modal-content.is-compact .modal-title{font-size:1rem}.hours-parts-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.wheel-picker{flex-direction:column;gap:.35rem;min-width:0;display:flex}.wheel-picker-label{font-size:var(--text-sm);color:var(--text-muted);text-align:center}.wheel-picker-frame{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-muted,var(--surface-card));position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 0%,#000 18% 82%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 18% 82%,#0000 100%)}.wheel-picker-highlight{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--accent,#2f6fed) 12%, transparent);border:1px solid color-mix(in srgb, var(--accent,#2f6fed) 28%, transparent);pointer-events:none;z-index:1;position:absolute;top:50%;left:.35rem;right:.35rem;transform:translateY(-50%)}.wheel-picker-scroller{overscroll-behavior:contain;scroll-snap-type:y mandatory;scrollbar-width:none;-ms-overflow-style:none;z-index:2;outline:none;height:100%;position:relative;overflow-y:auto}.wheel-picker-scroller::-webkit-scrollbar{display:none}.wheel-picker-item{width:100%;color:var(--text-muted);font-variant-numeric:tabular-nums;scroll-snap-align:center;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin:0;padding:0;font-size:1.05rem;font-weight:500;display:flex}.wheel-picker-item.is-active{color:var(--text-strong);font-size:1.15rem;font-weight:650}.wheel-picker-scroller:focus-visible{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--accent,#2f6fed) 45%, transparent)}.modal-head{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:.85rem;display:flex}.modal-head-text{flex-direction:column;gap:.2rem;min-width:0;display:flex}.modal-title{color:var(--text-strong);margin:0;font-size:1.1rem;font-weight:600}.modal-subtitle{font-size:var(--text-sm);color:var(--text-muted);word-break:break-word;margin:0;font-weight:500;line-height:1.35}.modal-body{margin-bottom:.25rem}.modal-body>.stack{gap:.85rem}.modal-body label,.field{font-size:var(--text-xs);color:var(--text-muted);flex-direction:column;align-items:stretch;gap:.4rem;margin:0;font-weight:500;display:flex}.modal-body label input:not([type=range]):not([type=checkbox]):not([type=radio]),.modal-body label select,.field input,.field select{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);height:2.5rem;color:var(--text-body);font:inherit;padding:0 .65rem}.entry-form textarea,.modal-body textarea,.field textarea{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);width:100%;min-height:5rem;color:var(--text-body);font:inherit;line-height:var(--leading-normal);resize:vertical;box-sizing:border-box;padding:.65rem .75rem}.modal-body label input:not([type=range]):not([type=checkbox]):not([type=radio]):focus,.modal-body label select:focus,.modal-body textarea:focus,.field input:focus,.field select:focus,.field textarea:focus{box-shadow:var(--ring);border-color:var(--border-focus);outline:none}.modal-footer{border-top:1px solid var(--border-muted);justify-content:flex-end;gap:.5rem;margin-top:1rem;padding-top:.85rem;display:flex}.modal-content.project-review-modal{width:min(28rem,100vw - 2rem);padding:0;overflow:hidden}.modal-content.project-review-modal .modal-head{border-bottom:1px solid var(--border-muted);background:linear-gradient(180deg, color-mix(in srgb, var(--sky) 35%, var(--paper)) 0%, var(--paper) 100%);margin:0;padding:1rem 1.15rem .85rem}.modal-content.project-review-modal.is-reject .modal-head,.modal-content.project-review-modal.is-rejecting .modal-head{background:linear-gradient(180deg, color-mix(in srgb, var(--neg-soft) 70%, var(--paper)) 0%, var(--paper) 100%)}.modal-content.project-review-modal .modal-title{font-size:var(--text-sm);letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted);font-weight:650}.modal-content.project-review-modal .modal-subtitle{font-size:var(--text-base);color:var(--text-strong);letter-spacing:0;text-transform:none;font-weight:600}.modal-content.project-review-modal.is-reject .modal-title,.modal-content.project-review-modal.is-rejecting .modal-title{color:var(--neg)}.modal-content.project-review-modal .modal-body{margin:0;padding:1.1rem 1.15rem .35rem}.modal-content.project-review-modal .modal-footer{border-top:1px solid var(--border-muted);background:var(--surface-sunken);margin:0;padding:.9rem 1.15rem 1.1rem}.project-review{flex-direction:column;gap:1rem;display:flex}.project-review-hero{flex-direction:column;gap:.35rem;display:flex}.project-review-hero-top{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.project-review-code{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;color:var(--blue-400);background:color-mix(in srgb, var(--sky) 45%, transparent);border:1px solid color-mix(in srgb, var(--sky) 80%, var(--border-default));border-radius:var(--radius-sm);padding:.15rem .45rem;font-weight:600}.project-review-name{font-size:1.25rem;font-weight:650;line-height:var(--leading-snug);color:var(--text-strong);letter-spacing:-.01em;margin:.15rem 0 0}.project-review-client{font-size:var(--text-sm);color:var(--text-muted);margin:0}.project-review-meta{border:1px solid var(--border-muted);border-radius:var(--radius-md);background:var(--surface-sunken);grid-template-columns:1fr 1fr;gap:.75rem 1rem;margin:0;padding:.85rem .9rem;display:grid}.project-review-meta>div{min-width:0}.project-review-meta>.span-2{grid-column:1/-1}.project-review-meta dt{font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-subtle);margin:0 0 .2rem;font-weight:600}.project-review-meta dd{font-size:var(--text-sm);color:var(--text-body);margin:0;line-height:1.35}.project-review-note{border-left:3px solid var(--blue-400);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:color-mix(in srgb, var(--sky) 28%, var(--paper));padding:.75rem .85rem}.project-review-note-label{font-size:var(--text-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--blue-400);margin-bottom:.25rem;font-weight:600;display:block}.project-review-note p{font-size:var(--text-sm);color:var(--text-body);line-height:var(--leading-normal);white-space:pre-wrap;margin:0}.project-review-hint{font-size:var(--text-xs);color:var(--text-subtle);margin:0;line-height:1.4}.project-review-reject{border:1px solid color-mix(in srgb, var(--neg) 18%, var(--border-default));border-radius:var(--radius-md);background:color-mix(in srgb, var(--neg-soft) 55%, var(--paper));flex-direction:column;gap:.75rem;padding:.85rem .9rem;display:flex}.project-review-reject-lede{font-size:var(--text-sm);color:var(--text-body);margin:0;line-height:1.4}.project-merge-confirm{flex-direction:column;gap:.75rem;display:flex}.project-merge-confirm-note{font-size:var(--text-sm);color:var(--text-subtle);margin:0;line-height:1.4}.project-merge-confirm-note strong{color:var(--text-body);font-weight:700}.project-merge-cross-summary{flex-direction:column;gap:.75rem;margin:0;display:flex}.project-merge-cross-summary>div{grid-template-columns:2.75rem 1fr;align-items:start;gap:.65rem;display:grid}.project-merge-cross-summary dt{font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--text-subtle);margin:0;padding-top:.1rem;font-weight:600}.project-merge-cross-summary dd{min-width:0;font-size:var(--text-sm);flex-direction:column;gap:.15rem;margin:0;line-height:1.35;display:flex}.project-merge-cross-summary dd strong{color:var(--text-body);overflow-wrap:anywhere;font-weight:600}.project-review-reject textarea{background:var(--paper)}@media (width<=860px){.entry-form{grid-template-columns:1fr}.entry-form label.span-2{grid-column:auto}.time-toolbar{flex-direction:column;align-items:stretch}.time-toolbar-end{justify-content:flex-end;width:100%;margin-left:0}.time-period-bar{grid-template-columns:1fr;justify-items:center;gap:.65rem}.time-period-side{justify-content:center;width:100%}.time-period-end{justify-content:center}.time-toolbar .week-switcher{order:-1}}.admin-bar{justify-content:flex-end;display:flex}.week-switcher{justify-content:center;align-items:center;gap:1rem;display:flex}.week-switcher strong{font-family:var(--font-mono);font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--text-strong);font-weight:500}.status-banner{border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--surface-sunken);color:var(--text-muted);font-size:var(--text-sm);padding:.75rem 1rem}.status-banner.neg{border-color:var(--neg);background:var(--neg-soft);color:var(--neg)}.status-banner.neg strong{color:var(--neg);margin-bottom:.15rem;display:block}.week-grid thead th{border-bottom:1px solid var(--border-default);padding:.5rem}.week-grid tbody td{border-bottom:1px solid var(--border-muted);padding:.35rem .5rem}.week-grid tbody tr:last-child td{border-bottom:0}.week-grid .project-col{width:16rem;min-width:14rem;padding-left:1rem}.week-grid .day-col,.week-grid .total-col{text-align:right;min-width:4.5rem}.week-grid .actions-col{width:4.5rem;padding-right:.75rem}.week-grid thead .project-col{padding-left:1rem}.hour-input{text-align:right;border-radius:var(--radius-sm);width:100%;min-width:4.5rem;height:2rem;color:var(--text-body);font-family:var(--font-mono);font-size:var(--text-sm);font-variant-numeric:tabular-nums;background:0 0;border:1px solid #0000;padding:0 .4rem}.hour-input:hover{border-color:var(--border-default)}.hour-input:focus{border-color:var(--border-focus);box-shadow:none;outline:none}.hour-readonly{text-align:right;height:2rem;line-height:2rem;font-family:var(--font-mono);font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--text-body);padding:0 .4rem;display:block}.project-select{border-radius:var(--radius-sm);width:100%;height:2rem;color:var(--text-body);font-size:var(--text-sm);background:0 0;border:1px solid #0000;padding:0 .4rem}.project-select:hover{border-color:var(--border-default)}.project-select:focus{border-color:var(--border-focus);box-shadow:none;outline:none}.week-grid tfoot td{font-family:var(--font-mono);font-weight:500;font-size:var(--text-sm);color:var(--text-strong);border-top:1px solid var(--border-default);font-variant-numeric:tabular-nums;border-bottom:0;padding:.5rem}.week-grid tfoot .project-col{padding-left:1rem}.week-card-foot{border-top:1px solid var(--border-muted);padding:.55rem 1rem}.week-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.week-total-label{align-items:center;gap:.75rem;display:flex}.week-total-label span{font-size:var(--text-sm);color:var(--text-muted)}.week-total-label strong{font-family:var(--font-mono);font-size:var(--text-base);font-variant-numeric:tabular-nums;color:var(--text-strong);font-weight:600}.week-empty{text-align:center;color:var(--text-muted);font-size:var(--text-sm);margin:0;padding:2.5rem 1.25rem}.row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;display:inline-flex}.row-actions.tight{flex-wrap:nowrap;gap:.2rem}.row-action-pair{align-items:center;gap:.15rem;display:inline-flex}.note-icon,.note-trigger{color:var(--text-muted)}.note-icon.has-note,.note-trigger.has-note{color:var(--accent-gold-ink)}.note-icon{justify-content:center;align-items:center;width:1.75rem;height:1.75rem;display:inline-flex}.note-popover{z-index:50;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card);width:18rem;box-shadow:var(--shadow-md);padding:.75rem}.note-popover-field{flex-direction:column;gap:.35rem;display:flex}.note-popover-field>span{font-size:var(--text-xs);color:var(--text-strong);font-weight:500}.note-popover-field input{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);height:2rem;color:var(--text-body);font-size:var(--text-sm);padding:0 .5rem}.note-popover-field input:focus{border-color:var(--border-focus);box-shadow:none;outline:none}.note-popover-field p{color:var(--text-muted);margin:0;font-size:11px}.note-popover-actions{justify-content:flex-end;gap:.5rem;margin-top:.5rem;display:flex}.note-cancel,.note-save{font-size:var(--text-xs);cursor:pointer;background:0 0;border:0;padding:.15rem .25rem;font-weight:500}.note-cancel{color:var(--text-muted)}.note-cancel:hover{color:var(--text-strong)}.note-save{color:var(--text-link)}.note-save:hover{text-decoration:underline}.ui-tip{z-index:60;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card);max-width:16rem;color:var(--text-body);box-shadow:var(--shadow-md);font-family:var(--font-sans);font-size:var(--text-xs);line-height:var(--leading-snug);-webkit-user-select:none;user-select:none;animation:ui-tip-in var(--dur-fast) var(--ease);padding:.4rem .55rem}.ui-tip-arrow{fill:var(--surface-card);stroke:var(--border-default);stroke-width:1px}.ui-tip-stack{flex-direction:column;gap:.15rem;display:flex}.ui-tip-title{color:var(--text-strong);font-weight:600}.ui-tip-meta{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.02em;color:var(--text-muted)}@keyframes ui-tip-in{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.banner{border-radius:var(--radius-md);border:1px solid var(--border-default);font-size:var(--text-sm);padding:.85rem 1rem}.banner.error{background:var(--neg-soft);color:var(--neg);border-color:#0000}.banner-quote{color:inherit;margin:0;font-style:italic;font-weight:600}.banner-hint{font-size:var(--text-sm);color:var(--text-muted);margin:.4rem 0 0;font-weight:400}.banner.success{background:var(--pos-soft);color:var(--pos);border-color:#0000}.prefs-toast{top:calc(var(--topbar-h) + .75rem);z-index:60;width:max-content;max-width:min(22rem,100vw - 2rem);box-shadow:var(--shadow-md);pointer-events:none;margin:0;animation:.18s ease-out prefs-toast-in;position:fixed;left:auto;right:1.25rem}@keyframes prefs-toast-in{0%{opacity:0;transform:translateY(-.35rem)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.prefs-toast{animation:none}}.logged-hours-tip{cursor:default;border-bottom:1px dotted color-mix(in srgb, var(--text-muted) 55%, transparent);display:inline-block}.logged-hours-btn{color:inherit;font:inherit;cursor:pointer;border:0;border-bottom:1px dotted color-mix(in srgb, var(--text-link) 55%, transparent);background:0 0;margin:0;padding:0;display:inline-block}.logged-hours-btn:hover{color:var(--text-link);border-bottom-color:var(--text-link)}.hours-breakdown-list .hours-breakdown-hours{color:var(--text-muted);font-variant-numeric:tabular-nums}.banner.warn{color:var(--warn);background:#f7f1e8;border-color:#0000}.banner-with-icon{align-items:center;gap:.5rem;display:flex}.banner-with-icon svg{flex-shrink:0}.login-screen,.loading-screen{background:var(--surface-page);place-items:center;min-height:100vh;padding:1.5rem;display:grid}.blocking-overlay{z-index:200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#07111d8c;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.blocking-overlay-card{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card);width:min(22rem,100%);box-shadow:var(--shadow-md);text-align:center;flex-direction:column;align-items:center;gap:.65rem;padding:1.5rem 1.75rem;display:flex}.blocking-overlay-spinner{color:var(--accent);animation:.9s linear infinite blocking-overlay-spin}.blocking-overlay-message{font-size:var(--text-md);color:var(--text-heading);margin:0;font-weight:600}.blocking-overlay-detail{max-width:18rem;margin:0}@keyframes blocking-overlay-spin{to{transform:rotate(360deg)}}.blocking-overlay-error{color:var(--neg)}.blocking-overlay.is-error .blocking-overlay-card{gap:1rem}.login-card{width:min(400px,100%);padding:2rem}.login-card h1{margin-bottom:.35rem}.login-card>p{color:var(--text-muted);font-size:var(--text-sm);margin:0 0 1.25rem}.login-card .login-footer.muted{text-align:center;margin:1.75rem 0 0}.login-card .field,.login-card .field input{cursor:text}.login-card .btn:not(:disabled),.login-footer a,.login-card .login-text-link{cursor:pointer}.login-card .btn:disabled{cursor:not-allowed}.login-footer a,.login-card .login-text-link{color:var(--text-link);-webkit-user-select:none;user-select:none;justify-content:center;justify-self:center;align-items:center;margin-top:.85rem;padding:.45rem .65rem;text-decoration:none;display:inline-flex}.login-footer a:hover,.login-card .login-text-link:hover{text-underline-offset:.18em;text-decoration:underline}.row-actions.wrap{flex-wrap:wrap}.login-card .btn,.login-card .primary-btn{margin-top:.35rem}@media (width<=860px){.stats-row,.section-head{grid-template-columns:1fr;display:grid}.pref-row{grid-template-columns:1fr}.pref-row-controls{justify-self:start;margin-top:0}.week-footer{flex-direction:column;align-items:stretch}.row-actions{justify-content:stretch}.row-actions .btn,.row-actions .primary-btn,.row-actions .ghost-btn{flex:1}}.vac-balance{justify-content:space-between;align-items:center;gap:1rem;display:flex}.vac-mine-table .vac-mine-col-dates,.vac-mine-table .vac-mine-col-workdays,.vac-mine-table .vac-mine-col-status,.vac-mine-table .vac-mine-col-submitted{white-space:nowrap;width:.1%}.vac-mine-table .vac-mine-col-note{width:99%;min-width:16rem}.vac-mine-table .vac-mine-col-submitted .th-sort{white-space:nowrap}.vac-balance-figure{color:var(--text-strong);margin:.35rem 0 0;font-size:1.35rem;font-weight:600}.vac-balance-breakdown{margin:.35rem 0 0}.panel-label{border-bottom:1px solid var(--border-muted);font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin:0;padding:.75rem 1rem;font-size:.7rem}.linkish{color:var(--text-link,var(--accent));font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.8rem;font-weight:500;text-decoration:none}.linkish:hover{text-decoration:underline}.vac-cal-head{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.vac-cal-head-tools{flex:0 auto;align-items:center;gap:.45rem;min-width:0;padding-left:.5rem;display:flex}.vac-cal-head-tools .eyebrow{white-space:nowrap;margin:0}.vac-people-reset.is-idle{opacity:0;pointer-events:none}.vac-cal-pick-bar{flex:none;align-items:center;gap:.65rem;display:flex}.vac-cal-head-days{flex:1;justify-content:center;align-items:center;min-width:0;display:flex}.vac-cal-empty{text-align:center;padding:1rem .75rem}.vac-cal-empty .week-empty{margin:0}.vac-cal-nav,.vac-picker-nav{align-items:center;gap:.5rem;display:flex}.table-pager{justify-content:center;align-items:center;gap:.5rem;padding:.65rem .75rem .85rem;display:flex}.table-pager.has-size{justify-content:space-between}.table-pager-nav{align-items:center;gap:.35rem;display:flex}.table-pager-size{align-items:center;gap:.45rem;display:inline-flex}.table-pager-size-select{width:3.35rem}.table-pager-size-select .project-combo-trigger{height:1.85rem;font-size:var(--text-xs);font-variant-numeric:tabular-nums;gap:.1rem;padding:0 .2rem 0 .4rem}.table-pager-size-select .project-combo-chevron{width:11px;height:11px}.table-pager-size-select .field-select-panel{width:auto;min-width:3.35rem}.table-pager-size-select .project-combo-option{font-size:var(--text-xs);font-variant-numeric:tabular-nums;padding:.35rem .55rem}.vac-picker-label{color:var(--text-strong);text-align:center;min-width:9rem;font-size:.9rem;font-weight:500}.vac-cal-scroll{overscroll-behavior-x:contain;touch-action:pan-x pan-y;overflow-x:auto}.vac-cal-table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:var(--text-xs)}.vac-cal-person{z-index:2;text-align:left;vertical-align:middle;background:var(--surface-card);width:11.5rem;min-width:11.5rem;max-width:11.5rem;box-shadow:1px 0 0 var(--border-muted);padding:.3rem .5rem .3rem .25rem;position:sticky;left:0}.vac-cal-person-row{align-items:center;gap:.1rem;min-width:0;display:flex}.vac-cal-pick{opacity:0;cursor:pointer;flex:none;justify-content:center;align-items:center;width:1.2rem;height:1.35rem;margin:0;display:inline-flex}.vac-cal-pick.is-on,.vac-cal-table tbody tr:hover .vac-cal-pick{opacity:1}.vac-cal-pick:has(input:focus-visible){opacity:1}.vac-cal-pick input{width:.85rem;height:.85rem;accent-color:var(--text-strong);cursor:pointer;margin:0}.vac-cal-visibility{border-radius:var(--radius-sm);width:1.25rem;height:1.35rem;color:var(--text-muted);opacity:0;cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.vac-cal-table tbody tr:hover .vac-cal-visibility,.vac-cal-visibility:focus-visible,.vac-cal-visibility.is-on,.vac-cal-pick.is-on~.vac-cal-visibility{opacity:1}.vac-cal-visibility:hover{color:var(--text-strong);background:var(--surface-hover)}.vac-cal-solo.is-on{color:var(--text-strong);background:color-mix(in srgb, var(--accent-soft) 70%, var(--surface-card))}thead .vac-cal-person{z-index:3;background:var(--surface-card)}.vac-cal-person-name{min-width:0;max-width:100%;font-weight:500;font-size:var(--text-xs);color:var(--text-strong);align-items:center;gap:.35rem;line-height:1.2;display:inline-flex}.vac-cal-table tbody tr{transition:background .12s}.vac-cal-table tbody tr:hover>*{background:color-mix(in srgb, var(--accent-soft) 28%, var(--surface-card))}.vac-cal-you{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-gold-ink);background:color-mix(in srgb, var(--accent-gold) 55%, var(--surface-card));border-radius:var(--radius-xs);flex-shrink:0;padding:.1rem .3rem;font-size:9px;font-weight:600}.vac-cal-table tbody tr.is-self .vac-cal-person{background:color-mix(in srgb, var(--accent-soft) 42%, var(--surface-card));box-shadow:1px 0 0 var(--border-muted)}.vac-cal-table tbody tr.is-self .vac-cal-person-name{font-weight:600}.vac-cal-dayhead{text-align:center;vertical-align:bottom;width:1.55rem;min-width:1.55rem;max-width:1.55rem;color:var(--text-muted);padding:.2rem .05rem;font-weight:500}.vac-cal-dayhead.is-weekend,.vac-cal-cell.is-weekend{background:var(--vac-weekend-wash)}.vac-cal-dayhead.is-holiday,.vac-cal-cell.is-holiday{background:var(--vac-holiday-wash)}.vac-cal-dayhead-inner{flex-direction:column;align-items:center;gap:.05rem;display:flex}.vac-cal-dayhead.is-select-range,.vac-cal-cell.is-select-range{background:color-mix(in srgb, var(--vac-select) 14%, transparent)}.vac-cal-dayhead.is-select-edge,.vac-cal-cell.is-select-edge{background:color-mix(in srgb, var(--vac-select) 28%, transparent)}.vac-cal-dayhead.is-select-edge .vac-cal-dom{color:var(--vac-select);font-weight:700}.vac-cal-cell.is-select-range .vac-dot:not(.is-approved):not(.is-past-leave):not(.is-pending):not(.is-mandatory):not(.is-holiday),.vac-cal-cell.is-select-edge .vac-dot:not(.is-approved):not(.is-past-leave):not(.is-pending):not(.is-mandatory):not(.is-holiday){background:color-mix(in srgb, var(--vac-select) 35%, var(--surface-card));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--vac-select) 55%, transparent)}.vac-cal-cell.is-selectable{cursor:pointer}.vac-cal-cell.is-selectable:hover{outline:1px solid color-mix(in srgb, var(--vac-select) 45%, transparent);outline-offset:-1px}.vac-cal-cell.is-blocked{cursor:not-allowed}.vac-cal-dayhead.is-past{opacity:.42}.vac-cal-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem;margin-top:.75rem;display:flex}.vac-cal-selection{align-items:center;gap:.65rem;display:inline-flex}.vac-cal-hint{margin:0}.vac-cal-dow{font-family:var(--font-mono);letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:600;line-height:1;display:block}.vac-cal-dom{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-strong);line-height:1.1;display:block}.vac-cal-dayhead.is-weekend .vac-cal-dow,.vac-cal-dayhead.is-weekend .vac-cal-dom{color:var(--text-muted)}.vac-cal-dayhead.is-holiday .vac-cal-dom{color:var(--vac-holiday-ink);font-weight:600}.vac-cal-cell{text-align:center;vertical-align:middle;padding:.2rem .05rem}.vac-dot{border-radius:var(--radius-xs);vertical-align:middle;background:var(--vac-weekday);width:1.1rem;height:1.1rem;display:inline-block}.vac-dot.is-weekend{background:var(--vac-weekend)}.vac-dot.is-holiday{background:var(--vac-holiday)}.vac-dot.is-approved{background:var(--vac-approved)}.vac-dot.is-past-leave{background:var(--vac-past)}.vac-dot.is-pending{background:var(--vac-pending-bg);border:1px dashed var(--vac-pending-border);box-sizing:border-box}.vac-dot.is-mandatory{background:var(--vac-mandatory)}.vac-legend{color:var(--text-muted);flex-wrap:wrap;gap:1rem;margin:0;font-size:.75rem;display:flex}.vac-legend-item{color:inherit;font:inherit;background:0 0;border:0;align-items:center;gap:.4rem;margin:0;padding:0;display:inline-flex}button.vac-legend-item:not(:disabled){cursor:help}.vac-legend .vac-dot{width:.75rem;height:.75rem}.vac-picker{flex-direction:column;gap:.75rem;display:flex}.vac-month-grid{grid-template-columns:repeat(7,1fr);gap:.2rem;display:grid}.vac-weekday{text-align:center;font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding:.15rem 0;font-size:.7rem;font-weight:600}.vac-day{height:2rem;font-family:var(--font-mono,ui-monospace, monospace);cursor:pointer;color:var(--text-body);background:0 0;border:0;border-radius:.2rem;justify-content:center;align-items:center;font-size:.8rem;display:flex}.vac-day:hover{background:var(--surface-hover,var(--bg-muted))}.vac-day.is-outside{opacity:.35}.vac-day.is-muted{color:var(--text-subtle,var(--text-muted))}.vac-day.is-holiday{color:var(--vac-holiday-ink);font-weight:600;position:relative}.vac-day.is-holiday:after{content:"";background:var(--vac-holiday);border-radius:999px;width:.28rem;height:.28rem;position:absolute;bottom:.18rem;left:50%;transform:translate(-50%)}.vac-day.is-holiday.is-range:not(.is-edge){background:color-mix(in srgb, var(--vac-select) 22%, var(--surface-card))}.vac-day.is-holiday.is-edge,.vac-day.is-holiday.is-edge:hover{background:var(--vac-select);color:var(--text-inverse)}.vac-day.is-holiday.is-edge:after{background:var(--text-inverse);opacity:.85}.vac-day.is-range{background:color-mix(in srgb, var(--vac-select) 22%, var(--surface-card))}.vac-day.is-edge{background:var(--vac-select);color:var(--text-inverse)}.vac-day.is-edge:hover{background:color-mix(in srgb, var(--vac-select) 85%, var(--text-strong))}.vac-day.is-blocked,.vac-day:disabled{cursor:not-allowed;opacity:.4}.vac-day.is-blocked:hover,.vac-day:disabled:hover{background:0 0}.vac-picker-meta{border-top:1px solid var(--border-muted);padding-top:.85rem;font-size:.9rem}.vac-picker-meta p{margin:.15rem 0}.review-meta-grid{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}.pm-decision-list{margin:0 0 1rem;padding:0;list-style:none}.pm-decision-list li{border-bottom:1px solid var(--border-muted);justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem 0;display:flex}.pm-decision-list li:last-child{border-bottom:0}.review-actions{border-top:1px solid var(--border-muted);flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem;display:flex}.section-head-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.capitalize{text-transform:capitalize}.min-w-0{min-width:0}.ml-auto{margin-left:auto}.expense-panel-head{border-bottom:1px solid var(--border-muted);justify-content:space-between;align-items:center;gap:1rem;padding-right:1rem;display:flex}.expense-panel-head .panel-label{border-bottom:0;flex:1;min-width:0}.panel.flush .data-table:not(.entries-table):not(.clients-table) .actions-col{white-space:nowrap;text-align:right;vertical-align:middle;width:1%;padding-right:1rem}.panel.flush .data-table .actions-col a.btn+.btn{margin-left:.35rem}.receipt-inbox-actions{justify-content:flex-end;gap:.35rem}.panel.flush .data-table.clients-table .actions-col{text-align:center;vertical-align:middle;padding-right:.75rem}.data-table.entries-table .actions-col{text-align:right;vertical-align:middle;width:5.5rem;padding-right:.75rem}.expense-reject-hint{color:var(--neg,#b42318);margin:.2rem 0 0}.expense-editor-title{flex-direction:column;flex:1;gap:.5rem;min-width:0;display:flex}.expense-title-input{width:100%;max-width:28rem;font:inherit;color:inherit;background:0 0;border:1px solid #0000;border-radius:4px;margin:-.15rem -.35rem;padding:.15rem .35rem;font-size:1.5rem;font-weight:600}.expense-title-input:focus{border-color:var(--border-focus,var(--accent));outline:none}.expense-travel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;display:grid}.expense-travel-panel-body{gap:1.1rem;padding:.85rem 1rem 1rem;display:grid}.expense-perdiem-block{border-top:1px solid var(--border-muted);gap:.55rem;padding-top:.85rem;display:grid}.expense-perdiem-head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.expense-perdiem-head .strong{margin:0}@media (width>=720px){.expense-travel-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.expense-purpose-field{grid-column:span 3}}.expense-meal-matrix{flex-direction:column;gap:0;margin-top:.75rem;display:flex}.expense-meal-row{border-bottom:1px solid var(--border-muted);grid-template-columns:max-content max-content max-content minmax(0,1fr);align-items:center;column-gap:.5rem;padding:.55rem 0;font-size:.9rem;display:grid}.expense-meal-row:last-child{border-bottom:0}.expense-meal-date{white-space:nowrap;align-items:baseline;gap:.4rem;display:inline-flex}.expense-meal-weekday{color:var(--text-muted);min-width:2.1rem;font-weight:500}.expense-meal-kind{box-sizing:border-box;text-align:center;white-space:nowrap;justify-content:center;justify-self:start;min-width:7.75rem}.expense-meal-toggles{grid-template-columns:repeat(3,6.75rem);justify-self:start;gap:.35rem;display:grid}.expense-meal-toggle{appearance:none;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);min-width:0;min-height:2.05rem;color:var(--text-muted);font:inherit;text-transform:capitalize;letter-spacing:.01em;cursor:pointer;justify-content:center;align-items:center;gap:.35rem;margin:0;padding:.35rem .45rem;font-size:.8rem;font-weight:500;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.expense-meal-toggle svg{flex-shrink:0}.expense-meal-toggle:hover:not(:disabled):not(.is-on){background:var(--surface-hover);color:var(--text-body)}.expense-meal-toggle.is-on{border-color:color-mix(in srgb, var(--text-body) 28%, var(--border-default));background:color-mix(in srgb, var(--text-body) 8%, var(--surface-card));color:var(--text-body)}.expense-meal-toggle:disabled{opacity:.55;cursor:default}.expense-meal-toggle:focus-visible{outline:2px solid color-mix(in srgb, var(--text-body) 35%, transparent);outline-offset:1px}.expense-meal-amount{font-variant-numeric:tabular-nums;flex-direction:column;justify-self:end;align-items:flex-end;gap:.1rem;font-weight:600;line-height:1.2;display:flex}.expense-meal-base{font-size:.72rem;font-weight:500}@media (width<=720px){.expense-meal-row{grid-template-columns:minmax(0,1fr) auto;row-gap:.45rem}.expense-meal-date{grid-area:1/1}.expense-meal-amount{grid-area:1/2}.expense-meal-kind{grid-area:2/1/auto/-1}.expense-meal-toggles{grid-area:3/1/auto/-1;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}}.expense-meals-label{margin-top:1.25rem}.field .project-combo-trigger.field-select-trigger{width:100%}.field-select-trigger-main,.field-select-option-main{flex:1;align-items:center;gap:.45rem;min-width:0;display:flex}.field-select-option-icon{color:var(--text-muted);flex-shrink:0}.project-combo-option.is-selected .field-select-option-icon{color:var(--text-strong)}.field-select-panel{min-width:var(--radix-popover-trigger-width,12rem);width:max(100%, var(--radix-popover-trigger-width,12rem))}.expense-line-stack{flex-direction:column;gap:.75rem;padding:.85rem 1rem 1rem;display:flex}.panel.flush>.week-empty{margin:0;padding:1rem}.expense-line-card{border:1px solid var(--border-muted);background:var(--surface,transparent);border-radius:6px;padding:.85rem 1rem}.expense-line-card.is-confirmed{border-color:color-mix(in srgb, var(--pos,#067647) 35%, var(--border-muted))}.expense-line-card-head{flex-wrap:wrap;align-items:center;gap:.65rem;margin-bottom:.65rem;display:flex}.expense-line-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem .85rem;display:grid}@media (width>=720px){.expense-line-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}.expense-line-footer{border-top:1px solid var(--border-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.75rem;padding-top:.65rem;display:flex}.expense-confirm-toggle{appearance:none;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);min-height:2.05rem;color:var(--text-muted);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:.4rem;margin:0;padding:.35rem .75rem;font-size:.82rem;font-weight:500;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.expense-confirm-toggle:hover:not(:disabled):not(.is-on){background:var(--surface-hover);color:var(--text-body)}.expense-confirm-toggle.is-on{border-color:color-mix(in srgb, var(--pos,#067647) 35%, var(--border-default));background:color-mix(in srgb, var(--pos-soft,#dcfae6) 70%, var(--surface-card));color:var(--pos,#067647)}.expense-confirm-toggle:disabled{opacity:.55;cursor:default}.expense-confirm-toggle:focus-visible{outline:2px solid color-mix(in srgb, var(--text-body) 35%, transparent);outline-offset:1px}.expense-submit-blockers{flex-direction:column;gap:.2rem;margin:.4rem 0 0;padding-left:1.15rem;font-size:.9rem;display:flex}.expense-warnings{border-top:1px solid var(--border-muted);color:var(--warn-ink,#9a6700);flex-direction:column;gap:.25rem;margin:.65rem 0 0;padding:.55rem 0 0;font-size:.8rem;list-style:none;display:flex}.expense-perdiem-summary{margin:.75rem 0 0}@media (width<64rem){.topbar{padding-left:max(.75rem, env(safe-area-inset-left,0px));padding-right:max(.75rem, env(safe-area-inset-right,0px));gap:.5rem}.brand-logo{object-fit:contain;object-position:left center;max-width:9rem}.topbar-menu-btn{order:-1;margin-left:0;display:inline-flex}.user-chip{margin-left:auto}.user-menu .menu-picker-trigger .menu-picker-name,.user-menu .menu-picker-trigger .badge,.user-menu .menu-picker-trigger .menu-picker-caret{display:none}.user-menu .menu-picker-trigger{padding:.3rem}.nav-backdrop{top:calc(var(--topbar-h) + env(safe-area-inset-top,0px));z-index:40;background:color-mix(in srgb, var(--navy) 40%, transparent);cursor:pointer;box-shadow:none;border:0;margin:0;padding:0;display:block;position:fixed;bottom:0;left:0;right:0}.nav-backdrop:focus,.nav-backdrop:focus-visible{box-shadow:none;outline:none}.topbar-nav{z-index:45;max-height:min(28rem, calc(100dvh - var(--topbar-h) - env(safe-area-inset-top,0px)));padding:.5rem .75rem calc(.85rem + env(safe-area-inset-bottom,0px));border-bottom:1px solid var(--border-default);background:var(--surface-card);box-shadow:var(--shadow-md);flex-direction:column;flex:none;align-items:stretch;gap:.1rem;display:none;position:absolute;top:100%;left:0;right:0;overflow:hidden auto}.topbar-nav.is-open{display:flex}.topbar-nav a.nav-tab{border-radius:var(--radius-sm);padding:.8rem .85rem}.topbar-nav a.nav-tab.active:after{width:2px;height:auto;inset:.55rem auto .55rem 0}.topbar-nav .nav-approver-group,.topbar-nav .nav-manage-group{border-left:0;border-top:1px solid var(--border-default);flex-direction:column;align-items:stretch;gap:.1rem;margin:.35rem 0 0;padding:.35rem 0 0}.topbar-nav a.nav-pill,.topbar-nav .manage-menu-trigger{border-radius:var(--radius-sm);justify-content:flex-start;width:100%;padding:.8rem .85rem}.page{width:min(var(--container-max), calc(100% - 2rem));padding:1.25rem 0 max(2rem, env(safe-area-inset-bottom,0px))}.table-scroll,.month-grid-scroll,.vac-cal-scroll{-webkit-overflow-scrolling:touch}}@media (width<48rem){.page{width:min(var(--container-max), calc(100% - 1.5rem));padding:1rem 0 max(1.75rem, env(safe-area-inset-bottom,0px))}.login-screen,.loading-screen{padding:1rem;padding-left:max(1rem, env(safe-area-inset-left,0px));padding-right:max(1rem, env(safe-area-inset-right,0px))}.login-card{padding:1.35rem 1.15rem}.section-head,.expense-panel-head{flex-wrap:wrap;align-items:flex-start}.section-head-actions,.expense-panel-head .section-head-actions{width:100%}.stats-row,.review-meta-grid,.project-review-meta,.project-form-row,.hours-parts-row,.expense-travel-grid,.expense-line-fields{grid-template-columns:1fr}.expense-purpose-field{grid-column:auto}.expense-title-input{max-width:none;font-size:1.25rem}.vac-cal-head{flex-wrap:wrap}.vac-cal-head-tools,.vac-cal-pick-bar{flex:100%;padding-left:0}.table-pager.has-size{flex-wrap:wrap;justify-content:center;gap:.65rem}.table-pager-size{order:-1;justify-content:center;width:100%}.inline-filters{align-items:stretch}.inline-filters label,.inline-filters select,.compact-filter select,.project-filter select{width:100%;min-width:0;max-width:none}.month-submit-bar .row-actions{width:100%;margin-left:0}.time-toolbar-start{flex-direction:column;align-items:stretch}.time-toolbar-start .view-toggle{width:100%}.time-toolbar-end{justify-content:flex-start}.time-toolbar-end .btn{width:100%}.data-table th,.data-table td{padding:.55rem .6rem}.modal-content,.modal-content.is-wide,.modal-content.is-roomy{width:min(42rem,100vw - 1.25rem);max-height:calc(100dvh - 1.25rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}}@media (width<40rem){.brand-logo{height:1.35rem}.topbar-menu-btn{width:2.5rem;height:2.5rem}.stat strong{font-size:1.25rem}.tool-grid{grid-template-columns:1fr}}
