:root{--color-surface: oklch(99.5% .005 170);--color-ink: oklch(21% .035 205);--color-ink-2: oklch(31% .032 205);--color-muted: oklch(52% .022 205);--color-accent: oklch(43% .105 178);--color-accent-soft: oklch(92% .035 178);--color-accent-ink: oklch(99% .004 170);--color-focus: oklch(42% .14 230);--color-info-soft: oklch(94% .03 235);--font-display: "Aptos Display", "Segoe UI Variable Display", "Segoe UI", ui-sans-serif, sans-serif;--font-body: "Aptos", "Segoe UI Variable Text", "Segoe UI", ui-sans-serif, sans-serif;--font-outlier: "Cascadia Mono", "SFMono-Regular", Consolas, ui-monospace, monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-md: 1.125rem;--text-lg: 1.375rem;--text-xl: 1.75rem;--text-2xl: 2.25rem;--space-3xs: .25rem;--space-2xs: .5rem;--space-xs: .75rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 3rem;--space-2xl: 4rem;--radius-pill: 999px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-micro: .12s;--dur-short: .18s;--dur-long: .3s;--z-overlay: 500;--z-modal: 600}:root{--font-display: "Geist", "Aptos Display", "Segoe UI Variable Display", ui-sans-serif, system-ui, sans-serif;--font-body: "Geist", "Aptos", "Segoe UI Variable Text", ui-sans-serif, system-ui, sans-serif;--font-outlier: "Geist Mono", "Cascadia Mono", ui-monospace, monospace;--text-2xs: .8125rem;--text-xs: .875rem;--text-sm: .9375rem;--text-base: 1.0625rem;--text-md: 1.1875rem;--text-lg: 1.5rem;--text-xl: 1.875rem;--text-2xl: 2.375rem;--tracking-display: -.024em;--tracking-tight: -.012em;--tracking-label: .005em;--color-canvas: oklch(96.4% .006 195);--color-surface: oklch(100% 0 0);--color-surface-2: oklch(97.6% .005 195);--color-surface-sunk: oklch(94.8% .008 195);--color-rail: oklch(99.2% .003 195);--color-ink: oklch(22% .028 220);--color-ink-2: oklch(38% .022 220);--color-muted: oklch(53% .017 220);--color-faint: oklch(66% .013 220);--color-line: oklch(91.5% .008 210);--color-line-strong: oklch(85% .012 210);--color-accent: oklch(47% .098 187);--color-accent-hover: oklch(41% .094 187);--color-accent-soft: oklch(95.5% .026 187);--color-accent-line: oklch(84% .055 187);--color-accent-ink: oklch(99.5% .002 187);--color-focus: oklch(52% .16 245);--color-ok: oklch(46% .105 158);--color-ok-soft: oklch(95.5% .032 158);--color-ok-line: oklch(64% .09 158);--color-warn: oklch(56% .125 68);--color-warn-soft: oklch(96% .038 72);--color-warn-line: oklch(65% .1 72);--color-bad: oklch(51% .175 25);--color-bad-soft: oklch(96% .028 25);--color-bad-line: oklch(66% .085 25);--color-info-soft: oklch(96% .024 245);--color-info-line: oklch(66% .08 245);--chart-1: #00998f;--chart-2: #6d4bd0;--chart-cat-1: #2a78d6;--chart-cat-2: #eb6834;--chart-cat-3: #1baf7a;--chart-cat-4: #eda100;--chart-cat-5: #e87ba4;--chart-cat-6: #008300;--chart-cat-7: #4a3aa7;--chart-cat-8: #e34948;--chart-cat-other: #9a9992;--color-scrim: oklch(24% .02 220 / .42);--shadow-1: 0 1px 2px oklch(24% .02 220 / .05), 0 1px 1px oklch(24% .02 220 / .04);--shadow-2: 0 2px 4px oklch(24% .02 220 / .05), 0 6px 14px oklch(24% .02 220 / .06);--shadow-3: 0 8px 20px oklch(24% .02 220 / .1), 0 24px 48px oklch(24% .02 220 / .12);--radius-xs: 6px;--radius-sm: 8px;--radius-md: 10px;--radius-lg: 14px;--radius-pill: 999px;--control-h: 2.5rem;--control-h-sm: 2.125rem;--control-hit: 2.75rem;--row-h: 3.375rem;--rail-w: 17rem;--rail-collapsed-w: 4.75rem;--canvas-w: 78rem;--app-w: calc(var(--rail-w) + var(--canvas-w) + var(--space-xl) * 2)}@media(prefers-reduced-motion:reduce){:root{--dur-micro: 1ms;--dur-short: 1ms;--dur-long: .12s}}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}html,body{overflow-x:clip}body{margin:0;font-family:var(--font-body);font-size:var(--text-base);font-weight:400;line-height:1.55;color:var(--color-ink);background:var(--color-canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-variant-numeric:tabular-nums}h1,h2,h3,h4{font-family:var(--font-display);font-style:normal;margin:0;line-height:1.2;letter-spacing:var(--tracking-tight);color:var(--color-ink)}h1{font-size:var(--text-2xl);font-weight:600;letter-spacing:var(--tracking-display)}h2{font-size:var(--text-md);font-weight:600}h3{font-size:var(--text-base);font-weight:600}p{margin:0}.mono{font-family:var(--font-outlier);font-size:inherit;letter-spacing:0}.strong{font-weight:600}.muted{color:var(--color-muted)}.icon{display:inline-block;width:1em;height:1em;flex:0 0 auto;vertical-align:-.125em}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:absolute;left:var(--space-sm);top:-4rem;z-index:var(--z-modal);padding:var(--space-2xs) var(--space-sm);background:var(--color-surface);border-radius:var(--radius-sm);box-shadow:var(--shadow-2);color:var(--color-ink);font-weight:500}.skip-link:focus-visible{top:var(--space-sm)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-xs)}*{scrollbar-width:thin;scrollbar-color:var(--color-line-strong) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--color-line-strong);border:2px solid transparent;border-radius:var(--radius-pill);background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:var(--color-muted);background-clip:padding-box}*::-webkit-scrollbar-corner{background:transparent}.app{display:grid;grid-template-columns:var(--rail-w) minmax(0,1fr);min-height:100%}.main{padding:var(--space-lg) var(--space-xl) var(--space-2xl);min-width:0;width:100%;max-width:calc(var(--canvas-w) + var(--space-xl) * 2);margin-inline:auto}.rail{display:flex;flex-direction:column;gap:var(--space-2xs);padding:var(--space-sm) var(--space-xs);background:var(--color-rail);border-right:1px solid var(--color-line);position:sticky;top:0;height:100vh;overflow-y:auto;overscroll-behavior:contain}.brand{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-3xs);padding:var(--space-2xs) var(--space-2xs) var(--space-sm);text-align:center}.brand-mark{display:grid;place-items:center;padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-accent-ink)}.brand-name{font-family:var(--font-display);font-weight:600;font-size:var(--text-md);letter-spacing:.02em;line-height:1.1;text-wrap:balance}.brand-name-compact{display:none}.brand-sub{display:block;color:var(--color-muted);font-size:var(--text-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rail-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}.rail-link{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-2xs);overflow:hidden;padding:0 var(--space-2xs);min-height:2.375rem;border-radius:var(--radius-sm);color:var(--color-ink-2);text-decoration:none;font-size:var(--text-sm);font-weight:500;white-space:nowrap;transition:background-color var(--dur-micro) var(--ease-out),color var(--dur-micro) var(--ease-out)}.rail-link:hover:not(.is-disabled){background:var(--color-surface-sunk);color:var(--color-ink)}.rail-link.is-disabled{color:var(--color-faint);cursor:not-allowed;opacity:.72}.rail-link.is-current{background:var(--color-accent-soft);color:var(--color-accent-hover);font-weight:600}.rail-flag{font-size:var(--text-2xs);font-weight:500;padding:1px 6px;border-radius:var(--radius-pill);background:var(--color-surface-sunk);color:var(--color-faint);letter-spacing:var(--tracking-label)}.rail-flag-warn{background:var(--color-warn-soft);color:var(--color-warn)}.rail-sep{border:0;border-top:1px solid var(--color-line);margin:var(--space-2xs) var(--space-2xs)}.rail-foot{margin-top:auto;padding-top:var(--space-sm);border-top:1px solid var(--color-line);display:flex;align-items:center;gap:var(--space-2xs)}.avatar{display:grid;place-items:center;width:2rem;height:2rem;flex-shrink:0;border-radius:var(--radius-pill);background:var(--color-surface-sunk);color:var(--color-ink-2);font-size:var(--text-xs);font-weight:600;overflow:hidden}.avatar-photo{background:none;object-fit:cover;object-position:center 20%}.avatar-lg{width:5rem;height:5rem;font-size:var(--text-lg)}.rail-user{font-size:var(--text-sm);font-weight:500}.rail-meta{font-size:var(--text-xs);color:var(--color-faint)}.page-header{display:flex;gap:var(--space-md);justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-md)}.page-identity{display:flex;gap:var(--space-sm);align-items:center;min-width:0;flex:1 1 auto}.page-identity-text{min-width:0;flex:1 1 auto}.page-title-row h1{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-identity-has-avatar .page-title-row h1{font-size:1.875rem}.page-title-status{flex-shrink:0}.page-crumb{display:flex;align-items:center;gap:var(--space-3xs);font-size:var(--text-sm);color:var(--color-muted);margin-bottom:var(--space-3xs)}.page-crumb a{color:inherit;text-decoration:none}.page-crumb a:hover{color:var(--color-accent-hover);text-decoration:underline}.back-control{display:inline-flex;align-items:center;gap:var(--space-3xs)}.page-title-row{display:flex;align-items:center;gap:var(--space-2xs);min-width:0}.page-purpose{color:var(--color-muted);margin-top:var(--space-3xs);max-width:62ch;font-size:var(--text-sm)}.page-actions{flex-shrink:0;display:flex;gap:var(--space-2xs);flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3xs);min-height:var(--control-h);padding:0 var(--space-sm);border:1px solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);font:inherit;font-size:var(--text-sm);font-weight:500;white-space:nowrap;cursor:pointer;text-decoration:none;box-shadow:var(--shadow-1);transition:background-color var(--dur-micro) var(--ease-out),border-color var(--dur-micro) var(--ease-out),transform var(--dur-micro) var(--ease-out)}.btn:hover:not(:disabled){background:var(--color-surface-2);border-color:var(--color-muted)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink)}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.btn-danger{background:var(--color-bad);border-color:var(--color-bad);color:var(--color-accent-ink)}.btn-danger:hover:not(:disabled){background:color-mix(in oklch,var(--color-bad) 88%,black);border-color:color-mix(in oklch,var(--color-bad) 88%,black);color:var(--color-accent-ink)}.btn-quiet{border-color:transparent;background:transparent;box-shadow:none;color:var(--color-accent-hover);padding:0 var(--space-2xs);min-height:2rem;font-weight:500}.btn-quiet:hover:not(:disabled){background:var(--color-accent-soft);border-color:transparent}.btn-icon{display:grid;place-items:center;width:2.125rem;height:2.125rem;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-muted);font-size:var(--text-base);cursor:pointer;transition:background-color var(--dur-micro) var(--ease-out),color var(--dur-micro) var(--ease-out),transform var(--dur-micro) var(--ease-out)}.btn-icon:hover:not(:disabled){background:var(--color-surface-sunk);color:var(--color-ink)}.btn-icon:active:not(:disabled){transform:translateY(1px)}.btn-icon:disabled{opacity:.45;cursor:not-allowed}.btn-link{background:none;border:0;padding:0;font:inherit;font-size:var(--text-sm);color:var(--color-muted);cursor:pointer}.btn-link:hover{color:var(--color-accent-hover);text-decoration:underline}.badge{display:inline-flex;align-items:center;gap:var(--space-3xs);padding:2px 8px;border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--text-xs);font-weight:500;text-transform:capitalize;white-space:nowrap;letter-spacing:var(--tracking-label)}.badge>span[aria-hidden]{font-size:.7em;line-height:1}.badge-positive{background:var(--color-ok-soft);border-color:var(--color-ok-line);color:var(--color-ok)}.badge-attention{background:var(--color-warn-soft);border-color:var(--color-warn-line);color:var(--color-warn)}.badge-negative{background:var(--color-bad-soft);border-color:var(--color-bad-line);color:var(--color-bad)}.badge-neutral{background:var(--color-surface-sunk);border-color:var(--color-line-strong);color:var(--color-muted)}.badge-restricted{background:var(--color-info-soft);border-color:var(--color-info-line);color:var(--color-focus)}.status-cell{text-align:center}.status-cell .badge{min-width:6.75rem;justify-content:center}.pill{padding:2px 9px;border-radius:var(--radius-pill);border:1px solid var(--color-line-strong);background:var(--color-surface);color:var(--color-muted);font-size:var(--text-xs);font-weight:500;white-space:nowrap}.pill-required,.pill-attention{background:var(--color-warn-soft);border-color:var(--color-warn-line);color:var(--color-warn)}.pending-tag{display:inline-flex;align-items:center;padding:1px 7px;border:1px dashed var(--color-line-strong);border-radius:var(--radius-pill);background:var(--color-surface-sunk);color:var(--color-faint);font-size:var(--text-2xs);font-weight:500;letter-spacing:var(--tracking-label);white-space:nowrap;vertical-align:middle}.pending-value{display:inline-flex;align-items:center;gap:var(--space-3xs);color:var(--color-faint);font-size:var(--text-sm)}.pending-panel{display:grid;gap:var(--space-3xs);padding:var(--space-md);border:1px dashed var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-surface-2)}.pending-panel-title{margin:0;display:flex;align-items:center;gap:var(--space-2xs);color:var(--color-ink-2);font-size:var(--text-sm);font-weight:600}.pending-panel-body{margin:0;color:var(--color-muted);font-size:var(--text-sm);max-width:58ch}.pending-needs{margin:var(--space-3xs) 0 0;font-family:var(--font-outlier);font-size:var(--text-2xs);color:var(--color-faint)}.toolbar{display:flex;gap:var(--space-2xs);align-items:center;margin-bottom:var(--space-sm);flex-wrap:wrap}.search{flex:1;min-width:14rem;max-width:24rem}.toolbar-date-filter{display:flex;align-items:center;gap:var(--space-2xs);color:var(--color-muted);font-size:var(--text-xs);font-weight:600;white-space:nowrap}.toolbar-date-filter input{width:10.5rem;color:var(--color-ink);font-weight:400}.toolbar-note{flex-basis:100%;font-size:var(--text-xs);color:var(--color-faint)}.toolbar.is-surface{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);padding:var(--space-sm) var(--space-md)}.toolbar.is-surface .toolbar-note{margin-top:var(--space-2xs);padding-top:var(--space-2xs);border-top:1px solid var(--color-line)}.toolbar-row{display:flex;align-items:center;gap:var(--space-2xs);flex-wrap:wrap;flex:1 1 100%}.toolbar-clear{margin-left:auto}.filter-menu-trigger{display:inline-flex;align-items:center;gap:var(--space-3xs);font:inherit;font-size:var(--text-sm);color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-line-strong);border-radius:var(--radius-pill);padding:0 var(--space-sm);min-height:var(--control-h);white-space:nowrap;cursor:pointer;transition:border-color var(--dur-micro) var(--ease-out),background-color var(--dur-micro) var(--ease-out)}.filter-menu-trigger .icon{width:.9rem;height:.9rem}.filter-menu-trigger:hover{border-color:var(--color-muted)}.filter-menu-trigger[aria-expanded=true]{border-color:var(--color-focus)}.filter-menu-trigger.is-active{background:var(--color-accent-soft);border-color:var(--color-accent);font-weight:600}.filter-menu-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.1rem;height:1.1rem;padding:0 4px;border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-accent-ink);font-size:var(--text-2xs);font-weight:700}.filter-tags{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3xs)}.filter-tag{display:inline-flex;align-items:center;gap:var(--space-3xs);font:inherit;font-size:var(--text-xs);font-weight:600;color:var(--color-accent-hover);background:var(--color-accent-soft);border:1px solid var(--color-accent-line);border-radius:var(--radius-pill);padding:var(--space-3xs) var(--space-2xs);cursor:pointer}.filter-tag:hover{border-color:var(--color-accent)}.filter-tag .icon{width:.75rem;height:.75rem}input,select,textarea{font:inherit;font-size:var(--text-sm);color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-line-strong);border-radius:var(--radius-sm);padding:0 var(--space-xs);min-height:var(--control-h);width:100%;box-shadow:inset 0 1px 2px #1422260b;transition:border-color var(--dur-micro) var(--ease-out)}textarea{padding:var(--space-2xs);min-height:unset;resize:vertical;line-height:1.55}input::placeholder,textarea::placeholder{color:var(--color-faint)}input:hover:not([readonly]),select:hover,textarea:hover{border-color:var(--color-muted)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-focus);outline-offset:-1px;border-color:var(--color-focus)}input[readonly],.is-locked{background:var(--color-surface-sunk);color:var(--color-muted);cursor:not-allowed}.file-picker{width:100%;min-width:0}.file-picker-control{display:flex;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:var(--space-xs);width:100%;min-height:var(--control-h);padding:var(--space-3xs) var(--space-xs);border:1px solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:inset 0 1px 2px #1422260b;cursor:pointer;transition:border-color var(--dur-micro) var(--ease-out),background-color var(--dur-micro) var(--ease-out)}.field .file-picker-control{display:flex;margin-bottom:0;color:var(--color-ink);font-weight:400}.file-picker-control:hover{border-color:var(--color-muted)}.file-picker-input:focus-visible+.file-picker-control{outline:2px solid var(--color-focus);outline-offset:-1px;border-color:var(--color-focus)}.file-picker-action{display:inline-flex;align-items:center;justify-content:center;min-height:calc(var(--control-h) - 8px);padding:0 var(--space-sm);border-radius:var(--radius-xs);background:var(--color-accent);color:var(--color-accent-ink);font-size:var(--text-sm);font-weight:600;white-space:nowrap}.file-picker-name{flex:1 1 auto;min-width:0;max-width:min(100%,34rem);overflow:hidden;color:var(--color-ink-2);font-size:var(--text-sm);line-height:1.35;text-align:left;text-overflow:ellipsis;white-space:nowrap}.file-picker-name.is-empty{color:var(--color-faint)}.file-picker.is-disabled .file-picker-control{background:var(--color-surface-sunk);cursor:not-allowed}.file-picker.is-disabled .file-picker-action{background:var(--color-muted);color:var(--color-surface)}.field-invalid .file-picker-control{border-color:var(--color-bad)}.field-invalid .file-picker-input:focus-visible+.file-picker-control{border-color:var(--color-bad)}select{max-width:16rem;appearance:none;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 15px) 55%,calc(100% - 10px) 55%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:var(--space-lg)}.toolbar select{min-width:10rem}.select{position:relative;width:100%;max-width:16rem}.toolbar .select{min-width:10rem;max-width:none}.grid-compact .select{max-width:none}.select-trigger{font:inherit;font-size:var(--text-sm);color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-line-strong);border-radius:var(--radius-sm);padding:0 var(--space-lg) 0 var(--space-xs);min-height:var(--control-h);width:100%;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;box-shadow:inset 0 1px 2px #1422260b;transition:border-color var(--dur-micro) var(--ease-out);background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 15px) 55%,calc(100% - 10px) 55%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.select-trigger:hover:not(:disabled){border-color:var(--color-muted)}.select-trigger:focus-visible{outline:2px solid var(--color-focus);outline-offset:-1px;border-color:var(--color-focus)}.select-trigger[aria-expanded=true]{border-color:var(--color-focus);border-bottom-left-radius:0;border-bottom-right-radius:0}.select-trigger:disabled{background-color:var(--color-surface-sunk);color:var(--color-muted);cursor:not-allowed}.select-placeholder{color:var(--color-faint)}.select-popover{position:absolute;inset-inline:0;top:100%;z-index:var(--z-overlay);margin:0;padding:var(--space-3xs) 0;list-style:none;background:var(--color-surface);border:1px solid var(--color-focus);border-top:none;border-radius:0 0 var(--radius-sm) var(--radius-sm);box-shadow:var(--shadow-2);max-height:16rem;overflow-y:auto}.select-option{padding:var(--space-2xs) var(--space-xs);font-size:var(--text-sm);color:var(--color-ink);cursor:pointer}.select-option.is-active{background:var(--color-accent-soft)}.select-option.is-selected{background:var(--color-accent);color:var(--color-accent-ink)}.select-option.is-selected.is-active{background:var(--color-accent)}.select-option.is-disabled{color:var(--color-faint);cursor:not-allowed}.table-wrap{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1);overflow-x:auto;max-width:100%;position:relative}.data-table{min-width:0;max-width:100%}.data-table-footer{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-xs) var(--space-sm);padding:var(--space-xs) var(--space-sm);color:var(--color-muted);font-size:var(--text-sm)}.data-table-range{margin:0 auto 0 0;font-variant-numeric:tabular-nums}.data-table-page-size{display:inline-flex;align-items:center;gap:var(--space-2xs);white-space:nowrap}.data-table-page-size select{width:auto;min-width:4.25rem;min-height:2.25rem;padding:0 var(--space-md) 0 var(--space-2xs)}.data-table-pages{display:inline-flex;align-items:center;gap:var(--space-3xs);white-space:nowrap}.data-table-pages>span{min-width:6.5rem;text-align:center;font-variant-numeric:tabular-nums}.data-table-pages button{display:inline-grid;place-items:center;width:2.25rem;height:2.25rem;padding:0;border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);font:inherit;cursor:pointer}.data-table-pages button:hover:not(:disabled){border-color:var(--color-line-strong);background:var(--color-surface-2)}.data-table-pages button:disabled{opacity:.42;cursor:not-allowed}table{min-width:42rem}table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}th,td{text-align:left;padding:var(--space-2xs) var(--space-sm);height:var(--row-h);border-bottom:1px solid var(--color-line);vertical-align:middle}thead th{height:2.5rem;font-size:var(--text-xs);font-weight:600;color:var(--color-muted);letter-spacing:var(--tracking-label);background:var(--color-surface-2);white-space:nowrap;position:sticky;top:0;z-index:1}thead th:first-child{border-top-left-radius:var(--radius-lg)}thead th:last-child{border-top-right-radius:var(--radius-lg)}.table-sort{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-2xs);width:100%;min-height:2rem;margin:calc(var(--space-3xs) * -1) 0;padding:var(--space-3xs) 0;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;text-align:left;cursor:pointer}.table-sort:hover,.table-sort.is-active{color:var(--color-ink)}.table-sort-icon{color:var(--color-faint);font-size:var(--text-sm);line-height:1}.table-sort.is-active .table-sort-icon{color:var(--color-accent)}tbody tr:last-child th,tbody tr:last-child td{border-bottom:0}tbody tr{transition:background-color var(--dur-micro) var(--ease-out)}tbody tr:hover{background:var(--color-surface-2)}tbody th{font-weight:600;color:var(--color-ink)}.employee-number-cell{text-align:center}.employee-number-cell>.empty-value{justify-content:center;text-align:center}.row-actions{width:1%;white-space:nowrap;padding-right:var(--space-sm)}.action-cluster{display:inline-flex;align-items:center;border:1px solid var(--color-line);border-radius:var(--radius-sm);overflow:hidden;background:var(--color-surface);box-shadow:var(--shadow-1);opacity:.72;transition:opacity var(--dur-micro) var(--ease-out),border-color var(--dur-micro) var(--ease-out)}tbody tr:hover .action-cluster,.action-cluster:focus-within{opacity:1;border-color:var(--color-line-strong)}.action-cluster:empty{display:none}.action-cluster>button{border:0;border-radius:0;background:transparent;box-shadow:none;min-height:var(--control-h-sm);padding:0 var(--space-2xs);font:inherit;font-size:var(--text-xs);font-weight:500;color:var(--color-ink-2);cursor:pointer;white-space:nowrap;transition:background-color var(--dur-micro) var(--ease-out),color var(--dur-micro) var(--ease-out)}.action-cluster>button+button{border-left:1px solid var(--color-line)}.action-cluster>button:hover:not(:disabled){background:var(--color-surface-sunk);color:var(--color-ink)}.action-cluster>button:disabled{opacity:.45;cursor:not-allowed}.action-cluster>button.is-accent,.action-cluster>button.is-danger{min-width:5.75rem}.action-cluster>button.is-accent{color:var(--color-accent-hover)}.action-cluster>button.is-accent:hover:not(:disabled){background:var(--color-accent-soft)}.action-cluster>button.is-danger{color:var(--color-bad)}.action-cluster>button.is-danger:hover:not(:disabled){background:var(--color-bad-soft)}.row-link{color:inherit;text-decoration:none;font-weight:600}.row-link:hover{color:var(--color-accent-hover);text-decoration:underline}tbody tr.is-clickable{cursor:pointer}tbody tr.is-clickable:hover .row-link,tbody tr.is-clickable:focus-within .row-link{color:var(--color-accent-hover);text-decoration:underline}.stat-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(11rem,100%),1fr));gap:1px;margin-bottom:var(--space-md);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-line);box-shadow:var(--shadow-1);overflow:hidden}.stat{padding:var(--space-sm) var(--space-md);background:var(--color-surface);display:flex;flex-direction:column;gap:2px;min-width:0}.stat-label{font-size:var(--text-xs);color:var(--color-faint);letter-spacing:var(--tracking-label)}.stat-value{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;line-height:1.15;letter-spacing:var(--tracking-tight)}.stat-value.is-warn{color:var(--color-warn)}.stat-value.is-ok{color:var(--color-ok)}.stat-note{font-size:var(--text-xs);color:var(--color-muted)}.aside-list{list-style:none;margin:var(--space-2xs) 0 0;padding:0;display:grid;gap:var(--space-3xs)}.aside-list li{display:flex;justify-content:space-between;gap:var(--space-2xs);font-size:var(--text-xs);padding:var(--space-3xs) 0;border-bottom:1px solid var(--color-line)}.aside-list li:last-child{border-bottom:0}.aside-list dt,.aside-list span:first-child{color:var(--color-muted)}.aside-list strong{font-weight:600}.load-more{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-top:var(--space-sm);font-size:var(--text-sm)}.skeleton{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-sm);display:flex;flex-direction:column;gap:var(--space-2xs)}.skeleton-row{height:2rem;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--color-surface-2) 25%,var(--color-surface-sunk) 37%,var(--color-surface-2) 63%);background-size:400% 100%;animation:shimmer 1.5s var(--ease-in-out) infinite}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media(prefers-reduced-motion:reduce){.skeleton-row{animation:none}}.empty-state,.error-state,.placeholder{border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-xl) var(--space-lg);text-align:center;background:var(--color-surface);display:flex;flex-direction:column;align-items:center;gap:var(--space-2xs);box-shadow:var(--shadow-1)}.empty-state h3,.error-state h3,.placeholder h2{font-size:var(--text-md)}.empty-state p,.error-state p,.placeholder p{color:var(--color-muted);max-width:46ch;font-size:var(--text-sm)}.error-state{border-color:var(--color-bad-line);background:var(--color-bad-soft)}.not-found-state{position:relative;isolation:isolate;overflow:hidden;min-height:18rem;border:1px solid var(--color-accent-line);border-top:3px solid var(--color-accent);border-radius:var(--radius-lg);padding:var(--space-2xl) var(--space-lg);background:linear-gradient(145deg,var(--color-surface),var(--color-accent-soft));box-shadow:var(--shadow-2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xs);text-align:center}.not-found-state:before{content:"";position:absolute;z-index:-1;width:16rem;height:16rem;border:1px solid var(--color-accent-line);border-radius:50%;opacity:.34;transform:translate(8rem,-7rem)}.not-found-code{display:inline-flex;align-items:center;min-height:2rem;padding:0 var(--space-sm);border:1px solid var(--color-accent-line);border-radius:var(--radius-pill);color:var(--color-accent);background:var(--color-surface);font-family:var(--font-outlier);font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;box-shadow:var(--shadow-1)}.not-found-state h3{font-size:var(--text-lg)}.not-found-state p{max-width:38rem;color:var(--color-muted);font-size:var(--text-sm)}.not-found-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2xs);margin-top:var(--space-xs)}.banner{display:flex;gap:var(--space-sm);justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg);margin-bottom:var(--space-sm);border:1px solid var(--color-line);background:var(--color-surface);box-shadow:var(--shadow-1);flex-wrap:wrap}.banner p{color:var(--color-ink-2);margin-top:2px;max-width:72ch;font-size:var(--text-sm)}.banner strong{font-weight:600}.banner-attention{background:var(--color-warn-soft);border-color:var(--color-warn-line)}.banner-positive{background:var(--color-ok-soft);border-color:var(--color-ok-line)}.callout{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-accent-line);background:var(--color-accent-soft);border-radius:var(--radius-lg);margin-bottom:var(--space-md);max-width:78ch;font-size:var(--text-sm);line-height:1.6}.callout strong{font-weight:600}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(16rem,100%),1fr));gap:var(--space-2xs);margin-bottom:var(--space-md)}.ready-card{display:block;padding:var(--space-sm);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);text-decoration:none;color:inherit;box-shadow:var(--shadow-1);transition:border-color var(--dur-short) var(--ease-out),box-shadow var(--dur-short) var(--ease-out),transform var(--dur-short) var(--ease-out)}.ready-card:hover{border-color:var(--color-line-strong);box-shadow:var(--shadow-2);transform:translateY(-1px)}.ready-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2xs);margin-bottom:var(--space-3xs)}.ready-card h3{font-size:var(--text-sm)}.ready-card p{color:var(--color-muted);font-size:var(--text-xs)}.meta-strip{display:flex;flex-wrap:wrap;gap:var(--space-lg);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1)}.meta-label{font-size:var(--text-xs);color:var(--color-faint);letter-spacing:var(--tracking-label)}.meta-value{font-weight:600;font-size:var(--text-sm);margin-top:2px}.form-section{padding:var(--space-md);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1);margin-bottom:var(--space-sm)}.form-section h2{margin-bottom:var(--space-sm)}.form-section-relaxed{padding:var(--space-lg)}.form-section-relaxed>.grid-2{margin-bottom:var(--space-2xs)}.form-section-relaxed>.check{margin-bottom:var(--space-sm)}.section-note{font-size:var(--text-xs);color:var(--color-faint);margin-top:var(--space-2xs)}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(16rem,100%),1fr));gap:var(--space-3xs) var(--space-md)}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr));gap:var(--space-3xs) var(--space-md)}.grid-compact{max-width:48rem}.grid-compact select{max-width:none}.form-section-uniform-controls .grid-2,.form-section-uniform-controls .grid-3{grid-template-columns:repeat(auto-fit,minmax(min(16rem,100%),1fr))}.form-section-uniform-controls .field>select,.form-section-uniform-controls .field>.select,.form-section-uniform-controls .field>.file-picker,.form-section-uniform-controls .field>.multiselect{width:100%;max-width:none}.form-section-uniform-controls .field>input:not([type=checkbox]):not([type=radio]):not([type=file]),.form-section-uniform-controls .field>select,.form-section-uniform-controls .field>.select>.select-trigger,.form-section-uniform-controls .field>.file-picker>.file-picker-control{min-height:var(--control-h)}.table-wrap+.form-section,.data-table+.form-section{margin-top:var(--space-sm)}.field{margin-bottom:var(--space-sm);min-width:0}.field label,.field-label{display:block;font-size:var(--text-sm);font-weight:500;margin-bottom:var(--space-3xs);color:var(--color-ink-2)}.field-hint{font-size:var(--text-xs);color:var(--color-faint);margin-top:var(--space-3xs)}.field-error{font-size:var(--text-xs);color:var(--color-bad);margin-top:var(--space-3xs);font-weight:500}.field-invalid input,.field-invalid select,.field-invalid textarea{border-color:var(--color-bad)}.form-summary{padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-sm);border:1px solid var(--color-bad-line);background:var(--color-bad-soft);color:var(--color-bad);font-size:var(--text-sm);font-weight:500;margin-bottom:var(--space-sm)}.check{display:flex;align-items:center;gap:var(--space-2xs);font-weight:400;font-size:var(--text-sm)}.check input{width:auto;min-height:unset;accent-color:var(--color-accent)}.preview-box{padding:var(--space-sm);border-radius:var(--radius-md);background:var(--color-surface-sunk);border:1px solid var(--color-line);margin-bottom:var(--space-sm)}.preview-label{font-size:var(--text-xs);color:var(--color-faint);letter-spacing:var(--tracking-label)}.preview-value{font-family:var(--font-outlier);font-size:var(--text-xl);font-weight:500;margin-top:var(--space-3xs);letter-spacing:0}.scrim{position:fixed;inset:0;background:var(--color-scrim);z-index:var(--z-overlay);display:flex;justify-content:flex-end}.scrim-center{align-items:center;justify-content:center;padding:var(--space-sm)}.drawer{width:min(36rem,100%);height:100%;background:var(--color-surface-2);display:flex;flex-direction:column;box-shadow:var(--shadow-3)}.drawer.drawer-narrow{width:min(26rem,100%)}.drawer-narrow .drawer-head h2{font-size:var(--text-lg);font-weight:700}.filter-radio-group{display:flex;flex-direction:column;gap:var(--space-2xs);max-height:11rem;overflow-y:auto;padding-right:var(--space-3xs);padding-left:var(--space-sm)}.drawer-narrow .field-label{font-size:var(--text-base);font-weight:700}.drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-2xs);padding:var(--space-md);background:var(--color-surface);border-bottom:1px solid var(--color-line);box-shadow:inset 0 3px 0 var(--color-accent)}.drawer-head h2{font-size:var(--text-md)}.drawer-head p{color:var(--color-muted);font-size:var(--text-sm);margin-top:3px;max-width:42ch}.drawer-body{padding:var(--space-md);overflow-y:auto;flex:1}.document-preview{display:grid;min-height:min(65vh,42rem);overflow:hidden;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-md)}.document-preview iframe{width:100%;min-height:min(65vh,42rem);border:0;background:var(--color-surface)}.document-preview img{display:block;width:auto;max-width:100%;height:auto;max-height:min(65vh,42rem);margin:auto;object-fit:contain}.drawer-group{padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);margin-bottom:var(--space-sm)}.drawer-group>.field:last-child{margin-bottom:0}.drawer-group-title{font-size:var(--text-xs);font-weight:600;color:var(--color-faint);letter-spacing:var(--tracking-label);margin-bottom:var(--space-2xs)}.drawer-foot{display:flex;justify-content:flex-end;gap:var(--space-2xs);padding:var(--space-sm) var(--space-md);border-top:1px solid var(--color-line);background:var(--color-surface);box-shadow:0 -2px 8px #1422260a}.dialog{width:min(30rem,100%);background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-3)}.dialog h2{margin-bottom:var(--space-2xs)}.dialog>p{color:var(--color-ink-2);margin-bottom:var(--space-sm);font-size:var(--text-sm)}.dialog-actions{display:flex;justify-content:flex-end;gap:var(--space-2xs);margin-top:var(--space-md)}.toast{position:fixed;bottom:var(--space-md);left:50%;transform:translate(-50%);z-index:var(--z-modal);display:flex;align-items:center;gap:var(--space-2xs);padding:var(--space-2xs) var(--space-md);border-radius:var(--radius-pill);background:var(--color-ink);color:var(--color-accent-ink);box-shadow:var(--shadow-3);font-size:var(--text-sm);font-weight:500;max-width:calc(100vw - var(--space-lg))}.toast-top{top:var(--space-md);bottom:auto}.toast-error{background:var(--color-bad)}.toast-dismiss{flex:0 0 auto;color:inherit}.toast-dismiss:hover:not(:disabled){background:color-mix(in oklch,currentColor 16%,transparent);color:inherit}.action-row{display:flex;gap:var(--space-2xs);flex-wrap:wrap;justify-content:flex-end}.action-row-section{margin-top:var(--space-sm)}.tabs{display:flex;gap:var(--space-3xs);overflow-x:auto;border-bottom:1px solid var(--color-line);margin-bottom:var(--space-md);scrollbar-width:thin}.tab{display:inline-flex;align-items:center;gap:var(--space-3xs);padding:var(--space-2xs) var(--space-xs);border:0;border-bottom:2px solid transparent;background:transparent;font:inherit;font-size:var(--text-sm);font-weight:500;color:var(--color-muted);cursor:pointer;white-space:nowrap;transition:color var(--dur-micro) var(--ease-out)}.tab:hover{color:var(--color-ink)}.tab.is-current{color:var(--color-accent-hover);border-bottom-color:var(--color-accent);font-weight:600}.lock{display:inline-flex;align-items:center;font-size:var(--text-xs)}.tab-panel{min-height:12rem}.record{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1);overflow:hidden;container-type:inline-size;container-name:sheet}.record-block+.record-block{border-top:1px solid var(--color-line)}.record-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-sm);flex-wrap:wrap;padding:var(--space-2xs) var(--space-md);background:var(--color-surface-2);border-bottom:1px solid var(--color-line)}.record-head h3{font-size:var(--text-sm);font-weight:600;color:var(--color-ink);letter-spacing:var(--tracking-label)}.record-head p{font-size:var(--text-xs);color:var(--color-muted)}.record-rows{display:grid;grid-template-columns:minmax(0,1fr);column-gap:var(--space-xl);padding:var(--space-2xs) var(--space-md);margin:0}@container sheet (min-width: 52rem){.record-rows{grid-template-columns:repeat(2,minmax(0,1fr))}}@container sheet (min-width: 78rem){.record-rows{grid-template-columns:repeat(3,minmax(0,1fr))}}.record-row{display:grid;grid-template-columns:minmax(0,11rem) minmax(0,1fr);gap:var(--space-sm);align-items:baseline;padding:var(--space-3xs) 0;min-height:2rem}.record-row dt{font-size:var(--text-sm);font-weight:500;color:var(--color-muted)}.record-row dd{margin:0;font-size:var(--text-sm);font-weight:500;color:var(--color-ink);overflow-wrap:anywhere}.record-row dd.mono{font-weight:600}.empty-value{display:inline-flex;width:100%;align-items:center;justify-content:flex-start;text-align:left;color:var(--color-muted);font-family:var(--font-body);font-size:inherit;font-weight:500;line-height:inherit}.record-row-full{grid-column:1 / -1}@container sheet (max-width: 34rem){.record-row{grid-template-columns:1fr;gap:0}.record-head,.record-rows{padding-inline:var(--space-sm)}}.skill-list{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-3xs);margin:0;padding:0}.skill-chip{display:inline-flex;align-items:center;gap:var(--space-3xs);font-size:var(--text-xs);padding:2px 8px;border-radius:var(--radius-pill);background:var(--color-surface-sunk);border:1px solid var(--color-line);color:var(--color-ink-2)}.skill-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;padding:0;border:none;border-radius:var(--radius-pill);background:none;color:var(--color-faint);font-size:var(--text-sm);line-height:1;cursor:pointer}.skill-chip-remove .icon{width:var(--space-xs);height:var(--space-xs)}.skill-chip-remove:hover{background:var(--color-line);color:var(--color-ink)}.multiselect{position:relative;display:flex;flex-direction:column;gap:var(--space-2xs)}.multiselect-add{align-self:flex-start;font:inherit;font-size:var(--text-sm);color:var(--color-accent);background:var(--color-accent-soft);border:1px dashed var(--color-accent-line);border-radius:var(--radius-pill);padding:var(--space-3xs) var(--space-sm);cursor:pointer;transition:background var(--dur-micro) var(--ease-out)}.multiselect-add:hover:not(:disabled){background:var(--color-accent-line)}.multiselect-add:disabled{color:var(--color-faint);background:var(--color-surface-sunk);border-color:var(--color-line);cursor:not-allowed}.multiselect-popover{position:absolute;top:calc(100% + var(--space-3xs));left:0;z-index:var(--z-overlay);width:min(20rem,100%);background:var(--color-surface);border:1px solid var(--color-focus);border-radius:var(--radius-sm);box-shadow:var(--shadow-2);overflow:hidden}.multiselect-search{width:100%;border:none;border-bottom:1px solid var(--color-line);border-radius:0;box-shadow:none}.multiselect-search:focus-visible{outline:none;border-bottom-color:var(--color-focus)}.select-popover-list{list-style:none;margin:0;padding:var(--space-3xs) 0;max-height:14rem;overflow-y:auto}.select-option-empty{padding:var(--space-2xs) var(--space-xs);font-size:var(--text-sm);color:var(--color-faint)}.facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(20rem,100%),1fr));margin:0;border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1);overflow:hidden}.fact{padding:var(--space-2xs) var(--space-sm);border-bottom:1px solid var(--color-line);min-width:0}.fact dt{font-size:var(--text-sm);font-weight:500;color:var(--color-muted)}.fact dd{display:flex;align-items:center;min-height:var(--control-h-sm);margin:0;font-weight:500;font-size:var(--text-sm);color:var(--color-ink);overflow-wrap:anywhere}.fact dd.mono{font-weight:500}.protected-value{display:inline-flex;align-items:center;gap:var(--space-2xs);min-width:0}.protected-eye{width:var(--control-hit);height:var(--control-hit);flex:0 0 auto;border:0;background:transparent;color:var(--color-accent)}.protected-eye:hover:not(:disabled){background:transparent;color:var(--color-accent-hover)}.eye-glyph{width:1rem;height:1rem}.field-password{position:relative;display:flex}.field-password input{flex:1;padding-right:2.5rem}.field-password-toggle{position:absolute;top:50%;right:.25rem;transform:translateY(-50%);width:var(--control-hit);height:var(--control-hit);flex:0 0 auto;border:0;background:transparent;color:var(--color-ink-muted)}.field-password-toggle:hover:not(:disabled){background:transparent;color:var(--color-ink)}.field-password-toggle:active:not(:disabled){transform:translateY(-50%)}.protected-note{display:flex;align-items:center;gap:var(--space-2xs);flex-wrap:wrap;padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-md);border:1px solid var(--color-info-line);background:var(--color-info-soft);margin-bottom:var(--space-sm)}.protected-note p{font-size:var(--text-xs);color:var(--color-ink-2);max-width:62ch}.history{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-sm)}.history-item{--history-accent: var(--color-accent);--history-tint: var(--color-accent-soft);--history-head-line: var(--color-accent-line);--history-table-head: var(--color-accent-soft);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-line);border-left-width:2px;border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1)}.history-item.is-correction,.history-item.is-change,.history-item.is-period{border-left-color:var(--color-accent)}.history-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;column-gap:var(--space-2xs);row-gap:var(--space-3xs);margin:calc(-1 * var(--space-sm)) calc(-1 * var(--space-md)) var(--space-sm);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--history-head-line);background:var(--history-tint);border-radius:calc(var(--radius-lg) - 1px) calc(var(--radius-lg) - 1px) 0 0}.history-head>.chip{grid-row:1 / span 2}.history-head strong{min-width:0;font-size:var(--text-base);font-weight:600;line-height:1.35;overflow-wrap:anywhere}.history-head .muted{min-width:0;font-size:var(--text-xs);line-height:1.45;overflow-wrap:anywhere}.history-head strong{color:var(--color-ink)}.history-meta{display:flex;align-items:baseline;gap:var(--space-2xs) var(--space-sm);flex-wrap:wrap;padding-top:var(--space-2xs);margin-top:var(--space-2xs);border-top:1px solid var(--color-line);font-size:var(--text-xs);color:var(--color-faint)}.history-meta strong{color:var(--color-muted);font-weight:600}.history-changes{min-width:0;margin-top:var(--space-sm);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface-2);overflow:hidden}.history-change-columns,.history-change-row{display:grid;grid-template-columns:minmax(8rem,.65fr) minmax(0,1fr) minmax(0,1fr);column-gap:var(--space-sm)}.history-change-columns{padding:var(--space-2xs) var(--space-sm);border-bottom:1px solid var(--color-line);background:var(--history-table-head);color:var(--history-accent);font-size:var(--text-xs);font-weight:600}.history-change-columns span{display:flex;align-items:center;gap:var(--space-3xs)}.history-change-columns span:nth-child(2):before,.history-change-columns span:nth-child(3):before{content:"";width:.45rem;height:.45rem;flex:0 0 auto;border-radius:var(--radius-pill)}.history-change-columns span:nth-child(2):before{background:var(--color-bad);box-shadow:0 0 0 2px var(--color-bad-soft)}.history-change-columns span:nth-child(3):before{background:var(--color-ok);box-shadow:0 0 0 2px var(--color-ok-soft)}.history-change-row{min-width:0;align-items:start;padding:var(--space-2xs) var(--space-sm)}.history-change-row+.history-change-row{border-top:1px solid var(--color-line)}.history-change-field,.history-change-value,.history-change-detail{min-width:0;overflow-wrap:anywhere}.history-change-field{color:var(--color-muted);font-size:var(--text-sm);font-weight:500}.history-change-value{padding:var(--space-3xs) var(--space-2xs);border:1px solid transparent;border-radius:var(--radius-xs);color:var(--color-ink-2);font-size:var(--text-sm);line-height:1.5}.history-change-row:not(.is-comparison) .history-change-field{color:var(--history-accent);font-weight:600}.history-change-row:not(.is-comparison) .history-change-detail{padding:var(--space-2xs) var(--space-xs);border:1px solid var(--history-head-line);border-left:3px solid var(--history-accent);border-radius:var(--radius-xs);background:var(--history-tint)}.history-change-value.is-previous{color:var(--color-bad);background:var(--color-bad-soft);border-color:var(--color-bad-line)}.history-change-value.is-current{color:var(--color-ok);background:var(--color-ok-soft);border-color:var(--color-ok-line);font-weight:600}.history-change-detail{grid-column:2 / -1;display:flex;flex-direction:column;gap:var(--space-3xs);color:var(--color-ink);font-size:var(--text-sm);line-height:1.5}.history-change-detail strong{align-self:flex-start;padding:1px var(--space-2xs);border-radius:var(--radius-pill);background:var(--history-tint);color:var(--history-accent);font-weight:600}.history-change-note{color:var(--color-muted);font-size:var(--text-xs)}.history-change-mobile-label{display:none}.chip{font-size:var(--text-2xs);font-weight:600;padding:2px 8px;border-radius:var(--radius-pill);border:1px solid transparent;white-space:nowrap;letter-spacing:var(--tracking-label)}.chip-correction{background:var(--color-surface-sunk);border-color:var(--color-line-strong);color:var(--color-muted)}.chip-change{background:var(--color-accent-soft);border-color:var(--color-accent-line);color:var(--color-accent-hover)}.chip-period{background:var(--color-warn-soft);border-color:var(--color-warn-line);color:var(--color-warn)}.history-item .chip{background:var(--color-accent-soft);border-color:var(--color-accent-line);color:var(--color-accent-hover)}.class-note{padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-md);border:1px solid var(--color-line);margin-bottom:var(--space-md);font-size:var(--text-sm);line-height:1.6}.class-note strong{font-weight:600}.class-note-correction{background:var(--color-surface-sunk);border-color:var(--color-line-strong)}.class-note-change{background:var(--color-accent-soft);border-color:var(--color-accent-line)}.class-note-period{background:var(--color-warn-soft);border-color:var(--color-warn-line)}.diff-box,.period-preview{padding:var(--space-sm);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface-2);margin-bottom:var(--space-sm)}.diff-line{display:flex;align-items:baseline;gap:var(--space-2xs);flex-wrap:wrap;font-size:var(--text-sm);margin-top:var(--space-3xs)}.diff-line>span:first-child{color:var(--color-faint);min-width:9rem;font-size:var(--text-xs)}.diff-old,.diff-new{padding:1px var(--space-3xs);border-radius:var(--radius-xs);border:1px solid transparent}.diff-old{text-decoration:line-through;text-decoration-color:color-mix(in oklch,var(--color-bad) 45%,transparent);color:var(--color-bad);background:var(--color-bad-soft);border-color:color-mix(in oklch,var(--color-bad-line) 50%,transparent)}.diff-new{font-weight:600;color:var(--color-ok);background:var(--color-ok-soft);border-color:color-mix(in oklch,var(--color-ok-line) 50%,transparent)}.diff-line>span[aria-hidden=true]{color:var(--color-faint)}.period-date{margin-top:var(--space-2xs);font-size:var(--text-sm)}.period-date strong{font-weight:600}.period-note{margin-top:var(--space-3xs);font-size:var(--text-xs);color:var(--color-muted)}.stepper{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr));gap:var(--space-3xs);list-style:none;margin:0 0 var(--space-md);padding:0}.stepper li{min-width:0}.step{display:flex;align-items:flex-start;gap:var(--space-2xs);width:100%;height:100%;padding:var(--space-2xs) var(--space-xs);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface);font:inherit;font-size:var(--text-xs);font-weight:500;text-align:left;color:var(--color-muted);cursor:pointer;white-space:normal;transition:border-color var(--dur-micro) var(--ease-out),background-color var(--dur-micro) var(--ease-out)}.step>span:last-child{min-width:0;overflow-wrap:anywhere}.step:hover{border-color:var(--color-line-strong)}.step.is-current{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-hover);font-weight:600}.step.is-done{color:var(--color-ok);border-color:var(--color-ok-line)}.step-index{display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:var(--radius-pill);background:var(--color-surface-sunk);font-family:var(--font-outlier);font-weight:500;font-size:var(--text-2xs);flex-shrink:0}.step.is-current .step-index{background:var(--color-accent);color:var(--color-accent-ink)}.step.is-done .step-index{background:var(--color-ok-soft);color:var(--color-ok)}.wizard-actions{display:flex;justify-content:space-between;gap:var(--space-2xs);flex-wrap:wrap;position:sticky;bottom:0;padding:var(--space-sm) 0;background:linear-gradient(to top,var(--color-canvas) 65%,transparent)}.wizard-actions-right{display:flex;gap:var(--space-2xs)}.subhead{font-size:var(--text-sm);font-weight:600;margin:var(--space-md) 0 var(--space-3xs)}.inline-note{font-size:var(--text-sm);color:var(--color-muted);margin-bottom:var(--space-sm);max-width:72ch}.check-list{list-style:none;margin:0 0 var(--space-sm);padding:0;display:grid;gap:var(--space-3xs)}.check-list li{display:flex;gap:var(--space-2xs);align-items:center;font-size:var(--text-sm)}.check-list .is-ok{color:var(--color-ok)}.check-list .is-missing{color:var(--color-warn);font-weight:500}.block-title{font-size:var(--text-sm);font-weight:600;color:var(--color-muted);letter-spacing:var(--tracking-label);margin-bottom:var(--space-2xs)}.block-title:not(:first-child){margin-top:var(--space-lg)}.queue{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1);overflow:hidden}.queue-row{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-line);text-decoration:none;color:inherit;transition:background-color var(--dur-micro) var(--ease-out)}.queue-row:last-child{border-bottom:0}.queue-row:hover{background:var(--color-surface-2)}.queue-count{display:grid;place-items:center;min-width:3rem;height:3rem;flex-shrink:0;border-radius:var(--radius-md);background:var(--color-surface-sunk);font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;letter-spacing:var(--tracking-tight)}.queue-count.is-warn{background:var(--color-warn-soft);color:var(--color-warn)}.queue-count.is-bad{background:var(--color-bad-soft);color:var(--color-bad)}.queue-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.queue-text strong{font-size:var(--text-sm);font-weight:600}.queue-text small{font-size:var(--text-xs);color:var(--color-muted)}.queue-go{display:inline-flex;color:var(--color-faint);flex-shrink:0}.feed{list-style:none;margin:0;padding:0;border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1)}.feed li{display:flex;gap:var(--space-2xs);align-items:flex-start;padding:var(--space-2xs) var(--space-md);border-bottom:1px solid var(--color-line)}.feed li:last-child{border-bottom:0}.feed-dot{width:6px;height:6px;border-radius:var(--radius-pill);background:var(--color-accent-line);margin-top:.55rem;flex-shrink:0}.feed-body{display:flex;flex-direction:column;gap:1px;min-width:0}.feed-text{font-size:var(--text-sm)}.feed-meta{font-size:var(--text-xs);color:var(--color-faint)}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(13rem,100%),1fr));gap:var(--space-sm);margin-bottom:var(--space-lg)}.kpi{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon label" "icon value" "foot foot";align-items:center;column-gap:var(--space-2xs);row-gap:1px;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1);text-decoration:none;color:inherit;transition:box-shadow var(--dur-micro) var(--ease-out),border-color var(--dur-micro) var(--ease-out)}.kpi:hover{box-shadow:var(--shadow-2);border-color:var(--color-line-strong)}.kpi-icon{grid-area:icon;display:grid;place-items:center;width:2.5rem;height:2.5rem;margin-right:var(--space-3xs);border-radius:var(--radius-md);background:var(--color-surface-sunk);color:var(--color-muted)}.kpi-icon svg{width:1.25rem;height:1.25rem}.kpi-icon.is-accent{background:var(--color-accent-soft);color:var(--color-accent)}.kpi-icon.is-warn{background:var(--color-warn-soft);color:var(--color-warn)}.kpi-icon.is-bad{background:var(--color-bad-soft);color:var(--color-bad)}.kpi-label{grid-area:label;font-size:var(--text-xs);color:var(--color-muted);letter-spacing:var(--tracking-label);align-self:end}.kpi-value{grid-area:value;font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;line-height:1.05;letter-spacing:var(--tracking-display);align-self:start}.kpi-foot{grid-area:foot;display:flex;align-items:center;gap:var(--space-3xs);margin-top:var(--space-2xs);padding-top:var(--space-2xs);border-top:1px solid var(--color-line);font-size:var(--text-xs);color:var(--color-muted)}.chip{display:inline-block;padding:1px var(--space-3xs);border-radius:var(--radius-xs);background:var(--color-surface-sunk);color:var(--color-ink-2);font-size:var(--text-2xs);font-weight:600;font-variant-numeric:tabular-nums}.chip.is-ok{background:var(--color-ok-soft);color:var(--color-ok)}.chip.is-warn{background:var(--color-warn-soft);color:var(--color-warn)}.chip.is-bad{background:var(--color-bad-soft);color:var(--color-bad)}.card{display:flex;flex-direction:column;height:100%;min-width:0;border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1);overflow:hidden;transition:box-shadow var(--dur-micro) var(--ease-out),border-color var(--dur-micro) var(--ease-out)}.card:hover{box-shadow:var(--shadow-2);border-color:var(--color-line-strong)}.card-head{display:flex;align-items:baseline;gap:var(--space-2xs);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-line)}.card-title{font-size:var(--text-sm);font-weight:600;letter-spacing:var(--tracking-tight)}.card-note{font-size:var(--text-xs);color:var(--color-faint)}.card-act{margin-left:auto}.card-action{font-size:var(--text-xs);font-weight:600;color:var(--color-accent);text-decoration:none;white-space:nowrap}.card-action:hover{color:var(--color-accent-hover);text-decoration:underline}.card-body{padding:var(--space-md);flex:1;min-width:0}.card-body.is-flush{padding:0}.card-body.is-flush>.feed,.card-body.is-flush>.factlist,.card-body.is-flush>.queue,.card-body.is-flush>.table-wrap{border:0;border-radius:0;box-shadow:none}.dash-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--space-md)}.card.is-wide{grid-column:1}.card.is-full{grid-column:1 / -1}.dash-stack{display:flex;flex-direction:column;gap:var(--space-md);height:100%}.dash-stack>.card{height:auto;flex:none}.dash-stack>.card:last-child{flex:1 1 auto;min-height:0}@media(max-width:73rem){.dash-grid{grid-template-columns:minmax(0,1fr)}.card.is-wide,.card.is-full{grid-column:auto}}.queue-kind{display:grid;place-items:center;min-width:4.25rem;padding:var(--space-3xs) var(--space-2xs);flex-shrink:0;border-radius:var(--radius-sm);background:var(--color-surface-sunk);color:var(--color-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:var(--tracking-label)}.queue-kind.is-warn{background:var(--color-warn-soft);color:var(--color-warn)}.queue-kind.is-critical{background:var(--color-bad-soft);color:var(--color-bad)}.queue-marker{flex-shrink:0;padding:var(--space-3xs) var(--space-2xs);border-radius:var(--radius-pill);font-size:var(--text-2xs);font-weight:500;background:var(--color-surface-sunk);color:var(--color-muted)}.queue-marker.is-warn{background:var(--color-warn-soft);color:var(--color-warn)}.queue-marker.is-critical{background:var(--color-bad-soft);color:var(--color-bad)}.queue-more{background:var(--color-surface-2)}.queue-more strong{font-weight:500;color:var(--color-ink-2)}.panel{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1);overflow:hidden}.workforce-head{display:flex;flex-wrap:wrap;gap:var(--space-md);align-items:center;justify-content:space-between;padding:var(--space-md);border-bottom:1px solid var(--color-line)}.stat-hero{display:flex;flex-direction:column;gap:2px;min-width:0}.stat-hero-value{font-family:var(--font-display);font-size:clamp(2.5rem,4vw,3.25rem);font-weight:600;line-height:1;letter-spacing:var(--tracking-display)}.stat-side{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3xs);min-width:11rem}.stat-side li{display:flex;justify-content:space-between;gap:var(--space-md);font-size:var(--text-sm);padding:var(--space-3xs) 0;border-bottom:1px solid var(--color-line)}.stat-side li:last-child{border-bottom:0}.stat-side span,.stat-side .row-link{color:var(--color-muted)}.stat-side strong{font-weight:600;font-variant-numeric:tabular-nums}.stat-side strong.is-warn{color:var(--color-warn)}.recharts-wrapper{font-family:var(--font-body)}.recharts-wrapper:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.recharts-cartesian-axis-line,.recharts-cartesian-axis-tick-line{stroke:var(--color-line)}.recharts-legend-item-text{color:var(--color-ink-2)!important;font-size:var(--text-xs)}.recharts-default-legend{margin-bottom:var(--space-2xs)!important}.ring{display:flex;flex-direction:column;gap:var(--space-sm);height:100%}.ring-plot{position:relative}.ring-centre{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;pointer-events:none}.ring-centre strong{font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;line-height:1;letter-spacing:var(--tracking-tight)}.ring-centre small{font-size:var(--text-xs);color:var(--color-faint)}.ring-key{list-style:none;margin:0;padding:0;display:grid;gap:2px}.ring-key li{display:flex;align-items:center;gap:var(--space-3xs);padding:var(--space-3xs) 0;font-size:var(--text-sm);border-top:1px solid var(--color-line)}.ring-swatch{width:10px;height:10px;border-radius:3px;flex-shrink:0}.ring-name{flex:1;color:var(--color-ink-2)}.ring-key strong{font-weight:600;font-variant-numeric:tabular-nums}.ring-key small{min-width:2.75rem;text-align:right;color:var(--color-faint);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.charttip{min-width:9rem;padding:var(--space-2xs) var(--space-sm);border:1px solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-2)}.charttip-head{font-size:var(--text-xs);font-weight:600;color:var(--color-ink);margin-bottom:var(--space-3xs)}.charttip-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}.charttip-list li{display:flex;align-items:center;gap:var(--space-3xs);font-size:var(--text-xs);color:var(--color-muted)}.charttip-dot{width:8px;height:8px;border-radius:3px;flex-shrink:0}.charttip-name{flex:1}.charttip-list strong{color:var(--color-ink);font-variant-numeric:tabular-nums}.factlist{list-style:none;margin:0;padding:0;border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1)}.factlist li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2xs);padding:var(--space-2xs) var(--space-md);border-bottom:1px solid var(--color-line)}.factlist li:last-child{border-bottom:0}.factlist-label{font-size:var(--text-sm);color:var(--color-ink-2);min-width:0}.factlist-value{display:flex;flex-direction:column;align-items:flex-end;font-size:var(--text-sm);font-weight:600;font-variant-numeric:tabular-nums;flex-shrink:0}.factlist-value small{font-size:var(--text-xs);font-weight:400;color:var(--color-faint)}.factlist-value small.is-bad{color:var(--color-bad)}.side-empty{font-size:var(--text-sm);color:var(--color-muted);padding:var(--space-sm) var(--space-md)}.duelist{list-style:none;margin:0;padding:0}.duelist li{border-bottom:1px solid var(--color-line)}.duelist li:last-child{border-bottom:0}.duelist-row{display:flex;align-items:center;gap:var(--space-2xs);padding:var(--space-2xs) var(--space-md);text-decoration:none;color:inherit;transition:background-color var(--dur-micro) var(--ease-out)}.duelist-row:hover{background:var(--color-surface-2)}.duelist-body{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.duelist-name{font-size:var(--text-sm);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.duelist-meta{font-size:var(--text-xs);color:var(--color-faint)}.duelist-when{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0;font-size:var(--text-sm);font-weight:600;font-variant-numeric:tabular-nums}.duelist-when small{font-size:var(--text-xs);font-weight:400;color:var(--color-faint)}.duelist-when.is-bad,.duelist-when.is-bad small{color:var(--color-bad)}.queue-empty{padding:var(--space-md)}.queue-empty strong{font-size:var(--text-sm);font-weight:600}.queue-empty p{font-size:var(--text-xs);color:var(--color-muted);margin-top:2px}.seg{display:inline-flex;border:1px solid var(--color-line-strong);border-radius:var(--radius-sm);overflow:hidden;background:var(--color-surface);box-shadow:var(--shadow-1)}.seg-btn{border:0;background:transparent;font:inherit;font-size:var(--text-sm);font-weight:500;color:var(--color-muted);padding:0 var(--space-sm);min-height:var(--control-h);cursor:pointer;white-space:nowrap;transition:background-color var(--dur-micro) var(--ease-out),color var(--dur-micro) var(--ease-out)}.seg-btn+.seg-btn{border-left:1px solid var(--color-line)}.seg-btn:hover{background:var(--color-surface-2);color:var(--color-ink)}.seg-btn.is-on{background:var(--color-accent-soft);color:var(--color-accent-hover);font-weight:600}.request-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2xs)}.request{padding:var(--space-md);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1)}.request.is-emergency{border-color:var(--color-warn-line)}.request-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2xs);flex-wrap:wrap;margin-bottom:var(--space-2xs)}.request-who{display:flex;align-items:center;gap:var(--space-2xs);flex-wrap:wrap}.request-who strong{font-size:var(--text-base);font-weight:600}.request-status-row{display:flex;align-items:center;gap:var(--space-2xs);flex-wrap:wrap}.request-facts{display:flex;flex-wrap:wrap;gap:var(--space-md);padding:var(--space-2xs) 0;border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line);font-size:var(--text-sm)}.request-facts>span{display:flex;flex-direction:column;gap:1px}.fact-k{font-size:var(--text-xs);color:var(--color-faint)}.window-note{margin-top:var(--space-2xs);padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-sm);background:var(--color-warn-soft);border:1px solid var(--color-warn-line);font-size:var(--text-xs);color:var(--color-ink-2);line-height:1.55}.window-note.is-urgent{background:var(--color-bad-soft);border-color:var(--color-bad-line)}.request-detail{margin-top:var(--space-2xs)}.request-reason{font-size:var(--text-sm);color:var(--color-ink-2);padding:var(--space-2xs) var(--space-sm);background:var(--color-surface-sunk);border-radius:var(--radius-sm);margin-bottom:var(--space-2xs)}.request-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2xs);flex-wrap:wrap;margin-top:var(--space-sm)}.decided-note{display:inline-flex;align-items:center;gap:var(--space-3xs);font-size:var(--text-xs);color:var(--color-muted)}.row-actions>.decided-note{width:100%;justify-content:center}.validation-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3xs)}.validation{display:flex;align-items:center;gap:var(--space-2xs);padding:var(--space-2xs) var(--space-sm);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface)}.validation-warning{border-left:3px solid var(--color-warn-line)}.validation-error{border-left:3px solid var(--color-bad-line)}.validation-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.validation-body strong{font-size:var(--text-sm);font-weight:600}.validation-body span{font-size:var(--text-xs);color:var(--color-muted)}@media(min-width:64.0625rem){:root{--rail-w: clamp(15rem, 7rem + 10vw, 17rem)}.main{padding-inline:clamp(1.5rem,-4.5rem + 7.5vw,3rem)}}@media(max-height:50rem)and (min-width:64.0625rem){.main{padding-block:var(--space-md) var(--space-lg)}.page-header{margin-bottom:var(--space-sm)}}@media(max-width:64rem){.app{grid-template-columns:minmax(0,1fr)}.rail{position:fixed;inset:0 auto 0 0;z-index:var(--z-modal);width:min(20rem,calc(100vw - var(--space-xl)));height:100dvh;border-right:1px solid var(--color-line);border-bottom:0;box-shadow:var(--shadow-3);transform:translate(-100%);visibility:hidden;transition:transform var(--dur-short) var(--ease-out),visibility 0s linear var(--dur-short)}.app.is-mobile-navigation-open>.rail{transform:translate(0);visibility:visible;transition-delay:0s}.main{padding:var(--space-md) var(--space-sm) var(--space-xl)}.form-section-relaxed{padding:var(--space-md)}.page-header{flex-direction:column;align-items:stretch}.page-actions,.action-row{justify-content:flex-start}.drawer{width:100%}thead th{position:static}}@media(max-width:40rem){.page-header{gap:var(--space-sm)}.page-crumb{flex-wrap:wrap;overflow-wrap:anywhere}.page-purpose{overflow-wrap:anywhere}.page-actions,.action-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(11rem,100%),1fr));width:100%}.page-actions>.action-row{grid-column:1 / -1}.page-actions .btn,.action-row .btn{width:100%}.toolbar{align-items:stretch}.toolbar>.search,.toolbar>.toolbar-date-filter,.toolbar>select,.toolbar>.select,.toolbar>.seg,.toolbar>.btn{width:100%;min-width:0;max-width:none}.toolbar>.toolbar-date-filter input{flex:1;width:auto}.toolbar>.seg{overflow-x:auto}.toolbar>.seg .seg-btn{flex:1 0 auto}.field select,.field .select{max-width:none}.banner{align-items:stretch}.banner>.btn{width:100%}.card-head{align-items:flex-start;flex-wrap:wrap}.card-act{margin-left:0}.kpi-foot{flex-wrap:wrap}.queue-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--space-2xs);padding:var(--space-sm)}.queue-kind{grid-column:1;grid-row:1 / span 2}.queue-text{grid-column:2;grid-row:1}.queue-marker{grid-column:2;grid-row:2;justify-self:start}.queue-go{grid-column:3;grid-row:1 / span 2;align-self:center}.queue-more .queue-text{grid-column:1 / 3}.workforce-head{align-items:stretch}.stat-side{width:100%;min-width:0}.factlist li{align-items:flex-start}.aside-list li{align-items:flex-start;flex-direction:column}.aside-list li>*{min-width:0;overflow-wrap:anywhere}.load-more{align-items:stretch;flex-direction:column}.load-more .btn{width:100%}.data-table-footer{align-items:stretch;padding-inline:0}.data-table-range{width:100%}.data-table-page-size,.data-table-pages{justify-content:space-between}.data-table-pages{width:100%;overflow-x:auto;padding-bottom:var(--space-3xs)}.wizard-actions{display:grid;grid-template-columns:minmax(0,1fr)}.wizard-actions>.btn,.wizard-actions-right .btn{width:100%}.wizard-actions-right{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(10rem,100%),1fr))}.history-item{padding:var(--space-sm)}.history-head{margin:calc(-1 * var(--space-sm)) calc(-1 * var(--space-sm)) var(--space-sm);padding:var(--space-sm)}.history-change-columns{display:none}.history-change-row{grid-template-columns:minmax(0,1fr);row-gap:var(--space-3xs)}.history-change-field{margin-bottom:var(--space-3xs);color:var(--color-ink);font-weight:600}.history-change-value{display:grid;grid-template-columns:5rem minmax(0,1fr);column-gap:var(--space-2xs)}.history-change-detail{grid-column:1}.history-change-mobile-label{display:inline;color:var(--color-faint);font-size:var(--text-xs);font-weight:500}}@media(max-width:30rem){.main{padding:var(--space-sm) var(--space-2xs) var(--space-lg)}h1{font-size:var(--text-xl)}.form-section,.form-section-relaxed,.drawer-body,.drawer-group{padding:var(--space-sm)}.empty-state,.error-state,.not-found-state,.placeholder{padding:var(--space-lg) var(--space-sm)}.not-found-actions{width:100%}.not-found-actions .btn{flex:1 1 10rem}.meta-strip{gap:var(--space-sm)}.scrim-center{padding:var(--space-2xs)}.dialog{padding:var(--space-md);max-height:calc(100dvh - var(--space-sm));overflow-y:auto}.dialog-actions,.drawer-foot{align-items:stretch;flex-direction:column}.dialog-actions .btn,.drawer-foot .btn{width:100%}.drawer-head,.drawer-foot{padding:var(--space-sm)}.page-identity{gap:var(--space-2xs)}.avatar-lg{width:2.75rem;height:2.75rem;font-size:var(--text-sm)}}.ready-card.is-disabled{cursor:not-allowed;opacity:.68}.leave-setup-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);margin-block:var(--space-md)}.leave-setup-bar>p{flex:1 1 12rem;min-width:0;margin:0}.leave-row-name{min-width:11rem;max-width:20rem;font-weight:600}.leave-row-name>span{display:block;overflow-wrap:anywhere}.leave-row-name>span:first-child{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.leave-row-name>.mono{font-size:var(--text-xs);font-weight:400}.leave-type-desc{max-width:22rem}.leave-type-desc>span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;overflow-wrap:anywhere;line-height:1.35}.leave-date{white-space:nowrap}.leave-policy-detail{display:grid;gap:var(--space-sm);min-width:0;margin-top:var(--space-md)}.leave-policy-head{display:grid;gap:var(--space-2xs);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-line)}.leave-policy-title{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs)}.leave-policy-title>h2{margin:0;font-size:var(--text-xl);overflow-wrap:anywhere}.leave-policy-dates{margin:0;color:var(--color-ink-2);overflow-wrap:anywhere}.leave-setup-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2xs) var(--space-xs);margin-top:var(--space-xs)}.leave-policy-reason{font-size:var(--text-sm)}.leave-rule-facts>.subhead:first-child{margin-top:0}.leave-rule-facts .factlist{box-shadow:none}.leave-rule-entitlement{font-weight:600;white-space:nowrap}.leave-rule-credit{white-space:nowrap}.leave-rule-conditions-cell{width:100%}.leave-rule-conditions{display:flex;flex-wrap:wrap;gap:var(--space-3xs) var(--space-2xs);margin:0;padding:var(--space-3xs) 0;list-style:none}.leave-rule-conditions>li{padding:1px var(--space-2xs);border:1px solid var(--color-line);border-radius:var(--radius-pill);background:var(--color-surface-2);color:var(--color-ink-2);font-size:var(--text-xs);white-space:nowrap}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:var(--space-lg);background:var(--color-canvas)}.auth-card{width:min(100%,26rem);padding:var(--space-lg);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-2)}.auth-card h1{margin:var(--space-3xs) 0 var(--space-2xs)}.auth-form{display:grid;gap:var(--space-sm);margin-top:var(--space-md)}.eyebrow{margin:0;color:var(--color-faint);font-size:var(--text-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.context-switcher{display:grid;gap:var(--space-2xs);padding:0 var(--space-2xs) var(--space-2xs)}.context-switcher label{display:grid;gap:2px}.context-switcher label>span{color:var(--color-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-label)}.context-switcher select{width:100%;min-width:0;height:var(--control-h-sm);padding:0 var(--space-2xs);border:1px solid var(--color-line);border-radius:var(--radius-xs);background:var(--color-surface);color:var(--color-ink-2);font-size:var(--text-sm)}.app>.rail{overflow:visible}.rail-header{display:block;flex:0 0 auto}.rail-header .brand{min-width:0}.rail-toggle{--rail-toggle-size: calc(var(--control-h-sm) - var(--space-2xs));width:var(--rail-toggle-size);min-width:var(--rail-toggle-size);height:var(--rail-toggle-size);min-height:var(--rail-toggle-size);padding:0;justify-content:center;position:absolute;z-index:2;top:var(--space-md);right:calc(var(--rail-toggle-size) / -2);border:1px solid var(--color-accent-hover);border-radius:var(--radius-pill);background:var(--color-accent-hover);color:var(--color-accent-ink);box-shadow:var(--shadow-1)}.rail-toggle:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-accent);color:var(--color-accent-ink)}.rail-toggle svg{width:var(--space-xs);height:var(--space-xs)}.rail-scroll{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;display:grid;align-content:start;gap:var(--space-2xs)}.rail .rail-list{gap:var(--space-3xs)}.rail .rail-link{position:relative;grid-template-columns:var(--control-h-sm) minmax(0,1fr) auto;min-height:var(--control-h);padding-right:0;border:1px solid transparent}.rail .rail-link:hover:not(.is-disabled):not(.is-current){border-color:transparent;background:var(--color-accent-soft);color:var(--color-accent-hover)}.rail-icon{display:grid;place-items:center;width:var(--control-h-sm);height:var(--control-h-sm);border-radius:var(--radius-xs);background:transparent;color:var(--color-muted);font-size:var(--text-xs);font-weight:700;transition:background-color var(--dur-micro) var(--ease-out),color var(--dur-micro) var(--ease-out)}.rail-icon svg{width:1.0625rem;height:1.0625rem}.rail .rail-link.is-current .rail-icon{background:transparent;color:var(--color-accent-hover)}.rail .rail-link:hover:not(.is-disabled):not(.is-current) .rail-icon{background:transparent;color:var(--color-accent-hover)}.rail-label{overflow:hidden;text-overflow:ellipsis}.rail-session{flex:0 0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-2xs);margin-top:var(--space-2xs);padding:var(--space-2xs);border-radius:var(--radius-md);background:var(--color-surface-sunk)}.rail-session .rail-foot{margin-top:0;padding-top:0;border-top:0;min-width:0;gap:var(--space-2xs)}.rail-session .avatar{width:var(--control-h-sm);height:var(--control-h-sm);border:1px solid var(--color-accent-line);background:var(--color-accent-soft);color:var(--color-accent-hover)}.rail-identity{min-width:0;overflow:hidden}.rail-session .rail-user,.rail-session .rail-meta{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-session .rail-user{color:var(--color-ink);font-weight:600;line-height:1.3}.rail-session .rail-meta{margin-top:2px;color:var(--color-muted);line-height:1.3}.rail-signout{width:var(--control-h-sm);min-width:var(--control-h-sm);height:var(--control-h-sm);padding:0;justify-content:center;border:1px solid transparent;background:transparent;color:var(--color-muted)}.rail-signout:hover:not(:disabled){background:var(--color-bad-soft);color:var(--color-bad)}.rail-signout-icon{display:grid;place-items:center;line-height:1}.rail-signout-icon svg{width:1.125rem;height:1.125rem}.rail-signout-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mobile-topbar,.mobile-rail-backdrop,.rail-close{display:none}@media(min-width:64.0625rem){.app.is-rail-collapsed{grid-template-columns:var(--rail-collapsed-w) minmax(0,1fr)}.app.is-rail-collapsed>.rail{padding-inline:var(--space-2xs)}.app.is-rail-collapsed .brand{align-items:center;padding:0}.app.is-rail-collapsed .brand-mark{width:calc(100% - var(--space-sm));height:var(--control-h-sm);padding:0}.app.is-rail-collapsed .brand-name-full,.app.is-rail-collapsed .brand-sub{display:none}.app.is-rail-collapsed .brand-name-compact{display:inline}.app.is-rail-collapsed .context-switcher{display:none}.app.is-rail-collapsed .rail-toggle{top:var(--space-2xs);right:calc(var(--rail-toggle-size) / -2)}.app.is-rail-collapsed .rail-label,.app.is-rail-collapsed .rail-signout-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app.is-rail-collapsed .rail .rail-link{grid-template-columns:minmax(0,1fr);justify-items:center;padding-inline:0}.app.is-rail-collapsed .rail-flag{display:none}.app.is-rail-collapsed .rail-sep{margin-inline:var(--space-3xs)}.app.is-rail-collapsed .rail-session{grid-template-columns:minmax(0,1fr);justify-items:center;gap:var(--space-2xs);padding:var(--space-2xs)}.app.is-rail-collapsed .rail-foot,.app.is-rail-collapsed .rail-identity{display:none}.app.is-rail-collapsed .rail-signout{justify-content:center;padding-inline:0}}@media(max-width:64rem){.mobile-topbar{position:sticky;top:0;z-index:calc(var(--z-overlay) - 1);display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);min-height:calc(var(--control-hit) + var(--space-sm));padding:var(--space-2xs) var(--space-sm);border-bottom:1px solid var(--color-line);background:color-mix(in oklch,var(--color-surface) 92%,transparent);box-shadow:var(--shadow-1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.mobile-menu-toggle,.rail-close{min-width:var(--control-hit);min-height:var(--control-hit);box-shadow:none}.mobile-menu-toggle{gap:var(--space-2xs);padding-inline:var(--space-xs);border-color:transparent;background:transparent}.mobile-menu-toggle svg,.rail-close svg{width:var(--space-sm);height:var(--space-sm)}.mobile-topbar-title{overflow:hidden;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-md);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.app>.rail{overflow:hidden;padding:var(--space-xs);background:var(--color-rail)}.rail-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-3xs)}.rail-header .brand{align-items:stretch;padding:var(--space-2xs) var(--space-2xs) var(--space-sm)}.rail-toggle{display:none}.rail-close{display:inline-grid;place-items:center;align-self:start;padding:0;border-color:transparent;background:transparent;color:var(--color-ink-2)}.rail-scroll{overflow-y:auto;overscroll-behavior:contain}.app.is-mobile-navigation-open>.mobile-rail-backdrop{position:fixed;inset:0;z-index:var(--z-overlay);display:block;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:0;background:var(--color-scrim);cursor:pointer;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}}@media(max-width:30rem){.mobile-topbar{padding-inline:var(--space-2xs)}.app>.rail{width:calc(100vw - var(--space-lg));padding-inline:var(--space-2xs)}}.button-row{display:flex;flex-wrap:wrap;gap:var(--space-2xs);margin-top:var(--space-sm)}@media(max-width:40rem){.button-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(10rem,100%),1fr));width:100%}.button-row .btn{width:100%}}.card-foot-note{display:flex;align-items:center;gap:var(--space-3xs);margin:var(--space-2xs) 0 0;color:var(--color-muted);font-size:var(--text-xs)}.card-body.is-flush .card-foot-note{margin:0;padding:var(--space-2xs) var(--space-md) var(--space-md)}td code{white-space:pre-wrap;overflow-wrap:anywhere}.address-block{border:0;padding:0;margin:0 0 var(--space-md)}.address-block legend{font-size:var(--text-sm);font-weight:600;color:var(--color-ink);letter-spacing:var(--tracking-label);padding:0;margin-bottom:var(--space-2xs)}.address-country{font-size:var(--text-xs);margin-top:calc(var(--space-2xs) * -1)}.pin-code{max-width:9rem}.check-row{display:flex;flex-wrap:wrap;gap:var(--space-2xs) var(--space-md);align-items:center;min-height:var(--control-h)}.check-row label,.check-inline{display:inline-flex;align-items:center;gap:var(--space-3xs);font-size:var(--text-sm);color:var(--color-ink-2);cursor:pointer}.check-row input,.check-inline input{width:auto;min-height:unset;margin:0;accent-color:var(--color-accent)}.check-row label:has(input:disabled){color:var(--color-faint);cursor:not-allowed}.check-inline{margin:0 0 var(--space-md)}.leave-view-selector{margin-bottom:var(--space-sm);overflow-x:auto}.leave-day-breakdown{margin-top:var(--space-sm)}.leave-day-breakdown>h3{display:block;margin-bottom:var(--space-3xs);font-size:var(--text-sm);font-weight:600}.leave-day-breakdown{max-width:44rem;min-width:0}.leave-day-breakdown>h3{margin-top:0}.leave-day-summary{display:flex;flex-wrap:wrap;gap:var(--space-3xs) var(--space-sm);margin:var(--space-2xs) 0}.leave-day-summary>span,.leave-day-note{color:var(--color-muted)}.leave-day-note{margin:var(--space-2xs) 0 var(--space-xs);font-size:var(--text-sm);white-space:normal}
