:root{--bg:#07111d;--bg2:#0b1725;--panel:#0d1c2c;--panel2:#122236;--ink:#eff7ff;--muted:#93a8bf;--line:#aecdee2b;--line2:#aecdee4d;--cyan:#68c7ff;--violet:#8b5cf6;--good:#37d884;--bad:#ff6475;--warn:#ffd166;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}html{background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:radial-gradient(circle at 12% 0, #68c7ff21, transparent 25rem), radial-gradient(circle at 95% 8%, #8b5cf61f, transparent 24rem), linear-gradient(180deg, var(--bg), var(--bg2));color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit;color:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.45}:focus-visible{outline-offset:2px;outline:3px solid #68c7ff6b}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.eyebrow{color:var(--cyan);letter-spacing:.13em;text-transform:uppercase;margin:0 0 .55rem;font-size:.7rem;font-weight:850}.brand{align-items:center;gap:.65rem;font-size:.9rem;font-weight:800;display:inline-flex}.brand-mark{background:linear-gradient(135deg, var(--cyan), var(--violet));color:#fff;border-radius:9px;place-items:center;width:30px;height:30px;font-weight:950;display:grid}.landing,.state-page{min-height:100dvh;padding:calc(20px + var(--safe-top)) 18px calc(20px + var(--safe-bottom));place-items:center;display:grid}.landing-card{border:1px solid var(--line);background:linear-gradient(145deg,#122236f5,#07111df5);border-radius:24px;gap:2rem;width:100%;max-width:480px;padding:clamp(1.4rem,5vw,2.2rem);display:grid;box-shadow:0 26px 80px #00000059}.landing-card h1{letter-spacing:-.06em;margin:0;font-size:clamp(2.4rem,10vw,4.2rem);line-height:.95}.landing-card div>p:last-child,.landing-card small,.state-page p{color:var(--muted);line-height:1.5}.invite-form label{color:var(--muted);text-transform:uppercase;margin-bottom:.45rem;font-size:.72rem;font-weight:800;display:block}.invite-form>div{gap:.55rem;display:flex}.invite-form input{border:1px solid var(--line2);text-transform:uppercase;background:#07111d;border-radius:12px;width:100%;min-width:0;min-height:48px;padding:.8rem .9rem}.invite-form button{white-space:nowrap;background:linear-gradient(135deg,#147bd1,#7c3aed);border:0;border-radius:12px;min-height:48px;padding:0 1rem;font-weight:850}.invite-form>p,.error-text{color:#ff9aa6;margin:.5rem 0 0;font-size:.76rem}.cohort-page,.content-page{max-width:1000px;min-height:100dvh;padding:calc(16px + var(--safe-top)) 16px calc(32px + var(--safe-bottom));margin:auto}.section-nav{max-width:720px;margin:0 auto}.tabs{border-bottom:1px solid var(--line);justify-content:center;gap:.15rem;display:flex}.tabs button{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;min-height:46px;padding:0 1rem;font-size:.82rem;font-weight:800}.tabs button.active{border-color:var(--cyan);color:var(--ink)}.practice-panel,.tab-panel{padding-top:clamp(1.5rem,5vw,3rem)}.exam-heading{justify-content:space-between;align-items:end;gap:1rem;display:flex}.exam-heading h1,.panel-title h1{letter-spacing:-.06em;margin:0;font-size:clamp(2.2rem,7vw,4.6rem);line-height:.94}.count-badge,.live-badge{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:.5rem .7rem;font-size:.7rem}.select-field{margin-bottom:1.2rem;display:block}.select-field span,.range-field span{color:var(--muted);text-transform:uppercase;margin-bottom:.4rem;font-size:.7rem;font-weight:800;display:block}.select-field select{border:1px solid var(--line);background:#07111d;border-radius:12px;width:100%;min-height:46px;padding:.6rem .8rem}.resume-strip{text-align:left;background:#68c7ff14;border:1px solid #68c7ff47;border-radius:14px;justify-content:space-between;align-items:center;width:100%;min-height:60px;margin-top:1.3rem;padding:.7rem 1rem;display:flex}.resume-strip span{flex-direction:column;display:flex}.resume-strip small{color:var(--muted);margin-top:.2rem}.resume-strip b{color:var(--cyan)}.practice-panel>h2,.run-builder h2,.review h2{margin:2rem 0 .8rem;font-size:1rem}.mode-list{grid-template-columns:repeat(3,1fr);gap:.65rem;display:grid}.mode-tile{border:1px solid var(--line);text-align:left;background:#050b138c;border-radius:14px;grid-template-columns:auto 1fr;align-items:start;gap:.7rem;min-height:82px;padding:.85rem;display:grid}.mode-tile.active{border-color:var(--cyan);background:#68c7ff17}.mode-dot{border:1px solid var(--muted);border-radius:50%;width:15px;height:15px;margin-top:2px}.mode-tile.active .mode-dot{background:var(--cyan);outline:1px solid var(--cyan);border:4px solid #10283b}.mode-tile span:last-child{flex-direction:column;display:flex}.mode-tile small{color:var(--muted);margin-top:.25rem;line-height:1.35}.run-builder{border:1px solid var(--line);background:#0d1c2ccc;border-radius:18px;margin-top:1rem;padding:1rem}.builder-head{justify-content:space-between;align-items:center;display:flex}.builder-head h2{margin:0}.builder-head p{color:var(--muted);margin:.25rem 0 0;font-size:.72rem}.builder-head output{color:var(--cyan);font-size:2rem;font-weight:900}.range-field{margin:1rem 0;display:block}.range-field input{accent-color:var(--cyan);width:100%}.chip-field{border:0;margin:1rem 0;padding:0}.chip-field legend{margin-bottom:.5rem;font-size:.75rem;font-weight:800}.chip-field legend small{color:var(--muted);font-weight:500}.chip-field>div{flex-wrap:wrap;gap:.4rem;display:flex}.chip-field button{border:1px solid var(--line);background:#07111d;border-radius:999px;min-height:38px;padding:.4rem .65rem;font-size:.72rem}.chip-field button[aria-pressed=true]{border-color:var(--cyan);background:#68c7ff1f}.chip-field button span{color:var(--muted);margin-left:.4rem}.order-toggle{border:1px solid var(--line);background:#07111d;border-radius:11px;grid-template-columns:1fr 1fr;padding:3px;display:grid}.order-toggle button{background:0 0;border:0;border-radius:8px;min-height:40px}.order-toggle button[aria-pressed=true]{background:var(--panel2)}.fixed-note,.policy{color:var(--muted);font-size:.76rem}.primary{background:linear-gradient(135deg,#147bd1,#00a3ff 55%,#7c3aed);border:0;border-radius:13px;min-height:48px;padding:.75rem 1rem;font-weight:900}.launch{justify-content:space-between;width:100%;margin-top:1rem;display:flex}.exam-screen{background:linear-gradient(#06101b,#0b1724);grid-template-rows:auto minmax(0,1fr) auto;height:100dvh;display:grid;position:fixed;inset:0;overflow:hidden}.exam-top{border-bottom:1px solid var(--line);padding:calc(7px + var(--safe-top)) 10px 7px;background:#060d16f0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;display:grid;position:relative}.exam-top .close{border:1px solid var(--line);background:#ffffff0d;border-radius:9px;width:34px;height:34px;font-size:1.25rem}.exam-top>div{flex-direction:column;min-width:0;display:flex}.exam-top strong{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.exam-top div span{color:var(--muted);margin-top:2px;font-size:.66rem}.save-badge{color:var(--good);white-space:nowrap;font-size:.68rem}.progress{background:#ffffff12;height:3px;position:absolute;bottom:0;left:0;right:0}.progress span{background:linear-gradient(90deg, var(--cyan), var(--good));height:100%;display:block}.exam-main{min-height:0;padding:8px 10px;overflow:hidden}.question-card{border:1px solid var(--line);background:#0c1725f5;border-radius:18px;grid-template-rows:auto auto auto auto minmax(0,1fr) auto;gap:7px;height:100%;padding:10px;display:grid;overflow:hidden}.meta-row{gap:5px;display:flex;overflow:hidden}.meta-row span{border:1px solid var(--line);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;background:#ffffff0a;border-radius:999px;padding:3px 7px;font-size:.65rem;font-weight:800;overflow:hidden}.meta-row .warn{color:var(--warn)}.question-card h1{letter-spacing:-.025em;margin:0;font-size:clamp(1rem,3.5dvw,1.45rem);line-height:1.18}.instruction{color:var(--muted);margin:0;font-size:.7rem}.exam-figure{border:1px solid var(--line2);object-fit:contain;background:#fff;border-radius:12px;justify-self:center;max-width:100%;max-height:min(22dvh,230px);display:block}.answers{border:0;gap:6px;min-height:0;margin:0;padding:0;display:grid;overflow:auto}.answers label{border:1px solid var(--line);background:#050b13c7;border-radius:12px;grid-template-columns:27px minmax(0,1fr);align-items:center;gap:8px;min-height:44px;padding:7px 9px;display:grid}.answers input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute}.answers label:has(input:focus-visible){outline:3px solid #68c7ff66}.letter{border:1px solid var(--line2);border-radius:50%;place-items:center;width:26px;height:26px;font-size:.73rem;font-weight:900;display:grid}.answers label.selected{border-color:var(--cyan);background:#68c7ff1a}.answers label.selected .letter{color:var(--cyan)}.answers label.correct{border-color:var(--good);background:#37d8841f}.answers label.correct .letter{color:var(--good)}.answers label.wrong{border-color:var(--bad);background:#ff64751f}.answers label.wrong .letter{color:var(--bad)}.feedback{border:1px solid var(--line);border-radius:11px;max-height:14dvh;padding:7px 9px;overflow:auto}.feedback.good{border-color:#37d88473}.feedback.bad{border-color:#ff647573}.feedback strong{font-size:.78rem}.feedback p{color:#c8d9e9;margin:3px 0 0;font-size:.72rem;line-height:1.3}.exam-controls{border-top:1px solid var(--line);padding:7px 10px calc(7px + var(--safe-bottom));background:#060d16f5;grid-template-columns:.8fr .8fr 1fr;gap:7px;display:grid}.exam-controls button{border:1px solid var(--line);background:#ffffff0d;border-radius:11px;min-height:44px}.exam-controls .flag.active{border-color:var(--warn);color:var(--warn)}.exam-controls .next{background:linear-gradient(135deg,#147bd1,#7c3aed);border:0;font-weight:900}.panel-title{justify-content:space-between;align-items:end;display:flex}.panel-title>p{color:var(--muted);font-size:.76rem}.board-table{border:1px solid var(--line);border-radius:16px;margin-top:1.5rem;overflow:hidden}.board-head,.board-entry{grid-template-columns:35px minmax(120px,1fr) 70px 65px 70px 65px;align-items:center;gap:.5rem;padding:.7rem .8rem;display:grid}.board-head{color:var(--muted);text-transform:uppercase;background:#ffffff0a;font-size:.65rem}.board-entry{border-top:1px solid var(--line);font-size:.78rem}.board-entry.me{background:#68c7ff14}.board-entry strong{gap:.4rem;display:flex}.board-entry small{background:var(--cyan);color:#07111d;border-radius:999px;padding:.15rem .3rem}.board-entry em{color:var(--cyan);font-size:.9rem;font-style:normal;font-weight:900}.empty-state{color:var(--muted);text-align:center;place-items:center;min-height:180px;display:grid}.chat-panel{grid-template-rows:auto minmax(280px,60dvh) auto auto;display:grid}.chat-transcript{border:1px solid var(--line);background:#050b1373;border-radius:16px;margin-top:1.2rem;padding:1rem;overflow:auto}.chat-message{max-width:75%;margin-bottom:1rem}.chat-message.mine{margin-left:auto}.chat-message header{gap:.6rem;margin-bottom:.3rem;display:flex}.chat-message header strong{color:var(--cyan);font-size:.7rem}.chat-message time{color:var(--muted);font-size:.65rem}.chat-message p{background:var(--panel2);border:1px solid var(--line);border-radius:4px 13px 13px;margin:0;padding:.65rem .75rem;line-height:1.45}.chat-message.mine p{border-radius:13px 4px 13px 13px}.chat-compose{gap:.5rem;margin-top:.7rem;display:flex}.chat-compose input{border:1px solid var(--line2);background:#07111d;border-radius:12px;width:100%;min-height:48px;padding:.7rem .85rem}.chat-compose button{background:var(--cyan);color:#07111d;border:0;border-radius:12px;padding:0 1rem;font-weight:900}.chat-compose p,.chat-error{color:var(--muted);font-size:.76rem}.chat-error{color:var(--warn);margin:.5rem 0 0}.builder-error{color:#ff9aa6;text-align:center;margin:.65rem 0 0;font-size:.78rem}.results-page{max-width:800px}.score-hero{justify-content:space-between;align-items:center;padding:4rem 0 2rem;display:flex}.score-hero h1{letter-spacing:-.08em;margin:0;font-size:clamp(5rem,20vw,9rem);line-height:.8}.score-hero>div>p:last-child{color:var(--muted)}.result-status{border:1px solid var(--bad);color:var(--bad);border-radius:50%;place-items:center;width:90px;height:90px;font-size:.7rem;font-weight:900;display:grid;transform:rotate(7deg)}.result-status.pass{border-color:var(--good);color:var(--good)}.result-actions{gap:.6rem;display:flex}.result-actions button{background:var(--panel2);border:1px solid var(--line);border-radius:12px;min-height:46px;padding:.7rem 1rem}.result-actions .primary{background:linear-gradient(135deg,#147bd1,#7c3aed);border:0}.review article{border:1px solid var(--line);border-radius:12px;margin:.55rem 0;overflow:hidden}.review article>button{text-align:left;background:#050b138c;border:0;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;width:100%;min-height:60px;padding:.7rem;display:grid}.review article>button>b{border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.review-good button>b{color:var(--good);background:#37d88424}.review-bad button>b{color:var(--bad);background:#ff647524}.review button span{flex-direction:column;display:flex}.review button small{color:var(--muted)}.review article>div{border-top:1px solid var(--line);color:#c8d9e9;padding:.8rem;font-size:.8rem;line-height:1.5}.review article>div p{margin:.55rem 0}.review article>div p>span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:800;display:block}.review-figure{border:1px solid var(--line2);object-fit:contain;background:#f4f7fa;border-radius:12px;width:100%;max-height:320px;margin-bottom:.8rem;display:block}.sheet-scrim{z-index:20;background:#000000b3;place-items:end center;padding:1rem;display:grid;position:fixed;inset:0}.name-sheet{background:linear-gradient(145deg, var(--panel2), var(--bg));border:1px solid var(--line2);border-radius:22px;width:100%;max-width:480px;padding:1.3rem}.sheet-handle{background:var(--line2);border-radius:99px;width:42px;height:4px;margin:0 auto 1.3rem;display:block}.name-sheet h2{letter-spacing:-.04em;margin:.2rem 0;font-size:2rem}.name-sheet>p:not(.eyebrow){color:var(--muted);line-height:1.5}.name-sheet label{font-size:.75rem;font-weight:800;display:block}.name-sheet input{border:1px solid var(--line2);background:#07111d;border-radius:12px;width:100%;min-height:48px;margin:.4rem 0 1rem;padding:.8rem;font-size:16px;display:block}.chat-compose input{font-size:16px}.name-sheet .primary{width:100%}.spinner{border:3px solid var(--line);border-top-color:var(--cyan);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:650px){.mode-list{grid-template-columns:1fr 1fr}.mode-tile{min-height:76px}.board-table{overflow-x:auto}.board-head,.board-entry{min-width:610px}.exam-controls button span{display:none}.panel-title{flex-direction:column;align-items:start}.panel-title>p{margin-bottom:0}}@media (max-height:650px){.question-card{gap:5px;padding:8px}.question-card h1{font-size:clamp(.9rem,3dvw,1.15rem)}.answers{gap:4px}.answers label{min-height:38px;padding:5px 7px}.exam-figure{max-height:16dvh}.instruction{display:none}}@media (orientation:landscape) and (max-height:520px){.question-card:not(:has(.exam-figure)) .answers{grid-template-columns:1fr 1fr}.question-card:has(.exam-figure){grid-template-rows:auto auto auto minmax(0,1fr) auto;grid-template-columns:minmax(140px,34%) minmax(0,1fr)}.question-card:has(.exam-figure) .meta-row{grid-column:1/3}.question-card:has(.exam-figure) h1{grid-column:2}.question-card:has(.exam-figure) .instruction{grid-column:2}.question-card:has(.exam-figure) .answers{grid-column:2}.question-card:has(.exam-figure) .exam-figure{grid-area:2/1/5;align-self:center;max-width:100%;max-height:100%}.question-card:has(.exam-figure) .feedback{grid-column:1/3}.exam-top{padding-top:calc(4px + var(--safe-top));padding-bottom:4px}.exam-controls{padding-top:4px}.exam-controls button{min-height:38px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
