@import "https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Syne:wght@600;700&display=swap";:root,[data-theme=light]{--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.25rem;--s-6:1.5rem;--s-7:2rem;--s-8:2.5rem;--text-xs:.75rem;--text-sm:.8125rem;--text-md:.9375rem;--text-lg:1.0625rem;--text-xl:1.25rem;--text-title:1.5rem;--control-h:2.375rem;--control-max:17.5rem;--sidebar-w:15rem;--radius-sm:.5rem;--radius:.625rem;--radius-lg:.875rem;--radius-xl:1.125rem;--bg:#f5f6f8;--surface:#fff;--surface-2:#f0f2f5;--surface-3:#e7eaef;--bg-muted:#e9ecf1;--ink:#101828;--ink-muted:#475467;--ink-soft:#79839a;--border:#10182817;--border-strong:#10182829;--accent:#0d9488;--accent-hot:#0f9e8f;--accent-ink:#0b5f57;--accent-soft:#0d94881a;--accent-contrast:#fff;--warn:#b45309;--warn-soft:#f59e0b24;--danger:#d92d20;--ok:#067647;--star:#f59e0b;--shadow-sm:0 1px 2px #1018280d;--shadow:0 1px 2px #1018280d, 0 6px 18px #1018280f;--shadow-lg:0 18px 40px #1018281f;--ring:0 0 0 3px #0d94882e;--c-indigo:#4f46e5;--c-violet:#7c3aed;--c-cyan:#0891b2;--c-teal:#0d9488;--c-emerald:#059669;--c-amber:#d97706;--c-rose:#e11d48;--tone-soft:12%;--tone-ink:100%;--font-display:"Syne", sans-serif;--font-body:"DM Sans", sans-serif;--bg-deep:var(--bg);--bg-elevated:var(--surface);--bg-mid:var(--surface-2);--line:var(--border);--teal:var(--accent);--brand:var(--accent);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg:#0a0e14;--surface:#11171f;--surface-2:#161d27;--surface-3:#1d2530;--bg-muted:#1a222d;--ink:#eaf0f7;--ink-muted:#a3aec0;--ink-soft:#78849a;--border:#eaf0f717;--border-strong:#eaf0f72e;--accent:#2dd4bf;--accent-hot:#14b8a6;--accent-ink:#5eead4;--accent-soft:#2dd4bf1f;--accent-contrast:#04231f;--warn:#fbbf24;--warn-soft:#fbbf2424;--danger:#fb7185;--ok:#4ade80;--star:#fbbf24;--shadow-sm:0 1px 2px #0006;--shadow:0 1px 2px #0006, 0 8px 24px #00000052;--shadow-lg:0 22px 48px #00000073;--ring:0 0 0 3px #2dd4bf38;--c-indigo:#818cf8;--c-violet:#c084fc;--c-cyan:#22d3ee;--c-teal:#2dd4bf;--c-emerald:#34d399;--c-amber:#fbbf24;--c-rose:#fb7185;--tone-soft:16%;--bg-deep:var(--bg);--bg-elevated:var(--surface);--bg-mid:var(--surface-2);--line:var(--border);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html{scroll-behavior:smooth}body{min-width:320px;color:var(--ink-muted);background:var(--bg);font-family:var(--font-body);font-size:var(--text-md);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;line-height:1.55}*,:before,:after{box-sizing:border-box}#root{min-height:100svh}a{color:var(--accent);text-underline-offset:.15em;text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;display:block}h1,h2,h3,h4{color:var(--ink);font-family:var(--font-body);letter-spacing:-.015em;margin:0;font-weight:650;line-height:1.25}p{margin:0}button,input,select,textarea{font:inherit}:focus-visible{box-shadow:var(--ring);border-radius:var(--radius-sm);outline:none}.btn{height:var(--control-h);border-radius:var(--radius);font-weight:600;font-size:var(--text-sm);white-space:nowrap;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.4rem;padding:0 .9rem;text-decoration:none;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.btn:hover{text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{height:2rem;font-size:var(--text-xs);padding:0 .7rem}.btn-primary{background:var(--accent);color:var(--accent-contrast);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:var(--accent-hot);color:var(--accent-contrast)}.btn-ghost{color:var(--ink);border-color:var(--border-strong);background:var(--surface)}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.btn-soft{background:var(--accent-soft);color:var(--accent-ink);border-color:#0000}.btn-soft:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 20%, transparent);color:var(--accent-ink)}.btn-icon{width:var(--control-h);height:var(--control-h);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--ink-muted);cursor:pointer;place-items:center;padding:0;transition:background .15s,color .15s;display:inline-grid;position:relative}.btn-icon:hover{background:var(--surface-2);color:var(--ink)}.control{height:var(--control-h);max-width:var(--control-max);border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface);width:100%;color:var(--ink);padding:0 .7rem;transition:border-color .15s,box-shadow .15s}select.control{appearance:none;color:var(--ink);background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 1.05rem) 55%,calc(100% - .7rem) 55%;background-repeat:no-repeat;background-size:.35rem .35rem,.35rem .35rem;padding-right:2rem}.control::placeholder{color:var(--ink-soft)}.control:focus{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));box-shadow:var(--ring);outline:none}.page-spinner{place-items:center;gap:var(--s-3);min-height:30vh;color:var(--ink-soft);font-size:var(--text-sm);display:grid}.spinner{border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.form-error{color:var(--danger);font-size:var(--text-sm)}.form-success{color:var(--ok);font-size:var(--text-sm)}.protect-base,.protect-strict{-webkit-user-select:none;user-select:none}.protect-base input,.protect-base textarea,.protect-base select,.protect-base [contenteditable=true],.protect-strict input,.protect-strict textarea,.protect-strict select,.protect-strict [contenteditable=true]{-webkit-user-select:text;user-select:text}.protect-strict img,.protect-strict video{pointer-events:auto}.app-security{min-height:100%}.app-content-lock{-webkit-touch-callout:none}.app-content-lock img,.app-content-lock video{-webkit-user-drag:none}.app-security-overlay{z-index:99999;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#05070aeb;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.app-security-card{color:#f2f4f8;text-align:center;background:#12141a;border:1px solid #ffffff2e;gap:.55rem;max-width:26rem;padding:1.35rem 1.5rem;display:grid}.app-security-card strong{letter-spacing:-.02em;font-size:1.05rem}.app-security-card p{color:#f2f4f8b8;margin:0;font-size:.9rem;line-height:1.45}#eleviq-devtools-block{z-index:2147483646;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#05070af5;place-items:center;padding:1.5rem;font-family:system-ui,sans-serif;display:grid;position:fixed;inset:0}#eleviq-devtools-block .eleviq-devtools-card{color:#f2f4f8;text-align:center;background:#12141a;border:1px solid #ffffff2e;gap:.55rem;max-width:26rem;padding:1.35rem 1.5rem;display:grid}#eleviq-devtools-block strong{letter-spacing:-.02em;font-size:1.1rem}#eleviq-devtools-block p{color:#f2f4f8bf;margin:0;font-size:.9rem;line-height:1.45}#eleviq-devtools-block .eleviq-devtools-hint{color:#f2f4f88c;font-size:.8rem}html[data-devtools-blocked="1"] #root{visibility:hidden!important;pointer-events:none!important}.secure-media,.secure-doc{border-radius:var(--radius-lg);border:1px solid var(--border);position:relative;overflow:hidden}.secure-media{background:#05070a}.secure-doc{background:#f4f4f5;flex-direction:column;min-height:55vh;display:flex}.secure-doc-stage{background:#f4f4f5;flex:1;min-height:0;position:relative}.secure-media video{z-index:1;aspect-ratio:16/9;object-fit:contain;background:#000;width:100%;max-height:min(64vh,580px);display:block;position:relative}.player-frame{aspect-ratio:16/9;border-radius:var(--radius-lg);border:1px solid var(--border);background:linear-gradient(145deg, var(--surface-3), var(--surface));width:100%;max-height:min(64vh,580px);box-shadow:var(--shadow);position:relative;overflow:hidden}.player-frame .secure-media{background:#000;border:0;border-radius:0;height:100%}.player-frame .secure-media video{aspect-ratio:auto;height:100%;max-height:none}.player-empty{place-content:center;justify-items:center;gap:var(--s-2);text-align:center;color:var(--ink-soft);font-size:var(--text-sm);padding:var(--s-5);display:grid;position:absolute;inset:0}.player-empty strong{color:var(--ink);font-size:var(--text-md)}.player-empty-mark{background:var(--accent-soft);width:2.75rem;height:2.75rem;color:var(--accent-ink);margin-bottom:var(--s-1);border-radius:50%;place-items:center;display:grid}.pdf-frame{background:#f4f4f5;border:0;width:100%;height:100%;min-height:0;position:absolute;inset:0}.pdf-pages{-webkit-user-select:none;user-select:none;background:#e8eaed;flex-direction:column;align-items:center;gap:.75rem;padding:.75rem;display:flex;position:absolute;inset:0;overflow:auto}.pdf-page-canvas{pointer-events:none;background:#fff;width:min(100%,900px);height:auto;display:block;box-shadow:0 1px 3px #1018281f}.secure-overlay,.exam-overlay{z-index:5;padding:var(--s-5);text-align:center;background:color-mix(in srgb, var(--bg) 92%, transparent);color:var(--ink);font-weight:600;font-size:var(--text-sm);place-content:center;place-items:center;gap:.35rem;display:grid;position:absolute;inset:0}.secure-overlay--capture{z-index:20;color:#e8eaf0;background:#05070a}.secure-overlay--capture span{color:#e8eaf0a6;font-size:.8rem;font-weight:500;display:block}.secure-media.is-shielded,.secure-doc.is-shielded{background:#05070a!important}.secure-watermark-layer{z-index:6;pointer-events:none;position:absolute;inset:0;overflow:hidden}.secure-watermark-layer--doc{z-index:2;background:0 0}.secure-watermark--doc-bar{z-index:2;letter-spacing:.03em;text-align:center;color:#1418248c;text-shadow:none;background:color-mix(in srgb, #f4f4f5 92%, var(--border));border-top:1px solid var(--border);pointer-events:none;-webkit-user-select:none;user-select:none;flex-shrink:0;padding:.4rem .75rem;font-size:.72rem;font-weight:600;position:relative;inset:auto}.secure-watermark{z-index:2;text-align:center;color:#ffffff8c;pointer-events:none;letter-spacing:.03em;text-shadow:0 1px 3px #000000a6;font-size:.78rem;font-weight:600;position:absolute;inset:auto 0 12px}.secure-watermark--doc{color:#14182480;text-shadow:none}.secure-watermark-grid{z-index:1;pointer-events:none;opacity:.35;-webkit-user-select:none;user-select:none;grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(3,1fr);place-items:center;display:grid;position:absolute;inset:-18%;overflow:hidden}.secure-watermark-grid--drift{animation:22s linear infinite watermark-drift}.secure-watermark-grid span{letter-spacing:.04em;color:#fff;white-space:nowrap;text-shadow:0 1px 3px #0000008c;font-size:.7rem;font-weight:600}.secure-watermark-grid--doc{opacity:.12;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);inset:0;animation:none!important;transform:none!important}.secure-watermark-grid--doc span{color:#14182473;text-shadow:none;font-size:.65rem}@keyframes watermark-drift{0%{transform:rotate(-16deg)scale(1.15)translate(0,0)}50%{transform:rotate(-20deg)scale(1.22)translate(4%,-3%)}to{transform:rotate(-16deg)scale(1.15)translate(0,0)}}.media-shield{-webkit-user-select:none;user-select:none}:-webkit-any(.secure-media:fullscreen,.secure-media:-webkit-full-screen,.secure-media.is-fs){background:#000;border:0;border-radius:0;place-items:center;width:100%;height:100%;max-height:none;display:grid}:is(.secure-media:fullscreen,.secure-media:fullscreen,.secure-media.is-fs){background:#000;border:0;border-radius:0;place-items:center;width:100%;height:100%;max-height:none;display:grid}:-webkit-any(.secure-media:fullscreen video,.secure-media:-webkit-full-screen video,.secure-media.is-fs video){z-index:1;aspect-ratio:auto;object-fit:contain;width:100%;height:100%;max-height:100vh;position:relative}:is(.secure-media:fullscreen video,.secure-media:fullscreen video,.secure-media.is-fs video){z-index:1;aspect-ratio:auto;object-fit:contain;width:100%;height:100%;max-height:100vh;position:relative}:-webkit-any(.secure-media:fullscreen .secure-watermark-layer,.secure-media:-webkit-full-screen .secure-watermark-layer,.secure-media.is-fs .secure-watermark-layer){z-index:2147483646;position:fixed;inset:0;overflow:hidden}:is(.secure-media:fullscreen .secure-watermark-layer,.secure-media:fullscreen .secure-watermark-layer,.secure-media.is-fs .secure-watermark-layer){z-index:2147483646;position:fixed;inset:0;overflow:hidden}:-webkit-any(.secure-media:fullscreen .secure-watermark-grid,.secure-media:-webkit-full-screen .secure-watermark-grid,.secure-media.is-fs .secure-watermark-grid){opacity:.45}:is(.secure-media:fullscreen .secure-watermark-grid,.secure-media:fullscreen .secure-watermark-grid,.secure-media.is-fs .secure-watermark-grid){opacity:.45}:-webkit-any(.secure-media:fullscreen .secure-watermark,.secure-media:-webkit-full-screen .secure-watermark,.secure-media.is-fs .secure-watermark){color:#ffffffb8;font-size:1rem}:is(.secure-media:fullscreen .secure-watermark,.secure-media:fullscreen .secure-watermark,.secure-media.is-fs .secure-watermark){color:#ffffffb8;font-size:1rem}.secure-fs-hit{z-index:8;cursor:pointer;background:0 0;border:0;width:3rem;height:2.75rem;margin:0;padding:0;position:absolute;bottom:0;right:0}:-webkit-any(.secure-media:fullscreen .secure-fs-hit,.secure-media:-webkit-full-screen .secure-fs-hit,.secure-media.is-fs .secure-fs-hit){width:3.25rem;height:3rem}:is(.secure-media:fullscreen .secure-fs-hit,.secure-media:fullscreen .secure-fs-hit,.secure-media.is-fs .secure-fs-hit){width:3.25rem;height:3rem}@keyframes page-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);background:var(--bg);min-height:100svh;display:grid}.shell-sidebar{gap:var(--s-4);height:100svh;padding:var(--s-4) var(--s-3);border-right:1px solid var(--border);background:var(--surface);grid-template-rows:auto 1fr auto;display:grid;position:sticky;top:0}.shell-brand{color:var(--ink);font-family:var(--font-display);letter-spacing:-.01em;cursor:pointer;background:0 0;border:0;align-items:center;gap:.5rem;padding:.25rem;font-size:1rem;font-weight:700;display:inline-flex}.shell-brand img{object-fit:contain;background:0 0;border-radius:0;width:26px;height:26px}.shell-nav{align-content:start;gap:.125rem;min-height:0;display:grid;overflow-y:auto}.nav-group-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);padding:var(--s-3) .65rem var(--s-1);font-size:.625rem;font-weight:700}.nav-link{border-radius:var(--radius);height:2.25rem;color:var(--ink-muted);font-weight:600;font-size:var(--text-sm);align-items:center;gap:.6rem;padding:0 .65rem;transition:background .15s,color .15s;display:flex}button.nav-link{cursor:pointer;text-align:left;width:100%;font:inherit;background:0 0;border:0}.nav-badge{background:var(--accent);min-width:1.25rem;height:1.25rem;color:var(--accent-contrast);border-radius:999px;place-items:center;margin-left:auto;padding:0 .35rem;font-size:.65rem;font-weight:700;display:inline-grid}.nav-link:hover{background:var(--surface-2);color:var(--ink);text-decoration:none}.nav-link.active{background:var(--accent-soft);color:var(--accent-ink);text-decoration:none}.nav-link svg{flex-shrink:0}.shell-user{gap:var(--s-2);padding-top:var(--s-3);border-top:1px solid var(--border);display:grid}.shell-user-card{align-items:center;gap:.55rem;min-width:0;padding:.35rem .4rem;display:flex}.shell-user-name{color:var(--ink);font-weight:600;font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shell-user-mail{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.6875rem;overflow:hidden}.avatar{background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);width:1.9rem;height:1.9rem;color:var(--accent-ink);font-size:var(--text-xs);border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:grid}.avatar.lg{width:2.25rem;height:2.25rem;font-size:var(--text-sm)}.theme-toggle{border:1px solid var(--border);background:var(--surface-2);color:var(--ink-muted);border-radius:var(--radius);height:2rem;font-size:var(--text-xs);cursor:pointer;align-items:center;gap:.45rem;padding:0 .6rem;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.theme-toggle:hover{color:var(--ink);background:var(--surface-3)}.theme-toggle.icon-only{width:var(--control-h);height:var(--control-h);background:var(--surface);justify-content:center;padding:0}.shell-main{flex-direction:column;min-width:0;display:flex}.shell-topbar{justify-content:space-between;align-items:center;gap:var(--s-4);padding:.6rem clamp(var(--s-4), 2.2vw, var(--s-8));border-bottom:1px solid var(--border);z-index:5;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;position:sticky;top:0}.shell-greeting{color:var(--ink);font-weight:650;font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shell-top-actions{align-items:center;gap:var(--s-2);flex-shrink:0;display:flex}.icon-dot:after{content:"";background:var(--accent);width:.4rem;height:.4rem;box-shadow:0 0 0 2px var(--surface);border-radius:50%;position:absolute;top:.45rem;right:.5rem}.shell-content{padding:var(--s-6) clamp(var(--s-4), 2.2vw, var(--s-8)) 5rem;flex:1;animation:.18s both page-enter}.shell-bottom{display:none}@media (max-width:960px){.shell{grid-template-columns:minmax(0,1fr)}.shell-sidebar{display:none}.shell-topbar{padding:.55rem var(--s-4)}.shell-content{padding:var(--s-4) var(--s-4) 5.5rem}.shell-bottom{z-index:20;background:color-mix(in srgb, var(--surface) 92%, transparent);border-top:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:.3rem .2rem calc(.3rem + env(safe-area-inset-bottom));grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-link{color:var(--ink-soft);border-radius:var(--radius-sm);justify-items:center;gap:.15rem;padding:.3rem .1rem;font-size:.625rem;font-weight:700;display:grid}.bottom-link:hover{text-decoration:none}.bottom-link.active{color:var(--accent)}}@media (min-width:961px){.shell-topbar .theme-toggle.icon-only{display:none}}.u-stack{gap:var(--s-4);display:grid}.u-stack-sm{gap:var(--s-2);display:grid}.u-row{align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.u-cluster,.inline-row{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.row-between{justify-content:space-between;align-items:flex-start;gap:var(--s-4);flex-wrap:wrap;display:flex}.page,.stack-page{gap:var(--s-5);align-content:start;width:min(100%,58rem);margin:0 auto;display:grid}.page--wide,.stack-page.wide{width:min(100%,80vw)}.stack-page.exam-take{width:100%;max-width:none}.split{gap:var(--s-5);align-items:start;display:grid}.split-main,.split-rail{gap:var(--s-5);align-content:start;min-width:0;display:grid}.split-rail{gap:var(--s-4)}@media (min-width:960px){.split{gap:var(--s-6);grid-template-columns:minmax(0,1fr) minmax(16rem,20rem)}.split--media{grid-template-columns:minmax(0,1fr) minmax(15rem,19rem)}.mock-setup .split{grid-template-columns:minmax(0,1fr) minmax(15rem,18rem)}}.page-header{gap:var(--s-2);padding-bottom:var(--s-1);display:grid}.page-header__back{color:var(--ink-soft);font-size:var(--text-xs);letter-spacing:.01em;align-items:center;gap:.3rem;width:-moz-fit-content;width:fit-content;font-weight:600;display:inline-flex}.page-header__back:hover{color:var(--ink);text-decoration:none}.page-header h1{font-size:var(--text-title);max-width:min(100%,42ch)}.mock-setup .page-header h1,.exam-take .exam-title{max-width:none}.page-header p{color:var(--ink-soft);font-size:var(--text-sm);max-width:62ch}.page-header__meta{gap:var(--s-2);padding-top:var(--s-1);flex-wrap:wrap;align-items:center;display:flex}.chip{background:var(--surface-2);border:1px solid var(--border);height:1.5rem;color:var(--ink-muted);font-size:var(--text-xs);white-space:nowrap;border-radius:999px;align-items:center;gap:.3rem;padding:0 .55rem;font-weight:600;display:inline-flex}.chip--accent{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 28%, transparent);color:var(--accent-ink)}.chip--warn{background:var(--warn-soft);border-color:color-mix(in srgb, var(--warn) 30%, transparent);color:var(--warn)}.eyebrow{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}.panel{gap:var(--s-3);padding:var(--s-4);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);align-content:start;display:grid}.panel__head{justify-content:space-between;align-items:baseline;gap:var(--s-3);display:flex}.panel__title{font-size:var(--text-sm);color:var(--ink);font-weight:650}.panel__hint,.meta-line,.empty-hint{font-size:var(--text-sm);color:var(--ink-soft)}.subhead{font-size:var(--text-sm);color:var(--ink);font-weight:650}.section-header{justify-content:space-between;align-items:baseline;gap:var(--s-3);display:flex}.section-header h2{font-size:var(--text-lg)}.section-header-link{color:var(--accent);font-size:var(--text-xs);white-space:nowrap;font-weight:700}.home-section{gap:var(--s-3);display:grid}.empty-state{justify-items:start;gap:var(--s-2);padding:var(--s-5) var(--s-4);border-radius:var(--radius-lg);border:1px dashed var(--border-strong);background:var(--surface-2);color:var(--ink-soft);font-size:var(--text-sm);display:grid}.empty-state strong{color:var(--ink);font-size:var(--text-md)}.continue-card{gap:var(--s-4);padding:var(--s-5);border-radius:var(--radius-xl);border:1px solid color-mix(in srgb, var(--accent) 22%, var(--border));background:radial-gradient(120% 140% at 0% 0%, var(--accent-soft), transparent 58%), var(--surface);box-shadow:var(--shadow);grid-template-columns:1fr;display:grid}.continue-copy{gap:var(--s-2);min-width:0;display:grid}.continue-card h2{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);font-weight:700}.continue-title{font-size:var(--text-xl);color:var(--ink);letter-spacing:-.015em;max-width:30ch;font-weight:650}.continue-copy .progress-track{max-width:26rem}.continue-actions{gap:var(--s-2);padding-top:var(--s-1);flex-wrap:wrap;display:flex}.circular-progress{border-radius:50%;flex-shrink:0;place-items:center;display:grid;position:relative}.circular-progress__svg{width:100%;height:100%;transform:rotate(-90deg)}.circular-progress__track,.circular-progress__value{fill:none}.circular-progress__track{stroke:var(--border-strong)}.circular-progress__value{stroke:var(--tone,var(--accent));stroke-linecap:round}.circular-progress__label{color:var(--ink);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:.95em;font-weight:700;line-height:1;position:absolute}.continue-card .circular-progress{justify-self:start;width:7rem;height:7rem}.continue-card .circular-progress__label{font-size:1.35rem}.course-card-progress{align-items:center;gap:var(--s-2);grid-template-columns:auto 1fr;display:grid}.course-card-progress .circular-progress__label{font-size:.55rem}@media (min-width:720px){.continue-card{grid-template-columns:1fr auto;align-items:center}.continue-card .circular-progress{justify-self:end}}.chart-frame{width:100%;position:relative}.donut-frame{place-items:center;display:grid}.donut-center{pointer-events:none;text-align:center;place-content:center;justify-items:center;gap:.1rem;display:grid;position:absolute;inset:0}.donut-center strong{color:var(--ink);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:1.35rem}.donut-center span{font-size:var(--text-xs);color:var(--ink-soft)}.chart-legend{gap:var(--s-3);flex-wrap:wrap;display:flex}.chart-legend span{font-size:var(--text-xs);color:var(--ink-muted);align-items:center;gap:.35rem;font-weight:600;display:inline-flex}.legend-dot{background:var(--dot,var(--accent));border-radius:2px;width:.55rem;height:.55rem}.metric-row{gap:var(--s-3);grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));display:grid}.stat-card,.metric{align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);grid-template-columns:auto 1fr;display:grid}.metric{grid-template-columns:1fr}.stat-icon{border-radius:var(--radius);background:var(--accent-soft);width:2.25rem;height:2.25rem;color:var(--accent-ink);place-items:center;display:grid}.stat-card-copy,.metric{gap:.1rem;min-width:0;display:grid}.stat-card-copy span,.metric span{font-size:var(--text-xs);color:var(--ink-soft);font-weight:600}.stat-card-copy strong,.metric strong{color:var(--ink);letter-spacing:-.03em;font-size:1.35rem;line-height:1.2}.stat-card-copy small{color:var(--ink-soft);font-size:var(--text-xs)}.stat-card-copy .progress-track{max-width:11rem;margin:.15rem 0}.progress-track{background:var(--bg-muted);border-radius:999px;height:6px;overflow:hidden}.progress-fill{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--accent-hot));height:100%;transition:width .3s}.card-grid{gap:var(--s-3);grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));display:grid}.split-rail .card-grid,.split-rail .metric-row{grid-template-columns:minmax(0,1fr)}.course-card{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);color:inherit;box-shadow:var(--shadow-sm);grid-template-rows:auto 1fr;transition:transform .15s,border-color .15s,box-shadow .15s;display:grid;overflow:hidden}.course-card:hover{border-color:color-mix(in srgb, var(--accent) 32%, var(--border));box-shadow:var(--shadow);color:inherit;text-decoration:none;transform:translateY(-2px)}.course-card-art{aspect-ratio:16/9;background:radial-gradient(circle at 26% 26%, color-mix(in srgb, var(--accent) 34%, transparent), transparent 58%), linear-gradient(145deg, var(--surface-3), var(--surface-2));place-items:center;display:grid;position:relative;overflow:hidden}.course-card-art img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.course-card-art.has-image{background:var(--surface-2)}.course-card-art .course-card-initial{font-family:var(--font-display);color:var(--ink);opacity:.7;font-size:1.5rem;font-weight:700}.course-card-play{right:var(--s-2);bottom:var(--s-2);background:color-mix(in srgb, var(--surface) 85%, transparent);border:1px solid var(--border);width:1.75rem;height:1.75rem;color:var(--ink);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:50%;place-items:center;display:grid;position:absolute}.course-card-lock{top:var(--s-2);right:var(--s-2);z-index:1;color:#fff;background:#080a0e9e;border:1px solid #ffffff59;place-items:center;width:1.85rem;height:1.85rem;display:grid;position:absolute}.course-card.is-locked .course-card-art img{filter:saturate(.85)brightness(.92)}.course-card-lock-label{letter-spacing:.06em;text-transform:uppercase;color:var(--c-rose,#c2416e);align-items:center;gap:.3rem;font-size:.65rem;font-weight:750;display:inline-flex}.course-card-body{gap:var(--s-2);padding:var(--s-3);align-content:start;display:grid}.course-card-body strong{color:var(--ink);font-size:var(--text-sm);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.course-card-body span{color:var(--ink-soft);font-size:var(--text-xs)}.course-hero-thumb{border:1px solid var(--border-strong);background:var(--surface-2);width:100%;max-height:14rem;overflow:hidden}.course-hero-thumb img{object-fit:cover;width:100%;height:14rem;display:block}.faculty-hero{justify-content:flex-start;display:flex}.faculty-avatar,.list-avatar{object-fit:cover;border:1px solid var(--border-strong);background:var(--surface-2);width:4.5rem;height:4.5rem}.list-avatar{vertical-align:middle;width:1.75rem;height:1.75rem;margin-right:.5rem;display:inline-block}.faculty-page{gap:1.25rem}.faculty-profile-hero{border:1px solid var(--border-strong);background:linear-gradient(125deg, color-mix(in srgb, var(--c-indigo) var(--tone-soft), var(--surface)) 0%, var(--surface) 58%);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(1rem,2.5vw,1.75rem);padding:clamp(.9rem,2vw,1.25rem);display:grid}.faculty-profile-avatar{border:1px solid var(--border-strong);background:linear-gradient(135deg, color-mix(in srgb, var(--c-indigo) 70%, transparent), color-mix(in srgb, var(--c-violet) 35%, transparent));color:#fff;place-items:center;width:clamp(6.5rem,16vw,8.5rem);height:clamp(6.5rem,16vw,8.5rem);font-size:2rem;font-weight:750;display:grid;overflow:hidden}.faculty-profile-avatar img{object-fit:cover;width:100%;height:100%;display:block}.faculty-profile-copy{gap:.55rem;min-width:0;display:grid}.faculty-profile-name{letter-spacing:-.02em;color:var(--ink);margin:0;font-size:clamp(1.35rem,2.6vw,1.85rem);font-weight:750;line-height:1.15}.faculty-profile-id{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin:0;font-weight:700}.faculty-profile-stats{flex-wrap:wrap;gap:.55rem;margin-top:.15rem;display:flex}.faculty-profile-stats>div{border:1px solid var(--border-strong);background:var(--surface);gap:.1rem;min-width:4.5rem;padding:.5rem .7rem;display:grid}.faculty-profile-stats strong{font-variant-numeric:tabular-nums;color:var(--ink);font-size:1.1rem;font-weight:750;line-height:1}.faculty-profile-stats span{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-size:.62rem;font-weight:750}.faculty-profile-rating{color:var(--ink-soft);font-size:var(--text-sm);flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.faculty-topic-list{flex-wrap:wrap;gap:.4rem;margin:.15rem 0 0;padding:0;list-style:none;display:flex}.faculty-topic-list li{border:1px solid var(--border-strong);background:color-mix(in srgb, var(--c-cyan) 10%, var(--surface));color:var(--ink-muted);letter-spacing:.04em;text-transform:uppercase;padding:.25rem .5rem;font-size:.68rem;font-weight:700}.faculty-about,.faculty-sessions{gap:.85rem;display:grid}.faculty-bio{border:1px solid var(--border-strong);background:var(--surface);color:var(--ink-muted);font-size:var(--text-sm);white-space:pre-wrap;margin:0;padding:1rem;line-height:1.55}.faculty-footnote{display:none}@media (max-width:720px){.faculty-profile-hero{grid-template-columns:1fr;justify-items:start}}.entity-card{gap:var(--s-2);padding:var(--s-3) var(--s-4);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);color:inherit;box-shadow:var(--shadow-sm);align-content:start;transition:border-color .15s,transform .15s;display:grid}.entity-card:hover{border-color:color-mix(in srgb, var(--accent) 32%, var(--border));color:inherit;text-decoration:none;transform:translateY(-2px)}.entity-card strong{color:var(--ink);font-size:var(--text-sm)}.entity-card span{color:var(--ink-soft);font-size:var(--text-xs)}.exam-card{border-left:3px solid var(--border-strong)}.exam-card.type-MOCK{border-left-color:var(--accent)}.exam-card.type-EXAM{border-left-color:#f97316}.promo-banner{align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);border-radius:var(--radius-lg);color:var(--ink);border:1px solid color-mix(in srgb, var(--accent) 24%, var(--border));background:radial-gradient(100% 160% at 100% 0%, var(--accent-soft), transparent 60%), var(--surface);box-shadow:var(--shadow-sm);transition:border-color .15s;display:flex}.promo-banner:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));text-decoration:none}.promo-banner-mark{border-radius:var(--radius);background:var(--accent-soft);width:2.25rem;height:2.25rem;color:var(--accent-ink);flex-shrink:0;place-items:center;display:grid}.promo-banner>div{flex:1;gap:.1rem;min-width:0;display:grid}.promo-banner strong{font-size:var(--text-sm);color:var(--ink)}.promo-banner span{color:var(--ink-soft);font-size:var(--text-xs)}.promo-banner-cta{color:var(--accent);font-size:var(--text-xs);flex-shrink:0;align-items:center;gap:.25rem;font-weight:700;display:inline-flex}.simple-list{gap:var(--s-2);margin:0;padding:0;list-style:none;display:grid}.simple-list li{padding:var(--s-3);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);align-content:start;gap:.25rem;display:grid}.simple-list.cols{gap:var(--s-3);grid-template-columns:repeat(auto-fill,minmax(20rem,1fr))}.answer-list{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr))}.answer-list li{gap:.1rem}.exam-detail{width:100%;max-width:none}.exam-review-panel .panel__head{gap:var(--s-3);flex-wrap:wrap;align-items:center}.review-filters{gap:var(--s-2);flex-wrap:wrap;display:flex}.review-filter-count{opacity:.7;margin-left:.3rem;font-size:.7rem;font-weight:500}.review-stack{gap:var(--s-4);display:grid}.review-card{gap:var(--s-3);padding:var(--s-4);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface-2);display:grid}.review-card--correct{border-color:color-mix(in srgb, var(--ok) 35%, var(--border));background:color-mix(in srgb, var(--ok) 5%, var(--surface))}.review-card--incorrect{border-color:color-mix(in srgb, var(--danger) 30%, var(--border));background:color-mix(in srgb, var(--danger) 4%, var(--surface))}.review-card--skipped{border-color:color-mix(in srgb, var(--warn) 30%, var(--border));background:color-mix(in srgb, var(--warn) 5%, var(--surface))}.review-card__head{justify-content:space-between;align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.review-card__index{font-size:var(--text-sm);color:var(--ink);font-weight:700}.review-badge{font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--ink-muted);padding:.2rem .55rem;font-weight:700}.review-badge--correct{color:var(--ok);border-color:color-mix(in srgb, var(--ok) 40%, var(--border));background:color-mix(in srgb, var(--ok) 10%, var(--surface))}.review-badge--incorrect{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 35%, var(--border));background:color-mix(in srgb, var(--danger) 8%, var(--surface))}.review-badge--skipped{color:var(--warn);border-color:color-mix(in srgb, var(--warn) 40%, var(--border));background:color-mix(in srgb, var(--warn) 10%, var(--surface))}.review-card__question{font-size:var(--text-md);line-height:1.55}.review-card__question .rich-text :where(p,span,div,li){color:var(--ink);font-size:var(--text-md)}.review-card__missing,.review-card__empty{color:var(--ink-soft);font-size:var(--text-sm);margin:0}.review-options .review-option{cursor:default;pointer-events:none;flex-wrap:wrap}.review-option__tags{flex-wrap:wrap;align-self:center;gap:.35rem;margin-left:auto;display:flex}.review-tag{letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--ink-muted);white-space:nowrap;padding:.15rem .45rem;font-size:.65rem;font-weight:700}.review-tag--marked{color:var(--accent-ink);border-color:color-mix(in srgb, var(--accent) 40%, var(--border));background:var(--accent-soft)}.review-tag--correct{color:var(--ok);border-color:color-mix(in srgb, var(--ok) 40%, var(--border));background:color-mix(in srgb, var(--ok) 10%, var(--surface))}.review-card__fallback{gap:var(--s-3);display:grid}.review-card__label{font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.25rem;font-weight:700;display:block}.review-card__label--ok{color:var(--ok)}.ui-sharp .review-card,.ui-sharp .review-badge,.ui-sharp .review-tag{border-radius:0}.simple-list li.unread{border-color:color-mix(in srgb, var(--accent) 35%, var(--border));background:color-mix(in srgb, var(--accent-soft) 55%, var(--surface))}.simple-list strong{color:var(--ink);font-size:var(--text-sm)}.simple-list span{color:var(--ink-soft);font-size:var(--text-xs)}.bulletin-item{padding:var(--s-3);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);gap:.25rem;display:grid}.bulletin-item strong{color:var(--ink);font-size:var(--text-sm)}.bulletin-item p{color:var(--ink-soft);font-size:var(--text-sm)}.home-announcements__list{gap:var(--s-2);display:grid}@media (min-width:720px){.home-announcements__list{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}}.home-announcements .bulletin-item{border-left:3px solid color-mix(in srgb, var(--warn) 70%, var(--border))}.home-announcements .bulletin-item .meta-line{margin-top:.15rem}.star-rating{gap:.15rem;display:inline-flex}.star-btn{border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;place-items:center;transition:color .12s,transform .12s;display:grid}.star-btn:hover{transform:scale(1.08)}.star-btn.active,.star-btn:hover{color:var(--star)}.access-banner{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);color:var(--ink-muted);font-size:var(--text-sm);box-shadow:var(--shadow-sm);flex-wrap:wrap;display:flex}.access-banner.status-approved{border-color:color-mix(in srgb, var(--ok) 35%, var(--border));background:color-mix(in srgb, var(--ok) 8%, var(--surface))}.access-banner.status-pending{border-color:color-mix(in srgb, var(--warn) 40%, var(--border));background:color-mix(in srgb, var(--warn) 8%, var(--surface))}.access-banner.status-rejected{border-color:color-mix(in srgb, var(--danger) 35%, var(--border))}.form-panel{gap:var(--s-3);max-width:22rem;display:grid}.form-panel label,.auth-card label{color:var(--ink-muted);font-size:var(--text-sm);gap:.3rem;font-weight:500;display:grid}.mock-setup__form{gap:var(--s-5);max-width:none}.mock-setup__form .control{max-width:none}.mock-setup__presets{gap:var(--s-2);display:grid}.mock-setup__presets-label{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}.mock-setup__preset-meta{color:var(--ink-soft);margin-left:.35rem;font-size:.7rem;font-weight:500}.pref-chip.active .mock-setup__preset-meta{color:var(--accent-ink)}.mock-setup__grid{gap:var(--s-4);display:grid}@media (min-width:640px){.mock-setup__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.mock-setup__submit{justify-self:start;min-width:12rem}.mock-setup__summary{gap:var(--s-3);margin:0;padding:0;list-style:none;display:grid}.mock-setup__summary li{align-items:flex-start;gap:var(--s-3);padding:var(--s-3);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);color:var(--ink-soft);display:flex}.mock-setup__summary li svg{color:var(--accent);flex-shrink:0;margin-top:.15rem}.mock-setup__summary div{gap:.15rem;min-width:0;display:grid}.mock-setup__summary span{font-size:var(--text-xs);letter-spacing:.02em;text-transform:uppercase;color:var(--ink-soft);font-weight:600}.mock-setup__summary strong{font-size:var(--text-sm);color:var(--ink);overflow-wrap:anywhere;font-weight:650}.mock-setup__tip{margin:var(--s-4) 0 0;padding:var(--s-3);border-radius:var(--radius);background:var(--accent-soft);color:var(--accent-ink);font-size:var(--text-sm);line-height:1.45}.search-input{max-width:20rem}.auth-page{min-height:100svh;padding:var(--s-5);background:var(--bg);place-items:center;display:grid}.auth-card{gap:var(--s-3);width:min(100%,23rem);padding:var(--s-5);border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);display:grid}.auth-card.flat{box-shadow:var(--shadow-sm)}.auth-card h1{font-size:var(--text-title)}.auth-lead{color:var(--ink-soft);font-size:var(--text-sm)}.auth-card input,.auth-card select{height:var(--control-h);border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface);width:100%;color:var(--ink);padding:0 .7rem}.auth-links{justify-content:space-between;gap:var(--s-3);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.pref-grid{gap:var(--s-2);flex-wrap:wrap;display:flex}.pref-chip{border:1px solid var(--border-strong);background:var(--surface);height:2rem;color:var(--ink-muted);cursor:pointer;font-size:var(--text-sm);border-radius:999px;padding:0 .85rem;font-weight:600;transition:background .15s,border-color .15s,color .15s}.pref-chip:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--border))}.pref-chip.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink)}.option-stack{gap:var(--s-2);display:grid}.option-row,.option-card{gap:var(--s-3);padding:var(--s-3) var(--s-4);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);color:inherit;text-align:left;cursor:pointer;font-size:var(--text-sm);align-items:flex-start;transition:border-color .15s,background .15s;display:flex}.option-row:hover,.option-card:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--border))}.option-card.selected{border-color:var(--accent);background:var(--accent-soft)}.option-card.correct{border-color:color-mix(in srgb, var(--ok) 55%, var(--border));background:color-mix(in srgb, var(--ok) 10%, var(--surface))}.option-card.wrong{border-color:color-mix(in srgb, var(--danger) 45%, var(--border));background:color-mix(in srgb, var(--danger) 8%, var(--surface))}.option-card.correct .option-letter{border-color:var(--ok);background:var(--ok);color:#fff}.option-card.wrong .option-letter{border-color:var(--danger);background:var(--danger);color:#fff}.option-letter{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);width:1.75rem;height:1.75rem;color:var(--ink-muted);font-size:var(--text-xs);flex-shrink:0;place-items:center;font-weight:700;display:inline-grid}.option-card.selected .option-letter{border-color:var(--accent);background:var(--accent);color:var(--accent-contrast)}.option-body{flex:1;min-width:0;padding-top:.15rem}.quiz-q{gap:var(--s-2);padding-top:var(--s-3);border-top:1px solid var(--border);display:grid}.quiz-q:first-of-type{border-top:0;padding-top:0}.rich-text :where(p,span,div,li){color:var(--ink-muted);font-size:var(--text-sm)}.exam-question{margin-bottom:var(--s-4);font-size:var(--text-md);line-height:1.55}.exam-question .rich-text :where(p,span,div,li){color:var(--ink);font-size:var(--text-md)}.exam-top{justify-content:space-between;gap:var(--s-4);padding:var(--s-3) var(--s-4);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);align-items:flex-start;display:flex}.exam-top__copy{gap:.25rem;min-width:0;display:grid}.exam-top h1,.exam-title{font-size:var(--text-title);max-width:none;margin:0}.exam-progress{background:var(--surface-3);border-radius:999px;height:.35rem;overflow:hidden}.exam-progress__bar{border-radius:inherit;background:var(--accent);height:100%;transition:width .2s}.timer{font-variant-numeric:tabular-nums;color:var(--ink);min-height:var(--control-h);border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface-2);flex-shrink:0;align-content:center;justify-items:end;gap:.05rem;padding:.35rem .85rem;display:inline-grid}.timer__label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);font-size:.625rem;font-weight:700}.timer__value{font-size:var(--text-lg);font-weight:700;line-height:1.1}.timer.urgent{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 45%, var(--border));background:color-mix(in srgb, var(--danger) 8%, var(--surface))}.timer.urgent .timer__label{color:color-mix(in srgb, var(--danger) 70%, var(--ink-soft))}.palette{grid-template-columns:repeat(auto-fill,minmax(2rem,1fr));gap:.4rem;display:grid}.palette-legend{gap:var(--s-3);margin-bottom:var(--s-3);font-size:var(--text-xs);color:var(--ink-soft);flex-wrap:wrap;font-weight:550;display:flex}.palette-legend span{align-items:center;gap:.35rem;display:inline-flex}.palette-swatch{border:1px solid var(--border-strong);background:var(--surface-2);border-radius:2px;width:.7rem;height:.7rem;display:inline-block}.palette-swatch.done{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.palette-swatch.current{border-color:var(--accent);box-shadow:var(--ring);background:var(--surface)}.palette-dot{aspect-ratio:1;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface-2);width:100%;min-height:2rem;color:var(--ink-muted);cursor:pointer;font-size:var(--text-xs);font-weight:600}.palette-dot.done{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 45%, var(--border));color:var(--accent-ink)}.palette-dot.current{border-color:var(--accent);box-shadow:var(--ring);color:var(--ink)}.exam-actions{justify-content:space-between;gap:var(--s-3);padding:var(--s-3) var(--s-4);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);display:flex}.exam-submit{width:100%;margin-top:var(--s-2)}.exam-take .split-rail .panel{position:sticky;top:4.5rem}.results-page{width:100%;max-width:none}.results-stats{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));display:grid}.results-latest__grid{gap:var(--s-4);align-items:center;display:grid}@media (min-width:720px){.results-latest__grid{grid-template-columns:minmax(0,1fr) auto}}.results-latest__copy{gap:var(--s-2);min-width:0;display:grid}.results-latest__copy strong{font-size:var(--text-md);color:var(--ink);overflow-wrap:anywhere}.results-latest__score{gap:var(--s-3);justify-items:start;display:grid}@media (min-width:720px){.results-latest__score{text-align:right;justify-items:end}}.results-latest__value{font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--ink);font-size:1.75rem;font-weight:750;line-height:1}.history-list{gap:var(--s-2);margin:0;padding:0;list-style:none;display:grid}.history-row{gap:var(--s-3);padding:var(--s-3) var(--s-4);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);align-items:center;display:grid}@media (min-width:720px){.history-row{grid-template-columns:minmax(0,1fr) auto}}.history-row--good{border-color:color-mix(in srgb, var(--ok) 28%, var(--border))}.history-row--mid{border-color:color-mix(in srgb, var(--warn) 28%, var(--border))}.history-row--low{border-color:color-mix(in srgb, var(--danger) 22%, var(--border))}.history-row__main{gap:.45rem;min-width:0;display:grid}.history-row__title{font-size:var(--text-sm);color:var(--ink);overflow-wrap:anywhere;font-weight:650}.history-row__meta{color:var(--ink-soft);font-size:var(--text-xs);flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.history-chip{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--ink-muted);align-items:center;padding:.1rem .45rem;font-weight:650;display:inline-flex}.history-row__bar{gap:var(--s-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;max-width:22rem;display:grid}.history-row__pct{font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--ink-muted);text-align:right;min-width:2.5rem;font-weight:700}.history-row__side{align-items:center;gap:var(--s-3);flex-wrap:wrap;justify-content:space-between;display:flex}@media (min-width:720px){.history-row__side{justify-content:flex-end}}.history-score{font-size:var(--text-md);font-variant-numeric:tabular-nums;color:var(--ink);text-align:right;min-width:3.5rem;font-weight:750}.history-row--good .history-score{color:var(--ok)}.history-row--mid .history-score{color:var(--warn)}.history-row--low .history-score{color:var(--danger)}.history-row .btn{align-items:center;gap:.35rem;display:inline-flex}.mastery-list{gap:var(--s-3);margin:0;padding:0;list-style:none;display:grid}.mastery-list__head{justify-content:space-between;gap:var(--s-2);font-size:var(--text-sm);margin-bottom:.35rem;display:flex}.mastery-list__head span{color:var(--ink-muted);overflow-wrap:anywhere;font-weight:550}.mastery-list__head strong{color:var(--ink);font-variant-numeric:tabular-nums}.results-cta{gap:var(--s-3);margin-bottom:var(--s-3);color:var(--ink-muted);font-size:var(--text-sm);align-items:flex-start;line-height:1.45;display:flex}.results-cta svg{color:var(--accent);flex-shrink:0;margin-top:.15rem}.results-cta p{margin:0}.ui-sharp .history-row,.ui-sharp .history-chip{border-radius:0}.session-page{gap:1.1rem}.session-stage{grid-template-columns:minmax(0,1fr) minmax(14rem,17rem);align-items:start;gap:1rem;display:grid}.session-player-col{gap:.75rem;min-width:0;display:grid}.session-player{border:1px solid var(--border-strong);background:#0b0d12}.session-player--locked{background:color-mix(in srgb, var(--c-indigo) 8%, #0b0d12)}.session-locked{text-align:center;color:#e8eaf0;place-content:center;justify-items:center;gap:.65rem;min-height:min(52vw,22rem);padding:1.5rem 1.25rem;display:grid}.session-locked-mark{border:1px solid color-mix(in srgb, var(--c-indigo) 55%, transparent);background:color-mix(in srgb, var(--c-indigo) 18%, transparent);color:#c4c8ff;place-items:center;width:3.25rem;height:3.25rem;display:grid}.session-locked strong{letter-spacing:-.02em;font-size:1.05rem}.session-locked>span{color:#e8eaf0b8;max-width:26rem;font-size:.88rem;line-height:1.45}.session-locked-actions{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.35rem;display:flex}.session-locked-pending{color:color-mix(in srgb, var(--warn) 80%, #fff);font-size:.8rem}.session-meta-bar{border:1px solid var(--border-strong);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .85rem;display:flex}.session-meta-progress{align-items:center;gap:.75rem;display:flex}.session-meta-progress strong{font-size:var(--text-sm);color:var(--ink);display:block}.session-meta-progress span{font-size:var(--text-xs);color:var(--ink-soft);display:block}.session-faculty-chip{border:1px solid var(--border-strong);background:color-mix(in srgb, var(--c-indigo) 8%, var(--surface));color:var(--ink);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:.4rem;padding:.4rem .65rem;font-weight:700;text-decoration:none;display:inline-flex}.session-faculty-chip:hover{border-color:var(--c-indigo);text-decoration:none}.session-faculty-chip.muted{color:var(--ink-muted)}.session-side{gap:.75rem;display:grid}.session-side-card{border:1px solid var(--border-strong);background:var(--surface);gap:.65rem;padding:.9rem;display:grid}.session-side-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin:0;font-size:.68rem;font-weight:750}.session-side-actions{gap:.45rem;display:grid}.session-side-actions .btn{justify-content:flex-start;gap:.4rem}.session-tabs{border-bottom:2px solid var(--border-strong);flex-wrap:wrap;gap:.35rem;display:flex}.session-tab{appearance:none;color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:.45rem;margin-bottom:-2px;padding:.7rem .9rem;font-size:.78rem;font-weight:750;display:inline-flex}.session-tab em{border:1px solid var(--border-strong);color:var(--ink-soft);padding:.12rem .35rem;font-size:.62rem;font-style:normal}.session-tab.is-active{color:var(--c-indigo);border-bottom-color:var(--c-indigo)}.session-panel{border:1px solid var(--border-strong);background:var(--surface);min-height:10rem;padding:clamp(.9rem,2vw,1.25rem)}.session-lock-note{gap:.65rem;max-width:28rem;display:grid}.session-material-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.session-material-row{border:1px solid var(--border-strong);background:var(--bg);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.75rem;display:grid}.session-material-icon{background:color-mix(in srgb, var(--c-indigo) 12%, transparent);width:2.4rem;height:2.4rem;color:var(--c-indigo);border:1px solid var(--border-strong);place-items:center;display:grid}.session-material-row strong{color:var(--ink);font-size:var(--text-sm);display:block}.session-material-row span{color:var(--ink-soft);font-size:var(--text-xs);display:block}.session-comments{grid-template-columns:minmax(0,22rem) minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.session-comment-compose,.session-comment-list{gap:.75rem;display:grid}.session-comment-summary{border:1px solid var(--border-strong);background:var(--bg);align-items:center;gap:.85rem;padding:.75rem;display:flex}.session-comment-summary>strong{color:var(--ink);font-size:1.75rem;font-weight:750;line-height:1}.session-comment-summary span{font-size:var(--text-xs);color:var(--ink-soft);display:block}.session-comment-field{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);gap:.4rem;font-size:.7rem;font-weight:700;display:grid}.session-comment-input{resize:vertical;min-height:5rem;font-size:var(--text-sm);letter-spacing:0;text-transform:none;padding:.65rem .75rem;font-weight:500;line-height:1.45}.session-comment-card{border:1px solid var(--border-strong);background:var(--bg);gap:.4rem;padding:.8rem;display:grid}.session-comment-card header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.session-comment-card p{color:var(--ink-muted);font-size:var(--text-sm);margin:0;line-height:1.45}.session-comment-card time{font-size:var(--text-xs);color:var(--ink-soft)}.session-pdf-overlay{z-index:80;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));background:#080a0e9e;place-items:center;display:grid;position:fixed;inset:0}.session-pdf-sheet{background:var(--surface);border:1px solid var(--border-strong);grid-template-rows:auto minmax(0,1fr);width:min(100%,56rem);height:min(88svh,48rem);display:grid;box-shadow:0 24px 60px #00000059}.session-pdf-head{border-bottom:1px solid var(--border-strong);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1rem;display:flex}.session-pdf-head strong{color:var(--ink);display:block}.session-pdf-actions{flex-wrap:wrap;gap:.45rem;display:flex}.session-pdf-body{border:0;flex-direction:column;min-height:0;margin:0;display:flex;overflow:hidden}.session-pdf-body .secure-doc{background:#f4f4f5;border:0;border-radius:0;flex:1;height:100%;min-height:0}.session-pdf-body .secure-doc-stage{flex:1;min-height:0}.session-pdf-body .pdf-frame{background:#f4f4f5;border:0}.star-rating.is-readonly .star-btn{pointer-events:none;cursor:default}.star-rating.is-sm .star-btn{padding:.05rem}@media (max-width:960px){.session-stage{grid-template-columns:1fr}.session-side{grid-template-columns:repeat(2,minmax(0,1fr))}.session-comments{grid-template-columns:1fr}}@media (max-width:640px){.session-side{grid-template-columns:1fr}.session-material-row{grid-template-columns:auto minmax(0,1fr)}.session-material-row .btn{grid-column:1/-1;justify-self:stretch}.session-tab{flex:auto;justify-content:center;padding-inline:.55rem}}.playlist-page{gap:1.35rem}.playlist-hero{border:1px solid var(--border-strong);background:linear-gradient(125deg, color-mix(in srgb, var(--c-indigo) var(--tone-soft), var(--surface)) 0%, var(--surface) 55%);grid-template-columns:minmax(12rem,18rem) minmax(0,1fr);align-items:stretch;gap:clamp(1rem,2.5vw,1.75rem);padding:clamp(.85rem,2vw,1.15rem);display:grid}.playlist-hero-media{border:1px solid var(--border-strong);background:linear-gradient(135deg, color-mix(in srgb, var(--c-indigo) 70%, transparent), color-mix(in srgb, var(--c-cyan) 35%, transparent));place-items:center;min-height:11rem;display:grid;position:relative;overflow:hidden}.playlist-hero-media img{object-fit:cover;width:100%;height:100%;min-height:11rem;display:block}.playlist-hero-fallback{color:#fff;opacity:.9}.playlist-hero-copy{align-content:center;gap:.65rem;min-width:0;display:grid}.playlist-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--c-indigo);margin:0;font-size:.68rem;font-weight:700}.playlist-hero-title{letter-spacing:-.02em;color:var(--ink);margin:0;font-size:clamp(1.25rem,2.4vw,1.7rem);font-weight:750;line-height:1.2}.playlist-hero-lead{color:var(--ink-soft);font-size:var(--text-sm);max-width:42rem;margin:0;line-height:1.45}.playlist-stats{flex-wrap:wrap;gap:.65rem;margin:.25rem 0 0;padding:0;list-style:none;display:flex}.playlist-stats li{border:1px solid var(--border-strong);background:var(--surface);gap:.1rem;min-width:4.5rem;padding:.55rem .75rem;display:grid}.playlist-stats strong{font-variant-numeric:tabular-nums;color:var(--ink);font-size:1.15rem;font-weight:750;line-height:1}.playlist-stats span{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-size:.65rem;font-weight:700}.playlist-instructors{color:var(--ink-muted);font-size:var(--text-sm);align-items:center;gap:.4rem;margin:0;display:inline-flex}.playlist-start{justify-self:start;align-items:center;gap:.45rem;margin-top:.25rem;display:inline-flex}.playlist-curriculum{gap:.85rem;display:grid}.playlist-curriculum-head{border-bottom:2px solid var(--c-indigo);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem;padding-bottom:.55rem;display:flex}.playlist-curriculum-head h3{letter-spacing:.1em;text-transform:uppercase;color:var(--ink);margin:0;font-size:.78rem;font-weight:750}.playlist-curriculum-head span{font-size:var(--text-xs);color:var(--ink-soft);font-weight:600}.playlist-session-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.playlist-session-list>li{animation:.45s cubic-bezier(.22,1,.36,1) both login-rise;animation-delay:calc(40ms * var(--i,0))}.playlist-session-row{border:1px solid var(--border-strong);background:var(--surface);color:inherit;grid-template-columns:2.4rem minmax(5.5rem,7.5rem) minmax(0,1fr) auto;align-items:center;gap:.85rem;padding:.65rem .75rem;text-decoration:none;transition:transform .18s cubic-bezier(.22,1,.36,1),border-color .16s,box-shadow .18s;display:grid}.playlist-session-row:hover{border-color:var(--c-indigo);box-shadow:inset 3px 0 0 var(--c-indigo);text-decoration:none;transform:translate(3px)}.playlist-session-index{font-variant-numeric:tabular-nums;letter-spacing:.04em;color:var(--ink-soft);text-align:center;font-size:.85rem;font-weight:750}.playlist-session-thumb{aspect-ratio:16/10;border:1px solid var(--border-strong);background:linear-gradient(135deg, color-mix(in srgb, var(--c-indigo) 55%, transparent), color-mix(in srgb, var(--c-violet) 30%, transparent));color:#fff;font-variant-numeric:tabular-nums;place-items:center;font-weight:750;display:grid;position:relative;overflow:hidden}.playlist-session-thumb img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.playlist-session-play{z-index:1;color:#fff;opacity:0;background:#080a0e8c;border:1px solid #ffffff59;place-items:center;width:1.65rem;height:1.65rem;transition:opacity .16s,transform .16s;display:grid;position:absolute;bottom:.35rem;right:.35rem;transform:scale(.9)}.playlist-session-row:hover .playlist-session-play{opacity:1;transform:scale(1)}.playlist-session-body{gap:.35rem;min-width:0;display:grid}.playlist-session-body strong{font-size:var(--text-md);color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:650;line-height:1.3;display:-webkit-box;overflow:hidden}.playlist-session-meta{font-size:var(--text-xs);color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:.45rem .75rem;display:flex}.playlist-badge{letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--border-strong);color:var(--c-indigo);background:color-mix(in srgb, var(--c-indigo) 10%, transparent);align-items:center;gap:.25rem;padding:.2rem .4rem;font-size:.62rem;font-style:normal;font-weight:750;display:inline-flex}.playlist-badge--demo{color:var(--c-rose,#c2416e);border-color:color-mix(in srgb, var(--c-rose,#c2416e) 35%, var(--border));background:color-mix(in srgb, var(--c-rose,#c2416e) 10%, transparent)}.playlist-badge--locked{color:var(--ink-soft);border-color:var(--border-strong);background:color-mix(in srgb, var(--ink-soft) 8%, transparent)}.playlist-session-row.is-locked{opacity:.72}.playlist-session-row.is-locked .playlist-session-thumb{filter:grayscale(.35)}.playlist-session-row.is-locked .playlist-session-play{opacity:1;background:color-mix(in srgb, var(--ink) 55%, transparent);transform:scale(1)}.playlist-session-chevron{color:var(--ink-soft);flex-shrink:0;transition:transform .16s,color .16s}.playlist-session-row:hover .playlist-session-chevron{color:var(--c-indigo);transform:translate(2px)}@media (max-width:860px){.playlist-hero{grid-template-columns:1fr}.playlist-hero-media,.playlist-hero-media img{min-height:9.5rem;max-height:12rem}}@media (max-width:640px){.playlist-session-row{grid-template-columns:2rem minmax(4.5rem,5.75rem) minmax(0,1fr);gap:.65rem;padding:.55rem}.playlist-session-chevron{display:none}.playlist-session-body strong{font-size:var(--text-sm)}.playlist-stats li{min-width:3.8rem;padding:.45rem .55rem}}@media (prefers-reduced-motion:reduce){.playlist-session-list>li{animation:none!important}}.alerts-overlay{z-index:60;background:#080a0e73;justify-content:flex-end;animation:.16s both alerts-fade-in;display:flex;position:fixed;inset:0}.alerts-drawer{background:var(--surface);border-left:1px solid var(--border-strong);grid-template-rows:auto minmax(0,1fr);width:min(100%,24rem);height:100%;animation:.2s both alerts-slide-in;display:grid;box-shadow:-12px 0 40px #1018282e}.alerts-drawer__head{justify-content:space-between;align-items:flex-start;gap:var(--s-3);padding:var(--s-4) var(--s-4) var(--s-3);border-bottom:1px solid var(--border);display:flex}.alerts-drawer__head h2{font-size:var(--text-lg);color:var(--ink);margin:0;font-weight:700}.alerts-drawer__actions{align-items:center;gap:var(--s-2);flex-shrink:0;display:flex}.alerts-drawer__body{min-height:0;padding:var(--s-3) var(--s-4) var(--s-6);overflow-y:auto}.alerts-list{gap:var(--s-2);margin:0;padding:0;list-style:none;display:grid}.alerts-item{gap:var(--s-3);padding:var(--s-3);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);display:grid}.alerts-item.unread{border-color:color-mix(in srgb, var(--accent) 35%, var(--border));background:color-mix(in srgb, var(--accent-soft) 55%, var(--surface))}.alerts-item__copy{gap:.3rem;min-width:0;display:grid}.alerts-item__copy strong{color:var(--ink);font-size:var(--text-sm)}.alerts-item__copy p{color:var(--ink-muted);font-size:var(--text-sm);margin:0;line-height:1.45}.alerts-item__actions{gap:var(--s-2);flex-wrap:wrap;display:flex}.ui-sharp .alerts-drawer,.ui-sharp .alerts-item{border-radius:0}@keyframes alerts-fade-in{0%{opacity:0}to{opacity:1}}@keyframes alerts-slide-in{0%{opacity:.85;transform:translate(1.25rem)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.alerts-overlay,.alerts-drawer{animation:none}}.hof-list{gap:var(--s-2);margin:0;padding:0;list-style:none;display:grid}.hof-row{gap:var(--s-3);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;padding:.7rem .75rem;transition:border-color .15s,background .15s;display:grid}.hof-row:hover{border-color:color-mix(in srgb, var(--accent) 28%, var(--border));background:var(--surface)}.hof-list--compact .hof-row{gap:var(--s-2);padding:.55rem .6rem}.hof-rank{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);width:1.85rem;height:1.85rem;color:var(--ink-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;place-items:center;gap:0;font-weight:800;display:inline-grid}.hof-rank--gold,.hof-rank--silver,.hof-rank--bronze{grid-auto-flow:column;gap:.2rem;width:auto;min-width:1.85rem;padding:0 .4rem}.hof-rank--gold{color:#92400e;border-color:color-mix(in srgb, #f59e0b 45%, var(--border));background:color-mix(in srgb, #f59e0b 16%, var(--surface))}.hof-rank--silver{color:#475569;border-color:color-mix(in srgb, #94a3b8 50%, var(--border));background:color-mix(in srgb, #94a3b8 18%, var(--surface))}.hof-rank--bronze{color:#9a3412;border-color:color-mix(in srgb, #ea580c 40%, var(--border));background:color-mix(in srgb, #ea580c 14%, var(--surface))}.hof-row--gold{border-color:color-mix(in srgb, #f59e0b 30%, var(--border));background:color-mix(in srgb, #f59e0b 6%, var(--surface))}.hof-row--silver{border-color:color-mix(in srgb, #94a3b8 28%, var(--border))}.hof-row--bronze{border-color:color-mix(in srgb, #ea580c 24%, var(--border))}.hof-avatar{background:var(--accent-soft);width:2.1rem;height:2.1rem;color:var(--accent-ink);font-size:var(--text-xs);border:1px solid var(--border);border-radius:999px;flex-shrink:0;place-items:center;font-weight:750;display:grid;overflow:hidden}.hof-list--compact .hof-avatar{width:1.85rem;height:1.85rem}.hof-avatar img{object-fit:cover;width:100%;height:100%}.hof-copy{gap:.15rem;min-width:0;display:grid}.hof-name{color:var(--ink);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.hof-meta{color:var(--ink-soft);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hof-score{flex-shrink:0;justify-items:end;gap:.05rem;display:grid}.hof-score strong{font-size:var(--text-md);font-variant-numeric:tabular-nums;color:var(--ink);font-weight:750;line-height:1.1}.hof-score span{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);font-size:.65rem;font-weight:650}.hof-page{width:min(100%,44rem)}.hof-page__badge{border-radius:var(--radius-sm);border:1px solid color-mix(in srgb, var(--ok) 35%, var(--border));background:color-mix(in srgb, var(--ok) 10%, var(--surface));height:1.75rem;color:var(--ok);font-size:var(--text-xs);align-items:center;gap:.35rem;padding:0 .65rem;font-weight:700;display:inline-flex}.ui-sharp .hof-row,.ui-sharp .hof-rank,.ui-sharp .hof-page__badge,.ui-sharp .hof-avatar{border-radius:0}.ui-sharp{--radius-sm:0px;--radius:0px;--radius-lg:0px;--radius-xl:0px;--tone:var(--c-indigo);--accent:var(--c-indigo);--accent-hot:color-mix(in srgb, var(--c-indigo) 82%, #000);--accent-ink:var(--c-indigo);--accent-soft:color-mix(in srgb, var(--c-indigo) var(--tone-soft), transparent);--accent-contrast:#fff;--ring:0 0 0 2px color-mix(in srgb, var(--c-indigo) 45%, transparent)}.tone-indigo{--tone:var(--c-indigo)}.tone-violet{--tone:var(--c-violet)}.tone-cyan{--tone:var(--c-cyan)}.tone-emerald{--tone:var(--c-emerald)}.tone-amber{--tone:var(--c-amber)}.tone-rose{--tone:var(--c-rose)}.ui-sharp .panel,.ui-sharp .stat-card,.ui-sharp .course-card,.ui-sharp .continue-card,.ui-sharp .promo-banner,.ui-sharp .empty-state,.ui-sharp .simple-list li,.ui-sharp .bulletin-item,.ui-sharp .btn,.ui-sharp .progress-track,.ui-sharp .progress-fill,.ui-sharp .stat-icon,.ui-sharp .promo-banner-mark{border-radius:0}.ui-sharp .panel,.ui-sharp .stat-card,.ui-sharp .course-card,.ui-sharp .continue-card,.ui-sharp .promo-banner{box-shadow:none;border-color:var(--border-strong)}.ui-sharp .section-header h2{font-size:var(--text-md);letter-spacing:.01em;text-transform:uppercase;align-items:center;gap:.55rem;font-weight:700;display:flex}.ui-sharp .section-header h2:before{content:"";background:var(--tone);width:.7rem;height:.7rem}.ui-sharp .section-header-link{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--tone);padding-bottom:1px}.ui-sharp .section-header-link:hover{color:var(--tone);text-decoration:none}.ui-sharp .continue-card{border:1px solid var(--border-strong);border-left:4px solid var(--c-indigo);padding:var(--s-5) var(--s-6);background:linear-gradient(100deg, color-mix(in srgb, var(--c-indigo) var(--tone-soft), transparent) 0%, color-mix(in srgb, var(--c-violet) calc(var(--tone-soft) / 1.5), transparent) 42%, transparent 78%), var(--surface)}.ui-sharp .continue-card h2{color:var(--c-indigo);letter-spacing:.12em;align-items:center;gap:.5rem;display:flex}.ui-sharp .continue-card h2:before{content:"";background:currentColor;width:1.5rem;height:2px}.ui-sharp .continue-title{letter-spacing:-.02em;font-size:1.55rem;font-weight:700}.ui-sharp .progress-track{background:color-mix(in srgb, var(--ink) 10%, transparent);height:8px}.ui-sharp .continue-copy .progress-fill{background:linear-gradient(90deg, var(--c-indigo), var(--c-violet))}.ui-sharp .circular-progress,.ui-sharp .circular-progress__svg,.ui-sharp .circular-progress__track,.ui-sharp .circular-progress__value{border-radius:50%}.ui-sharp .continue-card .circular-progress__value{stroke:var(--c-violet)}.ui-sharp .stat-card .circular-progress__value,.ui-sharp .course-card .circular-progress__value{stroke:var(--tone)}.ui-sharp .continue-card .btn-primary{background:var(--c-indigo);color:#fff;border-color:var(--c-indigo)}.ui-sharp .continue-card .btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--c-indigo) 80%, #000)}.ui-sharp .stat-card{border-top:3px solid var(--tone);padding:var(--s-4);background:var(--surface)}.ui-sharp .metric-row>:nth-child(4n+1){--tone:var(--c-cyan)}.ui-sharp .metric-row>:nth-child(4n+2){--tone:var(--c-amber)}.ui-sharp .metric-row>:nth-child(4n+3){--tone:var(--c-emerald)}.ui-sharp .metric-row>:nth-child(4n+4){--tone:var(--c-rose)}.ui-sharp .stat-icon{background:color-mix(in srgb, var(--tone) var(--tone-soft), transparent);color:var(--tone)}.ui-sharp .stat-card-copy strong{font-size:1.6rem;font-weight:700}.ui-sharp .stat-card-copy span{text-transform:uppercase;letter-spacing:.07em;font-size:.6875rem}.ui-sharp .stat-card .progress-fill{background:var(--tone)}.ui-sharp .card-grid>:nth-child(6n+1){--tone:var(--c-indigo)}.ui-sharp .card-grid>:nth-child(6n+2){--tone:var(--c-cyan)}.ui-sharp .card-grid>:nth-child(6n+3){--tone:var(--c-amber)}.ui-sharp .card-grid>:nth-child(6n+4){--tone:var(--c-emerald)}.ui-sharp .card-grid>:nth-child(6n+5){--tone:var(--c-violet)}.ui-sharp .card-grid>:nth-child(6n+6){--tone:var(--c-rose)}.ui-sharp .course-card{border:1px solid var(--border-strong);transition:transform .12s,border-color .12s}.ui-sharp .course-card:hover{border-color:var(--tone);box-shadow:inset 0 -3px 0 var(--tone);transform:translateY(-3px)}.ui-sharp .course-card-art{background:linear-gradient(135deg, color-mix(in srgb, var(--tone) 85%, transparent), color-mix(in srgb, var(--tone) 35%, transparent));border-bottom:1px solid var(--border-strong)}.ui-sharp .course-card-art .course-card-initial{color:#fff;opacity:.95;text-shadow:0 1px 8px #00000040;font-size:1.75rem}.ui-sharp .course-card-play{color:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;background:#080a0e8c;border-color:#ffffff59;border-radius:0}.ui-sharp .course-card-lock{border-radius:0}.ui-sharp .course-card-body strong{font-size:var(--text-md);font-weight:650}.ui-sharp .course-card-body span{text-transform:uppercase;letter-spacing:.06em;color:var(--tone);font-size:.6875rem;font-weight:700}.ui-sharp .course-card .progress-fill{background:var(--tone)}.ui-sharp .promo-banner{border:1px solid var(--border-strong);border-left:4px solid var(--c-violet);background:linear-gradient(110deg, color-mix(in srgb, var(--c-violet) var(--tone-soft), transparent), transparent 70%), var(--surface)}.ui-sharp .promo-banner-mark{background:color-mix(in srgb, var(--c-violet) var(--tone-soft), transparent);color:var(--c-violet)}.ui-sharp .promo-banner-cta{color:var(--c-violet);text-transform:uppercase;letter-spacing:.06em}.ui-sharp .split-rail .panel{border-top:3px solid var(--tone)}.ui-sharp .panel__title{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted);font-size:.6875rem;font-weight:700}.ui-sharp .bulletin-item{border:0;border-left:2px solid color-mix(in srgb, var(--tone) 60%, transparent);padding:.15rem 0 .15rem var(--s-3);background:0 0}.ui-sharp .split-rail .simple-list li{border:0;border-bottom:1px solid var(--border);padding:var(--s-2) 0;background:0 0}.ui-sharp .split-rail .simple-list li:last-child{border-bottom:0}.ui-sharp .empty-state{border:1px dashed var(--border-strong);background:var(--surface-2)}.ui-sharp .split-main>.panel,.ui-sharp .stack-page>.panel,.ui-sharp .page>.panel{border-top:3px solid var(--tone)}.ui-sharp .split-main>.panel:nth-of-type(4n+1),.ui-sharp .stack-page>.panel:nth-of-type(4n+1){--tone:var(--c-indigo)}.ui-sharp .split-main>.panel:nth-of-type(4n+2),.ui-sharp .stack-page>.panel:nth-of-type(4n+2){--tone:var(--c-cyan)}.ui-sharp .split-main>.panel:nth-of-type(4n+3),.ui-sharp .stack-page>.panel:nth-of-type(4n+3){--tone:var(--c-violet)}.ui-sharp .split-main>.panel:nth-of-type(4n+4),.ui-sharp .stack-page>.panel:nth-of-type(4n+4){--tone:var(--c-emerald)}.ui-sharp .panel.tone-indigo{--tone:var(--c-indigo)}.ui-sharp .panel.tone-violet{--tone:var(--c-violet)}.ui-sharp .panel.tone-cyan{--tone:var(--c-cyan)}.ui-sharp .panel.tone-emerald{--tone:var(--c-emerald)}.ui-sharp .panel.tone-amber{--tone:var(--c-amber)}.ui-sharp .panel.tone-rose{--tone:var(--c-rose)}.ui-sharp .entity-card,.ui-sharp .exam-card{border:1px solid var(--border-strong);border-left:3px solid var(--tone);box-shadow:none;border-radius:0;transition:border-color .16s,background .16s}.ui-sharp .entity-card:hover,.ui-sharp .exam-card:hover{background:color-mix(in srgb, var(--tone) 6%, var(--surface));box-shadow:inset 0 -2px 0 var(--tone);transform:none}.ui-sharp .simple-list li:nth-child(6n+1),.ui-sharp .card-grid>:nth-child(6n+1){--tone:var(--c-indigo)}.ui-sharp .simple-list li:nth-child(6n+2){--tone:var(--c-cyan)}.ui-sharp .simple-list li:nth-child(6n+3){--tone:var(--c-amber)}.ui-sharp .simple-list li:nth-child(6n+4){--tone:var(--c-emerald)}.ui-sharp .simple-list li:nth-child(6n+5){--tone:var(--c-violet)}.ui-sharp .simple-list li:nth-child(6n+6){--tone:var(--c-rose)}.ui-sharp .control,.ui-sharp .btn-icon,.ui-sharp .theme-toggle,.ui-sharp .chip,.ui-sharp .pref-chip,.ui-sharp .option-card,.ui-sharp .option-row,.ui-sharp .palette-dot,.ui-sharp .form-panel,.ui-sharp .access-banner,.ui-sharp .timer,.ui-sharp .player-frame,.ui-sharp .secure-media,.ui-sharp .secure-doc,.ui-sharp .quiz-q{border-radius:0}.ui-sharp .chip{border-left:2px solid var(--tone);text-transform:uppercase;letter-spacing:.06em;font-size:.6875rem;font-weight:700}.ui-sharp .page-header h1{letter-spacing:-.025em}.ui-sharp .page-header:after{content:"";background:var(--c-indigo);width:2.5rem;height:3px;margin-top:var(--s-2);display:block}.ui-sharp .pref-chip.selected,.ui-sharp .option-card.selected{border-color:var(--c-indigo);background:color-mix(in srgb, var(--c-indigo) var(--tone-soft), transparent);color:var(--ink)}.ui-sharp .option-card.correct{border-color:var(--c-emerald);background:color-mix(in srgb, var(--c-emerald) var(--tone-soft), transparent)}.ui-sharp .option-card.wrong{border-color:var(--c-rose);background:color-mix(in srgb, var(--c-rose) var(--tone-soft), transparent)}.ui-sharp .palette-dot.answered{background:var(--c-emerald);border-color:var(--c-emerald);color:#fff}.ui-sharp .palette-dot.current{border-color:var(--c-indigo);box-shadow:inset 0 0 0 2px var(--c-indigo)}.ui-sharp .timer{border-left:3px solid var(--c-rose);font-variant-numeric:tabular-nums}.shell.ui-sharp .shell-sidebar{border-right:1px solid var(--border-strong)}.shell.ui-sharp .shell-brand img{border-radius:0}.shell.ui-sharp .nav-link{text-transform:uppercase;letter-spacing:.05em;font-size:var(--text-xs);border-left:3px solid #0000;border-radius:0}.shell.ui-sharp .nav-link.active{border-left-color:var(--c-indigo);background:color-mix(in srgb, var(--c-indigo) var(--tone-soft), transparent);color:var(--ink)}.shell.ui-sharp .nav-link.active svg{color:var(--c-indigo)}.shell.ui-sharp .nav-group-label{color:var(--ink-soft)}.shell.ui-sharp .shell-topbar{border-bottom:1px solid var(--border-strong)}.shell.ui-sharp .bottom-link.active{color:var(--c-indigo)}.shell.ui-sharp .nav-badge{background:var(--c-rose);color:#fff;border-radius:0}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes grow-x{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes draw-ring{0%{stroke-dashoffset:var(--dash-full,0)}to{stroke-dashoffset:var(--dash-offset,0)}}@keyframes pop-in{0%{opacity:0;transform:scale(.85)}70%{transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-120% 0}to{background-position:220% 0}}@keyframes nudge-x{0%{transform:translate(0)}to{transform:translate(3px)}}@keyframes pulse-glow{0%,to{filter:drop-shadow(0 0 #0000)}50%{filter:drop-shadow(0 0 8px color-mix(in srgb, var(--tone,var(--accent)) 55%, transparent))}}@keyframes drift{0%{background-position:0%}to{background-position:100%}}@keyframes underline-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes play-pop{0%,to{transform:scale(1)}50%{transform:scale(1.14)}}.split-main>*,.split-rail>*,.stack-page>.panel,.stack-page>.metric-row{animation:.42s cubic-bezier(.22,1,.36,1) both rise-in}.split-main>:first-child,.split-rail>:first-child{animation-delay:20ms}.split-main>:nth-child(2),.split-rail>:nth-child(2){animation-delay:70ms}.split-main>:nth-child(3),.split-rail>:nth-child(3){animation-delay:.12s}.split-main>:nth-child(4),.split-rail>:nth-child(4){animation-delay:.17s}.split-main>:nth-child(n+5),.split-rail>:nth-child(n+5){animation-delay:.22s}.card-grid>*{animation:.4s cubic-bezier(.22,1,.36,1) both rise-in}.card-grid>:first-child{animation-delay:40ms}.card-grid>:nth-child(2){animation-delay:90ms}.card-grid>:nth-child(3){animation-delay:.14s}.card-grid>:nth-child(4){animation-delay:.19s}.card-grid>:nth-child(5){animation-delay:.24s}.card-grid>:nth-child(n+6){animation-delay:.28s}.metric-row>*{animation:.4s cubic-bezier(.22,1,.36,1) both rise-in}.metric-row>:nth-child(2){animation-delay:60ms}.metric-row>:nth-child(3){animation-delay:.12s}.metric-row>:nth-child(4){animation-delay:.18s}.simple-list li{animation:.3s both fade-in}.simple-list li:nth-child(2){animation-delay:50ms}.simple-list li:nth-child(3){animation-delay:.1s}.simple-list li:nth-child(n+4){animation-delay:.15s}.progress-fill{transform-origin:0;animation:.75s cubic-bezier(.22,1,.36,1) .15s both grow-x}.dial-value,.circular-progress__value{animation:1.15s cubic-bezier(.22,1,.36,1) .18s both draw-ring}.circular-progress{animation:.45s cubic-bezier(.22,1,.36,1) both pop-in}.continue-card .circular-progress{animation:.5s cubic-bezier(.22,1,.36,1) both pop-in,2.8s ease-in-out .8s infinite pulse-glow}.chip{animation:.3s cubic-bezier(.22,1,.36,1) both pop-in}.page-header{animation:.4s cubic-bezier(.22,1,.36,1) both rise-in}.ui-sharp .page-header:after{transform-origin:0;animation:.55s cubic-bezier(.22,1,.36,1) .2s both underline-grow}.continue-card{background-size:180% 180%;animation:.45s cubic-bezier(.22,1,.36,1) both rise-in,8s ease-in-out infinite alternate drift}.btn:active:not(:disabled),.pref-chip:active,.palette-dot:active{transform:translateY(1px)scale(.99)}.promo-banner .promo-banner-cta svg{transition:transform .18s}.promo-banner:hover .promo-banner-cta svg{animation:.35s ease-in-out infinite alternate nudge-x}.course-card{transition:transform .2s cubic-bezier(.22,1,.36,1),border-color .16s,box-shadow .2s}.course-card:hover{transform:translateY(-3px)}.course-card-art .course-card-initial,.course-card-art img{transition:transform .25s cubic-bezier(.22,1,.36,1)}.course-card:hover .course-card-art .course-card-initial,.course-card:hover .course-card-art img{transform:scale(1.05)}.course-card-play{transition:transform .2s,opacity .2s}.course-card:hover .course-card-play{animation:.55s play-pop}.btn-primary{position:relative;overflow:hidden}.btn-primary:after{content:"";background:linear-gradient(110deg,#0000 30%,#ffffff47,#0000 70%);position:absolute;inset:0;transform:translate(-120%)}.btn-primary:hover:after{animation:.7s shimmer}.nav-link,.bottom-link{transition:background .16s,color .16s,transform .16s}.nav-link:hover{transform:translate(2px)}.stat-icon,.promo-banner-mark,.player-empty-mark{transition:transform .2s}.stat-card:hover .stat-icon,.promo-banner:hover .promo-banner-mark{transform:scale(1.06)}.star-btn svg{transition:transform .14s cubic-bezier(.22,1,.36,1),color .14s}.star-btn.active svg{transform:scale(1.05)}.panel,.stat-card,.entity-card{transition:border-color .18s,box-shadow .18s,transform .18s}.option-card,.option-row{transition:border-color .16s,background .16s,transform .16s}.option-card:active{transform:scale(.995)}.skeleton{border-radius:inherit;background:linear-gradient(100deg, var(--surface-2) 30%, color-mix(in srgb, var(--ink) 8%, var(--surface-2)) 50%, var(--surface-2) 70%);background-size:220% 100%;animation:1.3s linear infinite shimmer}.chart-frame{animation:.45s .1s both fade-in}
