*{box-sizing:border-box}html,body{min-height:100%;margin:0;overflow-x:clip}body{background:var(--color-paper);color:var(--color-ink-2);font-family:var(--font-body);line-height:1.55}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-block-start:0}h1,h2,h3{color:var(--color-ink);font-family:var(--font-display);overflow-wrap:anywhere;min-width:0;font-style:normal;line-height:1.08}code,pre,kbd,.mono{font-family:var(--font-mono)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.button{background:var(--color-surface);border:var(--rule-thin) solid var(--color-control-border);border-radius:var(--radius-pill);color:var(--color-ink);cursor:pointer;font-size:var(--text-sm);align-items:center;gap:var(--space-sm);letter-spacing:-.01em;min-height:52px;padding:0 var(--space-xl);transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);white-space:nowrap;justify-content:center;font-weight:700;display:inline-flex}.button--primary:focus-visible{outline-color:var(--color-focus);outline-offset:3px}.button--quiet{background:0 0;border-color:#0000}.button:active,.button[data-state=active]{transform:translateY(1px)scale(.99)}.button--primary:active,.button--primary[data-state=active]{background:var(--color-action-pressed);border-color:var(--color-action-pressed)}.button:disabled,.button[aria-disabled=true]{cursor:not-allowed;opacity:.5}.button[data-state=loading]{cursor:wait}.button[data-state=loading] svg{animation:spin var(--dur-slow) linear infinite}.button[data-state=error]{background:var(--color-error-soft);border-color:var(--color-error);color:var(--color-error)}@media (hover:hover) and (pointer:fine){.button:hover{background:var(--color-paper-2);border-color:var(--color-control-border-hover)}.button--primary:hover{background:var(--color-action-hover);border-color:var(--color-action-hover)}.button--quiet:hover{background:var(--color-paper-2);border-color:#0000}.nav-link:hover{background:var(--color-paper-2);color:var(--color-ink)}.session-row:hover{background:var(--color-paper-2)}}.rail .button,.workspace-actions .button{min-height:44px;padding-inline:var(--space-lg)}.field{gap:var(--space-xs);display:grid}.field label{color:var(--color-ink);font-size:var(--text-sm);font-weight:700}.input,.select{background:var(--color-surface);border:var(--rule-thin) solid var(--color-rule-2);border-radius:var(--radius-sm);color:var(--color-ink);outline-offset:1px;min-height:44px;padding:0 var(--space-sm);transition:background-color var(--dur-fast) var(--ease-out);outline:2px solid #0000}.textarea{min-height:6rem;padding-block:var(--space-sm);resize:vertical}.label-optional{color:var(--color-muted);font-size:var(--text-xs);margin-inline-start:var(--space-2xs);font-weight:500}.input::placeholder{color:var(--color-muted)}.input:focus-visible,.select:focus-visible{border-color:var(--color-ink-2);outline-color:var(--color-focus)}.input[aria-invalid=true]{border-color:var(--color-error)}.input[data-state=success],.select[data-state=success]{border-color:var(--color-success)}.input[data-state=loading],.select[data-state=loading]{cursor:progress}.input:disabled{cursor:not-allowed;opacity:.55}.field-help{color:var(--color-muted);font-size:var(--text-xs);min-height:1lh}.field-error{color:var(--color-error)}.shell{min-height:100dvh}.rail{background:var(--color-surface);border-block-end:var(--rule-thin) solid var(--color-rule);padding:var(--space-sm) var(--space-md);z-index:20;display:flex;position:sticky;top:0}.rail__brand{font-family:var(--font-display);align-items:center;gap:var(--space-xs);font-weight:700;display:flex}.brand-logo{object-fit:contain;block-size:44px;inline-size:auto;display:block}.rail__links{display:none}.rail__meta{gap:var(--space-sm);margin-inline-start:auto;display:flex}.nav-link{border-radius:var(--radius-sm);color:var(--color-muted);font-size:var(--text-sm);align-items:center;gap:var(--space-sm);min-height:44px;padding-inline:var(--space-sm);white-space:nowrap;font-weight:700;display:flex}.shell__main{min-width:0;padding:var(--space-lg) clamp(var(--space-md), 4vw, var(--space-2xl))}.page-head{border-block-end:var(--rule-thin) solid var(--color-rule);align-items:end;gap:var(--space-md);padding-block-end:var(--space-lg);display:grid}.page-head h1{font-size:clamp(var(--text-2xl), 5vw, var(--text-3xl));margin-block-end:var(--space-xs)}.page-head p{color:var(--color-muted);max-width:62ch;margin:0}.page-actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.eyebrow{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.grid{gap:var(--space-md);display:grid}.stats{margin-block:var(--space-lg) var(--space-2xl);grid-template-columns:repeat(2,minmax(0,1fr))}.stat{border-block-start:var(--rule-thin) solid var(--color-rule-2);padding-block-start:var(--space-sm)}.stat__value{color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-2xl);font-weight:600;line-height:1.1}.panel{background:var(--color-surface);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-md)}.panel__head{border-block-end:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);justify-content:space-between;display:flex}.panel__head h2,.panel__head h3{font-size:var(--text-lg);margin:0}.panel__head p{color:var(--color-muted);font-size:var(--text-sm);margin:var(--space-2xs) 0 0}.section-stack{gap:var(--space-lg);margin-block-start:var(--space-xl);display:grid}.session-row{border-block-end:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);transition:background-color var(--dur-fast) var(--ease-out);display:grid}.session-row:last-child{border-block-end:0}.session-row h3{font-size:var(--text-base);margin:0}.session-row p{color:var(--color-muted);font-size:var(--text-sm);margin:0}.session-row__meta{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.badge{border:var(--rule-thin) solid var(--color-rule-2);color:var(--color-ink-2);font-family:var(--font-mono);font-size:var(--text-xs);align-items:center;gap:var(--space-2xs);min-height:26px;padding-inline:var(--space-sm);white-space:nowrap;border-radius:999px;display:inline-flex}.language-icon{flex:none;display:block}.language-meta{align-items:center;gap:var(--space-2xs)}.question-choice__copy small.language-meta,.session-review__question small.language-meta{display:inline-flex}.badge--success{background:var(--color-success-soft);border-color:var(--color-success);color:var(--color-success)}.badge--warning{background:var(--color-warning-soft);border-color:var(--color-warning);color:var(--color-warning)}.badge--accent{background:var(--color-paper-2);border-color:var(--color-accent);color:var(--color-accent)}.empty{color:var(--color-muted);padding:var(--space-2xl);text-align:center}.inline-form{align-items:end;gap:var(--space-sm);grid-template-columns:minmax(0,1fr);display:grid}.form-message{font-size:var(--text-sm);min-height:1.5em;margin:0}.form-message--error{color:var(--color-error)}.dialog-backdrop{background:color-mix(in oklch, var(--color-ink) 28%, transparent);padding:var(--space-md);z-index:50;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog-card{background:var(--color-surface);border:var(--rule-thin) solid var(--color-rule-2);border-radius:var(--radius-md);max-width:40rem;max-height:90dvh;padding:var(--space-xl);width:100%;overflow:auto}.dialog-card h2{margin-block-end:var(--space-xs)}.dialog-card>p{color:var(--color-muted);margin-block:var(--space-sm) 0}.dialog-card__actions{gap:var(--space-sm);flex-wrap:wrap;justify-content:flex-end;margin-block-start:var(--space-lg);display:flex}.login{min-height:100dvh;display:grid}.login__context{background:var(--color-graphite);color:var(--color-code);min-height:15rem;padding:clamp(var(--space-xl), 7vw, var(--space-3xl));flex-direction:column;justify-content:space-between;display:flex}.login__context h1{color:var(--color-code);font-size:clamp(var(--text-3xl), 8vw, 4.5rem);max-width:10ch}.login__context p{color:var(--color-code-muted);max-width:48ch}.login__signal{font-family:var(--font-mono);font-size:var(--text-xs);align-items:center;gap:var(--space-xs);letter-spacing:.04em;text-transform:uppercase;display:flex}.signal-dot{background:var(--color-accent);border-radius:50%;width:8px;height:8px}.login__form{padding:var(--space-xl);justify-content:center;align-items:center;display:flex}.login__card{width:100%;max-width:26rem}.login__card h2{font-size:var(--text-2xl);margin-block-end:var(--space-xs)}.login__card>p{color:var(--color-muted);margin-block-end:var(--space-xl)}.form-stack{gap:var(--space-md);display:grid}.demo-accounts{border-block-start:var(--rule-thin) solid var(--color-rule);color:var(--color-muted);font-size:var(--text-xs);margin-block-start:var(--space-xl);padding-block-start:var(--space-md)}.workspace{background:var(--color-paper-2);grid-template-rows:auto auto minmax(0,1fr) auto;min-height:100dvh;display:grid}.workspace-bar{background:var(--color-surface);border-block-end:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-sm);min-height:60px;padding:var(--space-sm) var(--space-md);display:flex}.workspace-bar__session{min-width:0}.workspace-bar__session strong,.workspace-bar__session span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.workspace-bar__session span{color:var(--color-muted);font-size:var(--text-xs)}.workspace-bar__status{align-items:center;gap:var(--space-xs);margin-inline-start:auto;display:flex}.timer{font-family:var(--font-mono);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.question-tabs{background:var(--color-surface);border-block-end:var(--rule-thin) solid var(--color-rule);gap:var(--space-xs);padding:var(--space-xs) var(--space-md);display:flex;overflow-x:auto}.question-tab{color:var(--color-muted);font-size:var(--text-sm);min-height:40px;padding:var(--space-xs);white-space:nowrap;border-block-end:2px solid #0000;font-weight:700}.question-tab[data-state=done]{color:var(--color-ink-2);opacity:.72}.question-tab[data-state=locked]{opacity:.42}.question-tab[aria-current=page]{border-color:var(--color-accent);color:var(--color-ink)}.workspace-grid{min-height:0;display:grid}.prompt-pane{background:var(--color-surface);border-block-end:var(--rule-thin) solid var(--color-rule);min-width:0;padding:var(--space-lg);overflow:auto}.prompt-pane h1{font-size:var(--text-xl);margin-block:var(--space-xs) var(--space-lg)}.prompt-pane h2{font-size:var(--text-base);margin-block:var(--space-xl) var(--space-sm)}.constraint-list{padding-inline-start:var(--space-lg)}.example-list{gap:var(--space-sm);display:grid}.example{background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);gap:var(--space-sm);padding:var(--space-sm) var(--space-md);display:grid}.example h3{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;margin:0}.example__io{gap:var(--space-sm);margin:0;display:grid}.example__io div{gap:var(--space-2xs);display:grid}.example__io dt{color:var(--color-muted);font-size:var(--text-xs);font-weight:700}.example__io dd{margin:0}.example pre{background:var(--color-surface);border-radius:var(--radius-sm);font-size:var(--text-sm);padding:var(--space-sm);white-space:pre-wrap;word-break:break-word;margin:0;overflow:auto}.editor-pane{min-width:0;min-height:26rem}.results-pane{background:var(--color-graphite);color:var(--color-code);min-height:12rem;padding:var(--space-md);overflow:auto}.results-pane h2{color:var(--color-code);font-size:var(--text-sm);margin-block-end:var(--space-sm)}.result-row{border-block-start:var(--rule-thin) solid var(--color-graphite-2);align-items:center;gap:var(--space-xs);padding-block:var(--space-sm);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.result-icon--pass{color:var(--color-success-soft)}.result-icon--fail{color:var(--color-error-soft)}.result-row__detail{color:var(--color-code-muted);font-family:var(--font-mono);font-size:var(--text-xs)}.workspace-actions{background:var(--color-surface);border-block-start:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);flex-wrap:wrap;justify-content:flex-end;display:flex}.save-state{color:var(--color-muted);font-size:var(--text-xs);margin-inline-end:auto}.report-table{border-collapse:collapse;width:100%}.report-table th,.report-table td{border-block-end:var(--rule-thin) solid var(--color-rule);padding:var(--space-sm);text-align:start}.report-table th{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase}.score{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.footer-inline{border-block-start:var(--rule-thin) solid var(--color-rule);color:var(--color-muted);font-size:var(--text-xs);gap:var(--space-md);padding-block:var(--space-lg);flex-wrap:wrap;justify-content:space-between;margin-block-start:var(--space-3xl);display:flex}@keyframes spin{to{transform:rotate(360deg)}}.route-loading{animation:fade-in var(--dur-base) var(--ease-out) .3s both;color:var(--color-muted);align-items:center;gap:var(--space-sm);min-height:min(52dvh,34rem);padding:var(--space-lg);justify-content:center;display:flex}.route-loading svg{animation:spin var(--dur-slow) linear infinite}.route-loading p{margin:0}@media (min-width:40rem){.page-head{grid-template-columns:minmax(0,1fr) auto}.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.inline-form,.session-row{grid-template-columns:minmax(0,1fr) auto}.login{grid-template-columns:minmax(0,1fr) minmax(22rem,34rem)}.login__context{min-height:100dvh}}@media (min-width:60rem){.shell{grid-template-columns:15rem minmax(0,1fr);display:grid}.rail{border-block-end:0;border-inline-end:var(--rule-thin) solid var(--color-rule);height:100dvh;padding:var(--space-lg) var(--space-md);flex-direction:column;display:flex}.rail__links{gap:var(--space-xs);margin-block-start:var(--space-2xl);display:grid}.rail__meta{border-block-start:var(--rule-thin) solid var(--color-rule);align-items:stretch;margin-block-start:auto;padding-block-start:var(--space-md);display:grid}.shell__main{padding-block:var(--space-2xl)}.workspace-grid{grid-template-rows:minmax(0,1fr) 15rem;grid-template-columns:minmax(18rem,30%) minmax(0,1fr);height:calc(100dvh - 158px)}.prompt-pane{border-block-end:0;border-inline-end:var(--rule-thin) solid var(--color-rule);grid-row:1/3}.editor-pane{min-height:0}.results-pane{border-block-start:var(--rule-thin) solid var(--color-graphite-2)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important}}html,body{background:var(--color-paper)}body{color:var(--color-ink-2);font-size:var(--text-base)}::selection{background:var(--color-accent);color:var(--color-accent-ink)}*{scrollbar-color:var(--color-rule-2) transparent;scrollbar-width:thin}input,textarea{caret-color:var(--color-focus)}h1,h2,h3{letter-spacing:-.025em;font-weight:700}h1{font-size:clamp(var(--text-2xl), 4vw, var(--text-3xl))}h2{font-size:var(--text-xl)}p{max-width:70ch}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.brand{color:var(--color-ink);font-family:var(--font-display);align-items:center;gap:var(--space-sm);letter-spacing:-.02em;white-space:nowrap;min-height:44px;font-weight:700;display:inline-flex}.button{min-height:48px;padding-inline:var(--space-lg)}.button--primary{background:var(--color-action);border-color:var(--color-action);color:var(--color-action-ink)}.button--quiet{min-height:44px;padding-inline:var(--space-sm);background:0 0;border-color:#0000}.button--danger{color:var(--color-error)}.button--danger:not(.button--quiet){background:var(--color-error-soft);border-color:var(--color-error)}.button--sm{font-size:var(--text-sm);gap:var(--space-xs);min-height:40px;padding-inline:var(--space-md)}.button.button--icon{inline-size:44px;flex:none;min-height:44px;padding:0}.button.button--icon.button--sm{inline-size:40px;min-height:40px}.button[aria-pressed=true]{background:var(--color-paper-3);border-color:var(--color-ink-2);color:var(--color-ink)}.button:disabled,.button[aria-disabled=true]{background:var(--color-paper-2);border-color:var(--color-rule);color:var(--color-muted);cursor:not-allowed;opacity:1}.button--quiet:disabled,.button--quiet[aria-disabled=true]{background:0 0;border-color:#0000}.button[data-state=loading]:disabled{background:var(--color-surface);border-color:var(--color-control-border);color:var(--color-ink);cursor:wait}.button--quiet[data-state=loading]:disabled{background:0 0;border-color:#0000}.button--primary[data-state=loading]:disabled{background:var(--color-action);border-color:var(--color-action);color:var(--color-action-ink)}.button--danger:not(.button--quiet)[data-state=loading]:disabled,.button[data-state=error]{background:var(--color-error-soft);border-color:var(--color-error);color:var(--color-error)}.button[data-state=success]{background:var(--color-success-soft);border-color:var(--color-success);color:var(--color-success)}.text-button{color:var(--color-muted);cursor:pointer;text-underline-offset:.25em;background:0 0;border:0;min-height:44px;padding:0;text-decoration:underline}.back-link{color:var(--color-muted);align-items:center;gap:var(--space-xs);white-space:nowrap;min-height:44px;margin-block-end:var(--space-md);font-weight:700;display:inline-flex}.input,.select,.textarea{background:var(--color-surface);border:var(--rule-thin) solid var(--color-control-border);border-radius:var(--radius-input);color:var(--color-ink);font-size:var(--text-base);outline-offset:1px;min-height:48px;padding-inline:var(--space-md);transition:background-color var(--dur-fast) var(--ease-out);outline:2px solid #0000;width:100%}.textarea{min-height:8rem;padding-block:var(--space-sm);resize:vertical;line-height:1.55}.textarea--short{min-height:6rem}.code-field{background:var(--color-editor);color:var(--color-code);font-family:var(--font-mono)}.input::placeholder,.textarea::placeholder{color:var(--color-muted);opacity:1}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{border-color:var(--color-ink-2);outline-color:var(--color-focus)}select.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230d0f08' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right var(--space-md) center;cursor:pointer;text-overflow:ellipsis;background-repeat:no-repeat;background-size:18px;padding-inline-end:calc(var(--space-md) + 18px + var(--space-xs))}select.select:disabled{cursor:not-allowed}.input[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--color-error)}.field{align-content:start;gap:var(--space-xs)}.field label,.test-case label{color:var(--color-ink);font-size:var(--text-sm);font-weight:700}.field-help,.field-error,.action-error,.join-form__error{font-size:var(--text-sm)}.action-error,.join-form__error{color:var(--color-error)}.login-simple{background:var(--color-paper);min-height:100dvh;padding:var(--space-lg);align-items:center;display:grid;position:relative}.login-simple__brand{position:absolute;inset-block-start:var(--space-lg);inset-inline-start:var(--space-lg)}.login-form{width:100%;max-width:25rem;margin-inline:auto}.login-form .form-stack{gap:var(--space-sm)}.login-form .field-help:empty{display:none}.login-form .input{background:var(--color-paper-2);border-radius:var(--radius-pill);min-height:52px;padding-inline:var(--space-lg)}.login-form .button{width:100%;margin-block-start:var(--space-xs)}.auth-form-stack{gap:var(--space-lg);display:grid}.auth-switch{background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-pill);grid-template-columns:1fr 1fr;padding:3px;display:grid}.auth-switch button{border-radius:var(--radius-pill);color:var(--color-muted);cursor:pointer;font-size:var(--text-sm);min-height:42px;padding-inline:var(--space-md);background:0 0;border:0;font-weight:700}.auth-switch button[aria-pressed=true]{background:var(--color-surface);box-shadow:0 1px 4px color-mix(in oklch, var(--color-ink) 10%, transparent);color:var(--color-ink)}.language-switch{background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-pill);grid-auto-columns:1fr;grid-auto-flow:column;padding:3px;display:inline-grid}.language-switch button{border-radius:var(--radius-pill);color:var(--color-muted);cursor:pointer;font-size:var(--text-xs);min-height:32px;padding-inline:var(--space-md);background:0 0;border:0;font-weight:700}.language-switch button[aria-pressed=true]{background:var(--color-surface);box-shadow:0 1px 4px color-mix(in oklch, var(--color-ink) 10%, transparent);color:var(--color-ink)}.language-switch button:disabled{cursor:progress}.login-split{background:var(--color-paper);grid-template-columns:minmax(0,1fr);grid-template-areas:"visual""form";min-height:100dvh;display:grid}.login-split__form-pane{background:var(--color-paper);color:var(--color-ink-2);min-width:0;min-height:max(34rem,100dvh - 17rem);padding:var(--space-lg);grid-area:form;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);display:grid}.login-split__brand{margin-block-end:var(--space-xl)}.login-split__form-wrap{min-width:0;max-width:26rem;padding-block:var(--space-2xl);align-self:center;width:100%;margin-inline:auto}.login-split__form-wrap>.eyebrow{margin-block-end:var(--space-sm)}.login-split__form-wrap h1{font-size:clamp(var(--text-2xl), 10vw, var(--text-3xl));margin-block-end:var(--space-sm)}.login-split__intro{color:var(--color-muted);margin-block-end:var(--space-xl)}.login-split .login-form{max-width:none;margin:0}.login-split .login-form .form-stack{gap:var(--space-md)}.login-split .login-form .field{gap:var(--space-xs)}.login-split .login-form .field-help{min-height:1lh;display:block}.login-split .login-form .input{background:var(--color-paper-2);min-height:52px;padding-inline:var(--space-lg)}.login-split .login-form .button{width:100%;min-height:52px;margin-block-start:var(--space-xs)}.login-split .brand:focus-visible,.login-split .input:focus-visible,.login-split .button:focus-visible{outline-color:var(--color-focus-on-accent)}.login-split__footnote{color:var(--color-muted);font-size:var(--text-xs);margin:0}.login-split__legal{color:var(--color-muted);font-size:var(--text-xs);margin:var(--space-lg) 0 0}.login-split__legal a{border-radius:var(--radius-sm);color:var(--color-ink-2);text-underline-offset:.2em;font-weight:600;text-decoration:underline}.login-split__legal [aria-hidden]{margin-inline:var(--space-xs)}.login-split__footer{align-items:center;gap:var(--space-sm) var(--space-md);flex-wrap:wrap;justify-content:space-between;display:flex}.login-split__visual{background:var(--color-accent);color:var(--color-accent-ink);isolation:isolate;grid-area:visual;grid-template-columns:minmax(0,1fr);min-width:0;min-height:17rem;display:grid;position:relative;overflow:clip}.login-split__art{object-fit:cover;object-position:center}.login-split__field{block-size:100%;min-block-size:0;inline-size:100%}.login-split__statement{background-image:linear-gradient(to top, var(--color-accent) 0 27%, color-mix(in oklab, var(--color-accent), transparent 10%) 45%, color-mix(in oklab, var(--color-accent), transparent 38%) 63%, color-mix(in oklab, var(--color-accent), transparent 72%) 82%, transparent 100%);min-width:0;padding:var(--space-lg);pointer-events:none;align-content:end;display:grid;position:absolute;inset:0}.login-split__statement .eyebrow{color:var(--color-accent-ink);margin-block-end:var(--space-sm)}.login-split__statement h2{color:var(--color-accent-ink);font-size:clamp(var(--text-xl), 7vw, var(--text-2xl));max-width:13ch;margin-block-end:var(--space-md);line-height:1.04}.login-split__statement>p:last-child{color:var(--color-accent-ink);font-size:var(--text-sm);margin:0;display:none}.student-home{min-height:100dvh;padding:var(--space-md);grid-template-rows:auto 1fr auto;display:grid}.student-topbar{justify-content:space-between;align-items:start;display:flex}.practice-action{align-items:flex-end;gap:var(--space-xs);justify-items:end;display:grid}.action-error{text-align:end;max-width:24rem}.student-join{align-self:center;align-items:center;gap:var(--space-lg);width:100%;max-width:38rem;margin-inline:auto;display:grid}.student-join h1{margin-block-end:var(--space-xs)}.student-join p{color:var(--color-muted);margin:0}.join-form{align-self:center;align-items:center;gap:var(--space-sm);grid-template-columns:minmax(0,1fr) auto;display:grid}.join-form .input,.join-form .button{min-height:56px}.join-form .input{border-radius:var(--radius-pill);padding-inline:var(--space-lg)}.join-form .button{min-width:7rem}.join-form__error{grid-column:1/-1}.student-account{color:var(--color-muted);font-size:var(--text-sm);justify-content:space-between;align-items:center;display:flex}.student-account__name{color:var(--color-ink);font-weight:700}.student-dashboard-content{align-self:center;gap:var(--space-2xl);max-width:52rem;padding-block:var(--space-2xl);width:100%;margin-inline:auto;display:grid}.student-dashboard-content .student-join{margin-inline:0}.student-profile-page{min-height:100dvh;padding:var(--space-md);grid-template-rows:auto 1fr auto;display:grid}.student-profile-page__content{max-width:82rem;padding-block:var(--space-2xl);align-self:start;width:100%;margin-inline:auto}.profile-page{width:100%;max-width:none}.profile-page .page-head{margin-block-end:var(--space-xl)}.profile-page__meta{gap:var(--space-2xs);display:grid}.profile-page__meta .back-link{margin-block-end:0}.profile-page .page-head h1{margin-block:var(--space-sm) var(--space-xs)}.profile-page__stack{gap:var(--space-xl);display:grid}.profile-page__stack+.profile-card{margin-block-start:var(--space-xl)}.profile-card{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);overflow:clip}.profile-card__head{background:var(--color-paper-2);border-block-end:var(--rule-thin) solid var(--color-rule);align-items:start;gap:var(--space-md);padding:var(--space-lg);justify-content:space-between;display:flex}.profile-card__head h2{font-size:var(--text-lg);margin:var(--space-xs) 0 0}.profile-card__private{border:var(--rule-thin) solid var(--color-rule-2);border-radius:var(--radius-pill);color:var(--color-muted);font-size:var(--text-xs);padding:var(--space-2xs) var(--space-sm);font-weight:700}.profile-form{gap:var(--space-lg);padding:var(--space-lg);display:grid}.profile-form .form-message:empty{display:none}.profile-form .input[readonly]{background:var(--color-paper-2);color:var(--color-muted);cursor:default}.profile-form__password-fields{gap:var(--space-lg);grid-template-columns:minmax(0,1fr);display:grid}.profile-form__password-fields>.field{align-content:start;min-width:0}.profile-form__actions{justify-content:flex-end;display:flex}.profile-form__security-note{margin:calc(var(--space-sm) * -1) 0 0}.form-message--success{color:var(--color-success)}@media (min-width:60rem){.profile-page__stack,.profile-form__password-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}.assigned-sessions{gap:var(--space-md);display:grid}.assigned-sessions h2{font-size:var(--text-lg);margin:0 0 var(--space-2xs)}.assigned-sessions p{color:var(--color-muted);margin:0}.assigned-session-list{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);overflow:clip}.assigned-session-list article{border-block-end:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-sm);padding:var(--space-md);grid-template-columns:minmax(0,1fr) auto;display:grid}.assigned-session-list article:last-child{border-block-end:0}.assigned-session-list strong,.assigned-session-list small{display:block}.assigned-session-list small{color:var(--color-muted)}.assigned-session-list .button{min-height:44px}.shell{min-height:100dvh;display:block}.rail{background:var(--color-paper);border-block-end:var(--rule-thin) solid var(--color-rule);height:auto;min-height:72px;padding:var(--space-sm) var(--space-md);border-inline-end:0;flex-flow:row;align-items:center;position:sticky;top:0}.rail .brand{justify-content:center}.rail .brand,.rail .nav-link,.rail .button{line-height:1}.rail__links{gap:var(--space-xs);order:initial;width:auto;margin:0 auto;padding:0;display:flex;overflow:visible}.rail__meta{align-items:center;gap:var(--space-sm);border-block-start:0;flex:none;margin:0;padding:0;display:flex}.nav-link{border-radius:var(--radius-pill);color:var(--color-ink);font-size:var(--text-base);gap:var(--space-sm);justify-content:center;inline-size:44px;padding-inline:0;font-weight:500}.nav-link span{display:none}.nav-link[aria-current=page]{background:var(--color-action);color:var(--color-accent)}.shell__main{padding:var(--space-xl) var(--space-md)}.content{max-width:82rem;margin-inline:auto}.page-head{align-items:end;gap:var(--space-xl);border-block-end:0;padding-block-end:var(--space-lg)}.page-head h1{margin-block-end:var(--space-xs)}.page-head p{color:var(--color-muted);margin:0}.page-actions{align-items:center}.stats{margin-block:0 var(--space-lg);gap:0}.stat{border-block-start:var(--rule-thin) solid var(--color-rule);min-width:0;padding:var(--space-md) var(--space-sm) var(--space-lg) 0}.stat svg{color:var(--color-muted)}.stat__value{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700}.stat__label{color:var(--color-muted);font-size:var(--text-sm)}.panel{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);background:0 0;overflow:clip}.panel--spaced{margin-block-start:var(--space-xl)}.panel__head{background:var(--color-paper);padding:var(--space-lg)}.panel__head h2,.panel__head h3{font-size:var(--text-lg)}.panel__body{padding:var(--space-lg)}.session-row,.question-row{border-block-end:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-sm);padding:var(--space-lg);transition:background-color var(--dur-fast) var(--ease-out);display:grid}.session-row:last-child,.question-row:last-child{border-block-end:0}.session-row h3,.question-row h3{font-size:var(--text-base);margin:0}.session-row p,.question-row p{color:var(--color-muted);font-size:var(--text-sm);margin:0}.session-row__meta{justify-content:flex-start}.badge{border-color:var(--color-rule-2);color:var(--color-ink-2);font-family:var(--font-body);font-weight:600}.badge--success{background:var(--color-success-soft);color:var(--color-success)}.badge--warning{background:var(--color-warning-soft);color:var(--color-warning)}.badge--accent,.badge--difficulty{background:var(--color-paper-2);border-color:var(--color-rule-2);color:var(--color-ink-2)}.badge--easy{background:var(--color-success-soft);border-color:var(--color-success);color:var(--color-success)}.badge--medium{background:var(--color-warning-soft);border-color:var(--color-warning);color:var(--color-warning)}.badge--hard,.badge--danger{background:var(--color-error-soft);border-color:var(--color-error);color:var(--color-error)}.badge--gold{background:var(--color-gold-soft);border-color:var(--color-gold);color:var(--color-gold)}.empty{padding:var(--space-2xl) var(--space-lg)}.table-scroll{overflow-x:auto}.report-table th{font-family:var(--font-body);letter-spacing:.02em;text-transform:none}.dialog-card{border-color:var(--color-rule);border-radius:var(--radius-card);max-height:min(88dvh,52rem);padding:var(--space-xl);margin:auto;position:fixed;inset:0}.dialog-card--wide{max-width:58rem}.dialog-card::backdrop{background:color-mix(in oklch, var(--color-ink) 34%, transparent)}.dialog-heading{border-block-end:var(--rule-thin) solid var(--color-rule);align-items:start;gap:var(--space-lg);justify-content:space-between;margin-block-end:var(--space-lg);padding-block-end:var(--space-lg);display:flex}.dialog-heading>:first-child{flex:auto;min-width:0}.dialog-heading__actions{flex:none;min-width:0}.dialog-heading h2{margin-block-end:var(--space-xs)}.dialog-heading p{color:var(--color-muted);margin:0}.dialog-card--compact{padding:var(--space-lg)}.dialog-card--compact .dialog-heading{border-block-end:0;margin-block-end:var(--space-md);padding-block-end:0}.dialog-card--compact>.form-message{margin-block:0}.dialog-card--compact .form-message:empty{min-height:0}.dialog-card--compact .dialog-card__actions{margin-block-start:var(--space-md)}.dialog-card--compact .form-stack>.dialog-card__actions{margin-block-start:0}.llm-import{background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);gap:var(--space-sm);padding:var(--space-md);display:grid}.llm-import__heading{align-items:start;gap:var(--space-sm);justify-content:space-between;display:flex}.llm-import__heading h3{font-size:var(--text-base);margin:0 0 var(--space-2xs)}.llm-import__heading p{color:var(--color-muted);font-size:var(--text-sm);margin:0}.llm-import__input{min-height:10rem}.llm-import__actions{justify-content:flex-end;display:flex}.form-grid,.test-case-grid{gap:var(--space-lg);display:grid}.test-case{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);gap:var(--space-xs);padding:var(--space-lg);margin:0;display:grid}.test-case legend{color:var(--color-ink);padding-inline:var(--space-xs);font-weight:700}.waiting-room{min-height:100dvh;padding:var(--space-lg);align-items:center;display:grid}.waiting-room section{max-width:34rem;margin-inline:auto}.waiting-room p{color:var(--color-muted);margin-block:var(--space-sm) var(--space-xl)}.waiting-room__actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.workspace{background:var(--color-paper);grid-template-rows:auto auto minmax(0,1fr) auto;height:100dvh;min-height:0;overflow:hidden}.workspace-bar{min-height:64px;padding:var(--space-xs) var(--space-md)}.workspace-bar .brand{flex:none}.workspace-bar__session{border-inline-start:var(--rule-thin) solid var(--color-rule);padding-inline-start:var(--space-md)}.workspace-bar__status{flex:none}.question-tabs{gap:var(--space-xs);min-height:52px;padding:var(--space-xs) var(--space-md)}.question-tab{border:var(--rule-thin) solid transparent;border-radius:var(--radius-pill);cursor:pointer;min-height:40px;padding:var(--space-xs) var(--space-md);background:0 0}.question-tab:disabled{cursor:not-allowed}.question-tab[aria-current=page]{background:var(--color-action);border-color:var(--color-action);color:var(--color-accent)}.workspace-grid{grid-template-rows:minmax(10rem,38%) minmax(12rem,1fr) minmax(8rem,28%);min-height:0;display:grid;overflow:hidden}.prompt-pane{border-block-end:var(--rule-thin) solid var(--color-rule);min-height:0;padding:var(--space-lg);overflow:auto}.prompt-pane h1{margin-block:var(--space-sm) var(--space-lg)}.prompt-pane h2{margin-block:var(--space-xl) var(--space-sm)}.editor-pane{background:var(--color-editor);min-height:0;overflow:hidden}.editor-pane .monaco-editor,.editor-pane .monaco-editor-background,.editor-pane .monaco-editor .margin{background-color:var(--color-editor)!important}.results-pane{background:var(--color-editor-raised);color:var(--color-code);min-height:0;overflow:auto}.results-pane h2{color:var(--color-code)}.result-row{border-color:var(--color-editor-rule)}.result-icon--pass,.result-icon--fail{stroke:var(--color-editor-raised)}.workspace-actions{min-height:68px;padding:var(--space-sm) var(--space-md);flex:none}.workspace-actions .button{min-height:44px}@media (hover:hover) and (pointer:fine){.brand:hover{color:var(--color-ink-2)}.nav-link:hover{background:var(--color-paper-2);color:var(--color-ink)}.nav-link[aria-current=page]:hover{background:var(--color-action-hover);color:var(--color-accent)}.session-row:hover,.question-row:hover{background:var(--color-paper-2)}.input:hover,.select:hover,.textarea:hover{background-color:var(--color-paper-2)}.login-form .input:hover{background:var(--color-paper-3)}.code-field:hover{background:var(--color-editor-raised)}.text-button:hover,.back-link:hover{color:var(--color-ink)}}@media (max-width:39.999rem){.shell .panel__head{flex-direction:column;align-items:flex-start}.student-topbar{gap:var(--space-sm)}.practice-action .button{min-height:44px;padding-inline:var(--space-md)}.join-form{grid-template-columns:minmax(0,1fr) auto}.join-form .button{min-width:5.5rem;padding-inline:var(--space-md)}.workspace-bar{flex-wrap:wrap}.workspace-bar__session{max-width:45%}.workspace-bar__status .badge{display:none}.save-state{text-align:end;flex-basis:100%;order:2}.workspace-actions{gap:var(--space-xs)}.workspace-actions .button{padding-inline:var(--space-sm);flex:auto}.dialog-card{padding:var(--space-lg)}.trajectory-table,.trajectory-table tbody,.trajectory-table tr,.trajectory-table td{width:100%;display:block}.trajectory-table thead{display:none}.trajectory-table tr{border-block-end:var(--rule-thin) solid var(--color-rule);padding-block:var(--space-sm)}.trajectory-table tr:last-child{border-block-end:0}.trajectory-table td{align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0;text-align:end;border:0;justify-content:space-between;display:flex}.trajectory-table td:before{color:var(--color-muted);content:attr(data-label);font-size:var(--text-sm);text-align:start;font-weight:600}.trajectory-table td:first-child{text-align:start;grid-template-columns:minmax(0,1fr);align-items:start;display:grid}}@media (min-width:40rem){.shell__main{padding:var(--space-xl) clamp(var(--space-xl), 5vw, var(--space-2xl))}.student-home{padding:var(--space-lg) var(--space-xl)}.student-join{grid-template-columns:minmax(0,1fr)}.form-grid--two,.test-case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.session-row,.question-row{grid-template-columns:minmax(0,1fr) auto}.session-row__meta{justify-content:flex-end}}@media (min-width:48rem){.rail{gap:var(--space-lg);padding-inline:var(--space-xl)}.rail .brand{justify-content:flex-start}}@media (min-width:60rem){.nav-link span{display:inline}.nav-link{inline-size:auto;padding-inline:var(--space-md)}.workspace-grid{grid-template-rows:minmax(0,1fr) 14rem;grid-template-columns:minmax(18rem,30%) minmax(0,1fr);height:auto}.prompt-pane{border-block-end:0;border-inline-end:var(--rule-thin) solid var(--color-rule);grid-row:1/3}.results-pane{border-block-start:var(--rule-thin) solid var(--color-editor-rule)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}.button:active,.button[data-state=active]{transform:none}}.account-menu{position:relative}.rail .account-menu__trigger{gap:var(--space-2xs);padding-inline:var(--space-sm)}.account-menu__chevron{transition:transform var(--dur-fast) var(--ease-out)}.account-menu__trigger[aria-expanded=true]{background:var(--color-paper-2)}.account-menu__trigger[aria-expanded=true] .account-menu__chevron{transform:rotate(180deg)}.account-menu__trigger[data-active]{background:var(--color-action);color:var(--color-accent)}.account-menu__panel{animation:menu-in var(--dur-fast) var(--ease-out);background:var(--color-surface);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);box-shadow:0 12px 32px color-mix(in oklch, var(--color-ink) 12%, transparent);gap:var(--space-2xs);inline-size:max-content;max-inline-size:min(20rem, calc(100dvw - 2 * var(--space-md)));min-inline-size:15rem;padding:var(--space-xs);z-index:var(--z-dropdown);display:grid;position:absolute;inset-block-start:calc(100% + var(--space-xs));inset-inline-end:0}.account-menu__panel[hidden]{display:none}.account-menu__user{border-block-end:var(--rule-thin) solid var(--color-rule);font-size:var(--text-xs);min-width:0;padding:var(--space-xs) var(--space-sm) var(--space-sm);margin-block-end:var(--space-2xs);display:grid}.account-menu__user strong{color:var(--color-ink);font-size:var(--text-sm)}.account-menu__user strong,.account-menu__user span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-menu__user span{color:var(--color-muted)}.account-menu__item{border-radius:var(--radius-sm);color:var(--color-ink);cursor:pointer;font-size:var(--text-sm);align-items:center;gap:var(--space-sm);inline-size:100%;min-height:44px;padding:0 var(--space-sm);text-align:start;background:0 0;border:0;font-weight:600;display:flex}.account-menu__item[aria-current=page]{background:var(--color-action);color:var(--color-accent)}.account-menu__signout{border-block-start:var(--rule-thin) solid var(--color-rule);margin-block-start:var(--space-2xs);padding-block-start:var(--space-2xs)}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}}@media (hover:hover) and (pointer:fine){.account-menu__item:hover{background:var(--color-paper-2)}.account-menu__item[aria-current=page]:hover,.rail .account-menu__trigger[data-active]:hover{background:var(--color-action-hover);color:var(--color-accent)}}@media (prefers-reduced-motion:reduce){.account-menu__panel{animation-name:fade-in}}@media (max-width:29.999rem){.rail{row-gap:var(--space-xs);flex-wrap:wrap}.rail__meta{margin-inline-start:auto}.rail__links{order:1;justify-content:space-between;width:100%;margin:0}}@keyframes fade-in{0%{opacity:0}}.dialog-heading__actions{align-items:center;gap:var(--space-xs);flex-wrap:wrap;justify-content:flex-end;display:flex}.field-label{align-items:center;gap:var(--space-xs);width:fit-content;max-width:100%;display:inline-flex;position:relative}.field-label__trigger{color:var(--color-muted);cursor:help;outline-offset:2px;background:0 0;border:0;outline:2px solid #0000;justify-content:center;align-items:center;width:20px;height:20px;padding:0;display:inline-flex;position:relative}.field-label__trigger:before{content:"";inset:calc(var(--space-sm) * -1);position:absolute}.field-label__trigger:focus-visible{color:var(--color-ink);outline-color:var(--color-focus)}.field-tooltip{background:var(--color-action);border-radius:var(--radius-sm);color:var(--color-action-ink);font-size:var(--text-sm);max-width:min(22rem, calc(100dvw - var(--space-2xl)));opacity:0;padding:var(--space-sm) var(--space-md);pointer-events:none;transition:opacity var(--dur-fast) var(--ease-out);visibility:hidden;width:max-content;z-index:var(--z-toast);font-weight:500;line-height:1.45;position:absolute;inset-block-start:100%;inset-inline-start:0}.field-label:hover .field-tooltip{opacity:1;pointer-events:auto;visibility:visible;transition-delay:.8s}.field-label:focus-within .field-tooltip{opacity:1;pointer-events:auto;visibility:visible;transition-delay:0s}.field-label[data-dismissed] .field-tooltip{opacity:0;pointer-events:none;visibility:hidden}@media (hover:hover) and (pointer:fine){.field-label__trigger:hover{color:var(--color-ink)}}@media (max-width:39.999rem){.dialog-heading:has(.dialog-heading__actions){flex-direction:column;align-items:stretch}.dialog-heading__actions{justify-content:space-between;width:100%}.dialog-heading__actions .button:not(.button--icon){flex:auto}}@media (prefers-reduced-motion:reduce){.field-tooltip{transition-delay:0s!important}}.session-published{animation:session-published-in var(--dur-base) var(--ease-out);gap:var(--space-lg);display:grid}.session-published h2{margin:0 0 var(--space-xs)}.session-published p{color:var(--color-muted);margin:0}.session-published__icon{color:var(--color-success)}.session-code{align-items:center;gap:var(--space-sm);grid-template-columns:minmax(0,1fr) auto;min-width:min(100%,15rem);display:grid;position:relative}.session-code__copy{gap:var(--space-2xs);min-width:0;display:grid}.session-code__label{color:var(--color-muted);font-size:var(--text-xs);font-weight:700}.session-code[data-state=success] .session-code__label{color:var(--color-success)}.session-code[data-state=error] .session-code__label{color:var(--color-error)}.session-code__value{color:var(--color-ink);font-family:var(--font-mono);font-size:var(--text-lg);font-variant-numeric:tabular-nums;letter-spacing:.08em;white-space:nowrap;line-height:1}.session-code__button{background:var(--color-surface);border:var(--rule-thin) solid var(--color-control-border);border-radius:var(--radius-pill);color:var(--color-ink);cursor:pointer;outline-offset:2px;height:44px;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);outline:2px solid #0000;justify-content:center;align-items:center;width:44px;padding:0;display:inline-flex}.session-code__button:focus-visible{outline-color:var(--color-focus)}.session-code__button:active,.session-code__button[data-state=active]{transform:translateY(1px)scale(.99)}.session-code__button:disabled,.session-code__button[aria-disabled=true]{cursor:not-allowed;opacity:.5}.session-code__button[data-state=loading]{cursor:wait}.session-code__button[data-state=error]{background:var(--color-error-soft);border-color:var(--color-error);color:var(--color-error)}.session-code__button[data-state=success]{background:var(--color-success-soft);border-color:var(--color-success);color:var(--color-success)}.session-code--prominent{background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);padding:var(--space-lg)}.session-code--prominent .session-code__value{font-size:var(--text-2xl)}.page-head--session{display:block}.page-head--session .back-link{margin-block-end:var(--space-sm)}.session-head__layout{gap:var(--space-lg);min-width:0;display:grid}.session-head__details{gap:var(--space-xs);min-width:0;display:grid}.session-head__title{align-items:center;gap:var(--space-xs) var(--space-sm);flex-wrap:wrap;display:flex}.session-head__title h1{margin:0}.session-head__summary{color:var(--color-muted);margin:0}.session-status{border:var(--rule-thin) solid var(--color-rule-2);border-radius:var(--radius-pill);color:var(--color-ink-2);font-size:var(--text-xs);min-height:26px;padding-inline:var(--space-sm);white-space:nowrap;align-items:center;gap:6px;font-weight:700;display:inline-flex}.session-status:before{background:var(--color-rule-2);content:"";border-radius:50%;block-size:8px;inline-size:8px}.session-status[data-phase=LIVE]{border-color:var(--color-ink-2);color:var(--color-ink)}.session-status[data-phase=LIVE]:before{background:var(--color-accent);box-shadow:0 0 0 1px color-mix(in oklab, var(--color-accent), var(--color-ink) 35%)}.session-facts{border-block:var(--rule-thin) solid var(--color-rule);margin:var(--space-lg) 0 var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.session-fact{min-width:0;padding:var(--space-sm) var(--space-md);align-content:start;gap:2px;display:grid}.session-fact:nth-child(odd){padding-inline-start:0}.session-fact:nth-child(2n){border-inline-start:var(--rule-thin) solid var(--color-rule)}.session-fact:nth-child(n+3){border-block-start:var(--rule-thin) solid var(--color-rule)}.session-fact dt{color:var(--color-muted);font-size:var(--text-xs);font-weight:700}.session-fact[data-state=success] dt{color:var(--color-success)}.session-fact[data-state=error] dt{color:var(--color-error)}.session-fact dd{color:var(--color-ink);font-size:var(--text-sm);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0}.session-code__inline{border:var(--rule-thin) solid transparent;border-radius:var(--radius-sm);color:var(--color-ink);cursor:pointer;font:inherit;align-items:center;gap:var(--space-xs);min-height:32px;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;margin-inline-start:-7px;padding-inline:6px;display:inline-flex}.session-code__inline .session-code__value{font-size:var(--text-base)}.session-code__inline svg{color:var(--color-muted);flex:none}.session-code__inline:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.session-fact[data-state=success] .session-code__inline svg{color:var(--color-success)}.session-settings{gap:var(--space-xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.session-settings li{background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);color:var(--color-ink-2);font-size:var(--text-xs);min-height:28px;padding-inline:var(--space-sm);align-items:center;gap:6px;font-weight:600;display:inline-flex}.session-settings svg{color:var(--color-muted);flex:none}.session-settings li[data-on]{background:var(--color-accent);border-color:color-mix(in oklab, var(--color-accent), var(--color-ink) 20%);color:var(--color-ink)}.session-settings li[data-on] svg{color:var(--color-ink)}.page-actions--session{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.page-actions--session .button{padding-inline:var(--space-sm)}.question-disclosure{border-block-end:var(--rule-thin) solid var(--color-rule)}.question-disclosure:last-child{border-block-end:0}.question-disclosure>summary{list-style:none}.question-disclosure>summary::-webkit-details-marker{display:none}.question-disclosure .question-row{cursor:pointer;outline-offset:-2px;border-block-end:0;outline:2px solid #0000}.question-disclosure .question-row:focus-visible{outline-color:var(--color-focus)}.question-row__title{align-items:center;gap:var(--space-sm);grid-template-columns:auto minmax(0,1fr);min-width:0;display:grid}.question-row__title>svg{color:var(--color-muted);transition:transform var(--dur-base) var(--ease-out)}.question-disclosure[open] .question-row__title>svg{transform:rotate(180deg)}.question-detail{animation:question-detail-in var(--dur-base) var(--ease-out);border-block-start:var(--rule-thin) solid var(--color-rule);gap:var(--space-lg);padding:var(--space-lg);display:grid}.question-detail h4{color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-sm);margin:0 0 var(--space-xs)}.question-detail p{color:var(--color-ink-2);white-space:pre-wrap;max-width:72ch;margin:0}.question-detail ul{margin:0;padding-inline-start:var(--space-lg)}.question-detail pre{background:var(--color-editor);border-radius:var(--radius-input);color:var(--color-code);padding:var(--space-md);margin:0;overflow:auto}.question-detail code{font-size:var(--text-sm)}@keyframes session-published-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes question-detail-in{0%{opacity:0;transform:translateY(calc(var(--space-xs) * -1))}to{opacity:1;transform:translateY(0)}}@media (hover:hover) and (pointer:fine){.session-code__button:hover{background:var(--color-paper-2);border-color:var(--color-control-border-hover)}.session-code__inline:hover{background:var(--color-paper-2);border-color:var(--color-rule)}.question-disclosure .question-row:hover{background:var(--color-paper-2)}}@media (min-width:40rem){.question-detail{grid-template-columns:minmax(0,1.4fr) minmax(12rem,.6fr)}.question-detail>:last-child{grid-column:1/-1}}@media (min-width:52rem){.session-head__layout{grid-template-columns:minmax(18rem,1fr) minmax(0,auto);align-items:start}.page-actions--session{justify-content:flex-end}.session-facts{grid-template-columns:repeat(4,minmax(0,1fr))}.session-fact:nth-child(n){border-block-start:0;border-inline-start:var(--rule-thin) solid var(--color-rule);padding-inline-start:var(--space-md)}.session-fact:first-child{border-inline-start:0;padding-inline-start:0}}@media (prefers-reduced-motion:reduce){.session-published,.question-detail{animation-name:none}.question-row__title>svg{transition-duration:0s!important}}.student-link{color:inherit;cursor:pointer;align-items:center;gap:var(--space-sm);text-align:start;background:0 0;border:0;justify-content:space-between;width:100%;min-height:44px;padding:0;display:flex}.student-link>span:first-child,.student-link strong,.student-link small{display:block}.student-link .badge{display:inline-flex}.student-link .badge--gold svg{color:var(--color-gold)}.student-link small,.class-student small,.response-card summary small{color:var(--color-muted)}.student-link svg{color:var(--color-muted);flex:none}.student-link:focus-visible{border-radius:var(--radius-sm)}.class-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr));margin-block-start:var(--space-lg);display:grid}.class-card{background:var(--color-surface);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);min-width:0;overflow:clip}.class-card__summary{color:var(--color-ink-2);cursor:pointer;gap:var(--space-lg);outline-offset:-3px;min-height:13.5rem;padding:var(--space-lg);text-align:start;transition:background-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);background:0 0;border:0;outline:2px solid #0000;width:100%;display:grid}.class-card__summary:focus-visible{outline-color:var(--color-focus)}.class-card__summary:active,.class-card__summary[data-state=active]{background:var(--color-paper-2);transform:translateY(1px)}.class-card__summary:disabled,.class-card__summary[aria-disabled=true]{cursor:not-allowed;opacity:.5}.class-card__summary[data-state=loading]{cursor:wait}.class-card__summary[data-state=error]{background:var(--color-error-soft);color:var(--color-error)}.class-card__summary[data-state=success]{background:var(--color-success-soft);color:var(--color-success)}.class-card__heading,.class-card__title,.class-card__dates{min-width:0;display:block}.class-card__title{color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:-.025em;overflow-wrap:anywhere;font-weight:700}.class-card__dates{color:var(--color-muted);font-size:var(--text-sm);margin-block-start:var(--space-2xs)}.class-card__stats{align-self:end;gap:var(--space-lg);flex-wrap:wrap;display:flex}.class-card__stats span{color:var(--color-muted);font-size:var(--text-sm)}.class-card__stats strong{color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-xl);margin-inline-end:var(--space-2xs);line-height:1}.class-card__open{border-block-start:var(--rule-thin) solid var(--color-rule);color:var(--color-ink);font-size:var(--text-sm);align-items:center;gap:var(--space-xs);white-space:nowrap;justify-content:space-between;padding-block-start:var(--space-md);font-weight:700;display:flex}.class-card__open svg{transition:transform var(--dur-fast) var(--ease-out)}.class-card__empty-state{background:var(--color-paper-2);border-block-start:var(--rule-thin) solid var(--color-rule);color:var(--color-ink-2);align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);grid-template-columns:minmax(0,1fr) auto;display:grid}.class-card__empty-copy{align-items:start;gap:var(--space-sm);min-width:0;display:flex}.class-card__empty-copy>svg{color:var(--color-muted);flex:none;margin-block-start:.15rem}.class-card__empty-copy strong,.class-card__empty-copy small{display:block}.class-card__empty-copy strong{color:var(--color-ink);font-size:var(--text-sm)}.class-card__empty-copy small{color:var(--color-muted);font-size:var(--text-xs);margin-block-start:var(--space-2xs)}.class-card__message{color:var(--color-error);font-size:var(--text-xs);overflow-wrap:anywhere;grid-column:1/-1;margin:0}.class-detail-dialog{max-width:64rem;width:min(calc(100% - var(--space-lg)), 64rem);padding:0}.class-detail-dialog__heading{padding:var(--space-lg) var(--space-xl);margin:0}.class-detail-dialog__heading .eyebrow{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;margin:0 0 var(--space-xs);text-transform:uppercase;font-weight:600}.class-detail-dialog__heading h2{font-size:var(--text-xl);margin:0 0 var(--space-2xs);overflow-wrap:anywhere}.class-detail-dialog__heading>div>p:last-child{color:var(--color-muted);font-size:var(--text-sm);margin:0}.class-detail-dialog__summary{border-block-end:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-lg);padding:var(--space-md) var(--space-xl);grid-template-columns:auto auto minmax(0,1fr);display:grid}.class-detail-dialog__summary>div:not(.class-detail-dialog__actions){border-inline-end:var(--rule-thin) solid var(--color-rule);min-width:7rem;padding-inline-end:var(--space-lg)}.class-detail-dialog__summary span,.class-detail-dialog__summary strong{display:block}.class-detail-dialog__summary span{color:var(--color-muted);font-size:var(--text-xs)}.class-detail-dialog__summary strong{color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-lg);margin-block-start:var(--space-2xs)}.class-detail-dialog__actions{align-items:center;gap:var(--space-xs);flex-wrap:wrap;justify-content:flex-end;display:flex}.class-detail-dialog__layout{grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr);min-height:25rem;display:grid}.class-roster{border-inline-end:var(--rule-thin) solid var(--color-rule);min-width:0}.class-roster__head{align-items:start;gap:var(--space-md);padding:var(--space-lg) var(--space-xl) var(--space-md);justify-content:space-between;display:flex}.class-roster__head h3{font-size:var(--text-base);margin:0}.class-roster__head p{color:var(--color-muted);font-size:var(--text-sm);margin:var(--space-2xs) 0 0}.class-roster__list{max-height:min(48dvh,28rem);overflow-y:auto}.class-student{border-block-start:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-md);min-height:4rem;padding:var(--space-sm) var(--space-xl);grid-template-columns:2rem minmax(0,1fr);display:grid}.class-student__index{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs)}.class-student strong,.class-student small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.class-student strong{color:var(--color-ink);font-size:var(--text-sm)}.class-student small{color:var(--color-muted);font-size:var(--text-xs);margin-block-start:var(--space-2xs)}.class-roster__empty{color:var(--color-muted);min-height:18rem;padding:var(--space-xl);align-content:center;justify-items:start;display:grid}.class-roster__empty svg{margin-block-end:var(--space-md)}.class-roster__empty strong{color:var(--color-ink)}.class-roster__empty span{font-size:var(--text-sm);margin-block-start:var(--space-2xs)}.class-invite-tools{background:var(--color-paper-2);grid-template-rows:auto minmax(0,1fr);min-width:0;display:grid}.class-invite-tools__share{border-block-end:var(--rule-thin) solid var(--color-rule);gap:var(--space-md);padding:var(--space-lg);display:grid}.class-invite-tools__share strong{color:var(--color-ink);align-items:center;gap:var(--space-xs);display:flex}.class-invite-tools__share p{color:var(--color-muted);font-size:var(--text-sm);margin:var(--space-xs) 0 0}.class-invite-tools__share .button,.class-invite-tools__email>.button{justify-self:start}.class-invite-tools__email{align-content:start;gap:var(--space-md);padding:var(--space-lg);display:grid}.class-invite-tools__email .form-message{min-height:1.4em;margin:0}.inline-control{align-items:center;gap:var(--space-sm);grid-template-columns:minmax(0,1fr) auto;display:grid}.invite-page{align-content:start;gap:var(--space-3xl);min-height:100dvh;padding:clamp(var(--space-lg), 5vw, var(--space-3xl));display:grid}.invite-result{align-self:center;gap:var(--space-md);justify-items:start;width:100%;max-width:34rem;margin:auto;display:grid}.invite-result h1{font-size:clamp(var(--text-2xl), 7vw, var(--text-3xl));margin:0}.invite-result p{color:var(--color-muted);margin:0}.invite-result[data-state=loading]>svg{animation:spin var(--dur-slow) linear infinite}.invite-result[data-state=success]>svg{color:var(--color-success)}.assignment-dialog{max-width:40rem}.assignment-list{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);max-height:24rem;overflow:auto}.assignment-choice{border-block-end:var(--rule-thin) solid var(--color-rule);cursor:pointer;align-items:center;gap:var(--space-sm);min-height:64px;padding:var(--space-sm) var(--space-md);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.assignment-choice:last-child{border-block-end:0}.assignment-choice strong,.assignment-choice small{display:block}.assignment-choice small{color:var(--color-muted)}.assignment-choice input{accent-color:var(--color-focus)}.assignment-choice:has(input:focus-visible){outline:2px solid var(--color-focus);outline-offset:-2px}.config-note{background:var(--color-warning-soft);border:var(--rule-thin) solid var(--color-warning);border-radius:var(--radius-card);color:var(--color-warning);align-items:start;gap:var(--space-sm);padding:var(--space-md);margin-block-end:var(--space-md);display:flex}.config-note svg{flex:none;margin-block-start:.2em}.dialog-card--responses{max-width:70rem;width:min(calc(100% - var(--space-lg)), 70rem)}.response-summary{border-block-end:var(--rule-thin) solid var(--color-rule);gap:var(--space-sm);grid-template-columns:repeat(3,minmax(0,1fr));margin-block-end:var(--space-lg);padding-block-end:var(--space-lg);display:grid}.response-summary span{color:var(--color-muted);font-size:var(--text-sm)}.response-summary strong{color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-xl);display:block}.tab-switch-list{border-block-end:var(--rule-thin) solid var(--color-rule);margin-block:var(--space-md) var(--space-lg);padding-block-end:var(--space-lg)}.tab-switch-list h3{font-size:var(--text-sm);margin:0 0 var(--space-sm)}.tab-switch-list ol{gap:var(--space-xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.tab-switch-list li{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-pill);color:var(--color-muted);font-size:var(--text-sm);gap:var(--space-xs);padding:var(--space-2xs) var(--space-sm);display:inline-flex}.tab-switch-list time{color:var(--color-ink);font-variant-numeric:tabular-nums;font-weight:600}.response-list{gap:var(--space-sm);display:grid}.response-list+.response-list{margin-block-start:var(--space-lg)}.response-card{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);overflow:clip}.response-card>summary{cursor:pointer;align-items:center;gap:var(--space-md);min-height:68px;padding:var(--space-md);justify-content:space-between;list-style:none;display:flex}.response-card>summary::-webkit-details-marker{display:none}.response-card>summary>span:first-child{align-items:center;gap:0 var(--space-sm);grid-template-columns:auto minmax(0,1fr);display:grid}.response-card>summary svg{color:var(--color-muted);grid-row:1/3}.response-card>summary small{grid-column:2}.response-card__body{background:var(--color-paper-2);border-block-start:var(--rule-thin) solid var(--color-rule);gap:var(--space-lg);padding:var(--space-lg);display:grid}.response-card__body h3{font-size:var(--text-sm);margin:0 0 var(--space-xs)}.response-card__body pre{background:var(--color-editor);border-radius:var(--radius-input);color:var(--color-code);max-height:24rem;padding:var(--space-md);margin:0;overflow:auto}.case-results{gap:var(--space-sm);display:grid}.case-results article{background:var(--color-surface);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-input);padding:var(--space-md)}.case-results header{align-items:center;gap:var(--space-sm);justify-content:space-between;display:flex}.case-results dl{gap:var(--space-xs);margin:var(--space-sm) 0 0;display:grid}.case-results dl>div{gap:var(--space-sm);grid-template-columns:5rem minmax(0,1fr);display:grid}.case-results dt{color:var(--color-muted);font-size:var(--text-xs);text-transform:uppercase;font-weight:700}.case-results dd{overflow-wrap:anywhere;min-width:0;margin:0}.question-detail__actions{align-items:center;gap:var(--space-sm);flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;display:flex}.question-history{border-block-start:var(--rule-thin) solid var(--color-rule);gap:var(--space-sm);text-align:start;flex-basis:100%;padding-block-start:var(--space-md);display:grid}.question-history>details{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-input);padding:var(--space-sm) var(--space-md)}.question-history>details>summary{cursor:pointer;font-weight:700}.question-history__body{gap:var(--space-sm);padding-block:var(--space-md);display:grid}.question-history__body h5{margin:0}.question-history__body ol{gap:var(--space-sm);margin:0;padding-inline-start:var(--space-lg);display:grid}.library-action{align-items:flex-end;gap:var(--space-xs);display:grid}.library-action .field-error{font-size:var(--text-xs)}.organization-panel__body{padding:var(--space-lg)}.organization-form{max-width:28rem}.organization-ai{margin-block-start:0}.organization-ai__current{align-items:flex-start;gap:var(--space-xs);margin:0;display:flex}.organization-ai__current svg{flex:none;margin-block-start:.2em}.organization-ai__actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.library-folders{gap:var(--space-md);margin-block:var(--space-xl);display:grid}.library-folders__head{align-items:end;gap:var(--space-md);justify-content:space-between;display:flex}.library-folders__head h2{font-size:var(--text-xl);margin:0 0 var(--space-2xs)}.library-folders__head p{color:var(--color-muted);font-size:var(--text-sm);margin:0}.library-folders__empty{border:var(--rule-thin) dashed var(--color-rule-2);border-radius:var(--radius-card);color:var(--color-muted);padding:var(--space-xl)}.library-folder-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));display:grid}.library-folder-card{background:var(--color-surface);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);gap:var(--space-sm);min-width:0;min-height:11rem;padding:var(--space-lg);transition:border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);display:grid}.library-folder-card:hover{border-color:var(--color-control-border-hover);transform:translateY(-2px)}.library-folder-card:focus-visible{outline-offset:3px}.library-folder-card__icon{color:var(--color-accent)}.library-folder-card__title{color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-lg);overflow-wrap:anywhere;font-weight:700;line-height:1.15}.library-folder-card__meta{color:var(--color-muted);font-size:var(--text-sm);overflow-wrap:anywhere}.library-folder-card__open{border-block-start:var(--rule-thin) solid var(--color-rule);font-size:var(--text-sm);align-items:center;gap:var(--space-xs);justify-content:space-between;margin-block-start:auto;padding-block-start:var(--space-sm);font-weight:700;display:flex}.library-back{color:var(--color-muted);font-size:var(--text-sm);align-items:center;gap:var(--space-2xs);margin-block-end:var(--space-md);font-weight:700;display:inline-flex}.library-back:hover{color:var(--color-ink)}.question-tabs.page-tabs{background:0 0;border:0;min-height:0;margin-block-end:var(--space-lg);padding:0}.page-tabs+.library-folders{margin-block-start:0}.list-skeleton{animation:fade-in var(--dur-fast) var(--ease-out) .15s both;display:grid}.list-skeleton__row{border-block-end:var(--rule-thin) solid var(--color-rule);gap:var(--space-xs);padding:var(--space-md) var(--space-lg);display:grid}.list-skeleton__row:last-child{border-block-end:0}.list-skeleton__row span{animation:skeleton-pulse .9s var(--ease-in-out) infinite alternate;background:var(--color-paper-3);border-radius:var(--radius-pill);block-size:.75rem;inline-size:42%}.list-skeleton__row span+span{inline-size:24%}@keyframes skeleton-pulse{to{opacity:.45}}.folder-picker{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-input);max-height:19rem;overflow:auto}.folder-picker__item{border:0;border-block-end:var(--rule-thin) solid var(--color-rule);color:var(--color-ink);cursor:pointer;align-items:center;gap:var(--space-md);min-height:60px;padding:var(--space-sm) var(--space-md);text-align:start;background:0 0;justify-content:space-between;width:100%;display:flex}.folder-picker__item:last-child{border-block-end:0}.folder-picker__item:hover{background:var(--color-paper-2)}.folder-picker__item:disabled{color:var(--color-muted);cursor:default}.folder-picker__item>span:first-child{min-width:0}.folder-picker__item strong,.folder-picker__item small{overflow-wrap:anywhere;display:block}.folder-picker__item small,.folder-picker__empty{color:var(--color-muted)}.folder-picker__empty a{color:var(--color-ink);font-weight:700;text-decoration:underline}.library-folder-dialog{max-width:38rem}.library-folder-dialog__content{gap:var(--space-lg);display:grid}.library-folder-dialog__content .form-stack>.button{justify-self:start}.library-folder-dialog__share{border-block-start:var(--rule-thin) solid var(--color-rule);gap:var(--space-md);padding-block-start:var(--space-lg);display:grid}.library-folder-dialog__share h3{font-size:var(--text-base);margin:0}.library-folder-dialog__share>p{color:var(--color-muted);font-size:var(--text-sm);margin:0}.library-folder-dialog__share>.button{justify-self:start}.library-folder-members{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-input)}.library-folder-member__actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.library-folder-member{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);justify-content:space-between;display:flex}.library-folder-member+.library-folder-member{border-block-start:var(--rule-thin) solid var(--color-rule)}.library-folder-member>span{min-width:0}.library-folder-member strong,.library-folder-member small{overflow-wrap:anywhere;display:block}.library-folder-member small{color:var(--color-muted)}.library-folder-dialog__danger{border-block-start:var(--rule-thin) solid var(--color-rule);padding-block-start:var(--space-md)}.pagination{border-block-start:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);flex-wrap:wrap;justify-content:space-between;display:flex}.pagination__step{min-height:44px;padding-inline:var(--space-md)}.pagination__pages{gap:var(--space-2xs);display:flex}.pagination__page{border-radius:var(--radius-pill);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-sm);justify-content:center;align-items:center;width:40px;height:40px;font-weight:700;display:inline-flex}.pagination__page[aria-current=page]{background:var(--color-action);color:var(--color-action-ink)}.question-filter-form{border-block-end:var(--rule-thin) solid var(--color-rule);gap:var(--space-md);padding:var(--space-md) var(--space-lg);display:grid}.question-filter-form__row{align-items:start;gap:var(--space-md);grid-template-columns:minmax(0,1fr);display:grid}.question-filter-form__clear{align-self:end}.question-filter-form__clear .button{min-height:44px}.question-filter-form .field-help{margin:0}.filter-empty{color:var(--color-muted);font-size:var(--text-sm)}.field-label{color:var(--color-ink);font-size:var(--text-sm);font-weight:700}.topic-dropdown{position:relative}.topic-dropdown__button{cursor:pointer;align-items:center;gap:var(--space-sm);text-align:start;justify-content:space-between;display:flex}.topic-dropdown__button>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topic-dropdown__button svg{transition:transform var(--dur-fast) var(--ease-out);flex:none}.topic-dropdown__button[aria-expanded=true] svg{transform:rotate(180deg)}.topic-dropdown__panel{background:var(--color-surface);border:var(--rule-thin) solid var(--color-control-border);border-radius:var(--radius-card);max-height:18rem;padding:var(--space-xs);z-index:var(--z-dropdown);position:absolute;inset-block-start:calc(100% + var(--space-2xs));inset-inline:0;overflow:auto}.topic-dropdown__list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.topic-dropdown__option{border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);align-items:center;gap:var(--space-sm);min-height:40px;padding:var(--space-2xs) var(--space-sm);display:flex}.topic-dropdown__option input{accent-color:var(--color-focus);width:18px;height:18px}.topic-dropdown__option:has(input:checked){background:var(--color-paper-2);font-weight:700}.topic-dropdown__option:has(input:focus-visible){outline:2px solid var(--color-focus);outline-offset:-2px}.topic-dropdown__clear{color:var(--color-muted);cursor:pointer;font-size:var(--text-sm);min-height:40px;padding:var(--space-xs) var(--space-sm);text-underline-offset:3px;background:0 0;border:0;width:100%;font-weight:700;text-decoration:underline}.session-topic-picker{min-width:0}.session-topic-picker .topic-dropdown__button{width:100%}.session-topic-picker__panel{grid-template-rows:auto minmax(0,1fr) auto;max-height:min(18rem,36dvh);display:grid;overflow:hidden}.session-topic-picker__search{border-block-end:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-xs);padding:var(--space-xs);display:flex}.session-topic-picker__search svg{color:var(--color-muted);flex:none}.session-topic-picker__search .input{width:100%;min-width:0}.session-topic-picker__list{min-height:0;overflow:auto}.session-topic-picker__list .filter-empty{margin:var(--space-sm)}.session-topic-picker__panel>.topic-dropdown__clear{border-block-start:var(--rule-thin) solid var(--color-rule)}@media (min-width:40rem){.question-filter-form__row{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (hover:hover) and (pointer:fine){.pagination__page:hover{background:var(--color-paper-2)}.pagination__page[aria-current=page]:hover{background:var(--color-action-hover)}.topic-dropdown__option:hover{background:var(--color-paper-2)}.topic-dropdown__clear:hover{color:var(--color-ink)}}@media (max-width:39.999rem){.pagination{justify-content:center}.pagination__pages{order:-1;justify-content:center;width:100%}.pagination__step{flex:1 1 0}}@media (hover:hover) and (pointer:fine){.student-link:hover{color:var(--color-accent)}.assignment-choice:hover,.response-card>summary:hover,.class-card__summary:hover{background:var(--color-paper-2)}.class-card__summary:hover .class-card__open svg{transform:translateX(var(--space-2xs))}}@media (min-width:52rem){.response-card__body{grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr)}}@media (max-width:39.999rem){.class-card__empty-state{grid-template-columns:minmax(0,1fr)}.class-card__empty-state .button{justify-self:stretch;width:100%}.class-detail-dialog__heading{padding:var(--space-lg)}.class-detail-dialog__summary{padding-inline:var(--space-lg);grid-template-columns:repeat(2,minmax(0,1fr))}.class-detail-dialog__summary>div:not(.class-detail-dialog__actions){min-width:0}.class-detail-dialog__actions{border-block-start:var(--rule-thin) solid var(--color-rule);grid-column:1/-1;justify-content:flex-start;padding-block-start:var(--space-sm)}.class-detail-dialog__layout{grid-template-columns:minmax(0,1fr)}.class-roster{border-block-end:var(--rule-thin) solid var(--color-rule);border-inline-end:0}.class-roster__head,.class-student{padding-inline:var(--space-lg)}.class-roster__list{max-height:18rem}.class-invite-tools__share .button,.class-invite-tools__email>.button{justify-self:stretch;width:100%}.inline-control{grid-template-columns:minmax(0,1fr)}.inline-control .button{width:100%}.assignment-choice{grid-template-columns:auto minmax(0,1fr)}.assignment-choice .badge{grid-column:2;justify-self:start}.response-summary{grid-template-columns:minmax(0,1fr)}.response-card>summary{flex-direction:column;align-items:flex-start}}@media (hover:hover) and (pointer:fine){.login-split__statement>p:last-child{display:block}}@media (min-width:48rem){.login-split{grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);grid-template-areas:"form visual"}.login-split__form-pane,.login-split__visual{min-height:100dvh}.login-split__form-pane,.login-split__statement{padding:clamp(var(--space-xl), 5vw, var(--space-3xl))}.login-split__form-wrap{padding-block:var(--space-xl)}.login-split__statement h2{font-size:clamp(var(--text-2xl), 4vw, var(--text-3xl));max-width:14ch}}@media (prefers-reduced-motion:reduce){.login-split__statement>p:last-child{display:none}}.dialog-card--session{max-width:min(64rem, calc(100% - var(--space-lg)));padding:0;overflow:hidden}.dialog-card--session[data-step="2"][data-format=CODE]{block-size:min(88dvh,52rem)}.dialog-card--session[open]{flex-direction:column;display:flex}.dialog-card--session[data-published=true]{max-width:30rem;padding:var(--space-xl);overflow:visible}.dialog-card--generator{max-width:min(52rem, calc(100% - var(--space-lg)));padding:0;overflow:hidden}.dialog-card--generator[open]{flex-direction:column;display:flex}.dialog-card--generator[data-step=review]{block-size:min(88dvh,52rem)}.session-builder__heading{align-items:start;gap:var(--space-md);padding:var(--space-lg) var(--space-lg) var(--space-md) var(--space-xl);flex:none;justify-content:space-between;display:flex}.session-builder__heading>div{min-width:0}.session-builder__heading h2{font-size:var(--text-xl);margin:0 0 var(--space-2xs)}.session-builder__heading p{color:var(--color-muted);font-size:var(--text-sm);margin:0}.session-stepper{border-block-end:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-xs);padding:0 var(--space-xl) var(--space-md);flex:none;margin:0;list-style:none;display:flex}.session-stepper li{min-width:0;display:flex}.session-stepper button{border-radius:var(--radius-pill);color:var(--color-muted);cursor:pointer;font-size:var(--text-sm);align-items:center;gap:var(--space-xs);outline-offset:2px;min-height:40px;padding:0 var(--space-md) 0 calc((40px - 28px) / 2);transition:background-color var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out);white-space:nowrap;background:0 0;border:0;outline:2px solid #0000;flex:none;font-weight:700;display:inline-flex}.session-stepper button:focus-visible{outline-color:var(--color-focus)}.session-stepper button:disabled{cursor:not-allowed}.session-stepper button[aria-current=step]{cursor:default}.session-stepper__marker{border:1.5px solid var(--color-rule-2);block-size:28px;color:var(--color-ink-2);font-family:var(--font-mono);font-size:var(--text-xs);inline-size:28px;transition:background-color var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out);background:0 0;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.session-stepper li[data-state=current] button{background:var(--color-action);color:var(--color-accent)}.session-stepper li[data-state=current] .session-stepper__marker{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink)}.session-stepper li[data-state=complete] button{color:var(--color-ink)}.session-stepper li[data-state=complete] .session-stepper__marker{background:var(--color-paper-3);border-color:var(--color-paper-3);color:var(--color-ink)}.session-stepper li[data-state=upcoming] button:not(:disabled){color:var(--color-ink-2)}.session-builder__form{min-block-size:0;flex-direction:column;flex:auto;min-width:0;display:flex}.session-builder__body{overscroll-behavior:contain;min-block-size:0;padding:var(--space-lg) var(--space-xl) var(--space-xl);flex:auto;overflow-y:auto}.session-step{align-content:start;gap:var(--space-xl);min-width:0;display:grid}.session-step[hidden]{display:none}.session-step:focus{outline:none}.session-step--questions{gap:var(--space-xs)}.session-basics,.session-schedule__times{gap:var(--space-lg);grid-template-columns:minmax(0,1fr);display:grid}.session-schedule{gap:var(--space-md);border:0;min-width:0;margin:0;padding:0;display:grid}.session-schedule legend{color:var(--color-ink);font-family:var(--font-display);margin-block-end:var(--space-md);padding:0;font-weight:700}.session-schedule__length{align-items:center;gap:var(--space-sm) var(--space-md);flex-wrap:wrap;display:flex}.duration-presets{gap:var(--space-xs);flex-wrap:wrap;display:flex}.session-schedule__length .field-help{margin:0}.session-options{border:0;min-width:0;margin:0;padding:0;display:grid}.session-options legend{color:var(--color-ink);font-family:var(--font-display);margin-block-end:var(--space-md);padding:0;font-weight:700}.session-option-list{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);overflow:clip}.session-option{border-block-end:var(--rule-thin) solid var(--color-rule);cursor:pointer;align-items:start;gap:var(--space-md);padding:var(--space-md) var(--space-lg);transition:background-color var(--dur-fast) var(--ease-out);grid-template-columns:auto minmax(0,1fr);display:grid}.session-option:last-child{border-block-end:0}.session-option input{accent-color:var(--color-focus);block-size:18px;inline-size:18px;margin:2px 0 0}.session-option strong{color:var(--color-ink);display:block}.session-option small{color:var(--color-muted);font-size:var(--text-sm);margin-block-start:var(--space-2xs);display:block}.session-option:has(input:checked){background:var(--color-paper-2)}.session-option:has(input:focus-visible){outline:2px solid var(--color-focus);outline-offset:-2px}.session-format{border:0;min-width:0;margin:0;padding:0;display:grid}.session-format legend{color:var(--color-ink);font-family:var(--font-display);margin-block-end:var(--space-md);padding:0;font-weight:700}.session-format__options{gap:var(--space-sm);grid-template-columns:minmax(0,1fr);display:grid}.session-format__option{border:var(--rule-thin) solid var(--color-control-border);border-radius:var(--radius-card);cursor:pointer;align-items:start;gap:var(--space-sm);padding:var(--space-md) var(--space-md) var(--space-lg);transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);grid-template-columns:minmax(0,1fr);display:grid;position:relative}.session-format__option input{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;margin:0;position:absolute;overflow:hidden}.session-format__option>svg{block-size:24px;color:var(--color-ink-2);inline-size:24px}.session-format__option strong{color:var(--color-ink);display:block}.session-format__option small{color:var(--color-muted);font-size:var(--text-sm);margin-block-start:var(--space-2xs);display:block}.session-format__option:has(input:checked){background:var(--color-paper-3);border-color:var(--color-ink);box-shadow:0 0 0 1px var(--color-ink)}.session-format__option:has(input:focus-visible){outline:2px solid var(--color-focus);outline-offset:2px}.question-toolbar{background:var(--color-surface);gap:var(--space-md);display:grid}.question-toolbar__filters{gap:var(--space-sm) var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.question-toolbar__search{grid-column:1/-1}.question-toolbar .field{min-width:0}.question-toolbar .input,.question-toolbar .select{font-size:var(--text-sm);min-height:44px}.question-toolbar .field-label{width:auto}.input-with-icon{align-items:center;display:flex;position:relative}.input-with-icon>svg{color:var(--color-muted);pointer-events:none;position:absolute;inset-inline-start:var(--space-sm)}.input-with-icon .input{padding-inline-start:calc(var(--space-sm) + 16px + var(--space-xs))}.question-toolbar__bar{border-block-start:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-sm) var(--space-md);flex-wrap:wrap;justify-content:space-between;padding-block-start:var(--space-sm);display:flex}.question-toolbar__summary{align-items:baseline;gap:var(--space-2xs) var(--space-sm);flex-wrap:wrap;margin:0;display:flex}.question-toolbar__summary strong{color:var(--color-ink)}.question-toolbar__summary span{color:var(--color-muted);font-size:var(--text-sm)}.question-toolbar__actions{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.check-chip{border:var(--rule-thin) solid var(--color-control-border);border-radius:var(--radius-pill);color:var(--color-ink);cursor:pointer;font-size:var(--text-sm);align-items:center;gap:var(--space-xs);min-height:40px;padding-inline:var(--space-sm) var(--space-md);transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);white-space:nowrap;font-weight:700;display:inline-flex}.check-chip input{accent-color:var(--color-focus);block-size:16px;inline-size:16px;margin:0}.check-chip small{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs)}.check-chip:has(input:checked){background:var(--color-paper-3);border-color:var(--color-ink-2)}.check-chip:has(input:focus-visible){outline:2px solid var(--color-focus);outline-offset:2px}.question-picker{gap:var(--space-sm);border:0;min-width:0;margin:0;padding:0;display:grid}.question-options{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);overflow:clip}.question-choice{border-block-end:var(--rule-thin) solid var(--color-rule);cursor:pointer;align-items:center;gap:var(--space-md);min-height:60px;padding:var(--space-sm) var(--space-md);transition:background-color var(--dur-fast) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.question-choice:last-child{border-block-end:0}.question-choice input{accent-color:var(--color-focus);block-size:18px;inline-size:18px;margin:0}.question-choice:has(input:checked){background:var(--color-paper-2)}.question-choice:has(input:focus-visible){outline:2px solid var(--color-focus);outline-offset:-2px}.question-choice__copy{min-width:0}.question-choice__copy strong{color:var(--color-ink);overflow-wrap:anywhere;display:block}.question-choice__copy small{color:var(--color-muted);font-size:var(--text-xs);max-width:100%;margin-block-start:2px}.question-choice__topics{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.question-options__status{color:var(--color-muted);font-size:var(--text-xs);text-align:center;min-height:1.5em}.session-review__block{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);min-width:0;overflow:clip}.session-review__heading{background:var(--color-paper-2);border-block-end:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-md);min-height:56px;padding:var(--space-sm) var(--space-sm) var(--space-sm) var(--space-lg);justify-content:space-between;display:flex}.session-review__heading>div{min-width:0}.session-review__heading h3{font-size:var(--text-base);margin:0}.session-review__heading p{color:var(--color-muted);font-size:var(--text-sm);margin:var(--space-2xs) 0 0}.session-review__facts{gap:var(--space-md) var(--space-lg);padding:var(--space-lg);grid-template-columns:minmax(0,1fr);margin:0;display:grid}.session-review__facts>div{min-width:0}.session-review__facts dt{color:var(--color-muted);font-size:var(--text-xs);font-weight:700}.session-review__facts dd{color:var(--color-ink);margin:var(--space-2xs) 0 0;overflow-wrap:anywhere;font-weight:600}.session-review__facts dd small{color:var(--color-muted);font-size:var(--text-sm);font-weight:500;display:block}.session-review__questions{margin:0;padding:0;list-style:none}.session-review__questions li{border-block-end:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-md);min-height:60px;padding:var(--space-sm) var(--space-lg);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.session-review__questions li:last-child{border-block-end:0}.session-review__index{border:var(--rule-thin) solid var(--color-rule-2);block-size:26px;color:var(--color-ink-2);font-family:var(--font-mono);font-size:var(--text-xs);border-radius:50%;justify-content:center;align-items:center;inline-size:26px;display:inline-flex}.session-review__question{min-width:0}.session-review__question strong{color:var(--color-ink);overflow-wrap:anywhere;display:block}.session-review__question small{color:var(--color-muted);font-size:var(--text-xs)}.session-review__options{gap:var(--space-xs) var(--space-xl);padding:var(--space-lg);flex-wrap:wrap;margin:0;list-style:none;display:flex}.session-review__options li{color:var(--color-ink);font-weight:600}.session-builder__footer{background:var(--color-surface);border-block-start:var(--rule-thin) solid var(--color-rule);padding:var(--space-md) var(--space-xl);flex:none}.session-builder__footer .form-message{text-align:end;min-height:0}.session-builder__footer .form-message:not(:empty){margin-block-end:var(--space-sm)}.session-builder__actions{align-items:center;gap:var(--space-sm);justify-content:space-between;display:flex}@media (hover:hover) and (pointer:fine){.session-stepper button:not(:disabled):not([aria-current=step]):hover{background:var(--color-paper-2);color:var(--color-ink)}.check-chip:hover{background:var(--color-paper-2);border-color:var(--color-control-border-hover)}.question-choice:hover,.session-option:hover{background:var(--color-paper-2)}.session-format__option:not(:has(input:checked)):hover{border-color:var(--color-control-border-hover)}}@media (min-width:40rem){.session-basics,.session-schedule__times,.session-format__options{grid-template-columns:repeat(2,minmax(0,1fr))}.question-toolbar{padding-block:var(--space-lg) var(--space-sm);z-index:2;margin-block-start:calc(var(--space-lg) * -1);position:sticky;inset-block-start:calc(var(--space-lg) * -1)}.question-toolbar__filters{grid-template-columns:repeat(4,minmax(0,1fr))}.session-review__facts{grid-template-columns:repeat(2,minmax(0,1fr))}.session-review__window{grid-column:1/-1}.question-filter-form__row{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:56rem){.question-toolbar__filters{grid-template-columns:minmax(0,1.5fr) repeat(4,minmax(0,1fr))}.question-toolbar__search{grid-column:auto}.session-review__facts{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr) minmax(0,1.6fr)}.session-review__window{grid-column:auto}}@media (min-width:85rem){.question-filter-form__row{grid-template-columns:10rem 10rem minmax(0,1fr) minmax(0,1fr) 10rem auto}}@media (max-width:39.999rem){.dialog-card--session{max-height:calc(100dvh - var(--space-sm));max-width:calc(100% - var(--space-sm))}.dialog-card--session[data-step="2"][data-format=CODE]{block-size:calc(100dvh - var(--space-sm))}.dialog-card--session[data-published=true]{max-height:min(88dvh,52rem);max-width:calc(100% - var(--space-lg));padding:var(--space-lg)}.session-builder__heading{padding:var(--space-md) var(--space-sm) var(--space-sm) var(--space-lg)}.session-stepper{padding-inline:var(--space-lg)}.session-builder__body{padding:var(--space-md) var(--space-lg) var(--space-lg)}.session-builder__footer{padding:var(--space-sm) var(--space-lg)}.session-builder__actions .button{flex:1 1 0}.session-review__heading{padding-inline-start:var(--space-md)}.session-review__facts{padding:var(--space-md)}.session-review__questions li{gap:var(--space-sm);padding-inline:var(--space-md)}}@media (max-width:35.999rem){.session-stepper li:not([data-state=current]) .session-stepper__label{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.session-stepper li:not([data-state=current]) button{padding-inline-end:6px}}.report-note{color:var(--color-muted);font-size:var(--text-xs);margin-block-start:var(--space-xs);font-weight:400;display:block}.question-editor-fields{gap:var(--space-lg);border:0;min-width:0;margin:0;padding:0;display:grid}.question-editor-fields:disabled{opacity:.65}.question-preview,.question-validation{border-block-start:var(--rule-thin) solid var(--color-rule);min-width:0;padding-block-start:var(--space-lg)}.question-preview__prompt{white-space:pre-wrap}.question-preview pre{background:var(--color-editor);border-radius:var(--radius-input);color:var(--color-code);max-height:20rem;padding:var(--space-md);overflow:auto}.question-preview dd{overflow-wrap:anywhere;margin-inline-start:0}.question-validation{gap:var(--space-lg);display:grid}.question-validation__top{align-items:end;gap:var(--space-lg);justify-content:space-between;display:flex}.question-validation__top>div{min-width:0}.question-validation__top .eyebrow{margin:0 0 var(--space-xs)}.question-validation__top h3{font-size:var(--text-xl);margin:0 0 var(--space-xs)}.question-validation__top p:last-child{color:var(--color-muted);font-size:var(--text-sm);margin:0}.question-validation__top .button{flex:none}.question-validation__progress{color:var(--color-muted);font-size:var(--text-sm);margin:0}.question-validation__summary{border:var(--rule-thin) solid;border-radius:var(--radius-card);align-items:start;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);display:flex}.question-validation__summary>svg{flex:none;margin-block-start:var(--space-2xs)}.question-validation__summary strong{color:var(--color-ink);font-size:var(--text-base);display:block}.question-validation__summary p{color:var(--color-ink-2);font-size:var(--text-sm);margin:var(--space-2xs) 0 0;overflow-wrap:anywhere}.question-validation__summary--passed{background:var(--color-success-soft);border-color:var(--color-success);color:var(--color-success)}.question-validation__summary--failed{background:var(--color-error-soft);border-color:var(--color-error);color:var(--color-error)}.validation-results{gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.validation-results li{background:var(--color-paper);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);align-content:start;gap:var(--space-md);min-width:0;padding:var(--space-lg);display:grid}.validation-results li[data-result=failed]{border-color:var(--color-error)}.validation-results__heading{align-items:start;gap:var(--space-sm);justify-content:space-between;display:flex}.validation-results__heading strong{color:var(--color-ink);display:block}.validation-results__heading small{color:var(--color-muted);font-size:var(--text-xs);margin-block-start:var(--space-2xs);display:block}.validation-results__status{color:var(--color-success);font-size:var(--text-sm);align-items:center;gap:var(--space-2xs);flex:none;font-weight:700;display:inline-flex}.validation-results li[data-result=failed] .validation-results__status{color:var(--color-error)}.validation-results__values{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.validation-results__values div{min-width:0}.validation-results__values dt{color:var(--color-muted);font-size:var(--text-xs);margin-block-end:var(--space-2xs);font-weight:700}.validation-results__values dd{min-width:0;margin:0}.validation-results__values code{background:var(--color-paper-2);border-radius:var(--radius-input);color:var(--color-ink-2);font-size:var(--text-xs);min-height:2.5rem;padding:var(--space-sm);white-space:pre;display:block;overflow:auto}.validation-results__error{background:var(--color-error-soft);border-radius:var(--radius-input);color:var(--color-error);font-size:var(--text-sm);overflow-wrap:anywhere;padding:var(--space-sm);margin:0}.question-validation__footnote{color:var(--color-muted);font-size:var(--text-xs);margin:0}@media (max-width:39.999rem){.question-validation__top{flex-direction:column;align-items:stretch}.question-validation__top .button{width:100%}.validation-results{grid-template-columns:minmax(0,1fr)}}@media (max-width:25rem){.validation-results__values{grid-template-columns:minmax(0,1fr)}}.question-skills{align-content:start;gap:var(--space-sm);justify-items:start;display:grid}.skill-tags{gap:var(--space-xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.question-detail .skill-tags{padding:0}.skill-picker{gap:var(--space-xs);border:0;flex-wrap:wrap;min-width:0;margin:0;padding:0;display:flex}.skill-picker .check-chip{white-space:normal}.skill-rename .input{max-width:22rem}.skill-row__actions{gap:var(--space-xs);flex-wrap:wrap;justify-content:flex-end;display:flex}.skill-review{gap:var(--space-md);padding-block-end:var(--space-md);display:grid}.skill-review__bar{align-items:center;gap:var(--space-md);padding-inline:var(--space-lg);flex-wrap:wrap;display:flex}.skill-review__bar:first-child{padding-block-start:var(--space-md)}.skill-review__bar .form-message{margin:0}.skill-review__question{align-items:start;gap:var(--space-sm);display:flex}.skill-review__question strong,.skill-review__question small{display:block}.skill-review__question small{color:var(--color-muted);margin-block-start:var(--space-2xs);font-weight:400}.skill-review__table th[scope=row],.skill-review__table td:last-child{min-width:16rem}.organization-skills__review{align-items:center;gap:var(--space-sm) var(--space-md);flex-wrap:wrap;justify-content:space-between;margin-block-end:var(--space-lg);display:flex}.organization-skills__review p{color:var(--color-ink-2);margin:0}.session-audience{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-input);align-items:center;gap:var(--space-sm) var(--space-md);padding:var(--space-sm) var(--space-md);flex-wrap:wrap;justify-content:space-between;margin-block-start:var(--space-lg);display:flex}.session-audience p{color:var(--color-ink-2);overflow-wrap:anywhere;margin:0}.session-preset-note{background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-input);color:var(--color-ink-2);font-size:var(--text-sm);margin:0 0 var(--space-md);padding:var(--space-sm) var(--space-md)}.ai-sparkles{flex:none;overflow:visible}.ai-sparkles__star,.ai-sparkles__glint{transform-box:fill-box;transform-origin:50%}.ai-sparkles__star{fill:#0000;stroke:currentColor;transition:fill var(--dur-base) var(--ease-out), stroke var(--dur-base) var(--ease-out)}.button--ai{--ai-sheen:color-mix(in oklab, var(--color-accent) 60%, transparent);--ai-shimmer-base:var(--color-ink);--ai-shimmer-glint:var(--color-muted);isolation:isolate;position:relative;overflow:hidden}.button--primary.button--ai{--ai-sheen:color-mix(in oklab, var(--color-accent) 45%, transparent);--ai-shimmer-base:var(--color-action-ink);--ai-shimmer-glint:var(--color-accent)}.button--ai:after{background:linear-gradient(105deg, transparent 20%, var(--ai-sheen) 50%, transparent 80%);content:"";pointer-events:none;z-index:-1;position:absolute;inset:0;transform:translate(-100%)}.button--ai:not(:disabled) .ai-sparkles__glint{animation:ai-glint-idle 4.8s var(--ease-in-out) infinite}.button--ai:not(:disabled) .ai-sparkles__glint--bottom{animation-delay:1.6s}.button--ai:focus-visible:after{animation:ai-sheen .8s var(--ease-out)}.button--ai:focus-visible .ai-sparkles__star{animation:ai-spark .7s var(--ease-out);fill:var(--color-accent);stroke:var(--color-accent)}.button--ai:focus-visible .ai-sparkles__glint{animation:ai-glint-pop .6s var(--ease-out) both}@media (hover:hover) and (pointer:fine){.button--ai:hover:not(:disabled):after{animation:ai-sheen .8s var(--ease-out)}.button--ai:hover:not(:disabled) .ai-sparkles__star{animation:ai-spark .7s var(--ease-out);fill:var(--color-accent);stroke:var(--color-accent)}.button--ai:hover:not(:disabled) .ai-sparkles__glint{animation:ai-glint-pop .6s var(--ease-out) both}.button--ai:hover:not(:disabled) .ai-sparkles__glint--bottom{animation-delay:.12s}}.button--ai[data-state=loading]{opacity:1}.button--ai[data-state=loading] .ai-sparkles{animation:none}.button--ai[data-state=loading]:after{animation:ai-sheen 1.6s var(--ease-in-out) infinite}:is(.button--ai[data-state=loading],.ai-line[data-state=working],.ai-progress) .ai-sparkles__star{animation:ai-think 1.4s var(--ease-in-out) infinite;fill:var(--color-accent);stroke:var(--color-accent)}:is(.button--ai[data-state=loading],.ai-line[data-state=working],.ai-progress) .ai-sparkles__glint{animation:ai-glint-blink 1.4s var(--ease-in-out) infinite}:is(.button--ai[data-state=loading],.ai-line[data-state=working],.ai-progress) .ai-sparkles__glint--bottom{animation-delay:.7s}.ai-shimmer{background:linear-gradient(90deg, var(--ai-shimmer-base,var(--color-muted)) 0 35%, var(--ai-shimmer-glint,var(--color-ink)) 50%, var(--ai-shimmer-base,var(--color-muted)) 65% 100%) 0 0 / 300% 100%;color:#0000;-webkit-background-clip:text;background-clip:text;animation:2s linear infinite ai-shimmer}.ai-line{--ai-shimmer-base:var(--color-muted);--ai-shimmer-glint:var(--color-ink);color:var(--color-muted);font-size:var(--text-sm);align-items:center;gap:var(--space-xs);margin:0;display:flex}.ai-line[data-state=failed]{color:var(--color-ink-2);align-items:start}.ai-line[data-state=failed] svg{color:var(--color-warning);flex:none;margin-block-start:3px}.ai-note{animation:ai-note-in var(--dur-slow) var(--ease-out) both;background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-md);gap:var(--space-2xs);isolation:isolate;padding:var(--space-sm) var(--space-md);display:grid;position:relative;overflow:hidden}.ai-note:after{animation:ai-sheen 1s var(--ease-out) .15s both;background:linear-gradient(105deg, transparent 25%, color-mix(in oklab, var(--color-accent) 40%, transparent) 50%, transparent 75%);content:"";pointer-events:none;z-index:-1;position:absolute;inset:0}.ai-note__title{color:var(--color-ink);font-size:var(--text-sm);align-items:center;gap:var(--space-2xs) var(--space-xs);flex-wrap:wrap;margin:0;display:flex}.ai-note__title .ai-sparkles__star{animation:ai-spark .7s var(--ease-out) .15s both;fill:var(--color-accent);stroke:var(--color-accent)}.ai-note__title .ai-sparkles__glint{animation:ai-glint-pop .6s var(--ease-out) .25s both}.ai-note__reason{color:var(--color-ink-2);font-size:var(--text-sm);max-width:72ch;margin:0}.ai-note[data-settled]{background:0 0;border-style:dashed;animation:none}.ai-note[data-settled]:after{display:none}.ai-note[data-settled] .ai-sparkles__star,.ai-note[data-settled] .ai-sparkles__glint{fill:#0000;stroke:currentColor;animation:none}.ai-note[data-settled] :is(.ai-note__title,.ai-note__reason){color:var(--color-muted)}.ai-progress{--ai-shimmer-base:var(--color-ink);--ai-shimmer-glint:var(--color-muted);background:var(--color-surface);border:var(--rule-thin) solid var(--color-rule-2);border-radius:var(--radius-pill);color:var(--color-ink);font-size:var(--text-sm);align-items:center;gap:var(--space-xs);min-height:48px;padding-inline:var(--space-md);white-space:nowrap;font-weight:700;display:inline-flex}.ai-progress__count{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;font-weight:500}.ai-progress__bar{background:var(--color-paper-3);border-radius:var(--radius-pill);block-size:6px;inline-size:4.5rem;position:relative;overflow:hidden}.ai-progress__bar>span{background:var(--color-ink);border-radius:inherit;block-size:100%;inline-size:calc(var(--done,0) * 100%);transition:inline-size var(--dur-slow) var(--ease-out);display:block}.ai-progress__bar:after{animation:ai-sheen 1.6s var(--ease-in-out) infinite;background:linear-gradient(90deg, transparent, var(--color-accent), transparent);content:"";position:absolute;inset:0;transform:translate(-100%)}@keyframes ai-sheen{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes ai-spark{0%{transform:rotate(0)scale(1)}45%{transform:rotate(60deg)scale(1.22)}to{transform:rotate(90deg)scale(1)}}@keyframes ai-think{0%,15%{transform:rotate(0)scale(1)}60%{transform:rotate(70deg)scale(.82)}to{transform:rotate(90deg)scale(1)}}@keyframes ai-glint-pop{0%{opacity:0;transform:scale(.2)}60%{opacity:1;transform:scale(1.35)}to{opacity:1;transform:scale(1)}}@keyframes ai-glint-idle{0%,84%,to{opacity:1;transform:scale(1)}90%{opacity:.2;transform:scale(.3)}95%{opacity:1;transform:scale(1.25)}}@keyframes ai-glint-blink{0%,to{opacity:1;transform:scale(1)}50%{opacity:.15;transform:scale(.35)}}@keyframes ai-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@keyframes ai-note-in{0%{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){:is(.button--ai,.ai-note,.ai-progress__bar):after{display:none;animation:none!important}.ai-sparkles__star,.ai-sparkles__glint{animation:none!important}.ai-shimmer{color:var(--ai-shimmer-base,var(--color-muted));background:0 0;animation:none!important}.ai-note{animation-name:fade-in}}
