:root{--font-sans:"Figtree", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--on-primary:#fff;--on-danger:#fff;--danger-solid:var(--danger);--sidebar-surface:var(--surface);--color-text:var(--ink);--font-weight-title:500;--font-weight-emphasis:500;--font-weight-table-header:600;--font-table-header:var(--font-sans);--text-table-header:.8125rem;--lh-table-header:1rem;--tracking-table-header:-.011em;--font-navigation:var(--font-sans);--primary:#5a58eb;--primary-hover:#3b39db;--accent:#3835d4;--selected-surface:#ededfd;--hover-surface:#f4f3f7;--card-hover-surface:var(--hover-surface);--menu-hover-surface:#e3e2f8;--focus-ring:#6e4eef47;--active-border:color-mix(in srgb, var(--primary) 60%, var(--border-input));--active-highlight:color-mix(in srgb, var(--primary) 12%, transparent);--ink:#1a1a1a;--muted:#333;--pdf-scrollbar-thumb:#b0b0b0;--pdf-scrollbar-track:#ededed;--pdf-scrollbar-track-shadow:inset 0 1px 3px #0000001f, inset 0 -1px 1px #ffffffa6;--workspace-header-text:#666;--reference-muted-text:#706a7c;--pagination-text:var(--reference-muted-text);--search-foreground:#191325;--search-border:#b4b1ff;--subtle:#847e91;--border:#e4e1ea;--border-input:var(--subtle);--background:#f9f9fb;--surface:#fff;--option-surface:#f4f3f7;--school-card-surface:var(--surface);--school-card-border:var(--border);--table-header-surface:var(--surface);--table-border:var(--school-card-border);--card-shadow:0 2px 6px -1px #30293d0f, 0 4px 12px -2px #30293d0a;--card-hover-shadow:0 6px 12px -2px #30293d12, 0 12px 28px -6px #30293d0f;--school-card-shadow:var(--card-shadow);--school-card-hover-shadow:var(--card-hover-shadow);--success:#287e68;--success-surface:#e7f7f0;--warning:#9a4d00;--warning-surface:#fff4e5;--danger:#b4233c;--danger-surface:#fff1f2;--danger-border:#fda4af;--danger-ink:#7f1d1d;--info:var(--accent);--info-surface:#ededfd;--stat-violet:#6843a5;--stat-violet-surface:#f2edff;--stat-rose:#a83d60;--stat-rose-surface:#fff0f4;--stat-sky:#246b83;--stat-sky-surface:#e8f6fa;--sidebar-hover:#f4f3f7;--text-display:1.75rem;--lh-display:2.125rem;--text-page:1.5rem;--lh-page:1.875rem;--text-headline:1.125rem;--lh-headline:1.5rem;--text-section:1rem;--lh-section:1.375rem;--text-body:.875rem;--lh-body:1.25rem;--text-label:.75rem;--lh-label:1.125rem;--text-overline:var(--text-label);--text-control-sm:.8125rem;--page-gutter:24px;--page-header-gap:20px;--section-gap:24px;--panel-gap:16px;--card-padding:20px;--form-gap:16px;--field-gap:4px;--action-gap:8px;--target-touch:2.75rem;--table-header-h:2.75rem;--table-row-h:3.5rem;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--loading-spinner-stroke:3.5;--pdf-preview-height:65vh;--r-sm:10px;--r-tile:16px;--r-md:24px;--r-full:9999px;--control-h:2.25rem;--control-h-sm:2rem;--select-menu-max-h:320px;--z-popover:50;--otp-cell-h:56px;--otp-row-w:280px;--sidebar-w:243px;--sidebar-collapsed-w:64px;--topbar-h:3.5rem;--sh-menu:0 4px 8px -1px #30293d12, 0 8px 20px -4px #30293d0f;--sh-dialog:0 8px 16px -4px #30293d0f, 0 20px 40px -8px #30293d1a;--scrim:#202c4b5c;--disabled-opacity:.5;--color-primary:var(--primary);--color-primary-hover:var(--primary-hover);--color-background:var(--background);--color-surface:var(--surface);--color-text-primary:var(--ink);--color-text-muted:var(--muted);--color-supporting-blue:var(--accent);--color-supporting-gray:var(--muted);--color-supporting-blue-light:var(--primary);--color-error:var(--danger);--color-border:var(--border);--color-success:var(--success);--space-3:var(--sp-3);--space-5:var(--sp-5);--space-1:var(--sp-1);--space-2:var(--sp-2);--space-4:var(--sp-4);--space-6:var(--sp-6);--space-8:var(--sp-8);--radius-sm:var(--r-sm);--radius-md:var(--r-sm);--radius-lg:var(--r-md);--radius-full:var(--r-full)}@media (width<=899px){:root{--page-gutter:16px;--card-padding:16px}}@media (width<=899px),(any-pointer:coarse){:root{--control-h:var(--target-touch);--control-h-sm:var(--target-touch)}}:root[data-theme=dark]{--background:#262626;--surface:#353337;--sidebar-surface:#18181b;--ink:#fbfbfb;--muted:#bcbabf;--pdf-scrollbar-track:#3a3a3a;--pdf-scrollbar-track-shadow:inset 0 1px 3px #00000073, inset 0 -1px 1px #ffffff0f;--workspace-header-text:var(--muted);--reference-muted-text:#b2b1b7;--search-foreground:#fbfbfb;--subtle:#9c9aa2;--border:#484851;--border-input:#828089;--primary:#6f6dee;--primary-hover:#8a88f1;--on-primary:#191325;--accent:#a9a8fa;--selected-surface:#33325d;--hover-surface:#46444a;--menu-hover-surface:#444365;--option-surface:#46444a;--table-header-surface:var(--surface);--sidebar-hover:var(--hover-surface);--info-surface:#323253;--success:#85d9b7;--success-surface:#203d32;--warning:#f2c47d;--warning-surface:#443522;--danger:#ffacb8;--danger-surface:#482832;--danger-border:#ad6575;--danger-ink:#72273b;--danger-solid:var(--danger-ink);--stat-violet:#c6a5f4;--stat-violet-surface:#3b2e4e;--stat-rose:#f0a5bf;--stat-rose-surface:#462c37;--stat-sky:#8cd7ed;--stat-sky-surface:#253d45;--focus-ring:#8a88f159;--card-shadow:0 2px 6px -1px #00000038, 0 4px 12px -2px #0000002e;--card-hover-shadow:0 6px 12px -2px #0000003d, 0 12px 28px -6px #0003;--sh-menu:0 4px 8px -1px #00000038, 0 8px 20px -4px #0000002e;--sh-dialog:0 8px 16px -4px #0000003d, 0 20px 40px -8px #00000047;--scrim:#000000a6}*{box-sizing:border-box}html:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html{font-size:100%;line-height:var(--lh-body);font-family:var(--font-sans);background:var(--color-background);color:var(--color-text-primary)}body{font-size:var(--text-body);line-height:var(--lh-body);min-width:320px;min-height:100dvh;margin:0}button,input,select,textarea{font:inherit}a{color:inherit}strong,b{font-weight:var(--font-weight-emphasis)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);background:var(--color-background);min-height:100dvh;display:grid}.admin-sidebar{background:var(--sidebar-surface);min-height:100dvh;color:var(--ink);border-right:1px solid var(--border);padding:var(--sp-5) var(--sp-3);flex-direction:column;align-self:start;display:flex;position:sticky;top:0}.sidebar__brand{align-items:center;gap:var(--space-2);font-size:var(--text-section);margin-bottom:var(--sp-6);font-weight:700;display:flex}.sidebar__nav{gap:var(--space-1);display:grid}.sidebar__footer{gap:var(--space-2);padding-top:var(--sp-3);border-top:1px solid var(--border);margin-top:auto;display:grid}.profile-trigger--sidebar{color:#ffffffe6}.profile-trigger--sidebar:hover{background:#ffffff1f}.profile-trigger--sidebar .profile-trigger__avatar{color:var(--on-primary);background:#ffffff29}.sidebar__logout{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);min-height:44px;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:0;padding:0 10px;font-weight:600;display:inline-flex}.sidebar__logout:is(:hover,:focus-visible):not(:disabled){background:var(--sidebar-hover)}.sidebar__logout:focus-visible:not(:disabled),.sidebar__logout:focus-visible:not(:disabled) svg,.theme-toggle:focus-visible:not(:disabled) svg{color:var(--accent)}.sidebar__link{align-items:center;gap:var(--space-2);min-height:var(--control-h);padding:0 var(--sp-3);border-radius:var(--radius-md);color:var(--ink);font-weight:500;text-decoration:none;display:flex;position:relative}.sidebar__link:where(button){appearance:none;text-align:left;cursor:pointer;background:0 0;border:0;width:100%}.sidebar__link.active{background:var(--selected-surface);color:var(--accent);font-weight:600}.main-region{min-width:0}.topbar{min-height:var(--topbar-h);justify-content:space-between;align-items:center;gap:var(--space-4);padding:0 var(--page-gutter);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex}.topbar>div{gap:2px;display:grid}.topbar span{color:var(--color-supporting-gray);font-size:var(--text-body)}.topbar__menu{display:none}.content{padding:var(--page-gutter)}.page-header{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.page-header__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.page-header h1{margin:0 0 var(--space-1);font-size:var(--text-page);line-height:var(--lh-page)}.page-header p{color:var(--color-supporting-gray);margin:0}.card{background:var(--color-surface);box-shadow:var(--card-shadow);border-radius:var(--r-md);margin-bottom:var(--space-4);border:0}.card__body{padding:var(--card-padding)}.button{min-height:var(--control-h);justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-4);border-radius:var(--radius-md);background:var(--color-primary);color:var(--on-primary);cursor:pointer;border:1px solid #0000;font-weight:600;text-decoration:none;display:inline-flex}.button:hover{background:var(--color-primary-hover)}.button:disabled{opacity:.5;cursor:not-allowed}.button--secondary{background:var(--color-surface);color:var(--color-text-primary);border-color:var(--border-input)}.button--secondary:hover{background:var(--color-background);border-color:var(--subtle)}.icon-button{width:var(--control-h);height:var(--control-h);border-radius:var(--radius-md);color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{background:var(--option-surface);color:var(--ink)}.icon-button--danger:hover{color:var(--color-error);border-color:color-mix(in srgb, var(--color-error) 40%, var(--color-border))}.icon-button:disabled{opacity:.5;cursor:not-allowed}.input,.select{width:100%;min-height:var(--control-h);border:1px solid var(--border-input);border-radius:var(--r-sm);padding:0 var(--sp-3);font-size:var(--text-body);line-height:var(--lh-body);color:var(--color-text-primary);background:var(--color-surface)}.textarea{min-height:96px;padding-top:var(--space-3);padding-bottom:var(--space-3);resize:vertical;line-height:1.5}.field{gap:var(--field-gap);align-content:start;display:grid}.field label{font-weight:600;font-size:var(--text-body)}.form-grid{gap:var(--space-4);display:grid}.table-wrap{border:0;border-radius:0;position:relative;overflow-x:auto}.listing-card .pagination-controls{padding:var(--sp-3) var(--card-padding);margin:0}.table{border-collapse:collapse;width:100%;min-width:var(--table-min-width,0);margin:0}.table th,.table td{border-bottom:1px solid var(--table-border);text-align:left;vertical-align:top;padding:14px 16px}.table th{color:var(--color-supporting-gray);font-size:var(--text-control-sm);text-transform:uppercase}.badge{min-height:var(--sp-6);border-radius:var(--radius-full);background:var(--option-surface);color:var(--muted);font-weight:700;font-size:var(--text-label);align-items:center;padding:0 10px;display:inline-flex}.badge--muted{background:var(--color-background);color:var(--color-supporting-gray)}.state{padding:var(--space-6);color:var(--color-supporting-gray)}.loading-state{text-align:center;justify-content:center;align-items:center;gap:var(--sp-3);min-height:calc(var(--sp-10) * 4);color:var(--muted);font-size:var(--text-body);flex-direction:column;display:flex}.retry-state{text-align:center;justify-content:center;align-items:center;gap:var(--sp-4);min-height:calc(var(--sp-10) * 4);flex-direction:column;display:flex}.retry-state__icon{width:var(--sp-12);height:var(--sp-12);border-radius:var(--r-tile);background:var(--danger-surface);color:var(--danger);flex:none;place-items:center;display:grid}.retry-state__icon svg{width:var(--sp-6);height:var(--sp-6)}.retry-state__copy{overflow-wrap:anywhere;max-width:48ch}.retry-state__copy strong{font-size:var(--text-headline);line-height:var(--lh-headline);margin-bottom:var(--sp-2)}.retry-state__copy p{font-size:var(--text-body);line-height:var(--lh-body)}.loading-state--page{background:var(--background);min-height:100dvh}.loading-spinner{width:var(--sp-12);height:var(--sp-12);stroke-width:var(--loading-spinner-stroke);color:var(--primary);flex:none;animation:1s linear infinite spin}.loading-spinner--small{width:var(--sp-4);height:var(--sp-4);color:currentColor}.state strong{margin-bottom:var(--space-1);color:var(--color-text-primary);display:block}.state p,.muted{color:var(--color-supporting-gray);margin:0;line-height:1.6}.metric-grid{gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.metric{align-items:center;gap:var(--space-4);display:flex}.metric svg{color:var(--color-supporting-blue)}.metric span{color:var(--color-supporting-gray);font-size:var(--text-body);display:block}.metric strong{font-size:var(--text-display);margin-top:2px;line-height:1;display:block}.dashboard-stat-grid{gap:var(--sp-4);margin-bottom:var(--sp-5);grid-template-columns:repeat(auto-fit,minmax(170px,1fr));display:grid}.dashboard-stat{--stat-accent:var(--info);--stat-surface:var(--info-surface);grid-template-columns:minmax(0, 1fr) var(--sp-12);align-content:start;justify-items:start;gap:var(--sp-2);min-width:0;padding:var(--sp-5);background:var(--stat-surface);color:var(--ink);border:0;margin:0;text-decoration:none;display:grid}.dashboard-stat[data-tone=violet]{--stat-accent:var(--stat-violet);--stat-surface:var(--stat-violet-surface)}.dashboard-stat[data-tone=rose]{--stat-accent:var(--stat-rose);--stat-surface:var(--stat-rose-surface)}.dashboard-stat[data-tone=green]{--stat-accent:var(--success);--stat-surface:var(--success-surface)}.dashboard-stat[data-tone=amber]{--stat-accent:var(--warning);--stat-surface:var(--warning-surface)}.dashboard-stat[data-tone=sky]{--stat-accent:var(--stat-sky);--stat-surface:var(--stat-sky-surface)}.dashboard-stat{box-shadow:var(--card-shadow);transition:scale .15s,transform .15s,box-shadow .15s}.dashboard-stat[href]:hover{box-shadow:var(--card-hover-shadow);transform:translateY(-2px)}.dashboard-stat[href]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media (hover:hover) and (pointer:fine){.dashboard-stat[href]:hover{scale:1.015}}@media (prefers-reduced-motion:reduce){.dashboard-stat,.dashboard-stat[href]:hover{transition:none;transform:scale(1)}}.dashboard-stat__icon{width:var(--sp-12);height:var(--sp-12);border-radius:var(--r-full);border:1px solid color-mix(in srgb, var(--stat-accent) 20%, transparent);background:var(--surface);color:var(--stat-accent);flex-shrink:0;grid-area:1/2/span 2;place-items:center;display:grid}.dashboard-stat__icon svg{width:var(--sp-5);height:var(--sp-5)}.dashboard-stat__label{color:var(--stat-accent);font-size:calc(var(--text-label) + 1px);line-height:var(--lh-label);text-transform:uppercase;overflow-wrap:anywhere;grid-area:1/1;font-weight:600}.dashboard-stat__description{color:var(--reference-muted-text);font-size:var(--text-label);line-height:var(--lh-label);grid-column:1/-1}.dashboard-recent__header .muted,.dashboard-recent__list .muted{color:var(--reference-muted-text)}.dashboard-stat strong{color:var(--ink);font-size:var(--text-display);line-height:var(--lh-display);grid-area:2/1}.dashboard-recent__list{margin:var(--sp-5) 0 0;padding:0;list-style:none}.dashboard-recent__list li{justify-content:space-between;gap:var(--sp-4);padding:var(--sp-3) 0;border-top:1px solid var(--border);display:flex}.dashboard-recent__list li:first-child{border-top:0}.dashboard-recent__list li>div{gap:var(--sp-1);display:grid}.dashboard-recent__metadata{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.dashboard-recent__list time{color:var(--muted);white-space:nowrap}@media (width<=560px){.dashboard-recent__list li{flex-direction:column}}.section-heading{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.section-heading h2{font-size:var(--text-headline);margin:0}.auth-page{min-height:100dvh;padding:var(--space-4);background:linear-gradient(135deg, #506ee414, #6fccd814), var(--color-background);place-items:center;display:grid}.auth-panel{width:min(100%,420px);padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.auth-panel__brand{align-items:center;gap:var(--space-2);color:var(--color-supporting-blue);font-weight:700;display:flex}.auth-panel h1{margin:var(--space-6) 0 var(--space-2)}.auth-panel p{margin:0 0 var(--space-6);color:var(--color-supporting-gray);line-height:1.6}@media (width<=1180px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=860px){.app-shell{grid-template-columns:1fr}.admin-sidebar{min-height:auto;padding:var(--space-4);position:static}.sidebar__brand{margin-bottom:var(--space-4)}.sidebar__nav{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{padding:var(--space-4)}.topbar__menu{display:inline-flex}.content{padding:var(--space-4)}.page-header{flex-direction:column;align-items:flex-start}}@media (width<=560px){.sidebar__nav,.metric-grid{grid-template-columns:1fr}.topbar{flex-wrap:wrap;align-items:flex-start}.topbar>div{order:3;width:100%}.topbar>.topbar__actions{order:initial;width:auto}.auth-panel{padding:var(--space-6)}}.count-pill{border-radius:var(--radius-full);background:var(--selected-surface);min-width:32px;min-height:28px;color:var(--color-supporting-blue);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 8px;font-weight:700;display:inline-flex}@media (width<=560px){.assignment-controls{flex-direction:column;align-items:stretch}.assignment-controls .field{max-width:none}}.state--error{color:var(--color-error)}.eyebrow{margin-bottom:var(--space-2);color:var(--color-supporting-gray);font-size:var(--text-control-sm);text-transform:uppercase;font-weight:700}.table-link:hover{text-decoration:underline}.form-layout{gap:var(--space-4);display:grid}.form-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.field-help{color:var(--color-supporting-gray);font-size:var(--text-control-sm);line-height:1.5}.search-field{align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:44px;padding:0 var(--space-3);flex:1;min-width:min(320px,100%);display:inline-flex}.search-field input{min-width:0;color:var(--color-text-primary);background:0 0;border:0;outline:0}.import-toolbar{gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.status-badge{gap:6px}.pagination-controls,.primary-action-row{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);display:flex}.pagination-controls>div{gap:var(--space-2);display:flex}.detail-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);display:grid}.definition-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.definition-grid div{min-width:0}.definition-grid dt{color:var(--color-supporting-gray);font-size:var(--text-control-sm);font-weight:700}.definition-grid dd{overflow-wrap:anywhere;margin:4px 0 0}.inline-alert{align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);line-height:1.5;display:flex}.inline-alert--success{background:var(--success-surface);color:var(--success)}.inline-alert--warning{background:var(--warning-surface);color:var(--warning)}.inline-alert--error{background:var(--danger-surface);color:var(--color-error)}.inline-alert--info{background:var(--info-surface);color:var(--info)}.file-slot-list,.timeline,.issue-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.file-slot{justify-content:space-between;gap:var(--space-4);padding:var(--space-4) 0;border-top:1px solid var(--color-border);display:flex}.file-slot>div:first-child{gap:4px;min-width:0;display:grid}.file-slot span{color:var(--color-supporting-gray);overflow-wrap:anywhere}.file-slot__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.file-slot progress{width:160px;height:10px}.timeline li{padding-left:var(--space-4);border-left:3px solid var(--color-border);gap:3px;display:grid}.timeline span{color:var(--color-supporting-gray);font-size:var(--text-body)}.issue-list li{align-items:flex-start;gap:var(--space-2);color:var(--color-supporting-gray);line-height:1.55;display:flex}.issue-list svg{color:currentColor;flex:none;margin-top:3px}.issue-list--compact{margin-top:var(--space-3)}.preview-workspace{gap:var(--space-4);display:grid}.preview-header{align-items:center;gap:var(--space-4);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.preview-header h1{font-size:var(--text-page);margin:0}.preview-header p{margin:var(--space-1) 0 0;color:var(--color-supporting-gray)}.preview-header__mobile-actions{gap:var(--space-2);display:none}.preview-layout{gap:var(--space-4);grid-template-columns:260px minmax(0,1fr) 320px;align-items:start;display:grid}.preview-pane,.reading-canvas{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.preview-pane{top:var(--space-4);padding:var(--space-4);max-height:calc(100dvh - 160px);position:sticky;overflow:auto}.preview-pane h2,.drawer h2{margin:0 0 var(--space-3);font-size:var(--text-headline)}.toc-list{gap:var(--space-2);display:grid}.toc-list a{border-radius:var(--radius-md);min-height:36px;color:var(--color-text-primary);align-items:center;text-decoration:none;display:flex}.toc-list a:hover{background:var(--hover-surface)}.reading-canvas{padding:clamp(var(--space-4), 4vw, var(--space-8))}.preview-cover{margin:0 0 var(--space-6);text-align:center}.preview-cover img,.preview-section img{border-radius:var(--radius-md);max-width:100%;height:auto}.preview-section{padding:var(--space-6) 0;border-top:1px solid var(--color-border)}.preview-section:first-child{border-top:0}.preview-section h2{margin:0 0 var(--space-3);font-size:1.375rem}.preview-prose,.preview-section p{line-height:1.75}.preview-section figure{margin:var(--space-4) 0}.preview-section figcaption,.preview-cover figcaption{margin-top:var(--space-2);color:var(--color-supporting-gray);font-size:var(--text-body)}.sticky-action-bar{bottom:var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--sh-menu);display:flex;position:sticky}.sticky-action-bar span{color:var(--color-supporting-gray)}.drawer-backdrop{z-index:1000;background:var(--scrim);display:none;position:fixed;inset:0}.drawer{width:min(88vw,380px);height:100%;padding:var(--space-4);background:var(--color-surface);margin-left:auto;overflow:auto}.drawer__header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}@media (width<=1100px){.detail-grid,.preview-layout{grid-template-columns:1fr}.preview-pane--toc,.preview-pane--details{display:none}.preview-header{grid-template-columns:auto minmax(0,1fr)}.preview-header__mobile-actions{flex-wrap:wrap;grid-column:1/-1;display:flex}.drawer-backdrop{display:block}}@media (width<=640px){.import-toolbar,.file-slot,.sticky-action-bar,.pagination-controls{flex-direction:column;align-items:stretch}.search-field,.file-slot__actions,.sticky-action-bar .button,.pagination-controls .button{width:100%}.definition-grid,.preview-header{grid-template-columns:1fr}}.toolbar{gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.login-card{width:min(540px,100%)}@media (width<=900px){.app-shell{grid-template-columns:1fr}.admin-sidebar{min-height:auto;position:static}.sidebar__nav{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.content,.topbar{padding-left:var(--space-4);padding-right:var(--space-4)}.page-header{flex-direction:column;align-items:stretch}}.topbar__actions{align-items:center;gap:var(--space-2);display:flex}.topbar>.topbar__actions{gap:var(--sp-3);margin-left:auto;display:flex}.profile-trigger{border-radius:var(--radius-md);align-items:center;gap:10px;min-height:44px;padding:4px 10px 4px 4px;text-decoration:none;display:inline-flex}.profile-trigger:hover{background:var(--color-background)}.profile-trigger__avatar,.profile-avatar{background:var(--selected-surface);color:var(--color-supporting-blue);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.profile-trigger__avatar{width:34px;height:34px}.profile-trigger__copy{gap:1px;display:grid}.profile-trigger__copy strong{font-size:var(--text-control-sm)}.profile-trigger__copy small{color:var(--color-supporting-gray);font-size:var(--text-label)}.button--danger:hover{color:var(--color-error);border-color:var(--color-error)}.form-layout,.form-layout--user{max-width:880px}.form-section{gap:var(--space-5);display:grid}.form-section__heading{justify-content:space-between;gap:var(--space-4);display:flex}.form-section__heading h2{margin:0;font-size:1.25rem}.form-section+.role-assignment-picker{margin-top:var(--space-8)}.form-actions{margin-top:var(--space-4);padding-top:var(--sp-5);border-top:1px solid var(--border);justify-content:flex-end;display:flex}.form-helper{margin:var(--space-6) 0 0;color:var(--color-supporting-gray);font-size:var(--text-body)}.form-helper--notice{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--info-surface);color:var(--color-text-primary);padding:12px}.permission-picker{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--color-border)}.permission-picker h2{font-size:var(--text-headline);margin:0}.permission-checklist{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.permission-groups{gap:var(--space-4);display:grid}.permission-group{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-background)}.permission-group__header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-3);color:var(--color-text-primary);display:flex}.permission-group__header span{color:var(--color-supporting-gray);font-size:var(--text-label);font-weight:600}.permission-groups--summary{min-width:min(100%,480px)}.permission-summary-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.permission-summary{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-supporting-gray);font-size:var(--text-label);padding:6px 9px}.permission-check{align-items:flex-start;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;min-height:56px;padding:12px;display:flex}.permission-check:hover{border-color:var(--color-supporting-blue-light);background:var(--background)}.permission-check input{width:18px;height:18px;accent-color:var(--color-supporting-blue);margin:2px 0 0}.permission-check span{gap:3px;display:grid}.permission-check small{color:var(--color-supporting-gray);font-size:var(--text-label)}.role-assignment-picker{gap:var(--space-4);margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--color-border);display:grid}.role-assignment-picker h2{font-size:var(--text-headline);margin:0}.role-assignment-list{gap:var(--space-3);display:grid}.role-assignment-builder{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);display:grid}.role-assignment-picker>.role-assignment-builder{order:3}.role-assignment-builder__heading{gap:4px;display:grid}.role-assignment-builder__heading span{color:var(--color-supporting-gray);font-size:var(--text-control-sm)}.role-assignment-builder__controls{align-items:end;gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr)) auto;display:grid}.role-assignment-picker>.role-assignment-list__heading{order:1}.role-assignment-picker>.role-assignment-list{order:2}.role-assignment-list__heading{color:var(--color-text-primary);font-size:var(--text-body);font-weight:700}.role-assignment-global{border:1px solid var(--color-border);border-radius:var(--radius-md);min-height:44px;color:var(--color-supporting-gray);font-size:var(--text-body);align-items:center;padding:0 12px;display:flex}.role-assignment-empty{padding:var(--space-4);border:1px dashed var(--color-border);border-radius:var(--radius-md);text-align:center;margin:0}.role-assignment-row{align-items:center;gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(190px,280px);display:grid}.role-assignment-row__main{margin:0}.role-assignment-row__scope,.role-assignment-row__scope .select{width:100%}.user-role-summary{gap:var(--space-2);max-width:680px;display:grid}.user-role-summary__item{justify-content:space-between;gap:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);padding:10px 12px;display:flex}.user-role-summary__item span{color:var(--color-supporting-gray);font-size:var(--text-control-sm);text-align:right}.form-error{color:var(--color-error);font-size:var(--text-body);margin:0}.table-link{color:var(--color-text-primary);font-weight:700;text-decoration:none}.table-link:hover{color:var(--color-supporting-blue);text-decoration:underline}.table-actions{gap:var(--space-2);display:flex}.search-field{align-items:center;gap:var(--space-2);min-width:min(360px,100%);min-height:44px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-supporting-gray);display:flex}.search-field input{min-width:0;color:var(--color-text-primary);background:0 0;border:0;outline:0;flex:1}.toolbar__meta{color:var(--color-supporting-gray);font-size:var(--text-body)}.eyebrow{margin:0 0 var(--space-2);color:var(--color-supporting-blue);font-size:var(--text-label);letter-spacing:0;text-transform:uppercase;font-weight:700}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.detail-grid{gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.detail-grid dt{color:var(--color-supporting-gray);font-size:var(--text-control-sm);margin-bottom:var(--space-1);font-weight:700}.detail-grid dd{overflow-wrap:anywhere;margin:0;font-weight:600}.detail-grid__wide{grid-column:1/-1}.login-page{min-height:100dvh;padding:clamp(var(--space-4), 4vw, var(--space-8));background:linear-gradient(135deg, #506ee414, #168a5f0f), var(--color-background);place-items:center;display:grid}.login-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:min(960px,100%);min-height:620px;box-shadow:var(--sh-dialog);grid-template-columns:minmax(280px,.85fr) minmax(360px,1fr);display:grid;overflow:hidden}.login-card__visual{justify-content:space-between;gap:var(--space-8);background:var(--info-surface);border-right:1px solid var(--color-border);flex-direction:column;padding:42px;display:flex}.login-card__form-panel{min-width:0;padding:clamp(var(--space-6), 5vw, 52px);flex-direction:column;justify-content:center;display:flex}.login-brand{align-items:center;gap:var(--space-2);color:var(--color-text-primary);font-weight:700;display:flex}.login-brand__mark{background:var(--color-primary);width:38px;height:38px;color:var(--on-primary);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.login-visual-copy{gap:var(--space-3);display:grid}.login-visual-copy p{color:var(--color-supporting-blue);font-size:var(--text-control-sm);text-transform:uppercase;margin:0;font-weight:700}.login-visual-copy strong{max-width:320px;color:var(--color-text-primary);font-size:var(--text-display);line-height:1.15;display:block}.login-visual-list{gap:var(--space-3);display:grid}.login-visual-list span{align-items:center;gap:var(--space-2);width:fit-content;min-height:44px;padding:0 var(--space-4);border:1px solid color-mix(in srgb, var(--color-supporting-blue) 18%, var(--color-border));border-radius:var(--radius-md);background:color-mix(in srgb, var(--surface) 80%, transparent);color:var(--color-text-primary);font-weight:700;display:inline-flex}.login-card__intro{margin:0 0 var(--space-6)}.login-card__intro h1{margin:0 0 var(--space-2);font-size:var(--text-display);line-height:1.15}.login-card__intro p:last-child{color:var(--color-supporting-gray);margin:0;line-height:1.6}.login-assurance{align-items:center;gap:var(--space-2);margin-bottom:var(--space-6);border:1px solid var(--success-surface);border-radius:var(--radius-md);background:var(--success-surface);color:var(--color-success);font-size:var(--text-control-sm);padding:12px;font-weight:700;display:flex}.login-form{gap:var(--space-4);display:grid}.segmented{gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-md);background:var(--color-background);grid-template-columns:1fr 1fr;display:grid}.segmented button{min-height:44px;color:var(--color-supporting-gray);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:8px;font-weight:700;display:inline-flex}.segmented button:hover{color:var(--color-text-primary)}.segmented button.active{background:var(--color-surface);color:var(--color-text-primary);box-shadow:0 2px 8px #202c4b14}.login-form .field{gap:var(--field-gap)}.login-form .field>span{color:var(--color-text-primary);font-size:var(--text-body);font-weight:700}.login-form .input{min-height:var(--control-h);border-color:var(--border-input);background:var(--surface)}.login-remember-option{gap:var(--space-1);display:grid}.login-remember{align-items:center;gap:var(--space-2);cursor:pointer;width:fit-content;font-size:var(--text-body);font-weight:700;display:inline-flex}.login-remember input{width:18px;height:18px;accent-color:var(--color-primary);margin:0}.login-remember-option p{color:var(--color-supporting-gray);font-size:var(--text-label);margin:0}.login-submit{width:100%;min-height:var(--control-h);padding:0 var(--space-4) 0 var(--space-6);border-radius:var(--radius-md);font-size:var(--text-body);touch-action:manipulation;justify-content:space-between}.login-submit svg{flex:none;order:2}.login-submit span{overflow-wrap:anywhere;min-width:0}.otp-heading{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-background);display:flex}.otp-heading p{color:var(--color-supporting-gray);font-size:var(--text-body);margin:4px 0 0}.otp-icon{color:var(--color-success);background:var(--success-surface);border-radius:50%;padding:10px;display:inline-flex}.otp-code-field{gap:var(--sp-2);display:grid}.otp-code-field .label{color:var(--ink);font-size:var(--text-body);font-weight:700}.otp-code-field .req{color:var(--danger)}.otp-code-field .help{color:var(--muted);font-size:var(--text-label);margin:0}.otp-code{gap:var(--sp-2);width:min(100%, var(--otp-row-w));grid-template-columns:repeat(6,minmax(0,1fr));display:grid;position:relative}.otp-code__cell{height:var(--otp-cell-h);border:1px solid var(--border-input);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font-size:var(--text-headline);place-items:center;font-weight:700;display:grid}.otp-code__cell--filled{border-color:var(--accent)}.otp-code:hover .otp-code__cell--current{border-color:var(--subtle)}.otp-code:focus-within .otp-code__cell--current{border-color:var(--active-border);box-shadow:inset 0 0 0 1px var(--active-highlight)}.otp-code--error .otp-code__cell,.otp-code--error:focus-within .otp-code__cell--current{border-color:var(--danger)}.otp-code--error:focus-within .otp-code__cell--current{box-shadow:0 0 0 3px var(--danger-surface)}.otp-code:has(.otp-code__input:disabled){opacity:var(--disabled-opacity)}.otp-code__input{opacity:0;cursor:text;width:100%;height:100%;font-size:var(--text-section);margin:0;padding:0;position:absolute;inset:0}.breadcrumbs{gap:var(--sp-2);margin-bottom:var(--sp-2);font-size:var(--text-overline);color:var(--muted);text-transform:uppercase;flex-wrap:wrap;font-weight:700;display:flex}.breadcrumbs a{color:var(--accent);text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs span,.page-header h1{overflow-wrap:anywhere}.page-header p{max-width:64ch}.sidebar__brand{font-size:var(--text-section);line-height:var(--lh-section);min-width:0;margin-bottom:0}.sidebar__header{justify-content:space-between;align-items:center;gap:var(--sp-1);margin-bottom:var(--sp-6);padding:var(--sp-2);border-radius:var(--r-sm);background:var(--surface);color:var(--accent);display:flex}.sidebar__brand-name{white-space:normal;text-overflow:ellipsis;font-size:1.25rem;line-height:1.2;overflow:hidden}.sidebar__collapse{color:var(--accent);flex:none}.sidebar__collapse:hover{background:var(--selected-surface)}.sidebar__mark{background:var(--primary);width:48px;height:48px;color:var(--on-primary);border-radius:var(--r-sm);flex:none;place-items:center;display:grid}.sidebar__link svg{color:var(--muted)}.sidebar__link.active svg{color:var(--accent)}.sidebar__link:hover{background:var(--sidebar-hover)}.sidebar__link.active{background:var(--surface)}.app-shell svg,.action-menu svg,.confirm-dialog svg{stroke-width:1.75px;flex-shrink:0}.app-shell .topbar{min-height:var(--topbar-h);flex-wrap:nowrap;align-items:center}.app-shell .topbar>div{order:initial;width:auto;min-width:0}.app-shell .topbar .profile-trigger__avatar{background:var(--primary);width:36px;height:36px;color:var(--on-primary);flex:none}.profile-trigger__avatar span{color:inherit}.app-shell .profile-trigger__copy strong{font-size:var(--text-body);line-height:var(--lh-label)}.app-shell .profile-trigger__copy small{font-size:var(--text-label);line-height:var(--lh-label)}.app-shell .profile-trigger{gap:var(--sp-2);padding:var(--sp-1) var(--sp-2)}.profile-trigger__copy{min-width:0}.profile-trigger__copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:24ch;overflow:hidden}.navigation-dialog{width:var(--sidebar-w);background:var(--info-surface);border:0;max-width:100%;height:100dvh;max-height:100dvh;margin:0;padding:0}.navigation-dialog::backdrop,.confirm-dialog::backdrop{background:var(--scrim)}.navigation-close{margin:var(--sp-2) var(--sp-2) 0 auto;display:flex}.navigation-dialog .sidebar__nav{grid-template-columns:1fr}.navigation-dialog .admin-sidebar{min-height:calc(100dvh - var(--control-h) - var(--sp-2))}.button--danger-outline{color:var(--danger);border-color:var(--border-input);background:var(--surface)}.button--danger-outline:hover{background:var(--danger-surface);border-color:var(--danger-border)}.button--danger{background:var(--danger);color:var(--on-primary)}.button--danger:hover{background:var(--danger-ink);color:var(--on-primary)}.button--text{color:var(--accent);background:0 0}.button--text:hover{background:var(--selected-surface)}.button--small{min-height:var(--control-h-sm);padding-inline:var(--sp-3);font-size:var(--text-control-sm)}.resource-page .assignment-row .icon-button,.resource-page .role-assignment-row .icon-button{width:var(--control-h-sm);height:var(--control-h-sm);flex-shrink:0}.button:disabled,.icon-button:disabled{opacity:var(--disabled-opacity);pointer-events:none}.button svg,.icon-button svg{width:var(--sp-5);height:var(--sp-5)}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.loading-spinner{animation:none}}.badge{gap:var(--sp-1);white-space:nowrap;flex-shrink:0}.badge--success{color:var(--success);background:var(--success-surface)}.badge--warning{color:var(--warning);background:var(--warning-surface)}.badge--neutral{color:var(--muted);background:var(--option-surface)}.badge-dot{border-radius:var(--r-full);background:currentColor;width:6px;height:6px}.input:hover,.select:hover{border-color:var(--subtle)}.input:focus-visible,.select:focus-visible{outline:2px solid var(--accent);border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}.input:disabled,.select:disabled,.input[readonly]{color:var(--muted);background:var(--option-surface);border-color:var(--border);cursor:not-allowed}.input::placeholder{color:var(--muted)}.required-mark{color:var(--danger)}.field-error{align-items:center;gap:var(--sp-1);color:var(--danger);font-size:var(--text-label);line-height:var(--lh-label);display:flex}.input[aria-invalid=true],.select[aria-invalid=true]{border-color:var(--danger)}.input[aria-invalid=true]:focus-visible,.select[aria-invalid=true]:focus-visible{box-shadow:0 0 0 3px var(--danger-surface)}.field-help{font-size:var(--text-label);line-height:var(--lh-label);color:var(--muted);font-weight:500}.select{justify-content:space-between;align-items:center;gap:var(--sp-2);cursor:pointer;text-align:left;min-width:0;display:flex}.select>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select[data-placeholder]{color:var(--muted)}.select__icon{color:var(--muted);flex:none;display:inline-flex}.select__icon svg{width:var(--sp-4);height:var(--sp-4)}.select:disabled .select__icon{opacity:var(--disabled-opacity)}.select[aria-invalid=true] .select__icon{color:var(--danger)}.select-menu{z-index:var(--z-popover);min-width:var(--radix-select-trigger-width);max-width:calc(100vw - var(--sp-8));max-height:min(var(--select-menu-max-h), var(--radix-select-content-available-height));border:1px solid var(--border-input);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--sh-menu);overflow:hidden}.select-menu__viewport{padding:var(--sp-1)}.select-menu__item{min-height:var(--control-h);padding:var(--sp-2) var(--sp-8) var(--sp-2) var(--sp-3);border-radius:var(--r-sm);color:var(--ink);cursor:pointer;font-size:var(--text-body);line-height:var(--lh-body);outline:none;align-items:center;display:flex;position:relative}.select-menu__item[data-highlighted]:not([data-disabled]){background:var(--menu-hover-surface)}.select-menu__item[data-state=checked]{color:var(--accent);font-weight:600}.select-menu__item[data-disabled]{color:var(--muted);opacity:var(--disabled-opacity);cursor:not-allowed}.select-menu__check{right:var(--sp-3);display:inline-flex;position:absolute}.select-menu__scroll{height:var(--sp-6);color:var(--muted);background:var(--surface);justify-content:center;align-items:center;display:flex}.field label>.field-help{margin-inline-start:var(--sp-1)}.pdf-workflow-card{width:100%;max-width:none}.pdf-workflow-card .field{margin-bottom:var(--sp-5)}.pdf-workflow-card h2{color:var(--ink);font-size:var(--text-headline);line-height:var(--lh-headline)}.pdf-workflow-card h3{color:var(--ink);font-size:var(--text-section);line-height:var(--lh-section)}.pdf-workflow-card p[role=alert]{color:var(--danger-ink);background:var(--danger-surface);border:1px solid var(--danger-border);border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-4)}.pdf-workflow-card p[role=status]{color:var(--info);background:var(--info-surface);border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-4)}.file-upload{min-width:0}.file-upload__surface{align-items:center;gap:var(--sp-3);min-height:88px;padding:var(--sp-4);border:1px dashed var(--border-input);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);cursor:pointer;display:flex}.file-upload__surface>svg{color:var(--accent);flex:none}.file-upload__text{gap:var(--sp-1);overflow-wrap:anywhere;min-width:0;display:grid}.file-upload__text strong{font-weight:600}.file-upload__text small{color:var(--muted)}.file-upload:hover .file-upload__surface,.file-upload--dragging .file-upload__surface{border-color:var(--primary);background:var(--selected-surface)}.file-upload:focus-within .file-upload__surface{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}.file-upload:has(input:disabled) .file-upload__surface{opacity:var(--disabled-opacity);cursor:not-allowed}.file-upload--compact .file-upload__surface{min-height:var(--control-h);padding:var(--sp-2) var(--sp-3);border-style:solid}.resource-page .form-grid{gap:var(--sp-5)}.resource-page .section-heading h2{font-size:var(--text-headline);line-height:var(--lh-headline)}.resource-page .form-helper,.resource-page .form-error{font-size:var(--text-body);line-height:var(--lh-body)}.resource-page .role-assignment-builder__heading span,.resource-page .permission-check small,.resource-page .permission-group__header span{font-size:var(--text-label);line-height:var(--lh-label)}.resource-page .permission-check span,.resource-page .assignment-row>div{gap:var(--sp-1)}.resource-page .assignment-row{padding-block:var(--sp-3)}.resource-page .inline-alert{gap:var(--sp-3);line-height:var(--lh-body)}.resource-page .form-section__heading h2,.resource-page .role-assignment-picker h2{font-size:var(--text-section);line-height:var(--lh-section)}.resource-page .form-section{gap:var(--sp-4)}.resource-page .form-helper--notice{background:var(--info-surface);border-color:var(--border);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-5)}.resource-page .permission-group,.resource-page .role-assignment-builder{padding:var(--sp-4) 0;background:0 0;border:0;border-radius:0}.resource-page .permission-check{border-radius:var(--r-sm);padding:var(--sp-2);border:0}.resource-page .permission-check input{appearance:none;border:1.5px solid var(--subtle);border-radius:var(--sp-1);background:var(--surface);cursor:pointer;flex:none;width:18px;height:18px;position:relative}.resource-page .permission-check input:checked{background:var(--primary);border-color:var(--primary)}.resource-page .permission-check input:checked:after{content:"";border:solid var(--surface);border-width:0 2px 2px 0;position:absolute;inset:2px 5px 4px;transform:rotate(45deg)}.resource-page .permission-check input:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}@media (forced-colors:active){.resource-page .permission-check input{appearance:auto}.resource-page .permission-check input:after{display:none}}.resource-detail-section h2{font-size:var(--text-headline);line-height:var(--lh-headline);margin:0}.resource-detail-section>p{margin:var(--sp-1) 0 var(--sp-4)}.resource-page .permission-summary{padding:var(--sp-1) var(--sp-2);border-radius:var(--r-sm);font-size:var(--text-label);line-height:var(--lh-label)}.resource-page .user-role-summary__item{padding:var(--sp-3) 0;border:0;border-top:1px solid var(--border);border-radius:0}.resource-page .user-role-summary__item span{font-size:var(--text-label);line-height:var(--lh-label)}.resource-page .role-assignment-global{min-height:var(--control-h);padding-inline:var(--sp-3);font-size:var(--text-body)}.resource-page .permission-picker h2{font-size:var(--text-section);line-height:var(--lh-section)}.resource-page .permission-check:hover{background:var(--background)}.resource-page .role-assignment-row{border-top:1px solid var(--border);padding:var(--sp-3) 0;grid-template-columns:minmax(0,1fr) auto}.role-assignment-row>div{gap:var(--sp-1);overflow-wrap:anywhere;display:grid}.role-assignment-row>div>span{color:var(--muted);font-size:var(--text-label)}.resource-page .role-assignment-picker>*{order:initial}.resource-page .toolbar{padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border);gap:var(--sp-3);margin:0}.resource-page .search-field{min-width:0;max-width:100%;min-height:var(--control-h);padding:0 var(--sp-3);border-color:var(--border-input);flex:0 320px}.resource-page .search-field:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}.resource-page .search-field svg{width:var(--sp-4);height:var(--sp-4)}.resource-page .toolbar__meta{font-size:var(--text-label);margin-left:auto}.resource-page .table td:last-child{white-space:nowrap;width:1%}.resource-page .table-actions{justify-content:flex-end}.table .table-link{font-weight:var(--font-weight-emphasis)}.cell-sub{color:var(--muted);font-size:var(--text-label);line-height:var(--lh-label);margin-top:var(--sp-1);overflow-wrap:anywhere;display:block}.overview{margin-bottom:var(--sp-4);padding:var(--sp-6);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--card-shadow)}.overview__header{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-5);flex-wrap:wrap;display:flex}.overview__header h2{font-size:var(--text-section);line-height:var(--lh-section);font-weight:var(--font-weight-title);margin:0}.overview>.summary-tiles{box-shadow:none;background:0 0;border-radius:0;margin:0;padding:0}.summary-tiles{gap:var(--sp-4);margin:0 0 var(--sp-4);padding:var(--sp-6);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--card-shadow);flex-wrap:wrap;display:flex}.summary-tiles>div{min-width:0;padding:var(--sp-1) var(--sp-4);border-left:1px solid var(--border);flex:200px}.summary-tiles dt{color:var(--reference-muted-text);text-transform:uppercase;margin-bottom:var(--sp-2);font-size:.6875rem;font-weight:500;line-height:1rem}.summary-tiles dd{color:var(--ink);font-size:var(--text-body);line-height:var(--lh-body);overflow-wrap:anywhere;margin:0;font-weight:500}@media (width<=899px){.overview,.summary-tiles{padding:var(--sp-4)}}.profile-summary{align-items:center;gap:var(--sp-4);display:flex}.profile-summary>div:last-child{overflow-wrap:anywhere;min-width:0}.profile-summary h2{font-size:var(--text-headline);line-height:var(--lh-headline);margin:0}.profile-summary p{margin:var(--sp-1) 0 0;color:var(--muted)}.profile-avatar{width:var(--sp-12);height:var(--sp-12);border-radius:var(--r-full);background:var(--selected-surface);color:var(--accent);flex:none}.profile-avatar svg{width:var(--sp-6);height:var(--sp-6)}.people-navigation h2{margin:0 0 var(--sp-4);font-size:var(--text-headline);line-height:var(--lh-headline)}.people-navigation__row{align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-3);border-radius:var(--r-sm);color:var(--ink);text-decoration:none;display:flex;position:relative}.people-navigation__row:hover{background:var(--card-hover-surface)}.people-navigation__row:focus-visible{outline:2px solid var(--accent);outline-offset:2px;background:var(--selected-surface)}.people-navigation__copy{overflow-wrap:anywhere;flex:1;min-width:0}.people-navigation__copy strong,.people-navigation__copy span{display:block}.people-navigation__copy span{color:var(--muted);font-size:var(--text-label);line-height:var(--lh-label);margin-top:var(--sp-1)}.people-navigation__chevron{width:var(--sp-5);height:var(--sp-5);color:var(--muted);flex:none}.resource-page .assignment-controls .field{max-width:420px}.resource-page .assignment-row>div{overflow-wrap:anywhere;flex:1;min-width:0}.resource-page .assignment-row span{font-size:var(--text-label)}.assignment-icon{width:var(--sp-10);height:var(--sp-10);background:var(--selected-surface);color:var(--accent);border-radius:var(--r-tile);flex:none;place-items:center;display:grid}.assignment-icon svg{width:var(--sp-5);height:var(--sp-5)}.resource-page .assignment-icon{color:var(--accent)}.resource-page .count-pill{color:var(--ink);background:0 0;justify-content:flex-start;padding:0}.empty-state{align-items:center;gap:var(--sp-2);text-align:center;padding:var(--sp-10) var(--sp-6);flex-direction:column;display:flex}.empty-state strong{font-size:var(--text-section);line-height:var(--lh-section)}.empty-state__icon{width:var(--sp-12);height:var(--sp-12);border-radius:var(--r-tile);background:var(--option-surface);place-items:center;display:grid}.inline-alert--error{background:var(--danger-surface);color:var(--danger-ink);border-color:var(--danger-border)}.inline-alert svg{width:var(--sp-5);height:var(--sp-5);flex:none}.inline-alert p{margin:var(--sp-1) 0 0}.confirm-dialog{width:440px;max-width:calc(100% - var(--sp-8));padding:var(--sp-6);border-radius:var(--r-md);background:var(--surface);color:var(--ink);box-shadow:var(--sh-dialog);border:0}.confirm-dialog h2{font-size:var(--text-headline);line-height:var(--lh-headline);overflow-wrap:anywhere;margin:0}.confirm-dialog>p{margin:var(--sp-2) 0 var(--sp-6);color:var(--muted)}.dialog-actions{justify-content:flex-end;gap:var(--sp-2);flex-wrap:wrap;display:flex}.action-menu{transform-origin:100% 0;z-index:10;min-width:180px;padding:var(--sp-1);border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--sh-menu);animation:.18s ease-out menu-pop-enter;position:fixed}.navigation-dialog[open]{transform-origin:0 0;animation:.18s ease-out menu-pop-enter}@keyframes menu-pop-enter{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.action-menu,.navigation-dialog[open]{animation:none}}.action-menu [role=menuitem]{align-items:center;gap:var(--sp-2);width:100%;min-height:var(--control-h-sm);padding:0 var(--sp-3);border-radius:var(--r-sm);color:var(--ink);cursor:pointer;background:0 0;border:0;text-decoration:none;display:flex}.action-menu [role=menuitem]:is(:hover,:focus-visible):not([aria-disabled=true]){background:var(--menu-hover-surface)}.action-menu .danger{color:var(--danger)}.action-menu svg{width:var(--sp-4);height:var(--sp-4)}.action-menu [role=separator]{border-top:1px solid var(--border);margin:var(--sp-1) 0}@media (width>=900px){.app-shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr)}.app-shell--collapsed{grid-template-columns:var(--sidebar-collapsed-w) minmax(0, 1fr)}.app-shell--collapsed:not(.app-shell--navigation-peek) .sidebar--desktop{padding-inline:var(--sp-2)}.app-shell--collapsed:not(.app-shell--navigation-peek) .sidebar--desktop .sidebar__header{padding:var(--sp-1);flex-direction:column}.app-shell--collapsed:not(.app-shell--navigation-peek) .sidebar--desktop .sidebar__brand-name,.app-shell--collapsed:not(.app-shell--navigation-peek) .sidebar--desktop .sidebar__link span,.app-shell--collapsed:not(.app-shell--navigation-peek) .sidebar--desktop .sidebar__logout span{display:none}.app-shell--collapsed:not(.app-shell--navigation-peek) .sidebar--desktop .sidebar__link,.app-shell--collapsed:not(.app-shell--navigation-peek) .sidebar--desktop .sidebar__logout{justify-content:center;padding-inline:0}.app-shell--collapsed:not(.app-shell--navigation-peek) .sidebar--desktop .sidebar__link.active:before{left:calc(-1 * var(--sp-2))}.app-shell .topbar__menu{display:none}.app-shell .sidebar--desktop{min-height:100dvh;position:sticky}}@media (width<=899px){.sidebar--desktop{display:none}.app-shell .topbar__menu{flex:none;display:inline-flex}.resource-page .form-grid--two,.resource-page .role-assignment-builder__controls{grid-template-columns:1fr}.app-shell .topbar{padding:0 var(--sp-4)}}.otp-actions{justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;display:flex}.text-button{min-height:44px;color:var(--color-supporting-blue);cursor:pointer;font-size:var(--text-control-sm);background:0 0;border:0;align-items:center;gap:6px;padding:0;font-weight:700;display:inline-flex}.text-button:disabled{color:var(--color-supporting-gray);cursor:not-allowed}.login-footer{margin:var(--space-6) 0 0;color:var(--color-supporting-gray);font-size:var(--text-control-sm);text-align:center;line-height:1.6}.assignment-controls{align-items:flex-end;gap:var(--space-4);display:flex}.assignment-controls .field{flex:1;max-width:520px}.assignment-list{gap:var(--space-2);margin-top:var(--space-6);display:grid}.assignment-row{justify-content:space-between;align-items:center;gap:var(--space-4);border-top:1px solid var(--color-border);padding:12px 0;display:flex}.assignment-row>div{gap:3px;display:grid}.assignment-row span{color:var(--color-supporting-gray);font-size:var(--text-control-sm)}@media (width<=560px){.form-grid--two,.detail-grid{grid-template-columns:1fr}.app-shell .topbar{height:auto;min-height:var(--topbar-h);padding-block:var(--sp-2);gap:var(--sp-2);flex-wrap:wrap}.app-shell .topbar__workspace{flex:1}.app-shell .topbar__actions{justify-content:flex-end;width:100%}.profile-trigger__copy strong,.profile-trigger__copy small{white-space:normal;overflow-wrap:anywhere;max-width:none}.assignment-controls{flex-direction:column;align-items:stretch}.assignment-controls .field{max-width:none}.permission-checklist{grid-template-columns:1fr}.role-assignment-row{gap:var(--space-2);grid-template-columns:1fr}.role-assignment-builder,.role-assignment-builder__controls{grid-template-columns:1fr}.user-role-summary__item{flex-direction:column;align-items:flex-start;gap:4px}.user-role-summary__item span{text-align:left}}@media (width<=820px){.login-card{grid-template-columns:1fr;min-height:auto}.login-card__visual{padding:var(--space-6);border-right:0;border-bottom:1px solid var(--color-border)}.login-visual-copy,.login-visual-list{display:none}}@media (width<=560px){.login-page{padding:var(--space-4);place-items:stretch stretch}.login-card{border-radius:var(--radius-md);width:100%}.login-card__form-panel,.login-card__visual{padding:var(--space-6)}.login-card__intro h1{font-size:var(--text-display)}.otp-actions{flex-direction:column}.text-button{justify-content:center}}.people-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.people-tabs{margin-bottom:var(--sp-5)}.people-import-template{margin-bottom:var(--sp-4);display:inline-block}.people-form{gap:var(--space-4);max-width:720px;display:grid}.people-form h2{margin:var(--space-5) 0 0}.people-responsibility{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid}.people-actions{margin-top:var(--space-4)}.page-header{align-items:flex-start}.page-header>div:first-child p{max-width:64ch}.page-header>div:last-child:not(:first-child){justify-content:flex-end;display:flex}.sidebar__link.active:before{content:"";left:calc(-1 * var(--sp-3));top:var(--sp-2);bottom:var(--sp-2);background:var(--primary);width:3px;position:absolute}.profile-trigger--sidebar,.profile-trigger--sidebar:hover{color:var(--ink);background:var(--background)}.profile-trigger--sidebar .profile-trigger__avatar{background:var(--primary);color:var(--on-primary)}.profile-trigger--sidebar .profile-trigger__copy small{color:var(--muted)}.button--danger:hover{background:var(--danger-ink);color:var(--on-primary);border-color:var(--danger-ink)}.button--danger-outline:hover{background:var(--danger-surface);color:var(--danger);border-color:var(--danger-border)}.form-grid,.form-grid--two{gap:var(--form-gap)}.form-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-layout,.people-form{width:100%;max-width:880px}.form-layout,.people-form-card,.pdf-workflow-card,.content-editor-card{margin-inline:0}:is(.content:has(>.people-form-card)>.breadcrumbs,.content:has(>.people-form-card)>.page-header,.content:has(>.people-form-card)>.people-tabs,.resource-page:has(.form-layout)>.breadcrumbs,.resource-page:has(.form-layout)>.page-header){max-width:880px;margin-inline:0}.people-form{gap:var(--sp-5);grid-template-columns:repeat(2,minmax(0,1fr))}.people-form-card{max-width:880px}.people-form h2,.people-form .people-responsibility,.people-form .people-actions,.people-form>.button,.people-form>.inline-alert{grid-column:1/-1}.people-form h2,.form-section__heading h2{font-size:var(--text-section);line-height:var(--lh-section)}.field{gap:var(--field-gap)}.field label{color:var(--ink)}.field-help{font-size:var(--text-label);line-height:var(--lh-label);color:var(--muted)}.search-field{min-height:var(--control-h);border-color:var(--border-input);border-radius:var(--r-sm)}.search-field:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}.search-field:focus-within input{outline:none}.table th,.table td{padding:var(--sp-3) var(--sp-4)}.table th{height:var(--table-header-h);background:var(--table-header-surface);color:var(--reference-muted-text);font-family:var(--font-table-header);font-size:var(--text-table-header);line-height:var(--lh-table-header);font-weight:var(--font-weight-table-header);font-feature-settings:"cv11", "ss01", "ss03";text-transform:uppercase;letter-spacing:var(--tracking-table-header)}.table td{height:var(--table-row-h);overflow-wrap:anywhere}.table tbody tr:hover td{background:var(--hover-surface)}.table tbody tr:last-child td{border-bottom:0}.status-badge--success{background:var(--success-surface);color:var(--success)}.status-badge--warning{background:var(--warning-surface);color:var(--warning)}.status-badge--error{background:var(--danger-surface);color:var(--danger)}.status-badge--info{background:var(--info-surface);color:var(--info)}.status-badge--neutral{background:var(--option-surface);color:var(--muted)}.status-badge--violet{background:var(--stat-violet-surface);color:var(--stat-violet)}.form-helper--notice{background:var(--info-surface);border-color:var(--border)}.people-actions{padding-top:var(--sp-5);border-top:1px solid var(--border);justify-content:flex-end}.pdf-workflow-card .card__body{min-width:0}.import-stepper{gap:var(--sp-2);margin-bottom:var(--sp-6);padding-bottom:var(--sp-5);border-bottom:1px solid var(--border);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.import-stepper__step{align-items:center;gap:var(--sp-2);min-width:0;padding:var(--sp-2);border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--muted);text-align:left;cursor:pointer;font-weight:600;display:flex}.import-stepper__step:hover:not(:disabled){border-color:var(--accent);background:var(--background)}.import-stepper__step:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}.import-stepper__step[data-state=current]{border-color:var(--primary);background:var(--selected-surface);color:var(--accent)}.import-stepper__step[data-state=complete]{border-color:var(--success);color:var(--success)}.import-stepper__number{width:var(--sp-6);height:var(--sp-6);border-radius:var(--r-full);font-size:var(--text-label);border:1px solid;flex:none;place-items:center;display:grid}.import-stepper__name{overflow-wrap:anywhere;min-width:0}.import-stepper__progress{display:none}.pdf-stage-form fieldset{min-width:0;padding:0}.pdf-stage-form>fieldset{border:0}.pdf-stage-form>fieldset:first-child{gap:0 var(--sp-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pdf-stage-form>fieldset:first-child>.field:first-child,.pdf-stage-form .form-actions,.pdf-map-section{grid-column:1/-1}.pdf-map-section{gap:0 var(--sp-5);margin-bottom:var(--sp-5);border:1px solid var(--border);border-radius:var(--r-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;padding:var(--sp-4)!important}.pdf-map-section legend{font-size:var(--text-section);padding:0 var(--sp-2);font-weight:700}.pdf-map-section .button{justify-self:start}.pdf-workflow-card progress{width:100%;height:var(--sp-3);accent-color:var(--primary)}.pdf-workflow-card article{border-top:1px solid var(--border);padding-block:var(--sp-4)}.pagination-controls{border-top:1px solid var(--border);padding-top:var(--sp-4);flex-wrap:wrap}.content-list-card>.card__body,.book-imports-list-card>.card__body{padding:0}.content-list-card .import-toolbar,.book-imports-list-card .import-toolbar{padding:var(--sp-4) var(--sp-5);border-bottom:0;align-items:end;margin:0}.content-list-card .import-toolbar .field,.book-imports-list-card .import-toolbar .field{min-width:min(260px,100%);margin:0}.content-list-card .state,.book-imports-list-card .state,.content-list-card .inline-alert,.book-imports-list-card .inline-alert{margin:var(--sp-4) var(--sp-5)}.content-list-card .pagination-controls,.book-imports-list-card .pagination-controls{padding:var(--sp-4) var(--sp-5);margin:0}.content-list-card .data-table .table-wrap,.book-imports-list-card .data-table .table-wrap{border-radius:0}@media (width<=899px){.form-grid--two,.people-form,.pdf-stage-form>fieldset:first-child,.pdf-map-section{grid-template-columns:1fr}}@media (width<=640px){.content-list-card .import-toolbar,.book-imports-list-card .import-toolbar{align-items:stretch}.content-list-card .import-toolbar .field,.book-imports-list-card .import-toolbar .field{width:100%;min-width:0}.import-stepper{gap:var(--sp-1)}.import-stepper__step{padding:var(--sp-2) var(--sp-1);justify-content:center}.import-stepper__name{display:none}.import-stepper__progress{margin:var(--sp-2) 0 0;color:var(--muted);font-size:var(--text-label);text-align:center;grid-column:1/-1;display:block}}.pdf-mapping-form>fieldset{margin:0}.pdf-map-region{min-width:0;position:relative;container-type:inline-size}.pdf-map-region[data-scroll-mode=sections]{overscroll-behavior-y:contain;scrollbar-gutter:stable;overflow-y:auto}.pdf-map-region:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.pdf-map-guidance{justify-items:start;gap:var(--sp-3);margin-bottom:var(--sp-4);display:grid}.pdf-map-guidance p{color:var(--muted);margin:0}.pdf-map-guidance>.loading-state{justify-self:stretch}.pdf-map-preview{margin-bottom:var(--sp-4)}.pdf-map-grid{gap:var(--sp-4);padding:var(--sp-1);grid-template-columns:1fr;display:grid}.pdf-map-grid .pdf-map-section{align-content:start;gap:var(--sp-2);grid-column:auto;grid-template-columns:1fr;margin:0}.pdf-map-section .field{margin:0}.pdf-map-pages{gap:var(--sp-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pdf-map-actions{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-top:var(--sp-4);flex-wrap:wrap;display:flex}.pdf-map-actions .form-actions{margin:0}@container (width>=600px){.pdf-map-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (width>=900px){.pdf-map-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.pdf-validation-stage{gap:var(--sp-6);display:grid}.pdf-validation-stage .form-section{gap:var(--sp-4);min-width:0;display:grid}.pdf-validation-stage .form-section+.form-section{border-top:1px solid var(--border);padding-top:var(--sp-6)}.pdf-validation-stage .form-section__heading p,.pdf-validation-stage [role=status],.pdf-validation-stage [role=alert]{margin:0}.pdf-validation-stage .form-section>.button{justify-self:start}.pdf-preview-selector{max-width:calc(var(--sp-10) * 12)}.pdf-preview-selector .field,.pdf-preview-review-actions{margin:0}.protected-pdf{gap:var(--sp-4);min-width:0;display:grid}.protected-pdf__toolbar{align-items:center;gap:var(--sp-3);padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);flex-wrap:wrap;display:flex}.protected-pdf__viewport{height:var(--pdf-preview-height);min-height:calc(var(--sp-10) * 8);border:1px solid var(--border);border-radius:var(--r-md);background:var(--background);position:relative;overflow:hidden}.protected-pdf__pages{overscroll-behavior:contain;position:absolute;inset:0;overflow:auto}.protected-pdf__pages:focus-visible{outline:3px solid var(--primary);outline-offset:-3px}.pdf-step-region[data-scroll-mode=sections]{overscroll-behavior-y:contain;scrollbar-gutter:stable;overflow-y:auto}.pdf-step-region{min-width:0;padding:var(--sp-1);position:relative}.pdf-step-region:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.protected-pdf__loading{z-index:1;background:var(--background);place-items:center;display:grid;position:absolute;inset:0}.app-shell.app-shell--focused{display:block}.app-shell--focused>.admin-sidebar,.app-shell--focused>.navigation-dialog,.app-shell--focused>.main-region>.topbar{display:none}.app-shell--focused>.main-region,.app-shell--focused>.main-region>.content{min-width:0;max-width:none;margin:0;padding:0}.book-workspace{height:var(--workspace-height,100dvh);background:var(--surface);grid-template:56px minmax(0,1fr)/200px minmax(0,1fr);display:grid;overflow:hidden}.book-workspace__header{align-items:center;gap:var(--sp-4);padding:0 var(--sp-4);border-bottom:1px solid var(--border);grid-column:1/-1;min-width:0;display:flex}.book-workspace__header a,.book-workspace__header [role=status]{font-size:var(--text-label);flex-shrink:0}.book-workspace__header h1{text-align:center;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:var(--text-section);line-height:var(--lh-section);flex:1;margin:0;overflow:hidden}.book-workspace__header [role=status]{color:var(--muted);text-transform:capitalize}.book-workspace__rail{padding:var(--sp-3);border-right:1px solid var(--border);overflow-y:auto}.book-workspace .import-stepper{gap:var(--sp-2);background:0 0;border:0;flex-direction:column;padding:0;display:flex}.book-workspace .import-stepper__step{text-align:left;padding:var(--sp-3);flex-direction:row}.book-workspace .import-stepper__name{font-size:var(--text-body);display:inline}.book-workspace__step-name{align-items:center;gap:var(--sp-2);display:flex}.book-workspace__step-name svg{flex:none}.book-workspace__pane{grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;display:grid;container:book-preview-pane/inline-size}.book-workspace__toolbar{align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-4);min-height:var(--sp-10);border-bottom:1px solid var(--border);display:flex}.book-workspace__toolbar h2{font-size:var(--text-section);line-height:var(--lh-section);margin:0}.book-workspace__steps-toggle{display:none}.book-workspace__help{font-size:var(--text-label);margin-left:auto;position:relative}.book-workspace__help summary,.book-workspace__report-details summary{align-items:center;gap:var(--sp-2);cursor:pointer;display:inline-flex}.book-workspace__help p{width:min(320px,75vw);margin:var(--sp-2) 0;padding:var(--sp-4);border:1px solid var(--border-input);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--sh-menu);z-index:3;position:absolute;top:100%;right:0}.book-workspace__content{min-width:0;min-height:0;padding:var(--sp-3)}.book-workspace__content.pdf-step-region{overflow-y:auto}.book-workspace__content.pdf-step-region--mapping,.book-workspace__content.pdf-step-region--preview{grid-template-rows:minmax(0,1fr);display:grid}.book-workspace .pdf-mapping-form,.book-workspace .pdf-mapping-form>fieldset{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);min-width:0;min-height:0;margin:0;padding:0;display:grid}.book-workspace .pdf-validation-stage{grid-template-rows:minmax(0,1fr);gap:0;min-height:0;display:grid}.book-workspace__footer{align-items:center;gap:var(--sp-2);min-height:56px;padding:var(--sp-2) var(--sp-4);border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;display:flex}.book-workspace__footer .form-actions,.book-workspace__footer .pdf-map-actions{align-items:center;gap:var(--sp-2);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.book-workspace__footer .pdf-map-actions{width:100%}.book-workspace__footer [role=alert]{color:var(--danger);flex-basis:100%;margin:0}.book-workspace__drawer{width:min(480px,100%);max-width:100%;height:100dvh;max-height:100dvh;padding:var(--sp-5);border:0;border-left:1px solid var(--border);background:var(--surface);color:var(--ink);margin:0;inset:0 0 0 auto;overflow-y:auto}.book-workspace__drawer::backdrop{background:var(--scrim)}.book-workspace__drawer .import-stepper{margin-top:var(--sp-4)}.protected-pdf--fill{gap:var(--sp-2);grid-template-rows:auto minmax(0,1fr) auto;min-height:0}.protected-pdf--fill .protected-pdf__viewport{height:auto;min-height:0}.protected-pdf--fill .protected-pdf__toolbar{gap:var(--sp-1);padding:var(--sp-1) var(--sp-3)}.protected-pdf--fill .pdf-preview-selector{flex:240px;min-width:0;max-width:240px}.protected-pdf--fill .pdf-preview-selector .field{align-items:center;gap:var(--sp-2);display:flex}.protected-pdf--fill .pdf-preview-selector .field>.field__label{white-space:nowrap;flex:none;margin:0}.protected-pdf--fill .pdf-preview-selector .select{width:auto;min-width:0;min-height:var(--lh-body);height:var(--lh-body);padding-inline:var(--sp-2);font-size:var(--text-label);flex:1;line-height:1}.protected-pdf--fill .pdf-preview-selector .select__icon svg{width:var(--text-label);height:var(--text-label)}.book-workspace[data-scroll-mode=page]{height:auto;min-height:var(--workspace-height,100dvh);grid-template-rows:56px auto;overflow:visible}.book-workspace[data-scroll-mode=page] .book-workspace__pane{grid-template-rows:auto auto auto}.book-workspace[data-scroll-mode=page] .book-workspace__content,.book-workspace[data-scroll-mode=page] .pdf-map-region{overflow:visible}.book-workspace[data-scroll-mode=page] .protected-pdf--fill .protected-pdf__viewport{height:320px}.book-workspace-loading{padding:var(--sp-4)}@media (width<=899px){.book-workspace{grid-template-columns:minmax(0,1fr)}.book-workspace__rail{display:none}.book-workspace__steps-toggle{display:inline-flex}.book-workspace__header{gap:var(--sp-2);padding-inline:var(--sp-3)}}.book-workspace__pane--preview{grid-template-rows:minmax(0,1fr) auto}.book-workspace[data-scroll-mode=page] .book-workspace__pane--preview{grid-template-rows:auto auto}.protected-pdf__toolbar-actions>.book-workspace__help{order:0}.book-workspace__report{white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--text-label)}.book-workspace__rail,.book-workspace #book-steps-drawer{background:var(--info-surface)}.book-workspace__position{padding:var(--sp-3);color:var(--muted);font-size:var(--text-label)}.book-workspace__position strong{text-transform:uppercase}.book-workspace__position>div{justify-content:space-between;align-items:center;gap:var(--sp-2);margin-block:var(--sp-4) var(--sp-2);display:flex;position:relative}.book-workspace__position>div:before,.book-workspace__position>div:after{content:"";left:calc(var(--sp-3) / 2);background:var(--border-input);height:2px;position:absolute;top:calc(50% - 1px)}.book-workspace__position>div:before{right:calc(var(--sp-3) / 2)}.book-workspace__position>div:after{width:calc((100% - var(--sp-3)) * var(--book-step-progress));background:var(--primary)}.book-workspace__position span{z-index:1;width:var(--sp-3);height:var(--sp-3);border-radius:var(--r-full);background:color-mix(in srgb, var(--subtle) 80%, var(--info-surface));box-shadow:0 0 0 3px var(--info-surface);flex:none;position:relative}.book-workspace__position span[data-earlier=true]{background:var(--surface);border:2px solid var(--primary)}.book-workspace__position span[data-current=true]{background:var(--primary);box-shadow:0 0 0 3px var(--surface), 0 0 0 6px color-mix(in srgb, var(--primary) 25%, var(--info-surface))}.book-workspace .import-stepper__step{color:var(--ink);background:0 0;border-color:#0000;align-items:flex-start}.book-workspace .import-stepper__step[data-state=current]{border-color:var(--primary);box-shadow:inset 3px 0 var(--primary);background:var(--surface);color:var(--accent)}.book-workspace .import-stepper__number{background:var(--option-surface);color:var(--muted);border:0}.book-workspace .import-stepper__step[data-state=current] .import-stepper__number{background:var(--primary);color:var(--on-primary)}.book-workspace .import-stepper__name small{margin-top:var(--sp-1);color:var(--muted);font-size:var(--text-label);font-weight:400;display:block}.book-workspace__content{background:var(--background)}.book-workspace__content.pdf-step-region{padding:var(--sp-6);container-type:inline-size}.book-workspace__card{overflow-wrap:anywhere;min-width:0;margin-bottom:0}.book-workspace__bounded{max-width:880px}.book-workspace__card-heading{align-items:center;gap:var(--sp-3);padding:var(--sp-6);background:var(--info-surface);border-bottom:1px solid var(--border);border-radius:var(--r-md) var(--r-md) 0 0;display:flex}.book-workspace__card-heading>svg{color:var(--info);flex:none}.book-workspace__card-heading h3{font-size:var(--text-section);margin:0}.book-workspace__card-heading p{margin:var(--sp-1) 0 0;color:var(--muted);font-size:var(--text-label)}.book-workspace__card>.card__body{padding:var(--sp-6)}.book-workspace__card .card__body>:first-child{margin-top:0}.book-workspace__card .card__body>:last-child{margin-bottom:0}.book-workspace__metadata{gap:var(--sp-6);border:0;margin:0;display:grid}.book-workspace__metadata h3{margin:0 0 var(--sp-5);font-size:var(--text-section)}.book-workspace__metadata section{border-top:1px solid var(--border);padding-top:var(--sp-6)}.book-workspace__field-grid{gap:var(--sp-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.book-workspace__field-grid .field{min-width:0;margin:0}.book-workspace__details>:first-child{grid-column:1/-1}.book-workspace__file{gap:var(--sp-2);padding:var(--sp-4);background:var(--background);border-radius:var(--r-sm);display:grid}.book-workspace progress{width:100%;height:var(--sp-3);accent-color:var(--primary)}.book-workspace .pdf-map-section{background:var(--surface)}.book-workspace .pdf-map-section legend{color:var(--info);background:var(--info-surface);border-radius:var(--r-sm)}.book-workspace .pdf-map-grid .pdf-map-section{grid-template-rows:repeat(4,auto) 1fr auto}.book-workspace .pdf-map-section>.field{align-self:start}.book-workspace .pdf-map-section>.button{grid-row:6;place-self:end}.book-workspace__footer{justify-content:flex-end}.book-workspace__icon-action{width:var(--control-h);min-height:var(--control-h);flex:none;justify-content:center;padding:0}.book-workspace__validation-drawer{flex-direction:column;padding:0;display:flex}.book-workspace__validation-drawer:not([open]){display:none}.book-workspace__validation-drawer-heading{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);padding:var(--sp-5);border-bottom:1px solid var(--border);background:var(--info-surface);display:flex}.book-workspace__validation-drawer-heading h2,.book-workspace__validation-drawer-heading p{margin:0}.book-workspace__validation-drawer-heading p{margin-top:var(--sp-1);color:var(--muted)}.book-workspace__validation-drawer-body{align-content:start;gap:var(--sp-4);min-height:0;padding:var(--sp-5);display:grid;overflow-y:auto}.book-workspace__validation-results h3{margin:0 0 var(--sp-3)}.book-workspace__validation-result{padding-block:var(--sp-4);border-top:1px solid var(--border)}.book-workspace__validation-result header{justify-content:space-between;align-items:center;gap:var(--sp-3);display:flex}.book-workspace__validation-result h4{overflow-wrap:anywhere;margin:0}.book-workspace__validation-result .muted{margin-top:var(--sp-1);overflow-wrap:anywhere;display:block}.book-workspace__validation-result dl{gap:var(--sp-2);margin:var(--sp-3) 0 0;display:grid}.book-workspace__validation-result dl>div{justify-content:space-between;gap:var(--sp-3);display:flex}.book-workspace__validation-result dt{color:var(--muted)}.book-workspace__validation-result dd{text-align:right;margin:0}.book-workspace__validation-result .inline-alert{margin-top:var(--sp-3)}.book-workspace__review{max-width:1280px}.book-workspace__review-state{justify-content:space-between;align-items:center;gap:var(--sp-4);margin:0 0 var(--sp-6);padding:var(--sp-4) var(--sp-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);flex-wrap:wrap;display:flex}.book-workspace__review-state>div{align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.book-workspace__state-label{font-weight:600}.book-workspace .inline-alert{align-items:center}.book-workspace .inline-alert>div{min-width:0}.book-workspace .inline-alert>div>p:first-child{margin-top:0}.book-workspace__review-grid{gap:var(--sp-6);align-items:start;display:grid}.book-workspace__summary .book-workspace__card-heading{background:var(--stat-violet-surface)}.book-workspace__summary .book-workspace__card-heading>svg{color:var(--stat-violet)}.book-workspace__summary dl{gap:var(--sp-5);margin-block:var(--sp-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.book-workspace__summary dt{color:var(--muted);font-size:var(--text-label)}.book-workspace__summary dd{margin:var(--sp-1) 0 0;font-weight:600}.book-workspace__summary-status{justify-content:space-between;align-items:center;gap:var(--sp-2);padding-block:var(--sp-3);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.book-workspace__history{grid-column:1/-1}.book-workspace__history .book-workspace__card-heading{background:var(--stat-sky-surface)}.book-workspace__history .book-workspace__card-heading>svg{color:var(--stat-sky)}.book-workspace__history .card__body{gap:var(--sp-6);display:grid}.book-workspace__history-group{min-width:0}.book-workspace__history-group+.book-workspace__history-group{border-top:1px solid var(--border);padding-top:var(--sp-6)}.book-workspace__history-group-heading{margin-bottom:var(--sp-4)}.book-workspace__history-group-heading h4,.book-workspace__history-preview-heading h4{font-size:var(--text-section);line-height:var(--lh-section);margin:0}.book-workspace__history-group-heading p,.book-workspace__history-preview-heading p{margin:var(--sp-1) 0 0;color:var(--muted)}.book-workspace__history-list{gap:var(--sp-4);display:grid}.book-workspace__history-entry,.book-workspace__review-events li{min-width:0;padding:var(--sp-4);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);overflow-wrap:anywhere}.book-workspace__history-entry header,.book-workspace__review-events li>div{align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.book-workspace__history-entry header>svg{color:var(--stat-sky);flex:none}.book-workspace__history-entry header>div{flex:220px;min-width:0}.book-workspace__history-entry h5{margin:var(--sp-1) 0 0;font-size:var(--text-body)}.book-workspace__history-entry ul{margin:var(--sp-4) 0;padding-left:var(--sp-5)}.book-workspace__history-actions{gap:var(--sp-2);flex-wrap:wrap;display:flex}.book-workspace__review-events{gap:var(--sp-3);margin:0;padding:0;list-style:none;display:grid}.book-workspace__review-events li{border-left:3px solid var(--stat-sky)}.book-workspace__review-events li>div{justify-content:space-between}.book-workspace__review-events time,.book-workspace__review-events li>p{margin:var(--sp-2) 0 0;color:var(--muted);display:block}.book-workspace__history-preview{border-top:1px solid var(--border);min-width:0;padding-top:var(--sp-6)}.book-workspace__history-preview-heading{margin-bottom:var(--sp-3);overflow-wrap:anywhere;min-width:0}.book-workspace__history-preview .protected-pdf__toolbar{padding-inline-end:calc(var(--sp-3) + var(--control-h) + var(--sp-3));position:relative}.book-workspace__history-preview .protected-pdf__toolbar-actions>.book-workspace__icon-action{position:absolute;inset-block-start:var(--sp-3);inset-inline-end:var(--sp-3)}@container (width>=1000px){.book-workspace__review-grid{grid-template-columns:minmax(0,760px) minmax(280px,1fr)}}@media (width<=899px){.book-workspace__content.pdf-step-region,.book-workspace__card-heading,.book-workspace__card>.card__body{padding:var(--sp-4)}.book-workspace__field-grid{grid-template-columns:minmax(0,1fr)}}.book-workspace__transfer{align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.book-workspace__transfer>p,.book-workspace__transfer>.inline-alert,.book-workspace__transfer>progress{flex-basis:100%;margin:0}.book-workspace__back{white-space:nowrap}.book-workspace__remove-section{width:var(--sp-10);height:var(--sp-10);padding:0}.book-workspace .pdf-map-grid:has(>.pdf-map-section:only-child){grid-template-columns:minmax(0,760px)}.book-workspace .pdf-map-grid>.pdf-map-section:only-child{grid-template-rows:none}.book-workspace .pdf-map-grid>.pdf-map-section:only-child>.button{grid-area:auto/1/auto/-1}@container (width>=600px){.book-workspace .pdf-map-grid>.pdf-map-section:only-child{gap:var(--sp-4) var(--sp-5);grid-template-columns:repeat(2,minmax(0,1fr))}.book-workspace .pdf-map-grid>.pdf-map-section:only-child>.pdf-map-pages{grid-column:1/-1}}.book-workspace__remove-label{display:none}@container (width>=600px){.book-workspace .pdf-map-section:only-child>.book-workspace__remove-section{width:auto;padding-inline:var(--sp-3)}.book-workspace .pdf-map-section:only-child .book-workspace__remove-label{display:inline}}.card>.card__header,.card>.card__footer{padding:var(--card-padding)}.card>.card__header{border-bottom:1px solid var(--border)}.card>.card__footer{border-top:1px solid var(--border)}.card>.card__body--flush{padding:0}.form-container,form.form-layout{min-width:0;container-type:inline-size}.form-container--simple,form.form-layout--simple{max-width:480px}.form-container--standard{max-width:880px}.form-container--wide,form.form-layout--wide{max-width:1120px}.form-grid-container{container-type:inline-size}.form-composition-grid{gap:var(--form-gap);grid-template-columns:minmax(0,1fr);display:grid}.field.field--short{max-width:160px}.field.field--medium{max-width:240px}.field.field--long{max-width:480px}.field.field--full{width:100%}.field{min-width:0}@container (width>=640px){.form-composition-grid--2,.form-composition-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}.field--span-2,.field--span-3{grid-column:span 2}.field--span-full{grid-column:1/-1}}@container (width>=960px){.form-composition-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-composition-grid--3>.field--span-3{grid-column:span 3}}form.form-layout--plain{margin:0}form.form-layout--plain>.form-layout__body{gap:var(--form-gap);display:grid}form.form-layout--plain .school-form-heading{display:none}form.form-layout .form-actions{gap:var(--action-gap);flex-wrap:wrap}.overlay{border:1px solid var(--border);border-radius:var(--r-md);width:min(480px,100% - 32px);max-width:none;max-height:calc(100dvh - 32px);color:var(--ink);background:var(--surface);box-shadow:var(--sh-dialog);padding:0;overflow:auto}.overlay::backdrop{background:var(--scrim)}.overlay__header{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--card-padding);border-bottom:1px solid var(--border);display:flex}.overlay__header h2{font-size:var(--text-headline);line-height:var(--lh-headline);margin:0}.overlay__body,.overlay__footer{padding:var(--card-padding);min-width:0}.overlay__footer{background:var(--surface);border-top:1px solid var(--border);position:sticky;bottom:0}.overlay--drawer{border-radius:var(--r-md) 0 0 var(--r-md);width:min(560px,100%);height:100dvh;max-height:100dvh;margin:0 0 0 auto}.overlay--wide{width:min(720px,100% - 32px)}.overlay .form-actions{bottom:calc(-1 * var(--card-padding));padding-block:var(--sp-3);background:var(--surface);position:sticky}.overlay--compact{width:min(440px,100% - 32px)}.overlay--compact .overlay__header{padding:var(--sp-2) var(--sp-4)}.overlay--compact .overlay__header h2{font-size:var(--text-section);line-height:var(--lh-section)}.overlay--compact :is(.overlay__body,.overlay__footer){padding:var(--sp-4)}.overlay--compact .form-actions{padding-block:var(--sp-2) 0;margin-top:0;bottom:0}.overlay__portals{position:static}.list-toolbar,.list-toolbar__filters,.list-toolbar__actions{align-items:end;gap:var(--form-gap);flex-wrap:wrap;min-width:0;display:flex}.list-toolbar{margin-bottom:var(--panel-gap);justify-content:space-between}.list-search{gap:var(--field-gap);width:min(100%,320px);display:grid}.list-search label{font-weight:600}.list-search .search-field input{width:100%;min-width:0}.table .table__actions{width:1%}.table .table-sort{text-transform:inherit;letter-spacing:inherit;color:inherit;font:inherit;min-height:var(--control-h-sm);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;display:inline-flex}button.icon-button--small{min-width:var(--control-h-sm);width:var(--control-h-sm);min-height:var(--control-h-sm);height:auto}body .input,body .select{height:auto;padding-block:6px}body .input.textarea{min-height:96px}body .page-header{margin-bottom:var(--page-header-gap)}body .field-error{font-size:var(--text-body);line-height:var(--lh-body)}body .state.empty-state{padding:var(--sp-6)}body .login-card h1,body .login-panel h1,body .login-heading h1{font-size:var(--text-display);line-height:var(--lh-display)}body .input:focus-visible,body .select:focus-visible,body .button:focus-visible,body .icon-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px var(--focus-ring)}body .search-field:focus-within{outline:2px solid var(--accent);outline-offset:2px}@media (width<=899px),(any-pointer:coarse){body .input,body .select,body .search-field input{font-size:1rem}body .button,body .icon-button,body .select-menu__item,body .action-menu [role=menuitem]{min-height:var(--target-touch)}body .icon-button{min-width:var(--target-touch)}input[type=checkbox],input[type=radio]{width:18px;height:18px}:is(label:has(>input[type=checkbox]),label:has(>input[type=radio])){min-height:var(--target-touch);align-items:center;display:inline-flex}}.metadata-list{gap:var(--panel-gap);flex-wrap:wrap;margin:0;display:flex}.metadata-list>div{flex:160px;min-width:0}.metadata-list dt{font-size:var(--text-label);color:var(--muted)}.metadata-list dd{margin:var(--sp-1) 0 0;overflow-wrap:anywhere}.disclosure-section>summary{min-height:var(--control-h);cursor:pointer;padding-block:var(--sp-2);font-weight:600}.tooltip-anchor{display:inline-flex;position:relative}.tooltip-bubble{pointer-events:none;width:max-content;max-width:min(260px,80vw);padding:var(--sp-2);border-radius:var(--r-sm);background:var(--ink);color:var(--surface);font-size:var(--text-label);line-height:var(--lh-label);z-index:var(--z-popover);border:0;margin:0;position:fixed;inset:auto}.people-form-card>.card__body{container-type:inline-size}.people-form-card .people-form{gap:var(--form-gap);grid-template-columns:minmax(0,1fr)}@container (width>=640px){.people-form-card .people-form{grid-template-columns:repeat(2,minmax(0,1fr))}}.card__body--flush>.list-toolbar{padding:var(--card-padding);border-bottom:0;margin:0}.school-subject-toolbar>.list-search{flex:0 320px}.login-card__intro h1{line-height:var(--lh-display)}.segmented button{min-height:var(--control-h)}.table td>p{margin-block:var(--sp-1) 0}.table__actions .button{white-space:nowrap}.icon-button:hover:not(:disabled):not(:where(.topbar *,.header-panel *,.admin-sidebar *,.navigation-dialog *,.action-menu *,.notification-drawer-shell *)),.permission-check:hover,.resource-page .permission-check:hover,.segmented button:hover:not(:disabled),.import-stepper__step:hover:not(:disabled),.school-grade-toggle:hover,.file-upload:hover .file-upload__surface{background:var(--hover-surface)}.button:not(:is(.button--secondary,.button--text,.button--danger,.button--danger-outline)):hover:not(:disabled):not([aria-disabled=true]){background:var(--primary-hover);color:var(--on-primary)}.button.button--secondary:hover:not(:disabled):not([aria-disabled=true]){background:var(--hover-surface);color:var(--ink)}.button.button--text:hover:not(:disabled):not([aria-disabled=true]){background:var(--hover-surface);color:var(--accent)}.button.button--danger:hover:not(:disabled):not([aria-disabled=true]){background:var(--danger-ink);color:var(--on-primary)}.button.button--danger-outline:hover:not(:disabled):not([aria-disabled=true]){background:var(--danger-surface);color:var(--danger)}.data-table__footer{border-top:1px solid var(--table-border);padding:var(--sp-3) var(--card-padding);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.data-table .table-wrap{border-radius:var(--r-md) var(--r-md) 0 0}.card:has(.list-search) .data-table .table-wrap{border-radius:0}.people-list-card .table th{background:var(--surface)}.data-table__footer .pagination-controls{border:0;width:100%;margin:0;padding:0}.pagination-controls{color:var(--pagination-text);font-family:var(--font-sans);font-size:var(--text-body);font-weight:500;line-height:var(--lh-body);letter-spacing:-.011em;font-feature-settings:"cv11", "ss01", "ss03"}.pagination-controls__summary{flex-wrap:wrap;align-items:center}.pagination-controls .pagination-controls__actions{align-items:center;gap:var(--sp-1);margin-left:auto}.pagination-controls__button{justify-content:center;align-items:center;gap:var(--sp-1);min-height:2.25rem;padding:0 var(--sp-3);color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;display:inline-flex}.pagination-controls__button:disabled{opacity:.5;cursor:default}.pagination-controls__button:hover:not(:disabled){background:var(--hover-surface);border-radius:var(--r-full)}.pagination-controls__button:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--r-full)}.pagination-controls__page{min-width:2.25rem;height:2.25rem;padding:0 var(--sp-2);border:1px solid color-mix(in srgb, var(--border) 60%, transparent);border-radius:var(--r-full);background:var(--surface);justify-content:center;align-items:center;display:inline-flex;box-shadow:0 1px 3px #30293d0f}@media (width<=899px),(any-pointer:coarse){.pagination-controls__button{min-height:var(--target-touch)}}.pagination-controls__page-size{white-space:nowrap;align-items:center;gap:8px;display:flex}.pagination-controls__page-size .select{width:auto;min-width:36px;min-height:26px;font-size:var(--text-label);line-height:var(--lh-label);justify-content:center;gap:2px;padding:3px 4px}.pagination-controls__page-size .select__icon svg{width:12px;height:12px}.pagination-page-size-menu{width:var(--radix-select-trigger-width);min-width:var(--radix-select-trigger-width);max-width:var(--radix-select-trigger-width)}.pagination-page-size-menu .select-menu__viewport{padding:2px}.pagination-page-size-menu .select-menu__item{min-height:26px;font-size:var(--text-label);line-height:var(--lh-label);justify-content:center;padding:3px 2px}.pagination-page-size-menu .select-menu__item[data-state=checked]{background:var(--selected-surface)}.pagination-page-size-menu .select-menu__check{display:none}@media (width<=899px),(any-pointer:coarse){.pagination-controls__page-size .select,.pagination-page-size-menu .select-menu__item{min-height:var(--target-touch)}}body :is(h1,h2,h3,h4,h5,h6),body :is(.empty-state strong,.inline-alert strong,.login-visual-copy strong,.role-assignment-list__heading,.school-grade-name,.pdf-map-section legend,.eyebrow,.sidebar__brand,.auth-panel__brand,.login-brand,.table-link){font-weight:var(--font-weight-title)}.login-brand{font-size:1.25rem}.login-brand__mark{width:44px;height:44px}.phone-input{align-items:center;gap:.5rem;display:flex}.phone-input__prefix{flex:none;font-weight:600}.phone-input .input{min-width:0}.field__label{align-items:center;gap:var(--sp-1);min-width:0;display:flex}.field__label>label{margin:0}.field__info{border-radius:var(--r-sm);width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}@media (width<=899px),(pointer:coarse){.field__info{width:44px;height:44px}}body dialog:modal{transition:box-shadow .15s}@media (hover:hover) and (pointer:fine){body dialog:modal:hover{box-shadow:var(--sh-dialog), 0 8px 24px color-mix(in srgb, var(--ink) 8%, transparent)}}@media (prefers-reduced-motion:reduce){body dialog:modal{transition:none}}:is(.overlay--dialog,.header-panel)[open]{transform-origin:50%;animation:.22s cubic-bezier(.22,1,.36,1) modal-grow-enter}.header-panel[open]{transform-origin:100% 0}:is(.overlay--dialog,.header-panel)[open]::backdrop{animation:.18s ease-out drawer-backdrop-enter}@keyframes modal-grow-enter{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){:is(.overlay--dialog,.header-panel)[open],:is(.overlay--dialog,.header-panel)[open]::backdrop{animation:none}}:is(.overlay--drawer,.book-workspace__drawer,.navigation-dialog)[open]{--drawer-enter-offset:100%;animation:.28s cubic-bezier(.22,1,.36,1) drawer-slide-enter}.navigation-dialog[open]{--drawer-enter-offset:-100%}:is(.overlay--drawer,.book-workspace__drawer,.navigation-dialog)[open]::backdrop{animation:.18s ease-out drawer-backdrop-enter}@keyframes drawer-slide-enter{0%{transform:translateX(var(--drawer-enter-offset));opacity:0}to{opacity:1;transform:none}}@keyframes drawer-backdrop-enter{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){:is(.overlay--drawer,.book-workspace__drawer,.navigation-dialog)[open],:is(.overlay--drawer,.book-workspace__drawer,.navigation-dialog)[open]::backdrop{animation:none}}.book-workspace__content.pdf-step-region--mapping{padding:var(--sp-1) var(--sp-3)}.book-workspace__pane:has(>.pdf-step-region--mapping)>.book-workspace__footer{min-height:44px;padding:var(--sp-1) var(--sp-3)}.info-text{align-items:flex-start;gap:var(--sp-2);min-width:0;display:flex}.info-text>svg{color:var(--info);flex:none}.info-text__copy{overflow-wrap:anywhere;min-width:0}.info-text:not(.inline-alert){padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);background:var(--info-surface);color:var(--muted);font-size:var(--text-label);line-height:var(--lh-label)}.pdf-map-guidance{justify-items:stretch}.pdf-map-guidance__row{align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.pdf-map-guidance__row>.info-text{flex:320px}.pdf-map-guidance__row>.button{flex:none}.protected-pdf__toolbar-end>.protected-pdf__zoom-help{padding:var(--sp-1) var(--sp-2);flex:0 auto;align-items:center}.protected-pdf__pages{cursor:grab}.protected-pdf__pages :is(.canvasWrapper,.textLayer,.textLayer span){cursor:inherit}.protected-pdf__pages[data-panning=true]{cursor:grabbing;-webkit-user-select:none;user-select:none}.protected-pdf__pages{inset:calc(var(--sp-2) + 2px) var(--sp-1) calc(var(--sp-2) - 2px);scrollbar-gutter:stable;overflow:hidden scroll}.protected-pdf__footer{justify-content:center;align-items:center;min-width:0;display:flex}.protected-pdf__page-count{inline-size:20ch;max-width:100%;padding:var(--sp-1) var(--sp-3);border:1px solid var(--border);border-radius:var(--r-full);background:var(--surface);color:var(--muted);font-size:var(--text-body);line-height:var(--lh-body);font-variant-numeric:tabular-nums;text-align:center;display:inline-block}.protected-pdf--fill.protected-pdf--external-footer{grid-template-rows:auto minmax(0,1fr)}.book-workspace__footer--preview{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.book-workspace__preview-pagination{grid-area:1/2;justify-content:center;min-width:0;display:flex}.book-workspace__validation-action{grid-area:1/1;justify-self:start}.book-workspace__preview-actions{justify-content:flex-end;align-items:center;gap:var(--sp-2);flex-wrap:nowrap;grid-area:1/3;min-width:0;display:flex}.book-workspace__compact-action-label{display:none}.book-workspace__footer--preview .button{white-space:nowrap;flex-shrink:0}.book-workspace__footer--preview>.inline-alert{grid-column:1/-1}.book-workspace__content.pdf-step-region--preview{padding-block-end:0}.book-workspace__content .protected-pdf--external-footer .protected-pdf__viewport{border-block-end:0;border-end-end-radius:0;border-end-start-radius:0}.protected-pdf:fullscreen{width:100%;height:100%;padding:var(--sp-2);box-sizing:border-box;background:var(--background);gap:var(--sp-2);grid-template-rows:auto minmax(0,1fr) auto}.protected-pdf:fullscreen .protected-pdf__viewport{border:1px solid var(--border);border-radius:var(--r-md);height:auto;min-height:0}.protected-pdf:fullscreen{grid-template-columns:clamp(80px,10vw,128px) minmax(0,1fr)}:is(.protected-pdf:fullscreen>.protected-pdf__toolbar,.protected-pdf:fullscreen>.protected-pdf__footer,.protected-pdf:fullscreen>.info-text){grid-column:1/-1}.protected-pdf:fullscreen>.protected-pdf__viewport{grid-area:2/2}.protected-pdf__page-rail{gap:var(--sp-2);min-height:0;padding:var(--sp-1);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--pdf-scrollbar-thumb) var(--pdf-scrollbar-track);flex-direction:column;grid-area:2/1;display:flex;overflow-y:auto}.protected-pdf__page-rail>.button{font-variant-numeric:tabular-nums;flex-shrink:0;justify-content:center}.protected-pdf__page-rail>[aria-current=page]{color:var(--primary);border-color:var(--primary);background:var(--surface)}.protected-pdf__pages{scrollbar-width:none;scrollbar-gutter:auto;right:20px}.protected-pdf__pages::-webkit-scrollbar{display:none}.protected-pdf__scroll-rail{border-radius:var(--r-full);background:var(--pdf-scrollbar-track);width:12px;box-shadow:var(--pdf-scrollbar-track-shadow);cursor:grab;touch-action:none;position:absolute;top:14px;bottom:10px;right:4px}.protected-pdf__scroll-thumb{border-radius:var(--r-full);background:var(--pdf-scrollbar-thumb);display:block;position:absolute;inset-inline:2px}.protected-pdf__scroll-rail[data-dragging=true]{cursor:grabbing}.protected-pdf{box-shadow:none;border:0;border-radius:0;container:pdf-preview/inline-size}.protected-pdf,.protected-pdf--fill{gap:0}.protected-pdf__pages{top:14px;left:12px}.protected-pdf__toolbar{border:0;border-bottom:1px solid var(--border);border-radius:0;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.protected-pdf__toolbar-start,.protected-pdf__controls,.protected-pdf__toolbar-end{align-items:center;gap:var(--sp-2);flex-wrap:wrap;min-width:0;display:flex}.protected-pdf__toolbar-start{flex-wrap:nowrap;max-width:280px}.protected-pdf__controls{justify-content:center;gap:var(--sp-1);flex-wrap:nowrap}.protected-pdf__toolbar-end{justify-content:flex-end;justify-self:end;max-width:100%}.protected-pdf__toolbar-actions{display:contents}.protected-pdf__toolbar-actions>.button{order:1}.protected-pdf__toolbar>.protected-pdf__zoom-help{background:0 0;grid-column:1/-1;justify-self:center;min-width:0;max-width:100%;padding:0}.protected-pdf__toolbar-actions>.book-workspace__help{flex-shrink:0;order:3;margin-inline-start:auto}.protected-pdf__viewport{border:0;border-radius:0}.protected-pdf:fullscreen .protected-pdf__viewport{border:0;border-radius:0}.protected-pdf__footer{padding:var(--sp-1) var(--sp-3);border-top:1px solid var(--border)}.book-workspace__content.pdf-step-region--preview{padding:0}.protected-pdf:fullscreen{border-radius:0;gap:0;padding:0}@container pdf-preview (width<=1400px){.protected-pdf__toolbar-start{grid-area:1/1}.protected-pdf__toolbar-end{grid-area:1/3;max-width:280px}.protected-pdf__controls{grid-area:1/2}.protected-pdf__controls>.button{flex-shrink:0;width:40px;min-height:40px;padding:0}.protected-pdf__control-label{display:none}.protected-pdf__toolbar-actions>.book-workspace__help{order:1}}@container pdf-preview (width<=760px){.protected-pdf__toolbar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.protected-pdf__toolbar-start{flex-wrap:nowrap;max-width:none}.protected-pdf__toolbar-end{grid-area:1/2;justify-content:flex-end;max-width:none}.protected-pdf__toolbar-actions>.book-workspace__help{margin-inline-start:0}.protected-pdf__controls{grid-area:2/1/auto/-1;justify-content:center}.protected-pdf--fill .pdf-preview-selector{flex:1 1 0}}@container pdf-preview (width<=800px){.protected-pdf--fill .pdf-preview-selector .field>.field__label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.protected-pdf__toolbar .book-workspace__steps-toggle{width:40px;padding:0}.protected-pdf__toolbar .book-workspace__steps-label{display:none}}@container pdf-preview (width<=640px){.protected-pdf__toolbar-actions>.button{width:40px;padding:0}.protected-pdf__toolbar .book-workspace__validation-label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}}@container book-preview-pane (width<=1400px){.book-workspace__footer--preview .book-workspace__action-label{display:none}.book-workspace__footer--preview .book-workspace__compact-action-label{display:inline}.book-workspace__preview-pagination .protected-pdf__page-count{inline-size:14ch}}@container book-preview-pane (width<=640px){.book-workspace__footer--preview{gap:var(--sp-1);padding-inline:var(--sp-2)}.book-workspace__footer--preview :is(.book-workspace__validation-action,.pdf-preview-review-actions .button){width:40px;padding:0}.book-workspace__footer--preview :is(.book-workspace__validation-action,.pdf-preview-review-actions) .book-workspace__compact-action-label{display:none}.book-workspace__preview-pagination .protected-pdf__page-count{inline-size:10ch;padding-inline:var(--sp-1)}.book-workspace__preview-actions{gap:var(--sp-1)}.book-workspace__preview-actions>.button{width:40px;padding:0}.book-workspace__preview-actions>.button .book-workspace__compact-action-label{display:none}}.people-list-card>.card__body>.state{padding:var(--card-padding)}@font-face{font-family:Figtree;src:url(/fonts/figtree-latin.woff2)format("woff2");font-style:normal;font-weight:400 700;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;src:url(/fonts/figtree-latin-ext.woff2)format("woff2");font-style:normal;font-weight:400 700;font-display:swap;unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}html:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html{text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}h1,h2,h3,.login-visual-copy strong{letter-spacing:-.02em}.button,.input,.select-trigger,.icon-button,.sidebar__link{transition:background-color .15s,border-color .15s,color .15s}.button{border-radius:var(--r-tile)}.input,.select-trigger,textarea{background:var(--surface);color:var(--ink)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}input:autofill{box-shadow:0 0 0 100px var(--surface) inset;-webkit-text-fill-color:var(--ink);caret-color:var(--ink)}.button--danger{background:var(--danger-solid)}.button--danger,.button.button--danger:hover:not(:disabled):not([aria-disabled=true]){color:var(--on-danger)}.admin-sidebar .sidebar__header{color:var(--ink);background:0 0}.admin-sidebar .sidebar__link{color:var(--muted)}.admin-sidebar .sidebar__link:is(:hover,:focus-visible){background:var(--sidebar-hover)}.admin-sidebar .sidebar__link:focus-visible{color:var(--ink)}.admin-sidebar .sidebar__link.active{background:var(--selected-surface);color:var(--accent)}.admin-sidebar .sidebar__link.active:before{border-radius:var(--r-full);height:16px;top:50%;bottom:auto;left:0;transform:translateY(-50%)}.sidebar__link span{overflow-wrap:anywhere;min-width:0}.sidebar__mark{background:0 0}.sidebar__mark img{object-fit:contain;width:100%;height:100%;display:block}.topbar__workspace h1,.topbar__workspace strong{font-family:var(--font-sans);font-size:var(--text-headline);line-height:var(--lh-headline);font-weight:var(--font-weight-title);color:var(--workspace-header-text);letter-spacing:-.02em;overflow-wrap:anywhere;margin:0}.dashboard-recent__header{background:var(--stat-violet-surface);border-radius:var(--r-md) var(--r-md) 0 0;flex-wrap:wrap;margin-bottom:0}.dashboard-recent__header h2{color:var(--stat-violet)}.dashboard-recent__list{margin-top:0}.sidebar__footer .theme-toggle{width:100%}.theme-toggle.icon-button{min-width:var(--target-touch);min-height:var(--target-touch);border:1px solid var(--border);border-radius:var(--r-full);background:var(--surface);color:var(--ink);box-shadow:var(--card-shadow)}.theme-toggle.icon-button:hover{background:var(--hover-surface)}.login-page{isolation:isolate;background:radial-gradient(80% 60% at 18% 28%,#56e1e952,#0000 62%),radial-gradient(75% 60% at 82% 68%,#5b58eb47,#0000 64%),linear-gradient(135deg,#f4f7ff,#eef2ff 50%,#f8fbff);padding-top:max(80px,5vw);position:relative}.login-page:before{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(#0f172a0a 1px,#0000 1px),linear-gradient(90deg,#0f172a0a 1px,#0000 1px);background-size:90px 90px;position:absolute;inset:0}:root[data-theme=dark] .login-page{background:#0b1020}:root[data-theme=dark] .login-page:before{background:0 0}.login-theme{right:var(--sp-6);top:var(--sp-6);position:absolute}.login-card{background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:32px;box-shadow:0 24px 70px #0f172a1f}:root[data-theme=dark] .login-card{box-shadow:0 30px 90px #080c1c8c}.login-card__visual{background:color-mix(in srgb, var(--selected-surface) 60%, transparent)}.login-form .input{background:var(--surface)}.login-visual-copy strong{line-height:1.2}.login-visual-list span{padding-block:var(--sp-2)}.protected-pdf__pages .pdfViewer .page{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page-bg-color:#fff;--page-border:1px solid transparent}@media (width>=900px){.app-shell .sidebar--desktop{width:var(--sidebar-w);z-index:30;height:100dvh;min-height:0;transition:width .18s,box-shadow .18s;overflow:hidden auto}.app-shell--collapsed:not(.app-shell--navigation-peek) .sidebar--desktop{width:var(--sidebar-collapsed-w)}.app-shell--navigation-peek .sidebar--desktop{box-shadow:var(--sh-dialog)}.app-shell--navigation-peek .sidebar--desktop>*{width:calc(var(--sidebar-w) - 2 * var(--sp-3));flex-shrink:0}.app-shell--collapsed:not(.app-shell--navigation-peek) .sidebar--desktop .sidebar__link.active:before{left:0}}@media (prefers-reduced-motion:reduce){.button,.input,.select-trigger,.icon-button,.sidebar__link,.app-shell .sidebar--desktop{transition:none}}.list-toolbar__filters:has(.list-search){flex:1}.list-search{flex:1;width:100%;min-width:0}body .list-search .search-field{--active-border:var(--search-border);min-width:0;min-height:var(--control-h);border:1px solid var(--search-border);border-radius:calc(var(--control-h) / 2);background:var(--background);width:100%;position:relative;overflow:hidden;box-shadow:0 1px 3px #30293d0f}body .list-search .search-field:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .15s;position:absolute;inset:-1px}body .list-search .search-field input{font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--lh-body);letter-spacing:-.011em;font-feature-settings:"cv11", "ss01", "ss03";color:var(--search-foreground);font-weight:400}body .list-search .search-field svg,body .list-search .search-field input::placeholder{color:var(--reference-muted-text);opacity:1}@media (width<=767px){body .list-search .search-field input{font-size:1rem;line-height:1.5rem}}body :is(a[href],button,input,select,textarea,summary,[role=button][tabindex]):not([aria-invalid=true],:disabled,[aria-disabled=true],[readonly],input[type=hidden],a[href]:not(.button,.icon-button),.table-link,.button--text,.table-sort,.pagination-controls__button,.search-field input,.otp-code__input):focus-visible,body .search-field:focus-within{border-color:var(--active-border);outline:1px solid var(--active-border);outline-offset:-1px;box-shadow:inset 0 0 0 1px var(--active-highlight)}body .otp-code:not(.otp-code--error):has(.otp-code__input:focus-visible) .otp-code__cell--current{border-color:var(--active-border);outline:1px solid var(--active-border);outline-offset:-1px;box-shadow:inset 0 0 0 1px var(--active-highlight)}body .file-upload:has(input:focus-visible) .file-upload__surface{border-color:var(--active-border);outline:1px solid var(--active-border);outline-offset:-1px;box-shadow:inset 0 0 0 1px var(--active-highlight)}body .search-field input:is(:focus-visible,:active){box-shadow:none;outline:none;animation:none}body :is(input,textarea)[readonly]:focus-visible,body :is(a[href]:not(.button,.icon-button),.table-link,.button--text,.table-sort,.pagination-controls__button):is(:focus-visible,:active){box-shadow:none;outline:none}body :is(a[href]:not(.button,.icon-button),.table-link,.button--text,.table-sort,.pagination-controls__button):focus-visible{text-underline-offset:3px;text-decoration:underline}body .list-search .search-field:focus-within{outline:none;animation:none;box-shadow:0 1px 3px #30293d0f}body .list-search .search-field:focus-within:after{opacity:1;animation:2.4s ease-in-out infinite search-border-pulse}@keyframes search-border-pulse{0%,to{box-shadow:inset 0 0 0 1px var(--search-border)}50%{box-shadow:inset 0 0 0 2.5px var(--search-border)}}@media (prefers-reduced-motion:reduce){body .list-search .search-field:after{transition:none}body .list-search .search-field:focus-within:after{box-shadow:inset 0 0 0 2.5px var(--search-border);animation:none}}body :is(a[href],button,input,select,textarea,summary,[role=button][tabindex]):focus:not(:focus-visible){outline:none}body :is(.input,.select):focus:not(:focus-visible){box-shadow:none}body .file-upload:has(input:focus:not(:focus-visible)) .file-upload__surface{box-shadow:none;outline:none}
