:root{--surface: #f6f5fb;--surface-raised: #ffffff;--surface-sunken: #faf9fd;--ink: #1d1a2e;--ink-soft: #4a4660;--ink-faint: #666179;--line: #ece9f4;--line-strong: #dcd7ea;--accent: #5a3fb5;--accent-soft: #efecfa;--accent-mid: #8f7ccc;--good: #177a6b;--good-soft: #e4f3ef;--warn: #8a5200;--warn-soft: #fbf1df;--danger: #b0271f;--danger-soft: #fbeceb;--on-fill: #ffffff;--on-tag: #ffffff;--tag-charge: #8e6f25;--tag-peds: #7a54a6;--tag-thoracic: #1b7e8e;--tag-cardiac: #b14d68;--tag-general: #64748b;--tag-jetvent: #5b7a45;--tag-regional: #3d7a8c;--trade-trade: #2f6fe0;--trade-drop: #1c8358;--trade-either: #8a5cc7;--site-1: #dceefa;--site-2: #fbe9d2;--site-3: #e6e0f5;--site-4: #d9f0ee;--site-5: #f6e3ea;--site-6: #e8eedb;--radius-card: 16px;--radius: 12px;--radius-sm: 8px;--radius-pill: 999px;--shadow-card: 0 1px 2px rgba(29, 26, 46, .04), 0 8px 24px rgba(29, 26, 46, .06);--shadow-pop: 0 6px 18px rgba(0, 0, 0, .1);--shadow-overlay: 0 12px 32px rgba(23, 32, 51, .25);--shadow-tag-text: 0 1px 2px rgba(0, 0, 0, .25);--scrim: rgba(23, 32, 51, .35);--sans: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;color-scheme:light}:root[data-theme=dark]{--surface: #121019;--surface-raised: #1b1826;--surface-sunken: #17141f;--ink: #ece9f5;--ink-soft: #b9b4cc;--ink-faint: #9a94b0;--line: #2b2740;--line-strong: #383250;--accent: #a48bf5;--accent-soft: #2a2342;--accent-mid: #7d68c4;--good: #4cc3a6;--good-soft: #163029;--warn: #e3b341;--warn-soft: #3a2e10;--danger: #f0685e;--danger-soft: #3d1714;--on-fill: #170f33;--site-1: #13344e;--site-2: #47351f;--site-3: #2a1f47;--site-4: #145048;--site-5: #471f2e;--site-6: #3a4521;--shadow-card: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .25);--scrim: rgba(0, 0, 0, .6);color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--surface: #121019;--surface-raised: #1b1826;--surface-sunken: #17141f;--ink: #ece9f5;--ink-soft: #b9b4cc;--ink-faint: #9a94b0;--line: #2b2740;--line-strong: #383250;--accent: #a48bf5;--accent-soft: #2a2342;--accent-mid: #7d68c4;--good: #4cc3a6;--good-soft: #163029;--warn: #e3b341;--warn-soft: #3a2e10;--danger: #f0685e;--danger-soft: #3d1714;--on-fill: #170f33;--site-1: #13344e;--site-2: #47351f;--site-3: #2a1f47;--site-4: #145048;--site-5: #471f2e;--site-6: #3a4521;--shadow-card: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .25);--scrim: rgba(0, 0, 0, .6);color-scheme:dark}}*{box-sizing:border-box}body{margin:0;background:var(--surface);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.45;font-variant-numeric:tabular-nums}textarea{font:inherit}:where(input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=color],[type=button],[type=submit],[type=reset],[type=image]),select,textarea){font-family:inherit;padding:4px 8px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-raised);color:var(--ink)}:focus-visible{outline:2px solid var(--accent-mid);outline-offset:2px}.app{width:96%;max-width:2200px;margin:0 auto;padding:28px 24px calc(64px + var(--bottom-notice-space, 0px))}.generation-banner{display:flex;align-items:flex-start;gap:16px;padding:12px 16px;margin:0 0 20px;border-radius:var(--radius);font-size:14px}.generation-banner.failed{background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger)}.generation-banner.overdue{background:var(--warn-soft);color:var(--warn);border:1px solid var(--warn)}.generation-banner.running{align-items:center;gap:6px;background:var(--accent-soft);color:var(--ink)}.generation-banner-text{flex:1;min-width:0}.generation-banner-text p,.generation-banner-text ul{margin:6px 0 0}.generation-banner-error{font-weight:600}@media(max-width:600px){.generation-banner.failed{flex-direction:column}}.tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--line)}.tabs button{border:0;background:transparent;font:inherit;font-size:13.5px;font-weight:600;color:var(--ink-faint);padding:10px 4px;margin-right:20px;cursor:pointer;border-bottom:2px solid transparent}.tabs button.active{color:var(--ink);border-bottom-color:var(--accent)}.tabs button:disabled{color:var(--line-strong);cursor:not-allowed}.self-service-status,.self-service-notice,.schedule-edit-notice{position:fixed;bottom:16px;left:50%;transform:translate(-50%);z-index:70;max-width:min(640px,calc(100vw - 32px));padding:8px 12px;border-radius:var(--radius-sm);box-shadow:var(--shadow-pop);font-size:12.5px}.self-service-status{background:var(--surface-raised);color:var(--ink-soft)}.self-service-notice,.schedule-edit-notice{display:flex;align-items:center;gap:12px;background:var(--warn-soft);color:var(--warn)}.schedule-edit-notice{background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger)}.section-note{font-size:12.5px;color:var(--ink-faint);margin-bottom:14px}.roster-field-error{color:var(--danger);font-size:12px}.roster-warning{margin:14px 0 0;padding:8px 10px;border-radius:var(--radius-sm);background:var(--warn-soft);color:var(--warn);font-size:13px}.view-toggle{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px;min-width:0}.view-toggle button{border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink-soft);font:inherit;font-size:12px;font-weight:600;padding:6px 12px;border-radius:var(--radius-pill);cursor:pointer}.view-toggle button.active{background:var(--accent);color:var(--on-fill);border-color:var(--accent)}.day-nav{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;font-size:12.5px;color:var(--ink-soft)}.day-nav button{border:1px solid var(--line-strong);background:var(--surface-raised);border-radius:var(--radius-pill);padding:4px 10px;cursor:pointer;font:inherit}.grid-wrap{background:var(--surface-raised);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow-x:auto;margin-bottom:16px}table.week-grid{width:100%;border-collapse:collapse;min-width:760px}table.week-grid th{font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-faint);padding:10px 6px;border-bottom:1px solid var(--line-strong);text-align:center}table.week-grid th.row-col{text-align:left;padding-left:14px;width:96px}table.week-grid td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:5px;text-align:center;vertical-align:middle}table.week-grid td:last-child{border-right:none}table.week-grid tr:last-child td{border-bottom:none}td.row-label{text-align:left;padding-left:14px;font-size:13px;font-weight:600}td.row-label .sub{font-size:11px;color:var(--ink-faint);font-weight:400}.row-divider td{background:var(--surface);border-bottom:1px solid var(--line-strong);padding:4px 14px;font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-faint);font-weight:700;text-align:left}.cell-chip{display:inline-flex;flex-direction:column;align-items:center;gap:0;padding:5px 6px;border-radius:var(--radius-sm);min-width:90px;cursor:pointer;border:1px solid transparent;line-height:1.3}.cell-chip.off{color:var(--ink-faint);cursor:default;background:none}.cell-chip .l1{font-size:10.5px;font-weight:700;font-family:var(--mono)}.cell-chip .l2{font-size:11.5px}.cell-chip .l3{font-size:10px;opacity:.75}.cell-chip .ob-badge{font-size:9.5px;font-weight:700;opacity:.8}.cell-chip.status-good{background:var(--good-soft);color:var(--good)}.cell-chip.status-warn{background:var(--warn-soft);color:var(--warn)}.cell-chip.status-danger{background:var(--danger-soft);color:var(--danger)}.cell-chip.selected{border-color:var(--accent)}.cell-chip.mine{box-shadow:inset 0 0 0 2px var(--accent)}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.month-cell{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);padding:8px;min-height:66px;cursor:pointer}.month-cell .dnum{font-size:11px;color:var(--ink-faint)}.month-cell .dname{font-size:12px;font-weight:600;margin-bottom:4px}.month-cell.mine{box-shadow:inset 0 0 0 2px var(--accent)}.month-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:4px}.month-flag{font-size:10px;font-weight:700;padding:1px 5px;border-radius:var(--radius-sm)}.month-flag.warn{background:var(--warn-soft);color:var(--warn)}.month-flag.danger{background:var(--danger-soft);color:var(--danger)}.detail-panel{background:var(--surface-raised);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:16px 18px}.detail-panel h3{margin:0 0 10px;font-size:14px;font-weight:650}.detail-empty{color:var(--ink-faint);font-size:13px}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);gap:12px}.detail-row:last-child{border-bottom:none}.detail-row .info{font-size:13px}.detail-row .info .meta{color:var(--ink-faint);font-size:12px;margin-top:2px}.flag{font-size:11px;font-weight:600;padding:3px 8px;border-radius:var(--radius-sm);white-space:nowrap;display:inline-block;margin-left:6px}.flag.good{background:var(--good-soft);color:var(--good)}.flag.warn{background:var(--warn-soft);color:var(--warn)}.flag.danger{background:var(--danger-soft);color:var(--danger)}.hours-appetite{display:flex;flex-direction:column;gap:4px;max-width:420px;margin-top:12px;font-size:13px}.hours-appetite input[type=range]{width:100%}.hours-appetite-ends{display:flex;justify-content:space-between;font-size:11.5px;color:var(--ink-faint)}.hours-appetite output{font-weight:600}select.reassign{font:inherit;font-size:12px;padding:4px 6px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-raised);color:var(--ink)}.layout{display:grid;grid-template-columns:220px 1fr;gap:20px}.roster{background:var(--surface-raised);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:14px;align-self:start}.roster h2{font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint);margin:0 0 10px;font-weight:700}.provider-row{padding:6px 0;border-top:1px solid var(--line)}.roster-group:first-child .provider-row:first-of-type{border-top:none}.tag-row{display:flex;gap:4px;margin-top:3px;flex-wrap:wrap}.tag{font-size:10px;font-weight:700;padding:1px 6px;border-radius:var(--radius-sm);color:var(--on-tag);letter-spacing:.01em}.tag.Charge{background:var(--tag-charge)}.tag.Peds{background:var(--tag-peds)}.tag.Thoracic{background:var(--tag-thoracic)}.tag.Cardiac{background:var(--tag-cardiac)}.tag.General{background:var(--tag-general)}.trade-board{display:grid;gap:12px}.trade-card{background:var(--surface-raised);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:14px 16px;display:flex;justify-content:space-between;align-items:center;gap:16px}.trade-card.claimed{opacity:.5}.trade-type{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:2px 7px;border-radius:var(--radius-sm);margin-right:8px}.trade-type.drop{background:var(--warn-soft);color:var(--warn)}.trade-type.urgent{background:var(--danger-soft);color:var(--danger)}.trade-type.swap{background:var(--accent-soft);color:var(--accent)}.trade-note{color:var(--ink-faint);font-size:12px;margin-top:2px}.btn{font:inherit;font-size:12.5px;font-weight:600;padding:7px 14px;border-radius:var(--radius-pill);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink);cursor:pointer;flex-shrink:0}.btn.primary{background:var(--accent);color:var(--on-fill);border-color:var(--accent)}.btn.danger{background:var(--surface-raised);color:var(--danger);border-color:var(--danger)}.btn:disabled{color:var(--ink-faint);cursor:default;background:var(--surface);border-color:var(--line)}.btn.danger:hover{background:var(--danger-soft)}@keyframes btn-generating-sweep{0%{background-position:0% 50%}to{background-position:200% 50%}}.btn.generating,.btn.generating:disabled{background:linear-gradient(90deg,var(--accent) 0%,var(--accent-soft) 50%,var(--accent) 100%);background-size:200% 100%;animation:btn-generating-sweep 1.4s linear infinite;color:var(--on-fill);border-color:var(--accent);cursor:progress}@keyframes chip-spin{to{transform:rotate(360deg)}}.chip-spinner{display:inline-block;width:9px;height:9px;margin-right:4px;border:1.5px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;animation:chip-spin .7s linear infinite;vertical-align:middle}.myshift-card{background:var(--surface-raised);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:14px 16px;margin-bottom:10px}.myshift-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.myshift-actions{display:flex;gap:8px;margin-top:10px}.callout-steps{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);font-size:12.5px;color:var(--ink-soft)}.callout-steps div{padding:3px 0;opacity:0;animation:fadein .3s forwards}@keyframes fadein{to{opacity:1}}.status-pill{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:var(--radius-sm)}.status-pill.out{background:var(--danger-soft);color:var(--danger)}.status-pill.posted{background:var(--warn-soft);color:var(--warn)}.confirm-box{background:var(--warn-soft);border:1px solid var(--warn);border-radius:var(--radius);padding:10px 12px;margin-top:10px}.confirm-box p{margin:0 0 8px;font-size:12.5px;color:var(--ink)}.confirm-box .myshift-actions{margin-top:0}.post-type-tag{font-size:10px;color:var(--ink-faint);border:1px solid var(--line-strong);padding:1px 6px;border-radius:var(--radius-sm);margin-left:6px}.status-badge{font-size:11px;font-weight:700;padding:3px 9px;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.02em}.status-badge.draft{background:var(--warn-soft);color:var(--warn)}.status-badge.final{background:var(--good-soft);color:var(--good)}.status-badge.danger{background:var(--danger-soft);color:var(--danger)}.status-badge.open,.status-badge.employee{background:var(--accent-soft);color:var(--accent)}.status-badge.srna{background:var(--warn-soft);color:var(--warn)}.senior-staff-row{background:var(--warn-soft)}.months-nav{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:10px 0 16px}.month-chip{font:inherit;font-size:12px;font-weight:600;padding:6px 10px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink);cursor:pointer;display:flex;align-items:center;gap:6px}.month-chip.active{border-color:var(--accent);background:var(--accent-soft)}.payroll-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface-raised);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow:hidden}.payroll-table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-faint);padding:10px 14px;border-bottom:1px solid var(--line-strong)}.payroll-table td{padding:10px 14px;border-bottom:1px solid var(--line);font-size:13px}.payroll-table td.num,.payroll-table th.num{font-family:var(--mono);text-align:right}.payroll-table tr:last-child td{border-bottom:none}.delta-pos{color:var(--good)}.delta-neg{color:var(--danger)}.payroll-footer{display:flex;justify-content:space-between;align-items:center;margin-top:14px}.payroll-footer .caption{color:var(--ink-faint);font-size:12px}.spec-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface-raised);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow:hidden;margin-bottom:20px}.spec-table th{font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-faint);padding:10px;border-bottom:1px solid var(--line-strong);text-align:center}.spec-table th:first-child{text-align:left;padding-left:14px}.spec-table td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:center;font-size:13px}.spec-table td.spec-name{text-align:left;padding-left:14px;font-weight:600}.spec-table tr:last-child td{border-bottom:none}.spec-table input[type=checkbox].radio-disabled{opacity:.3;cursor:not-allowed}.spec-table select{font:inherit;font-size:12px;padding:4px 6px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-raised);color:var(--ink)}.tag.JetVentilation{background:var(--tag-jetvent)}.tag.Regional{background:var(--tag-regional)}.demand-mode{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;padding:2px 8px;border-radius:var(--radius-sm)}.demand-mode.mode-full-weekday{background:var(--good-soft);color:var(--good)}.demand-mode.mode-weekend-skeleton{background:var(--warn-soft);color:var(--warn)}.demand-mode.mode-holiday-reduced{background:var(--accent-soft);color:var(--accent)}.demand-mode.day-passed{background:var(--line);color:var(--ink-soft)}.demand-chip{font-size:9.5px;font-weight:700;padding:1px 5px;border-radius:var(--radius-sm);margin-left:6px;letter-spacing:.02em}.demand-chip.core{background:var(--accent);color:var(--on-fill)}.demand-chip.tag-req{background:var(--tag-general);color:var(--on-tag)}.builder-summary{display:flex;align-items:center;gap:18px;margin:12px 0 18px;padding:10px 14px;background:var(--surface-raised);border-radius:var(--radius-card);box-shadow:var(--shadow-card);font-size:12.5px}.builder-summary strong{font-size:14px}.builder-summary.day-passed{background:var(--line)}.builder-toggle{margin-left:auto;display:flex;align-items:center;gap:6px;color:var(--ink-soft)}.builder-site{margin-bottom:20px}.builder-site-head{display:flex;align-items:center;gap:10px;margin:0 0 8px}.builder-site-head h3{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint);margin:0;font-weight:700}.slot-block{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;margin-bottom:8px}.slot-block.day-passed{background:var(--line)}.slot-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.slot-name{font-weight:650;font-size:13px}.slot-meta{font-size:11.5px;color:var(--ink-faint);font-family:var(--mono)}.slot-toggle{margin-left:auto;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);border-radius:var(--radius-sm);width:26px;height:24px;font-size:13px;line-height:1;cursor:pointer}.slot-toggle:hover{background:var(--danger-soft);color:var(--ink)}.slot-block.slot-removed{background:var(--surface);opacity:.6}.slot-block.slot-removed .slot-name{text-decoration:line-through}.deactivate-dialog{max-width:460px}.deactivate-person{border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 10px;display:flex;flex-direction:column;gap:6px}.slot-count{font-size:11px;font-weight:700;color:var(--ink-soft);padding:1px 7px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);font-family:var(--mono)}.slot-placeholder-note{font-size:12px;color:var(--warn);margin-top:6px;font-weight:600}.seat-list{display:flex;flex-direction:column;gap:4px;margin-top:8px}.seat{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px;padding:4px 2px}.seat.filled{border-top:1px solid var(--line);padding-top:6px}.seat-list .seat.filled:first-child{border-top:none;padding-top:4px}.seat-name{font-weight:600}.seat-role{font-size:11px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.02em}.seat-x{margin-left:auto;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);border-radius:var(--radius-sm);width:22px;height:22px;cursor:pointer;font:inherit;font-size:13px;line-height:1;flex-shrink:0}.seat-x:hover{background:var(--danger-soft);color:var(--danger);border-color:var(--danger)}.seat-x:disabled{opacity:.4;cursor:not-allowed;background:var(--surface);color:var(--ink-faint)}.seat-x:disabled:hover{background:var(--surface);color:var(--ink-faint);border-color:var(--line-strong)}.seat.add select{font:inherit;font-size:12px;padding:4px 6px;border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink);max-width:340px}.seat-people-toggle{align-self:flex-start;font-size:12px}.seat-people-panel{margin-top:8px;padding:8px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);overflow-x:auto}.seat-people-panel th,.seat-people-panel td{white-space:nowrap}.seat-people-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:8px;font-size:12px}.seat.add select:disabled{opacity:.5;cursor:not-allowed;background:var(--line);border-style:solid}.seat.add.drag-over{outline:2px dashed var(--accent);outline-offset:2px;border-radius:var(--radius)}.seat-hint{font-size:11.5px;color:var(--ink-faint);font-style:italic}.cred-legend{list-style:none;padding:12px 14px;margin:0 0 16px;background:var(--surface-raised);border-radius:var(--radius-card);box-shadow:var(--shadow-card);font-size:12px;color:var(--ink-soft)}.cred-legend li{padding:3px 0}.cred-legend .tag{margin-right:6px}.cnote{font-size:11.5px;color:var(--ink-faint);font-weight:400;text-transform:none;letter-spacing:0}.wd-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.wd-box{display:flex;align-items:center;gap:3px;font-size:12px;font-weight:400;text-transform:none;letter-spacing:0;color:var(--ink)}.commit-group{margin-bottom:16px}.commit-head{display:flex;align-items:center;gap:10px;margin:0 0 6px;font-size:13px}.absence-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:14px;background:var(--surface-raised);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.absence-form label,.absence-form .form-label{display:flex;flex-direction:column;gap:3px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--ink-faint)}.absence-form label.absence-whole{flex-direction:row;align-items:center;gap:6px;text-transform:none;font-weight:600;color:var(--ink-soft);padding-bottom:6px}.absence-form .absence-note{flex:1;min-width:160px}.absence-form input[type=text],.absence-form input[type=number],.absence-form input[type=date],.absence-form select{font:inherit;font-size:13px;font-weight:400;text-transform:none;letter-spacing:0;color:var(--ink);padding:6px 8px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-raised)}.absence-form input[type=number]{width:80px}.absence-form .btn{align-self:flex-end}.fairness-strip{margin-top:28px;padding-top:16px;border-top:1px solid var(--line)}.fairness-strip h3{font-size:15px;font-weight:700;margin:0 0 2px}.fairness-strip-rows{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.fairness-stat{display:flex;flex-direction:column;gap:2px;flex:1 1 220px;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-raised)}.fairness-stat-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft)}.fairness-stat-value{font-size:18px;font-weight:700}.fairness-stat-target{font-size:12px;font-weight:400;color:var(--ink-soft)}.roster-drawer{width:34px;flex-shrink:0}.roster-drawer.open{width:min(220px,42vw)}.builder-requests{overflow-x:auto}.request-row>td{vertical-align:top}.request-shifts>td{padding-top:0}.request-shifts>td:empty{display:none}.request-row:has(+.request-shifts>td:not(:empty))>td,.request-row:has(+.request-shifts:last-child)>td{border-bottom:none}.request-prose{min-width:200px}.builder-requests{container-type:inline-size}.builder-requests .payroll-table{overflow:clip}.builder-requests .request-actions{position:sticky;right:0;background:var(--surface-raised);border-left:1px solid var(--line)}.builder-requests .request-shifts>td>*{position:sticky;left:14px;max-width:calc(100cqi - 28px)}.drawer-toggle{display:block;width:100%;margin-bottom:6px;padding:4px 2px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-raised);color:var(--ink-soft);font-size:11px;font-weight:600;white-space:nowrap;cursor:pointer}.drawer-toggle:hover{border-color:var(--line-strong);color:var(--ink)}.drawer-toggle.wide{width:auto;padding:4px 10px;margin-left:auto}.roster-row{cursor:pointer;border:0;background:none;color:inherit;font:inherit}.roster-row:hover{background:var(--surface)}.roster-row.highlighted,.seat.filled.highlighted{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent);font-weight:600}.cal-cell.day-highlighted{box-shadow:inset 0 0 0 2px var(--accent)}.callout-button{padding:7px 14px;border:1px solid var(--danger);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--danger);font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.callout-button:hover{background:var(--danger-soft)}.callout-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.day-bar-shift-button{display:block;width:100%;padding:0;border:0;background:none;text-align:left;cursor:pointer}.site-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.site-tabs button{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--ink-soft);font-size:13px;cursor:pointer}.site-tabs button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--ink);font-weight:600}.site-swatch{width:10px;height:10px;border-radius:3px;border:1px solid var(--ink-faint)}.day-bar-site-group{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.day-bar-site{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft)}.week-range-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:22px 0 8px}.hours-readout{font-size:13px;white-space:nowrap}.hours-readout-label{font-weight:700}.hours-readout-pto,.hours-readout-target{color:var(--ink-soft)}.week-bars{display:flex;align-items:stretch;gap:10px}.week-bars-scroller{display:flex;gap:8px;flex:1;overflow-x:auto}.week-arrow{flex-shrink:0;width:34px;border:1px solid var(--line-strong);background:var(--surface-raised);border-radius:var(--radius);font:inherit;font-size:17px;line-height:1;color:var(--ink-soft);cursor:pointer}.week-arrow:hover{background:var(--accent-soft);color:var(--accent)}.day-bar{flex:1;min-width:138px;display:flex;flex-direction:column;gap:6px;background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);padding:8px}.day-bar-head{text-align:center;font-size:12.5px;font-weight:700;color:var(--ink);padding-bottom:6px;margin-bottom:2px;border-bottom:1px solid var(--line)}.day-bar-head .dow{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-faint)}.day-bar-empty{font-size:11px;color:var(--ink-faint);text-align:center;padding-top:12px}.day-bar-shift{display:block;width:100%;border:none;font:inherit;text-align:left;background:var(--accent-soft);border-radius:var(--radius-sm);padding:6px 8px;font-size:11px;line-height:1.4}.day-bar-shift .pos{display:block;font-weight:700;color:var(--ink);font-size:11.5px}.day-bar-shift .meta{display:block;color:var(--ink-soft)}.time{font-family:var(--mono)}.day-bar-shift.mine{background:var(--good-soft);border:1px solid var(--good)}.day-bar-shift.mine .meta{color:var(--ink);font-weight:700}.trainee-slot{cursor:pointer}.trainee-slot:hover{outline:1px solid var(--accent)}.trainee-slot.assigned{background:var(--good-soft);border:1px solid var(--good)}.trainee-sub{display:block;font-style:italic;color:var(--ink-soft);margin-top:2px}.month-heading{font-size:15px;font-weight:700;margin:22px 0 8px}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-bottom:8px}.cal-dayname{background:var(--surface-raised);padding:6px 4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-faint);text-align:center}.cal-cell{container:cal-cell / inline-size;background:var(--surface-raised);min-height:92px;padding:5px;display:flex;flex-direction:column;gap:4px}.cal-cell:focus-visible{outline-offset:-2px}.cal-cell.muted{background:var(--surface)}.cal-cell.muted .cal-date{color:var(--ink-faint)}.cal-cell.day-passed{background:var(--line)}.cal-cell.day-passed .cal-date{color:var(--ink-soft)}.cal-cell.clickable{cursor:pointer}.cal-cell.clickable:hover{background:var(--accent-soft)}.cal-cell.drag-dwell{background:var(--accent-soft);outline:2px dashed var(--accent);outline-offset:-2px}.cal-cell.clickable.muted:hover{background:var(--line)}.cal-cell.clickable.day-passed:hover{background:var(--line-strong)}.cal-cell.day-verdict-red{background:var(--danger-soft)}.cal-cell.day-verdict-yellow{background:var(--warn-soft)}.cal-cell.day-verdict-green{background:var(--good-soft)}.cal-date{font-size:11px;font-weight:700;color:var(--ink-soft)}.cal-shifts{display:flex;flex-direction:column;gap:3px}.cal-shift{background:var(--accent-soft);border-radius:var(--radius-sm);padding:2px 5px;font-size:10px;line-height:1.3}.cal-shift .pos{display:block;font-weight:700;color:var(--ink)}.cal-shift .meta{display:block;color:var(--ink-soft)}.cal-shift.mine{background:var(--good-soft);border:1px solid var(--good)}.cal-shift.mine .meta{color:var(--ink);font-weight:700}.cal-shift.gained{background:var(--good-soft);border:1px solid var(--good);font-weight:700}.cal-shift.gained .pos{color:var(--good)}.cal-shift.lost{background:var(--danger-soft);border:1px dashed var(--danger);opacity:.65}.cal-shift.lost .pos{color:var(--danger);font-weight:400}.cal-summary{font-size:10.5px;font-weight:600;color:var(--ink-faint);margin-top:auto}.day-dots{display:flex;flex-wrap:wrap;gap:2px;margin-top:2px}.day-dot{width:6px;height:6px;border-radius:50%;flex:0 0 auto}.day-dot-blank{background:transparent;border:1px solid var(--line-strong)}.day-dot-clean{background:var(--good)}.day-dot-flagged{background:var(--warn);box-shadow:0 0 0 1.5px var(--warn-soft),0 0 0 2.5px var(--warn)}.review-gate-trigger{position:relative}.review-gate-backdrop{position:fixed;inset:0;background:var(--scrim);z-index:60;display:flex;justify-content:center;padding-top:0}.review-gate-panel{background:var(--surface-raised);width:100%;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-overlay);border-radius:0 0 var(--radius-card) var(--radius-card);animation:review-gate-slide-down .18s ease-out}@keyframes review-gate-slide-down{0%{transform:translateY(-12px);opacity:0}to{transform:translateY(0);opacity:1}}.review-gate-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line-strong)}.review-gate-header h2{margin:0;font-size:17px}.review-gate-period{margin:2px 0 0;font-size:12.5px;color:var(--ink-faint);font-weight:600}.review-gate-list{display:flex;flex-direction:column}.review-gate-row{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid var(--line)}.review-gate-row-main{flex:1}.review-gate-row-main p{margin:0 0 6px;font-size:13px}.review-gate-row-main input{width:100%;max-width:260px;border:1px solid var(--line-strong);border-radius:var(--radius);padding:6px 8px;font:inherit;font-size:12.5px}.review-gate-row-main input::placeholder{color:var(--ink-faint);opacity:.7}.review-gate-red{background:var(--danger-soft)}.review-gate-yellow{background:var(--warn-soft)}.review-gate-blue{background:var(--accent-soft)}.review-gate-ack-done{font-size:12px;font-weight:600;color:var(--good);white-space:nowrap}.review-gate-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:16px 20px;flex-wrap:wrap}.day-modal-backdrop{position:fixed;inset:0;background:var(--scrim);display:flex;align-items:center;justify-content:center;z-index:50;padding:20px}.day-modal{background:var(--surface-raised);border-radius:var(--radius-card);box-shadow:var(--shadow-overlay);width:100%;max-width:380px;max-height:80vh;display:flex;flex-direction:column}.day-modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line);font-size:14px;font-weight:700}.day-modal-close{border:none;background:none;font-size:20px;line-height:1;color:var(--ink-faint);cursor:pointer;padding:0 2px}.day-modal-close:hover{color:var(--ink)}.day-modal-body{padding:12px 16px 16px;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.trade-cal-cell{position:relative}.trade-cal-cell.has-posts{border-radius:var(--radius-sm)}.trade-cal-cell.has-posts .cal-date{color:var(--on-tag);text-shadow:var(--shadow-tag-text)}.trade-cal-count{font-size:10px;font-weight:700;color:color-mix(in srgb,var(--on-tag) 92%,transparent);margin-top:auto}.trade-cal-urgent-dot{position:absolute;top:5px;right:5px;width:7px;height:7px;border-radius:50%;background:var(--danger);box-shadow:0 0 0 1.5px color-mix(in srgb,var(--on-tag) 80%,transparent)}.trade-cal-legend{display:flex;flex-wrap:wrap;gap:14px;align-items:center;font-size:12px;color:var(--ink-soft);margin:4px 0 14px}.trade-cal-swatch{display:inline-block;width:11px;height:11px;border-radius:var(--radius-sm);margin-right:5px;vertical-align:-1px}.trade-cal-swatch.trade{background:var(--trade-trade)}.trade-cal-swatch.drop{background:var(--trade-drop)}.trade-cal-swatch.either{background:var(--trade-either)}.trade-cal-swatch.urgent-dot{width:7px;height:7px;border-radius:50%;background:var(--danger);margin-right:6px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--surface)}.login-card{background:var(--surface-raised);border-radius:var(--radius-card);box-shadow:var(--shadow-card);width:100%;max-width:340px;padding:28px 24px;display:flex;flex-direction:column;gap:14px}.login-card h1{font-size:18px;font-weight:650;margin:0 0 4px;text-align:center}.login-card label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;font-weight:600;color:var(--ink-soft)}.login-card input{font:inherit;padding:8px 10px;border:1px solid var(--line-strong);border-radius:var(--radius)}.login-card button{font:inherit;font-weight:650;padding:10px;border:0;border-radius:var(--radius-pill);background:var(--accent);color:var(--on-fill);cursor:pointer}.login-card button:disabled{opacity:.6;cursor:not-allowed}.login-error{color:var(--danger);font-size:12.5px;margin:0}.auth-bar{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:6px 24px;font-size:12px;color:var(--ink-faint)}.auth-bar button{font:inherit;font-size:12px;border:1px solid var(--line-strong);background:var(--surface-raised);border-radius:var(--radius-pill);padding:4px 10px;cursor:pointer}.cal-holiday{font-size:10px;font-weight:600;color:var(--accent);line-height:1.2;overflow:hidden;overflow-wrap:break-word}@container cal-cell (max-width: 56px){.cal-holiday-name{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}.trade-cal-cell.has-posts .cal-holiday{color:var(--on-tag);text-shadow:var(--shadow-tag-text)}.ui-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.ui-page-header{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px;padding:14px 0 18px}.ui-page-header-text{display:flex;flex-direction:column;gap:4px;min-width:0}.ui-page-header-title{margin:0;font-size:28px;font-weight:700;line-height:1.2;letter-spacing:-.015em;color:var(--ink)}.ui-page-header-subtitle{margin:0;font-size:14px;color:var(--ink-faint)}.ui-page-header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto}.ui-card{padding:24px 26px;border-radius:var(--radius-card);background:var(--surface-raised);box-shadow:var(--shadow-card)}.ui-card-compact{padding:16px}.ui-card-title{margin:0 0 4px;font-size:20px;font-weight:700;line-height:1.25;color:var(--ink)}.ui-card-subtitle{margin:0 0 14px;font-size:14px;color:var(--ink-faint)}.ui-card-header-title-only .ui-card-title{margin-bottom:14px}.ui-pill-tabs{display:inline-flex;flex-wrap:wrap;gap:2px;max-width:100%;padding:4px;border-radius:22px;background:var(--line)}.ui-pill-tab{display:inline-flex;align-items:center;padding:8px 18px;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--ink-faint);font:inherit;font-size:14px;font-weight:600;line-height:20px;white-space:nowrap;text-decoration:none;cursor:pointer}.ui-pill-tab:hover{color:var(--ink)}.ui-pill-tab-current{background:var(--surface-raised);color:var(--ink);box-shadow:0 1px 3px color-mix(in srgb,var(--ink) 10%,transparent)}.ui-stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.ui-stat-tile{display:flex;flex-direction:column;gap:2px;min-width:0;padding:12px 16px;border-radius:var(--radius);background:var(--surface)}.ui-stat-label,.ui-stat-caption{font-size:12px;color:var(--ink-faint)}.ui-stat-value{font-size:18px;font-weight:700;color:var(--ink)}.ui-stat-good .ui-stat-value{color:var(--good)}.ui-stat-warn .ui-stat-value{color:var(--warn)}.ui-stat-danger .ui-stat-value{color:var(--danger)}.ui-stat-large{padding:0;background:transparent}.ui-stat-large .ui-stat-label{font-size:13px}.ui-stat-large .ui-stat-value{font-size:30px;line-height:1.2;letter-spacing:-.01em}.ui-initials{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-size:14px;font-weight:700;line-height:1}.ui-initials-sm{width:34px;height:34px;font-size:13px}.ui-initials-lg{width:52px;height:52px;font-size:20px}.ui-open-row{border-top:1px solid var(--line)}.ui-open-row-toggle{display:flex;align-items:center;gap:10px;width:100%;padding:14px 4px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--ink);font:inherit;font-size:15px;text-align:left;cursor:pointer}.ui-open-row-chevron{display:inline-flex;flex-shrink:0;color:var(--ink-faint);transform:rotate(-90deg);transition:transform .2s}.ui-open-row-chevron-open{transform:rotate(0)}.ui-open-row-summary{min-width:0}.ui-open-row-trailing{margin-left:auto;font-size:13px;color:var(--ink-faint)}.ui-open-row-content{padding:0 4px 14px 30px}.ui-open-row-content-flush{padding-left:4px}@media(prefers-reduced-motion:reduce){.ui-open-row-chevron{transition:none}}:root{--ui-layer-dialog: 80}.ui-dialog-backdrop{position:fixed;inset:0;z-index:var(--ui-layer-dialog);display:flex;align-items:center;justify-content:center;padding:20px;background:var(--scrim)}.ui-dialog{display:flex;flex-direction:column;width:100%;max-width:380px;max-height:calc(100vh - 40px);border:1px solid var(--line-strong);border-radius:var(--radius-card);background:var(--surface-raised);color:var(--ink);box-shadow:var(--shadow-overlay)}.ui-dialog-wide{max-width:460px}.ui-dialog-title{margin:0;padding:20px 24px 0;font-size:20px;font-weight:700;line-height:1.25;color:var(--ink)}.ui-dialog-body{min-height:0;padding:12px 24px 20px;overflow-y:auto;font-size:14px;color:var(--ink-soft)}.ui-dialog-error{margin:0 24px 16px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger);font-size:13px;font-weight:600}.ui-dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:0 24px 20px}.ui-dialog-actions .btn[aria-disabled=true]{border-color:var(--line);background:var(--surface);color:var(--ink-faint);cursor:default}.ui-planned{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;max-width:100%;cursor:not-allowed}.ui-planned-body{opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none}.ui-planned-tag{padding:1px 8px;border:1px dashed var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-sunken);color:var(--ink-faint);font-size:11px;font-weight:600;line-height:18px;white-space:nowrap}.frame-sidebar-column{position:fixed;top:0;bottom:0;left:0;display:flex;flex-direction:column;width:232px;overflow-y:auto;background:var(--surface)}.frame-main{min-width:0;margin-left:232px;padding:8px 36px 0 12px}.frame-main .app{width:100%;margin:0;padding:0 0 calc(64px + var(--bottom-notice-space, 0px))}.frame-area-header{padding-bottom:16px}.frame-sidebar{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;padding:22px 0 18px}.frame-brand{display:flex;flex-shrink:0;align-items:center;gap:10px;padding:0 24px 18px}.frame-sidebar-entries{display:flex;flex:1 1 auto;flex-direction:column;gap:4px;min-height:0;padding:4px 14px;overflow-y:auto;scroll-padding-block:4px}.frame-sidebar-entries>*{flex-shrink:0}.frame-brand-name{font-size:19px;font-weight:700;letter-spacing:-.01em;color:var(--ink)}.frame-mark{display:block;flex-shrink:0}.frame-mark-top{fill:color-mix(in srgb,var(--accent-mid) 55%,var(--surface-raised))}.frame-mark-left{fill:var(--accent)}.frame-mark-right{fill:var(--accent-mid)}.frame-mark-second.frame-mark-top{fill:color-mix(in srgb,var(--good) 45%,var(--surface-raised))}.frame-mark-second.frame-mark-left{fill:var(--good)}.frame-mark-second.frame-mark-right{fill:color-mix(in srgb,var(--good) 75%,var(--surface-raised))}.frame-icon{flex-shrink:0}.frame-entry{display:flex;align-items:center;gap:12px;width:100%;padding:10px 14px;border:none;border-radius:var(--radius);background:transparent;color:var(--ink-soft);font:inherit;font-size:15px;font-weight:500;text-align:left;text-decoration:none;cursor:pointer}.frame-entry:hover{color:var(--ink)}.frame-entry-current,.frame-entry-current:hover{background:var(--accent-soft);color:var(--accent);font-weight:700}.frame-divider{width:auto;height:1px;margin:10px 14px;border:0;background:var(--line)}.frame-heading{margin:0;padding:4px 14px 6px;font-size:12px;font-weight:600;color:var(--ink-faint)}.frame-sidebar-foot{display:flex;flex-shrink:0;flex-direction:column;gap:4px;padding:12px 14px 0}.frame-user{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px;margin-top:8px;padding:12px 12px 0;border-top:1px solid var(--line)}.frame-user-text{display:flex;flex:1 1 0;flex-direction:column;min-width:0}.frame-user-name{font-size:14px;font-weight:700;color:var(--ink)}.frame-user-role,.frame-user-note{font-size:12px;color:var(--ink-faint)}.frame-user-acting{width:100%;font-size:12px}.frame-topbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;min-height:64px}.frame-menu-button{display:none;flex-shrink:0;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--ink);cursor:pointer}.frame-find-slot{flex:1 1 200px;min-width:0}.frame-find-slot>.ui-planned{display:flex;flex-wrap:nowrap}.frame-find-slot .ui-planned-body{flex:0 1 560px;min-width:0}.frame-find-slot .ui-planned-tag{flex-shrink:0}.frame-find{display:flex;align-items:center;gap:10px;width:100%;max-width:560px;height:44px;padding:0 8px 0 14px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-raised)}.frame-find-input{flex:1 1 0;min-width:0;padding:0;border:none;background:transparent;color:var(--ink);font-size:14px}.frame-find-key{padding:4px 8px;border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-faint);font-size:12px}.frame-topbar-end{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px;min-width:0;max-width:100%;margin-left:auto}.frame-attention{display:inline-flex;align-items:center;gap:8px;padding:9px 14px 9px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--ink);font:inherit;font-size:14px;font-weight:600}.frame-attention .frame-icon{color:var(--accent)}.frame-theme{display:inline-flex;flex-shrink:0;gap:2px;padding:3px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-raised)}.frame-theme-choice{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--ink-faint);cursor:pointer}.frame-theme-choice:hover{color:var(--ink)}.frame-theme-choice-current,.frame-theme-choice-current:hover{background:var(--accent-soft);color:var(--accent)}@media(max-width:899px){.frame-sidebar-column{display:none}.frame-main{margin-left:0;padding:8px 16px 0}.frame-menu-button{display:inline-flex}.frame-topbar{align-items:flex-start;padding:12px 0}.frame-find-slot{display:none}.frame-topbar-end{flex:1 1 0}.frame-attention{padding:9px 12px}.frame-attention-name{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}.ui-dialog-backdrop:has(.frame-drawer){align-items:stretch;justify-content:flex-start;padding:0}.ui-dialog:has(.frame-drawer){width:min(280px,86vw);max-width:none;max-height:none;border-width:0 1px 0 0;border-radius:0 var(--radius-card) var(--radius-card) 0;background:var(--surface)}.ui-dialog:has(.frame-drawer) .ui-dialog-title{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.ui-dialog:has(.frame-drawer) .ui-dialog-body{display:flex;flex:1 1 auto;flex-direction:column;padding:0}.frame-drawer{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}
