.road[data-v-6e2ba7c7]{display:flex;flex-direction:column;gap:16px}.hero[data-v-6e2ba7c7]{display:flex;justify-content:space-between;gap:20px;padding:22px 24px;flex-wrap:wrap}.hero-text[data-v-6e2ba7c7]{flex:1 1 420px}.hero h2[data-v-6e2ba7c7]{margin:0 0 8px;font-size:22px}.hero p[data-v-6e2ba7c7]{margin:0;line-height:1.75;color:var(--text-soft);font-size:14.5px}.hero b[data-v-6e2ba7c7]{color:#fff}.dday[data-v-6e2ba7c7]{display:flex;flex-direction:column;gap:6px;min-width:200px}.dday label[data-v-6e2ba7c7]{font-size:12.5px;color:var(--muted)}.dday input[data-v-6e2ba7c7]{color-scheme:dark}.dday b[data-v-6e2ba7c7]{font-family:var(--mono);font-size:30px;color:var(--accent-2)}.dday small[data-v-6e2ba7c7]{font-size:12px}.progress[data-v-6e2ba7c7]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.pcard[data-v-6e2ba7c7]{padding:14px 16px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:6px;color:var(--text)}.pcard[data-v-6e2ba7c7]:hover{border-color:var(--accent)}.pcard small[data-v-6e2ba7c7]{color:var(--muted);font-size:12.5px}.pcard b[data-v-6e2ba7c7]{font-size:22px;font-family:var(--mono)}.pcard i[data-v-6e2ba7c7]{font-style:normal;font-size:14px;color:var(--muted)}.bar[data-v-6e2ba7c7]{height:5px;background:var(--border);border-radius:99px;overflow:hidden}.bar i[data-v-6e2ba7c7]{display:block;height:100%;background:var(--ok)}.plan[data-v-6e2ba7c7]{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}.block[data-v-6e2ba7c7]{padding:16px 18px}.block.now[data-v-6e2ba7c7]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.block.done[data-v-6e2ba7c7]{opacity:.75}.block header[data-v-6e2ba7c7]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.d[data-v-6e2ba7c7]{font-family:var(--mono);font-weight:800;color:var(--accent-2)}.date[data-v-6e2ba7c7]{font-size:12.5px;color:var(--muted)}.block h3[data-v-6e2ba7c7]{margin:0 0 4px;font-size:16px}.note[data-v-6e2ba7c7]{margin:0 0 10px;font-size:13px;color:var(--muted);line-height:1.6}.block ul[data-v-6e2ba7c7]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.block li[data-v-6e2ba7c7]{display:flex;justify-content:space-between;align-items:center;gap:8px}.block label[data-v-6e2ba7c7]{display:flex;gap:8px;align-items:start;font-size:13.5px;line-height:1.5;cursor:pointer}.block input[data-v-6e2ba7c7]{accent-color:var(--ok);margin-top:3px}.foot[data-v-6e2ba7c7]{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;flex-wrap:wrap}.foot p[data-v-6e2ba7c7]{margin:4px 0 0;font-size:13px}.builder[data-v-960fba12]{display:grid;grid-template-columns:270px 1fr;gap:20px;align-items:start}.steps[data-v-960fba12]{position:sticky;top:76px;display:flex;flex-direction:column;gap:4px;max-height:calc(100vh - 96px);overflow-y:auto;padding-right:4px}.steps-head[data-v-960fba12]{padding:4px 6px 12px}.steps-head h2[data-v-960fba12]{margin:0 0 4px;font-size:17px}.steps-head p[data-v-960fba12]{margin:0 0 8px;font-size:12.5px}.bar[data-v-960fba12]{height:5px;background:var(--border);border-radius:99px;overflow:hidden}.bar i[data-v-960fba12]{display:block;height:100%;background:var(--ok);transition:width .3s}.step-btn[data-v-960fba12]{display:flex;gap:10px;align-items:center;text-align:left;background:transparent;border:1px solid transparent;border-radius:9px;padding:8px 10px;cursor:pointer;color:var(--text-soft)}.step-btn[data-v-960fba12]:hover{background:var(--panel)}.step-btn.on[data-v-960fba12]{background:var(--panel);border-color:var(--accent);color:var(--text)}.num[data-v-960fba12]{flex:0 0 24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;background:var(--tab-bg);border:1px solid var(--border)}.step-btn.done .num[data-v-960fba12]{background:var(--ok-soft);border-color:var(--ok);color:var(--ok)}.t[data-v-960fba12]{display:flex;flex-direction:column;min-width:0}.t b[data-v-960fba12]{font-size:13.5px;font-weight:600}.t small[data-v-960fba12]{font-size:11.5px;color:var(--muted)}.main[data-v-960fba12]{display:flex;flex-direction:column;gap:14px;min-width:0}.lead[data-v-960fba12]{margin:0;color:var(--text-soft);font-size:14px;line-height:1.7}.head[data-v-960fba12]{padding:20px 22px}.meta[data-v-960fba12]{display:flex;gap:6px;margin-bottom:10px}.head h3[data-v-960fba12]{margin:0 0 8px;font-size:21px}.why[data-v-960fba12]{margin:0 0 12px;color:var(--accent-2);font-size:14px;line-height:1.7}.material[data-v-960fba12],.refs[data-v-960fba12],.done-list[data-v-960fba12]{padding:14px 18px}.material summary[data-v-960fba12]{cursor:pointer;font-weight:700;font-size:14px;margin-bottom:8px}.refs h4[data-v-960fba12],.done-list h4[data-v-960fba12]{margin:0 0 10px;font-size:14px}.ref[data-v-960fba12]{margin-bottom:10px}.ref small[data-v-960fba12]{color:var(--muted);font-size:12px}.ref pre[data-v-960fba12]{margin:4px 0 0;white-space:pre-wrap;font-family:var(--sans);font-size:13.5px;line-height:1.65;background:var(--code-bg);border:1px solid var(--border-soft);border-radius:8px;padding:8px 10px}.empty[data-v-960fba12]{margin:4px 0 0;font-size:13px}.prompt[data-v-960fba12]{padding:16px 18px}.prompt.done[data-v-960fba12]{border-color:#3fb95059}.pq[data-v-960fba12]{display:flex;justify-content:space-between;gap:10px;align-items:start}.pq h4[data-v-960fba12]{margin:0 0 6px;font-size:15px;line-height:1.5}.hint[data-v-960fba12]{margin:0 0 10px;color:var(--muted);font-size:13px;line-height:1.6}.foot[data-v-960fba12]{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px;font-size:12.5px}.rows[data-v-960fba12]{display:flex;flex-direction:column;gap:8px}.row[data-v-960fba12]{display:flex;gap:8px;align-items:start;padding:8px;border:1px solid var(--border-soft);border-radius:10px}.row.filled[data-v-960fba12]{border-color:#3fb9504d}.rn[data-v-960fba12]{flex:0 0 22px;font-size:12px;color:var(--muted);padding-top:26px;text-align:center}.cells[data-v-960fba12]{flex:1;display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:8px}.cell[data-v-960fba12]{display:flex;flex-direction:column;gap:4px}.cell span[data-v-960fba12]{font-size:11.5px;color:var(--muted)}.cell .field[data-v-960fba12]{font-size:13.5px;padding:8px 10px}.row-side[data-v-960fba12]{display:flex;flex-direction:column;gap:6px;align-items:center;padding-top:20px}.bcards[data-v-960fba12]{display:flex;flex-direction:column;gap:12px}.bcards-bar[data-v-960fba12]{display:flex;justify-content:flex-end;gap:6px;margin-top:-4px}.bcard[data-v-960fba12]{border:1px solid var(--border-soft);border-radius:12px;overflow:hidden}.bcard.filled[data-v-960fba12]{border-color:#3fb9504d}.bcard-head[data-v-960fba12]{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;background:var(--tab-bg);border-bottom:1px solid var(--border-soft)}.bcard.folded .bcard-head[data-v-960fba12]{border-bottom:0}.bcard-head .rn[data-v-960fba12]{padding-top:3px;flex:0 0 auto;font-weight:700}.bcard-title[data-v-960fba12]{flex:1;min-width:0}.title-read[data-v-960fba12]{display:flex;flex-wrap:wrap;gap:6px;align-items:center;width:100%;text-align:left;background:transparent;border:0;padding:0;color:var(--text);cursor:text;font:inherit}.title-read b[data-v-960fba12]{font-size:15px;line-height:1.55}.title-edit[data-v-960fba12]{font-size:15px;font-weight:600;resize:none}.bcard-side[data-v-960fba12]{display:flex;gap:4px;align-items:center;flex:0 0 auto}.bcard-body[data-v-960fba12]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.bsec[data-v-960fba12]{padding:12px 16px 14px;border-left:3px solid var(--sec);min-width:0}.bsec[data-v-960fba12]:nth-child(n+3){border-top:1px solid var(--border-soft)}.bsec[data-v-960fba12]:nth-child(2n){box-shadow:inset 1px 0 0 var(--border-soft)}.bsec.c0[data-v-960fba12]{--sec: #e5534b}.bsec.c1[data-v-960fba12]{--sec: #539bf5}.bsec.c2[data-v-960fba12]{--sec: #d29922}.bsec.c3[data-v-960fba12]{--sec: var(--ok)}.bsec h5[data-v-960fba12]{margin:0 0 8px;font-size:12.5px;letter-spacing:.02em;color:var(--sec)}.bsec-read[data-v-960fba12]{cursor:text;border-radius:6px;margin:-4px -6px;padding:4px 6px}.bsec-read[data-v-960fba12]:hover{background:var(--panel);outline:1px dashed var(--border)}.bsec-read p[data-v-960fba12]{margin:0 0 6px;font-size:14px;line-height:1.75;color:var(--text-soft);word-break:keep-all;overflow-wrap:anywhere}.bsec-read p[data-v-960fba12]:last-child{margin-bottom:0}.bsec-read b[data-v-960fba12]{color:var(--text);margin-right:6px}.bsec-read b[data-v-960fba12]:after{content:":"}.bsec .field[data-v-960fba12]{font-size:14px;line-height:1.7;padding:8px 10px;resize:none;overflow:hidden}.bsec-empty[data-v-960fba12]{width:100%;padding:14px;border:1px dashed var(--border);border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:13px}.bsec-empty[data-v-960fba12]:hover{color:var(--text);border-color:var(--accent)}.check[data-v-960fba12]{display:flex;gap:8px;align-items:center;font-size:14px;padding:4px 0;cursor:pointer}.check input[data-v-960fba12]{accent-color:var(--ok);width:16px;height:16px}.pager[data-v-960fba12]{display:flex;justify-content:space-between}@media(max-width:860px){.builder[data-v-960fba12]{grid-template-columns:1fr}.steps[data-v-960fba12]{position:static;max-height:none;flex-direction:row;overflow-x:auto}.steps-head[data-v-960fba12]{display:none}.step-btn[data-v-960fba12]{flex:0 0 auto}.t small[data-v-960fba12]{display:none}.cells[data-v-960fba12],.bcard-body[data-v-960fba12]{grid-template-columns:1fr}.bsec[data-v-960fba12]:nth-child(n+2){border-top:1px solid var(--border-soft)}.bsec[data-v-960fba12]:nth-child(2n){box-shadow:none}}.qa[data-v-9ec62d4b]{display:grid;grid-template-columns:240px 1fr;gap:20px;align-items:start}.side[data-v-9ec62d4b]{position:sticky;top:76px;display:flex;flex-direction:column;gap:3px}.side-head[data-v-9ec62d4b]{padding:4px 8px 10px}.side-head h2[data-v-9ec62d4b]{margin:0 0 4px;font-size:17px}.side-head p[data-v-9ec62d4b]{margin:0;font-size:12.5px}.cat[data-v-9ec62d4b]{display:flex;justify-content:space-between;align-items:center;gap:8px;text-align:left;background:transparent;border:1px solid transparent;border-radius:8px;padding:8px 10px;cursor:pointer;color:var(--text-soft);font-size:13.5px}.cat[data-v-9ec62d4b]:hover:not(:disabled){background:var(--panel)}.cat.on[data-v-9ec62d4b]{background:var(--panel);border-color:var(--accent);color:var(--text);font-weight:600}.cat[data-v-9ec62d4b]:disabled{opacity:.35;cursor:default}.cat small[data-v-9ec62d4b]{color:var(--muted);font-size:11.5px}.main[data-v-9ec62d4b]{display:flex;flex-direction:column;gap:14px;min-width:0}.cat-head[data-v-9ec62d4b]{display:flex;justify-content:space-between;align-items:end;gap:12px;flex-wrap:wrap}.cat-head h3[data-v-9ec62d4b]{margin:0 0 2px;font-size:20px}.cat-head p[data-v-9ec62d4b]{margin:0;font-size:13px}.filters[data-v-9ec62d4b]{display:flex;gap:4px;flex-wrap:wrap}.qlist[data-v-9ec62d4b]{display:flex;flex-wrap:wrap;gap:5px}.qpip[data-v-9ec62d4b]{width:30px;height:30px;border-radius:8px;border:1px solid var(--border);background:var(--tab-bg);color:var(--muted);font-size:12px;font-weight:700;cursor:pointer}.qpip.written[data-v-9ec62d4b]{color:var(--text)}.qpip.sure[data-v-9ec62d4b]{background:var(--ok-soft);border-color:var(--ok);color:var(--ok)}.qpip.unsure[data-v-9ec62d4b]{background:var(--warn-soft);border-color:var(--warn);color:var(--warn)}.qpip.no[data-v-9ec62d4b]{background:var(--bad-soft);border-color:var(--bad);color:var(--bad)}.qpip.on[data-v-9ec62d4b]{outline:2px solid var(--accent);outline-offset:1px}.empty[data-v-9ec62d4b]{padding:20px;color:var(--muted)}.qcard[data-v-9ec62d4b]{padding:20px 22px}.meta[data-v-9ec62d4b]{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap}.question[data-v-9ec62d4b]{margin:0 0 10px;font-size:21px;line-height:1.5}.intent[data-v-9ec62d4b]{margin:0;color:var(--muted);font-size:13.5px;line-height:1.6}.intent b[data-v-9ec62d4b]{color:var(--accent-2);margin-right:6px;font-weight:600}.answer[data-v-9ec62d4b],.key[data-v-9ec62d4b],.conf[data-v-9ec62d4b]{padding:16px 18px}.ahead[data-v-9ec62d4b]{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.ahead h4[data-v-9ec62d4b]{margin:0;font-size:14.5px}.tools[data-v-9ec62d4b]{display:flex;gap:6px}.afoot[data-v-9ec62d4b]{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font-size:12.5px}.key[data-v-9ec62d4b]{display:flex;flex-direction:column;gap:16px;border-color:#e8590c59}.key h4[data-v-9ec62d4b]{margin:0 0 8px;font-size:14px;display:flex;align-items:center;gap:8px}.key ol[data-v-9ec62d4b],.key ul[data-v-9ec62d4b]{margin:0;padding-left:20px;line-height:1.75;font-size:14.5px;color:var(--text-soft)}.kws[data-v-9ec62d4b]{display:flex;flex-wrap:wrap;gap:6px}.kws .chip[data-v-9ec62d4b]{font-size:12.5px;padding:3px 10px}.model[data-v-9ec62d4b]{margin:0;line-height:1.85;font-size:14.5px;background:var(--code-bg);border:1px solid var(--border);border-radius:9px;padding:12px 14px}.mine[data-v-9ec62d4b]{margin:0;line-height:1.75;font-size:14px;color:var(--info)}.mine.verify[data-v-9ec62d4b]{color:var(--warn);background:var(--warn-soft);border:1px dashed rgba(227,179,65,.5);border-radius:8px;padding:8px 12px}.conf[data-v-9ec62d4b]{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:14px}.cbtns[data-v-9ec62d4b]{display:flex;gap:6px}.pager[data-v-9ec62d4b]{display:flex;justify-content:space-between}@media(max-width:860px){.qa[data-v-9ec62d4b]{grid-template-columns:1fr}.side[data-v-9ec62d4b]{position:static;flex-direction:row;overflow-x:auto}.side-head[data-v-9ec62d4b]{display:none}.cat[data-v-9ec62d4b]{flex:0 0 auto}}.editor[data-v-89869785]{display:flex;background:var(--code-bg);border:1px solid var(--border);border-radius:10px;overflow:hidden;transition:border-color .2s,box-shadow .2s}.editor[data-v-89869785]:focus-within{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.editor.ok[data-v-89869785]{border-color:var(--ok);box-shadow:0 0 0 1px var(--ok)}.editor.bad[data-v-89869785]{border-color:var(--bad)}.gutter[data-v-89869785]{flex:0 0 38px;display:flex;flex-direction:column;padding:12px 0;text-align:right;font-family:var(--mono);font-size:13px;line-height:1.7;color:var(--line-num);background:var(--tab-bg);border-right:1px solid var(--border);-webkit-user-select:none;user-select:none}.gutter span[data-v-89869785]{padding-right:9px}.area[data-v-89869785]{position:relative;flex:1;min-width:0}.hl[data-v-89869785],.input[data-v-89869785]{margin:0;padding:12px 14px;font-family:var(--mono);font-size:13px;line-height:1.7;-moz-tab-size:2;tab-size:2;white-space:pre;letter-spacing:0;border:0}.hl[data-v-89869785]{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;color:var(--text)}.input[data-v-89869785]{position:relative;display:block;width:100%;min-height:calc(13.6em + 24px);resize:none;overflow-x:auto;overflow-y:hidden;background:transparent;color:transparent;caret-color:var(--text);outline:none}.input[data-v-89869785]::placeholder{color:var(--muted);opacity:.6}.input[data-v-89869785]::selection{background:var(--accent-soft-strong);color:transparent}.drills[data-v-8c559475]{display:grid;grid-template-columns:270px 1fr;gap:20px;align-items:start}.side[data-v-8c559475]{position:sticky;top:76px;max-height:calc(100vh - 96px);overflow-y:auto;display:flex;flex-direction:column;gap:3px;padding-right:4px}.side-head[data-v-8c559475]{padding:4px 8px 10px}.side-head h2[data-v-8c559475]{margin:0 0 4px;font-size:17px}.side-head p[data-v-8c559475]{margin:0;font-size:12.5px}.track-btn[data-v-8c559475]{width:100%;display:flex;justify-content:space-between;align-items:center;gap:8px;text-align:left;background:transparent;border:1px solid transparent;border-radius:8px;padding:8px 10px;cursor:pointer;color:var(--text-soft);font-size:13.5px;font-weight:600}.track-btn[data-v-8c559475]:hover:not(:disabled){background:var(--panel)}.track-btn.on[data-v-8c559475]{color:var(--text)}.track-btn[data-v-8c559475]:disabled{opacity:.35;cursor:default}.track-btn small[data-v-8c559475]{color:var(--muted);font-weight:500;font-size:11.5px}.lv[data-v-8c559475]{margin-left:4px;padding:0 5px;border:1px solid var(--border);border-radius:4px}.items[data-v-8c559475]{display:flex;flex-direction:column;gap:1px;padding:2px 0 8px 10px}.item[data-v-8c559475]{display:flex;gap:8px;align-items:center;text-align:left;padding:6px 8px;border-radius:7px;background:transparent;border:1px solid transparent;color:var(--text-soft);font-size:13px;cursor:pointer}.item[data-v-8c559475]:hover{background:var(--panel)}.item.on[data-v-8c559475]{background:var(--panel);border-color:var(--accent);color:var(--text)}.dot[data-v-8c559475]{flex:0 0 8px;height:8px;border-radius:50%;border:1.5px solid var(--muted)}.item.solved .dot[data-v-8c559475]{background:var(--ok);border-color:var(--ok)}.item.assisted .dot[data-v-8c559475]{background:var(--warn);border-color:var(--warn)}.it[data-v-8c559475]{min-width:0}.main[data-v-8c559475]{display:flex;flex-direction:column;gap:12px;min-width:0}.head[data-v-8c559475]{padding:20px 22px}.meta[data-v-8c559475]{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap}.head h3[data-v-8c559475]{margin:0 0 10px;font-size:21px}.mine[data-v-8c559475]{margin:10px 0 0;color:var(--info);font-size:13.5px;line-height:1.6}.task[data-v-8c559475]{padding:14px 18px}.task h4[data-v-8c559475]{margin:0 0 6px;font-size:14px;color:var(--accent-2)}.schema[data-v-8c559475]{margin-top:10px;padding:10px 12px;background:var(--code-bg);border:1px solid var(--border-soft);border-radius:8px;font-size:12.5px;line-height:1.8;color:var(--text-soft)}.schema code[data-v-8c559475]{font-family:var(--mono);color:#ffd7a8;margin-right:6px}.blanks[data-v-8c559475]{background:var(--code-bg);border:1px solid var(--border);border-radius:10px;overflow-x:auto}.blanks.ok[data-v-8c559475]{border-color:var(--ok)}.blanks.bad[data-v-8c559475]{border-color:var(--bad)}.blanks pre[data-v-8c559475]{margin:0;padding:14px 16px;font-family:var(--mono);font-size:13px;line-height:2;white-space:pre}.blank[data-v-8c559475]{font-family:var(--mono);font-size:13px;padding:1px 6px;min-width:4ch;background:var(--accent-soft);border:1px dashed var(--accent);border-radius:5px;color:#fff;outline:none}.blank[data-v-8c559475]:focus{border-style:solid}.blank.ok[data-v-8c559475]{border:1px solid var(--ok);background:var(--ok-soft)}.blank.bad[data-v-8c559475]{border:1px solid var(--bad);background:var(--bad-soft)}.actions[data-v-8c559475]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.actions small[data-v-8c559475]{opacity:.7;font-weight:500;margin-left:4px}.spacer[data-v-8c559475]{flex:1}.confirm[data-v-8c559475]{display:inline-flex;gap:6px;align-items:center;font-size:13px;color:var(--warn)}.status[data-v-8c559475]{margin:0;color:var(--muted);font-size:13px}.hint[data-v-8c559475]{padding:12px 16px;border-color:#e3b34159}.hint b[data-v-8c559475]{font-size:13px;color:var(--warn)}.hint pre[data-v-8c559475]{margin:6px 0 0;white-space:pre-wrap;font-family:var(--mono);font-size:12.5px;line-height:1.6}.result[data-v-8c559475]{padding:14px 18px}.result.pass[data-v-8c559475]{border-color:var(--ok)}.result.fail[data-v-8c559475]{border-color:#f8514980}.result h4[data-v-8c559475]{margin:0 0 10px;font-size:15px}.err[data-v-8c559475]{margin:0 0 8px;color:var(--bad);font-family:var(--mono);font-size:12.5px;white-space:pre-wrap}.tests[data-v-8c559475]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tests li[data-v-8c559475]{display:flex;gap:10px;font-size:13.5px}.tests li>span[data-v-8c559475]{font-weight:800}.tests li.ok>span[data-v-8c559475]{color:var(--ok)}.tests li.bad>span[data-v-8c559475]{color:var(--bad)}.tests b[data-v-8c559475]{font-weight:600}.tests small[data-v-8c559475]{display:block;color:var(--muted);font-family:var(--mono);font-size:12px;margin-top:2px;white-space:pre-wrap}.explain[data-v-8c559475]{margin:10px 0 0;color:var(--info);font-size:13.5px;line-height:1.6}.tables[data-v-8c559475]{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:12px}.tables small[data-v-8c559475]{color:var(--muted);font-size:12px}.tbl-wrap[data-v-8c559475]{overflow-x:auto;margin-top:4px;border:1px solid var(--border-soft);border-radius:8px}table[data-v-8c559475]{border-collapse:collapse;font-size:12.5px;font-family:var(--mono);width:100%}th[data-v-8c559475],td[data-v-8c559475]{padding:5px 9px;border-bottom:1px solid var(--border-soft);text-align:left;white-space:nowrap}th[data-v-8c559475]{background:var(--tab-bg);color:var(--muted);font-weight:600}.logs[data-v-8c559475]{margin-top:10px;font-size:12.5px}.logs summary[data-v-8c559475]{cursor:pointer;color:var(--muted)}.logs pre[data-v-8c559475]{margin:6px 0 0;padding:8px 10px;background:var(--code-bg);border-radius:8px;font-family:var(--mono);font-size:12px;white-space:pre-wrap}.answer[data-v-8c559475]{padding:14px 18px}.answer h4[data-v-8c559475]{margin:0 0 8px;font-size:14px}.answer h4 small[data-v-8c559475]{font-weight:400;margin-left:6px}.answer pre[data-v-8c559475]{margin:0;padding:12px 14px;background:var(--code-bg);border:1px solid var(--border);border-radius:9px;font-family:var(--mono);font-size:12.5px;line-height:1.65;overflow-x:auto}@media(max-width:860px){.drills[data-v-8c559475]{grid-template-columns:1fr}.side[data-v-8c559475]{position:static;max-height:260px}}.clip[data-v-7d76178d]{display:block;margin-top:6px}video[data-v-7d76178d]{width:100%;max-width:480px;max-height:320px;border-radius:10px;background:#000;display:block}audio[data-v-7d76178d]{width:100%;max-width:480px;display:block}.tags[data-v-54d2241b]{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.tag[data-v-54d2241b]{padding:4px 10px;border-radius:14px;border:1px solid var(--border);background:transparent;color:var(--text-soft);font-size:12.5px;cursor:pointer}.tag.on[data-v-54d2241b]{border-color:var(--warn);color:var(--warn);background:#ffaa0014}.ns[data-v-091eef21]{display:flex;flex-direction:column;gap:14px}.bar[data-v-091eef21]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.small[data-v-091eef21]{font-size:12.5px}.spacer[data-v-091eef21]{flex:1}.progress[data-v-091eef21]{height:4px;background:var(--border-soft);border-radius:2px;overflow:hidden}.progress i[data-v-091eef21]{display:block;height:100%;background:var(--accent);transition:width .3s}.stage[data-v-091eef21]{padding:30px 26px;text-align:center}.stage.answering[data-v-091eef21]{border-color:var(--bad);box-shadow:0 0 0 1px var(--bad)}.label[data-v-091eef21]{margin:0 0 8px;color:var(--muted);font-size:12.5px;letter-spacing:.08em}.q[data-v-091eef21]{margin:0 auto 20px;font-size:23px;line-height:1.5;max-width:640px}.live[data-v-091eef21]{width:320px;max-width:100%;border-radius:12px;transform:scaleX(-1);margin-bottom:14px;background:#000}.count[data-v-091eef21]{font-family:var(--mono);font-size:54px;font-weight:800;color:var(--accent-2);margin-bottom:12px}.clock[data-v-091eef21]{font-family:var(--mono);font-size:34px;font-weight:700;margin-bottom:16px}.clock small[data-v-091eef21]{font-size:14px;color:var(--muted);font-weight:400}.clock.over[data-v-091eef21]{color:var(--warn)}.live-text[data-v-091eef21]{max-width:640px;margin:0 auto 16px;font-size:14px;line-height:1.7;color:var(--text-soft)}.live-text i[data-v-091eef21]{color:var(--muted)}.ctrl[data-v-091eef21]{display:flex;justify-content:center;gap:8px;align-items:center;min-height:44px}.big[data-v-091eef21]{font-size:15px;padding:11px 22px;border-radius:10px}.tip[data-v-091eef21]{margin:14px 0 0;font-size:13px}.err[data-v-091eef21]{color:var(--warn);font-size:13.5px}.pausecard[data-v-091eef21]{padding:24px;text-align:center}.pausecard h2[data-v-091eef21]{margin:0 0 8px}.pausecard p[data-v-091eef21]{line-height:1.7;color:var(--text-soft);max-width:560px;margin:0 auto 16px}.row[data-v-091eef21]{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.gq[data-v-091eef21]{padding:10px 14px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:13.5px}.gq .warn[data-v-091eef21]{color:var(--warn);display:inline-flex;gap:8px;align-items:center}.list[data-v-091eef21]{padding:8px 14px}.li[data-v-091eef21]{display:flex;gap:10px;padding:6px 0;border-bottom:1px solid var(--border-soft);font-size:13.5px}.li[data-v-091eef21]:last-child{border-bottom:0}.n[data-v-091eef21]{color:var(--muted);font-family:var(--mono);width:22px}.t[data-v-091eef21]{flex:1}.s[data-v-091eef21]{font-family:var(--mono);color:var(--ok);white-space:nowrap}.s.low[data-v-091eef21]{color:var(--warn)}.mock[data-v-360bd1e9]{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:14px}.intro[data-v-360bd1e9]{padding:20px 22px}.intro h2[data-v-360bd1e9]{margin:0 0 10px;font-size:21px}.intro p[data-v-360bd1e9]{margin:0 0 8px;line-height:1.75;font-size:14.5px;color:var(--text-soft)}.intro b[data-v-360bd1e9]{color:#fff}.setup[data-v-360bd1e9],.history[data-v-360bd1e9],.review[data-v-360bd1e9],.checks[data-v-360bd1e9],.compare[data-v-360bd1e9],.done[data-v-360bd1e9]{padding:16px 18px}.setup h4[data-v-360bd1e9],.history h4[data-v-360bd1e9],.checks h4[data-v-360bd1e9]{margin:0 0 10px;font-size:14.5px}.pool[data-v-360bd1e9]{display:flex;align-items:center;gap:10px;padding:7px 4px;font-size:14px;cursor:pointer;border-bottom:1px solid var(--border-soft)}.pool small[data-v-360bd1e9]{margin-left:auto;color:var(--muted);font-size:12px}.pool.empty[data-v-360bd1e9]{opacity:.5}.pool input[data-v-360bd1e9],.check input[data-v-360bd1e9],.cam input[data-v-360bd1e9]{accent-color:var(--accent);width:16px;height:16px}.opts[data-v-360bd1e9]{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin:14px 0;font-size:13.5px}.opts label[data-v-360bd1e9]{display:flex;align-items:center;gap:8px}.sel[data-v-360bd1e9]{width:auto;padding:5px 8px;font-size:13px}.cam[data-v-360bd1e9]{cursor:pointer}.big[data-v-360bd1e9]{font-size:15px;padding:11px 22px;border-radius:10px}.err[data-v-360bd1e9]{color:var(--warn);font-size:13.5px;margin:8px 0}.warnline[data-v-360bd1e9]{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px;padding:10px 12px;border:1px solid var(--warn);border-radius:10px;font-size:13.5px}.history details[data-v-360bd1e9]{border-bottom:1px solid var(--border-soft);padding:8px 0}.history summary[data-v-360bd1e9]{cursor:pointer;font-size:13.5px}.hitem[data-v-360bd1e9]{padding:8px 0 0 14px}.hitem b[data-v-360bd1e9]{font-size:13.5px}.hitem small[data-v-360bd1e9]{display:block;color:var(--muted);font-size:12px}.hitem p[data-v-360bd1e9]{margin:4px 0 0;font-size:13px;color:var(--text-soft);line-height:1.6}.usage[data-v-360bd1e9]{margin:-4px 0 8px;font-size:12.5px}.nonstop p[data-v-360bd1e9]{margin:0 0 12px;line-height:1.7;font-size:13.5px}.nonstop b[data-v-360bd1e9]{color:var(--text)}.nsrow[data-v-360bd1e9]{display:flex;gap:8px;flex-wrap:wrap}.memo-card[data-v-360bd1e9]{padding:16px 18px}.memo-card h4[data-v-360bd1e9]{margin:0 0 10px;font-size:14.5px}.memo-card h4 small[data-v-360bd1e9]{font-weight:400;margin-left:6px;font-size:12px}.hmemo[data-v-360bd1e9]{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:6px;font-size:13px;color:var(--warn)}.hedit summary[data-v-360bd1e9]{cursor:pointer;font-size:12.5px;color:var(--info);margin-top:6px}.bar[data-v-360bd1e9]{display:flex;gap:8px;align-items:center}.spacer[data-v-360bd1e9]{flex:1}.stage[data-v-360bd1e9]{padding:30px 26px;text-align:center}.stage.recording[data-v-360bd1e9]{border-color:var(--bad);box-shadow:0 0 0 1px var(--bad)}.label[data-v-360bd1e9]{margin:0 0 8px;color:var(--muted);font-size:12.5px;letter-spacing:.08em}.q[data-v-360bd1e9]{margin:0 auto 20px;font-size:23px;line-height:1.5;max-width:640px}.live[data-v-360bd1e9]{width:320px;max-width:100%;border-radius:12px;transform:scaleX(-1);margin-bottom:14px;background:#000}.clock[data-v-360bd1e9]{font-family:var(--mono);font-size:34px;font-weight:700;margin-bottom:16px}.clock small[data-v-360bd1e9]{font-size:14px;color:var(--muted);font-weight:400}.clock.over[data-v-360bd1e9]{color:var(--warn)}.live-text[data-v-360bd1e9]{max-width:640px;margin:0 auto 16px;font-size:14px;line-height:1.7;color:var(--text-soft)}.live-text i[data-v-360bd1e9]{color:var(--muted)}.ctrl[data-v-360bd1e9]{display:flex;justify-content:center;gap:8px;align-items:center}.stop[data-v-360bd1e9]{background:var(--bad);border-color:var(--bad);color:#fff}.tip[data-v-360bd1e9]{margin:14px 0 0;font-size:13px}.media video[data-v-360bd1e9]{width:100%;max-height:360px;border-radius:10px;background:#000}.media audio[data-v-360bd1e9]{width:100%}.stats[data-v-360bd1e9]{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0 8px}.stats div[data-v-360bd1e9]{background:var(--code-bg);border:1px solid var(--border-soft);border-radius:10px;padding:12px;text-align:center}.stats b[data-v-360bd1e9]{display:block;font-size:24px;font-family:var(--mono)}.stats b.bad[data-v-360bd1e9]{color:var(--warn)}.stats small[data-v-360bd1e9]{color:var(--muted);font-size:12px}.speed[data-v-360bd1e9]{margin:0 0 8px;color:var(--info);font-size:13.5px}.fills[data-v-360bd1e9]{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.tlabel[data-v-360bd1e9]{display:block;font-size:13.5px;font-weight:600;margin:10px 0 6px}.tlabel small[data-v-360bd1e9]{font-weight:400;margin-left:6px}.check[data-v-360bd1e9]{display:flex;gap:8px;align-items:center;font-size:14px;padding:4px 0;cursor:pointer}.compare small[data-v-360bd1e9]{display:block;color:var(--muted);font-size:12px;margin-top:12px}.compare p[data-v-360bd1e9]{margin:4px 0 0;line-height:1.75;font-size:14px;white-space:pre-wrap}.nav[data-v-360bd1e9]{display:flex;justify-content:space-between}.grade[data-v-360bd1e9]{padding:16px 18px}.grade.loading[data-v-360bd1e9]{opacity:.85}.ghead[data-v-360bd1e9]{display:flex;align-items:center;gap:10px;margin-bottom:6px}.ghead h4[data-v-360bd1e9]{margin:0;font-size:14.5px}.score[data-v-360bd1e9]{font-family:var(--mono);font-weight:700;font-size:18px;color:var(--ok)}.score.low[data-v-360bd1e9]{color:var(--warn)}.summary[data-v-360bd1e9]{margin:4px 0 10px;line-height:1.7;font-size:14px}.glist[data-v-360bd1e9]{border-left:3px solid var(--border);padding:2px 0 2px 12px;margin:10px 0}.glist.bad[data-v-360bd1e9]{border-color:var(--bad)}.glist.warn[data-v-360bd1e9]{border-color:var(--warn)}.glist.ok[data-v-360bd1e9]{border-color:var(--ok)}.glist h5[data-v-360bd1e9]{margin:0 0 6px;font-size:13px;color:var(--text-soft)}.glist p[data-v-360bd1e9]{margin:0 0 4px;font-size:14px;line-height:1.65}.gitem[data-v-360bd1e9]{margin-bottom:8px}.gitem small[data-v-360bd1e9]{color:var(--muted);font-size:12.5px}.gitem s[data-v-360bd1e9]{color:var(--bad)}.better summary[data-v-360bd1e9]{cursor:pointer;font-size:13.5px;color:var(--info);margin-top:6px}.better p[data-v-360bd1e9]{margin:8px 0 0;line-height:1.75;font-size:14px;white-space:pre-wrap}.noted[data-v-360bd1e9]{margin:10px 0 0;font-size:13px;color:var(--muted)}.noted.on[data-v-360bd1e9]{color:var(--warn)}.noted a[data-v-360bd1e9]{margin-left:6px;color:var(--accent-2)}.pass p[data-v-360bd1e9]{margin:4px 0 8px;font-size:13.5px}.done[data-v-360bd1e9]{text-align:center}.done h2[data-v-360bd1e9]{margin:0 0 8px}.done p[data-v-360bd1e9]{line-height:1.7}@media(max-width:600px){.q[data-v-360bd1e9],.stats b[data-v-360bd1e9]{font-size:19px}}.wrongs[data-v-96cb1916]{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:14px}.intro[data-v-96cb1916]{padding:20px 22px}.intro h2[data-v-96cb1916]{margin:0 0 10px;font-size:21px}.intro p[data-v-96cb1916]{margin:0;line-height:1.75;font-size:14.5px;color:var(--text-soft)}.intro b[data-v-96cb1916]{color:var(--text)}.bar[data-v-96cb1916],.actions[data-v-96cb1916],header[data-v-96cb1916]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.spacer[data-v-96cb1916]{flex:1}.empty[data-v-96cb1916]{padding:18px;color:var(--muted);font-size:14px;margin:0}.note[data-v-96cb1916]{padding:16px 18px}.note.done[data-v-96cb1916]{opacity:.6}.note h3[data-v-96cb1916]{margin:10px 0 6px;font-size:16.5px;line-height:1.5}.score[data-v-96cb1916]{font-family:var(--mono);font-weight:700;font-size:16px;color:var(--ok)}.score.low[data-v-96cb1916]{color:var(--warn)}.summary[data-v-96cb1916]{margin:0 0 8px;font-size:14px;line-height:1.7;color:var(--text-soft)}.glist[data-v-96cb1916]{border-left:3px solid var(--border);padding:2px 0 2px 12px;margin:10px 0}.glist.bad[data-v-96cb1916]{border-color:var(--bad)}.glist.warn[data-v-96cb1916]{border-color:var(--warn)}.glist h5[data-v-96cb1916]{margin:0 0 6px;font-size:13px;color:var(--text-soft)}.gitem[data-v-96cb1916]{margin-bottom:8px}.gitem p[data-v-96cb1916]{margin:0 0 2px;font-size:14px;line-height:1.65}.gitem small[data-v-96cb1916]{color:var(--muted);font-size:12.5px}.gitem s[data-v-96cb1916]{color:var(--bad)}details[data-v-96cb1916]{margin:6px 0}summary[data-v-96cb1916]{cursor:pointer;font-size:13.5px;color:var(--info)}.text[data-v-96cb1916]{margin:8px 0 0;line-height:1.75;font-size:14px;white-space:pre-wrap}.actions[data-v-96cb1916]{margin-top:12px}.mymemo[data-v-96cb1916]{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:8px 0 0;font-size:13.5px;color:var(--warn)}.memos[data-v-cd94617e]{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:14px}.intro[data-v-cd94617e]{padding:20px 22px}.intro h2[data-v-cd94617e]{margin:0 0 10px;font-size:21px}.intro p[data-v-cd94617e]{margin:0;line-height:1.75;font-size:14.5px;color:var(--text-soft)}.intro b[data-v-cd94617e]{color:var(--text)}.counts[data-v-cd94617e]{padding:12px 14px;display:flex;flex-wrap:wrap;gap:8px}.cnt[data-v-cd94617e]{padding:6px 12px;border-radius:16px;border:1px solid var(--border);background:transparent;color:var(--text-soft);font-size:13px;cursor:pointer}.cnt b[data-v-cd94617e]{margin-left:4px;color:var(--warn);font-family:var(--mono)}.cnt.on[data-v-cd94617e]{border-color:var(--warn);color:var(--text);background:#ffaa0014}.empty[data-v-cd94617e]{padding:18px;color:var(--muted);font-size:14px;margin:0}.item[data-v-cd94617e]{padding:16px 18px}header[data-v-cd94617e],.actions[data-v-cd94617e]{display:flex;gap:8px;align-items:center}.spacer[data-v-cd94617e]{flex:1}.item h3[data-v-cd94617e]{margin:8px 0;font-size:16px;line-height:1.5}.score[data-v-cd94617e]{font-family:var(--mono);font-weight:700;font-size:14px;color:var(--ok);margin-left:auto}.score.low[data-v-cd94617e]{color:var(--warn)}.memo[data-v-cd94617e]{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.memo p[data-v-cd94617e]{flex-basis:100%;margin:4px 0 0;font-size:14px;line-height:1.7}details[data-v-cd94617e]{margin:8px 0 0}summary[data-v-cd94617e]{cursor:pointer;font-size:13.5px;color:var(--info)}.text[data-v-cd94617e]{margin:8px 0 0;line-height:1.75;font-size:14px;white-space:pre-wrap}.actions[data-v-cd94617e]{margin-top:12px}.backdrop[data-v-374fd067]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;background:#0000008c;padding:16px}.dialog[data-v-374fd067]{width:100%;max-width:360px;padding:20px;display:flex;flex-direction:column;gap:10px}.dialog h3[data-v-374fd067]{margin:0;font-size:17px}.dialog p[data-v-374fd067]{margin:0;font-size:13.5px;line-height:1.6}.err[data-v-374fd067]{color:var(--warn)}.good[data-v-374fd067]{color:var(--ok)}.row[data-v-374fd067]{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.app[data-v-daf82bc4]{min-height:100vh}.top[data-v-daf82bc4]{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:18px;padding:10px 24px;background:#0d1117db;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.brand[data-v-daf82bc4]{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text)}.logo[data-v-daf82bc4]{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),#f03e3e);color:#fff;font-weight:900;font-size:13px}.name[data-v-daf82bc4]{display:flex;flex-direction:column;line-height:1.25}.name b[data-v-daf82bc4]{font-size:14.5px}.name small[data-v-daf82bc4]{font-size:11.5px;color:var(--muted)}.tabs[data-v-daf82bc4]{display:flex;gap:2px;flex:1;overflow-x:auto}.tab[data-v-daf82bc4]{padding:8px 12px;border-radius:8px;text-decoration:none;color:var(--text-soft);font-size:13.5px;font-weight:600;white-space:nowrap}.tab[data-v-daf82bc4]:hover{background:var(--panel);color:var(--text)}.tab.on[data-v-daf82bc4]{background:var(--accent-soft);color:var(--accent-2)}.subnav[data-v-daf82bc4]{max-width:860px;margin:0 auto 14px;display:flex;gap:6px}.subnav a[data-v-daf82bc4]{padding:7px 14px;border-radius:8px;text-decoration:none;color:var(--text-soft);font-size:13.5px;font-weight:600;border:1px solid var(--border)}.subnav a.on[data-v-daf82bc4]{background:var(--accent-soft);color:var(--accent-2);border-color:transparent}.subnav b[data-v-daf82bc4]{margin-left:4px;font-family:var(--mono)}.badge[data-v-daf82bc4]{margin-left:4px;padding:1px 6px;border-radius:9px;background:var(--bad);color:#fff;font-size:11px}.sync[data-v-daf82bc4]{font-size:11.5px;color:var(--muted);white-space:nowrap}.sync.dirty[data-v-daf82bc4]{color:var(--warn)}.sync.error[data-v-daf82bc4]{color:var(--bad)}.me[data-v-daf82bc4]{position:relative;font-size:13px}.me summary[data-v-daf82bc4]{cursor:pointer;list-style:none;padding:5px 10px;border:1px solid var(--border);border-radius:8px;color:var(--text-soft)}.me .menu[data-v-daf82bc4]{position:absolute;right:0;top:34px;padding:6px;display:flex;flex-direction:column;gap:4px;min-width:140px;z-index:15}.page[data-v-daf82bc4]{max-width:1240px;margin:0 auto;padding:22px 24px 60px}.toast[data-v-daf82bc4]{position:fixed;bottom:22px;left:50%;transform:translate(-50%);background:var(--panel-2);border:1px solid var(--ok);color:var(--text);padding:10px 16px;border-radius:10px;font-size:13.5px;z-index:20}@media(max-width:900px){.top[data-v-daf82bc4]{flex-wrap:wrap;padding:10px 16px;gap:8px}.tabs[data-v-daf82bc4]{order:3;flex-basis:100%}.sync[data-v-daf82bc4]{margin-left:auto}.page[data-v-daf82bc4]{padding:16px 16px 48px}}:root{--bg: #0d1117;--panel: #161b22;--panel-2: #1b222c;--tab-bg: #10151c;--code-bg: #0b0f16;--border: #262d38;--border-soft: #1f2630;--text: #e6edf3;--text-soft: #cdd6e0;--muted: #8b949e;--line-num: #495162;--mono: "SF Mono", "JetBrains Mono", "Fira Code", ui-monospace, Menlo, Consolas, monospace;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Apple SD Gothic Neo", "Pretendard", "Malgun Gothic", system-ui, sans-serif;--accent: #e8590c;--accent-2: #ff8a3d;--accent-soft: rgba(232, 89, 12, .13);--accent-soft-strong: rgba(232, 89, 12, .35);--ok: #3fb950;--ok-soft: rgba(63, 185, 80, .13);--warn: #e3b341;--warn-soft: rgba(227, 179, 65, .13);--bad: #f85149;--bad-soft: rgba(248, 81, 73, .12);--info: #79c0ff;--tok-kw: #ff7b72;--tok-str: #a5d6ff;--tok-com: #6e7681;--tok-dec: #ffa657;--tok-def: #d2a8ff;--tok-call: #d2a8ff;--tok-bi: #79c0ff;--tok-num: #79c0ff;--tok-tag: #7ee787}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:radial-gradient(1100px 520px at 85% -10%,rgba(232,89,12,.08),transparent),radial-gradient(900px 480px at 0% 0%,rgba(121,192,255,.05),transparent),var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;min-height:100vh}button,input,textarea,select{font:inherit;color:inherit}.card{background:var(--panel);border:1px solid var(--border);border-radius:12px}.btn{font-size:13px;font-weight:600;color:var(--text);background:var(--tab-bg);border:1px solid var(--border);padding:7px 13px;border-radius:8px;cursor:pointer;transition:border-color .15s,filter .15s,background .15s;white-space:nowrap}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:disabled{opacity:.4;cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover:not(:disabled){filter:brightness(1.1)}.btn.ok{background:var(--ok);border-color:var(--ok);color:#0b1a0f}.btn.ghost{background:transparent}.btn.small{font-size:12px;padding:5px 10px}.btn.danger:hover:not(:disabled){border-color:var(--bad);color:var(--bad)}.chip{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:999px;border:1px solid var(--border);color:var(--muted);background:var(--tab-bg);white-space:nowrap}.chip.accent{color:var(--accent-2);border-color:#e8590c66;background:var(--accent-soft)}.chip.ok{color:var(--ok);border-color:#3fb95066;background:var(--ok-soft)}.chip.warn{color:var(--warn);border-color:#e3b34166;background:var(--warn-soft)}.chip.bad{color:var(--bad);border-color:#f8514966;background:var(--bad-soft)}.field{width:100%;background:var(--code-bg);border:1px solid var(--border);border-radius:9px;padding:10px 12px;font-size:14px;line-height:1.7;color:var(--text);outline:none;resize:vertical;transition:border-color .15s}.field:focus{border-color:var(--accent)}.field::placeholder{color:var(--muted);opacity:.7}.tok-kw{color:var(--tok-kw)}.tok-str{color:var(--tok-str)}.tok-com{color:var(--tok-com);font-style:italic}.tok-dec{color:var(--tok-dec)}.tok-def{color:var(--tok-def);font-weight:600}.tok-call{color:var(--tok-call)}.tok-bi{color:var(--tok-bi)}.tok-num{color:var(--tok-num)}.tok-tag{color:var(--tok-tag)}.body{font-size:14.5px;line-height:1.75;color:var(--text-soft)}.body p{margin:0 0 10px}.body ul,.body ol{margin:0 0 10px;padding-left:20px}.body li{margin-bottom:4px}.body code{font-family:var(--mono);font-size:.86em;color:#ffd7a8;background:#ffa6571a;border:1px solid rgba(255,166,87,.18);padding:1px 6px;border-radius:5px;overflow-wrap:anywhere}.body b{color:#fff;font-weight:700}.body .muted{color:var(--muted);font-size:13.5px}.body pre,.body .snippet{margin:0 0 12px;padding:12px 14px;background:var(--code-bg);border:1px solid var(--border);border-radius:9px;font-family:var(--mono);font-size:12.5px;line-height:1.6;color:var(--text);overflow-x:auto}.body>:last-child{margin-bottom:0}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}::selection{background:var(--accent-soft-strong)}::-webkit-scrollbar{height:9px;width:9px}::-webkit-scrollbar-thumb{background:#2b3340;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#3a4453}::-webkit-scrollbar-track{background:transparent}
