:root{--qflow-primary:#0f172a;--qflow-primary-rgb:15 23 42;--qflow-secondary:#122f6e;--qflow-secondary-rgb:18 47 110;--qflow-tertiary:#f59e0b;--qflow-tertiary-rgb:245 158 11;--qflow-surface:#f8f9ff;--qflow-surface-dim:#cbdbf5;--qflow-surface-bright:#f8f9ff;--qflow-surface-container-lowest:#fff;--qflow-surface-container-low:#eff4ff;--qflow-surface-container:#e5eeff;--qflow-surface-container-high:#dce9ff;--qflow-surface-container-highest:#d3e4fe;--qflow-on-surface:#0b1c30;--qflow-on-surface-variant:#45464d;--qflow-inverse-surface:#213145;--qflow-inverse-on-surface:#eaf1ff;--qflow-outline:#76777d;--qflow-outline-variant:#c6c6cd;--qflow-surface-tint:#565e74;--qflow-primary-container:#131b2e;--qflow-on-primary-container:#7c839b;--qflow-primary-fixed:#dae2fd;--qflow-primary-fixed-dim:#bec6e0;--qflow-on-primary-fixed:#131b2e;--qflow-on-primary-fixed-variant:#3f465c;--qflow-secondary-container:#9fb7fe;--qflow-on-secondary-container:#2d4686;--qflow-secondary-fixed:#dae1ff;--qflow-secondary-fixed-dim:#b3c5ff;--qflow-on-secondary-fixed:#001849;--qflow-on-secondary-fixed-variant:#2a4483;--qflow-tertiary-container:#ffddb8;--qflow-tertiary-fixed-dim:#ffb95f;--qflow-on-tertiary-fixed:#2a1700;--qflow-on-tertiary-fixed-variant:#653e00;--qflow-error:#ba1a1a;--qflow-on-error:#fff;--qflow-error-container:#ffdad6;--qflow-on-error-container:#93000a;--harbor-bg:var(--qflow-surface);--harbor-bg-session:var(--qflow-surface);--harbor-surface:var(--qflow-surface-container-lowest);--harbor-surface-soft:var(--qflow-surface-container-low);--harbor-surface-muted:var(--qflow-surface-container);--harbor-surface-high:var(--qflow-surface-container-high);--harbor-line:var(--qflow-surface-container-highest);--harbor-input-line:var(--qflow-outline-variant);--harbor-heading:var(--qflow-primary);--harbor-copy:var(--qflow-on-surface-variant);--harbor-copy-strong:var(--qflow-inverse-surface);--harbor-kicker:var(--qflow-on-primary-container);--harbor-primary:var(--qflow-secondary);--harbor-primary-hover:#0d265d;--harbor-primary-foreground:#fff;--qflow-wordmark:var(--qflow-secondary);--qflow-wordmark-dark:var(--qflow-primary);--qflow-focus-ring:var(--qflow-secondary-container);--harbor-success-bg:#eaf8ef;--harbor-success-line:#bce7ca;--harbor-success-ink:#087333;--harbor-warning-bg:var(--qflow-tertiary-container);--harbor-warning-line:var(--qflow-tertiary);--harbor-warning-ink:var(--qflow-on-tertiary-fixed-variant);--harbor-danger-bg:var(--qflow-error-container);--harbor-danger-line:var(--qflow-error);--harbor-danger-ink:var(--qflow-on-error-container);--harbor-shadow:0 1px 2px rgb(var(--qflow-primary-rgb) / .04), 0 1px 1px rgb(var(--qflow-primary-rgb) / .03);--harbor-shadow-strong:0 10px 15px -3px rgb(var(--qflow-primary-rgb) / .05);--harbor-radius-xl:12px;--harbor-radius-lg:8px;--harbor-radius-md:6px;--harbor-radius-sm:4px;--harbor-radius-pill:999px;--harbor-space-2xs:.25rem;--harbor-space-xs:.5rem;--harbor-space-sm:.75rem;--harbor-space-md:1rem;--harbor-space-lg:1.5rem;--harbor-space-xl:2rem;--harbor-title-xl:2.25rem;--harbor-title-lg:1.875rem;--harbor-title-md:1.5rem;--harbor-body-size:1rem;--harbor-body-line:1.5;--harbor-label-font:"Public Sans", "Inter", sans-serif;--harbor-ease:cubic-bezier(.22, 1, .36, 1)}@keyframes harbor-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}*,:before,:after{box-sizing:border-box}body{background:var(--harbor-bg);min-height:100dvh;color:var(--harbor-heading);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.5}#app{min-height:100dvh}button,input,select,textarea{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--qflow-secondary);outline-offset:2px;box-shadow:0 0 0 4px rgb(var(--qflow-secondary-rgb) / .14)}.page-kicker,.metric-label,.field span,.technical-grid dt{font-family:var(--harbor-label-font);letter-spacing:.04em;text-transform:uppercase;color:var(--harbor-kicker);margin:0;font-size:.75rem;font-weight:500}.page-lede,.support-copy,.editor-copy,.status-copy,.workspace-copy,.card-copy,.section-copy,.assessment-empty p,.history-feedback p,.feedback p,.list-feedback p,.results-ops-empty p,.empty-state p,.row-copy,.side-card p,.roster-row p,.timeline-entry p,.history-card p,.session-notice p{font-size:var(--harbor-body-size);color:var(--harbor-copy);line-height:var(--harbor-body-line);margin:.375rem 0 0}.primary-action,.secondary-action,.topbar-action{border-radius:var(--harbor-radius-sm);min-height:2.75rem;font:inherit;font-family:var(--harbor-label-font);cursor:pointer;transition:background .12s var(--harbor-ease), border-color .12s var(--harbor-ease), color .12s var(--harbor-ease), box-shadow .12s var(--harbor-ease), transform .12s var(--harbor-ease);justify-content:center;align-items:center;padding:.625rem .9375rem;font-size:.875rem;font-weight:600;display:inline-flex}.primary-action,.topbar-action--primary{border:1px solid var(--harbor-primary);background:var(--harbor-primary);color:var(--harbor-primary-foreground)}.primary-action:hover,.topbar-action--primary:hover{background:var(--harbor-primary-hover);border-color:var(--harbor-primary-hover)}.primary-action:not(:disabled):active,.secondary-action:not(:disabled):active,.topbar-action:not(:disabled):active{transform:translateY(1px)}.secondary-action,.topbar-action{border:1px solid var(--harbor-line);background:var(--harbor-surface-soft);color:var(--harbor-copy-strong)}.secondary-action:hover,.topbar-action:hover{background:var(--harbor-surface);border-color:var(--harbor-input-line)}.primary-action:disabled,.secondary-action:disabled,.topbar-action:disabled,.text-action:disabled{cursor:not-allowed;opacity:.5}.text-action{color:var(--harbor-copy-strong);font:inherit;cursor:pointer;transition:color .1s var(--harbor-ease);background:0 0;border:none;padding:0;font-size:.8125rem;font-weight:500}.text-action:hover{color:var(--harbor-primary)}.field{gap:.375rem;display:grid}.field input,.field select,.field textarea{border:1px solid var(--harbor-input-line);border-radius:var(--harbor-radius-md);background:var(--harbor-surface-soft);width:100%;color:var(--harbor-heading);transition:border-color .12s var(--harbor-ease), box-shadow .12s var(--harbor-ease);padding:.5rem .625rem;font-size:1rem}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--harbor-primary);box-shadow:0 0 0 3px rgb(var(--qflow-secondary-rgb) / .14);outline:none}.field input::placeholder,.field textarea::placeholder{color:var(--harbor-kicker)}.mono{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.8125rem}.status-pill,.assessment-status{border-radius:var(--harbor-radius-pill);background:var(--harbor-surface-muted);color:var(--harbor-copy-strong);font-family:var(--harbor-label-font);transition:background .2s var(--harbor-ease), color .2s var(--harbor-ease);align-items:center;gap:.25rem;padding:.125rem .4375rem;font-size:.6875rem;font-weight:500;display:inline-flex}.feedback,.list-feedback,.history-feedback,.results-ops-empty,.assessment-empty{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-soft)}.feedback--error,.list-feedback--error,.history-feedback.error,.results-ops-empty--error,.assessment-empty--error,.finalization-error{background:var(--harbor-danger-bg);border-color:color-mix(in srgb, var(--harbor-danger-line) 48%, var(--harbor-danger-bg))}.meta-line{color:var(--harbor-copy);margin:.375rem 0 0;font-size:.75rem;line-height:1.5}.meta-line strong{color:var(--harbor-copy-strong);font-weight:500}.meta-sep:before{content:" · ";color:var(--harbor-kicker)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.app-shell{background:var(--harbor-bg);grid-template-columns:216px minmax(0,1fr);min-height:100vh;display:grid}.app-shell--session{grid-template-columns:minmax(0,1fr)}.app-rail,.app-main{min-width:0}.app-rail{background:var(--qflow-primary);border-right:1px solid var(--qflow-primary-container);color:var(--qflow-inverse-on-surface);grid-template-rows:auto 1fr auto;gap:.875rem;padding:1rem .75rem;display:grid}.brand-mark,.rail-kicker{letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.6875rem;font-weight:500}.brand-mark{color:var(--qflow-inverse-on-surface);letter-spacing:0;text-transform:none;font-size:.9375rem;font-weight:600}.brand-mark--qflow{align-items:baseline;gap:0;font-size:1.0625rem;font-weight:800;display:inline-flex}.brand-mark--qflow span:first-child{color:var(--qflow-secondary-fixed-dim)}.brand-mark--qflow span:last-child{color:var(--qflow-inverse-on-surface)}.rail-kicker{color:var(--qflow-primary-fixed-dim)}.rail-brand{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.brand-context{border:1px solid var(--qflow-on-primary-fixed-variant);border-radius:var(--harbor-radius-pill);background:var(--qflow-primary-container);min-height:1.75rem;color:var(--qflow-inverse-on-surface);align-items:center;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.rail-groups{align-content:start;gap:.625rem;display:grid}.rail-group{gap:.375rem;display:grid}.rail-group--secondary{border-top:1px solid var(--qflow-on-primary-fixed-variant);padding-top:.75rem}.rail-nav{gap:.25rem;display:grid}.rail-link{border-radius:var(--harbor-radius-lg);min-height:2.75rem;color:var(--qflow-inverse-on-surface);transition:background .12s var(--harbor-ease), border-color .12s var(--harbor-ease), color .12s var(--harbor-ease), transform .12s var(--harbor-ease);background:0 0;border:1px solid #0000;align-items:center;padding:.4375rem .625rem;text-decoration:none;display:flex}.rail-link strong{color:currentColor;font-size:.8125rem;font-weight:500}.rail-link:hover{border-color:var(--qflow-on-primary-fixed-variant);background:#ffffff14}.rail-link:active{transform:translateY(1px)}.rail-link[data-active=true]{background:var(--qflow-secondary-container);border-color:var(--qflow-secondary-fixed-dim);color:var(--qflow-on-secondary-fixed)}.rail-link--secondary strong{color:currentColor}.rail-status{background:0 0;border:none;align-self:end;padding:.125rem 0}.rail-status strong{color:var(--qflow-inverse-on-surface);font-size:.8125rem;font-weight:500;display:block}.rail-status p{color:var(--qflow-primary-fixed-dim);margin:.25rem 0 0;font-size:.75rem;line-height:1.5}.app-main{background:0 0;grid-template-rows:auto auto minmax(0,1fr);gap:.875rem;padding:1.25rem;display:grid}.app-main--session{background:var(--harbor-bg-session);grid-template-rows:auto auto minmax(0,1fr);min-height:100vh;padding:1rem 1.25rem 1.25rem}.topbar,.context-banner,.operator-banner{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-xl);background:var(--harbor-surface)}.topbar{justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;display:flex}.topbar-actions{flex-wrap:wrap;gap:.5rem;display:flex}.topbar--actions{justify-content:flex-end;padding:.5rem .75rem}.topbar-action--primary{border-color:var(--harbor-primary);background:var(--harbor-primary);color:var(--harbor-primary-foreground)}.context-banner{justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1rem;display:flex}.context-copy{gap:.25rem;display:grid}.context-banner strong{color:var(--harbor-copy-strong);font-size:.8125rem;display:block}.context-banner p:last-child{color:var(--harbor-copy);font-size:.8125rem;line-height:var(--harbor-body-line);margin:0}.blocked-banner,.operator-banner{padding:.875rem 1rem}.blocked-banner{border-radius:var(--harbor-radius-lg);background:var(--harbor-warning-bg);border:1px solid var(--harbor-warning-line);min-width:min(320px,100%);color:var(--harbor-warning-ink);font-size:.8125rem}.blocked-banner p,.operator-banner p{margin:.25rem 0 0;font-size:.8125rem}.operator-banner{color:var(--harbor-warning-ink);font-size:.8125rem}.operator-banner[data-level=warning]{background:var(--harbor-warning-bg);border-color:var(--harbor-warning-line)}.page-frame{width:100%;min-height:0;animation:harbor-enter .3s var(--harbor-ease) both}.page-frame--session{width:100%;margin:0}@media (width<=1080px){.app-shell{grid-template-columns:1fr}.app-rail{border-right:none;border-bottom:1px solid var(--harbor-line);grid-template-rows:auto;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.75rem 1rem}.rail-groups{scrollbar-width:none;align-items:center;gap:.5rem;display:flex;overflow-x:auto}.rail-groups::-webkit-scrollbar{display:none}.rail-group{align-items:center;gap:.5rem;min-width:max-content;display:flex}.rail-group--secondary{border-top:none;border-left:1px solid var(--harbor-line);padding-top:0;padding-left:.5rem}.rail-kicker{display:none}.rail-nav{gap:.375rem;display:flex}.rail-link{white-space:nowrap}.rail-status{text-align:right;justify-self:end}}@media (width<=840px){.app-rail{grid-template-columns:1fr;gap:.625rem;padding:.75rem}.rail-brand{width:100%}.rail-groups{gap:.5rem;width:100%;padding-bottom:0;display:grid;overflow:visible}.rail-group{gap:.375rem;min-width:0;display:grid}.rail-group--secondary{border-left:none;padding-left:0}.rail-nav{flex-wrap:wrap;display:flex}.rail-status{text-align:left;justify-self:stretch}.rail-status p{display:none}.context-banner{flex-direction:column;align-items:flex-start}.app-main{gap:.75rem;width:100%;padding:.875rem}.app-main--session{padding:.75rem .875rem 1rem}.primary-action,.secondary-action{width:100%}}.details-page,.empty-state{gap:1rem;display:grid}.details-intro,.detail-card,.empty-state{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-xl);background:var(--harbor-surface);box-shadow:var(--harbor-shadow)}.details-intro,.empty-state{align-items:center;padding:1rem 1.125rem;display:flex}.details-intro h1,.empty-state h1{color:var(--harbor-heading);font-size:var(--harbor-title-xl);margin:0;font-weight:600;line-height:1.2}.details-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.detail-card{padding:1rem 1.125rem}.detail-card--highlight{background:var(--harbor-surface-soft)}.span-two{grid-column:span 2}.card-header h2,.detail-card h2{color:var(--harbor-heading);margin:0;font-size:.9375rem;font-weight:600}.card-copy{color:var(--harbor-copy);margin:.25rem 0 0;font-size:.8125rem;line-height:1.5}.detail-note{gap:.25rem;margin-top:.75rem;display:grid}.detail-note-label{color:var(--harbor-kicker);letter-spacing:.04em;text-transform:uppercase;font-size:.6875rem;font-weight:500}.detail-note-inline{color:var(--harbor-copy);margin:.5rem 0 0;font-size:.8125rem}.technical-disclosure{border-top:1px solid var(--harbor-line);margin-top:.75rem;padding-top:.75rem}@media (width<=1100px){.details-grid{grid-template-columns:1fr}.span-two{grid-column:auto}}@media (width<=900px){.details-intro,.empty-state,.card-header{flex-direction:column;align-items:flex-start}.primary-action,.secondary-action{width:100%}}.history-page,.empty-state{gap:.75rem;display:grid}.history-intro,.history-context,.history-card,.history-feedback,.empty-state{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-xl);background:var(--harbor-surface);box-shadow:var(--harbor-shadow)}.history-intro,.empty-state{justify-content:space-between;align-items:flex-end;gap:.75rem;padding:.875rem 1rem;display:flex}.history-intro h1,.empty-state h1,.history-card h2,.history-context h2{color:var(--harbor-heading);margin:0;font-weight:600}.history-intro h1,.empty-state h1{font-size:var(--harbor-title-xl);line-height:1.2}.intro-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.history-context{justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;display:flex}.context-main{min-width:0}.context-main h2{font-size:1rem;line-height:1.3}.history-card,.history-feedback{padding:.875rem 1rem}.history-feedback.error,.finalization-error{background:#fef2f2;border-color:#fecaca}.history-list{gap:.625rem;display:grid}.history-card[data-current=true]{box-shadow:var(--harbor-shadow-strong);border-color:#93c5fd}.history-card-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.history-card h2{font-size:1.125rem;line-height:1.25}.attempt-summary{color:var(--harbor-copy);font-size:.8125rem}.history-meta{color:var(--harbor-copy);flex-wrap:wrap;justify-content:flex-end;gap:.25rem;font-size:.8125rem;display:flex}.attempt-date{color:var(--harbor-heading);font-size:.8125rem;font-weight:500}.finalization-error{color:#991b1b;border-radius:6px;margin-top:.625rem;padding:.625rem .75rem;font-size:.8125rem}.score-revision-note{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;gap:.25rem;margin-top:.625rem;padding:.625rem .75rem;font-size:.8125rem;display:grid}.score-revision-note strong,.score-revision-note p{margin:0}.score-amended-note{color:var(--harbor-copy);margin-top:.25rem;font-size:.75rem;display:block}.history-breakdown{border-top:1px solid var(--harbor-line);margin-top:.625rem;padding-top:.625rem}.history-breakdown summary{cursor:pointer;color:var(--harbor-copy-strong);font-size:.8125rem;font-weight:500}.breakdown-table-wrap{margin-top:.625rem;overflow-x:auto}.breakdown-table{border-collapse:collapse;width:100%;min-width:560px}.breakdown-table th,.breakdown-table td{border-bottom:1px solid var(--harbor-line);text-align:left;vertical-align:top;padding:.75rem .5rem;font-size:.875rem}.breakdown-table thead th{color:var(--harbor-kicker);letter-spacing:.04em;text-transform:uppercase;font-size:.75rem;font-weight:600}.breakdown-table tbody tr:last-child th,.breakdown-table tbody tr:last-child td{border-bottom:none}.technical-disclosure{margin-top:.625rem}.technical-disclosure summary{cursor:pointer;color:var(--harbor-copy-strong);font-size:.8125rem;font-weight:500}.technical-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:.625rem;display:grid}.technical-grid div{background:var(--harbor-surface-soft);border:1px solid var(--harbor-line);border-radius:6px;padding:.625rem}.technical-grid dt{color:var(--harbor-kicker)}.technical-grid dd{color:var(--harbor-heading);margin:.25rem 0 0;font-size:.8125rem}.breakdown-question{gap:.2rem;min-width:0;display:grid}.breakdown-question strong{color:var(--harbor-heading);font-size:.875rem;font-weight:500}.breakdown-title{color:var(--harbor-copy);font-size:.8125rem;font-weight:400}@media (width<=1100px){.history-intro,.history-context,.empty-state{flex-direction:column;align-items:flex-start}.history-card-header{flex-direction:column}.history-meta{justify-content:flex-start}}@media (width<=720px){.technical-grid{grid-template-columns:1fr}.intro-actions,.intro-actions button{width:100%}}.home-page{gap:1rem;display:grid}.home-hero,.assessment-board{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-xl);background:var(--harbor-surface);box-shadow:var(--harbor-shadow);padding:1rem 1.25rem}.home-hero{gap:1rem;display:grid}.hero-copy{gap:.25rem;display:grid}.home-hero h1{color:var(--harbor-heading);font-weight:600;font-size:var(--harbor-title-xl);max-width:28ch;margin:0;line-height:1.3}.page-lede{max-width:52ch;margin:0}.signed-in-learner{color:var(--harbor-heading);font-size:.875rem;font-weight:600;display:block}.assessment-board{gap:.625rem;padding:1rem 1.25rem;display:grid}.board-header{align-items:center;display:flex}.board-header h2{color:var(--harbor-heading);margin:0;font-size:.9375rem;font-weight:600}.assessment-empty{border:1px dashed var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-soft);padding:.75rem}.assessment-empty--error{background:#fef2f2;border-color:#fecaca}.assessment-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.5rem;display:grid}.assessment-card{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface);transition:box-shadow .18s var(--harbor-ease), transform .18s var(--harbor-ease);gap:.375rem;padding:.75rem;display:grid}.assessment-card:hover{border-color:var(--harbor-input-line);box-shadow:var(--harbor-shadow)}.assessment-topline{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.assessment-card h3{color:var(--harbor-heading);margin:0;font-size:.875rem;font-weight:600;line-height:1.3}.assessment-status{border-radius:var(--harbor-radius-pill);background:var(--harbor-surface-muted);color:var(--harbor-copy-strong);text-transform:capitalize;flex-shrink:0;padding:.125rem .4375rem;font-size:.6875rem;font-weight:500}.meta-line--secure{color:var(--harbor-copy-strong);font-weight:500}.assessment-card[data-status=in-progress]{border-color:#93c5fd}.assessment-card[data-status=submitted]{border-color:#86efac}.assessment-card[data-status=ineligible]{opacity:.6}.assessment-card .primary-action{margin-top:.25rem}.seb-download-link{justify-content:center;text-decoration:none}@media (width<=720px){.home-page{gap:.75rem}.home-hero,.assessment-board{padding:.875rem 1rem}.hero-actions>*{width:100%}.assessment-grid{grid-template-columns:1fr}}.analytics-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.analytics-chart{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-soft);min-width:0;padding:.75rem}.analytics-chart--wide{grid-column:1/-1}.chart-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.chart-header h3{color:var(--harbor-heading);margin:0;font-size:.875rem;font-weight:600}.chart-header p{color:var(--harbor-copy);margin:.125rem 0 0;font-size:.75rem}.chart-header strong{color:var(--harbor-heading);font-size:1.125rem;font-weight:650}.chart-host{width:100%;height:210px;min-height:210px;overflow:visible}@media (width<=840px){.analytics-panel{grid-template-columns:1fr}.analytics-chart{padding:.625rem}}.analytics-page{gap:var(--harbor-space-md);display:grid}.analytics-hero,.analytics-empty,.analytics-panel,.export-center,.learner-panel,.metric-card{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface);box-shadow:var(--harbor-shadow)}.analytics-hero{gap:var(--harbor-space-lg);padding:var(--harbor-space-lg);grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.analytics-hero__copy h1{color:var(--harbor-heading);font-size:var(--harbor-title-xl);margin:.25rem 0 0;line-height:1.2}.analytics-hero__copy p:last-child,.panel-heading p,.empty-copy,.analytics-empty p{color:var(--harbor-copy);font-size:.9375rem;line-height:var(--harbor-body-line);margin:.375rem 0 0}.analytics-actions,.learner-tools{gap:var(--harbor-space-xs);flex-wrap:wrap;justify-content:flex-end;display:flex}.range-chip{border:1px solid var(--qflow-primary-fixed-dim);border-radius:var(--harbor-radius-sm);background:var(--qflow-primary-fixed);min-height:2.75rem;color:var(--qflow-on-primary-fixed-variant);font-family:var(--harbor-label-font);align-items:center;padding:.625rem .875rem;font-size:.875rem;font-weight:600;display:inline-flex}.analytics-empty{gap:var(--harbor-space-xs);padding:var(--harbor-space-lg);justify-items:start;display:grid}.analytics-empty strong{color:var(--harbor-heading);font-size:1rem}.analytics-empty--error{border-color:var(--harbor-danger-line);background:var(--harbor-danger-bg)}.metric-grid{gap:var(--harbor-space-md);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.metric-card{min-height:12rem;padding:var(--harbor-space-lg);gap:.625rem;display:grid}.metric-card__top{justify-content:space-between;align-items:center;gap:var(--harbor-space-sm);display:flex}.metric-mark{border-radius:var(--harbor-radius-md);background:var(--qflow-primary-fixed);width:2.875rem;height:2.875rem;color:var(--qflow-on-primary-fixed-variant);font-family:var(--harbor-label-font);text-transform:uppercase;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.metric-card[data-tone=secondary] .metric-mark,.metric-card[data-tone=primary] .metric-mark{background:var(--qflow-secondary-fixed);color:var(--qflow-on-secondary-fixed-variant)}.metric-card[data-tone=warning] .metric-mark{background:var(--harbor-warning-bg);color:var(--harbor-warning-ink)}.metric-card[data-tone=success] .metric-mark{background:var(--harbor-success-bg);color:var(--harbor-success-ink)}.metric-signal{color:var(--harbor-copy);font-family:var(--harbor-label-font);font-size:.75rem;font-weight:600}.metric-card strong{color:var(--harbor-heading);font-size:2rem;line-height:1.1}.metric-card>span:last-child{color:var(--harbor-copy);font-size:.875rem}.analytics-layout{gap:var(--harbor-space-md);grid-template-columns:minmax(0,2fr) minmax(20rem,1fr);display:grid}.analytics-panel,.export-center,.learner-panel{min-width:0;padding:var(--harbor-space-lg)}.analytics-panel--wide{min-height:22rem}.panel-heading{gap:var(--harbor-space-md);margin-bottom:var(--harbor-space-md);justify-content:space-between;align-items:flex-start;display:flex}.panel-heading h2{color:var(--harbor-heading);margin:0;font-size:1.25rem;line-height:1.3}.panel-heading>span{color:var(--qflow-on-secondary-fixed-variant);font-family:var(--harbor-label-font);font-size:.875rem;font-weight:600}.score-chart{gap:var(--harbor-space-md);min-height:15rem;padding-top:var(--harbor-space-lg);grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;display:grid}.score-bin{text-align:center;gap:.375rem;min-width:0;display:grid}.score-bin__track{border-radius:var(--harbor-radius-sm);background:var(--qflow-surface-container-low);align-items:end;height:11rem;display:flex;overflow:hidden}.score-bin__track span{border-radius:var(--harbor-radius-sm) var(--harbor-radius-sm) 0 0;background:var(--qflow-secondary);width:100%;display:block}.score-bin:first-child .score-bin__track span,.score-bin:nth-child(2) .score-bin__track span{background:var(--qflow-secondary-fixed-dim)}.score-bin strong{color:var(--harbor-heading);font-size:.875rem}.score-bin small{color:var(--harbor-kicker);font-family:var(--harbor-label-font);font-size:.75rem;font-weight:600}.engagement-list,.risk-list{gap:var(--harbor-space-md);display:grid}.engagement-row,.risk-row,.health-card{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-md);background:var(--harbor-surface-soft)}.engagement-row,.risk-row{padding:var(--harbor-space-md);gap:.375rem;display:grid}.engagement-row>div:first-child{justify-content:space-between;gap:var(--harbor-space-sm);display:flex}.engagement-row strong,.risk-row strong{color:var(--harbor-heading);font-size:.9375rem}.engagement-row span,.risk-row span{color:var(--qflow-on-secondary-fixed-variant);font-family:var(--harbor-label-font);font-size:.8125rem;font-weight:600}.engagement-row p,.risk-row p{color:var(--harbor-copy);margin:0;font-size:.8125rem}.engagement-track{border-radius:var(--harbor-radius-pill);background:var(--qflow-surface-container-high);height:.5rem;overflow:hidden}.engagement-track span{border-radius:inherit;background:var(--qflow-secondary);height:100%;display:block}.engagement-row[data-tone=warning] .engagement-track span{background:var(--qflow-tertiary)}.health-grid{gap:var(--harbor-space-md);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.health-card{padding:var(--harbor-space-md);gap:.375rem;display:grid}.health-card>span{color:var(--harbor-copy);font-family:var(--harbor-label-font);font-size:.75rem;font-weight:600}.health-card strong{color:var(--harbor-heading);font-size:1.5rem}.health-card p,.health-card small{color:var(--harbor-copy);margin:0}.health-card[data-tone=warning],.risk-row[data-tone=warning]{border-color:var(--harbor-warning-line);background:var(--harbor-warning-bg)}.health-card[data-tone=danger],.risk-row[data-tone=danger]{border-color:var(--harbor-danger-line);background:var(--harbor-danger-bg)}.health-card[data-tone=success]{border-color:var(--harbor-success-line);background:var(--harbor-success-bg)}.export-center{gap:var(--harbor-space-md);display:grid}.export-center__actions{gap:var(--harbor-space-xs);flex-wrap:wrap;justify-content:flex-end;display:flex}.export-summary{gap:var(--harbor-space-md);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.export-summary article,.export-artifact{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-md);background:var(--harbor-surface-soft)}.export-summary article{padding:var(--harbor-space-md);gap:.25rem;display:grid}.export-summary span,.export-artifact span,.export-artifact__status{color:var(--harbor-kicker);font-family:var(--harbor-label-font);text-transform:uppercase;font-size:.75rem;font-weight:600}.export-summary strong{color:var(--harbor-heading);font-size:1.375rem;line-height:1.2}.export-summary p,.export-artifact p{color:var(--harbor-copy);font-size:.875rem;line-height:var(--harbor-body-line);margin:0}.export-grid{gap:var(--harbor-space-md);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.export-artifact{min-height:11rem;padding:var(--harbor-space-md);align-content:start;gap:.625rem;display:grid}.export-artifact>div{gap:.125rem;display:grid}.export-artifact strong{color:var(--harbor-heading);font-size:.9375rem}.text-action{color:var(--qflow-on-secondary-fixed-variant);cursor:pointer;font-family:var(--harbor-label-font);background:0 0;border:none;justify-self:start;padding:0;font-size:.875rem;font-weight:700}.text-action:disabled{color:var(--harbor-copy-muted);cursor:not-allowed}.learner-tools input{border:1px solid var(--harbor-input-line);border-radius:var(--harbor-radius-sm);background:var(--harbor-surface-soft);min-width:min(18rem,100%);min-height:2.75rem;color:var(--harbor-heading);padding:.625rem .875rem}.learner-table-wrap{overflow-x:auto}.learner-table{border-collapse:collapse;width:100%;min-width:760px}.learner-table th,.learner-table td{border-bottom:1px solid var(--harbor-line);text-align:left;vertical-align:top;padding:.75rem .5rem}.learner-table th{color:var(--harbor-kicker);font-family:var(--harbor-label-font);text-transform:uppercase;font-size:.75rem;font-weight:600}.learner-table td{color:var(--harbor-copy-strong);font-size:.875rem}.learner-table td:first-child strong,.learner-table td:first-child span{display:block}.learner-table td:first-child span{color:var(--harbor-copy);margin-top:.125rem;font-size:.8125rem}.signal-pill{border-radius:var(--harbor-radius-pill);background:var(--qflow-surface-container);color:var(--harbor-copy-strong);font-family:var(--harbor-label-font);align-items:center;padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.signal-pill[data-tone=success]{background:var(--harbor-success-bg);color:var(--harbor-success-ink)}.signal-pill[data-tone=warning]{background:var(--harbor-warning-bg);color:var(--harbor-warning-ink)}.signal-pill[data-tone=danger]{background:var(--harbor-danger-bg);color:var(--harbor-danger-ink)}@media (width<=1120px){.metric-grid,.health-grid,.export-grid,.export-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-layout{grid-template-columns:1fr}}@media (width<=760px){.analytics-hero{grid-template-columns:1fr}.analytics-actions,.export-center__actions,.learner-tools{grid-template-columns:1fr;justify-content:stretch;width:100%;display:grid}.analytics-actions>*,.export-center__actions>*,.learner-tools>*{width:100%}.panel-heading{grid-template-columns:1fr;display:grid}.metric-grid,.health-grid,.export-grid,.export-summary{grid-template-columns:1fr}.metric-card{min-height:0}.learner-table-wrap{overflow-x:visible}.learner-table{min-width:0}.learner-table thead{display:none}.learner-table,.learner-table tbody,.learner-table tr,.learner-table td{width:100%;display:block}.learner-table tr{border-bottom:1px solid var(--harbor-line);padding:var(--harbor-space-sm) 0}.learner-table td{gap:var(--harbor-space-sm);border-bottom:none;grid-template-columns:6.5rem minmax(0,1fr);padding:.375rem 0;display:grid}.learner-table td:before{content:attr(data-label);color:var(--harbor-kicker);font-family:var(--harbor-label-font);text-transform:uppercase;font-size:.75rem;font-weight:600}.learner-table td:first-child{grid-template-columns:1fr}.learner-table td:first-child:before{display:none}}.assessments-page{gap:1rem;display:grid}.assessments-intro,.context-panel,.assessments-list-card,.editor-card{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-xl);background:var(--harbor-surface);box-shadow:var(--harbor-shadow)}.assessments-intro,.editor-card,.assessments-list-card,.context-panel{padding:1rem 1.125rem}.assessments-intro{justify-content:space-between;align-items:center;gap:1rem;display:flex}.assessments-intro h1,.card-header h2{color:var(--harbor-heading);margin:0;font-weight:600}.assessments-intro h1{font-size:var(--harbor-title-xl);line-height:1.2}.card-actions,.intro-actions{flex-wrap:wrap;gap:.5rem;display:flex}.context-panel{gap:.625rem;display:grid}.workspace-grid{align-items:start;gap:.75rem;display:grid}.advanced-summary::-webkit-details-marker{display:none}.summary-pill{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-pill);background:var(--harbor-surface);min-height:2rem;color:var(--harbor-copy);align-items:center;padding:.25rem .625rem;font-size:.8125rem;display:inline-flex}.workspace-grid{grid-template-columns:minmax(0,1fr)}.editor-card>.card-header{margin-bottom:.875rem}.editor-title{flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0;display:flex}.editor-form{gap:.75rem;display:grid}.editor-section{border-radius:var(--harbor-radius-lg);background:var(--harbor-surface);border:1px solid var(--harbor-line);padding:.875rem}.editor-section--collapsed{gap:0;display:grid}.editor-section--collapsed[open]{gap:.75rem}.section-heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.section-heading h3{color:var(--harbor-heading);margin:0;font-size:.9375rem;font-weight:600}.section-note{color:var(--harbor-copy);font-size:.8125rem;line-height:1.4}.assessment-list{grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:.5rem;margin-top:.75rem;display:grid}.assessment-list-item{border-radius:var(--harbor-radius-lg);border:1px solid var(--harbor-line);background:var(--harbor-surface);width:100%;color:inherit;text-align:left;cursor:pointer;gap:.375rem;padding:.625rem .75rem;transition:border-color 80ms,box-shadow 80ms;display:grid}.assessment-list-item:hover{border-color:var(--harbor-input-line)}.assessment-list-item[data-active=true]{box-shadow:var(--harbor-shadow);border-color:#93c5fd}.list-disclosure-button{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-muted);width:100%;min-height:2.25rem;color:var(--harbor-copy-strong);cursor:pointer;font:inherit;margin-top:.75rem;font-size:.8125rem;font-weight:600}.list-disclosure-button:hover{border-color:var(--harbor-input-line)}.assessment-list-item strong{color:var(--harbor-heading);font-size:.875rem;font-weight:600}.assessment-list-item p{color:var(--harbor-copy);margin:0;font-size:.75rem}.item-topline,.item-meta{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.item-meta{color:var(--harbor-copy);font-size:.75rem}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-top:.625rem;display:grid}.target-grid{grid-template-columns:minmax(12rem,.8fr) minmax(16rem,1.2fr);gap:.75rem;margin-top:.625rem;display:grid}.learner-target-picker,.section-target-picker{gap:.625rem;min-width:0;display:grid}.target-picker-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.target-picker-header strong{color:var(--harbor-copy-strong);font-size:.75rem;font-weight:600}.target-picker-header p,.target-picker-error,.section-option-list--empty p{color:var(--harbor-copy);margin:0;font-size:.8125rem}.target-picker-error{color:#991b1b}.section-refresh-button{min-height:1.875rem;padding-block:.25rem;font-size:.75rem}.selected-section-list{flex-wrap:wrap;gap:.375rem;display:flex}.selected-section-chip{border-radius:var(--harbor-radius-pill);color:#1e3a8a;cursor:pointer;min-height:1.875rem;font:inherit;background:#eff6ff;border:1px solid #bfdbfe;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.75rem;font-weight:600;display:inline-flex}.selected-section-chip--manual{border-color:var(--harbor-line);background:var(--harbor-surface-muted);color:var(--harbor-copy-strong)}.selected-section-chip small{color:inherit;opacity:.78;font-size:.6875rem;font-weight:500}.section-search-field{margin-top:0}.section-option-list{gap:.375rem;max-height:16rem;display:grid;overflow:auto}.section-option-list--empty{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-muted);padding:.625rem .75rem}.section-option-button{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface);width:100%;color:var(--harbor-copy);cursor:pointer;font:inherit;text-align:left;justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .625rem;display:flex}.section-option-button:hover{border-color:var(--harbor-input-line)}.section-option-button[data-selected=true]{background:#eff6ff;border-color:#93c5fd}.hierarchy-target-grid{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-muted);grid-template-columns:repeat(4,minmax(0,1fr));gap:.625rem;padding:.75rem;display:grid}.hierarchy-target-actions{flex-wrap:wrap;grid-column:1/-1;align-items:end;gap:.5rem;display:flex}.section-option-button strong{color:var(--harbor-heading);font-size:.8125rem;font-weight:600;display:block}.section-option-button small,.section-option-button>span:last-child{color:var(--harbor-copy);font-size:.75rem}.manual-section-targets{border-top:1px solid var(--harbor-line);padding-top:.5rem}.manual-section-targets summary{color:var(--harbor-copy-strong);cursor:pointer;font-size:.8125rem;font-weight:600}.field-row--triple{grid-template-columns:repeat(3,minmax(0,1fr))}.field-row--quad{grid-template-columns:repeat(4,minmax(0,1fr))}.toggles{flex-wrap:wrap;gap:.5rem;margin-top:.625rem;display:flex}.toggle{background:var(--harbor-surface-muted);color:var(--harbor-copy-strong);border-radius:6px;align-items:center;gap:.375rem;padding:.375rem .625rem;font-size:.8125rem;font-weight:500;display:flex}.managed-seb-keys{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-muted);align-content:center;gap:.125rem;min-height:2.75rem;padding:.5rem .625rem;display:grid}.managed-seb-keys span{color:var(--harbor-copy);font-size:.75rem}.managed-seb-keys strong{color:var(--harbor-copy-strong);font-size:.8125rem;font-weight:600}.list-feedback{color:var(--harbor-copy-strong);margin-top:.625rem;padding:.625rem .75rem;font-size:.8125rem}.list-feedback p,.meta-line{margin:0}@media (width<=1180px){.workspace-grid,.target-grid,.hierarchy-target-grid,.field-row--triple,.field-row--quad{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=840px){.assessments-intro,.card-header,.advanced-summary{flex-direction:column;align-items:flex-start}.advanced-summary:after{align-self:flex-start}.workspace-grid,.target-grid,.hierarchy-target-grid,.field-row,.field-row--triple,.field-row--quad{grid-template-columns:minmax(0,1fr)}.field--span-two{grid-column:span 1}}.lms-page{gap:1rem;display:grid}.lms-hero,.lms-section,.lms-empty{background:#fff;border:1px solid #18274b1f;border-radius:8px;box-shadow:0 18px 45px #0f172a0f}.lms-hero{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.lms-actions,.lms-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.section-kicker{color:#52627a;text-transform:uppercase;margin:0 0 .25rem;font-size:.76rem;font-weight:700}.lms-hero h1,.section-heading h2{color:#111827;letter-spacing:0;margin:0}.lms-hero h1{font-size:1.55rem}.lms-hero p,.lms-empty p,.lms-row p{color:#52627a;margin:.35rem 0 0;line-height:1.5}.lms-summary{flex-wrap:wrap;gap:.65rem;display:flex}.summary-pill{color:#52627a;background:#f8fafc;border:1px solid #18274b1f;border-radius:999px;align-items:baseline;gap:.35rem;padding:.45rem .75rem;font-size:.88rem;display:inline-flex}.summary-pill strong{color:#111827}.lms-section{padding:1rem}.section-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.85rem;display:flex}.lms-list{gap:.75rem;display:grid}.lms-row{background:#fbfdff;border:1px solid #18274b1a;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:.85rem;display:grid}.lms-row--actionable{grid-template-columns:minmax(0,1fr) auto auto}.lms-row-main{min-width:0}.lms-row-main strong{color:#111827}.lms-row-meta{color:#52627a;flex-wrap:wrap;justify-content:flex-end;gap:.4rem;font-size:.82rem;display:flex}.lms-row-meta span{background:#eef4ff;border-radius:999px;padding:.25rem .5rem}.lms-row-meta .lms-error-pill{color:#b91c1c;background:#fff1f1}.lms-empty{padding:1rem}.lms-empty--error{background:#fff7f7;border-color:#b91c1c3d}.lms-error-copy{color:#b91c1c}.lms-table-wrap{overflow-x:auto}.lms-table{border-collapse:collapse;width:100%;font-size:.9rem}.lms-table th,.lms-table td{text-align:left;vertical-align:top;border-bottom:1px solid #18274b1a;padding:.7rem}.lms-table th{color:#52627a;text-transform:uppercase;font-size:.78rem}.secondary-action{color:#1f3a5f;cursor:pointer;background:#fff;border:1px solid #18274b2e;border-radius:8px;justify-content:center;align-items:center;padding:.55rem .8rem;font-weight:700;text-decoration:none;display:inline-flex}.secondary-action:disabled{cursor:not-allowed;opacity:.55}@media (width<=760px){.lms-hero,.lms-row,.lms-row--actionable{grid-template-columns:1fr}.lms-hero{display:grid}.lms-row-meta{justify-content:flex-start}}.roster-page{gap:1rem;display:grid}.roster-intro,.roster-list-card,.detail-card,.results-summary,.reporting-panel,.roster-import-panel,.score-amendments-panel{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-xl);background:var(--harbor-surface);box-shadow:var(--harbor-shadow);padding:1rem 1.125rem}.roster-intro{align-items:center;display:flex}.roster-intro h1,.card-header h2,.section-header h2,.section-header h3{color:var(--harbor-heading);margin:0;font-weight:600}.roster-intro h1{font-size:var(--harbor-title-xl);line-height:1.2}.card-actions,.results-summary{flex-wrap:wrap;gap:.5rem;display:flex}.reporting-panel,.roster-import-panel,.score-amendments-panel{gap:.75rem;display:grid}.advanced-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;list-style:none;display:flex}.advanced-summary::-webkit-details-marker{display:none}.export-menu summary::-webkit-details-marker{display:none}.learner-more-panel summary::-webkit-details-marker{display:none}.advanced-summary:after{content:"Show";border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-pill);background:var(--harbor-surface-muted);min-width:3.25rem;color:var(--harbor-copy-strong);text-align:center;flex:none;padding:.25rem .625rem;font-size:.75rem;font-weight:600}details[open]>.advanced-summary:after{content:"Hide"}.advanced-summary-copy{gap:.125rem;min-width:0;display:grid}.advanced-summary-copy strong{color:var(--harbor-heading);font-size:.9375rem;font-weight:600}.advanced-summary-copy span{color:var(--harbor-copy);font-size:.8125rem;line-height:1.4}.advanced-panel-body{gap:.75rem;padding-top:.75rem;display:grid}.advanced-panel-actions{justify-content:flex-end}.reporting-metrics{flex-wrap:wrap;gap:.5rem;display:flex}.item-analysis-list,.standards-mastery-list{gap:.5rem;display:grid}.item-analysis-row,.standards-mastery-row{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-muted);padding:.625rem .75rem;font-size:.8125rem}.item-analysis-row p,.standards-mastery-row p{color:var(--harbor-copy);margin:.25rem 0 0}.score-amendment-grid{grid-template-columns:minmax(10rem,.8fr) minmax(10rem,.85fr) minmax(10rem,1fr) minmax(14rem,1.3fr);gap:.625rem;display:grid}.score-amendment-reason-field{min-width:0}.score-amendment-list{gap:.5rem;display:grid}.score-amendment-entry{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-muted);padding:.625rem .75rem;font-size:.8125rem}.score-amendment-entry[data-status=superseded],.score-amendment-entry[data-status=inactive]{opacity:.72}.score-amendment-entry p{color:var(--harbor-copy);margin:.25rem 0 0}.score-amendment-entry-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:inline-flex}.amendment-deactivate-button{min-height:1.75rem;padding-block:.25rem;font-size:.75rem}.score-amendment-preview{border-radius:var(--harbor-radius-lg);color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;gap:.5rem;padding:.625rem .75rem;font-size:.8125rem;display:grid}.score-amendment-preview p{margin:0}.score-amendment-preview-list{gap:.5rem;display:grid}.score-amendment-preview-entry{border-radius:var(--harbor-radius-lg);background:var(--harbor-surface);border:1px solid #bfdbfe;padding:.625rem .75rem}.score-amendment-preview-entry p{color:var(--harbor-copy);margin-top:.375rem}.roster-import-grid{grid-template-columns:minmax(12rem,.7fr) minmax(16rem,1fr);gap:.625rem;display:grid}.roster-import-grid--oneroster{border-top:1px solid var(--harbor-line);padding-top:.75rem}.roster-import-file-field input{padding-block:.45rem}.roster-import-summary{flex-wrap:wrap;gap:.5rem;display:flex}.roster-import-list{gap:.5rem;display:grid}.roster-import-entry{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-muted);padding:.625rem .75rem;font-size:.8125rem}.roster-import-entry--error{background:#fef2f2;border-color:#fecaca}.roster-import-entry p{color:var(--harbor-copy);margin:.25rem 0 0}.roster-import-report-link{color:var(--harbor-accent);margin-top:.375rem;font-size:.75rem;font-weight:600;text-decoration:none;display:inline-flex}.roster-import-report-link:hover{text-decoration:underline}.detail-grid{gap:.75rem;display:grid}.workspace-grid{grid-template-columns:minmax(280px,.95fr) minmax(0,1.4fr);align-items:start;gap:.75rem;display:grid}.card-header,.section-header,.row-header,.timeline-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.roster-list{gap:.5rem;margin-top:.75rem;display:grid}.roster-row{border-radius:var(--harbor-radius-lg);border:1px solid var(--harbor-line);background:var(--harbor-surface);width:100%;color:inherit;text-align:left;cursor:pointer;padding:.625rem .75rem;transition:border-color 80ms,box-shadow 80ms}.roster-row:hover{border-color:var(--harbor-input-line)}.roster-row[data-active=true]{box-shadow:var(--harbor-shadow);border-color:#93c5fd}.row-header strong{color:var(--harbor-heading);font-size:.875rem;font-weight:600}.row-subline,.row-meta{color:var(--harbor-copy);margin:0;font-size:.75rem}.row-meta{flex-wrap:wrap;gap:.5rem;display:flex}.detail-card{align-content:start;gap:.75rem;display:grid}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-section{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface);padding:.875rem}.detail-copy{color:var(--harbor-copy);margin:0;font-size:.8125rem;line-height:1.5}.detail-copy--error{color:#991b1b}.detail-copy--info{border-radius:var(--harbor-radius-md);color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;padding:.5rem .625rem}.score-revision-evidence-actions{flex-wrap:wrap;gap:.5rem;margin-top:-.25rem;display:flex}.student-report-panel{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-soft);align-content:start;gap:.75rem;padding:.875rem;display:grid}.export-menu{position:relative}.export-menu summary{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-pill);background:var(--harbor-surface);min-height:2rem;color:var(--harbor-copy-strong);cursor:pointer;align-items:center;padding:.25rem .75rem;font-size:.8125rem;font-weight:600;list-style:none;display:inline-flex}.export-menu-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;padding-top:.5rem;display:flex}.learner-report-list{gap:.5rem;display:grid}.learner-more-panel{border-top:1px solid var(--harbor-line);padding-top:.625rem}.learner-more-panel[open]{gap:.625rem;display:grid}.learner-more-panel summary{color:var(--harbor-copy-strong);cursor:pointer;font-size:.8125rem;font-weight:600;list-style:none}.learner-report-row{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface);padding:.625rem .75rem;font-size:.8125rem}.learner-report-row[data-amended=true]{background:#eff6ff;border-color:#93c5fd}.learner-report-row[data-outcome=duplicate],.learner-report-row[data-outcome=gap],.learner-report-row[data-outcome=stale_sequence],.learner-report-row[data-outcome=stale_session]{border-color:#f59e0b}.learner-report-row p{color:var(--harbor-copy);margin:.25rem 0 0}.evidence-link-button{min-height:1.875rem;padding-block:.25rem;font-size:.75rem}.evidence-link-button[aria-pressed=true]{color:#1e3a8a;background:#dbeafe;border-color:#2563eb}.detail-summary{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.advanced-learner-panel{border-top:1px solid var(--harbor-line);padding-top:.75rem}.advanced-learner-panel .detail-grid{margin-top:.75rem}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-top:.75rem;display:grid}.toggle{border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-muted);color:var(--harbor-copy-strong);align-items:center;gap:.375rem;margin-top:.75rem;padding:.375rem .625rem;font-size:.8125rem;font-weight:500;display:flex}.accommodation-profile-box{border-top:1px solid var(--harbor-line);gap:.625rem;margin-top:.875rem;padding-top:.875rem;display:grid}.profile-select-field{gap:.375rem;display:grid}.profile-select-field span{color:var(--harbor-copy-strong);font-size:.75rem;font-weight:600}.profile-select-field select{border:1px solid var(--harbor-input-line);border-radius:var(--harbor-radius-md);background:var(--harbor-surface);width:100%;min-width:0;color:var(--harbor-copy-strong);font:inherit;padding:.5rem .625rem}.profile-create-panel{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-soft);gap:.625rem;display:grid}.profile-create-panel[open]{padding-bottom:.75rem}.profile-create-panel summary{cursor:pointer;color:var(--harbor-copy-strong);padding:.625rem .75rem;font-size:.875rem;font-weight:600}.profile-create-panel .profile-select-field,.profile-create-panel .primary-action{margin-inline:.75rem}.profile-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.375rem;margin-inline:.75rem;display:grid}.feedback{color:var(--harbor-copy-strong);margin-top:.625rem;padding:.625rem .75rem;font-size:.8125rem}.snapshot-evidence{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-muted);gap:.25rem;margin-top:.75rem;padding:.625rem .75rem;display:grid}.snapshot-evidence strong{color:var(--harbor-heading);font-size:.8125rem}.snapshot-evidence p{color:var(--harbor-copy);margin:0;font-size:.8125rem}.snapshot-evidence .snapshot-meta{color:var(--harbor-copy-muted);font-size:.75rem}.snapshot-grid,.snapshot-source{gap:.5rem;margin:.375rem 0 0;display:grid}.snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.snapshot-source{border-top:1px solid var(--harbor-line);padding-top:.5rem}.snapshot-grid__item,.snapshot-source__item{min-width:0}.snapshot-grid dt,.snapshot-source dt{color:var(--harbor-copy-muted);text-transform:uppercase;font-size:.6875rem;font-weight:700}.snapshot-grid dd,.snapshot-source dd{overflow-wrap:anywhere;color:var(--harbor-copy-strong);margin:.125rem 0 0;font-size:.8125rem}.attempt-evidence-panel{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface);gap:.625rem;margin-top:.75rem;padding:.75rem;display:grid}.evidence-summary{flex-wrap:wrap;gap:.5rem;display:flex}.evidence-list{gap:.5rem;display:grid}.evidence-entry{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--harbor-surface-muted);outline:none;padding:.625rem .75rem;font-size:.8125rem}.evidence-entry[data-linked-score-revision=true]{border-color:#93c5fd}.evidence-entry[data-selected=true]{background:#eff6ff;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb29}.evidence-entry[data-outcome=duplicate],.evidence-entry[data-outcome=gap],.evidence-entry[data-outcome=stale_sequence],.evidence-entry[data-outcome=stale_session]{border-color:#f59e0b}.evidence-entry p{color:var(--harbor-copy);margin:.25rem 0 0}.evidence-entry-badges{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.375rem;display:inline-flex}.score-evidence-pill{border-radius:var(--harbor-radius-pill);color:#1e3a8a;background:#dbeafe;border:1px solid #bfdbfe;padding:.125rem .375rem;font-size:.6875rem;font-weight:600}.timeline-list{gap:.5rem;margin-top:.75rem;display:grid}.timeline-entry{border-radius:var(--harbor-radius-lg);background:var(--harbor-surface);border:1px solid var(--harbor-line);padding:.625rem .75rem;font-size:.8125rem}.timeline-entry--accommodation{background:#ecfdf5;border-color:#a7f3d0}.timeline-header strong{text-transform:capitalize;color:var(--harbor-heading);font-size:.8125rem}@media (width<=1180px){.workspace-grid,.detail-grid,.roster-import-grid,.score-amendment-grid,.snapshot-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=840px){.roster-intro,.card-header,.section-header,.advanced-summary{flex-direction:column;align-items:flex-start}.advanced-summary:after{align-self:flex-start}.export-menu-actions{justify-content:flex-start}.field-grid{grid-template-columns:minmax(0,1fr)}}.launch-page{gap:1rem;display:grid}.launch-intro,.launch-card{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-xl);background:var(--harbor-surface);box-shadow:var(--harbor-shadow)}.launch-intro{align-items:center;padding:.875rem 1rem;display:flex}.launch-intro h1,.launch-card h2{color:var(--harbor-heading);margin:0;font-weight:600}.launch-intro h1{font-size:var(--harbor-title-xl);line-height:1.2}.launch-card h2{font-size:1rem;line-height:1.3}.launch-stack{gap:.75rem;display:grid}.launch-card{padding:1rem 1.125rem}.card-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.field--span-two{grid-column:1/-1}.field{margin-top:.625rem}.import-summary{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.import-pill{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-pill);background:var(--harbor-surface-soft);min-height:2rem;color:var(--harbor-copy);align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.8125rem;display:inline-flex}.import-pill strong{color:var(--harbor-heading);font-size:.8125rem;font-weight:600}.import-pill--ready{border-color:var(--harbor-success-line);background:var(--harbor-success-bg);color:var(--harbor-success-ink);font-weight:600}.import-feedback{font-size:var(--harbor-body-size);color:var(--harbor-copy);line-height:var(--harbor-body-line);margin:.5rem 0 0}.import-feedback--error{color:#991b1b}.import-actions{flex-wrap:wrap;gap:.5rem;margin-top:.625rem;display:flex}@media (width<=1100px){.field-row{grid-template-columns:1fr}.field--span-two{grid-column:auto}.launch-intro,.card-header{flex-direction:column;align-items:flex-start}.primary-action,.secondary-action{width:100%}}.results-ops-page{gap:.75rem;display:grid}.results-ops-hero,.results-ops-empty,.results-ops-row,.side-card{border:1px solid var(--harbor-line);background:var(--harbor-surface);box-shadow:var(--harbor-shadow)}.results-ops-hero,.results-ops-empty,.results-ops-row{border-radius:var(--harbor-radius-xl)}.results-ops-hero{gap:.625rem;padding:.875rem 1rem;display:grid}.results-ops-hero h1,.row-heading h2{color:var(--harbor-heading);margin:.25rem 0 0;font-weight:600}.results-ops-hero h1{font-size:var(--harbor-title-xl);line-height:1.2}.row-heading h2{font-size:var(--harbor-title-lg);line-height:1.3}.hero-actions{flex-wrap:wrap;gap:.5rem;display:flex}.results-ops-filters{grid-template-columns:repeat(3,minmax(160px,1fr)) auto;align-items:end;gap:.5rem;display:grid}.filter-control{color:var(--harbor-muted);gap:.25rem;font-size:.75rem;display:grid}.filter-control select{border:1px solid var(--harbor-line);background:var(--harbor-surface);min-height:2.25rem;color:var(--harbor-heading);font:inherit;border-radius:6px;padding:.375rem .5rem}.detail-summary{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.summary-pill{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-pill);background:var(--harbor-surface-soft);min-height:2rem;color:var(--harbor-copy);align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.8125rem;display:inline-flex}.summary-pill strong{color:var(--harbor-heading);font-size:.8125rem;font-weight:600}.primary-action:disabled{cursor:progress;opacity:.5}.results-ops-empty{padding:.875rem 1rem}.results-ops-empty strong{color:var(--harbor-heading);font-size:.8125rem}.results-ops-empty--error{background:#fef2f2;border-color:#fecaca}.results-ops-list{gap:.625rem;display:grid}.results-ops-row{grid-template-columns:minmax(0,1.5fr) minmax(240px,.8fr);gap:.625rem;padding:.875rem 1rem;display:grid}.row-heading{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.context-line{color:var(--harbor-muted);margin:.25rem 0 0;font-size:.75rem}.row-badges{flex-wrap:wrap;justify-content:flex-end;gap:.375rem;display:flex}.status-pill[data-tone=failed]{color:#991b1b;background:#fef2f2}.status-pill[data-tone=pending]{color:#92400e;background:#fffbeb}.status-pill[data-tone=complete]{color:#166534;background:#f0fdf4}.side-card{background:var(--harbor-surface-soft);border:1px solid var(--harbor-line);border-radius:6px;padding:.625rem .75rem}.row-side{align-content:start;gap:.5rem;display:grid}.row-action{justify-content:center;width:100%}@media (width<=1080px){.results-ops-row{grid-template-columns:1fr}.results-ops-filters{grid-template-columns:repeat(2,minmax(160px,1fr))}}@media (width<=720px){.row-heading{flex-direction:column}.row-badges,.hero-actions{justify-content:flex-start}.results-ops-filters{grid-template-columns:1fr}}.session-page{grid-template-rows:auto minmax(0,1fr);gap:1.25rem;min-height:calc(100dvh - 2rem);display:grid}.assessment-topbar{z-index:20;border:1px solid var(--qflow-surface-container-highest);border-radius:var(--harbor-radius-lg);background:linear-gradient(180deg, var(--qflow-surface-container-lowest) 0%, var(--qflow-surface-container-low) 100%);box-shadow:0 2px 8px rgb(var(--qflow-secondary-rgb) / .06);position:sticky;top:1rem;overflow:hidden}.assessment-topbar__main{grid-template-columns:minmax(16rem,1fr) auto auto;align-items:center;gap:1rem;min-height:4.25rem;padding:.75rem 1rem;display:grid}.assessment-brand{align-items:center;gap:1rem;min-width:0;display:flex}.assessment-brand strong{letter-spacing:0;font-size:1.25rem;font-weight:800}.qflow-wordmark{white-space:nowrap;align-items:baseline;gap:0;display:inline-flex}.qflow-wordmark span:first-child{color:var(--qflow-wordmark)}.qflow-wordmark span:last-child{color:var(--qflow-wordmark-dark)}.assessment-brand>span{border-left:1px solid var(--qflow-surface-container-highest);min-width:0;color:var(--harbor-heading);text-overflow:ellipsis;white-space:nowrap;padding-left:1rem;font-size:.9375rem;font-weight:600;overflow:hidden}.assessment-status-cluster,.assessment-topbar__actions,.notice-actions,.tool-row,.choice-mask-controls{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.assessment-status-cluster,.assessment-topbar__actions{justify-content:flex-end}.assessment-topbar__actions .text-action{min-height:2.75rem;color:var(--qflow-primary);font-family:var(--harbor-label-font);padding-inline:.25rem;font-weight:600}.finish-action{min-width:10rem;box-shadow:0 2px 4px rgb(var(--qflow-secondary-rgb) / .16)}.assessment-progress-bar{background:var(--qflow-surface-container-high);height:.3125rem}.assessment-progress-bar span{background:var(--harbor-primary);border-radius:0 var(--harbor-radius-pill) var(--harbor-radius-pill) 0;height:100%;transition:width .24s var(--harbor-ease);display:block}.assessment-workspace{width:min(100%,1280px);margin:0 auto}.assessment-item-panel{border:1px solid var(--qflow-surface-container-highest);border-radius:var(--harbor-radius-lg);background:var(--qflow-surface-container-lowest);box-shadow:0 2px 8px rgb(var(--qflow-secondary-rgb) / .045);display:grid;overflow:hidden}.renderer-shell{gap:var(--harbor-space-md);padding:var(--harbor-space-md);display:grid}.item-context,.item-progress-strip,.assessment-nav-footer,.session-notice,.empty-state,.accommodation-tools{background:var(--harbor-surface)}.item-context{gap:var(--harbor-space-md);border-bottom:1px solid var(--qflow-surface-container-high);background:linear-gradient(180deg, var(--qflow-surface-container-lowest) 0%, var(--qflow-surface-container-low) 100%);padding:1.375rem var(--harbor-space-lg) 1.25rem;grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.item-context__copy{min-width:0}.item-position{color:var(--harbor-kicker);font-family:var(--harbor-label-font);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:600}.item-context h1,.session-notice h2,.empty-state h1{color:var(--harbor-heading);margin:0;font-weight:700}.item-context h1{max-width:72ch;font-size:var(--harbor-title-xl);letter-spacing:0;margin-top:.5rem;line-height:1.2}.item-meta-row{gap:var(--harbor-space-xs);flex-wrap:wrap;margin-top:.75rem;display:flex}.item-meta-row span{border-radius:var(--harbor-radius-pill);background:var(--qflow-surface-container);min-height:1.5rem;color:var(--harbor-copy-strong);font-family:var(--harbor-label-font);align-items:center;padding:.1875rem .5625rem;font-size:.75rem;font-weight:600;display:inline-flex}.item-meta-row span:first-child{background:var(--qflow-secondary-fixed);color:var(--qflow-on-secondary-fixed-variant)}.item-meta-row span:last-child{background:var(--qflow-surface-container-high);color:var(--qflow-primary)}.save-action{border:1px solid var(--qflow-surface-container-highest);border-radius:var(--harbor-radius-sm);min-height:2.75rem;color:var(--harbor-copy-strong);align-self:start;padding-inline:.875rem}.save-action:hover{border-color:var(--harbor-input-line);color:var(--harbor-primary)}.item-progress-strip{gap:var(--harbor-space-xs);border-bottom:1px solid var(--qflow-surface-container-high);background:var(--qflow-surface-container-low);padding:var(--harbor-space-sm) var(--harbor-space-md);display:grid}.item-step-row{gap:var(--harbor-space-xs);scrollbar-width:thin;scrollbar-color:var(--qflow-secondary-fixed-dim) transparent;display:flex;overflow-x:auto}.item-step{border:1px solid var(--qflow-surface-container-highest);border-radius:var(--harbor-radius-sm);background:var(--harbor-surface);width:2.75rem;height:2.75rem;color:var(--harbor-copy-strong);font-family:var(--harbor-label-font);cursor:pointer;transition:background .12s var(--harbor-ease), border-color .12s var(--harbor-ease), color .12s var(--harbor-ease), transform .12s var(--harbor-ease);flex:none;font-size:.875rem;font-weight:600}.item-step[aria-disabled=true]{cursor:not-allowed}.item-step:not([aria-disabled=true]):hover{border-color:var(--qflow-secondary);background:var(--qflow-secondary-fixed);color:var(--qflow-on-secondary-fixed-variant)}.item-step:not([aria-disabled=true]):active{transform:translateY(1px)}.item-step[data-state=earlier]{background:var(--qflow-primary-fixed);color:var(--qflow-on-primary-fixed-variant)}.item-step[data-state=current]{border-color:var(--harbor-primary);background:var(--harbor-primary);color:var(--harbor-primary-foreground)}.item-step[data-locked=true]{border-style:dashed}.item-step[data-state=upcoming][data-locked=true]{background:var(--qflow-surface-container-lowest);color:var(--harbor-kicker)}.item-step[data-feedback=true]{border-color:var(--harbor-warning-line);box-shadow:0 0 0 3px rgb(var(--qflow-tertiary-rgb) / .18)}.item-navigation-feedback{border:1px solid var(--harbor-warning-line);border-radius:var(--harbor-radius-md);background:var(--harbor-warning-bg);color:var(--harbor-warning-ink);flex-wrap:wrap;align-items:baseline;gap:.375rem .625rem;padding:.625rem .75rem;font-size:.875rem;display:flex}.item-navigation-feedback[data-tone=locked]{border-color:var(--harbor-warning-line);background:var(--harbor-warning-bg);color:var(--harbor-warning-ink)}.item-navigation-feedback strong{font-weight:700}.item-navigation-feedback span{min-width:min(100%,18rem)}.status-pill{border-radius:var(--harbor-radius-pill);background:var(--harbor-surface-muted);min-height:1.875rem;color:var(--harbor-copy-strong);font-family:var(--harbor-label-font);white-space:nowrap;justify-content:center;align-items:center;gap:.25rem;padding:.25rem .625rem;font-size:.75rem;font-weight:600;display:inline-flex}.status-pill--state{border:1px solid var(--qflow-primary-fixed-dim);background:var(--qflow-primary-fixed);color:var(--qflow-on-primary-fixed-variant)}.status-pill--timer{border:1px solid color-mix(in srgb, var(--qflow-tertiary) 70%, var(--qflow-tertiary-container));background:var(--qflow-tertiary-container);color:var(--qflow-on-tertiary-fixed-variant);font-variant-numeric:tabular-nums}.status-pill--timer[data-bounded=true]{border:1px solid var(--harbor-warning-line);background:var(--harbor-warning-bg);color:var(--harbor-warning-ink)}.status-pill--sync[data-tone=neutral]{border:1px solid var(--qflow-secondary-fixed-dim);background:var(--qflow-secondary-fixed);color:var(--qflow-on-secondary-fixed-variant)}.status-pill[data-tone=warning]{border:1px solid var(--harbor-warning-line);background:var(--harbor-warning-bg);color:var(--harbor-warning-ink)}.status-pill[data-tone=success]{border:1px solid var(--harbor-success-line);background:var(--harbor-success-bg);color:var(--harbor-success-ink)}.status-pill[data-tone=locked]{border:1px solid var(--harbor-danger-line);background:var(--harbor-danger-bg);color:var(--harbor-danger-ink)}.session-notice{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;display:flex}.session-notice h2{font-size:.9375rem;line-height:1.3}.session-notice p{color:var(--harbor-copy);margin:.25rem 0 0;font-size:.875rem}.session-notice[data-tone=warning]{border-color:var(--harbor-warning-line);background:var(--harbor-warning-bg)}.session-notice[data-tone=success]{border-color:var(--harbor-success-line);background:var(--harbor-success-bg)}.session-notice[data-tone=locked]{border-color:var(--harbor-danger-line);background:var(--harbor-danger-bg)}.accommodation-tools{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-lg);background:var(--qflow-surface-container-lowest);gap:.625rem;padding:.75rem;display:grid}.tool-row .secondary-action[aria-pressed=true],.choice-mask-controls .secondary-action[aria-pressed=true]{border-color:var(--harbor-primary);background:var(--qflow-secondary-fixed);color:var(--qflow-on-secondary-fixed-variant)}.tool-panel,.tool-adjustments,.media-support-panel{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-md);background:var(--harbor-surface-soft)}.tool-panel summary{cursor:pointer;color:var(--harbor-copy-strong);padding:.625rem .75rem;font-size:.875rem;font-weight:600}.tool-adjustments{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;padding:.625rem .75rem;display:grid}.tool-adjustments label{color:var(--harbor-copy-strong);gap:.25rem;font-size:.75rem;font-weight:600;display:grid}.tool-adjustments input{width:100%}.choice-mask-controls{grid-column:1/-1}.calculator-grid{grid-template-columns:minmax(5rem,1fr) 4rem minmax(5rem,1fr) minmax(5rem,auto);align-items:center;gap:.5rem;padding:0 .75rem .75rem;display:grid}.calculator-grid input,.calculator-grid select,.tool-panel textarea{border:1px solid var(--harbor-input-line);border-radius:var(--harbor-radius-md);background:var(--harbor-surface);width:100%;min-width:0;color:var(--harbor-copy-strong);font:inherit}.calculator-grid input,.calculator-grid select{padding:.5rem .625rem}.calculator-grid output{border:1px solid var(--harbor-line);border-radius:var(--harbor-radius-md);background:var(--harbor-surface);min-height:2.25rem;color:var(--harbor-copy-strong);padding:.5rem .625rem;font-weight:600}.tool-panel textarea{resize:vertical;width:calc(100% - 1.5rem);margin:0 .75rem .75rem;padding:.625rem;display:block}.media-support-panel{gap:.25rem;padding:.625rem .75rem;display:grid}.media-support-panel p{color:var(--harbor-copy);margin:0;font-size:.8125rem}.media-support-panel a{color:var(--harbor-primary);overflow-wrap:anywhere;font-size:.8125rem}.renderer-tool-frame{position:relative}.renderer-tool-frame .renderer-canvas{min-height:clamp(18rem,38vh,27rem);box-shadow:none;background:0 0;border:none;border-radius:0}.renderer-tool-frame.masked .renderer-canvas{filter:none}.line-reader{border-block:2px solid var(--qflow-secondary);pointer-events:none;z-index:2;background:#ffffff2e;position:absolute;left:0;right:0}.mask-reveal-window{border:2px solid var(--qflow-secondary);border-radius:var(--harbor-radius-lg);pointer-events:none;z-index:3;position:absolute;left:.75rem;right:.75rem}.mask-overlay{border-radius:var(--harbor-radius-lg);background:linear-gradient(to bottom, rgb(var(--qflow-primary-rgb) / .54) 0, rgb(var(--qflow-primary-rgb) / .54) var(--mask-top), transparent var(--mask-top), transparent var(--mask-bottom), rgb(var(--qflow-primary-rgb) / .54) var(--mask-bottom), rgb(var(--qflow-primary-rgb) / .54) 100%);pointer-events:none;z-index:2;position:absolute;inset:0}.mask-overlay .primary-action{pointer-events:auto;z-index:4;position:absolute;top:1rem;right:1rem}.assessment-nav-footer{gap:var(--harbor-space-md);border-top:1px solid var(--harbor-line);padding:var(--harbor-space-sm) var(--harbor-space-md);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.nav-footer__receipt{text-align:center;min-width:0}.nav-footer__receipt strong,.nav-footer__receipt span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.nav-footer__receipt strong{color:var(--harbor-heading);font-size:.875rem;font-weight:600}.nav-footer__receipt span{color:var(--harbor-copy);margin-top:.125rem;font-size:.75rem}.empty-state{gap:.875rem;padding:1rem;display:grid}@media (width<=960px){.assessment-topbar__main{grid-template-columns:1fr;align-items:stretch}.assessment-status-cluster,.assessment-topbar__actions{justify-content:flex-start}.assessment-brand{flex-direction:column;align-items:flex-start;gap:.375rem}.assessment-brand span{white-space:normal;border-left:none;padding-left:0}}@media (width<=780px){.session-page{min-height:calc(100dvh - 1.5rem)}.item-context,.session-notice,.assessment-nav-footer{grid-template-columns:1fr}.item-context,.session-notice{padding:1rem}.save-action,.assessment-nav-footer .primary-action,.assessment-nav-footer .secondary-action,.finish-action{width:100%}.nav-footer__receipt{text-align:left}.nav-footer__receipt strong,.nav-footer__receipt span{white-space:normal}.item-context h1{font-size:var(--harbor-title-md)}.tool-adjustments,.calculator-grid{grid-template-columns:1fr}}.chart-grid text,.axis-label{fill:var(--harbor-copy);font-size:.6875rem}.axis-label--row{fill:var(--harbor-heading);font-size:.75rem;font-weight:600}.bar-track{fill:var(--harbor-surface)}.bar-fill{vector-effect:non-scaling-stroke}.bar-value{fill:var(--harbor-heading);font-size:.6875rem;font-weight:650}.svg-chart{width:100%;min-height:190px;color:var(--harbor-copy);font-family:inherit;display:block}.chart-grid line{stroke:var(--harbor-line);stroke-width:1px}.chart-grid text,.x-labels text{fill:var(--harbor-copy);font-size:.6875rem}.chart-marker line{stroke:var(--harbor-kicker);stroke-dasharray:5 5;stroke-width:1.5px}.chart-marker text{fill:var(--harbor-kicker);font-size:.6875rem;font-weight:650}.trend-line{stroke-width:3px;vector-effect:non-scaling-stroke}.trend-points circle{stroke:var(--harbor-surface-soft);stroke-width:2px}.renderer-canvas[data-single-column=true] .qti3-player{max-width:44rem;margin-inline:auto}.renderer-canvas.qti3-player-color-default{color:#111827;background:#fff}.renderer-canvas.qti3-player-color-defaultreverse{color:#fff;background:#111827}.renderer-canvas.qti3-player-color-blackwhite{color:#000;background:#fff}.renderer-canvas.qti3-player-color-whiteblack{color:#fff;background:#000}.renderer-canvas.qti3-player-color-blackrose{color:#000;background:#ffe4f1}.renderer-canvas.qti3-player-color-roseblack{color:#ffe4f1;background:#000}.renderer-canvas.qti3-player-color-dgraymgray{color:#1f2937;background:#d1d5db}.renderer-canvas.qti3-player-color-mgraydgray{color:#d1d5db;background:#1f2937}.renderer-canvas.qti3-player-color-yellowblue{color:#fff7ad;background:#002f6c}.renderer-canvas.qti3-player-color-blueyellow{color:#002f6c;background:#fff7ad}.renderer-canvas.qti3-player-color-blackcyan{color:#000;background:#bff7ff}.renderer-canvas.qti3-player-color-cyanblack{color:#bff7ff;background:#000}.renderer-canvas.qti3-player-color-blackcream{color:#000;background:#fff4d6}.renderer-canvas.qti3-player-color-creamblack{color:#fff4d6;background:#000}
