:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f6f5f2;--surface:#fff;--surface-2:#ecebe8;--border:#d8d6d2;--border-strong:#7a7874;--text:#000;--text-muted:#55534f;--primary:red;--on-primary:#000;--primary-edge:#000;--ink:#000;--on-ink:#fff;--link:#000;--focus:#1a56c4;--run:#0e6b3a;--run-tint:#dcf2e3;--run-solid:#1e8a4c;--lunch:#1d4fa0;--lunch-tint:#e2ebfa;--warn:#874600;--warn-tint:#ffefd2;--danger:#a80000;--danger-tint:#fbe2e2;--danger-solid:#a80000;--on-danger:#fff;--locked:#45433f;--locked-tint:#ecebe8;--toast-bg:#000;--toast-text:#f6f5f2;--toast-border:transparent;--scrim:#00000073;--hover:#0000000f;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--text-xs:13px;--lh-xs:18px;--text-sm:14px;--lh-sm:20px;--text-md:16px;--lh-md:24px;--text-lg:18px;--lh-lg:26px;--text-xl:22px;--lh-xl:28px;--text-2xl:28px;--lh-2xl:34px;--text-display:52px;--lh-display:56px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--tap-min:44px;--tap-row:60px;--tap-tile:72px;--tap-primary:72px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:999px;--gutter:16px;--content-max-time:480px;--shadow-1:0 1px 2px #00000014;--shadow-2:0 1px 0 var(--border), 0 2px 6px #0000000f;--shadow-3:0 12px 32px #00000038;--card-border:transparent;--z-sticky:10;--z-toast:50;--dur-fast:.12s;--dur-base:.2s;--dur-slow:.28s;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-in:cubic-bezier(.4, 0, 1, 1)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0d0d0d;--surface:#1a1a1a;--surface-2:#262626;--border:#363636;--border-strong:#7a7a7a;--text:#f6f5f2;--text-muted:#b0aeaa;--primary-edge:transparent;--ink:#f6f5f2;--on-ink:#000;--link:#f6f5f2;--focus:#8eb2ff;--run:#72d99c;--run-tint:#163220;--run-solid:#72d99c;--lunch:#9dbbf7;--lunch-tint:#1a2742;--warn:#f4b65e;--warn-tint:#382913;--danger:#ff8a80;--danger-tint:#3d1515;--danger-solid:#ff8a80;--on-danger:#1a0000;--locked:#c9c7c3;--locked-tint:#262626;--toast-bg:#2b2b2b;--toast-border:#454545;--scrim:#0009;--hover:#f6f5f20f;--shadow-1:none;--shadow-2:0 1px 0 var(--border);--shadow-3:0 12px 32px #0009;--card-border:var(--border)}}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur-base:0s;--dur-slow:0s}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html:has(dialog[open]){overflow:hidden}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--text-lg);line-height:var(--lh-lg);-webkit-hyphens:auto;hyphens:auto;margin:0}h1,h2,h3,p{margin:0}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--link)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}[tabindex="-1"]:focus{outline:none}.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}.num{font-variant-numeric:tabular-nums}.muted{color:var(--text-muted)}.caps{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:700;line-height:16px}.item-name{overflow-wrap:anywhere}.stage-watermark{z-index:-1;pointer-events:none;background-repeat:repeat;position:fixed;inset:0}.card{background:var(--surface);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);padding:var(--space-4)}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-min);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);text-align:center;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out);-webkit-tap-highlight-color:transparent;border:1px solid #0000;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){box-shadow:inset 0 0 0 999px var(--hover)}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn[aria-busy=true]{pointer-events:none}.btn--block{width:100%}.btn--primary{background:var(--primary);color:var(--on-primary);border:2px solid var(--primary-edge)}.btn--ink{background:var(--ink);color:var(--on-ink)}.btn--secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.btn--ghost{color:var(--link);padding-inline:var(--space-2);background:0 0}.btn--danger{background:var(--danger-solid);color:var(--on-danger)}.btn--danger-ghost{color:var(--danger);background:0 0}.btn--xl{min-height:var(--tap-primary);border-radius:var(--radius-lg);font-size:var(--text-lg);letter-spacing:.04em;font-weight:800}.btn--lg{border-radius:var(--radius-lg);min-height:56px;font-size:var(--text-lg)}.btn--md{font-size:var(--text-md)}.btn--icon{width:48px;min-height:48px;padding:0}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.tiles{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));display:grid}.tile{min-height:var(--tap-tile);padding:var(--space-2);border-radius:var(--radius-lg);font-size:var(--text-md);gap:var(--space-1);flex-direction:column;line-height:20px}.tile svg{width:28px;height:28px}.segmented{border:0;grid-auto-columns:1fr;grid-auto-flow:column;gap:0;margin:0;padding:0;display:grid}.segmented legend{margin-bottom:var(--space-2);padding:0}.segmented label{justify-content:center;align-items:center;gap:var(--space-2);min-height:56px;padding:var(--space-2);background:var(--surface);border:1px solid var(--border-strong);font-size:var(--text-md);cursor:pointer;text-align:center;font-weight:600;display:flex;position:relative}.segmented label:first-of-type{border-radius:var(--radius-md) 0 0 var(--radius-md)}.segmented label:last-of-type{border-radius:0 var(--radius-md) var(--radius-md) 0}.segmented label+label{border-left:0}.segmented input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.segmented label:has(input:checked){background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.segmented label:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px;z-index:1}.segmented--sm label{min-height:var(--tap-min)}.pill{align-items:center;gap:var(--space-1);min-height:32px;padding:0 var(--space-3);border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:700;line-height:1.2;display:inline-flex}.pill svg{width:16px;height:16px}.pill--run{background:var(--run-tint);color:var(--run)}.pill--lunch{background:var(--lunch-tint);color:var(--lunch)}.pill--warn{background:var(--warn-tint);color:var(--warn)}.pill--locked{background:var(--locked-tint);color:var(--locked)}.pill--neutral{background:var(--surface-2);color:var(--text)}.pill--danger{background:var(--danger-tint);color:var(--danger)}.chip-stage{padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--danger-tint);color:var(--danger);font-size:12px;font-weight:700}.banner{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-md);line-height:var(--lh-md);border-left:4px solid;align-items:flex-start;display:flex}.banner svg{flex:none;width:22px;height:22px;margin-top:1px}.banner__body{flex:1;min-width:0}.banner--warn{background:var(--warn-tint);color:var(--warn);border-color:var(--warn)}.banner--locked{background:var(--locked-tint);color:var(--locked);border-color:var(--locked)}.banner--run{background:var(--run-tint);color:var(--run);border-color:var(--run-solid)}.banner--danger{background:var(--danger-tint);color:var(--danger);border-color:var(--danger)}.banner--neutral{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.field{gap:var(--space-2);flex-direction:column;display:flex}.field__label{font-size:var(--text-md);font-weight:600}.field__hint{color:var(--text-muted);font-size:var(--text-sm);line-height:var(--lh-sm)}.field__error{color:var(--danger);font-size:var(--text-sm);line-height:var(--lh-sm);gap:var(--space-1);align-items:flex-start;display:flex}.field__error svg{flex:none;width:16px;height:16px;margin-top:2px}.feedback-input{resize:vertical;min-height:120px}.shot-list{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.shot{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);width:104px;height:104px;position:relative;overflow:hidden}.shot img{object-fit:cover;width:100%;height:100%;display:block}.shot__remove{top:var(--space-1);right:var(--space-1);width:36px;height:36px;min-height:36px;position:absolute}.input{width:100%;min-height:56px;padding:var(--space-3);font-size:var(--text-md);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm)}.input[aria-invalid=true]{border:2px solid var(--danger)}dialog{color:var(--text)}dialog::backdrop{background:var(--scrim)}.sheet{width:100%;max-width:var(--content-max-time);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--surface);box-shadow:var(--shadow-3);overscroll-behavior:contain;border:0;max-height:100dvh;margin:auto auto 0;padding:0}.sheet[open]{animation:sheet-in var(--dur-slow) var(--ease-out)}.sheet--full{border-radius:0;height:100dvh;margin:0 auto}@keyframes sheet-in{0%{opacity:0;transform:translateY(24px)}}.sheet__header{align-items:center;gap:var(--space-2);min-height:56px;padding:var(--space-1) var(--space-2);background:var(--surface);border-bottom:1px solid var(--border);z-index:1;display:flex;position:sticky;top:0}.sheet__title{font-size:var(--text-xl);line-height:var(--lh-xl);flex:1;font-weight:700}.sheet__body{gap:var(--space-4);padding:var(--space-4) var(--gutter) calc(var(--space-6) + env(safe-area-inset-bottom));flex-direction:column;display:flex}.confirm{width:calc(100% - 2 * var(--gutter));border-radius:var(--radius-lg);background:var(--surface);max-width:400px;padding:var(--space-5);box-shadow:var(--shadow-3);border:0}.confirm__actions{gap:var(--space-3);margin-top:var(--space-5);flex-direction:column;display:flex}.toast-region{left:50%;top:calc(56px + env(safe-area-inset-top) + var(--space-2));width:calc(100% - 2 * var(--gutter));max-width:var(--content-max-time);z-index:var(--z-toast);pointer-events:none;position:fixed;transform:translate(-50%)}.toast{align-items:center;gap:var(--space-2);min-height:56px;padding:var(--space-2) var(--space-1) var(--space-2) var(--space-4);background:var(--toast-bg);color:var(--toast-text);border:1px solid var(--toast-border);border-radius:var(--radius-md);box-shadow:var(--shadow-3);font-size:var(--text-md);line-height:var(--lh-md);pointer-events:auto;animation:sheet-in var(--dur-base) var(--ease-out);display:flex}.toast--error{background:var(--danger-solid);color:var(--on-danger)}.toast__text{flex:1}.toast .btn--ghost{color:var(--primary)}.toast--error .btn--ghost,.toast .toast__close{color:inherit}.skeleton{background:var(--surface-2);border-radius:var(--radius-sm)}.empty{align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-4);text-align:center;color:var(--text-muted);flex-direction:column;display:flex}.empty svg{width:32px;height:32px}.dl{gap:var(--space-2) var(--space-4);grid-template-columns:auto 1fr;margin:0;display:grid}.dl dt{color:var(--text-muted)}.dl dd{overflow-wrap:anywhere;margin:0}.screen-error{gap:var(--space-4);flex-direction:column;display:flex}.screen-error__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.screen-error--page{max-width:480px;margin:var(--space-8) auto;padding:0 var(--gutter);align-items:flex-start}.time-app{flex-direction:column;min-height:100dvh;display:flex}.time-header{z-index:var(--z-sticky);align-items:center;gap:var(--space-3);min-height:56px;padding:env(safe-area-inset-top) var(--gutter) 0;background:var(--surface);box-shadow:var(--shadow-2);display:flex;position:sticky;top:0}.time-header__title{min-width:0;line-height:var(--lh-md);flex-direction:column;flex:1;display:flex}.time-header__brand,.time-header__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.time-header__brand{font-size:var(--text-lg);font-weight:800}.time-header__name{font-size:var(--text-sm);color:var(--text-muted)}.time-header .btn{padding-inline:var(--space-3);flex-shrink:0}@media (width<=479px){.time-header{gap:var(--space-2)}.time-header .btn{padding-inline:var(--space-2)}.time-header__brand{font-size:clamp(15px, 4.1vw, var(--text-lg))}.time-header .chip-stage{display:none}.time-header__label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (width<=359px){.time-header__signout{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.conn-banner{max-width:var(--content-max-time);width:calc(100% - 2 * var(--gutter));margin:var(--space-3) auto 0}.time-main>.conn-banner{width:100%;margin:0}.time-main{width:100%;max-width:var(--content-max-time);padding:var(--space-4) var(--gutter) calc(64px + env(safe-area-inset-bottom) + var(--space-7));gap:var(--space-4);flex-direction:column;flex:1;margin:0 auto;display:flex}.time-main h1{font-size:var(--text-lg);font-weight:600}.tabbar{z-index:var(--z-sticky);padding-bottom:env(safe-area-inset-bottom);background:var(--surface);box-shadow:0 -1px 0 var(--border);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{min-height:64px;color:var(--text-muted);font-size:var(--text-sm);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-weight:600;text-decoration:none;display:flex;position:relative}.tabbar a[aria-current=page]{color:var(--text)}.tabbar a[aria-current=page]:before{content:"";background:var(--link);border-radius:0 0 3px 3px;height:3px;position:absolute;top:0;left:20%;right:20%}.tabbar svg{width:24px;height:24px}.tabbar--maker,.tabbar--maker a,.tabbar--maker a[aria-current=page]{color:#fff;background:#000}.tabbar--maker a:not([aria-current=page]){color:#fffc}.tabbar--maker a[aria-current=page]:before{background:#fff}.tabbar--maker a:focus-visible{outline-color:#fff}.badge{border-radius:var(--radius-pill);background:var(--warn-tint);min-width:22px;height:22px;color:var(--warn);text-align:center;padding:0 6px;font-size:12px;font-weight:800;line-height:22px;position:absolute;top:6px;left:calc(50% + 8px)}@media (width>=900px){.tabbar{max-width:var(--content-max-time);width:100%;box-shadow:none;background:var(--bg);order:-1;margin:0 auto;position:sticky;top:56px}.time-header{order:-2}.day__head{top:120px}.time-main{padding-bottom:var(--space-7)}.toast-region{top:calc(56px + 64px + var(--space-2))}}.state-card{gap:var(--space-1);padding:var(--space-4) var(--space-4) var(--space-4) var(--space-5);border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--card-border);box-shadow:var(--shadow-1);border-left:6px solid var(--border);transition:background-color var(--dur-base) var(--ease-out);flex-direction:column;display:flex}.state-card__top{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:var(--tap-min);display:flex}.state-card__state{align-items:center;gap:var(--space-2);display:inline-flex}.state-card__state svg{width:20px;height:20px}.state-card__item{font-size:var(--text-xl);line-height:var(--lh-xl);font-weight:700}.state-card__elapsed{font-size:var(--text-display);line-height:var(--lh-display);margin-top:var(--space-2);font-weight:800}.state-card--out{border-left-color:var(--border-strong)}.state-card--out .state-card__state{color:var(--text-muted)}.state-card--run{background:var(--run-tint);border-left-color:var(--run-solid)}.state-card--run .state-card__state{color:var(--run)}.state-card--lunch{background:var(--lunch-tint);border-left-color:var(--lunch)}.state-card--lunch .state-card__state{color:var(--lunch)}.state-card--warn{background:var(--warn-tint);border-left-color:var(--warn)}.state-card--warn .state-card__state{color:var(--warn)}.dot{background:var(--run-solid);border-radius:50%;width:12px;height:12px;animation:2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.dot{animation:none}}.loc-chip{align-items:center;gap:var(--space-1);min-height:var(--tap-min);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface);font-size:var(--text-md);cursor:pointer;font-weight:600;display:inline-flex}.loc-chip svg{width:18px;height:18px}.now-actions{gap:var(--space-3);flex-direction:column;display:flex}.units-card{gap:var(--space-2);flex-direction:column;display:flex}.units-card__head{align-items:center;gap:var(--space-2);display:flex}.units-card__head svg{width:20px;height:20px}.units-row{align-items:center;gap:var(--space-3);width:100%;min-height:56px;padding:var(--space-2) 0;border:0;border-bottom:1px solid var(--border);text-align:left;cursor:pointer;background:0 0;display:flex}.units-row__name{flex:1;min-width:0}.units-row__amounts{flex-direction:column;align-items:flex-end;display:flex}.units-row__pay,.row__pay{color:var(--text-muted);font-size:var(--text-sm);white-space:nowrap}.units-row__count{font-size:var(--text-xl);white-space:nowrap;font-weight:700}.units-row__note{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.totals{gap:var(--space-3);display:grid}.totals__value{font-size:var(--text-lg);line-height:var(--lh-lg);font-weight:700}.issue-link{align-items:center;gap:var(--space-3);min-height:var(--tap-row);padding:0 var(--space-4);border-radius:var(--radius-lg);background:var(--warn-tint);color:var(--warn);font-weight:600;text-decoration:none;display:flex}.issue-link span{flex:1}.issue-link svg{width:22px;height:22px}.picker-section{gap:var(--space-2);flex-direction:column;display:flex}.picker-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);margin:0;padding:0;list-style:none}.picker-list li+li{border-top:1px solid var(--border)}.picker-row{align-items:center;gap:var(--space-3);width:100%;min-height:var(--tap-row);padding:var(--space-2) var(--space-4);text-align:left;font-size:var(--text-lg);cursor:pointer;background:0 0;border:0;display:flex}.picker-row:disabled{color:var(--text-muted);cursor:default}.picker-row__name{overflow-wrap:anywhere;flex:1;min-width:0}.stepper{gap:var(--space-3);grid-template-columns:64px 1fr 64px;display:grid}.stepper .btn{min-height:64px;font-size:var(--text-2xl)}.stepper input{text-align:center;min-height:64px;font-size:var(--text-2xl);font-variant-numeric:tabular-nums;font-weight:800}.item-field{align-items:center;gap:var(--space-3);width:100%;min-height:56px;padding:var(--space-2) var(--space-4);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);text-align:left;font-size:var(--text-lg);cursor:pointer;display:flex}.item-field span:first-child{overflow-wrap:anywhere;flex:1}.info-line{gap:var(--space-2);color:var(--text-muted);font-size:var(--text-md);line-height:var(--lh-md);display:flex}.info-line svg{flex:none;width:18px;height:18px;margin-top:3px}.week-nav{align-items:center;gap:var(--space-2);grid-template-columns:48px 1fr 48px;display:grid}.week-nav__title{flex-direction:column;align-items:center;display:flex}.week-nav__title strong{font-size:var(--text-lg)}.day{gap:var(--space-2);flex-direction:column;display:flex}.day__head{justify-content:space-between;gap:var(--space-2);padding:var(--space-2) 0;background:var(--bg);z-index:1;display:flex;position:sticky;top:56px}.day__head--long{color:var(--warn)}.rows{background:var(--surface);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);overflow:hidden}.row{width:100%;min-height:var(--tap-row);padding:var(--space-3) var(--space-4);text-align:left;cursor:pointer;background:0 0;border:0;border-left:4px solid #0000;flex-direction:column;gap:2px;display:flex}.row+.row{border-top:1px solid var(--border)}.row--issue{border-left-color:var(--warn)}.row__line{justify-content:space-between;gap:var(--space-3);align-items:baseline;display:flex}.row__line>:last-child:not(:first-child){white-space:nowrap}.row__main{font-weight:600}.row__sub{color:var(--text-muted);font-size:var(--text-md);line-height:var(--lh-md)}.row__issue{gap:var(--space-1);color:var(--warn);font-size:var(--text-md);align-items:center;font-weight:600;display:flex}.row__issue svg,.row__main svg{vertical-align:-3px;width:18px;height:18px}.summary{gap:var(--space-3);flex-direction:column;display:flex}.summary__line{justify-content:space-between;gap:var(--space-3);align-items:baseline;display:flex}.summary__line--total{padding-top:var(--space-2);border-top:1px solid var(--border);font-weight:700}.summary__line--total+.summary__line--total{border-top:0;padding-top:0}.summary__total{font-size:var(--text-2xl);line-height:var(--lh-2xl);font-weight:800}details summary{cursor:pointer;color:var(--link);min-height:var(--tap-min);align-items:center;display:flex}.radio-list{background:var(--surface);border-radius:var(--radius-md);border:0;border:1px solid var(--border);margin:0;padding:0}.radio-list label{align-items:center;gap:var(--space-3);min-height:var(--tap-row);padding:0 var(--space-4);cursor:pointer;display:flex}.radio-list label+label{border-top:1px solid var(--border)}.radio-list input{width:22px;height:22px;accent-color:var(--ink)}.signin{gap:var(--space-5);max-width:420px;min-height:100dvh;padding:max(var(--space-4), env(safe-area-inset-top)) var(--gutter) var(--space-6);flex-direction:column;margin:0 auto;display:flex}.signin__lang{align-self:flex-end;width:140px}.brand{align-items:center;gap:var(--space-3);display:flex}.brand__mark{border-radius:var(--radius-md);background:var(--primary);border:2px solid var(--primary-edge);width:44px;height:44px}.brand__text{flex-direction:column;line-height:1.15;display:flex}.brand__text strong{font-size:var(--text-xl)}.code-input{text-align:center;font-size:var(--text-xl);letter-spacing:.25em;font-variant-numeric:tabular-nums}.week-nav__pick{min-height:var(--tap-min);padding:0 var(--space-2);border-radius:var(--radius-md);color:inherit;font:inherit;font-weight:inherit;cursor:pointer;background:0 0;border:0}.week-nav__pick:hover{background:var(--hover)}.btn--hold{touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.note-input{resize:vertical;min-height:64px}.note-text{white-space:pre-wrap;overflow-wrap:anywhere}:root{--sidebar-w:232px;--topbar-h:56px;--drawer-w:440px}.admin-app{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);min-height:100dvh;display:grid}.admin-side{align-self:start;gap:var(--space-4);height:100dvh;padding:var(--space-4) var(--space-3);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;display:flex;position:sticky;top:0;overflow-y:auto}.admin-brand{padding:0 var(--space-2);line-height:var(--lh-md);flex-direction:column;display:flex}.admin-brand__name{font-size:var(--text-lg);font-weight:800}.admin-brand__sub{font-size:var(--text-sm);color:var(--text-muted)}.admin-nav{gap:var(--space-1);flex-direction:column;flex:1;display:flex}.admin-nav__section{margin-top:var(--space-4);padding:0 var(--space-2);color:var(--text-muted)}.admin-nav__rule{width:100%;margin:var(--space-3) 0;border:0;border-top:1px solid var(--border)}.admin-nav__link{align-items:center;gap:var(--space-3);min-height:40px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-md);border-left:4px solid #0000;font-weight:600;text-decoration:none;display:flex}.admin-nav__link:hover{background:var(--hover)}.admin-nav__link[aria-current=page]{background:var(--surface-2);border-left-color:var(--primary)}.admin-nav__live{font-size:var(--text-xs);color:var(--run);font-weight:600;display:block}.admin-nav__dot{border-radius:var(--radius-pill);background:var(--run-solid);width:8px;height:8px;display:inline-block}.admin-side__zone{padding:0 var(--space-2);font-size:var(--text-xs);line-height:var(--lh-xs)}.admin-col{flex-direction:column;min-width:0;display:flex}.admin-topbar{z-index:var(--z-sticky);align-items:center;gap:var(--space-3);min-height:var(--topbar-h);padding:0 var(--space-5);background:var(--surface);border-bottom:1px solid var(--border);display:flex;position:sticky;top:0}.admin-topbar h1{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-xl);line-height:var(--lh-xl);flex:1;font-weight:700;overflow:hidden}.admin-topbar__menu{display:none}.admin-main{gap:var(--space-4);width:100%;max-width:1200px;padding:var(--space-5);flex-direction:column;flex:1;display:flex}.user-menu{position:relative}.user-menu__name{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.user-menu__panel{right:0;top:calc(100% + var(--space-2));z-index:var(--z-sticky);gap:var(--space-4);border-color:var(--border);width:280px;box-shadow:var(--shadow-3);flex-direction:column;display:flex;position:absolute}.user-menu__who{font-size:var(--text-sm);line-height:var(--lh-sm);overflow-wrap:anywhere;flex-direction:column;display:flex}body:has(.admin-app) .toast-region{left:calc(var(--sidebar-w) + var(--space-5));top:calc(var(--topbar-h) + var(--space-2));width:min(480px, calc(100% - 2 * var(--gutter)));transform:none}@media (width<=899px){body:has(.admin-app) .toast-region{left:var(--gutter)}}.kbd-list{gap:var(--space-3);flex-direction:column;margin:0;display:flex}.kbd-list>div{align-items:center;gap:var(--space-4);display:flex}.kbd-list dt{min-width:48px}.kbd-list dd{margin:0}kbd{min-width:28px;padding:2px var(--space-2);text-align:center;font-family:var(--font-sans);font-size:var(--text-sm);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-weight:700;display:inline-block}.admin-scrim{display:none}@media (width<=899px){.admin-app{grid-template-columns:minmax(0,1fr)}.admin-side{z-index:calc(var(--z-sticky) + 2);width:min(var(--sidebar-w), 85vw);visibility:hidden;transition:transform var(--dur-slow) var(--ease-out), visibility 0s var(--dur-slow);position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.admin-side.is-open{visibility:visible;transition:transform var(--dur-slow) var(--ease-out);box-shadow:var(--shadow-3);transform:none}.admin-scrim{z-index:calc(var(--z-sticky) + 1);background:var(--scrim);display:block;position:fixed;inset:0}.admin-topbar{padding:0 var(--gutter)}.admin-topbar__menu{display:inline-flex}.admin-main{padding:var(--space-4) var(--gutter)}.user-menu__name{display:none}}.admin-toolbar{align-items:center;gap:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.admin-toolbar .btn{white-space:nowrap}.admin-toolbar__note{font-size:var(--text-sm);line-height:var(--lh-sm)}.admin-toolbar__count{font-size:var(--text-sm);margin-left:auto}.admin-weeknav{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-weeknav__range{text-align:center;min-width:170px;font-size:var(--text-md)}.admin-search{align-items:center;display:flex;position:relative}.admin-search svg{left:var(--space-3);color:var(--text-muted);pointer-events:none;position:absolute}.admin-app .admin-search .input{width:240px;padding-left:calc(var(--space-3) + 26px)}.admin-select{-webkit-hyphens:none;hyphens:none;white-space:nowrap;align-items:center;gap:var(--space-2);font-size:var(--text-sm);display:flex}.admin-check{align-items:center;gap:var(--space-2);min-height:var(--tap-min);font-size:var(--text-sm);display:flex}.admin-check input{width:18px;height:18px}.admin-check--inline{align-self:flex-start;width:fit-content;display:inline-flex}.table-card{background:var(--surface);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);position:relative;overflow-x:auto}.table-card--bare{box-shadow:none;background:0 0;border:0;border-radius:0}.table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--text-sm);line-height:var(--lh-sm)}.table th,.table td{height:40px;padding:var(--space-1) var(--space-3);text-align:left;white-space:nowrap;border-bottom:1px solid var(--border);font-weight:400}.table td.table__wrap{white-space:normal;min-width:14rem}.table thead th{background:var(--surface-2);font-weight:700;font-size:var(--text-xs)}.table tbody th{font-weight:600}.table .num-col{text-align:right;font-variant-numeric:tabular-nums}.table .sticky-col{background:var(--surface);position:sticky;left:0}.table thead .sticky-col{background:var(--surface-2)}.table tfoot th,.table tfoot td{background:var(--surface-2);border-bottom:0;font-weight:700}.table tfoot .sticky-col{background:var(--surface-2)}.table__row--link{cursor:pointer}.table__row--link:hover td,.table__row--link:hover th{background:var(--surface-2)}.table .empty{padding:var(--space-6) 0}.sort-btn{align-items:center;gap:var(--space-1);min-height:36px;font-weight:700;font-size:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:inline-flex}.table .num-col .sort-btn{flex-direction:row-reverse}.issue-btn{align-items:center;gap:var(--space-1);min-height:32px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--warn-tint);color:var(--warn);cursor:pointer;border:0;font-weight:700;display:inline-flex}.issue-checked{margin-left:var(--space-2);font-size:var(--text-xs)}.ts-topbar{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.ts-people{gap:var(--space-1);display:inline-flex}.ts-back{align-items:center;gap:var(--space-1);font-size:var(--text-sm);align-self:flex-start;display:inline-flex}.ts-name{font-size:var(--text-2xl);line-height:var(--lh-2xl);font-weight:700}.ts-meta{font-size:var(--text-sm);line-height:var(--lh-sm)}.ts-section{font-size:var(--text-md);line-height:var(--lh-md);font-weight:700}.ts-flags__head{align-items:center;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.ts-flags__head .ts-section{flex:1}.ts-salary{gap:var(--space-2);flex-direction:column;display:flex}.ts-second{font-size:var(--text-xs);line-height:var(--lh-xs);display:block}.ts-units{color:var(--text-muted)}.ts-units svg{vertical-align:text-bottom}.ts-note{font-size:var(--text-xs)}.ts-table td,.ts-table th{vertical-align:top;height:40px}.ts-subtotal th,.ts-subtotal td{font-size:var(--text-xs);border-bottom:1px solid var(--border-strong)}.ts-flag--open{color:var(--warn);vertical-align:text-bottom}.ts-flag--checked{color:var(--run);vertical-align:text-bottom}.row--hl td,.row--hl th{background:var(--warn-tint)!important}.ts-summary th{font-weight:400}.ts-summary__sub th,.ts-summary__sub td,.ts-summary__total th,.ts-summary__total td{font-weight:700}.ts-summary__total td,.ts-summary__total th{font-size:var(--text-md);border-bottom:0}.flag-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.flag{align-items:flex-start;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border);font-size:var(--text-sm);line-height:var(--lh-sm);display:flex}.flag:last-child{border-bottom:0}.flag__icon{color:var(--warn);flex:none;margin-top:1px}.flag--checked .flag__icon{color:var(--run)}.flag--checked .flag__text{color:var(--text-muted)}.flag__text{flex-direction:column;flex:1;display:flex}.flag__link{text-align:left;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.flag__link:hover{text-decoration:underline}.flag__sub{font-size:var(--text-xs);line-height:var(--lh-xs)}.flag__note{font-size:var(--text-xs);align-self:center}.btn--sm{min-height:36px;padding:var(--space-1) var(--space-3);font-size:var(--text-sm);border-radius:var(--radius-sm)}.flags-dialog{max-width:480px}.flags-dialog__body{margin-top:var(--space-3)}.dialog{background:var(--surface);color:var(--text);box-shadow:var(--shadow-3);overscroll-behavior:contain;border:0;padding:0}.dialog[open]{flex-direction:column;display:flex}.dialog--modal{width:min(400px, calc(100% - 2 * var(--gutter)));max-height:calc(100dvh - 2 * var(--gutter));border-radius:var(--radius-lg)}.dialog--drawer{width:min(var(--drawer-w), 100%);border-radius:0;height:100dvh;max-height:100dvh;margin:0 0 0 auto}.dialog--drawer[open]{animation:drawer-in var(--dur-slow) var(--ease-out)}@keyframes drawer-in{0%{opacity:0;transform:translate(32px)}}.dialog__header{align-items:center;gap:var(--space-2);min-height:56px;padding:var(--space-1) var(--space-2) var(--space-1) var(--space-4);border-bottom:1px solid var(--border);display:flex}.dialog__body{gap:var(--space-4);padding:var(--space-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.dialog__footer{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);background:var(--surface);display:flex}.dialog__footer .spacer{flex:1}.money-input{position:relative}.money-input span{left:var(--space-3);color:var(--text-muted);position:absolute;top:50%;transform:translateY(-50%)}.money-input .input{padding-left:calc(var(--space-3) + 14px)}.chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.form-row{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.ts-adj{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border);display:flex}.ts-adj__reason{overflow-wrap:anywhere;flex:1}.ts-total{font-size:var(--text-xl);justify-content:space-between;font-weight:700;display:flex}.admin-app .input,.dialog .input{min-height:40px;padding:var(--space-2) var(--space-3)}.admin-app .money-input .input,.dialog .money-input .input{padding-left:calc(var(--space-3) + 14px)}.admin-toolbar__actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;margin-left:auto;display:flex}.cell-btn{color:var(--link);text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.cell-btn:hover{text-decoration:underline}.drawer-form{gap:var(--space-4);flex-direction:column;display:flex}.pill-ink{padding:0 var(--space-1);border:1px solid var(--ink);border-radius:var(--radius-pill)}.emp-form{gap:var(--space-4);flex-direction:column;max-width:720px;display:flex}.emp-form fieldset:not(.segmented){gap:var(--space-4);padding:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;margin:0;display:flex}.emp-form legend{padding:0 var(--space-2);font-weight:700}.copy-rates{padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md)}.copy-rates p{margin:0}.copy-rates__list{gap:var(--space-2);margin:var(--space-2) 0 0;flex-direction:column;padding:0;list-style:none;display:flex}.copy-rates__list li{column-gap:var(--space-3);grid-template-columns:1fr auto;display:grid}.copy-rates__list .item-sub{grid-column:1/-1}.copy-rates__item{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.emp-form__actions{justify-content:flex-end;gap:var(--space-2);display:flex}.choice{align-items:flex-start;gap:var(--space-3);min-height:var(--tap-min);padding:var(--space-2) 0;display:flex}.choice input{width:20px;height:20px;margin-top:2px}.choice small{color:var(--text-muted);font-size:var(--text-sm);line-height:var(--lh-sm);display:block}.dialog--wide{width:min(560px, calc(100% - 2 * var(--gutter)))}.reassign-list{border-collapse:collapse;width:100%}.reassign-list td{padding:var(--space-2) 0;vertical-align:top}.reassign-list td:first-child{padding-right:var(--space-3);min-width:140px}.reassign-row--new td{background:var(--warn-tint)}.reassign-setall{align-items:flex-end;gap:var(--space-2);display:flex}.reassign-setall .field{flex:1}.switch{align-items:center;gap:var(--space-2);cursor:pointer;background:0 0;border:0;min-height:36px;padding:0;font-weight:600;display:inline-flex}.switch:disabled{opacity:.45;cursor:not-allowed}.switch__track{border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface-2);align-items:center;width:40px;height:22px;padding:2px;display:inline-flex}.switch--on .switch__track{background:var(--ink);border-color:var(--ink)}.switch__thumb{border-radius:var(--radius-pill);background:var(--text-muted);width:16px;height:16px;transition:transform var(--dur-fast) var(--ease-out)}.switch--on .switch__thumb{background:var(--on-ink);transform:translate(18px)}.group-head{align-items:center;gap:var(--space-3);margin-top:var(--space-3);display:flex}.group-head h2{font-size:var(--text-md);letter-spacing:.04em;text-transform:uppercase;flex:1}.item-sub{font-size:var(--text-xs);color:var(--text-muted);display:block}.item-warn{color:var(--warn)}.item-layout{gap:var(--space-4);max-width:720px;display:grid}.rate-preview{gap:var(--space-1);font-size:var(--text-sm);flex-direction:column;display:flex}.stat-tiles{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.stat-tile{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.stat-tile__label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.stat-tile__value{overflow-wrap:anywhere;font-size:var(--text-2xl);line-height:var(--lh-2xl);font-weight:700}.link-like{color:var(--link);cursor:pointer;text-decoration:underline}details>summary{cursor:pointer}.rates-matrix th,.rates-matrix td{vertical-align:top}.rates-matrix thead th{white-space:normal}.rates-matrix thead th:nth-child(n+3){min-width:150px}.rates-matrix thead th:first-child{width:1%}.rate-cell{min-height:36px;color:var(--text);flex-direction:column;font-weight:400;display:flex}.rate-cell__none{align-items:center;min-height:36px;display:inline-flex}.assign-people{border:0;margin:0;padding:0}.assign-list{border:1px solid var(--border);border-radius:var(--radius-sm);max-height:220px;margin:0;padding:0;list-style:none;overflow-y:auto}.assign-list .choice{padding:var(--space-1) var(--space-3)}.row--flash td,.row--flash th{animation:1.2s ease-out row-flash}@keyframes row-flash{0%{background-color:var(--warn-tint)}to{background-color:var(--surface)}}@media (prefers-reduced-motion:reduce){.row--flash td,.row--flash th{background-color:var(--warn-tint);animation:none}}.table-card{max-height:calc(100dvh - var(--topbar-h) - 2 * var(--space-5));overflow:auto}.table thead th{z-index:2;position:sticky;top:0}.table thead .sticky-col{z-index:3;top:0;left:0}.table thead .table__groups>*{z-index:2;background:var(--surface-2);border-bottom:0;height:28px;position:sticky;top:0}.table thead .table__group{text-align:center;border-bottom:2px solid var(--border-strong)}.table thead .table__groups+tr th{top:28px}.table tfoot{z-index:2;position:sticky;bottom:0}.table tfoot .sticky-col{z-index:3;left:0}@media (width<=899px){.dialog--wide{border-radius:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0}}.user-menu__row{justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--text-sm);display:flex}.rate-row__actions{gap:var(--space-1);margin-top:var(--space-1);margin-left:calc(-1 * var(--space-3));display:flex}.rate-row__lock{margin-left:var(--space-2);vertical-align:middle}.rte{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface)}.rte:focus-within{outline:3px solid var(--focus);outline-offset:2px}.rte__bar{align-items:center;gap:var(--space-1);padding:var(--space-1);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.rte__tool{min-width:var(--tap-min);min-height:var(--tap-min);border-radius:var(--radius-sm);color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;font-weight:700}.rte__tool:hover{background:var(--surface-2)}.rte__tool:focus-visible{outline:3px solid var(--focus)}.rte__sep{background:var(--border);align-self:stretch;width:1px}.rte__area{min-height:12rem;padding:var(--space-3);outline:none;line-height:1.5}.rte__area p,.rte__preview p{margin:0 0 var(--space-3)}.rte__area h2,.rte__preview h2{font-size:var(--text-lg);margin:0 0 var(--space-2)}.rte__area h3,.rte__preview h3{font-size:var(--text-md);margin:0 0 var(--space-2)}.rte__area a,.rte__preview a{text-decoration:underline}.rte__preview{padding:var(--space-3);border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--surface);line-height:1.5}.rte__subject{font-weight:700}
