*{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:var(--color-scrim);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);text-wrap:pretty;white-space:normal}.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],.question-tab[aria-pressed=true]{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)}.prompt-text{gap:var(--space-sm);overflow-wrap:anywhere;line-height:1.6;display:grid}.prompt-text>*{margin:0}.prompt-text h3,.prompt-text h4{font-size:var(--text-base);margin-block-start:var(--space-xs)}.prompt-text ul,.prompt-text ol{gap:var(--space-2xs);padding-inline-start:var(--space-lg);display:grid}.prompt-text :not(pre)>code{background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);padding:.05em .35em;font-size:.9em}.prompt-text pre{background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);font-size:var(--text-sm);padding:var(--space-sm) var(--space-md);overflow:auto}.prompt-text a{text-decoration:underline;-webkit-text-decoration-color:var(--color-rule-2);text-decoration-color:var(--color-rule-2);text-underline-offset:3px;font-weight:600}.prompt-text a:hover{text-decoration-color:currentColor}.prompt-text blockquote{border-inline-start:3px solid var(--color-rule-2);color:var(--color-muted);padding-inline-start:var(--space-md)}.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)}.result-row__error{white-space:pre;overflow-x:auto}.result-row__hint{color:var(--color-code);font-family:var(--font-body);font-variant-numeric:lining-nums}.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)}}@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))}@media (prefers-color-scheme:dark){.app-theme:not([data-theme=light]) select.select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f1f2ee' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}}.app-theme[data-theme=dark] select.select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f1f2ee' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}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}.google-button{justify-content:center;width:100%;text-decoration:none}.google-button svg{flex:none}.auth-divider{color:var(--color-muted);font-size:var(--text-xs);align-items:center;gap:var(--space-md);margin:0;display:flex}.auth-divider:before,.auth-divider:after{border-block-start:var(--rule-thin) solid var(--color-rule);content:"";flex:1}.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-shadow) 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-shadow) 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}.action-error{text-align:end;max-width:24rem}.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}.join-hero{background:var(--color-surface);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);gap:var(--space-sm);min-width:0;padding:var(--space-xl) var(--space-lg);text-align:center;justify-items:center;display:grid}.join-hero h2{font-size:var(--text-xl);margin:0}.join-hero p{color:var(--color-muted);max-width:40ch;margin:0}.join-hero .join-form{width:100%;max-width:32rem;margin-block-start:var(--space-xs)}.join-form--large{gap:var(--space-sm)}.join-form--large .input{font-size:var(--text-xl);letter-spacing:.12em;min-height:64px;padding-inline:var(--space-lg);text-align:center;text-transform:uppercase}.join-form--large .input::placeholder{font-size:var(--text-base);letter-spacing:0;text-transform:none}.join-form--large .button{min-width:8rem;min-height:64px;padding-inline:var(--space-xl)}.join-form--large .join-form__error{text-align:center}.student-classes{gap:var(--space-sm);margin:0;padding:0;list-style:none;display:grid}.student-classes__item{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);gap:var(--space-2xs);padding:var(--space-md);display:grid}.student-classes__heading{align-items:center;gap:var(--space-sm);flex-wrap:wrap;justify-content:space-between;display:flex}.student-classes__name{font-size:var(--text-base);overflow-wrap:anywhere;min-width:0}.student-classes__dates,.student-classes__teachers{color:var(--color-muted);font-size:var(--text-sm)}.student-classes__empty{color:var(--color-muted);margin:0}.form-message--success{color:var(--color-success)}.settings-page{max-width:64rem;display:grid}.settings-page .page-head{padding-block-end:var(--space-xl)}.settings-page .page-head .back-link{margin-block-end:var(--space-sm)}.settings-sections{display:grid}.settings-section{border-block-start:var(--rule-thin) solid var(--color-rule);gap:var(--space-md) var(--space-xl);padding-block:var(--space-xl);display:grid}.settings-section__intro{min-width:0}.settings-section__intro h2{font-size:var(--text-lg);margin:0 0 var(--space-xs)}.settings-section__intro p{color:var(--color-muted);font-size:var(--text-sm);max-width:46ch;margin:0}.settings-card{background:var(--color-surface);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);min-width:0;display:grid;overflow:clip;container-type:inline-size}.settings-card__body{align-content:start;gap:var(--space-lg);padding:var(--space-md);display:grid}.settings-card__body>.avatar-uploader{border-block-end:var(--rule-thin) solid var(--color-rule);padding-block-end:var(--space-lg)}.settings-card .avatar-uploader__body{flex-basis:11rem}.settings-card__text{color:var(--color-ink-2);font-size:var(--text-sm);max-width:62ch;margin:0}.settings-card__foot{background:var(--color-paper-2);border-block-start:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-sm) var(--space-md);padding:var(--space-sm) var(--space-md);flex-wrap:wrap;justify-content:flex-end;display:flex}.settings-card__foot .form-message,.settings-card__note{flex:16rem;min-height:0;margin:0}.settings-card__note{color:var(--color-muted);font-size:var(--text-sm)}.settings-card__foot .button{min-height:44px;padding-inline:var(--space-lg)}.settings-card .form-message:empty{display:none}.settings-card .input[readonly]{background:var(--color-paper-2);color:var(--color-muted);cursor:default}.settings-fields{grid-template-columns:minmax(0,1fr)}.settings-status{align-items:start;gap:var(--space-sm);justify-items:start;display:grid}.settings-facts{gap:var(--space-sm);margin:0;display:grid}.settings-facts>div{border-block-start:var(--rule-thin) solid var(--color-rule);align-items:baseline;gap:var(--space-2xs) var(--space-md);flex-wrap:wrap;justify-content:space-between;padding-block-start:var(--space-md);display:flex}.settings-facts dt{color:var(--color-muted);font-size:var(--text-sm)}.settings-facts dd{color:var(--color-ink);overflow-wrap:anywhere;margin:0;font-weight:700}@container (min-width:34rem){.settings-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-fields__new-row{grid-column-start:1}}@media (min-width:40rem){.settings-card__body{padding:var(--space-lg)}.settings-card__foot{padding-inline:var(--space-lg)}}@media (min-width:56rem){.settings-section{grid-template-columns:minmax(0,17rem) 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-selected);color:var(--color-accent)}.navigation-progress{pointer-events:none;z-index:40;block-size:3px;position:fixed;inset:0 0 auto}.navigation-progress span{background:var(--color-focus);opacity:0;transform-origin:0;block-size:100%;display:block;transform:scaleX(0)}.shell[data-navigation=loading] .navigation-progress span{opacity:1;transition:opacity var(--dur-fast) var(--ease-out), transform 8s cubic-bezier(.08, .82, .17, 1);transform:scaleX(.9)}.shell[data-navigation=done] .navigation-progress span{opacity:0;transition:transform var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out) var(--dur-fast);transform:scaleX(1)}.shell[data-navigation=loading] .shell__main{opacity:.6;transition:opacity var(--dur-base) var(--ease-out)}@media (prefers-reduced-motion:reduce){.navigation-progress span,.shell[data-navigation] .navigation-progress span{transform:none}}.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:var(--color-scrim)}.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}.problem-generator{background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);gap:var(--space-md);padding:var(--space-md);margin-block-end:var(--space-lg);display:grid}.problem-generator__heading{align-items:start;gap:var(--space-sm);justify-content:space-between;display:flex}.problem-generator__heading h3{font-size:var(--text-base);align-items:center;gap:var(--space-xs);margin:0 0 var(--space-2xs);display:flex}.problem-generator__heading p{color:var(--color-muted);font-size:var(--text-sm);margin:0}.problem-generator__heading p.problem-generator__allowance{color:var(--color-warning);margin-block-start:var(--space-2xs);font-weight:600}.problem-generator__form,.problem-generator__fields{gap:var(--space-md);display:grid}.problem-generator__fields,.problem-generator__choice{border:0;min-width:0;margin:0;padding:0}.problem-generator__row{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));display:grid}.problem-generator__choice{gap:var(--space-xs);display:grid}.problem-generator__choice legend{color:var(--color-ink);font-size:var(--text-sm);margin-block-end:var(--space-2xs);padding:0;font-weight:700}.problem-generator__chips{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.problem-generator__footer{align-items:center;gap:var(--space-sm);flex-wrap:wrap;justify-content:space-between;display:flex}.problem-generator__actions{gap:var(--space-sm);flex-wrap:wrap;justify-content:flex-end;margin-inline-start:auto;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],.question-tab[aria-pressed=true]{background:var(--color-selected);border-color:var(--color-selected);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)}.pane-divider{display:none}.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-selected-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}.join-form{grid-template-columns:minmax(0,1fr) auto}.join-form .button{min-width:5.5rem;padding-inline:var(--space-md)}.join-hero{padding:var(--space-lg) var(--space-md)}.join-form--large{grid-template-columns:minmax(0,1fr)}.join-form--large .input{font-size:var(--text-lg);letter-spacing:.08em}.join-form--large .button{width:100%;min-width:0}.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)}.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-areas:"prompt split-x editor""prompt split-x split-y""prompt split-x results";grid-template-columns:clamp(16rem, var(--prompt-width,32%), calc(100% - 24rem)) 1px minmax(0, 1fr);grid-template-rows:minmax(0, 1fr) 1px clamp(5rem, var(--results-height,28%), calc(100% - 8rem));height:auto}.workspace-grid[data-dragging=column]{cursor:col-resize;-webkit-user-select:none;user-select:none}.workspace-grid[data-dragging=row]{cursor:row-resize;-webkit-user-select:none;user-select:none}.prompt-pane{border-block-end:0;grid-area:prompt}.editor-pane{grid-area:editor}.results-pane{grid-area:results}.pane-divider{background:var(--color-rule);touch-action:none;transition:background-color var(--dur-fast) var(--ease-out);z-index:2;display:block;position:relative}.pane-divider:after{content:"";position:absolute;inset:0 -5px}.pane-divider--column{cursor:col-resize;grid-area:split-x}.pane-divider--row{background:var(--color-editor-rule);cursor:row-resize;grid-area:split-y}.pane-divider--row:after{inset:-5px 0}.pane-divider:hover,.pane-divider:focus-visible,.pane-divider[data-dragging]{background:var(--color-focus);box-shadow:0 0 0 1px var(--color-focus);outline:none}.pane-divider__grip{background:var(--color-rule-2);border-radius:var(--radius-pill);pointer-events:none;transition:background-color var(--dur-fast) var(--ease-out), block-size var(--dur-fast) var(--ease-out), inline-size var(--dur-fast) var(--ease-out);position:absolute;inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.pane-divider--column .pane-divider__grip{block-size:32px;inline-size:5px}.pane-divider--row .pane-divider__grip{background:var(--color-code-muted);block-size:5px;inline-size:32px}.pane-divider:hover .pane-divider__grip,.pane-divider:focus-visible .pane-divider__grip,.pane-divider[data-dragging] .pane-divider__grip{background:var(--color-accent);box-shadow:0 0 0 1px var(--color-focus)}.pane-divider--column:hover .pane-divider__grip,.pane-divider--column[data-dragging] .pane-divider__grip{block-size:44px}.pane-divider--row:hover .pane-divider__grip,.pane-divider--row[data-dragging] .pane-divider__grip{inline-size:44px}.pane-divider__hint{background:var(--color-ink);border:var(--rule-thin) solid color-mix(in oklch, var(--color-paper) 18%, transparent);border-radius:var(--radius-sm);box-shadow:0 8px 24px color-mix(in oklch, var(--color-shadow) 18%, transparent);color:var(--color-paper);cursor:default;font-size:var(--text-sm);opacity:0;padding:var(--space-xs) var(--space-sm);pointer-events:none;transition:opacity var(--dur-fast) var(--ease-out), visibility 0s linear var(--dur-fast);visibility:hidden;white-space:nowrap;z-index:var(--z-toast);gap:2px;font-weight:600;line-height:1.35;display:grid;position:absolute}.pane-divider__hint-sub{opacity:.7;font-weight:400}.pane-divider--column .pane-divider__hint{inset-block-start:clamp(2rem, var(--pointer,50%), calc(100% - 2rem));inset-inline-start:calc(100% + 14px);transform:translateY(-50%)}.pane-divider--row .pane-divider__hint{inset-block-end:calc(100% + 14px);inset-inline-start:clamp(9rem, var(--pointer,50%), calc(100% - 9rem));transform:translate(-50%)}.pane-divider:hover .pane-divider__hint{opacity:1;visibility:visible;transition-delay:.5s}.pane-divider:focus-visible .pane-divider__hint{opacity:1;visibility:visible;transition-delay:0s}.workspace-grid[data-dragging] .pane-divider__hint{opacity:0;visibility:hidden;transition:none}}@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-selected);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-shadow) 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-selected);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-selected-hover);color:var(--color-accent)}}@media (prefers-reduced-motion:reduce){.account-menu__panel{animation-name:fade-in}}.theme-switch{align-items:center;gap:var(--space-sm);min-height:44px;padding-inline:var(--space-sm) 0;justify-content:space-between;display:flex}.theme-switch__label{color:var(--color-ink);font-size:var(--text-sm);font-weight:600}.theme-switch__options{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-pill);padding:3px;display:inline-flex}.theme-switch__options button{border-radius:var(--radius-pill);color:var(--color-muted);cursor:pointer;min-block-size:36px;min-inline-size:40px;transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.theme-switch__options button[aria-pressed=true]{background:var(--color-selected);color:var(--color-accent)}@media (hover:hover) and (pointer:fine){.theme-switch__options button:not([aria-pressed=true]):hover{color:var(--color-ink)}}@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-ink);border-radius:var(--radius-sm);color:var(--color-paper);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-accent-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-accent-ink) 20%);color:var(--color-accent-ink)}.session-settings li[data-on] svg{color:var(--color-accent-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);grid-template-columns:minmax(0,1fr);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)}.report-table tr[data-removed] td:not(:nth-child(2)){opacity:.62}.report-table tr[data-removed] .student-link strong{color:var(--color-muted)}.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)}.other-classes{margin-block-start:var(--space-2xl)}.other-classes__head h2{font-size:var(--text-lg);margin:0}.other-classes__head p{color:var(--color-muted);font-size:var(--text-sm);margin:var(--space-2xs) 0 0;max-width:60ch}.other-classes .class-grid{margin-block-start:var(--space-md)}a.class-card__summary{color:var(--color-ink-2);text-decoration:none}.class-card__status{justify-self:start;margin-block-start:var(--space-xs)}.class-card__teachers{color:var(--color-ink-2);font-size:var(--text-sm);align-items:center;gap:var(--space-2xs) var(--space-sm);flex-wrap:wrap;min-width:0;display:flex}.class-card__teachers-label{color:var(--color-muted)}.class-card__teacher{align-items:center;gap:var(--space-xs);overflow-wrap:anywhere;min-width:0;display:inline-flex}.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);flex-wrap:wrap;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__tabs{background:0 0;border:0;min-height:0;padding:0}.class-roster__tabs .question-tab{min-height:32px;padding:var(--space-2xs) var(--space-sm)}.class-roster__note{align-items:center;gap:var(--space-xs);min-height:0;padding:0 var(--space-xl) var(--space-sm);flex-wrap:wrap;display:flex}.class-roster__note:empty{display:none}.class-roster__note .button{min-height:32px}.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 2rem minmax(0,1fr) auto;display:grid}.class-student__index{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs)}.class-student__link{text-underline-offset:3px;width:fit-content;min-width:0;max-width:100%}.class-student__link:hover strong{text-decoration:underline}.dialog-heading__link{text-decoration:underline;-webkit-text-decoration-color:var(--color-rule-2);text-decoration-color:var(--color-rule-2);text-underline-offset:4px}.dialog-heading__link:hover{text-decoration-color:currentColor}.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-student[data-removed] strong,.class-student[data-removed] .class-student__index{color:var(--color-muted)}.class-student[data-removed] .avatar{opacity:.55}.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}.class-teachers{border-block-start:var(--rule-thin) solid var(--color-rule);gap:var(--space-sm);padding:var(--space-lg);display:grid}.class-teachers h3{font-size:var(--text-base);margin:0}.class-teachers ul{gap:var(--space-xs);margin:0;padding:0;list-style:none;display:grid}.class-teachers li{font-size:var(--text-sm);align-items:center;gap:var(--space-sm);justify-content:space-between;min-height:2rem;display:flex}.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)}.organization-invite{justify-items:stretch}.organization-invite .section-stack{gap:var(--space-md);margin-block-start:var(--space-sm)}.organization-invite .config-note{margin:0}.google-choice{gap:var(--space-sm);width:100%;display:grid}.google-choice__option{background:var(--color-surface);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-md);color:var(--color-ink);cursor:pointer;align-items:center;gap:var(--space-2xs) var(--space-md);padding:var(--space-md) var(--space-lg);text-align:start;grid-template-columns:auto 1fr auto;display:grid}.google-choice__option:hover{border-color:var(--color-ink)}.google-choice__option[aria-pressed=true]{border-color:var(--color-ink);box-shadow:0 0 0 1px var(--color-ink)}.google-choice__option:disabled{cursor:progress}.google-choice__option>svg:first-child{color:var(--color-muted);grid-row:span 2}.google-choice__option strong{font-size:var(--text-base)}.google-choice__option span{color:var(--color-muted);font-size:var(--text-sm);grid-column:2}.google-choice__option>svg:last-child{grid-area:1/3/span 2}.google-choice__option[data-state=loading]>svg:last-child{animation:spin var(--dur-slow) linear infinite}.google-choice .config-note{margin:0}.google-choice .config-note>div{color:var(--color-ink);gap:var(--space-xs);font-size:var(--text-sm);display:grid}.google-choice .form-message:empty{display:none}.organization-invite .config-note>div{color:var(--color-ink);gap:var(--space-xs);font-size:var(--text-sm);display:grid}.organization-invite .config-note p{color:var(--color-ink-2)}.organization-invite .config-note ul{margin:0;padding-inline-start:1.2em}.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}.plan-notice{background:var(--color-warning-soft);border:var(--rule-thin) solid var(--color-warning);border-radius:var(--radius-card);color:var(--color-ink);align-items:start;gap:var(--space-sm);padding:var(--space-md);margin-block-end:var(--space-lg);display:flex}.plan-notice>svg{color:var(--color-warning);flex:none;margin-block-start:.2em}.plan-notice>div{gap:var(--space-2xs);min-width:0;display:grid}.plan-notice p{color:var(--color-ink-2);max-width:none;margin:0}.plan-notice a{color:inherit;text-decoration:underline}.admin-plan{gap:var(--space-md) var(--space-lg);padding:var(--space-md) var(--space-lg) var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));margin:0;display:grid}.admin-plan dt{color:var(--color-muted);font-size:var(--text-sm)}.admin-plan dd{gap:var(--space-2xs);margin:var(--space-2xs) 0 0;display:grid}.admin-plan small{color:var(--color-muted);font-size:var(--text-xs)}.admin-plan .badge{justify-self:start}.plan-invite-note{color:var(--color-muted);font-size:var(--text-sm);max-width:22rem;margin:0}.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}.case-results .case-results__sql>div{grid-template-columns:7rem minmax(0,1fr)}.case-results pre{white-space:pre-wrap;margin:0;overflow:auto}.case-results .case-results__error{white-space:pre}.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}.panel__actions{align-items:center;gap:var(--space-sm);flex-wrap:wrap;flex:none;justify-content:flex-end;display:flex}.organization-person{gap:2px;min-width:0;display:grid}.organization-person strong{color:var(--color-ink);font-size:var(--text-base);overflow-wrap:anywhere;font-weight:700}.organization-person small{color:var(--color-muted);font-size:var(--text-sm);align-items:center;gap:var(--space-xs);flex-wrap:wrap;font-weight:400;display:flex}.organization-table th[scope=row]{color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-sm);letter-spacing:0;text-transform:none;font-weight:700}.organization-table td:last-child{width:1%}.organization-table .skill-row__actions{flex-wrap:nowrap}.organization-member__actions{align-items:center;gap:var(--space-xs);white-space:nowrap;justify-content:flex-end;display:flex}.organization-notice{background:var(--color-warning-soft);border-block-end:var(--rule-thin) solid var(--color-rule);color:var(--color-ink);align-items:center;gap:var(--space-sm) var(--space-md);padding:var(--space-md) var(--space-lg);flex-wrap:wrap;display:flex}.organization-notice>svg{color:var(--color-warning);flex:none}.organization-notice p{flex:16rem;max-width:none;margin:0}.organization-notice .button{margin-inline-start:auto}.organization-empty{margin:0}.organization-count{background:var(--color-paper-3);border-radius:var(--radius-pill);color:var(--color-ink);font-family:var(--font-mono);font-size:var(--text-xs);min-inline-size:1.5rem;padding-inline:var(--space-xs);justify-content:center;align-items:center;line-height:1.5rem;display:inline-flex}.organization-count--attention{background:var(--color-warning-soft);color:var(--color-warning)}.organization-dialog{text-align:start;white-space:normal;max-width:32rem;width:calc(100% - var(--space-lg))}.organization-dialog--list{max-width:42rem}.organization-dialog .form-message:empty{min-height:0}.organization-dialog .organization-role legend{font-family:var(--font-body);font-size:var(--text-sm);margin-block-end:var(--space-xs)}.organization-role .session-format__option{align-content:start}.organization-sent{background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);align-items:flex-start;gap:var(--space-sm);padding:var(--space-md);margin:0;display:flex}.organization-sent>svg{color:var(--color-success);flex:none}.organization-sent--failed{background:var(--color-warning-soft);border-color:var(--color-warning)}.organization-sent--failed>svg{color:var(--color-warning)}.organization-invitations{margin:0;padding:0;list-style:none}.organization-invitation{border-block-end:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-sm) var(--space-md);padding-block:var(--space-md);grid-template-columns:minmax(0,1fr) auto;display:grid}.organization-invitation:first-child{padding-block-start:0}.organization-invitation:last-child{border-block-end:0;padding-block-end:0}.organization-invitation__actions{gap:var(--space-xs);display:flex}.organization-invitation__error{grid-column:1/-1;margin:0}@media (max-width:36rem){.panel__head:has(.panel__actions){flex-direction:column;align-items:start}.panel__actions{justify-content:flex-start}.organization-invitation{grid-template-columns:minmax(0,1fr)}}.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}.organization-ai__own{border-block-start:var(--rule-thin) solid var(--color-rule);gap:var(--space-md);margin-block-start:var(--space-lg);padding-block-start:var(--space-lg);display:grid}.organization-ai__own h3{font-size:var(--text-base);margin:0}.organization-ai__own>div>p{color:var(--color-muted);margin:var(--space-2xs) 0 0}.organization-webhook{gap:var(--space-lg);grid-template-columns:minmax(0,1fr);display:grid}.organization-webhook__settings{gap:var(--space-lg);display:grid}.organization-webhook__settings .form-message:empty{min-height:0}.organization-webhook__how{gap:var(--space-xs);justify-items:start;max-width:44rem;display:grid}.organization-webhook__how p{margin:0}.organization-webhook__form{max-width:36rem}.organization-webhook__actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.organization-webhook__block{border-block-start:var(--rule-thin) solid var(--color-rule);gap:var(--space-sm);padding-block-start:var(--space-lg);display:grid}.organization-webhook__block h3{font-size:var(--text-base);margin:0}.organization-webhook__block>p{color:var(--color-muted);margin:0}.organization-webhook__secret{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.organization-webhook__secret .input{flex:16rem;min-width:0;max-width:28rem}.organization-webhook__result{gap:var(--space-xs);justify-items:start;display:grid}.organization-webhook__line{align-items:flex-start;gap:var(--space-xs);display:flex}.organization-webhook__line>svg{flex:none;margin-block-start:.2em}.organization-webhook__excerpt{background:var(--color-paper-3);border-radius:var(--radius-sm);font-size:var(--text-sm);overflow-wrap:anywhere;max-width:100%;padding:var(--space-xs) var(--space-sm);white-space:pre-wrap;display:block}.organization-webhook__foot{align-items:center;gap:var(--space-md);flex-wrap:wrap;justify-content:space-between;display:flex}.organization-webhook__meta{gap:var(--space-xs);justify-items:start;display:grid}.organization-webhook__docs{align-items:center;gap:var(--space-2xs);display:inline-flex}.webhook-log tr:not(.webhook-log__detail)>td:first-child,.webhook-log td:nth-child(3){white-space:nowrap}.webhook-log th[scope=row]{min-width:10rem}.webhook-log thead th{position:relative}.webhook-log__toggle svg{transition:transform var(--dur-fast) var(--ease-out)}.webhook-log__toggle[aria-expanded=true] svg{transform:rotate(180deg)}.webhook-log__detail td,.webhook-log__detail td:last-child{background:var(--color-paper-2);padding:var(--space-md) var(--space-lg);width:auto}.webhook-log__facts{gap:var(--space-sm) var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));margin:0;display:grid}.webhook-log__facts dt{color:var(--color-muted);font-size:var(--text-xs)}.webhook-log__facts dd{overflow-wrap:anywhere;margin:0}.webhook-log__answer{font-size:var(--text-sm);margin:var(--space-md) 0 var(--space-xs)}.webhook-log__excerpt{background:var(--color-paper-3);border-radius:var(--radius-sm);font-size:var(--text-sm);overflow-wrap:anywhere;max-height:14rem;padding:var(--space-sm);white-space:pre-wrap;margin:0;overflow:auto}.ai-meters{gap:var(--space-sm);display:grid}.ai-meters dl{gap:var(--space-md) var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));margin:0;display:grid}.ai-meter dt{color:var(--color-ink-2);font-size:var(--text-sm);font-weight:600}.ai-meter dd{gap:var(--space-xs);margin:var(--space-2xs) 0 0;display:grid}.ai-meter__count{font-variant-numeric:tabular-nums}.ai-meter__bar{background:var(--color-paper-3);border-radius:var(--radius-pill);block-size:6px;display:block;overflow:hidden}.ai-meter__bar>span{background:var(--color-ink);border-radius:inherit;block-size:100%;inline-size:calc(var(--used,0) * 100%);display:block}.ai-meter[data-tone=low] .ai-meter__bar>span{background:var(--color-warning)}.ai-meter[data-tone=low] .ai-meter__count{color:var(--color-warning);font-weight:600}.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}.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)}button.pagination__page{cursor:pointer;background:0 0;border:0;padding:0}.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,.class-roster__note{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"]:is([data-format=CODE],[data-format=MIXED]){block-size:min(88dvh,52rem)}.dialog-card--session[open]{flex-direction:column;display:flex}.dialog-card--session:is([data-published=true],[data-compact=true]){max-width:30rem;padding:var(--space-xl);overflow:visible}.session-builder__frame{display:contents}.session-builder__frame[hidden]{display:none}.session-draft-loading{align-items:center;gap:var(--space-xs);display:flex}.session-draft-loading svg{animation:spin var(--dur-slow) linear infinite}.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-selected);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-split{gap:var(--space-sm);padding:var(--space-md) var(--space-lg);display:grid}.session-split__head{align-items:baseline;gap:var(--space-2xs) var(--space-md);flex-wrap:wrap;justify-content:space-between;display:flex}.session-split__head label{color:var(--color-ink);font-weight:700}.session-split__head strong{color:var(--color-ink);font-variant-numeric:tabular-nums}.session-split__range{accent-color:var(--color-focus);inline-size:100%;margin:0}.session-split .field-help{margin:0}.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}.switch-field{gap:var(--space-2xs);justify-items:start;min-width:0;display:grid}.switch-field .field-help{max-width:62ch;margin:0}.page-head .switch-field{margin-block-start:var(--space-md)}.page-head .switch-field .field-error{color:var(--color-error)}.switch{border-radius:var(--radius-sm);color:var(--color-ink);cursor:pointer;font-size:var(--text-sm);align-items:center;gap:var(--space-sm);max-width:100%;min-height:40px;font-weight:700;display:inline-flex;position:relative}.switch input{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;margin:0;position:absolute;overflow:hidden}.switch__track{background:var(--color-paper-3);border:var(--rule-thin) solid var(--color-control-border-hover);border-radius:var(--radius-pill);block-size:24px;inline-size:42px;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out);flex:none;position:relative}.switch__thumb{background:var(--color-muted);block-size:16px;inline-size:16px;transition:background-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border-radius:50%;position:absolute;inset-block-start:3px;inset-inline-start:3px}.switch__label{min-width:0}.switch input:checked+.switch__track{background:var(--color-ink);border-color:var(--color-ink)}.switch input:checked+.switch__track .switch__thumb{background:var(--color-surface);transform:translate(18px)}.switch:has(input:disabled){cursor:progress}.switch input:disabled+.switch__track{opacity:.6}.switch:has(input:focus-visible){outline:2px solid var(--color-focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){.switch__track,.switch__thumb{transition:none}}@media (forced-colors:active){.switch__track{forced-color-adjust:none;background:canvas;border-color:canvastext}.switch__thumb{background:canvastext}.switch input:checked+.switch__track{background:highlight;border-color:highlight}.switch input:checked+.switch__track .switch__thumb{background:highlighttext}}.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}.question-option{border-block-end:var(--rule-thin) solid var(--color-rule);transition:background-color var(--dur-fast) var(--ease-out);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.question-option:last-child{border-block-end:0}.question-option>.question-choice{border-block-end:0;padding-inline-end:var(--space-xs)}.question-option>.question-choice:has(input:checked){background:0 0}.question-option:has(>.question-choice input:checked){background:var(--color-paper-2)}.question-option__toggle{margin-inline-end:var(--space-xs)}.question-option__toggle[aria-expanded=true]{color:var(--color-ink)}.question-option__preview{background:var(--color-surface);grid-column:1/-1;min-width:0}.question-detail.problem-preview{grid-template-columns:minmax(0,1fr)}.problem-preview .example pre{background:var(--color-surface);color:inherit;padding:var(--space-sm)}.problem-preview .example h3{font-family:var(--font-mono);font-size:var(--text-xs)}.problem-preview__status{color:var(--color-muted);font-size:var(--text-sm);margin:0}.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;max-width:none;min-height:0}.session-builder__footer>.form-message--error,.session-published>.form-message--error{color:var(--color-error)}.session-builder__footer>.form-message--success{color:var(--color-success)}.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}.session-builder__actions>.form-message{flex:1 1 0;min-width:0;min-height:0}.session-builder__save{margin-inline-start:auto}@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)}.switch:hover input:not(:disabled):not(:checked)+.switch__track{border-color:var(--color-ink-2)}.question-choice:hover,.session-option:hover{background:var(--color-paper-2)}.question-option>.question-choice:hover{background:0 0}.question-option:has(>.question-choice: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))}.session-format__options--three{grid-template-columns:repeat(3,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"]:is([data-format=CODE],[data-format=MIXED]){block-size:calc(100dvh - var(--space-sm))}.dialog-card--session:is([data-published=true],[data-compact=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-builder__actions{flex-wrap:wrap}.session-builder__save{flex-basis:100%;order:1;margin-inline-start:0}.session-builder__actions:has(>.form-message){flex-wrap:wrap}.session-builder__actions>.form-message:not(:empty){flex-basis:100%;order:-1}.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}}@media (min-width:36rem) and (max-width:47.999rem){.dialog-card--session[data-format=MIXED] .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}.dialog-card--session[data-format=MIXED] .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 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}.sql-table{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-input);width:fit-content;max-width:100%;max-height:16rem;overflow:auto}.sql-table table{border-collapse:collapse;font-family:var(--font-mono);font-size:var(--text-xs)}.sql-table th,.sql-table td{border-block-end:var(--rule-thin) solid var(--color-rule);padding:var(--space-2xs) var(--space-sm);text-align:start;white-space:pre}.sql-table th{background:var(--color-paper-2);color:var(--color-ink);font-weight:700;position:sticky;inset-block-start:0}.sql-table tbody tr:last-child td{border-block-end:0}.sql-table td[data-type=number]{font-variant-numeric:tabular-nums;text-align:end}.sql-table__null{color:var(--color-muted);font-style:italic}.sql-table__note,.sql-outcome{color:var(--color-muted);font-size:var(--text-xs);padding:var(--space-xs) var(--space-sm);margin:0}.sql-outcome{background:var(--color-paper-2);border-radius:var(--radius-input);color:var(--color-ink-2)}.sql-outcome[data-status=rejected]{color:var(--color-ink);font-weight:700}.sql-outcome[data-status=error]{color:var(--color-error);overflow-wrap:anywhere}.sql-result{gap:var(--space-sm);margin:0;padding:0;list-style:none;display:grid}.sql-result li{gap:var(--space-2xs);min-width:0;display:grid}.sql-result li>span,.sql-expected>span{color:var(--color-muted);font-size:var(--text-xs);font-weight:700}.sql-expected{gap:var(--space-xs);min-width:0;display:grid}.sql-compare{gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));margin-block-start:var(--space-xs);display:grid}.sql-schema{gap:var(--space-sm);display:grid}.sql-schema__table{background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md)}.prompt-pane .sql-schema__table h3{font-size:var(--text-sm);margin:0 0 var(--space-xs)}.sql-schema__table ul{gap:var(--space-2xs);margin:0;padding:0;list-style:none;display:grid}.sql-schema__table li{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.sql-schema__type{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs)}.sql-dialect{border-inline-start:3px solid var(--color-rule);font-size:var(--text-sm);margin-block-start:var(--space-lg);padding-inline-start:var(--space-md)}.sql-dialect p{color:var(--color-muted);margin:0 0 var(--space-xs)}.sql-dialect ul{gap:var(--space-2xs);margin:0;padding-inline-start:var(--space-lg);display:grid}.results-pane .sql-table{background:var(--color-editor);border-color:#434a6e;border-color:lab(32.1801% 4.48261 -21.7155)}.results-pane .sql-table th{background:var(--color-editor-rule);color:var(--color-code);border-color:#434a6e;border-color:lab(32.1801% 4.48261 -21.7155)}.results-pane .sql-table td{border-color:var(--color-editor-rule);color:var(--color-code)}.results-pane .sql-table__null,.results-pane .sql-table__note,.results-pane .sql-expected>span,.results-pane .sql-result li>span{color:var(--color-code-muted)}.results-pane .sql-outcome{background:var(--color-editor);color:var(--color-code)}.results-pane .sql-outcome[data-status=error]{color:var(--color-error-soft)}.sql-options-field{border:0;min-width:0;margin:0;padding:0}.sql-options-field legend{color:var(--color-ink);font-size:var(--text-sm);margin-block-end:var(--space-xs);padding:0;font-weight:700}.sql-options{gap:var(--space-sm) var(--space-lg);flex-wrap:wrap;display:flex}@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-picker .check-chip:has(input:disabled){cursor:default;opacity:.7}.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);--ai-spark:var(--color-accent);isolation:isolate;position:relative;overflow:hidden}.button--primary.button--ai{--ai-sheen:var(--lightningcss-light,color-mix(in oklab, var(--color-accent) 45%, transparent))var(--lightningcss-dark,oklab(100% 0 5.96046e-8/.6));--ai-shimmer-base:var(--color-action-ink);--ai-shimmer-glint:var(--lightningcss-light,var(--color-accent))var(--lightningcss-dark,oklch(50% .12 125));--ai-spark:var(--lightningcss-light,var(--color-accent))var(--lightningcss-dark,var(--color-action-ink))}.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(--ai-spark);stroke:var(--ai-spark)}.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(--ai-spark);stroke:var(--ai-spark)}.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(--ai-spark,var(--color-accent));stroke:var(--ai-spark,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}}.admin-shell{min-height:100dvh}.admin-sidebar{background:var(--color-paper);border-block-end:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-xs) var(--space-sm);padding:var(--space-sm) var(--space-md);z-index:20;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"head foot""nav nav";display:grid;position:sticky;top:0}.admin-sidebar__head{align-items:center;gap:var(--space-sm);grid-area:head;min-width:0;display:flex}.admin-sidebar__tag{border:var(--rule-thin) solid var(--color-rule-2);border-radius:var(--radius-pill);color:var(--color-ink-2);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;padding:var(--space-2xs) var(--space-sm);text-transform:uppercase;white-space:nowrap}.admin-sidebar__links{gap:var(--space-xs);margin-inline:calc(-1 * var(--space-md));padding-inline:var(--space-md);scroll-padding-inline:var(--space-md);scrollbar-width:none;grid-area:nav;display:flex;overflow-x:auto}.admin-sidebar__foot{align-items:center;gap:var(--space-xs);grid-area:foot;display:flex}.admin-sidebar__foot form{display:contents}.admin-sidebar__user{display:none}.admin-nav-link{border-radius:var(--radius-pill);color:var(--color-ink);cursor:pointer;font:inherit;align-items:center;gap:var(--space-sm);min-height:44px;padding-inline:var(--space-md);text-align:start;white-space:nowrap;background:0 0;border:0;flex:none;font-weight:500;display:flex}.admin-nav-link[aria-current=page]{background:var(--color-selected);color:var(--color-accent)}.admin-nav-link--quiet{color:var(--color-muted)}.admin-sidebar__foot .admin-nav-link{justify-content:center;inline-size:44px;padding-inline:0}.admin-sidebar__foot .admin-nav-link span{display:none}.admin-sidebar__foot .theme-switch{min-height:0;padding:0}.admin-sidebar__foot .theme-switch__label{display:none}.admin-main{min-width:0;padding:var(--space-xl) var(--space-md)}@media (hover:hover) and (pointer:fine){.admin-nav-link:hover{background:var(--color-paper-2);color:var(--color-ink)}.admin-nav-link[aria-current=page]:hover{background:var(--color-selected-hover);color:var(--color-accent)}}@media (min-width:60rem){.admin-shell{grid-template-columns:16rem minmax(0,1fr);display:grid}.admin-sidebar{border-block-end:0;border-inline-end:var(--rule-thin) solid var(--color-rule);align-content:stretch;align-items:stretch;gap:var(--space-xl);height:100dvh;padding:var(--space-lg) var(--space-md);grid-template:"head""nav"1fr"foot"/minmax(0,1fr)}.admin-sidebar__head{align-items:flex-start;gap:var(--space-md);flex-direction:column}.admin-sidebar__links{align-content:start;margin:0;padding:0;display:grid;overflow:visible}.admin-sidebar__foot{border-block-start:var(--rule-thin) solid var(--color-rule);align-items:stretch;padding-block-start:var(--space-md);display:grid}.admin-sidebar__user{font-size:var(--text-xs);min-width:0;padding:0 var(--space-md) var(--space-sm);display:grid}.admin-sidebar__user strong{font-size:var(--text-sm)}.admin-sidebar__user :is(strong,span){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-sidebar__user span{color:var(--color-muted)}.admin-sidebar__foot .admin-nav-link{inline-size:auto;padding-inline:var(--space-md);justify-content:flex-start}.admin-sidebar__foot .theme-switch{padding-inline:var(--space-md) 0}.admin-sidebar__foot .theme-switch__label,.admin-sidebar__foot .admin-nav-link span{display:inline}.admin-main{padding:var(--space-2xl) clamp(var(--space-lg), 4vw, var(--space-2xl))}}.admin-filters{border-block-end:var(--rule-thin) solid var(--color-rule);align-items:end;gap:var(--space-md);padding:var(--space-md) var(--space-lg);grid-template-columns:minmax(0,1fr);display:grid}.admin-filters__actions{align-items:center;gap:var(--space-xs);display:flex}.admin-badges{gap:var(--space-xs);flex-wrap:wrap;display:flex}.admin-muted,.admin-empty{color:var(--color-muted)}.admin-empty{padding:var(--space-lg);margin:0}.admin-list-error{padding:var(--space-md) var(--space-lg) 0;margin:0}.admin-panel-note{color:var(--color-muted);font-size:var(--text-sm);padding:0 var(--space-lg) var(--space-lg);margin:0}.admin-path{font-family:var(--font-mono);font-size:var(--text-xs);overflow-wrap:anywhere}@media (min-width:48rem){.admin-filters{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto auto}}.admin-page-head{grid-template-columns:minmax(0,1fr)}.admin-page-head__actions{align-items:center}.admin-back{color:var(--color-muted);font-size:var(--text-sm);align-items:center;gap:var(--space-2xs);margin-block-end:var(--space-sm);display:inline-flex}.admin-link{color:var(--color-ink);text-decoration:underline;-webkit-text-decoration-color:var(--color-rule-2);text-decoration-color:var(--color-rule-2);text-underline-offset:3px;font-weight:600}.admin-number{font-variant-numeric:tabular-nums;text-align:end!important}.admin-filters--single{grid-template-columns:minmax(0,1fr)}.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-columns{gap:var(--space-lg);display:grid}.admin-row{color:inherit;grid-template-columns:minmax(0,1fr) auto}.admin-feed{margin:0;padding:0;list-style:none}.admin-feed li{border-block-end:var(--rule-thin) solid var(--color-rule);gap:var(--space-2xs);padding:var(--space-md) var(--space-lg);display:grid}.admin-feed li:last-child{border-block-end:0}.admin-feed code{color:var(--color-muted);font-size:var(--text-xs);overflow-wrap:anywhere}@media (min-width:48rem){.admin-page-head,.admin-filters--single{grid-template-columns:minmax(0,1fr) auto}.admin-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:75rem){.admin-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (hover:hover) and (pointer:fine){.admin-back:hover{color:var(--color-ink)}.admin-link:hover{-webkit-text-decoration-color:var(--color-ink);text-decoration-color:var(--color-ink)}}.signup{grid-template-areas:"form""visual"}.signup .login-split__form-wrap{max-width:28rem}.signup__switch{color:var(--color-muted);font-size:var(--text-sm);margin:var(--space-md) 0 0}.signup__switch a,.signup__switch .text-button{color:var(--color-ink-2);text-underline-offset:.2em;min-height:0;font-weight:600;text-decoration:underline}.signup-plan{background:var(--color-accent);color:var(--color-accent-ink);min-width:0;padding:var(--space-xl) var(--space-lg);grid-area:visual;display:grid}.signup-plan__inner{align-self:center;gap:var(--space-md);width:100%;max-width:26rem;margin-inline:auto;display:grid}.signup-plan .eyebrow,.signup-plan h2{color:var(--color-accent-ink);margin:0}.signup-plan h2{font-size:clamp(var(--text-xl), 5vw, var(--text-2xl))}.signup-plan__price{align-items:baseline;gap:var(--space-xs);flex-wrap:wrap;margin:0;display:flex}.signup-plan__price strong{font-family:var(--font-display);font-size:clamp(var(--text-2xl), 8vw, var(--text-3xl));line-height:1}.signup-plan__note{font-size:var(--text-sm);opacity:.85;margin:0}.signup-plan__features{gap:var(--space-sm);margin:var(--space-sm) 0;padding:0;list-style:none;display:grid}.signup-plan__features li{align-items:start;gap:var(--space-sm);display:flex}.signup-plan__features svg{flex:none;margin-block-start:.15em}.signup-plan__schools{border-block-start:var(--rule-thin) solid color-mix(in oklab, var(--color-accent-ink), transparent 70%);font-size:var(--text-sm);margin:0;padding-block-start:var(--space-md)}.signup-plan__schools a{color:inherit;text-underline-offset:.2em;font-weight:700;text-decoration:underline}.signup-finish .invite-result{max-width:30rem}.signup-finish__signout{width:100%}.signup-finish__signout .text-button{color:var(--color-ink-2);min-height:0;font-weight:600}.confirm-email-bar{background:var(--color-error-soft);border-color:var(--color-error);flex-wrap:wrap;align-items:center}.confirm-email-bar>svg{color:var(--color-error);margin-block-start:0}.confirm-email-bar p{color:var(--color-ink);font-weight:600}.confirm-email-bar>div:not(.plan-notice__action){flex:16rem}.confirm-email__change{gap:var(--space-sm);width:100%;display:grid}.signup-code,.plan-checkout{width:100%}.signup-code .button,.plan-checkout .button--primary{width:100%;min-height:52px}.code-slots{position:relative}.code-slots__input{caret-color:#0000;color:#0000;cursor:text;z-index:1;background:0 0;border:0;outline:0;block-size:100%;inline-size:100%;padding:0;font-size:16px;position:absolute;inset:0}.code-slots__input::selection{background:0 0}.code-slots__input:autofill{-webkit-text-fill-color:transparent;transition:background-color 600000s}.code-slots__row{gap:var(--space-xs);display:flex}.code-slots__slot{background:var(--color-surface);border:var(--rule-thin) solid var(--color-control-border);border-radius:var(--radius-input);block-size:clamp(48px,15vw,64px);color:var(--color-ink);font-family:var(--font-mono);font-size:var(--text-xl);min-inline-size:0;transition:background-color var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);flex:1 1 0;justify-content:center;align-items:center;font-weight:600;display:flex}.code-slots__slot:nth-child(3){margin-inline-end:var(--space-sm)}.code-slots__slot[data-filled]{border-color:var(--color-control-border-hover)}.code-slots__char{animation:code-char-in var(--dur-base) var(--ease-out);display:block}.code-slots__caret{background:var(--color-focus);border-radius:1px;block-size:1.1em;inline-size:2px;display:none}.code-slots:focus-within .code-slots__caret{animation:code-caret 1s var(--ease-in-out) infinite;display:block}.code-slots:focus-within .code-slots__slot[data-active]{border-color:var(--color-ink-2);box-shadow:0 0 0 3px color-mix(in oklab, var(--color-focus), transparent 55%);transform:translateY(-2px)}.code-slots[data-complete] .code-slots__slot{animation:code-slot-done var(--dur-slow) var(--ease-out) both;animation-delay:calc(var(--i) * 45ms);border-color:var(--color-ink-2)}.code-slots[data-loading] .code-slots__slot{animation:code-slot-wait 1.1s var(--ease-in-out) infinite;animation-delay:calc(var(--i) * 90ms)}.code-slots[data-invalid] .code-slots__slot{background:var(--color-error-soft);border-color:var(--color-error);color:var(--color-error)}.code-slots[data-invalid]:focus-within .code-slots__slot[data-active]{border-color:var(--color-error);box-shadow:0 0 0 3px color-mix(in oklab, var(--color-error), transparent 75%)}@keyframes code-char-in{0%{opacity:0;transform:translateY(8px)scale(.6)}60%{opacity:1;transform:translateY(-1px)scale(1.08)}}@keyframes code-caret{0%,to{opacity:1}50%{opacity:0}}@keyframes code-slot-done{40%{transform:translateY(-4px)}}@keyframes code-slot-wait{50%{background:color-mix(in oklab, var(--color-accent), var(--color-surface) 75%);border-color:var(--color-focus)}}@media (prefers-reduced-motion:reduce){.code-slots:focus-within .code-slots__caret,.code-slots__char,.code-slots[data-complete] .code-slots__slot,.code-slots[data-loading] .code-slots__slot{animation:none}.code-slots__slot{transform:none!important}}.signup-code .text-button{justify-self:center}.plan-checkout__options .session-format__option strong{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.plan-checkout__terms{color:var(--color-ink-2);cursor:pointer;font-size:var(--text-sm);align-items:start;gap:var(--space-sm);grid-template-columns:auto minmax(0,1fr);line-height:1.5;display:grid}.plan-checkout__terms input{accent-color:var(--color-focus);block-size:18px;inline-size:18px;margin:.15em 0 0}.plan-checkout__terms a{color:var(--color-ink);text-underline-offset:.2em;font-weight:600;text-decoration:underline}.plan-checkout__secure{align-items:center;gap:var(--space-xs);justify-content:center;display:flex}.billing-summary{gap:var(--space-md) var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));margin:0;display:grid}.billing-summary div{border-block-start:var(--rule-thin) solid var(--color-rule);gap:var(--space-2xs);min-width:0;padding-block-start:var(--space-sm);display:grid}.billing-summary dt{color:var(--color-muted);font-size:var(--text-sm)}.billing-summary dd{color:var(--color-ink);overflow-wrap:anywhere;margin:0;font-weight:700}.billing-section{gap:var(--space-md);display:grid}.billing-section+.billing-section{border-block-start:var(--rule-thin) solid var(--color-rule);padding-block-start:var(--space-lg)}.billing-section h3{font-size:var(--text-lg);margin:0}.billing-section>p{color:var(--color-muted);margin:0}.billing-manage{align-items:center;gap:var(--space-sm) var(--space-md);flex-wrap:wrap;display:flex}.billing-resubscribe{max-width:30rem}.plan-notice a{color:inherit;text-underline-offset:.2em;font-weight:700;text-decoration:underline}.plan-notice--info{background:var(--color-paper-2);border-color:var(--color-rule-2)}.plan-notice--info>svg{color:var(--color-ink-2)}.plan-notice__action{gap:var(--space-2xs);flex:none;justify-items:end;margin-inline-start:auto;display:grid}@media (min-width:48rem){.signup{grid-template-areas:"form visual"}.signup-plan{min-height:100dvh;padding:clamp(var(--space-xl), 5vw, var(--space-3xl))}}.admin-message{overflow-wrap:anywhere;white-space:pre-wrap;max-width:32rem;margin:0}.admin-message p{margin:0}.admin-message-preview{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.admin-message:has(>details[open])>.admin-message-preview{display:none}.admin-message summary{color:var(--color-ink-2);cursor:pointer;font-size:var(--text-sm);margin-top:var(--space-2xs);text-underline-offset:.2em;white-space:normal;width:fit-content;font-weight:700;text-decoration:underline}.admin-message details[open]>summary{margin-top:0;margin-bottom:var(--space-2xs)}.admin-message details[open] .admin-message-more,.admin-message details:not([open]) .admin-message-less{display:none}.admin-message-full{max-height:24rem;overflow-y:auto}.practice-list{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);margin:0;padding:0;list-style:none;overflow:clip}.practice-list li+li{border-block-start:var(--rule-thin) solid var(--color-rule)}.practice-row{color:var(--color-ink);align-items:center;gap:var(--space-xs) var(--space-sm);min-height:56px;padding:var(--space-sm) var(--space-md);grid-template-columns:auto minmax(0,1fr) auto;text-decoration:none;display:grid}.practice-row:hover{background:var(--color-paper-2)}.practice-row__icon{color:var(--color-muted)}.practice-row[data-status=attempted] .practice-row__icon{color:var(--color-warning)}.practice-row[data-status=solved] .practice-row__icon{color:var(--color-success)}.practice-row__title{overflow-wrap:anywhere;min-width:0;font-weight:700}.practice-row__tags,.practice-row .badge:not(.badge--difficulty){display:none}.practice-row__tag{color:var(--color-muted);font-size:var(--text-xs)}.practice-row__tag+.practice-row__tag:before{content:"· "}.practice-empty{border:var(--rule-thin) dashed var(--color-rule-2);border-radius:var(--radius-card);color:var(--color-muted);padding:var(--space-lg);text-align:center;margin:0}.practice-results,.list-results{transition:opacity .15s}.practice-results[data-loading=true],.list-results[data-loading=true]{opacity:.55}.practice-pages{align-items:center;gap:var(--space-sm);justify-content:center;margin-block-start:var(--space-md);display:flex}.practice-bar{background:var(--color-surface);border-block-end:var(--rule-thin) solid var(--color-rule);align-items:center;gap:var(--space-xs);padding:var(--space-2xs) var(--space-md);flex-wrap:wrap;display:flex}.practice-bar .back-link{margin:0 var(--space-sm) 0 0;min-height:40px}.practice-bar__points{color:var(--color-muted);font-size:var(--text-xs);margin-inline-start:auto}.practice-attempts{font-size:var(--text-sm);gap:var(--space-2xs);margin:0;padding:0;list-style:none;display:grid}.practice-attempts li{border-block-end:var(--rule-thin) solid var(--color-rule);align-items:baseline;gap:var(--space-sm);padding-block:var(--space-2xs);grid-template-columns:5.5rem minmax(0,1fr) auto;display:grid}.practice-attempts li>:last-child{color:var(--color-muted);font-size:var(--text-xs)}.practice-attempts__result{font-family:var(--font-mono)}.practice-attempts__result[data-solved]{color:var(--color-success);font-weight:700}.practice-meter{block-size:.5rem;inline-size:100%}.practice-goal-picker{color:var(--color-muted);font-size:var(--text-xs);align-items:center;gap:var(--space-xs);margin-block-start:var(--space-2xs);display:flex}.practice-goal-picker .select{font-size:var(--text-sm);min-width:9rem;min-height:36px;padding-inline:var(--space-sm) var(--space-xl);width:auto}.practice-panel{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);gap:var(--space-md);min-width:0;padding:var(--space-lg);display:grid}.practice-panel h2{font-size:var(--text-lg);margin:0}.practice-bars{gap:var(--space-sm);margin:0;padding:0;list-style:none;display:grid}.practice-bars li{font-size:var(--text-sm);align-items:center;gap:var(--space-sm);grid-template-columns:minmax(0,8rem) minmax(0,1fr) 5rem;display:grid}.practice-bars li>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.practice-bars__count{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);text-align:end}.practice-calendar{gap:3px;padding-block-end:var(--space-2xs);display:flex;overflow-x:auto}.practice-calendar__week{flex:none;grid-template-rows:repeat(7,11px);gap:3px;display:grid}.practice-calendar__day{background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:2px;width:11px;height:11px;display:inline-block}.practice-calendar__day[data-level="1"]{background:var(--color-activity-1);border-color:#0000}.practice-calendar__day[data-level="2"]{background:var(--color-activity-2);border-color:#0000}.practice-calendar__day[data-level="3"]{background:var(--color-activity-3);border-color:#0000}.practice-calendar__day[data-future]{visibility:hidden}.practice-calendar__legend{color:var(--color-muted);font-size:var(--text-xs);justify-content:flex-end;align-items:center;gap:3px;margin:0;display:flex}.practice-calendar__legend span:first-child{margin-inline-end:var(--space-2xs)}.practice-calendar__legend span:last-child{margin-inline-start:var(--space-2xs)}.practice-attempts--wide li{grid-template-columns:minmax(0,1fr) auto}.practice-attempts--wide li>a{grid-column:1/-1;font-weight:700}.student-solves li{grid-template-columns:minmax(0,1fr) auto}.student-solves li>:first-child{grid-column:1/-1;font-weight:700}@media (min-width:48rem){.practice-attempts--wide li{grid-template-columns:minmax(0,1fr) 6rem 7rem auto}.practice-attempts--wide li>a{grid-column:auto}.student-solves li{grid-template-columns:minmax(0,1fr) 6rem auto}.student-solves li>:first-child{grid-column:auto}}.student-practice{gap:var(--space-md)}.student-practice__top{gap:var(--space-md);display:grid}@media (min-width:48rem){.student-practice__top{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.practice-tabs{border-block-end:var(--rule-thin) solid var(--color-rule);gap:var(--space-xs);display:flex;overflow-x:auto}.practice-tab{border:0;cursor:pointer;color:var(--color-muted);padding:var(--space-sm) var(--space-md);white-space:nowrap;background:0 0;border-block-end:2px solid #0000;margin-block-end:-1px;font-weight:700;text-decoration:none}.practice-tab[aria-current=page]{border-color:var(--color-ink);color:var(--color-ink)}.practice-leaderboard-wrap{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);overflow-x:auto}.practice-leaderboard{border-collapse:collapse;font-size:var(--text-sm);width:100%}.practice-leaderboard th,.practice-leaderboard td{border-block-end:var(--rule-thin) solid var(--color-rule);padding:var(--space-sm) var(--space-md);text-align:start}.practice-leaderboard thead th{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;font-weight:700}.practice-leaderboard tbody th{font-weight:700}.practice-leaderboard tbody th .badge{margin-inline-start:var(--space-xs)}.leaderboard-name{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.leaderboard-name>.practice-tier,.leaderboard-name>.badge{align-self:center;margin:0}.practice-leaderboard tbody tr:last-child>*{border-block-end:0}.practice-leaderboard tr[aria-current]{background:var(--color-paper-2)}.practice-leaderboard__rank,.practice-leaderboard__points,.practice-leaderboard__solved{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.practice-leaderboard__points{font-weight:700}.practice-leaderboard__solved{display:none}.practice-leaderboard__gap td{color:var(--color-muted);text-align:center}@media (min-width:40rem){.practice-leaderboard__solved{display:table-cell}}.class-practice__totals{gap:var(--space-sm);padding:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));margin:0;display:grid}.class-practice__totals div{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-card);padding:var(--space-sm) var(--space-md)}.class-practice__totals dt{color:var(--color-muted);font-size:var(--text-xs)}.class-practice__totals dd{font-family:var(--font-mono);font-size:var(--text-lg);margin:0;font-weight:700}.practice-tier{border:var(--rule-thin) solid var(--color-rule-2);border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--text-xs);padding:0 var(--space-xs);place-self:start;margin-inline-start:var(--space-xs);font-weight:700}.practice-tier[data-tier=BRONZE]{color:var(--lightningcss-light,#69391c)var(--lightningcss-dark,#edb793);color:var(--lightningcss-light,lab(29.9307% 19.8555 27.3378))var(--lightningcss-dark,lab(78.8055% 16.9092 26.522));background:var(--lightningcss-light,#fde2ce)var(--lightningcss-dark,#412714);background:var(--lightningcss-light,lab(91.7908% 7.05174 13.5405))var(--lightningcss-dark,lab(18.5679% 11.19 17.6902));border-color:var(--lightningcss-light,#b07750)var(--lightningcss-dark,#9d663e);border-color:var(--lightningcss-light,lab(55.5218% 19.8089 31.0948))var(--lightningcss-dark,lab(48.5476% 20.0512 31.621))}.practice-tier[data-tier=SILVER]{color:var(--lightningcss-light,#44484d)var(--lightningcss-dark,#ccd2d7);color:var(--lightningcss-light,lab(30.3894% -1.0494 -3.54785))var(--lightningcss-dark,lab(83.7514% -1.08817 -3.56821));background:var(--lightningcss-light,#eceff2)var(--lightningcss-dark,#2a2e33);background:var(--lightningcss-light,lab(94.1962% -.55328 -1.78922))var(--lightningcss-dark,lab(18.7881% -1.02484 -3.53596));border-color:var(--lightningcss-light,#9a9fa5)var(--lightningcss-dark,#757b81);border-color:var(--lightningcss-light,lab(65.191% -1.08051 -3.56405))var(--lightningcss-dark,lab(51.2681% -1.27438 -4.26511))}.practice-tier[data-tier=GOLD]{background:var(--color-gold-soft);border-color:var(--color-gold);color:var(--lightningcss-light,#664700)var(--lightningcss-dark,#f1cc79);color:var(--lightningcss-light,lab(32.6736% 11.549 51.5516))var(--lightningcss-dark,lab(84.0208% 6.02782 45.9859))}.practice-tier[data-tier=PLATINUM]{color:var(--lightningcss-light,#004d50)var(--lightningcss-dark,#9fdadd);color:var(--lightningcss-light,lab(28.7541% -21.8703 -8.96527))var(--lightningcss-dark,lab(83.1912% -18.9205 -7.85921));background:var(--lightningcss-light,#d8f5f6)var(--lightningcss-dark,#113436);background:var(--lightningcss-light,lab(94.4979% -9.48459 -3.96528))var(--lightningcss-dark,lab(19.1892% -12.5538 -5.17151));border-color:var(--lightningcss-light,#429599)var(--lightningcss-dark,#34898d);border-color:var(--lightningcss-light,lab(56.6991% -25.1165 -10.3517))var(--lightningcss-dark,lab(52.0577% -25.0981 -10.3338))}.practice-tier[data-tier=DIAMOND]{color:var(--lightningcss-light,#383585)var(--lightningcss-dark,#c3c9ff);color:var(--lightningcss-light,lab(26.2159% 20.637 -45.4709))var(--lightningcss-dark,lab(81.766% 8.17266 -32.4802));background:var(--lightningcss-light,#e7e9ff)var(--lightningcss-dark,#282a4b);background:var(--lightningcss-light,lab(92.7151% 2.94831 -14.7138))var(--lightningcss-dark,lab(18.1326% 7.03234 -21.2588));border-color:var(--lightningcss-light,#6c6ecb)var(--lightningcss-dark,#777ad8);border-color:var(--lightningcss-light,lab(49.5995% 18.0767 -49.3414))var(--lightningcss-dark,lab(54.2866% 17.4463 -49.4317))}.student-page{gap:var(--space-xl);display:grid}.home-layout{align-items:start;gap:var(--space-xl);display:grid}.home-main,.home-aside{gap:var(--space-xl);min-width:0;display:grid}.home-aside{gap:var(--space-md)}.home-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;padding:var(--space-md) var(--space-lg);display:grid}.home-card__head{align-items:baseline;gap:var(--space-xs) var(--space-sm);flex-wrap:wrap;justify-content:space-between;display:flex}.home-card__head h2{font-size:var(--text-base);align-items:center;gap:var(--space-xs);margin:0;display:flex}.home-card__head a{font-size:var(--text-sm);font-weight:700}.home-card__intro,.home-card__note{color:var(--color-muted);font-size:var(--text-sm);margin:0}.home-privacy{color:var(--color-muted);font-size:var(--text-xs);text-align:center;margin:0}.home-card .join-form{gap:var(--space-xs);display:grid}.home-section{gap:var(--space-sm);min-width:0;display:grid}.home-section__head h2{font-size:var(--text-lg);align-items:center;gap:var(--space-xs);margin:0;display:flex}.home-section__head p{color:var(--color-muted);font-size:var(--text-sm);margin:var(--space-2xs) 0 0}.home-section__head--row{justify-content:space-between;align-items:center;display:flex}.student-page .assigned-sessions{margin:0}.practice-row__icon--challenge{color:var(--color-gold)}.streak-pill{border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-pill);color:var(--color-muted);font-family:var(--font-mono);align-items:center;gap:var(--space-2xs);min-height:40px;padding-inline:var(--space-sm);font-weight:700;text-decoration:none;display:inline-flex}.streak-pill[data-active]{color:var(--color-ink)}.streak-pill[data-active] svg{color:var(--color-flame)}.streak-pill[data-today] svg{fill:var(--color-flame)}.streak-card__head{align-items:center;gap:var(--space-sm);display:flex}.streak-card__flame{color:var(--color-rule-2);flex:none}.streak-card[data-active] .streak-card__flame{color:var(--color-flame);fill:var(--color-flame-soft)}.streak-card__head h2{font-size:var(--text-base);margin:0;font-weight:500}.streak-card__head h2 strong{font-family:var(--font-mono);font-size:var(--text-xl)}.streak-card__head p{color:var(--color-muted);font-size:var(--text-sm);margin:0}.week-strip{gap:var(--space-2xs);margin:var(--space-2xs) 0 0;grid-template-columns:repeat(7,minmax(0,1fr));padding:0;list-style:none;display:grid}.week-strip li{align-items:center;gap:var(--space-2xs);justify-items:center;display:grid}.week-strip__day{color:var(--color-muted);font-size:var(--text-xs);font-weight:700}.week-strip__mark{background:var(--color-paper-2);border:2px solid var(--color-rule);border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;display:flex}.week-strip li[data-practised] .week-strip__mark{background:var(--color-flame);border-color:var(--color-flame);color:var(--color-surface)}.week-strip li[data-practised] .week-strip__mark svg{fill:currentColor}.week-strip li[data-today] .week-strip__day{color:var(--color-ink)}.week-strip li[data-today]:not([data-practised]) .week-strip__mark{border-color:var(--color-flame);border-style:dashed}.week-strip li[data-future] .week-strip__mark{background:0 0;border-style:dotted}.streak-card__goal{border-block-start:var(--rule-thin) solid var(--color-rule);gap:var(--space-2xs);padding-block-start:var(--space-sm);display:grid}.streak-card__goal-row{font-size:var(--text-sm);align-items:center;gap:var(--space-sm);justify-content:space-between;display:flex}.streak-card__goal-row strong{font-family:var(--font-mono)}.streak-card__goal-row small{color:var(--color-muted);font-size:var(--text-xs);flex:6rem}.streak-card__goal-row:last-child{flex-wrap:wrap}.streak-card .practice-goal-picker{margin:0}.solved-card__total{align-items:baseline;gap:var(--space-xs);margin:0;display:flex}.solved-card__total strong{font-family:var(--font-mono);font-size:var(--text-2xl)}.solved-card__total span{color:var(--color-muted);font-family:var(--font-mono)}.solved-card__bars{gap:var(--space-xs);margin:0;padding:0;list-style:none;display:grid}.solved-card__bars li{font-size:var(--text-sm);align-items:center;gap:var(--space-sm);grid-template-columns:4.5rem minmax(0,1fr) 4.5rem;display:grid}.solved-card__body{gap:var(--space-sm);display:grid}@media (min-width:40rem){.solved-card--wide .solved-card__body{align-items:center;gap:var(--space-xl);grid-template-columns:9rem minmax(0,1fr)}.solved-card--wide .solved-card__total strong{font-size:var(--text-3xl)}.solved-card--wide .solved-card__bars{gap:var(--space-sm)}}.home-summary{color:inherit;align-items:center;gap:var(--space-sm);padding-block:var(--space-sm);justify-content:space-between;text-decoration:none;display:flex}.home-summary:hover{border-color:var(--color-rule-2)}.home-summary svg{color:var(--color-muted);flex:none}.home-summary__line{font-family:var(--font-mono);font-size:var(--text-sm);align-items:center;gap:var(--space-2xs) var(--space-xs);flex-wrap:wrap;min-width:0;display:flex}.home-summary__line .practice-tier{margin:0}.home-summary__next,.home-summary__rank{color:var(--color-muted)}.home-summary__next:before,.home-summary__rank:before{content:"·";margin-inline-end:var(--space-xs)}.class-goal{gap:var(--space-2xs);display:grid}.class-goal+.class-goal{border-block-start:var(--rule-thin) solid var(--color-rule);padding-block-start:var(--space-sm)}.class-goal small{color:var(--color-muted);font-size:var(--text-xs)}.question-filters{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.question-filters .select{flex:8.5rem;width:auto;min-width:0}.question-filters .input,.question-filters .select{font-size:var(--text-sm);min-height:40px}.question-filters__search{flex:100%;align-items:center;display:flex;position:relative}.question-filters__search svg{color:var(--color-muted);left:var(--space-sm);position:absolute}.question-filters__search .input{padding-inline-start:calc(var(--space-sm) + 24px)}.question-filters__actions{gap:var(--space-xs);flex:none;display:flex}.question-filters__count{color:var(--color-muted);font-size:var(--text-sm);margin:0}.profile-identity{justify-items:start}.profile-identity h1{font-size:var(--text-xl);margin:0}.profile-identity p{color:var(--color-muted);margin:0}.profile-identity__actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.profile-identity__stats{gap:var(--space-xs);width:100%;margin:0;display:grid}.profile-identity__stats div{justify-content:space-between;align-items:center;display:flex}.profile-identity__stats dt{color:var(--color-muted);font-size:var(--text-sm)}.profile-identity__stats dd{font-family:var(--font-mono);align-items:center;gap:var(--space-2xs);margin:0;font-weight:700;display:flex}.profile-identity__stats dd a{align-items:center;gap:var(--space-2xs);display:inline-flex}.profile-layout .home-main{gap:var(--space-md)}.home-card .practice-bars li>a{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.leaderboard-you{align-items:baseline;gap:var(--space-sm);margin:0;display:flex}.leaderboard-you strong{font-family:var(--font-mono);font-size:var(--text-2xl)}.leaderboard-you span{color:var(--color-muted);font-size:var(--text-sm)}.tier-ladder{gap:var(--space-2xs);margin:0;padding:0;list-style:none;display:grid}.tier-ladder li{border-radius:var(--radius-sm);font-size:var(--text-sm);padding:var(--space-2xs) var(--space-xs);justify-content:space-between;align-items:center;display:flex}.tier-ladder li[aria-current]{background:var(--color-paper-2);font-weight:700}.tier-ladder .practice-tier{margin:0}.points-rules{gap:var(--space-2xs);margin:0;padding:0;list-style:none;display:grid}.points-rules li{font-size:var(--text-sm);justify-content:space-between;display:flex}.points-rules strong{font-family:var(--font-mono)}.practice-leaderboard__rank[data-podium="1"]{color:var(--color-gold);font-weight:700}.practice-leaderboard__rank[data-podium="2"],.practice-leaderboard__rank[data-podium="3"]{font-weight:700}.pane-tabs{border-block-end:var(--rule-thin) solid var(--color-rule);gap:var(--space-2xs);margin:calc(var(--space-lg) * -1) calc(var(--space-lg) * -1) var(--space-lg);padding-inline:var(--space-md);display:flex}.pane-tab{border:0;color:var(--color-muted);cursor:pointer;font:inherit;font-size:var(--text-sm);padding:var(--space-sm);background:0 0;border-block-end:2px solid #0000;margin-block-end:-1px;font-weight:700}.pane-tab[aria-selected=true]{border-color:var(--color-ink);color:var(--color-ink)}.practice-accepted{background:color-mix(in oklch, var(--color-level-easy) 18%, transparent);border:var(--rule-thin) solid var(--color-level-easy);border-radius:var(--radius-card);color:var(--color-level-soft);align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);margin-block-end:var(--space-md);display:flex}.practice-accepted strong{color:var(--color-level-easy);font-size:var(--text-lg);display:block}.practice-accepted span{color:var(--color-code);font-size:var(--text-sm)}.practice-bar__next{margin-inline-start:var(--space-sm)}.workspace-loading{color:var(--color-muted);align-items:center;gap:var(--space-xs);display:flex}.workspace-loading svg{animation:1s linear infinite spin}.editor-pane--loading{background:var(--color-editor)}@media (min-width:64rem){.home-layout{grid-template-columns:minmax(0,1fr) 20rem}.home-aside{top:calc(72px + var(--space-lg));position:sticky}.profile-layout{grid-template-columns:20rem minmax(0,1fr);align-items:start}.profile-layout .home-aside{position:static}}.practice-list{container-type:inline-size}@container (min-width:30rem){.practice-row{grid-template-columns:auto minmax(0,1fr) 6.5rem 5.5rem}.practice-row .badge:not(.badge--difficulty){display:inline-flex}.practice-row .badge{justify-content:center}}@container (min-width:44rem){.practice-row{grid-template-columns:auto minmax(0,1fr) minmax(0,12rem) 6.5rem 5.5rem}.practice-row__tags{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}}.home-narrow-only{gap:var(--space-md);display:grid}.home-wide-only{display:none}@media (min-width:64rem){.home-narrow-only{display:none}.home-wide-only{display:block}}.avatar{background:var(--color-paper-3);box-shadow:0 0 0 1px var(--lightningcss-light,transparent)var(--lightningcss-dark,var(--color-rule-2));vertical-align:middle;border-radius:50%;flex:none;display:inline-block;overflow:hidden}.avatar>img,.avatar>svg{object-fit:cover;width:100%;height:100%;display:block}.avatar-name{align-items:center;gap:var(--space-xs);min-width:0;display:inline-flex}.avatar-uploader{align-items:start;gap:var(--space-md);flex-wrap:wrap;display:flex}.avatar-uploader__body{gap:var(--space-xs);flex:14rem;min-width:0;display:grid}.avatar-uploader__body p{margin:0}.avatar-uploader__actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.avatar-uploader__body:has(#avatar-file:focus-visible) label.button{outline:2px solid var(--color-focus);outline-offset:2px}.avatar-uploader .form-message:empty{display:none}.avatar-remove{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:inline-flex}.learner-heading{align-items:center;gap:var(--space-sm);display:flex}.share-dialog{max-width:64rem}.share-list{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));margin:0;padding:0;list-style:none;display:grid}.share-list__item{background:var(--color-surface);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-md);color:var(--color-ink);cursor:pointer;gap:var(--space-2xs);padding:var(--space-xs);text-align:start;width:100%;display:grid}.share-list__item:hover{border-color:var(--color-control-border-hover)}.share-list__item:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.share-list__item img{aspect-ratio:1200/627;background:var(--color-paper-2);border-radius:var(--radius-sm);width:100%;height:auto;display:block}.share-list__item strong{font-size:var(--text-sm);padding-inline:var(--space-2xs)}.share-list__item span{color:var(--color-muted);font-size:var(--text-xs);padding-inline:var(--space-2xs)}.share-detail{gap:var(--space-md);display:grid}.share-detail__back{justify-self:start}.share-detail__layout{align-items:start;gap:var(--space-lg);grid-template-columns:minmax(0,1fr);display:grid}.share-preview{background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-md);justify-items:center;display:grid;overflow:hidden}.share-preview img{width:100%;max-width:100%;height:auto;display:block}.share-preview[data-format=story] img{object-fit:contain;width:auto;max-height:60dvh}.share-controls{gap:var(--space-md);min-width:0;display:grid}.share-controls__row{align-items:center;gap:var(--space-xs) var(--space-md);flex-wrap:wrap;justify-content:space-between;display:flex}.share-controls__row>span{color:var(--color-muted);font-size:var(--text-sm);font-weight:700}.share-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}.share-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}.share-switch button[aria-pressed=true]{background:var(--color-surface);box-shadow:0 1px 4px color-mix(in oklch, var(--color-shadow) 10%, transparent);color:var(--color-ink)}.share-controls .textarea{min-height:7rem;padding-block:var(--space-sm);resize:none}.share-actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.share-controls .form-message{align-items:center;gap:var(--space-2xs);min-height:1.5rem;margin:0;display:flex}@media (min-width:52rem){.share-detail__layout{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.share-preview[data-format=story] img{max-height:55dvh}}.prompt-translation{color:var(--color-muted);font-size:var(--text-sm);align-items:center;gap:var(--space-2xs) var(--space-xs);flex-wrap:wrap;margin:0;display:flex}.prompt-translation .text-button{font-size:inherit;min-height:32px}.question-detail__prompt-head{align-items:center;gap:var(--space-xs) var(--space-md);flex-wrap:wrap;justify-content:space-between;margin-block-end:var(--space-xs);display:flex}.question-detail__prompt-head h4{margin:0}.pane-tabs--inline{border:0;margin:0;padding:0}.translation-view{gap:var(--space-sm);display:grid}.translation-view__meta{color:var(--color-muted);font-size:var(--text-sm);align-items:center;gap:var(--space-2xs) var(--space-xs);flex-wrap:wrap;display:flex}.translation-view__actions,.translation-edit__actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.translation-edit{gap:var(--space-md);display:grid}.translation-edit textarea{font:inherit}
