@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.static{position:static}.absolute{position:absolute}.relative{position:relative}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.border{border-width:1px}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--bg:#0a0f1c;--bg-2:#0d1326;--surface:hsla(0,0%,100%,.04);--surface-hover:hsla(0,0%,100%,.07);--ink:#f0ebdc;--ink-muted:#8a93ad;--ink-subtle:#5a6178;--hairline:hsla(0,0%,100%,.08);--hairline-strong:hsla(0,0%,100%,.16);--accent:#22d3ee;--accent-hover:#67e8f9;--accent-soft:rgba(34,211,238,.16);--accent-on:#062a32;--hero:#f5e89c;--warn:#fbbf24;--warn-soft:rgba(251,191,36,.14);--danger:#fb7185;--danger-soft:rgba(251,113,133,.14);--ok:#4ade80;--ok-soft:rgba(74,222,128,.14);--pdfonly:#c4b5fd;--pdfonly-soft:rgba(196,181,253,.14);--shadow-sm:0 1px 2px rgba(0,0,0,.4);--shadow-md:0 2px 8px rgba(0,0,0,.35),0 1px 2px rgba(0,0,0,.25);--shadow-lg:0 12px 32px rgba(0,0,0,.5);--radius-sm:6px;--radius-md:10px;--radius-lg:14px}body,html{margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;color:var(--ink);font-size:15px;line-height:1.55;min-height:100vh;background:radial-gradient(1200px 600px at 12% -10%,rgba(34,211,238,.06),transparent 60%),radial-gradient(900px 500px at 95% 110%,hsla(51,82%,79%,.04),transparent 65%),linear-gradient(180deg,var(--bg) 0,var(--bg-2) 100%);background-attachment:fixed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.wrap{max-width:1200px;margin:0 auto;padding:56px 32px 72px}.h1{font-size:28px;margin:0 0 6px;letter-spacing:-.02em}.h1,.h2{font-weight:600;color:var(--ink)}.h2{font-size:18px;margin:0 0 14px;letter-spacing:-.01em}.h3{font-size:15px;font-weight:600;margin:0 0 6px;color:var(--ink);letter-spacing:-.005em}.sub{color:var(--ink-muted);font-size:14px;margin:0 0 36px}.card{border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:24px;margin-bottom:20px;box-shadow:var(--shadow-sm);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%)}.card,.dropzone{background:var(--surface)}.dropzone{border:1px dashed var(--hairline-strong);border-radius:var(--radius-lg);padding:40px 24px;text-align:center;transition:border-color .15s ease,background .15s ease;cursor:pointer}.dropzone.drag,.dropzone:hover{border-color:var(--accent);background:var(--accent-soft)}.dropzone strong{color:var(--ink);font-size:15px;font-weight:600}.dropzone p{margin:6px 0 0;color:var(--ink-muted);font-size:14px}.dropzone a{color:var(--accent);font-weight:500}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:32px}.kpi{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-md);padding:18px 20px;transition:border-color .15s ease}.kpi:hover{border-color:var(--hairline-strong)}.kpi .label{color:var(--ink-muted);font-size:11px;margin:0 0 8px;text-transform:uppercase;letter-spacing:.08em;font-weight:500}.kpi .val{font-size:28px;font-weight:600;margin:0;letter-spacing:-.025em;font-variant-numeric:tabular-nums;color:var(--hero)}.tabs{display:flex;gap:0;border-bottom:1px solid var(--hairline);margin:0 0 24px;flex-wrap:wrap}.tab{padding:11px 16px;background:none;border:0;cursor:pointer;font-size:14px;color:var(--ink-muted);border-bottom:2px solid transparent;margin-bottom:-1px;font-family:inherit;transition:color .15s ease,border-color .15s ease}.tab.active,.tab:hover{color:var(--ink)}.tab.active{border-bottom-color:var(--accent);font-weight:600}table{width:100%;border-collapse:collapse;font-size:14px}td,th{padding:12px 14px;text-align:left;border-bottom:1px solid var(--hairline)}th{font-weight:500;color:var(--ink-muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;background:transparent}tr:last-child td{border-bottom:0}tr{transition:background .1s ease}tbody tr:hover td{background:var(--surface-hover)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}td strong{color:var(--ink);font-weight:600}.muted{color:var(--ink-muted)}.subtle{color:var(--ink-subtle);font-size:12px}.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11.5px;font-weight:500;background:var(--surface-hover);color:var(--ink-muted);border:1px solid var(--hairline);letter-spacing:.005em;white-space:nowrap}.unpaid-table{table-layout:fixed;width:100%}.unpaid-table .invoice-cell{max-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mismatch-table{table-layout:fixed;width:100%}.mismatch-table td,.mismatch-table th{padding:8px 10px}.field-error{color:var(--danger,#b42318)}.field-error,.field-warn{display:block;margin-top:4px;font-size:12px}.field-warn{color:var(--warn,#b54708)}input[aria-invalid=true]{border-color:var(--danger,#b42318)!important}.badge.ok{background:var(--ok-soft);color:var(--ok);border-color:rgba(74,222,128,.32)}.badge.warn{background:var(--warn-soft);color:var(--warn);border-color:rgba(251,191,36,.32)}.badge.danger{background:var(--danger-soft);color:var(--danger);border-color:rgba(251,113,133,.32)}.badge.accent{background:var(--accent-soft);color:var(--accent-hover);border-color:rgba(34,211,238,.35)}.badge.pdfonly{background:var(--pdfonly-soft);color:var(--pdfonly);border-color:rgba(196,181,253,.32)}.btn,button.app{font-family:inherit;font-size:13.5px;font-weight:500;padding:9px 14px;border-radius:var(--radius-md);border:1px solid var(--hairline-strong);background:var(--surface);color:var(--ink);cursor:pointer;transition:background .12s ease,border-color .12s ease}.btn:hover,button.app:hover{background:var(--surface-hover);border-color:var(--ink-subtle)}.btn.primary,button.primary{background:var(--accent);color:var(--accent-on);border-color:var(--accent);font-weight:600}.btn.primary:hover,button.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}button.ghost{background:none;border:1px solid transparent;color:var(--ink-muted);padding:8px 12px}button.ghost:hover{color:var(--ink);background:var(--surface-hover);border-color:var(--hairline)}.btn:disabled,button.app:disabled,button.ghost:disabled{opacity:.45;cursor:not-allowed;background:none}.btn:disabled:hover,button.app:disabled:hover,button.ghost:disabled:hover{background:none;border-color:transparent;color:var(--ink-muted)}.btn.tiny,button.tiny{padding:5px 10px;font-size:12.5px;border-radius:var(--radius-sm)}.btn:focus-visible,button.app:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:16px}input.app,select.app{font-family:inherit;font-size:14px;padding:9px 12px;border-radius:var(--radius-md);border:1px solid var(--hairline-strong);background:var(--surface);color:var(--ink);min-width:240px;transition:border-color .12s ease,box-shadow .12s ease}input.app::-moz-placeholder{color:var(--ink-subtle)}input.app::placeholder{color:var(--ink-subtle)}input.app:focus,select.app:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}select.app{cursor:pointer}.empty{padding:48px 24px;text-align:center;color:var(--ink-muted);font-size:14px}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.55}}.skeleton{display:inline-block;background:var(--surface-hover);border-radius:var(--radius-sm);animation:skeleton-pulse 1.4s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.pill-list{display:flex;gap:4px;flex-wrap:wrap}.heatmap-controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0 14px}.heatmap-segmented{display:inline-flex;border:1px solid var(--hairline);border-radius:var(--radius-md);padding:2px;background:var(--surface)}.heatmap-seg-btn{background:transparent;border:0;color:var(--ink-muted);padding:6px 10px;font:inherit;font-size:12.5px;font-weight:500;border-radius:calc(var(--radius-md) - 4px);cursor:pointer;transition:background .12s ease,color .12s ease}.heatmap-seg-btn:hover{color:var(--ink)}.heatmap-seg-btn.active{background:var(--accent-soft);color:var(--accent)}.heatmap-nav{display:inline-flex;align-items:center;gap:8px}.heatmap-range-label{font-size:13px;color:var(--ink-muted);font-variant-numeric:tabular-nums;min-width:160px;text-align:center}.heatmap-custom{display:inline-flex;align-items:flex-end;gap:8px}.heatmap-custom label{display:flex;flex-direction:column;gap:2px}.heatmap-scroll{overflow-x:auto;border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--bg-2)}.heatmap{border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:13px;width:-moz-max-content;width:max-content;min-width:100%}.heatmap td,.heatmap th{padding:6px;border-bottom:1px solid var(--hairline);text-align:center;vertical-align:middle}.heatmap thead th{font-weight:500;color:var(--ink-muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;background:var(--bg-2)}.heatmap-band-row .heatmap-band-cell{text-align:center;border-bottom:1px solid var(--hairline);color:var(--ink-muted);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:4px}.heatmap-week-head{font-variant-numeric:tabular-nums}.heatmap-week-month{font-size:10px;color:var(--ink-subtle);font-weight:500;margin-bottom:1px}.heatmap-week-date{font-size:11.5px;color:var(--ink-muted)}.heatmap-cell,.heatmap-week-date{font-variant-numeric:tabular-nums}.heatmap-cell{height:32px;border-radius:var(--radius-sm);font-weight:500;font-size:12.5px;padding:0;text-align:center}.heatmap .sticky-left{position:sticky;left:0;background:var(--bg-2);z-index:3;text-align:left;border-right:1px solid var(--hairline)}.heatmap thead .sticky-left{z-index:5}.heatmap .sticky-right-1{position:sticky;right:0;background:var(--bg-2);z-index:3;border-left:1px solid var(--hairline)}.heatmap .sticky-right-2{position:sticky;right:84px;background:var(--bg-2);z-index:3}.heatmap thead .sticky-right-1,.heatmap thead .sticky-right-2{z-index:5}.hm-scribe-cell{font-weight:500;padding-left:12px;text-align:left}.heatmap-hidden-list{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 12px;font-size:13px}.heatmap-hidden-list li{padding:2px 0}details summary{cursor:pointer;color:var(--ink-muted);font-size:13px;padding:2px 0;list-style:none;font-weight:500}details summary::-webkit-details-marker{display:none}details summary:before{content:"›";color:var(--accent);font-weight:600;display:inline-block;margin-right:6px;transition:transform .15s ease}details[open] summary:before{transform:rotate(90deg)}details summary:hover{color:var(--ink)}.expand-notes{font-size:13px;color:var(--ink-muted);margin-top:8px;line-height:1.5;padding:10px 12px;background:var(--bg);border-radius:var(--radius-sm);border-left:2px solid var(--accent)}footer.app{margin-top:56px;color:var(--ink-subtle);font-size:12.5px;text-align:center}a.app{color:var(--accent);text-decoration:none}a.app:hover{text-decoration:underline}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:8px;vertical-align:middle}.status-dot.paid{background:var(--ok)}.status-dot.unpaid{background:var(--warn)}#flash{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--bg);font-weight:500;padding:11px 18px;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:14px;z-index:100}.tabs.subtabs{margin-top:8px}.schedule-grid td,.schedule-grid th{vertical-align:top}.schedule-grid-scroll{overflow-x:auto;margin:0 -8px;padding:0 8px}.schedule-grid-scroll .schedule-grid{table-layout:fixed;width:-moz-max-content;width:max-content;min-width:100%}.schedule-cell-row{display:flex;align-items:center;gap:6px;padding:2px 0}.schedule-scribe-link{background:none;border:0;padding:0;color:var(--ink);font:inherit;font-weight:600;cursor:pointer;min-width:64px;text-align:left}.schedule-scribe-link:hover{color:var(--accent)}.schedule-cell-text{background:none;border:0;padding:2px 6px;border-radius:6px;color:var(--ink);font:inherit;cursor:text;text-align:left;flex:1;min-height:22px}.schedule-cell-text:hover{background:var(--surface-elev)}.schedule-cell-input{flex:1;min-width:80px}.scribe-link{background:none;border:0;padding:0;color:var(--ink);font:inherit;font-weight:600;cursor:pointer;text-align:left;white-space:normal;overflow-wrap:anywhere;word-break:normal;min-width:0;flex:1 1 auto;line-height:1.3}.scribe-link:hover{color:var(--accent)}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.55);display:flex;align-items:flex-start;justify-content:center;padding:5vh 16px;z-index:200;overflow-y:auto}.modal{background-color:#0d1326;background-color:var(--bg-2);background-image:none;border:1px solid hsla(0,0%,100%,.08);border-radius:var(--radius-lg);max-width:760px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,.5);position:relative;z-index:201}.modal-header{display:flex;justify-content:space-between;align-items:center}.modal-header,.modal-section{padding:18px 22px;border-bottom:1px solid var(--hairline)}.modal-section:last-child{border-bottom:0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.form-grid label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--ink-subtle)}.form-grid label span{font-weight:500}.form-grid input.app,.form-grid select.app,.modal input.app,.modal select.app{background:var(--surface);color:var(--ink);border:1px solid var(--hairline-strong);border-radius:var(--radius-md);padding:9px 12px;font-family:inherit;font-size:14px;color-scheme:dark;transition:border-color .12s ease,box-shadow .12s ease}.form-grid input.app::-moz-placeholder,.modal input.app::-moz-placeholder{color:var(--ink-muted);opacity:1}.form-grid input.app::placeholder,.modal input.app::placeholder{color:var(--ink-muted);opacity:1}.form-grid input.app:focus,.form-grid select.app:focus,.modal input.app:focus,.modal select.app:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.form-grid input[type=date].app::-webkit-calendar-picker-indicator,.modal input[type=date].app::-webkit-calendar-picker-indicator{filter:invert(.85);cursor:pointer}.form-grid label.checkbox-row{flex-direction:row;align-items:center;gap:8px}.assignment-block{border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:12px;margin-top:10px}.schedule-week{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:10px}.schedule-day{flex-direction:column;font-size:12px}.schedule-day,.shift-toggles{display:flex;gap:4px}.shift-cell{text-align:center;vertical-align:middle;padding:6px 4px}.shift-cell-row{gap:6px}.shift-cell-row,.shift-pill{display:inline-flex;justify-content:center;align-items:center}.shift-pill{background:transparent;border:1px solid var(--hairline);color:var(--ink-subtle);min-width:34px;min-height:32px;padding:0 8px;margin:0;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.04em;cursor:pointer;flex-shrink:0;transition:background .12s ease,color .12s ease,border-color .12s ease}.shift-pill:hover{border-color:var(--accent);color:var(--ink)}.shift-pill.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.shift-pill.off{opacity:.55}.shift-pill.called-out{background:var(--danger-soft);border-color:var(--danger);color:var(--danger);text-decoration:line-through}.shift-pill.covered{background:var(--warn-soft);border-color:var(--warn);color:var(--warn);position:relative;gap:4px}.cover-initials,.shift-pill.covered{display:inline-flex;align-items:center}.cover-initials{justify-content:center;width:18px;height:18px;border-radius:999px;background:var(--warn);color:#1a0e00;font-size:9px;font-weight:700;letter-spacing:.02em}.btn.ghost.danger{color:var(--danger)}.hours-row{display:flex;align-items:flex-end;gap:10px;margin:10px 0 4px;flex-wrap:wrap}.hours-row label{display:flex;flex-direction:column;gap:4px;font-size:12px}.hours-row input.app{width:80px;min-width:0}.hours-row .hours-hint{flex:1;min-width:200px}.reconcile-detail-row td{background:var(--surface-hover);padding:0}.reconcile-detail{width:100%;margin:0;font-size:13px}.reconcile-detail td,.reconcile-detail th{padding:8px 14px;border-bottom:1px solid var(--hairline)}.reconcile-detail thead th{font-size:10px}.unmatched-panel{margin-top:18px;padding-top:12px;border-top:1px dashed var(--hairline)}@media (max-width:720px){.wrap{padding:28px 18px 48px}.h1{font-size:24px}.form-grid{grid-template-columns:1fr}.schedule-week{grid-template-columns:1fr 1fr}}.overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:16px;margin-bottom:20px}@media (max-width:720px){.overview-grid{grid-template-columns:1fr;grid-auto-rows:auto}}.overview-tile{display:flex;flex-direction:column;margin-bottom:0}.overview-tile-interactive{cursor:pointer;transition:border-color .12s ease,transform .12s ease,box-shadow .12s ease}.overview-tile-interactive:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow-md)}.overview-tile-interactive:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.overview-tile-header{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;flex-shrink:0}.overview-tile-count{font-size:12px;color:var(--ink-muted);flex-shrink:0}.overview-tile-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}.overview-tile-row{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--hairline);min-width:0}.overview-tile-row:last-child{border-bottom:0}.overview-tile-row-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.overview-tile-row-main strong{font-weight:600;font-size:13px;color:var(--ink);overflow-wrap:anywhere}.overview-tile-row-main .subtle{font-size:11.5px;line-height:1.3}.overview-tile-row-trail{flex-shrink:0;font-size:12px}.overview-tile .empty{padding:24px 0;text-align:center;color:var(--ink-muted);font-size:13px}.calendar-grid-card{padding:16px}.cal-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.cal-filter-row{border-top:1px solid var(--hairline);padding-top:12px;margin-top:0;margin-bottom:16px}.cal-view-toggle{display:inline-flex;border:1px solid var(--hairline-strong);border-radius:var(--radius-md);overflow:hidden}.cal-view-btn{background:transparent;border:0;padding:7px 14px;font-family:inherit;font-size:13px;color:var(--ink-muted);cursor:pointer;border-right:1px solid var(--hairline);transition:background .12s ease,color .12s ease}.cal-view-btn:last-child{border-right:0}.cal-view-btn:hover{background:var(--surface-hover);color:var(--ink)}.cal-view-btn.active{background:var(--accent);color:var(--accent-on);font-weight:600}.cal-nav{display:inline-flex;gap:4px}.cal-month-label{font-size:15px;color:var(--ink);margin-left:auto}.cal-filter-label{display:inline-flex;flex-direction:column;gap:4px;font-size:12px}.roster-added-toast{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:var(--ok-soft);color:var(--ok);border:1px solid rgba(74,222,128,.32);font-size:12.5px;font-weight:500;animation:rosterToastFade 2s ease-out forwards}@keyframes rosterToastFade{0%{opacity:0;transform:translateY(-2px)}10%{opacity:1;transform:translateY(0)}85%{opacity:1}to{opacity:0}}.date-filter{display:inline-flex;align-items:center;gap:8px;margin-right:auto}.date-filter-label{display:inline-flex;flex-direction:column;gap:4px;font-size:12px}.cal-weekend-toggle{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-muted);cursor:pointer;margin-left:auto}.cal-week-block{margin-bottom:16px}.cal-week-block:last-child{margin-bottom:0}.cal-week-label{padding:4px 0 6px;font-weight:600;letter-spacing:.02em}.cal-grid{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;table-layout:fixed}.cal-grid td,.cal-grid th{border-right:1px solid var(--hairline);border-bottom:1px solid var(--hairline);vertical-align:top}.cal-grid td:last-child,.cal-grid th:last-child{border-right:0}.cal-grid tr:last-child td{border-bottom:0}.cal-grid thead th{background:var(--bg);color:var(--ink);padding:8px 10px;text-transform:none;font-size:12px;letter-spacing:.02em;font-weight:600;border-bottom-color:var(--hairline-strong)}.cal-grid thead th.weekend{opacity:.7}.cal-day-head .cal-day-name{font-size:13px;font-weight:700}.cal-day-head .cal-day-date{font-size:11px;font-weight:400;margin-top:2px}.cal-scribe-col{min-width:200px;width:240px}.cal-scribe-cell{background:var(--surface);padding:8px 12px}.cal-scribe-button{display:flex;align-items:center;gap:10px;background:none;border:0;padding:0;color:var(--ink);font-family:inherit;text-align:left;cursor:pointer;width:100%}.cal-scribe-button:hover .cal-scribe-name{color:var(--accent)}.cal-scribe-initials{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;background:var(--accent-soft);color:var(--accent-hover);font-weight:700;font-size:13px;letter-spacing:.02em;flex-shrink:0}.cal-scribe-name{font-size:13px;font-weight:500;color:var(--ink);line-height:1.2;transition:color .12s ease;white-space:normal;word-break:break-word;min-width:0;flex:1}.cal-cell{padding:0;background:var(--surface);min-height:72px;vertical-align:top}.cal-cell.weekend{background:hsla(0,0%,100%,.02)}.cal-cell-am,.cal-cell-pm{padding:6px 8px;min-height:36px;box-sizing:border-box}.cal-cell-am{border-bottom:1px solid var(--hairline)}.cal-empty{color:var(--ink-subtle);font-size:14px}.cal-pill-stack{display:flex;flex-direction:column;gap:4px}.cal-pill{display:inline-block;padding:4px 8px;border-radius:6px;border:0;background:#d4dce8;color:#0a0f1c;font-family:inherit;font-size:11.5px;font-weight:600;letter-spacing:.01em;text-align:left;cursor:pointer;transition:background .12s ease,transform .06s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.cal-pill:hover{background:#e3eaf3}.cal-pill-calledOut{background:var(--danger-soft);color:var(--danger);text-decoration:line-through;text-decoration-thickness:1.5px;border:1.5px solid var(--danger,#b42318)}.cal-pill-calledOut:hover{background:rgba(251,113,133,.22)}.cal-pill-calledOutCovered{background:var(--ok-soft,rgba(74,222,128,.16));color:var(--ok,#16a34a);border:1.5px solid var(--danger,#b42318)}.cal-pill-calledOutCovered:hover{background:rgba(74,222,128,.24)}.cal-pill-requestedOff{background:var(--warn-soft);color:var(--warn);border:1.5px dashed var(--warn,#b54708)}.cal-pill-requestedOff:hover{background:rgba(251,191,36,.22)}.cal-pill-requestedOffCovered{background:var(--ok-soft,rgba(74,222,128,.16));color:var(--ok,#16a34a);border:1.5px dashed var(--warn,#b54708)}.cal-pill-requestedOffCovered:hover{background:rgba(74,222,128,.24)}.cal-pill-covering{background:var(--warn-soft);color:var(--warn)}.cal-pill-covering:hover{background:rgba(251,191,36,.22)}.signin-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 24px;background:radial-gradient(900px 600px at 10% 0,rgba(59,130,246,.1),transparent 60%),radial-gradient(900px 600px at 100% 100%,rgba(45,212,191,.08),transparent 60%),linear-gradient(180deg,#eef2fb,#e6ecf7);color:#0f172a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif}.signin-card-v2{width:100%;max-width:1100px;display:flex;flex-direction:column;gap:48px;background:#fff;border-radius:28px;padding:56px 64px;box-shadow:0 30px 80px -30px rgba(15,23,42,.3),0 8px 24px -12px rgba(15,23,42,.18);border:1px solid rgba(15,23,42,.06)}.signin-hero-top{display:flex;justify-content:space-between;align-items:flex-start;gap:48px}.signin-hero-headline{flex:1 1 auto;display:flex;flex-direction:column;gap:18px;min-width:0}.signin-hero-cta{flex:0 0 320px;display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:6px}.signin-pill{align-self:flex-start;display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;background:rgba(59,130,246,.1);color:#2563eb;font-size:13px;font-weight:600;letter-spacing:-.005em}.signin-wordmark{margin:4px 0 0;font-size:72px;line-height:1;font-weight:800;letter-spacing:-.045em;color:#2563eb}.signin-lede{margin:0;font-size:19px;line-height:1.45;color:#334155;max-width:560px}.signin-lede strong{color:#0f172a;font-weight:700}.signin-features{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 36px}.signin-feature{display:grid;grid-template-columns:36px 1fr;gap:14px;align-items:start}.signin-feature-icon{width:36px;height:36px;border-radius:10px;background:rgba(59,130,246,.1);color:#2563eb;display:inline-flex;align-items:center;justify-content:center}.signin-feature-body strong{display:block;font-size:15px;font-weight:700;color:#0f172a;margin-bottom:4px}.signin-feature-body p{margin:0;font-size:14px;line-height:1.5;color:#475569}.signin-welcome{margin:0 0 4px;font-size:22px;font-weight:700;letter-spacing:-.02em;color:#0f172a}.signin-sub{margin:0 0 14px;font-size:14px;color:#475569;max-width:280px}.signin-trigger{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 28px;background:#2563eb;background-image:none;color:#fff;border:1px solid #2563eb;border-radius:12px;font:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:background .12s ease,border-color .12s ease}.signin-trigger:hover{background:#1d4ed8;border-color:#1d4ed8}.signin-trigger:focus-visible{outline:none;background:#1d4ed8;border-color:#1d4ed8;box-shadow:0 0 0 3px rgba(37,99,235,.4)}.signin-dialog{border:none;border-radius:0;padding:0;width:min(400px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:visible;background:transparent;color:#0f172a;box-shadow:none}.signin-dialog::backdrop{background:rgba(15,23,42,.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.signin-dialog-inner{position:relative}.signin-dialog-sr-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.signin-dialog-close{position:absolute;top:14px;right:14px;z-index:2;background:#fff;border:1px solid #e2e8f0;border-radius:10px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;color:#475569;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease,box-shadow .12s ease}.signin-dialog-close:hover{background:#f8fafc;border-color:#cbd5e1;color:#0f172a}.signin-dialog-close:focus-visible{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.25)}.signin-dialog-inner .cl-card,.signin-dialog-inner .cl-rootBox{width:100%}.signin-dialog-inner [class*=cl-internal][class*=DevelopmentMode],.signin-dialog-inner [class*=cl-internal][class*=developmentMode]{background:rgba(15,23,42,.05)!important;background-image:none!important;color:#475569!important;border:1px solid rgba(15,23,42,.08)!important;font-weight:500!important}.signin-dialog-inner [style*=repeating-linear-gradient]{background-image:none!important}.signin-dialog-inner .cl-footer,.signin-dialog-inner [class*=cl-internal][class*=brandingFooter],.signin-dialog-inner [class*=cl-internal][class*=poweredBy]{background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important}.signin-dialog-inner [class*=cl-internal][class*=poweredBy]{font-size:11.5px!important;color:#94a3b8!important;opacity:.7}@media (max-width:860px){.signin-card-v2{padding:36px 28px;gap:32px}.signin-hero-top{flex-direction:column;align-items:stretch;gap:24px}.signin-hero-cta{flex:0 0 auto;align-items:stretch;text-align:left}.signin-trigger{align-self:flex-start}.signin-wordmark{font-size:52px}.signin-lede{font-size:17px}.signin-features{grid-template-columns:1fr;gap:20px}.signin-dialog-inner{padding:22px}}@media print{.no-print{display:none!important}body{background:#fff!important;color:#000!important}.wrap{max-width:none;padding:0}.calendar-grid-card,.card{border:0;box-shadow:none;background:#fff;padding:0}.cal-grid thead th{background:#0a0f1c;color:#fff;-webkit-print-color-adjust:exact;print-color-adjust:exact}.cal-grid td,.cal-grid th{border-color:#ccc}.cal-cell,.cal-scribe-cell{background:#fff}.cal-cell-am{border-bottom:1px solid #ccc}.cal-scribe-button,.cal-scribe-name{color:#000}.cal-scribe-initials{background:#e2e8f0;color:#0a0f1c}.cal-pill{background:#e2e8f0!important;color:#0a0f1c!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.cal-pill-calledOut{background:#fee2e2!important;color:#991b1b!important;border:1.5px solid #991b1b!important}.cal-pill-calledOutCovered{background:#dcfce7!important;color:#166534!important;border:1.5px solid #991b1b!important}.cal-pill-requestedOff{background:#fef3c7!important;color:#92400e!important;border:1.5px dashed #92400e!important}.cal-pill-requestedOffCovered{background:#dcfce7!important;color:#166534!important;border:1.5px dashed #92400e!important}.cal-pill-covering{background:#fef3c7!important;color:#92400e!important}}