:root{color-scheme:dark;--bg: #05070a;--surface: #10151c;--surface-2: #151c25;--line: #26313d;--text: #f6f8fb;--muted: #a7b1bd;--blue: #12b8ff;--blue-2: #4b7dff;--amber: #f5bd68;--green: #4ade80;--red: #ff6b6b;--max: 980px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(circle at 82% 5%,rgba(18,184,255,.13),transparent 33rem),var(--bg);color:var(--text);line-height:1.55;-webkit-tap-highlight-color:transparent}a{color:#61ceff;text-underline-offset:.18em}.page{min-height:100dvh;display:flex;flex-direction:column}.top{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1rem;border-bottom:1px solid rgba(255,255,255,.08);background:#05070ae0;backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:.6rem;color:var(--text);font-weight:730;text-decoration:none;letter-spacing:-.02em}.brand-mark{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--blue),var(--blue-2));color:#00151f;font-weight:800}.top-label{color:var(--muted);font-size:.86rem}.content{width:min(100% - 2rem,var(--max));margin:0 auto;padding:1.25rem 0 2rem;flex:1}.foot{padding:1rem;text-align:center;color:var(--muted);font-size:.82rem;border-top:1px solid rgba(255,255,255,.06)}h1{font-size:clamp(1.5rem,4vw,2.1rem);line-height:1.15;margin:0 0 .6rem;letter-spacing:-.02em}h2{margin:.2rem 0 .4rem}.lede{color:var(--muted);margin:0 0 1.2rem;font-size:1.02rem}.muted{color:var(--muted)}.fine{color:var(--muted);font-size:.82rem;margin:1rem 0 0}.eyebrow{margin:0 0 .5rem;color:var(--blue);font-size:.78rem;font-weight:760;letter-spacing:.13em;text-transform:uppercase}.error{color:var(--red);min-height:1.2em;margin:.4rem 0}.panel{padding:1.4rem;border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,#151c25f2,#0c1117f2)}.panel.center{text-align:center}.form{max-width:520px;margin:1rem auto}.field{display:block;margin:0 0 .9rem}.field-label{display:block;font-size:.82rem;color:var(--muted);margin-bottom:.3rem}.input{width:100%;min-height:48px;padding:.6rem .85rem;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);font:inherit;font-size:1rem}.input:focus{outline:2px solid var(--blue);outline-offset:1px;border-color:transparent}.input.code{font-size:1.6rem;letter-spacing:.35em;text-align:center;font-variant-numeric:tabular-nums}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.7rem 1.15rem;border:1px solid var(--line);border-radius:999px;color:var(--text);background:var(--surface);font:inherit;font-weight:680;cursor:pointer;text-decoration:none}.btn:disabled{opacity:.5;cursor:default}.btn.primary{border-color:transparent;color:#00151f;background:linear-gradient(110deg,var(--blue),#75dfff)}.btn.ghost{background:transparent}.btn.wide{width:100%;margin-top:.4rem}.pulse{display:grid;place-items:center;margin:1.2rem 0}.pulse span{width:14px;height:14px;border-radius:50%;background:var(--blue);box-shadow:0 0 #12b8ff99;animation:pulse 1.6s infinite}@keyframes pulse{70%{box-shadow:0 0 0 18px #12b8ff00}to{box-shadow:0 0 #12b8ff00}}.facts{display:flex;justify-content:center;gap:1.6rem;margin:.6rem 0}.facts div{display:grid}.facts dt{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.facts dd{margin:0;font-size:1.4rem;font-weight:700}.exam-bar{position:sticky;top:56px;z-index:5;display:flex;justify-content:space-between;align-items:center;margin:0 0 1rem;padding:.55rem .9rem;border:1px solid var(--line);border-radius:14px;background:#10151cf2}.progress{color:var(--muted);font-weight:600}.timer{font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:760;letter-spacing:.04em}.timer.warn{color:var(--amber)}.timer.big{font-size:3rem;margin:.2rem 0 .6rem}.q-head{margin-bottom:.9rem}.q-title{font-size:clamp(1.25rem,3.5vw,1.7rem);letter-spacing:-.01em}.q-sub{margin:0 0 .4rem;color:var(--muted);font-size:.92rem}.q-instr{margin:.4rem 0 0;color:var(--muted);font-size:.95rem}.step-count{color:var(--amber);font-weight:600}.board{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start}@media(max-width:760px){.board{grid-template-columns:1fr}.board-col:first-child{order:2}}.board-col{padding:.9rem;border:1px solid var(--line);border-radius:18px;background:#10151c99;min-height:160px}.board-title{margin:0 0 .6rem;font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.seq{list-style:none;margin:0;padding:0;display:grid;gap:.5rem;min-height:56px}.seq-hint{color:var(--muted);font-size:.82rem;margin:.6rem 0 0}.pool{display:grid;gap:.5rem}.card{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:.6rem;width:100%;text-align:left;padding:.7rem .8rem;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);color:var(--text);font:inherit}.pool-card{grid-template-columns:1fr auto;cursor:pointer}.pool-card:hover{border-color:var(--blue)}.pool-card:disabled{opacity:.6;cursor:default}.card-add{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#12b8ff26;color:var(--blue);font-weight:800}.card-text{min-width:0;overflow-wrap:anywhere}.card-cond{font-size:.78rem;color:var(--amber);margin-bottom:.15rem}.card-main{font-weight:600}.card-item{color:var(--text)}.card-dash{color:var(--muted)}.card-action{color:#9fe4ff}.card-note{font-size:.8rem;color:var(--muted)}.seq-card{border-color:#12b8ff73}@media(max-width:760px){.seq-card{grid-template-columns:auto 1fr auto;grid-template-areas:"no text grip" "no tools grip";row-gap:.4rem}.seq-card .seq-no{grid-area:no}.seq-card .card-text{grid-area:text}.seq-card .seq-tools{grid-area:tools;justify-self:end}.seq-card .grip{grid-area:grip}}.seq-card.dragging{opacity:.85;border-color:var(--blue);box-shadow:0 8px 24px #00000073}.seq-no{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--blue);color:#00151f;font-weight:800;font-size:.9rem}.seq-tools{display:flex;gap:.25rem}.tool{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);font:inherit;font-size:1rem;cursor:pointer}.tool:disabled{opacity:.35;cursor:default}.tool-remove{color:var(--red)}.grip{touch-action:none;cursor:grab;user-select:none;padding:.3rem .2rem;color:var(--muted);letter-spacing:-.2em;font-size:1.1rem}.grip:active{cursor:grabbing}.options{display:grid;gap:.5rem}.option-card{grid-template-columns:auto 1fr;cursor:pointer;text-align:left}.option-card:hover{border-color:var(--blue)}.option-card.selected{border-color:var(--blue);background:#12b8ff1f}.option-mark{color:var(--blue);font-size:1.1rem}.nav-row{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;flex-wrap:wrap;margin-top:1rem}.confirm{width:100%;padding:.9rem 1rem;border:1px solid rgba(245,189,104,.5);border-radius:14px;background:#f5bd6814}.confirm p{margin:0 0 .7rem}.confirm-actions{display:flex;justify-content:flex-end;gap:.6rem}.dots{display:flex;gap:.3rem;margin-right:auto;flex-wrap:wrap}.dot{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--muted);font:inherit;cursor:pointer}.dot.done{border-color:var(--blue);color:var(--text)}.dot.on{background:var(--blue);color:#00151f;font-weight:700}.score-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.7rem;margin:1rem 0}.stat{padding:.8rem;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);display:grid}.stat-label{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.stat-value{font-size:1.7rem;font-weight:760}.stat-value small{font-size:.8rem;color:var(--muted);margin-left:.3rem;font-weight:500}.result-list{list-style:none;padding:0;margin:.5rem 0 1rem;display:grid;gap:.5rem}.result-list li{padding:.7rem .9rem;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.result-list li.ok{border-color:#4ade8073}.result-list li.miss{border-color:#ff6b6b66}.result-title{font-weight:650;display:flex;gap:.5rem;align-items:baseline}.result-mark{font-weight:800}.ok .result-mark{color:var(--green)}.miss .result-mark{color:var(--red)}.result-meta{color:var(--muted);font-size:.85rem;margin-top:.2rem}.small{font-size:.85rem}.review{display:grid;gap:.6rem;padding:.3rem 0 .5rem}.review-q{border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}.review-q.ok{border-color:#4ade8066}.review-q.miss{border-color:#12b8ff66}.review-head{display:flex;align-items:center;gap:.6rem;width:100%;padding:.7rem .9rem;border:0;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.review-head .result-mark{font-weight:800;font-size:1.1rem}.review-q.ok .result-mark{color:var(--green)}.review-q.miss .result-mark{color:var(--blue)}.review-title{display:grid;gap:.1rem;flex:1;min-width:0}.review-chevron{color:var(--muted);font-size:1.4rem;transition:transform .15s}.review-q.open .review-chevron{transform:rotate(90deg)}.review-body{display:none;padding:0 .9rem .8rem}.review-q.open .review-body{display:block}.review-cols{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}@media(max-width:760px){.review-cols{grid-template-columns:1fr}}.review-body h4{margin:0 0 .35rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.steps{margin:0;padding-left:1.4rem;display:grid;gap:.3rem;font-size:.85rem}.steps li{padding:.3rem .5rem;border-radius:8px;border-left:3px solid var(--line);background:#ffffff08}.steps li.right{border-left-color:var(--green);background:#4ade8014}.steps li.misplaced,.steps li.wrong,.steps li.missing{border-left-color:var(--blue);background:#12b8ff14}.steps li.wrong .step-text{text-decoration:line-through;text-decoration-color:#12b8ffb3}.steps .step-note{display:block;font-size:.75rem;color:#9fe4ff}.review-dialog{width:min(100% - 1rem,960px);max-height:calc(100dvh - 2rem);margin:auto;padding:0;border:1px solid var(--line);border-radius:18px;background:var(--bg);color:var(--text)}.review-dialog::backdrop{background:#0009;backdrop-filter:blur(4px)}.dialog-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;border-bottom:1px solid var(--line);background:#05070af2}.dialog-title{font-size:1.05rem}.dialog-content{padding:.6rem 1rem 1.2rem}@media(max-width:640px){.review-dialog{width:100%;max-width:none;height:100dvh;max-height:none;border-radius:0;border:0}}
