:root{--color-bg:#f2f4f8;--color-surface:#ffffff;--color-surface-elevated:#eaeffa;--color-embedded-canvas:#ffffff;--color-text:#0b1521;--color-muted:#5e6b7e;--color-border:#e2e6ee;--color-primary:#1f4fe0;--color-primary-hover:#1840c0;--color-primary-text:#ffffff;--color-accent:#6e9bff;--color-danger:#b3261e;--color-danger-surface:#fdeceb;--color-info:#1f4fe0;--color-info-surface:#eaeffa;--color-success:#1f7a43;--color-success-surface:#e8f5ed;--color-scrim:rgb(11 21 33/45%);--color-notice-surface:#fbf1d8;--color-notice-text:#5b4a1f;--color-notice-border:#c9a24a;--color-notice-ink:#1c1402;--color-brand-gold:#c9a24a;--color-shift-new-surface:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface));--color-shift-new-edge:var(--color-primary);--color-shift-edited-surface:color-mix(in srgb,var(--color-brand-gold) 20%,var(--color-surface));--color-shift-edited-edge:var(--color-notice-border);--color-shift-published-surface:var(--color-surface-elevated);--color-shift-published-edge:var(--color-border);--color-cell-unavailable:color-mix(in srgb,var(--color-danger) 9%,var(--color-surface));--color-cell-hover:color-mix(in srgb,var(--color-primary) 7%,var(--color-surface));--color-availability-available-surface:color-mix(in srgb,var(--color-success) 18%,var(--color-surface));--color-availability-available-edge:var(--color-success);--color-availability-preferred-surface:color-mix(in srgb,var(--color-primary) 18%,var(--color-surface));--color-availability-preferred-edge:var(--color-primary);--color-availability-unavailable-surface:color-mix(in srgb,var(--color-danger) 14%,var(--color-surface));--color-availability-unavailable-edge:var(--color-danger);--chart-deep:#0e1b2e;--shadow-card:0 18px 48px rgb(11 21 33/12%);--radius-sm:6px;--radius-md:8px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--font-display:"Space Grotesk","Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-text:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}[data-theme=dark]{--color-bg:#0b1521;--color-surface:#0e1b2e;--color-surface-elevated:#14233a;--color-text:#f2f4f8;--color-muted:#9aa7bd;--color-border:#233247;--color-primary:#6e9bff;--color-primary-hover:#8fb2ff;--color-primary-text:#0b1521;--color-accent:#6e9bff;--color-danger:#ff9b94;--color-danger-surface:#2c1a1c;--color-info:#8fb2ff;--color-info-surface:#15233a;--color-success:#8ed6a6;--color-success-surface:#14271c;--color-scrim:rgb(0 0 0/62%);--color-notice-surface:#2a2410;--color-notice-text:#e2c684;--color-notice-border:#c9a24a;--chart-deep:#6e9bff;--shadow-card:0 18px 48px rgb(0 0 0/45%)}[data-colorway=halo]:not([data-theme=dark]){--color-primary:#3f74f2;--color-primary-hover:#2c57c9;--color-primary-text:#ffffff;--color-accent:#6e9bff;--color-info:#3f74f2;--color-info-surface:color-mix(in srgb,#3f74f2 10%,#ffffff);--color-bg:color-mix(in srgb,#3f74f2 6%,#f2f4f8);--color-surface:color-mix(in srgb,#3f74f2 3%,#ffffff);--color-surface-elevated:color-mix(in srgb,#3f74f2 12%,#eaeffa);--color-border:color-mix(in srgb,#3f74f2 16%,#e2e6ee);--color-muted:color-mix(in srgb,#3f74f2 14%,#5e6b7e)}[data-theme=dark][data-colorway=halo]{--color-primary:#8fb8ff;--color-primary-hover:#a9c3ff;--color-primary-text:#0b1521;--color-accent:#8fb2ff;--color-info:#8fb8ff;--color-info-surface:color-mix(in srgb,#8fb8ff 16%,#0e1b2e);--color-bg:color-mix(in srgb,#8fb8ff 6%,#0b1521);--color-surface:color-mix(in srgb,#8fb8ff 7%,#0e1b2e);--color-surface-elevated:color-mix(in srgb,#8fb8ff 9%,#14233a);--color-border:color-mix(in srgb,#8fb8ff 14%,#233247);--color-muted:color-mix(in srgb,#8fb8ff 12%,#9aa7bd)}[data-colorway=beacon]:not([data-theme=dark]){--color-primary:#c9a24a;--color-primary-hover:#b08a34;--color-primary-text:#0b1521;--color-accent:#e2c684;--color-info:#8a6a1f;--color-info-surface:#f6edd8;--color-bg:color-mix(in srgb,#c9a24a 7%,#f2f4f8);--color-surface:color-mix(in srgb,#c9a24a 3%,#ffffff);--color-surface-elevated:color-mix(in srgb,#c9a24a 14%,#eaeffa);--color-border:color-mix(in srgb,#c9a24a 18%,#e2e6ee);--color-muted:color-mix(in srgb,#c9a24a 16%,#5e6b7e)}[data-theme=dark][data-colorway=beacon]{--color-primary:#e2c684;--color-primary-hover:#ecd49b;--color-primary-text:#0b1521;--color-accent:#e2c684;--color-info:#e2c684;--color-info-surface:#2a2410;--color-bg:color-mix(in srgb,#e2c684 6%,#0b1521);--color-surface:color-mix(in srgb,#e2c684 7%,#0e1b2e);--color-surface-elevated:color-mix(in srgb,#e2c684 9%,#14233a);--color-border:color-mix(in srgb,#e2c684 14%,#233247);--color-muted:color-mix(in srgb,#e2c684 12%,#9aa7bd)}[data-colorway=slate]:not([data-theme=dark]){--color-primary:#5e6b7e;--color-primary-hover:#4c5667;--color-primary-text:#ffffff;--color-accent:#94a0b2;--color-info:#5e6b7e;--color-info-surface:#eef0f3;--color-bg:color-mix(in srgb,#5e6b7e 8%,#f2f4f8);--color-surface:color-mix(in srgb,#5e6b7e 4%,#ffffff);--color-surface-elevated:color-mix(in srgb,#5e6b7e 16%,#eaeffa);--color-border:color-mix(in srgb,#5e6b7e 20%,#e2e6ee);--color-muted:color-mix(in srgb,#5e6b7e 18%,#5e6b7e)}[data-theme=dark][data-colorway=slate]{--color-primary:#aeb8c6;--color-primary-hover:#c3cbd6;--color-primary-text:#0b1521;--color-accent:#94a0b2;--color-info:#aeb8c6;--color-info-surface:#1c2533;--color-bg:color-mix(in srgb,#aeb8c6 6%,#0b1521);--color-surface:color-mix(in srgb,#aeb8c6 8%,#0e1b2e);--color-surface-elevated:color-mix(in srgb,#aeb8c6 10%,#14233a);--color-border:color-mix(in srgb,#aeb8c6 16%,#233247);--color-muted:color-mix(in srgb,#aeb8c6 12%,#9aa7bd)}html[data-env=development]:not([data-theme=dark]){--color-primary:#8e1c46;--color-primary-hover:#6f1537;--color-primary-text:#ffffff;--color-accent:#b0446a;--color-info:#8e1c46;--color-info-surface:color-mix(in srgb,#8e1c46 10%,#ffffff);--color-bg:color-mix(in srgb,#8e1c46 8%,#f2f4f8);--color-surface:color-mix(in srgb,#8e1c46 4%,#ffffff);--color-surface-elevated:color-mix(in srgb,#8e1c46 14%,#eaeffa);--color-border:color-mix(in srgb,#8e1c46 20%,#e2e6ee);--color-muted:color-mix(in srgb,#8e1c46 18%,#5e6b7e);--color-danger:#a01020;--color-danger-surface:color-mix(in srgb,#a01020 12%,#ffffff);--color-notice-surface:color-mix(in srgb,#8e1c46 12%,#ffffff);--color-notice-text:#5a1230;--color-notice-border:#8e1c46;--color-notice-ink:#2a0812;--color-brand-gold:#b0446a;--chart-deep:#5a1230;--color-scrim:rgb(58 8 24/50%)}html[data-env=development][data-theme=dark]{--color-primary:#e0819f;--color-primary-hover:#ea9cb4;--color-primary-text:#1a0710;--color-accent:#e0819f;--color-info:#e0819f;--color-info-surface:color-mix(in srgb,#e0819f 16%,#0e1b2e);--color-bg:color-mix(in srgb,#8e1c46 22%,#0b1521);--color-surface:color-mix(in srgb,#8e1c46 24%,#0e1b2e);--color-surface-elevated:color-mix(in srgb,#8e1c46 26%,#14233a);--color-border:color-mix(in srgb,#e0819f 16%,#233247);--color-muted:color-mix(in srgb,#e0819f 14%,#9aa7bd);--color-danger:#ff8f9a;--color-danger-surface:color-mix(in srgb,#8e1c46 30%,#0b1521);--color-notice-surface:color-mix(in srgb,#8e1c46 32%,#0b1521);--color-notice-text:#f0c0d0;--color-notice-border:#e0819f;--chart-deep:#e0819f;--color-brand-gold:#e0819f;--color-scrim:rgb(0 0 0/62%)}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-text)}button,input{font:inherit}.app-shell{align-items:center;display:flex;min-height:100vh;padding:var(--space-6)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:var(--space-4)}.auth-card{margin:0 auto;max-width:480px;padding:var(--space-6);width:100%}.stack{display:grid;gap:var(--space-4)}.stack-lg{gap:var(--space-5)}.eyebrow{color:var(--color-primary);font-size:11px;letter-spacing:.32em;text-transform:uppercase}.eyebrow,h1{font-family:var(--font-display);font-weight:600;margin:0}h1{font-size:2rem;letter-spacing:-.01em;line-height:1.1}p{font-size:14px;line-height:1.6;margin:0}.text-muted,p{color:var(--color-muted)}.field{display:grid;gap:var(--space-2)}.field span{color:var(--color-text);font-size:12px;font-weight:600;letter-spacing:.01em}.check-inline{align-items:center;gap:var(--space-2);grid-auto-flow:column;justify-content:start}.check-inline input{accent-color:var(--color-primary);height:18px;margin:0;width:18px}.check-inline span{color:var(--color-text);font-size:14px;font-weight:500;letter-spacing:normal}.input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);min-height:44px;padding:10px 12px;width:100%}.input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 22%,transparent);outline:none}.code-input{font-family:var(--font-display);font-size:1.25rem;letter-spacing:.32em}.select-trigger{align-items:center;cursor:pointer;display:inline-flex;font-family:var(--font-text);font-size:1rem;gap:var(--space-2);justify-content:space-between;text-align:left}.select-trigger:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 22%,transparent);outline:none}.select-trigger:disabled{cursor:not-allowed;opacity:.58}.select-trigger-icon,.select-trigger[data-placeholder]{color:var(--color-muted)}.select-trigger-icon{display:inline-flex}.select-content{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);color:var(--color-text);max-height:var(--radix-select-content-available-height,280px);min-width:var(--radix-select-trigger-width,220px);overflow:hidden;z-index:40}.select-viewport{padding:var(--space-1)}.select-item{align-items:center;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:var(--space-2);justify-content:space-between;padding:10px 12px;-webkit-user-select:none;user-select:none}.select-item[data-highlighted]{background:var(--color-surface-elevated);outline:none}.select-item-indicator,.select-item[data-state=checked]{color:var(--color-primary)}.select-item-indicator{display:inline-flex}.address-suggest-content{min-width:var(--radix-popover-trigger-width,260px)}.address-suggest-item{background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;display:block;font:inherit;overflow:hidden;padding:10px 12px;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%}.address-suggest-item.is-active,.address-suggest-item:hover{background:var(--color-surface-elevated)}.btn{align-items:center;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-family:var(--font-text);font-weight:600;justify-content:center;min-height:44px;padding:10px 16px;text-decoration:none}.btn:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 35%,transparent);outline:none}.btn:disabled{cursor:not-allowed;opacity:.58}.btn-primary{background:var(--color-primary);color:var(--color-primary-text)}.btn-primary:not(:disabled):hover{background:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface-elevated);border-color:var(--color-border);color:var(--color-text)}.btn-danger{background:var(--color-danger);color:var(--color-danger-surface)}.btn-danger:not(:disabled):hover{background:color-mix(in srgb,var(--color-danger) 85%,var(--color-text))}.btn-danger:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-danger) 35%,transparent)}.status{border-radius:var(--radius-sm);font-size:13px;line-height:1.5;padding:var(--space-3)}.status-danger,.status-error{background:var(--color-danger-surface);color:var(--color-danger)}.status-info{background:var(--color-info-surface);color:var(--color-info)}.status-success{background:var(--color-success-surface);color:var(--color-success)}.status-warn,.status-warning{background:var(--color-notice-surface);color:var(--color-notice-text)}.status-neutral{background:var(--color-surface-elevated);color:var(--color-muted)}.summary-list{display:grid;gap:var(--space-3);margin:0}.summary-list div{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-3)}.summary-list dt{color:var(--color-muted);font-size:11px;font-weight:600;letter-spacing:.08em;margin:0 0 var(--space-1);text-transform:uppercase}.summary-list dd{color:var(--color-text);margin:0;overflow-wrap:anywhere}@media (max-width:560px){.app-shell{padding:var(--space-4)}.auth-card{padding:var(--space-5)}h1{font-size:1.75rem}}h2{font-family:var(--font-display);font-size:1.1rem;font-weight:600;letter-spacing:-.01em;margin:0}.workspace-shell{--sidebar-width:248px;--sidebar-collapsed-width:76px;display:flex;min-height:100vh}.workspace-sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;flex-shrink:0;gap:var(--space-2);height:100vh;padding:var(--space-4) var(--space-3);position:sticky;top:0;transition:width .16s ease;width:var(--sidebar-width)}.workspace-shell.is-collapsed .workspace-sidebar{width:var(--sidebar-collapsed-width)}.workspace-sidebar-scroll{display:flex;flex:1 1;flex-direction:column;gap:var(--space-2);min-height:0;overflow-y:auto}.nav-section{display:flex;flex-direction:column;gap:2px;list-style:none;margin:0;padding:0}.nav-divider{border-top:1px solid var(--color-border);margin:var(--space-3) var(--space-2)}.nav-link,.workspace-sidebar-collapse{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--color-muted);cursor:pointer;display:flex;font:inherit;font-size:14px;font-weight:600;gap:var(--space-3);padding:var(--space-2) var(--space-3);text-align:left;text-decoration:none;width:100%}.nav-link:hover,.workspace-sidebar-collapse:hover{background:var(--color-surface-elevated);color:var(--color-text)}.nav-link.is-active{background:var(--color-surface-elevated);color:var(--color-primary)}.nav-link:focus-visible,.settings-menu-trigger:focus-visible,.workspace-hamburger:focus-visible,.workspace-sidebar-collapse:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.nav-link-icon{align-items:center;display:inline-flex;flex-shrink:0}.nav-link-label{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-group-trigger .nav-link-label{overflow:visible;text-overflow:clip;white-space:normal}.nav-group{display:flex;flex-direction:column}.nav-group-chevron{align-items:center;color:var(--color-muted);display:inline-flex;transition:transform .15s ease}.nav-group-chevron.is-open{transform:rotate(180deg)}.nav-group-children{display:flex;flex-direction:column;gap:2px;list-style:none;margin:2px 0;padding:0 0 0 calc(var(--space-5) + 2px)}.nav-sublink{border-radius:var(--radius-sm);color:var(--color-muted);display:block;font-size:13px;font-weight:600;padding:var(--space-2) var(--space-3);text-decoration:none}.nav-sublink:hover{background:var(--color-surface-elevated);color:var(--color-text)}.nav-sublink.is-active{background:var(--color-surface-elevated);color:var(--color-primary)}.workspace-sidebar-collapse{margin-top:var(--space-2)}.workspace-shell.is-collapsed .nav-group-chevron,.workspace-shell.is-collapsed .nav-link-label{display:none}.workspace-shell.is-collapsed .nav-link,.workspace-shell.is-collapsed .workspace-sidebar-collapse{justify-content:center;padding-left:var(--space-2);padding-right:var(--space-2)}.workspace-body{display:flex;flex:1 1;flex-direction:column;min-width:0}.workspace-header{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;gap:var(--space-3);min-height:60px;padding:var(--space-3) var(--space-5);position:sticky;top:0;z-index:20}.workspace-header-spacer{flex:1 1}.workspace-header-right{align-items:center;display:flex;gap:var(--space-3)}.tenant-switcher{left:50%;position:absolute;transform:translateX(-50%)}.tenant-switcher-trigger{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;font:inherit;font-family:var(--font-display);font-size:14px;font-weight:600;max-width:min(40vw,320px);overflow:hidden;padding:var(--space-2) var(--space-4);text-overflow:ellipsis;white-space:nowrap}.tenant-switcher-trigger:hover{border-color:var(--color-primary);color:var(--color-primary)}.tenant-switcher-trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.workspace-brand{align-items:center;color:var(--color-text);display:inline-flex;flex-shrink:0;gap:var(--space-2);padding:var(--space-1) var(--space-3) var(--space-2);text-decoration:none}.workspace-brand:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.workspace-shell.is-collapsed .workspace-brand{justify-content:center;padding-left:var(--space-1);padding-right:var(--space-1)}.workspace-shell.is-collapsed .workspace-brand .workspace-wordmark{display:none}.workspace-wordmark{font-family:var(--font-display);font-size:18px;font-weight:700;letter-spacing:.04em}.workspace-wordmark-rc{color:var(--color-primary)}.workspace-wordmark-vanta{color:var(--color-text)}.workspace-hamburger{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--color-muted);cursor:pointer;display:none;padding:var(--space-2)}.workspace-hamburger:hover{background:var(--color-surface-elevated);color:var(--color-text)}.workspace-backdrop{background:var(--color-scrim);border:0;cursor:pointer;inset:0;position:fixed;z-index:25}.workspace-backdrop[hidden]{display:none}.workspace-main{flex:1 1;padding:var(--space-6)}.course-immersive{background:var(--color-bg);display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.course-immersive-bar{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;flex-shrink:0;justify-content:flex-end;padding:var(--space-3) var(--space-5);position:sticky;top:0;z-index:20}.course-immersive-exit{align-items:center;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;display:inline-flex;font-weight:600;gap:var(--space-2);padding:var(--space-2) var(--space-3);text-decoration:none}.course-immersive-exit:hover{background:var(--color-surface-elevated);border-color:var(--color-primary);color:var(--color-primary)}.course-immersive-exit:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.course-immersive-body{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto;padding:var(--space-6)}.course-immersive-body>.dashboard-page{flex:1 1;margin:0;max-width:none;width:100%}.settings-menu{position:relative}.settings-menu-trigger{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--color-muted);cursor:pointer;display:inline-flex;padding:var(--space-2)}.settings-menu-trigger:hover{background:var(--color-surface-elevated);color:var(--color-text)}.settings-menu-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);margin-top:var(--space-2);padding:var(--space-3);position:absolute;right:0;top:100%;width:264px;z-index:30}.settings-menu-section{display:flex;flex-direction:column;gap:var(--space-2)}.settings-menu-heading{color:var(--color-muted);font-size:11px;font-weight:700;letter-spacing:.08em;margin:0;text-transform:uppercase}.settings-menu-divider{border-top:1px solid var(--color-border);margin:var(--space-3) 0}.settings-menu-item{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;display:flex;font:inherit;font-size:14px;font-weight:600;gap:var(--space-3);padding:var(--space-2) var(--space-3);text-align:left;width:100%}.settings-menu-item:hover{background:var(--color-surface-elevated)}.theme-picker{display:flex;flex-direction:column;gap:var(--space-3)}.theme-picker-section{display:flex;flex-direction:column;gap:var(--space-2)}.theme-picker-label{color:var(--color-muted);font-size:11px;font-weight:600;letter-spacing:.04em;margin:0}.theme-picker-locked-note{color:var(--color-muted);font-size:12px;margin:0}.theme-picker-options{display:flex;flex-wrap:wrap;gap:var(--space-2)}.theme-picker-chip{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;flex:1 1;font:inherit;font-size:13px;font-weight:600;min-width:64px;padding:var(--space-2)}.theme-picker-chip.is-active{border-color:var(--color-primary);color:var(--color-primary)}.theme-picker-colorways{flex-direction:column}.theme-picker-colorway{align-items:center;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;display:flex;font:inherit;font-size:13px;font-weight:600;gap:var(--space-2);padding:var(--space-2) var(--space-3);width:100%}.theme-picker-colorway.is-active{border-color:var(--color-primary)}.theme-picker-pip{border:1px solid color-mix(in srgb,var(--color-text) 12%,transparent);border-radius:999px;display:inline-block;flex-shrink:0;height:14px;width:14px}.theme-picker-colorway-label{flex:1 1;text-align:left}.settings-menu-item:focus-visible,.theme-picker-chip:focus-visible,.theme-picker-colorway:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.dashboard-page{gap:var(--space-5);margin:0 auto;max-width:1200px}.dashboard-page,.page-head{display:flex;flex-direction:column}.page-head{gap:var(--space-1)}.page-head-actions{flex-direction:row;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.sr-only{border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.page-tabs{border-bottom:1px solid var(--color-border);display:flex;flex-shrink:0;gap:var(--space-1);overflow-x:auto}.page-tab{align-items:center;background:none;border:none;border-bottom:2px solid transparent;color:var(--color-muted);cursor:pointer;display:inline-flex;font-family:var(--font-display);font-size:14px;font-weight:600;gap:var(--space-2);margin-bottom:-1px;min-height:44px;padding:var(--space-2) var(--space-4);white-space:nowrap}.page-tab:hover{color:var(--color-text)}.page-tab.is-active{border-bottom-color:var(--color-primary);color:var(--color-primary)}.page-tab:focus-visible{border-radius:var(--radius-sm) var(--radius-sm) 0 0;outline:2px solid var(--color-primary);outline-offset:-2px}.page-tab-badge{background:var(--color-info-surface);border-radius:999px;color:var(--color-info);font-size:11px;font-weight:700;line-height:1;min-width:20px;padding:4px 6px;text-align:center}.page-tab-panel{display:flex;flex-direction:column;gap:var(--space-5)}.example-banner{align-items:center;background:var(--color-notice-surface);border:1px solid var(--color-notice-border);border-left-width:4px;border-radius:var(--radius-sm);color:var(--color-notice-text);display:flex;font-size:13px;gap:var(--space-3);line-height:1.5;padding:var(--space-3) var(--space-4);print-color-adjust:exact;-webkit-print-color-adjust:exact}.example-banner-tag{background:var(--color-notice-border);border-radius:999px;color:var(--color-notice-ink);flex-shrink:0;font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:.12em;padding:3px 10px;text-transform:uppercase}.dashboard-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(12,1fr)}.widget-full{grid-column:span 12}.widget-two-thirds{grid-column:span 8}.widget-half{grid-column:span 6}.widget-third{grid-column:span 4}.widget-quarter{grid-column:span 3}.widget{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);flex-direction:column;padding:var(--space-4)}.widget,.widget-head{display:flex;gap:var(--space-3)}.widget-head{align-items:flex-start;justify-content:space-between}.widget-title{color:var(--color-text);font-family:var(--font-display);font-size:14px;font-weight:600;margin:0}.widget-sub{color:var(--color-muted);font-size:12px;margin:2px 0 0}.widget-example{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:999px;color:var(--color-muted);flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:.1em;padding:2px 8px;text-transform:uppercase}.widget-body{display:flex;flex:1 1;flex-direction:column}.kpi-stat{gap:var(--space-1);position:relative}.kpi-example{position:absolute;right:var(--space-3);top:var(--space-3)}.kpi-label{color:var(--color-muted);font-size:12px;font-weight:600;margin:0}.kpi-value{color:var(--color-text);font-family:var(--font-display);font-size:1.9rem;font-weight:600;letter-spacing:-.02em;margin:2px 0}.kpi-delta{font-size:12px;font-weight:600;margin:0}.kpi-good{color:var(--color-success)}.kpi-bad{color:var(--color-danger)}.kpi-neutral{color:var(--color-muted)}.chart-canvas{height:260px;width:100%}.deck-viewer{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.deck-frame{border:0;display:block;height:60vh;min-height:360px;width:100%}.data-table{border-collapse:collapse;font-size:13px;width:100%}.data-table th{border-bottom:2px solid var(--color-border);color:var(--color-muted);font-size:11px;font-weight:700;letter-spacing:.06em;padding:var(--space-2) var(--space-3);text-align:left;text-transform:uppercase}.data-table th.th-sortable{padding:0}.th-sort{align-items:center;background:none;border:0;color:inherit;cursor:pointer;display:flex;font:inherit;gap:var(--space-1);letter-spacing:inherit;padding:var(--space-2) var(--space-3);text-align:inherit;text-transform:inherit;width:100%}.th-sort:hover{color:var(--color-text)}.th-sort:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 35%,transparent);outline:none}.th-sort-icon{opacity:.35}.th-sort-icon-active{opacity:1}.data-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);padding:var(--space-2) var(--space-3)}.data-table tbody tr:last-child td{border-bottom:none}.data-table td.td-num,.data-table th.th-num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.data-table td.td-num-alert{color:var(--color-danger);font-weight:700}.timecard-table tfoot tr{background:var(--color-surface-elevated)}.timecard-table tfoot td,.timecard-table tfoot th{border-bottom:none;border-top:2px solid var(--color-border);color:var(--color-text);font-weight:700;padding:var(--space-2) var(--space-3)}.timecard-table tfoot th{font-size:13px;letter-spacing:normal;text-align:left;text-transform:none}@media (max-width:640px){.timecard-table tfoot th{display:block;width:100%}.timecard-table td.td-num,.timecard-table th.th-num{text-align:left}}.data-table-cards .td-label{display:none}@media (max-width:640px){.data-table-cards thead{display:none}.data-table-cards,.data-table-cards tbody,.data-table-cards td,.data-table-cards tr{display:block;width:100%}.data-table-cards tr{border:1px solid var(--color-border);border-radius:var(--radius-sm);margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3)}.data-table-cards tbody tr:last-child{margin-bottom:0}.data-table-cards td{align-items:baseline;border-bottom:none;display:grid;gap:var(--space-3);grid-template-columns:minmax(6rem,40%) 1fr;padding:var(--space-1) 0}.data-table-cards .td-label{color:var(--color-muted);display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.data-table-cards td.td-action{display:block;padding-top:var(--space-2)}.data-table-cards td.td-action .btn{width:100%}.data-table-cards td.td-action .btn-row{align-items:stretch;flex-direction:column}}@media (min-width:641px) and (max-width:1100px){.assignments-cards thead{display:none}.assignments-cards,.assignments-cards tbody,.assignments-cards td,.assignments-cards tr{display:block;width:100%}.assignments-cards tr{border:1px solid var(--color-border);border-radius:var(--radius-sm);margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3)}.assignments-cards tbody tr:last-child{margin-bottom:0}.assignments-cards td{align-items:baseline;border-bottom:none;display:grid;gap:var(--space-3);grid-template-columns:minmax(6rem,32%) 1fr;padding:var(--space-1) 0}.assignments-cards .td-label{color:var(--color-muted);display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.assignments-cards td.td-action{display:block;padding-top:var(--space-2)}.assignments-cards td.td-action .btn,.assignments-cards td.td-action .input{width:100%}.assignments-cards td.td-action .btn-row{align-items:stretch;flex-direction:column}}.launcher{display:grid;gap:var(--space-4);grid-template-columns:repeat(3,1fr)}.launcher-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4);text-decoration:none}.launcher-card:hover{border-color:var(--color-primary)}.report-form-card{padding:var(--space-4)}.report-form-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(2,1fr)}.reports-table{margin-top:var(--space-3)}.reports-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.reports-actions .btn{font-size:12px;min-height:32px;padding:4px 10px}.workforce-check{align-items:center;flex-direction:row;gap:var(--space-2);grid-auto-flow:column;justify-content:start}.workforce-check input[type=checkbox]{accent-color:var(--color-primary);height:18px;margin:0;width:18px}.workforce-check span{font-weight:500}.workforce-fieldset{border:1px solid var(--color-border);border-radius:var(--radius-sm);display:grid;gap:var(--space-2);margin:0;padding:var(--space-3)}.workforce-fieldset legend{color:var(--color-muted);font-size:12px;font-weight:600;letter-spacing:.01em;padding:0 var(--space-1)}.workforce-mono{color:var(--color-muted);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:12px}.workforce-photo{border:1px solid var(--color-border);border-radius:var(--radius-sm);display:block;margin-top:var(--space-2);max-width:320px;width:100%}.card .widget-title{margin-bottom:var(--space-2)}.tenant-summary-grid{align-items:start;display:grid;gap:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(220px,280px)}.report-page{flex-direction:column;margin:0 auto;max-width:1100px;padding:var(--space-6)}.report-head,.report-page{display:flex;gap:var(--space-5)}.report-head{align-items:center;border-bottom:2px solid var(--color-border);padding-bottom:var(--space-4)}.report-foot{border-top:1px solid var(--color-border);padding-top:var(--space-3)}@media (max-width:1100px){.widget-full,.widget-half,.widget-two-thirds{grid-column:span 12}.widget-quarter,.widget-third{grid-column:span 6}.launcher,.report-form-grid,.tenant-summary-grid{grid-template-columns:1fr}}.modal-overlay{align-items:flex-start;display:flex;inset:0;justify-content:center;padding:12vh var(--space-4) var(--space-4);position:fixed;z-index:40}.toast-stack{position:fixed;right:var(--space-4);bottom:var(--space-4);z-index:60;display:flex;flex-direction:column;gap:var(--space-2);width:min(400px,calc(100vw - 2 * var(--space-4)));pointer-events:none}.toast{align-items:flex-start;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-left-width:4px;border-radius:var(--radius-sm);box-shadow:0 8px 24px color-mix(in srgb,var(--color-text) 16%,transparent);color:var(--color-text);display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4);pointer-events:auto;animation:toast-in .16s ease-out}.toast-success{background:var(--color-success-surface);border-color:color-mix(in srgb,var(--color-success) 45%,var(--color-border));color:var(--color-success)}.toast-error{background:var(--color-danger-surface);border-color:color-mix(in srgb,var(--color-danger) 45%,var(--color-border));color:var(--color-danger)}.toast-icon{display:inline-flex;flex-shrink:0;margin-top:1px}.toast-message{flex:1 1;font-size:13px;line-height:1.5;margin:0}.toast-dismiss{background:none;border:none;color:inherit;cursor:pointer;display:inline-flex;flex-shrink:0;opacity:.7;padding:2px}.toast-dismiss:hover{opacity:1}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}@media (max-width:640px){.toast-stack{left:var(--space-4);right:var(--space-4);width:auto}}.save-bar{align-items:center;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);bottom:var(--space-3);box-shadow:0 8px 24px color-mix(in srgb,var(--color-text) 16%,transparent);display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-4);position:sticky;z-index:30}.save-bar-note{flex:1 1 100%;font-size:12px;margin:0}.save-bar-state{align-items:center;display:inline-flex;font-size:13px;font-weight:600;gap:var(--space-1);margin-right:auto}.save-bar-state-clean{color:var(--color-success)}.save-bar-state-dirty{background:var(--color-notice-surface);border-radius:var(--radius-sm);color:var(--color-notice-text);padding:var(--space-1) var(--space-2)}.save-bar-state-icon{display:inline-flex;flex-shrink:0}.save-bar .status{padding:var(--space-1) var(--space-2)}.modal-backdrop{border:0;cursor:pointer}.modal-backdrop,.modal-backdrop-static{background:var(--color-scrim);inset:0;position:absolute}.modal-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);max-height:70vh;max-width:420px;overflow-y:auto;padding:var(--space-4);position:relative;width:100%}.modal-panel-wide{max-width:720px}.table-scroll{overflow-x:auto}.modal-actions{justify-content:flex-end;margin-top:var(--space-4)}.confirm-message{margin:0;max-width:44ch}.kpi-value-alert{color:var(--color-danger)}.course-content{max-width:68ch}.course-content p{margin:0 0 var(--space-3)}.course-content ol,.course-content ul{margin:0 0 var(--space-3);padding-left:var(--space-5)}.course-content li{margin:var(--space-1) 0}.course-content-heading{color:var(--color-text);line-height:1.3;margin:var(--space-4) 0 var(--space-2)}.course-content-heading:first-child{margin-top:0}.course-content a{color:var(--color-primary)}.course-content code{background:var(--color-surface-elevated);border-radius:var(--radius-sm);padding:0 var(--space-1)}.course-content pre{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);margin:0 0 var(--space-3);overflow-x:auto;padding:var(--space-3)}.course-content pre code{background:none;padding:0}.course-steps{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);list-style:none;margin:0;padding:0}.course-step{display:flex;font-size:13px;gap:var(--space-2)}.course-step,.course-step-marker{align-items:center;color:var(--color-muted)}.course-step-marker{border:1.5px solid var(--color-border);border-radius:999px;display:inline-flex;flex-shrink:0;font-size:12px;font-weight:700;height:24px;justify-content:center;width:24px}.course-step-done{color:var(--color-text)}.course-step-done .course-step-marker{background:var(--color-success-surface);border-color:var(--color-success);color:var(--color-success)}.course-step-current{color:var(--color-text);font-weight:600}.course-step-current .course-step-marker{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-primary-text)}.quiz-review-list{display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-2) 0 0;padding-left:var(--space-4)}.quiz-review-number{color:var(--color-muted);font-weight:600}.quiz-review-answer{color:var(--color-danger);font-size:12px;margin:var(--space-1) 0 0}.quiz-review-correct{color:var(--color-success);font-size:12px;margin:var(--space-1) 0 0}.quiz-review-group+.quiz-review-group{margin-top:var(--space-3)}.quiz-review-topic{color:var(--color-muted);font-size:11px;font-weight:700;letter-spacing:.06em;margin:var(--space-2) 0 0;text-transform:uppercase}.modal-overlay-fullscreen{padding:0}.modal-panel-fullscreen{border:0;border-radius:0;display:flex;flex-direction:column;gap:var(--space-4);height:100%;max-height:none;max-width:none;overflow-y:hidden;padding:var(--space-5) var(--space-6)}.tenant-switch-header{display:flex;flex-direction:column;gap:var(--space-1)}.tenant-switch-title{font-family:var(--font-display);font-size:1.5rem;font-weight:600;letter-spacing:-.01em;margin:0}.tenant-switch-hint{color:var(--color-muted);font-size:14px;margin:0}.tenant-tile-well{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:inset 0 2px 6px color-mix(in srgb,var(--color-text) 16%,transparent),inset 0 10px 28px color-mix(in srgb,var(--color-text) 8%,transparent);flex:1 1;overflow-y:auto;padding:var(--space-5)}.tenant-tile-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));list-style:none;margin:0;padding:0}.tenant-tile-grid>li{display:flex}.tenant-tile{align-items:flex-start;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 1px 3px color-mix(in srgb,var(--color-text) 10%,transparent);cursor:pointer;display:flex;flex-direction:column;font:inherit;gap:var(--space-1);min-height:104px;padding:var(--space-4);text-align:left;width:100%}.tenant-tile:hover{border-color:var(--color-primary)}.tenant-tile:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.tenant-tile.is-selected{background:var(--color-surface-elevated);border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.tenant-tile-name{color:var(--color-text);font-weight:600}.tenant-tile.is-selected .tenant-tile-name{color:var(--color-primary)}.tenant-tile-meta{color:var(--color-muted);font-size:12px}.tenant-tile-badge{background:var(--color-info-surface);border-radius:var(--radius-sm);color:var(--color-info);font-size:12px;font-weight:600;margin-top:auto;padding:2px var(--space-2)}.tenant-switch-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.admin-settings-grid{display:grid;gap:var(--space-5);grid-template-columns:1fr 1fr}.admin-pane{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.admin-subsection{border-top:1px solid var(--color-border);margin-top:var(--space-4);padding-top:var(--space-4)}.bulk-add-textarea{font-family:inherit;min-height:12rem;resize:vertical}.notification-bell{position:relative}.notification-bell-badge{align-items:center;background:var(--color-danger);border-radius:999px;color:var(--color-primary-text);display:inline-flex;font-size:10px;font-weight:700;justify-content:center;line-height:1;min-width:16px;padding:2px 4px;position:absolute;right:2px;top:2px}.notification-filters{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.notification-chip{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;color:var(--color-text);cursor:pointer;display:inline-flex;font-size:13px;gap:var(--space-2);min-height:36px;padding:6px 14px}.notification-chip.is-active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-primary-text)}.notification-chip:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 22%,transparent);outline:none}.notification-chip-count{background:color-mix(in srgb,var(--color-primary) 20%,transparent);border-radius:999px;font-size:11px;font-weight:700;padding:1px 6px}.notification-chip.is-active .notification-chip-count{background:color-mix(in srgb,var(--color-primary-text) 25%,transparent)}.notification-list{display:grid;gap:var(--space-2);list-style:none;margin:0;padding:0}.notification-row{align-items:flex-start;border:1px solid var(--color-border);border-radius:var(--radius-sm);display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between;padding:var(--space-3)}.notification-row.is-unread{background:color-mix(in srgb,var(--color-primary) 7%,var(--color-surface));border-color:color-mix(in srgb,var(--color-primary) 35%,var(--color-border))}.notification-row-main{display:grid;gap:var(--space-1);min-width:0}.notification-row-title{align-items:center;color:var(--color-text);display:flex;font-weight:600;gap:var(--space-2)}.notification-row-dot{background:var(--color-primary);border-radius:999px;display:inline-block;height:8px;width:8px}.notification-row-meta{font-size:12px}.notification-row-actions{flex-shrink:0}.announcement-body{font-family:inherit;min-height:5rem;resize:vertical}.announcement-domains{font-family:inherit;min-height:4rem;resize:vertical}.field .announcement-hint{color:var(--color-muted);font-size:12px;font-weight:400}.role-permission-row{align-items:center;display:flex;gap:var(--space-2)}.role-checkbox-list{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3)}.role-checkbox{font-size:13px;gap:var(--space-1)}.role-checkbox,.role-multiselect-trigger{align-items:center;color:var(--color-text);display:inline-flex}.role-multiselect-trigger{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font:inherit;font-size:13px;gap:var(--space-2);justify-content:space-between;max-width:320px;min-height:36px;min-width:200px;padding:6px 10px;text-align:left}.role-multiselect-trigger:hover:not(:disabled){background:var(--color-surface-elevated)}.role-multiselect-trigger:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 22%,transparent);outline:none}.role-multiselect-trigger:disabled{cursor:not-allowed;opacity:.58}.role-multiselect-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-multiselect-content{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);max-height:320px;min-width:200px;overflow-y:auto;padding:var(--space-2);z-index:40}.role-multiselect-item{align-items:center;border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;display:flex;font-size:13px;gap:var(--space-2);outline:none;padding:var(--space-2) var(--space-3);-webkit-user-select:none;user-select:none}.role-multiselect-item[data-highlighted]{background:var(--color-surface-elevated)}.role-multiselect-indicator{align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-primary);display:inline-flex;flex:none;height:16px;justify-content:center;width:16px}.role-multiselect-item[data-state=checked] .role-multiselect-indicator{border-color:var(--color-primary)}.role-multiselect-empty{color:var(--color-muted);font-size:13px;padding:var(--space-2) var(--space-3)}.role-multiselect-search{background:var(--color-surface);padding:var(--space-1) var(--space-1) var(--space-2);position:sticky;top:calc(-1 * var(--space-2))}.pagination-row{align-items:center;justify-content:space-between}.assignment-editor{display:flex;flex-direction:column;gap:var(--space-2)}.assignment-row{border-left:2px solid var(--color-border);display:flex;flex-direction:column;gap:var(--space-1);padding-left:var(--space-3)}.btn-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.slug-preview{color:var(--color-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.badge-builtin{background:var(--color-surface-elevated);border:1px solid var(--color-border);color:var(--color-muted);letter-spacing:.04em;margin-left:var(--space-2);padding:1px var(--space-2);vertical-align:middle}.badge-builtin,.credential-status{border-radius:var(--radius-sm);font-size:11px;font-weight:600;text-transform:uppercase}.credential-status{display:inline-block;letter-spacing:.03em;padding:2px var(--space-2)}.credential-status-valid{background:var(--color-success-surface);color:var(--color-success)}.credential-status-expiring{background:var(--color-notice-surface);color:var(--color-notice-text)}.credential-status-expired{background:var(--color-danger-surface);color:var(--color-danger)}.credential-status-pending{background:var(--color-surface-elevated);color:var(--color-muted)}.credential-status-missing{background:var(--color-notice-surface);color:var(--color-notice-text)}.training-status{border-radius:var(--radius-sm);display:inline-block;font-size:11px;font-weight:600;letter-spacing:.03em;padding:2px var(--space-2);text-transform:uppercase;white-space:nowrap}.due-date-overdue{color:var(--color-danger);font-weight:600}.deck-progress{align-items:center;display:flex;gap:var(--space-3)}.deck-progress progress{accent-color:var(--color-primary);block-size:8px;border-radius:var(--radius-sm);flex:1 1;inline-size:100%}.training-shell .page-head{padding-bottom:var(--space-4);position:relative}.training-shell .page-head:after{background:linear-gradient(90deg,var(--color-primary),color-mix(in srgb,var(--color-accent) 55%,transparent) 42%,transparent 82%);block-size:2px;border-radius:2px;content:"";inline-size:min(240px,62%);inset-block-end:0;inset-inline-start:0;position:absolute}.training-shell .eyebrow{align-items:center;display:inline-flex;gap:var(--space-2)}.training-shell .eyebrow:before{background:linear-gradient(var(--color-primary),var(--color-accent));block-size:13px;border-radius:2px;content:"";flex-shrink:0;inline-size:3px}.training-shell .card{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5)}.training-shell .card .widget-title{margin-bottom:0}.quiz-question{border:0;margin:0;min-inline-size:0;min-width:0;padding:0}.quiz-question-prompt{color:var(--color-muted);font-size:14px;line-height:1.6;margin-block-end:var(--space-4);padding:0}.quiz-question-body{display:flex;flex-direction:column;gap:var(--space-4)}.quiz-choice-correct{border-inline-start:3px solid var(--color-primary);padding-inline-start:var(--space-3)}.training-shell .form-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:1100px){.training-shell .form-grid{grid-template-columns:1fr}}.training-shell .widget-title{align-items:center;display:flex;gap:var(--space-2)}.training-shell .widget-title:before{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));block-size:14px;border-radius:4px;content:"";flex-shrink:0;inline-size:14px}.training-shell .btn-primary{background:linear-gradient(180deg,color-mix(in srgb,var(--color-primary) 86%,var(--color-accent)),var(--color-primary))}.training-shell .btn-primary:not(:disabled):hover{background:linear-gradient(180deg,var(--color-primary),var(--color-primary-hover))}.training-shell .data-table th{font-family:var(--font-display);letter-spacing:.08em}.training-shell .data-table td{vertical-align:middle}.training-shell .data-table tbody tr:hover td{background:color-mix(in srgb,var(--color-primary) 5%,var(--color-surface))}.training-shell .data-table tbody td:first-child{color:var(--color-text);font-weight:600}.training-shell .training-status{align-items:center;display:inline-flex;gap:6px}.training-shell .training-status:before{background:currentcolor;block-size:6px;border-radius:999px;content:"";flex-shrink:0;inline-size:6px}.training-shell .course-step-current .course-step-marker{box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 22%,transparent)}.training-shell .course-content-heading{font-family:var(--font-display);letter-spacing:-.01em}.scorm-frame{background:var(--color-embedded-canvas);block-size:70vh;border:1px solid var(--color-border);border-radius:var(--radius-sm);inline-size:100%}.scorm-toolbar{align-items:center;justify-content:space-between;margin-block-end:var(--space-4)}.scorm-toolbar-actions{align-items:center;display:flex;gap:var(--space-3)}.scorm-status{display:flex;flex-direction:column;gap:var(--space-1)}.scorm-gate-hint{font-size:13px}.scorm-save-notice{padding-block:var(--space-1);white-space:nowrap}.scorm-nav{align-items:center;display:flex;gap:var(--space-2)}.scorm-nav-btn{align-items:center;display:inline-flex;gap:var(--space-1);white-space:nowrap}.scorm-nav-notice{padding-block:var(--space-1)}.scorm-activity-menu{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);max-height:320px;min-width:240px;overflow-y:auto;padding:var(--space-2);z-index:40}.scorm-activity-item{align-items:center;border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;display:flex;font-size:14px;gap:var(--space-2);outline:none;padding:var(--space-2) var(--space-3)}.scorm-activity-item[data-highlighted]{background:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface))}.scorm-activity-item[data-disabled]{color:var(--color-muted);cursor:not-allowed}.scorm-activity-current{background:color-mix(in srgb,var(--color-primary) 18%,var(--color-surface));color:var(--color-primary);font-weight:600}.scorm-activity-icon{color:var(--color-muted);display:inline-flex;inline-size:16px;justify-content:center}.scorm-activity-current .scorm-activity-icon,.scorm-activity-item:not([data-disabled]) .scorm-activity-icon{color:var(--color-primary)}.credential-checks{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3)}.credential-checks .field{flex-direction:row;align-items:center;gap:var(--space-2)}.field .credential-hint{color:var(--color-muted);font-size:12px;font-weight:400}.credential-type-positions{display:block;font-size:12px}.credential-summary-strip{display:flex;flex-wrap:wrap;gap:var(--space-5)}.credential-summary-strip>div{display:flex;flex-direction:column}.credential-summary-strip strong{font-size:22px;font-weight:700}.credential-doc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.credential-doc-list li{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.credential-outcome{max-width:240px}.credential-outcome-print{display:none}@media print{.no-print{display:none!important}.credential-outcome-print{display:inline!important}}@media (max-width:880px){.admin-settings-grid{grid-template-columns:1fr}.workspace-hamburger{display:inline-flex}.workspace-sidebar{height:100vh;left:0;position:fixed;top:0;transform:translateX(-100%);transition:transform .18s ease;width:var(--sidebar-width);z-index:30}.workspace-sidebar.is-open{transform:translateX(0)}.workspace-shell.is-collapsed .workspace-sidebar{width:var(--sidebar-width)}.workspace-shell.is-collapsed .nav-group-chevron,.workspace-shell.is-collapsed .nav-link-label,.workspace-shell.is-collapsed .workspace-brand .workspace-wordmark{display:revert}.tenant-switcher-trigger{max-width:34vw}.workspace-shell.is-collapsed .nav-link,.workspace-shell.is-collapsed .workspace-sidebar-collapse{justify-content:flex-start}.workspace-sidebar-collapse{display:none}}@media (max-width:680px){.kpi-stat,.widget{grid-column:span 12}.modal-panel-fullscreen{padding:var(--space-4)}.tenant-tile-well{padding:var(--space-3)}.tenant-tile-grid{grid-template-columns:1fr}}@media print{@page{margin:1.4cm}body{background:#ffffff}.workspace-backdrop,.workspace-header,.workspace-sidebar{display:none}.report-page,.workspace-main{padding:0}.example-banner,.example-banner-tag,.widget-example{print-color-adjust:exact;-webkit-print-color-adjust:exact}.launcher-card,.widget{border:1px solid var(--color-border);box-shadow:none;break-inside:avoid;page-break-inside:avoid}.widget-full,.widget-half,.widget-third,.widget-two-thirds{grid-column:span 12}.widget-quarter{grid-column:span 6}.chart-canvas{height:320px}}.shift-when{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-2);align-items:center;border:0;padding:0;margin:0}.shift-when>legend{padding:0;margin-bottom:var(--space-1);font-size:.8rem;color:var(--color-muted)}@media (max-width:480px){.shift-when{grid-template-columns:minmax(0,1fr)}}.schedule-toolbar{gap:var(--space-3);justify-content:space-between;margin-bottom:var(--space-4)}.schedule-toolbar,.schedule-toolbar-group{display:flex;flex-wrap:wrap;align-items:center}.schedule-toolbar-group{gap:var(--space-2)}.schedule-toolbar .btn.is-active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-primary-text)}.schedule-publish-meta{display:flex;flex-direction:column;gap:2px;font-size:.78rem;color:var(--color-muted)}.schedule-grid-scroll{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.schedule-grid{width:100%;min-width:900px;border-collapse:collapse;font-size:.85rem}.schedule-grid td,.schedule-grid th{border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border);text-align:left;vertical-align:top}.schedule-grid td:last-child,.schedule-grid th:last-child{border-right:none}.schedule-grid-corner,.schedule-grid-person{width:200px;min-width:200px;padding:var(--space-3);background:var(--color-surface)}.schedule-grid-day{padding:var(--space-3);background:var(--color-surface);font-family:var(--font-display)}.schedule-grid-day-name{display:block;font-size:.95rem;color:var(--color-text)}.schedule-grid-day-count,.schedule-grid-day-date{display:block;font-size:.75rem;font-weight:400;color:var(--color-muted)}.schedule-grid-day-today{box-shadow:inset 0 -3px 0 var(--color-primary)}.schedule-grid-band th{padding:var(--space-2) var(--space-3);background:var(--color-surface-elevated);font-family:var(--font-display);font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted)}.schedule-grid-person-name{display:block;font-weight:600;color:var(--color-text)}.schedule-grid-person-meta{display:block;font-size:.75rem;color:var(--color-muted)}.schedule-grid-cell{position:relative;padding:var(--space-1);height:62px}.schedule-grid-cell-constrained{background:var(--color-cell-unavailable)}.schedule-cell-add{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;padding:0;border:1px dashed transparent;border-radius:var(--radius-sm);background:transparent;color:var(--color-primary);font-size:1.1rem;line-height:1;cursor:pointer;opacity:0;transition:opacity .12s ease-in-out}.schedule-cell-add:focus-visible,.schedule-grid-cell:hover .schedule-cell-add{opacity:1;border-color:var(--color-primary);background:var(--color-cell-hover)}.schedule-cell-add:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.schedule-cell-shifts{display:flex;flex-direction:column;gap:var(--space-1)}.schedule-shift{display:block;width:100%;padding:var(--space-1) var(--space-2);border:1px solid var(--color-shift-published-edge);border-left-width:4px;border-radius:var(--radius-sm);background:var(--color-shift-published-surface);color:var(--color-text);text-align:left;cursor:pointer}.schedule-shift:hover{border-color:var(--color-primary)}.schedule-shift:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.schedule-shift-new{border-color:var(--color-shift-new-edge);background:var(--color-shift-new-surface)}.schedule-shift-edited{border-color:var(--color-shift-edited-edge);background:var(--color-shift-edited-surface)}.schedule-shift-time{display:block;font-weight:600}.schedule-shift-meta{display:block;font-size:.72rem;color:var(--color-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-shift-badges{display:inline-flex;align-items:center;gap:var(--space-1);margin-left:var(--space-1);color:var(--color-danger)}.schedule-grid-empty{padding:var(--space-5);text-align:center;color:var(--color-muted)}.schedule-grid-add-row .schedule-grid-person{padding:var(--space-1) var(--space-2)}.schedule-grid-add-rest{background:var(--color-surface)}.schedule-add-member{display:inline-flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);border:1px dashed var(--color-border);border-radius:var(--radius-sm);background:transparent;color:var(--color-muted);font-size:.78rem;text-align:left;cursor:pointer}.schedule-add-member:hover{border-color:var(--color-primary);border-style:solid;background:var(--color-cell-hover);color:var(--color-primary)}.schedule-add-member:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.availability-grid-scroll{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.availability-grid{width:100%;min-width:900px;border-collapse:collapse;font-size:.85rem}.availability-grid td,.availability-grid th{border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border);text-align:left;vertical-align:top}.availability-grid td:last-child,.availability-grid th:last-child{border-right:none}.availability-grid-corner,.availability-grid-person{width:240px;min-width:240px;padding:var(--space-3);background:var(--color-surface)}.availability-grid-day{padding:var(--space-3);background:var(--color-surface);font-family:var(--font-display)}.availability-grid-day-name{display:block;font-size:.95rem;color:var(--color-text)}.availability-grid-day-date{display:block;font-size:.75rem;font-weight:400;color:var(--color-muted)}.availability-grid-day-today{box-shadow:inset 0 -3px 0 var(--color-primary)}.availability-grid-cell{padding:var(--space-1);height:62px}.availability-grid-cell-today{background:color-mix(in srgb,var(--color-primary) 4%,var(--color-surface))}.availability-grid-cell-off{background:var(--color-cell-unavailable)}.availability-cell-entries{display:flex;flex-direction:column;gap:var(--space-1)}.availability-entry{display:block;padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-left-width:4px;border-radius:var(--radius-sm);background:var(--color-surface-elevated);color:var(--color-text)}.availability-entry-status{display:block;font-weight:600}.availability-entry-window{display:block;font-size:.72rem;color:var(--color-muted)}.availability-entry-preferred{border-color:var(--color-info);background:color-mix(in srgb,var(--color-info) 12%,var(--color-surface))}.availability-entry-available{border-color:var(--color-success);background:color-mix(in srgb,var(--color-success) 10%,var(--color-surface))}.availability-entry-unavailable{border-color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 10%,var(--color-surface))}.availability-entry-time-off{border-color:var(--color-notice-border);background:color-mix(in srgb,var(--color-notice-border) 16%,var(--color-surface))}.availability-entry-superseded{opacity:.55;text-decoration:line-through}.availability-entry-proposed{background:transparent;border-style:dashed dashed dashed solid}.availability-person{display:flex;align-items:flex-start;gap:var(--space-2)}.availability-avatar{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:32px;height:32px;border-radius:50%;background:color-mix(in srgb,var(--color-primary) 16%,var(--color-surface));color:var(--color-primary);font-size:.72rem;font-weight:700;letter-spacing:.02em}.availability-person-text{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.availability-person-name{font-weight:600;color:var(--color-text)}.availability-person-meta{font-size:.72rem;color:var(--color-muted)}.availability-person-warning{display:inline-flex;align-items:center;gap:var(--space-1);font-size:.72rem;color:var(--color-danger)}.availability-request-toggle{display:inline-flex;align-items:center;gap:var(--space-1);padding:0;border:none;background:transparent;color:var(--color-primary);font-size:.75rem;font-weight:600;cursor:pointer}.availability-request-toggle:hover{text-decoration:underline}.availability-request-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.availability-request-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;padding:0 var(--space-1);border-radius:9px;background:var(--color-primary);color:var(--color-primary-text);font-size:.68rem}.availability-grid-request td,.availability-grid-request th{background:var(--color-surface-elevated)}.availability-grid-person-request{display:flex;flex-direction:column;gap:var(--space-1);align-items:flex-start}.availability-request-meta{font-size:.72rem;color:var(--color-muted)}.availability-request-actions{display:inline-flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-1)}.availability-grid-empty{padding:var(--space-5);text-align:center;color:var(--color-muted)}@media (max-width:720px){.schedule-toolbar{align-items:flex-start;flex-direction:column}}.schedule-day-grid{min-width:1100px}.schedule-day-hours{padding:0;background:var(--color-surface)}.schedule-day-hour-strip{display:grid;grid-template-columns:repeat(24,1fr)}.schedule-day-hour{padding:var(--space-2) 0 var(--space-2) var(--space-1);border-left:1px solid var(--color-border);font-size:.7rem;font-weight:400;color:var(--color-muted);white-space:nowrap;overflow:hidden}.schedule-day-track-cell{padding:var(--space-1) 0;height:62px}.schedule-day-track{position:relative;height:46px;background-image:repeating-linear-gradient(to right,var(--color-border) 0 1px,transparent 1px calc(100% / 24))}.schedule-day-slot{position:absolute;top:0;height:100%;padding:0;border:1px dashed transparent;border-radius:var(--radius-sm);background:transparent;cursor:pointer;opacity:0;transition:opacity .12s ease-in-out}.schedule-day-slot:focus-visible,.schedule-day-slot:hover{opacity:1;border-color:var(--color-primary);background:var(--color-cell-hover)}.schedule-day-slot:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.schedule-day-block{position:absolute;top:0;height:100%;min-width:2px;padding:var(--space-1) var(--space-2);border:1px solid var(--color-shift-published-edge);border-left-width:4px;border-radius:var(--radius-sm);background:var(--color-shift-published-surface);color:var(--color-text);text-align:left;overflow:hidden;cursor:pointer}.schedule-day-block:hover{border-color:var(--color-primary)}.schedule-day-block:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.schedule-day-block-open-start{border-top-left-radius:0;border-bottom-left-radius:0;border-left-style:dashed}.schedule-day-block-open-end{border-top-right-radius:0;border-bottom-right-radius:0;border-right-style:dashed}.schedule-day-block-time{display:block;font-size:.78rem;font-weight:600;white-space:nowrap}.schedule-day-block-meta{display:block;font-size:.7rem;color:var(--color-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-month-grid{min-width:840px;table-layout:fixed}.schedule-month-cell{height:132px;padding:var(--space-1);vertical-align:top}.schedule-month-cell-outside{background:var(--color-surface-elevated)}.schedule-month-cell-outside .schedule-month-date{color:var(--color-muted)}.schedule-month-cell-today{box-shadow:inset 0 3px 0 var(--color-primary)}.schedule-month-cell-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-1)}.schedule-month-date{padding:0 var(--space-1);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font-family:var(--font-display);font-size:.85rem;cursor:pointer}.schedule-month-date:hover{background:var(--color-cell-hover);color:var(--color-primary)}.schedule-month-add{padding:0 var(--space-2);border:1px dashed transparent;border-radius:var(--radius-sm);background:transparent;color:var(--color-primary);font-size:.95rem;line-height:1.4;cursor:pointer;opacity:0;transition:opacity .12s ease-in-out}.schedule-month-add:focus-visible,.schedule-month-cell:hover .schedule-month-add{opacity:1;border-color:var(--color-primary);background:var(--color-cell-hover)}.schedule-month-add:focus-visible,.schedule-month-date:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.schedule-month-chips{display:flex;flex-direction:column;gap:2px;margin-top:var(--space-1);max-height:96px;overflow-y:auto}.schedule-month-chip{display:block;width:100%;padding:2px var(--space-1);border:1px solid var(--color-shift-published-edge);border-left-width:3px;border-radius:var(--radius-sm);background:var(--color-shift-published-surface);color:var(--color-text);text-align:left;cursor:pointer}.schedule-month-chip:hover{border-color:var(--color-primary)}.schedule-month-chip:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.schedule-month-chip-time{display:block;font-size:.7rem;font-weight:600}.schedule-month-chip-person{display:block;font-size:.68rem;color:var(--color-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.availability-editor-card{display:flex;flex-direction:column;gap:var(--space-4)}.availability-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.availability-editor-head-actions{display:flex;align-items:center;gap:var(--space-3)}.availability-editor-summary{margin:0;font-family:var(--font-display);font-size:.95rem;color:var(--color-text)}.availability-editor-dirty{padding:2px var(--space-2);border:1px solid var(--color-notice-border);border-radius:999px;background:var(--color-notice-surface);color:var(--color-notice-text);font-size:.72rem;white-space:nowrap}.availability-editor-grid-scroll{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.availability-editor-grid{min-width:820px;font-size:.85rem}.availability-editor-grid-head,.availability-editor-grid-row{display:flex;align-items:stretch}.availability-editor-grid-row{border-top:1px solid var(--color-border)}.availability-editor-grid-corner,.availability-editor-grid-day{display:flex;align-items:center;gap:var(--space-2);flex:0 0 268px;width:268px;padding:var(--space-2) var(--space-3);border-right:1px solid var(--color-border)}.availability-editor-grid-day{flex-direction:column;align-items:stretch;justify-content:center;gap:var(--space-1)}.availability-editor-grid-day-head{display:flex;align-items:center;gap:var(--space-2)}.availability-editor-grid-day-name{font-family:var(--font-display);font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.availability-editor-grid-day-hours{font-size:.75rem;color:var(--color-muted);white-space:nowrap}.availability-editor-grid-day-actions{display:flex;align-items:center;gap:var(--space-1);margin-left:auto;opacity:.55;transition:opacity .12s ease-in-out}.availability-editor-grid-day-actions:focus-within,.availability-editor-grid-row:hover .availability-editor-grid-day-actions{opacity:1}.availability-editor-day-add,.availability-editor-day-menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-elevated);color:var(--color-primary);cursor:pointer}.availability-editor-day-add:not(:disabled):hover,.availability-editor-day-menu-trigger:not(:disabled):hover{border-color:var(--color-primary);background:var(--color-cell-hover)}.availability-editor-day-add:focus-visible,.availability-editor-day-menu-trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.availability-editor-day-mode{display:flex;align-items:stretch;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-elevated);overflow:hidden}.availability-editor-day-mode-option{flex:1 1;min-width:0;padding:var(--space-1) var(--space-2);border:0;border-left:1px solid var(--color-border);background:transparent;color:var(--color-muted);font-family:inherit;font-size:.72rem;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.availability-editor-day-mode-option:first-child{border-left:0}.availability-editor-day-mode-option:not(:disabled):hover{background:var(--color-cell-hover);color:var(--color-text)}.availability-editor-day-mode-option:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.availability-editor-day-mode-option:disabled{cursor:not-allowed;opacity:.6}.availability-editor-day-mode-option[data-selected]{color:var(--color-text);font-weight:600}.availability-editor-day-mode-option[data-mode=available][data-selected]{background:var(--color-availability-available-surface);box-shadow:inset 0 -2px 0 var(--color-availability-available-edge)}.availability-editor-day-mode-option[data-mode=unavailable][data-selected]{background:var(--color-availability-unavailable-surface);box-shadow:inset 0 -2px 0 var(--color-availability-unavailable-edge)}.availability-editor-day-mode-option[data-mode=custom][data-selected]{background:var(--color-cell-hover);box-shadow:inset 0 -2px 0 var(--color-primary)}.availability-editor-day-menu{min-width:200px;padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-elevated);box-shadow:var(--shadow-card);z-index:40}.availability-editor-day-menu-item{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text);font-size:.85rem;cursor:pointer;outline:none}.availability-editor-day-menu-item[data-highlighted]{background:var(--color-cell-hover)}.availability-editor-day-menu-item-danger{color:var(--color-danger)}.availability-editor-track{position:relative;flex:1 1 auto;min-height:52px}.availability-editor-track-hours{display:flex;height:100%}.availability-editor-grid-hours{flex:1 1 auto;min-width:0;min-height:34px}.availability-editor-slot{flex:1 1;min-width:0;padding:0;border:0;border-right:1px solid var(--color-border);background:transparent}.availability-editor-slot:last-child{border-right:0}button.availability-editor-slot{cursor:pointer}button.availability-editor-slot:not(:disabled):hover{background:var(--color-cell-hover)}.availability-editor-hour{flex:1 1;min-width:0;padding:var(--space-2) 0 var(--space-2) var(--space-1);border-right:1px solid var(--color-border);color:var(--color-muted);font-size:.72rem;white-space:nowrap;overflow:hidden}.availability-editor-hour:last-child{border-right:0}.availability-editor-track-blocks{position:absolute;inset:0;pointer-events:none}.availability-editor-block{position:absolute;top:var(--space-1);bottom:var(--space-1);display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:2px var(--space-2);border:1px solid var(--color-border);border-left-width:4px;border-radius:var(--radius-sm);background:var(--color-surface-elevated);color:var(--color-text);text-align:left;pointer-events:auto}button.availability-editor-block{cursor:pointer}button.availability-editor-block:not(:disabled):hover{border-color:var(--color-primary)}button.availability-editor-block:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.availability-editor-block-available{border-color:var(--color-availability-available-edge);background:var(--color-availability-available-surface)}.availability-editor-block-preferred{border-color:var(--color-availability-preferred-edge);background:var(--color-availability-preferred-surface)}.availability-editor-block-unavailable{border-color:var(--color-availability-unavailable-edge);background:var(--color-availability-unavailable-surface)}.availability-editor-block-invalid{border-style:dashed;border-color:var(--color-danger)}.availability-editor-block-label{font-size:.75rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.availability-editor-block-status{font-size:.68rem;color:var(--color-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.availability-editor-grid-issues{padding:var(--space-1) var(--space-3) var(--space-2) 268px}.availability-editor-issue{display:flex;align-items:center;gap:var(--space-2);margin:0;color:var(--color-danger);font-size:.78rem}.availability-editor-legend{display:flex;flex-wrap:wrap;gap:var(--space-4);font-size:.78rem;color:var(--color-muted)}.availability-editor-legend-item{display:inline-flex;align-items:center;gap:var(--space-2)}.availability-editor-legend-swatch{display:inline-block;width:22px;height:12px;border:1px solid var(--color-border);border-left-width:4px;border-radius:var(--radius-sm)}@media (max-width:720px){.availability-editor-head{flex-direction:column}}.timesheet-scope{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.timesheet-scope-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-family:var(--font-display);font-size:.85rem;cursor:pointer}.timesheet-scope-btn.is-active,.timesheet-scope-btn:hover{border-color:var(--color-primary)}.timesheet-scope-btn.is-active{background:var(--color-primary);color:var(--color-primary-text)}.timesheet-scope-count{display:inline-flex;min-width:1.6em;justify-content:center;padding:0 var(--space-1);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-text) 10%,transparent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.timesheet-scope-btn.is-active .timesheet-scope-count{background:color-mix(in srgb,var(--color-primary-text) 22%,transparent)}.timesheet-days{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.timesheet-day-chip{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:2px;min-width:58px;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:.75rem;cursor:pointer}.timesheet-day-chip.is-active,.timesheet-day-chip:hover{border-color:var(--color-primary)}.timesheet-day-chip.is-active{background:color-mix(in srgb,var(--color-primary) 14%,var(--color-surface))}.timesheet-day-name{font-family:var(--font-display);font-size:.8rem}.timesheet-day-count,.timesheet-day-date{color:var(--color-muted)}.timesheet-day-alert{position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;background:var(--color-danger)}.timesheet-list-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.timesheet-table .timesheet-group-head{padding:var(--space-3);background:var(--color-surface-elevated);border-bottom:1px solid var(--color-border);text-align:left;font-weight:400}.timesheet-group+.timesheet-group .timesheet-group-head{border-top:8px solid var(--color-bg)}.timesheet-group-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.timesheet-group-toggle{display:inline-flex;align-items:center;gap:var(--space-2);padding:0;border:none;background:none;color:var(--color-text);cursor:pointer}.timesheet-group-name{font-family:var(--font-display);font-size:1rem}.timesheet-chevron{width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:6px solid;transition:transform .12s ease}.timesheet-chevron.is-open{transform:rotate(90deg)}.timesheet-group-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-right:auto;font-size:.82rem}.timesheet-variance{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-notice-text)}.timesheet-punch{display:block}.timesheet-punch-total{display:block;font-size:.78rem;color:var(--color-muted)}.timesheet-note-row td{padding-top:0;border-top:none}.timesheet-note{margin:0 0 var(--space-1);padding-left:var(--space-3);border-left:2px solid var(--color-border);font-size:.82rem;color:var(--color-text)}.timesheet-note-source{color:var(--color-muted);font-family:var(--font-display)}@media (max-width:720px){.timesheet-group-bar,.timesheet-list-head{align-items:flex-start;flex-direction:column}}