:root{--aw-blue: #2E9BFF;--aw-blue-d: #1E7FE0;--aw-blue-btn: #1A76D2;--aw-blue-text: #1668BC;--aw-ocean: #0A3D54;--aw-sky: #5FC2FF;--aw-coral: #FF6B4A;--aw-coral-d: #E85535;--aw-coral-l: #FF7856;--aw-teal: #13778F;--aw-sand: #F4EFE6;--aw-mist: #EAF2F8;--aw-ink: #102A33;--aw-line: #E1EAF1;--aw-line-strong: #B7CAD8;--aw-muted: #51666F;--aw-page: #F6FAFD;--aw-font-head: "Sora", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;--aw-font-body: "Inter", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;--aw-font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--aw-radius: 16px;--aw-radius-lg: 18px;--aw-shadow: 0 8px 30px rgba(16,42,51,.06);--aw-shadow-blue: 0 16px 44px rgba(46,155,255,.15);--ui-font: var(--aw-font-body);--ui-font-head: var(--aw-font-head);--ui-font-mono: var(--aw-font-mono);--ui-text-xs: .75rem;--ui-text-sm: .875rem;--ui-text-base: 1rem;--ui-text-lg: 1.125rem;--ui-text-xl: 1.375rem;--ui-text-2xl: 1.75rem;--ui-leading: 1.5;--ui-leading-tight: 1.25;--ui-weight-normal: 400;--ui-weight-bold: 600;--ui-space-1: .25rem;--ui-space-2: .5rem;--ui-space-3: .75rem;--ui-space-4: 1rem;--ui-space-6: 1.5rem;--ui-space-8: 2rem;--ui-radius-sm: 6px;--ui-radius: 9px;--ui-radius-panel: var(--aw-radius);--ui-bg: #F6FAFD;--ui-surface: #FFFFFF;--ui-surface-2: #EAF2F8;--ui-border: #E1EAF1;--ui-border-strong: #B7CAD8;--ui-text: #102A33;--ui-text-2: #51666F;--ui-muted: #51666F;--ui-placeholder: #51666F;--ui-accent: #1668BC;--ui-accent-hover: #0A3D54;--ui-accent-contrast: #FFFFFF;--ui-accent-soft: #EAF2F8;--ui-accent-soft-border: #B7CAD8;--ui-cta: #FF6B4A;--ui-cta-hover: #FF7856;--ui-cta-contrast: #102A33;--ui-heading: #0A3D54;--ui-display: #1E7FE0;--ui-danger: #B23124;--ui-danger-soft: #FBE7E4;--ui-danger-soft-border: #F3C8C2;--ui-warn: #8A5A10;--ui-warn-soft: #FAF0DC;--ui-warn-soft-border: #EBD7A8;--ui-good: #12705A;--ui-good-soft: #E2F1EC;--ui-good-soft-border: #A9D6C8;--ui-shadow: 0 8px 30px rgba(16,42,51,.06);color-scheme:light dark}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--ui-bg: #05161F;--ui-surface: #0A2836;--ui-surface-2: #0F3A50;--ui-border: #14384A;--ui-border-strong: #1D4C63;--ui-text: #E3EEF4;--ui-text-2: #90AAB8;--ui-muted: #90AAB8;--ui-placeholder: #90AAB8;--ui-accent: #5FC2FF;--ui-accent-hover: #8AD3FF;--ui-accent-contrast: #0A3D54;--ui-accent-soft: #0C4455;--ui-accent-soft-border: #13778F;--ui-cta: #FF6B4A;--ui-cta-hover: #FF7856;--ui-cta-contrast: #102A33;--ui-heading: #E3EEF4;--ui-display: #5FC2FF;--ui-danger: #EF8A7C;--ui-danger-soft: #331815;--ui-danger-soft-border: #6B322A;--ui-warn: #D9A44F;--ui-warn-soft: #2E2413;--ui-warn-soft-border: #5E4A1F;--ui-good: #6CC7A8;--ui-good-soft: #0D2F27;--ui-good-soft-border: #1D5C4B;--ui-shadow: 0 8px 30px rgba(0,0,0,.34);color-scheme:dark}}:root[data-theme=dark]{--ui-bg: #05161F;--ui-surface: #0A2836;--ui-surface-2: #0F3A50;--ui-border: #14384A;--ui-border-strong: #1D4C63;--ui-text: #E3EEF4;--ui-text-2: #90AAB8;--ui-muted: #90AAB8;--ui-placeholder: #90AAB8;--ui-accent: #5FC2FF;--ui-accent-hover: #8AD3FF;--ui-accent-contrast: #0A3D54;--ui-accent-soft: #0C4455;--ui-accent-soft-border: #13778F;--ui-cta: #FF6B4A;--ui-cta-hover: #FF7856;--ui-cta-contrast: #102A33;--ui-heading: #E3EEF4;--ui-display: #5FC2FF;--ui-danger: #EF8A7C;--ui-danger-soft: #331815;--ui-danger-soft-border: #6B322A;--ui-warn: #D9A44F;--ui-warn-soft: #2E2413;--ui-warn-soft-border: #5E4A1F;--ui-good: #6CC7A8;--ui-good-soft: #0D2F27;--ui-good-soft-border: #1D5C4B;--ui-shadow: 0 8px 30px rgba(0,0,0,.34);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--ui-bg);color:var(--ui-text);font-family:var(--ui-font);font-size:var(--ui-text-base);line-height:var(--ui-leading)}h1,h2,h3{color:var(--ui-heading);font-family:var(--ui-font-head);font-weight:var(--ui-weight-bold);letter-spacing:-.015em;line-height:var(--ui-leading-tight);margin:0 0 var(--ui-space-3)}h1{font-size:var(--ui-text-2xl)}h2{font-size:var(--ui-text-xl)}h3{font-size:var(--ui-text-lg)}p{margin:0 0 var(--ui-space-4)}small,.ui-caption{font-size:var(--ui-text-sm);color:var(--ui-muted)}code,pre,.ui-mono{font-family:var(--ui-font-mono);font-size:.9em}a{color:var(--ui-accent);text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--ui-accent-hover)}:focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px;border-radius:var(--ui-radius-sm)}.shell{--shell-side: 13.5rem;min-height:100dvh;display:grid;grid-template-columns:var(--shell-side) 1fr}.shell--rail{--shell-side: 3.25rem}.shell-side{background:var(--ui-surface);border-right:1px solid var(--ui-border);display:flex;flex-direction:column;overflow:hidden;position:sticky;top:0;height:100dvh}.shell-brand{display:flex;align-items:center;gap:var(--ui-space-2);height:3rem;padding:0 var(--ui-space-3);flex:none;text-decoration:none;color:var(--ui-text)}.shell-glyph{width:1.375rem;height:1.375rem;border-radius:5px;flex:none;display:grid;place-items:center;font-size:var(--ui-text-xs);font-weight:var(--ui-weight-bold);letter-spacing:-.03em;background:linear-gradient(135deg,var(--ta-gradient-start, #5836F7),var(--ta-gradient-end, #7019DC));color:#fff}.shell-wordmark{font-weight:var(--ui-weight-bold);letter-spacing:-.01em}.shell-scope{font:inherit;text-align:left;margin:0 var(--ui-space-2) var(--ui-space-3);display:flex;align-items:center;gap:var(--ui-space-2);padding:var(--ui-space-2);padding-left:var(--ui-space-3);border:0;border-radius:var(--ui-radius);background:var(--ui-bg);color:var(--ui-text);cursor:pointer;flex:none}.shell-scope:hover{background:var(--ui-surface-2)}.shell-scope-label{display:block;font-size:.625rem;font-weight:var(--ui-weight-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--ui-muted)}.shell-scope-value{display:block;font-size:var(--ui-text-sm);font-weight:var(--ui-weight-bold)}.shell-scope svg{margin-left:auto;color:var(--ui-muted);flex:none}.shell-nav{flex:1;overflow-y:auto;padding:0 var(--ui-space-2) var(--ui-space-3)}.shell-navgroup{margin-bottom:var(--ui-space-4)}.shell-navgroup-label{font-size:.625rem;font-weight:var(--ui-weight-bold);letter-spacing:.1em;text-transform:uppercase;color:var(--ui-muted);padding:0 var(--ui-space-2) var(--ui-space-2)}.shell-navitem-wrap{position:relative}.shell-navitem{display:flex;align-items:center;gap:var(--ui-space-2);padding:var(--ui-space-1) var(--ui-space-2);padding-left:.625rem;border-radius:var(--ui-radius-sm);color:var(--ui-text-2);font-size:var(--ui-text-sm);text-decoration:none;position:relative}.shell-navitem:hover{background:var(--ui-surface-2);color:var(--ui-text)}.shell-navitem[aria-current=page]{color:var(--ui-text);font-weight:var(--ui-weight-bold)}.shell-navitem[aria-current=page]:before{content:"";position:absolute;left:0;top:.4375rem;bottom:.4375rem;width:2px;border-radius:1px;background:var(--ui-accent)}.shell-navitem svg{width:.9375rem;flex:none;color:var(--ui-muted)}.shell-navitem[aria-current=page] svg{color:var(--ui-accent)}.shell-count{margin-left:auto;font-family:var(--ui-font-mono);font-size:.625rem;font-variant-numeric:tabular-nums;color:var(--ui-muted)}.shell-navitem[aria-current=page] .shell-count{color:var(--ui-text-2)}.shell-subnav{margin:2px 0 var(--ui-space-2) 1.1875rem;padding-left:var(--ui-space-3);border-left:1px solid var(--ui-border);display:grid;gap:1px}.shell-subitem{display:flex;align-items:center;padding:2px var(--ui-space-2);border-radius:var(--ui-radius-sm);font-size:var(--ui-text-xs);color:var(--ui-muted);text-decoration:none}.shell-subitem:hover{background:var(--ui-surface-2);color:var(--ui-text-2)}.shell-subitem[aria-current=page]{color:var(--ui-accent);font-weight:var(--ui-weight-bold)}.shell-user{border-top:1px solid var(--ui-border);padding:var(--ui-space-2);flex:none;display:flex;align-items:center;gap:var(--ui-space-2)}.shell-avatar{width:1.5rem;height:1.5rem;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--ui-accent-soft);border:1px solid var(--ui-accent-soft-border);color:var(--ui-accent);font-size:.625rem;font-weight:var(--ui-weight-bold)}.shell-user-name{font-size:var(--ui-text-xs);font-weight:var(--ui-weight-bold)}.shell-user-role{font-size:.625rem;color:var(--ui-muted)}.shell--rail .shell-wordmark,.shell--rail .shell-scope-label,.shell--rail .shell-scope-value,.shell--rail .shell-scope svg,.shell--rail .shell-navgroup-label,.shell--rail .shell-navitem-label,.shell--rail .shell-count,.shell--rail .shell-user-name,.shell--rail .shell-user-role{display:none}.shell--rail .shell-brand{justify-content:center;padding:0}.shell--rail .shell-scope{justify-content:center;padding:.375rem;margin:0 .375rem var(--ui-space-3)}.shell--rail .shell-nav{padding:0 .375rem var(--ui-space-3)}.shell--rail .shell-navitem{justify-content:center;padding:.4375rem 0}.shell--rail .shell-navitem svg{width:auto}.shell--rail .shell-user{justify-content:center}.shell--rail .shell-navgroup{margin-bottom:var(--ui-space-3)}.shell--rail .shell-subnav{position:absolute;left:100%;top:0;z-index:30;min-width:11rem;margin:0 0 0 var(--ui-space-1);padding:var(--ui-space-1);border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);box-shadow:var(--ui-shadow);display:none}.shell--rail .shell-navitem-wrap:hover .shell-subnav,.shell--rail .shell-navitem-wrap:focus-within .shell-subnav{display:grid}.shell--rail .shell-subitem{font-size:var(--ui-text-sm);padding:var(--ui-space-1) var(--ui-space-2)}.shell-main{display:flex;flex-direction:column;min-width:0}.shell-topbar{height:3rem;flex:none;display:flex;align-items:center;gap:var(--ui-space-3);padding:0 var(--ui-space-4);border-bottom:1px solid var(--ui-border);background:var(--ui-bg);position:sticky;top:0;z-index:20}.shell-crumbs{font-size:var(--ui-text-sm);color:var(--ui-muted);min-width:0}.shell-crumbs strong{color:var(--ui-text);font-weight:var(--ui-weight-bold)}.shell-topbar-actions{margin-left:auto;display:flex;align-items:center;gap:var(--ui-space-2)}.shell-menu{display:none;font:inherit;padding:var(--ui-space-1) var(--ui-space-2);border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius-sm);background:transparent;color:var(--ui-text);cursor:pointer;flex:none}.shell-scrim{display:none}.shell-rail-toggle{font-size:var(--ui-text-xs);padding:var(--ui-space-1) var(--ui-space-2);margin-left:auto;flex:none}.shell-main>main{padding:var(--ui-space-6) var(--ui-space-4);min-width:0}.shell-content{max-width:72rem;margin:0 auto;min-width:0}@media(max-width:47.999rem){.shell,.shell--rail{grid-template-columns:1fr}.shell-side{position:fixed;inset:0 auto 0 0;width:16.5rem;max-width:85vw;z-index:40;transform:translate(-100%);transition:transform .16s ease}.shell[data-drawer=open] .shell-side{transform:none}.shell--rail .shell-wordmark,.shell--rail .shell-scope-label,.shell--rail .shell-scope-value,.shell--rail .shell-scope svg,.shell--rail .shell-navgroup-label,.shell--rail .shell-navitem-label,.shell--rail .shell-count,.shell--rail .shell-user-name,.shell--rail .shell-user-role{display:revert}.shell--rail .shell-brand{justify-content:flex-start;padding:0 var(--ui-space-3)}.shell--rail .shell-scope{justify-content:flex-start;padding:var(--ui-space-2);padding-left:var(--ui-space-3);margin:0 var(--ui-space-2) var(--ui-space-3)}.shell--rail .shell-nav{padding:0 var(--ui-space-2) var(--ui-space-3)}.shell--rail .shell-navitem{justify-content:flex-start;padding:var(--ui-space-1) var(--ui-space-2);padding-left:.625rem}.shell--rail .shell-user{justify-content:flex-start}.shell--rail .shell-subnav{position:static;display:grid;min-width:0;margin:2px 0 var(--ui-space-2) 1.1875rem;padding:0 0 0 var(--ui-space-3);border:0;border-left:1px solid var(--ui-border);border-radius:0;background:none;box-shadow:none}.shell-menu{display:block}.shell-rail-toggle{display:none}.shell[data-drawer=open] .shell-scrim{display:block;position:fixed;inset:0;z-index:35;background:#00000080;border:0}.shell-main>main{padding:var(--ui-space-4) var(--ui-space-3)}}.ui-scroll-x{overflow-x:auto}.login-page{min-height:100dvh;display:grid;place-items:center;padding:var(--ui-space-4)}.login-card{width:100%;max-width:22rem;display:grid;gap:var(--ui-space-3)}.login-card>h1,.login-card>p{margin:0}.login-card form{display:grid;gap:var(--ui-space-2)}.login-card label{font-size:var(--ui-text-sm);font-weight:var(--ui-weight-bold);color:var(--ui-text-2)}.login-card .ui-input{width:100%}.login-card .ui-button{margin-top:var(--ui-space-2)}.ui-card{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius-panel);padding:var(--ui-space-4);box-shadow:var(--ui-shadow)}.ui-panel{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius-panel);box-shadow:var(--ui-shadow);overflow:hidden}.ui-button{font:inherit;font-weight:var(--ui-weight-bold);padding:var(--ui-space-2) var(--ui-space-4);border-radius:var(--ui-radius-sm);border:1px solid transparent;background:var(--ui-accent);color:var(--ui-accent-contrast);cursor:pointer}.ui-button:hover{background:var(--ui-accent-hover)}.ui-button--quiet{background:transparent;color:var(--ui-accent);border-color:var(--ui-border-strong)}.ui-button--quiet:hover{background:var(--ui-accent-soft)}.ui-button--cta{background:var(--ui-cta);color:var(--ui-cta-contrast)}.ui-button--cta:hover{background:var(--ui-cta-hover)}.ui-input{font:inherit;padding:var(--ui-space-2) var(--ui-space-3);border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius-sm);background:var(--ui-surface);color:var(--ui-text)}.ui-input::placeholder{color:var(--ui-placeholder)}.ui-status{font-size:var(--ui-text-sm);font-weight:var(--ui-weight-bold)}.ui-status:before{margin-right:var(--ui-space-1)}.ui-status--blocking{color:var(--ui-danger)}.ui-status--advisory{color:var(--ui-warn)}.ui-status--ok{color:var(--ui-good)}.ui-alert{display:flex;gap:var(--ui-space-2);align-items:flex-start;padding:var(--ui-space-3);border:1px solid;border-radius:var(--ui-radius);font-size:var(--ui-text-sm);font-weight:var(--ui-weight-normal);margin:0}.ui-alert:focus-visible{outline-offset:1px}.ui-alert:before{font-weight:var(--ui-weight-bold);line-height:var(--ui-leading)}.ui-alert--blocking{background:var(--ui-danger-soft);border-color:var(--ui-danger-soft-border);color:var(--ui-danger)}.ui-alert--advisory{background:var(--ui-warn-soft);border-color:var(--ui-warn-soft-border);color:var(--ui-warn)}.ui-alert--ok{background:var(--ui-good-soft);border-color:var(--ui-good-soft-border);color:var(--ui-good)}.ui-status--blocking:before,.ui-alert--blocking:before{content:"\2715"}.ui-status--advisory:before,.ui-alert--advisory:before{content:"\26a0"}.ui-status--ok:before,.ui-alert--ok:before{content:"\2713"}.week{display:flex;flex-direction:column;gap:var(--ui-space-4);max-width:60rem}.week-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ui-space-4);flex-wrap:wrap}.week-title{margin:0 0 var(--ui-space-1);font-size:var(--ui-text-xl)}.week-range{margin:0;font-family:var(--ui-font-mono);font-size:var(--ui-text-sm);color:var(--ui-text-2)}.week-who{color:var(--ui-muted)}.week-nav{display:flex;gap:var(--ui-space-2)}.week-nav .ui-button{font-size:var(--ui-text-sm);padding:var(--ui-space-2) var(--ui-space-3)}.week-grid{width:100%;border-collapse:collapse;min-width:32rem}.week-grid thead th:first-child{width:10rem}.week-grid thead th.week-num-col{width:6rem}.week-grid thead th{font-family:var(--ui-font-mono);font-size:.625rem;letter-spacing:.09em;text-transform:uppercase;font-weight:var(--ui-weight-normal);color:var(--ui-text-2);text-align:left;white-space:nowrap;padding:var(--ui-space-2) var(--ui-space-4);border-bottom:1px solid var(--ui-border-strong)}.week-grid td,.week-grid tbody th{padding:var(--ui-space-3) var(--ui-space-4);border-bottom:1px solid var(--ui-border);vertical-align:top;text-align:left;font-weight:var(--ui-weight-normal)}.week-grid tbody tr:last-child td,.week-grid tbody tr:last-child th{border-bottom:0}.week-grid .week-num-col{text-align:right}.week-grid .week-num{text-align:right;white-space:nowrap;font-family:var(--ui-font-mono);font-variant-numeric:tabular-nums}.week-nil{color:var(--ui-placeholder)}.week-day-name{font-weight:var(--ui-weight-bold)}.week-day-date{margin-left:var(--ui-space-2);font-family:var(--ui-font-mono);font-size:var(--ui-text-sm);color:var(--ui-text-2)}.week-today>:first-child{box-shadow:inset 2px 0 0 var(--ui-accent)}.week-lines{display:grid;gap:var(--ui-space-2)}.week-line{display:flex;align-items:baseline;gap:var(--ui-space-2);flex-wrap:wrap}.week-line-hours{font-family:var(--ui-font-mono);font-variant-numeric:tabular-nums;font-size:var(--ui-text-sm);color:var(--ui-text-2)}.week-note{min-width:0;overflow-wrap:anywhere}.week-note--none{color:var(--ui-placeholder)}.week-pill{display:inline-flex;align-items:center;gap:var(--ui-space-1);font-family:var(--ui-font-mono);font-size:.65rem;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;padding:2px var(--ui-space-2);border:1px solid transparent;border-radius:999px}.week-pill:before{content:"";flex:none;width:5px;height:5px;border-radius:50%;background:currentColor}.week-pill--wms{background:var(--ui-surface-2);color:var(--ui-text-2);border-color:var(--ui-border)}.week-pill--local{background:var(--ui-accent-soft);color:var(--ui-accent);border-color:var(--ui-accent-soft-border)}.week-pill--override{background:var(--ui-warn-soft);color:var(--ui-warn);border-color:var(--ui-warn-soft-border)}.week-grid tfoot td,.week-grid tfoot th{padding:var(--ui-space-3) var(--ui-space-4);border-top:1px solid var(--ui-border-strong);border-bottom:0;text-align:left}.week-foot-label{font-weight:var(--ui-weight-bold)}.week-foot-total{font-family:var(--ui-font-mono);font-variant-numeric:tabular-nums;font-size:var(--ui-text-lg);font-weight:var(--ui-weight-bold)}.entry-panel{padding:var(--ui-space-4)}.entry-form{display:grid;gap:var(--ui-space-3)}.entry-form .ui-alert{margin:0}.entry-form-grid{display:grid;gap:var(--ui-space-3);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));margin-bottom:var(--ui-space-3)}.entry-field{display:grid;gap:var(--ui-space-1);min-width:0}.entry-field>span{font-family:var(--ui-font-mono);font-size:.625rem;letter-spacing:.09em;text-transform:uppercase;color:var(--ui-text-2)}.entry-field--narrow{max-width:8rem}.entry-field--wide{grid-column:span 2}.entry-form-actions{display:flex;gap:var(--ui-space-2)}.week-edit{font:inherit;font-size:var(--ui-text-sm);padding:0;border:0;background:none;color:var(--ui-accent);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.week-edit:hover{color:var(--ui-accent-hover)}.page-loading,.page-error{padding:var(--ui-space-4);color:var(--ui-muted)}.page-error{color:var(--ui-danger)}@media(max-width:48rem){.week-head{align-items:flex-start}.entry-field--wide{grid-column:span 1}.week-nav{width:100%}.week-nav .ui-button{flex:1 1 auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
