.ver[data-v-0ab0bb3d]{color:var(--muted);margin:0;font-size:12px}.ver a[data-v-0ab0bb3d]{color:inherit;text-decoration:none}.ver a[data-v-0ab0bb3d]:hover{color:var(--text);text-decoration:underline}.home[data-v-b1acdd94]{max-width:720px;margin:48px auto;padding:24px}.home-head[data-v-b1acdd94]{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.home-head h1[data-v-b1acdd94]{margin:0 0 6px}.home-head .muted[data-v-b1acdd94]{margin:0}.panel[data-v-b1acdd94]{background:var(--panel);border:1px solid var(--border);border-radius:14px;margin-top:16px;padding:18px 20px}.panel h2[data-v-b1acdd94]{margin:0 0 8px;font-size:18px}.home-ver[data-v-b1acdd94]{margin-top:24px}.settings[data-v-109cb170]{max-width:860px;margin:48px auto;padding:24px}.panel[data-v-109cb170]{background:var(--panel);border:1px solid var(--border);border-radius:14px;margin-top:16px;padding:18px 20px}.panel h2[data-v-109cb170]{margin:0 0 8px;font-size:18px}.intro[data-v-109cb170]{margin:0 0 14px}.themes[data-v-109cb170]{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.theme-card[data-v-109cb170]{text-align:left;background:var(--bg-elevated);color:var(--text);border:2px solid var(--border);border-radius:12px;gap:6px;padding:12px;display:grid}.theme-card.active[data-v-109cb170]{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.theme-card strong[data-v-109cb170]{font-size:15px}.desc[data-v-109cb170]{color:var(--muted);font-size:13px}.swatch[data-v-109cb170],.swatch[data-v-109cb170] *{pointer-events:none}.swatch[data-v-109cb170]{border:1px solid var(--border);border-radius:8px;gap:6px;height:72px;margin-bottom:4px;padding:10px;display:grid}.swatch.light[data-v-109cb170]{background:#f4f6f8}.swatch.dark[data-v-109cb170]{background:#0b1220;border-color:#334155}.swatch.warm[data-v-109cb170]{background:#1c1214;border-color:#5a3a3e}.swatch-bar[data-v-109cb170]{border-radius:4px;width:42%;height:10px}.swatch.light .swatch-bar[data-v-109cb170]{background:#1f2937}.swatch.dark .swatch-bar[data-v-109cb170]{background:#e5e7eb}.swatch.warm .swatch-bar[data-v-109cb170]{background:#f3e6e3}.swatch-line[data-v-109cb170]{border-radius:3px;height:6px}.swatch.light .swatch-line[data-v-109cb170]{background:#cbd5e1}.swatch.dark .swatch-line[data-v-109cb170]{background:#334155}.swatch.warm .swatch-line[data-v-109cb170]{background:#5a3a3e}.swatch-line.short[data-v-109cb170]{width:68%}@media (width<=640px){.themes[data-v-109cb170]{grid-template-columns:1fr}}.qtree[data-v-48ae60d3]{border-top:1px solid var(--sidebar-border);max-height:calc(100vh - 320px);margin-top:10px;padding-top:10px;font-size:12px;overflow:auto}.qtree-title[data-v-48ae60d3]{color:var(--sidebar-muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px 4px;font-size:11px}.node[data-v-48ae60d3]{width:100%;color:var(--sidebar-link);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:4px;padding:6px 8px;display:flex}.node[data-v-48ae60d3]:hover{background:var(--sidebar-hover)}.node.active[data-v-48ae60d3]{background:var(--primary);color:#fff}.node.root[data-v-48ae60d3]{font-weight:600}.node.sub[data-v-48ae60d3]{padding-left:14px}.node.leaf[data-v-48ae60d3]{color:var(--sidebar-text);padding-left:28px}.caret[data-v-48ae60d3]{width:12px;color:var(--sidebar-muted);flex-shrink:0;font-size:10px;transition:transform .15s;display:inline-block}.caret.open[data-v-48ae60d3]{transform:rotate(90deg)}.label[data-v-48ae60d3]{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.cnt[data-v-48ae60d3]{color:var(--sidebar-muted);font-variant-numeric:tabular-nums;font-size:11px}.node.active .cnt[data-v-48ae60d3]{color:var(--primary-fg)}.children[data-v-48ae60d3]{margin-left:2px}.empty[data-v-48ae60d3]{padding:4px 8px 8px 28px;font-size:11px}.muted[data-v-48ae60d3]{color:var(--sidebar-muted)}.layout[data-v-adbdf57d]{min-height:100vh;display:flex}.side[data-v-adbdf57d]{background:var(--sidebar-bg);width:248px;color:var(--sidebar-text);flex-direction:column;flex-shrink:0;gap:8px;padding:20px 12px;display:flex}.brand[data-v-adbdf57d]{margin-bottom:4px;padding:0 4px;font-weight:700}.user[data-v-adbdf57d]{color:var(--sidebar-muted);margin-bottom:4px;padding:0 4px;font-size:12px}.scope[data-v-adbdf57d]{color:var(--primary-fg);margin-bottom:8px;padding:0 4px;font-size:11px}.side nav[data-v-adbdf57d]{flex-direction:column;flex:1;gap:2px;min-height:0;display:flex}.side a[data-v-adbdf57d]{color:var(--sidebar-link);border-radius:8px;padding:10px 12px;display:block}.side a.router-link-active[data-v-adbdf57d]{background:var(--primary);color:#fff}.logout[data-v-adbdf57d]{background:var(--sidebar-btn);color:var(--sidebar-text);cursor:pointer;text-align:left;border:none;border-radius:8px;margin-top:auto;padding:10px 12px}.back[data-v-adbdf57d]{color:var(--sidebar-muted)!important}.main[data-v-adbdf57d]{background:var(--bg);flex:1;min-width:0;padding:24px}.login-wrap[data-v-82b6931f]{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.card[data-v-82b6931f]{background:var(--panel);border:1px solid var(--border);border-radius:14px;gap:12px;width:100%;max-width:380px;padding:24px;display:grid}h1[data-v-82b6931f]{margin:0;font-size:22px}label[data-v-82b6931f]{gap:6px;font-size:14px;display:grid}.err[data-v-82b6931f]{color:var(--danger);margin:0;font-size:14px}.qno[data-v-497e543c]{font-variant-numeric:tabular-nums;font-weight:600}.gid[data-v-497e543c]{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:11px;line-height:1.3;overflow:hidden}.jxgbox{-ms-touch-action:none;background-color:#fff;border:1px solid #356aa0;border-radius:10px;margin:0;position:relative;overflow:hidden}.jxgbox svg text{cursor:default;-webkit-user-select:none;user-select:none}.JXGtext{background-color:#0000;margin:0;padding:0;font-family:Courier,monospace}.JXGinfobox{border:0 #000}.jxgbox :focus{outline-width:.5px;outline-style:dotted}.JXG_navigation{z-index:100;cursor:pointer;background-color:#0000;padding:2px;font-size:14px;position:absolute;bottom:5px;right:5px}.JXG_navigation_button{color:#666}.JXG_navigation_button:hover{background:#b8b8b880;border-radius:2px}.JXG_navigation_button svg{padding:0;position:relative;top:.2em}.JXG_wrap_private:fullscreen{background-color:#ccc;width:100%;height:100%;padding:0}.JXG_wrap_private:fullscreen{background-color:#ccc;width:100%;height:100%;padding:0}.smart-label-solid{color:#fff;text-align:center;vertical-align:middle;border-radius:150px;margin:0;padding:1px 7px}.smart-label-outline{color:#000;text-align:center;vertical-align:middle;background-color:#fff;border:2px solid #000;border-radius:15px;margin:0;padding:1px 7px}.smart-label-pure{color:#000;text-align:center;vertical-align:middle;background-color:#0000;border:none;border-radius:15px;margin:0;padding:20px 7px 1px}.smart-label-line,.smart-label-point{background-color:#0072b2;border-color:#0072b2}.smart-label-point{margin-top:12px}.smart-label-angle{background-color:#e69f00;border-color:#e69f00;padding:1px 7px}.smart-label-polygon,.smart-label-circle{color:#000;background-color:#f0e442;border-color:#f0e442;padding:1px 7px}.geo-board-wrap[data-v-0e23bf41]{border:1px solid var(--border,#e5e7eb);background:var(--panel);border-radius:10px;overflow:hidden}.geo-toolbar[data-v-0e23bf41]{border-bottom:1px solid var(--border,#e5e7eb);background:var(--bg-elevated);flex-wrap:wrap;gap:8px;padding:8px 10px;display:flex}.geo-toolbar .active[data-v-0e23bf41]{border-color:var(--primary,#4f46e5);background:var(--primary-soft,#eef2ff)}.geo-jxg[data-v-0e23bf41]{background:var(--canvas-bg);width:100%}.tip[data-v-0e23bf41]{margin:0;padding:8px 12px;font-size:13px}.geo-editor[data-v-e616f93f]{gap:12px;display:grid}.block[data-v-e616f93f]{display:block}.block textarea[data-v-e616f93f],.sol input[data-v-e616f93f]{width:100%;font:inherit;border:1px solid var(--border,#e5e7eb);border-radius:8px;margin-top:4px;padding:8px 10px}.sol[data-v-e616f93f]{margin-top:8px}textarea[data-v-caeb0b85],input[type=text][data-v-caeb0b85]{resize:vertical;width:100%;font:inherit;border:1px solid var(--border,#e5e7eb);border-radius:8px;padding:8px 10px}.cols[data-v-922251fc]{grid-template-columns:1.2fr 1fr;gap:16px;display:grid}@media (width<=900px){.cols[data-v-922251fc]{grid-template-columns:1fr}}.proof[data-v-922251fc]{white-space:pre-wrap;background:var(--bg-elevated);border:1px solid var(--border,#e5e7eb);font:inherit;border-radius:8px;min-height:120px;padding:12px}.sol[data-v-922251fc]{margin:8px 0;font-size:14px}.hints[data-v-922251fc],.ai[data-v-922251fc]{margin-top:12px}.hint-block[data-v-922251fc]{margin:8px 0;font-size:14px}.warn[data-v-922251fc]{color:#b45309}h4[data-v-922251fc]{margin:0 0 8px}.meta[data-v-cb7c8ec5],.qcard[data-v-cb7c8ec5]{margin:12px 0}.badge[data-v-cb7c8ec5]{background:var(--btn-secondary-bg);border-radius:999px;padding:2px 8px;font-size:12px}.badge.correct[data-v-cb7c8ec5]{background:var(--ok-bg);color:var(--ok-fg)}.badge.wrong[data-v-cb7c8ec5]{background:var(--danger-bg);color:var(--danger-fg)}.badge.pending[data-v-cb7c8ec5]{background:var(--warn-bg);color:var(--warn-fg)}.review-form[data-v-cb7c8ec5]{align-items:end;gap:12px;margin-top:12px}.review-form input[data-v-cb7c8ec5]{font:inherit;border:1px solid var(--border,#e5e7eb);border-radius:8px;padding:6px 8px}.stem[data-v-cb7c8ec5]{white-space:pre-wrap}.info[data-v-84b68e5e]{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;margin-top:12px;padding:12px}.err[data-v-84b68e5e]{color:var(--danger)}.geo-answer[data-v-e01612db]{gap:12px;display:grid}.stem[data-v-e01612db]{white-space:pre-wrap;margin:0;line-height:1.6}.goal[data-v-e01612db]{color:var(--muted);margin:0}.block[data-v-e01612db]{display:block}.block textarea[data-v-e01612db]{width:100%;font:inherit;border:1px solid var(--border,#e5e7eb);border-radius:8px;margin-top:4px;padding:8px 10px}.exam[data-v-c6f2cd72]{max-width:960px;margin:0 auto;padding:16px}.bar[data-v-c6f2cd72]{background:var(--panel);border:1px solid var(--border);border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;display:flex}.timer[data-v-c6f2cd72]{color:var(--primary);min-width:70px;font-size:20px;font-weight:700}.badge[data-v-c6f2cd72]{background:var(--badge-bg);color:var(--badge-fg);border-radius:999px;margin-left:8px;padding:2px 8px;font-size:12px;display:inline-block}.body[data-v-c6f2cd72]{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:20px}.stem-text[data-v-c6f2cd72]{margin:0 0 16px;font-size:16px;line-height:1.6}.stem[data-v-c6f2cd72]{text-align:center;cursor:zoom-in;margin:12px 0 20px}.stem img[data-v-c6f2cd72]{object-fit:contain;border:1px solid var(--border);background:var(--canvas-bg);border-radius:8px;max-width:100%;max-height:360px}.tip[data-v-c6f2cd72]{margin:0 0 10px}.options[data-v-c6f2cd72]{gap:12px;display:grid}.options.grid_2x2[data-v-c6f2cd72]{grid-template-columns:1fr 1fr}.options.grid_2x3[data-v-c6f2cd72]{grid-template-columns:1fr 1fr 1fr}.options.list[data-v-c6f2cd72]{grid-template-columns:1fr}.opt[data-v-c6f2cd72]{background:var(--panel);border:2px solid var(--border);color:inherit;flex-direction:column;align-items:center;gap:8px;min-height:120px;padding:12px;display:flex}.opt.textish[data-v-c6f2cd72]{text-align:left;flex-direction:row;justify-content:flex-start;align-items:flex-start;min-height:auto}.opt.selected[data-v-c6f2cd72]{border-color:var(--primary);background:var(--primary-soft)}.opt img[data-v-c6f2cd72]{object-fit:contain;max-width:100%;max-height:140px}.opt-text[data-v-c6f2cd72]{flex:1;line-height:1.45}.key[data-v-c6f2cd72]{min-width:1.5em;font-weight:700}.lb[data-v-c6f2cd72]{z-index:50;cursor:zoom-out;background:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lb img[data-v-c6f2cd72]{max-width:92vw;max-height:92vh}.layout[data-v-014db092]{min-height:100vh;display:flex}.side[data-v-014db092]{background:var(--sidebar-bg);width:200px;color:var(--sidebar-text);flex-direction:column;gap:8px;padding:20px 14px;display:flex}.brand[data-v-014db092]{margin-bottom:4px;font-weight:700}.user[data-v-014db092]{color:var(--sidebar-muted);margin-bottom:12px;font-size:12px}.side a[data-v-014db092]{color:var(--sidebar-link);border-radius:8px;padding:10px 12px;display:block}.side a.router-link-active[data-v-014db092]{background:var(--sidebar-active);color:#fff}.logout[data-v-014db092]{background:var(--sidebar-btn);color:var(--sidebar-text);cursor:pointer;text-align:left;border:none;border-radius:8px;margin-top:auto;padding:10px 12px}.back[data-v-014db092]{color:var(--sidebar-muted)!important}.main[data-v-014db092]{background:var(--bg);flex:1;padding:24px}.wrap[data-v-1bc8ac09]{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.card[data-v-1bc8ac09]{background:var(--panel);border:1px solid var(--border);border-radius:14px;gap:12px;width:100%;max-width:420px;padding:24px;display:grid}label[data-v-1bc8ac09]{gap:6px;font-size:14px;display:grid}.err[data-v-1bc8ac09]{color:var(--danger);margin:0}.ok[data-v-1bc8ac09]{color:var(--ok);word-break:break-all;margin:0;font-size:13px}.wrap[data-v-05aee527]{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.card[data-v-05aee527]{background:var(--panel);border:1px solid var(--border);border-radius:14px;gap:12px;width:100%;max-width:380px;padding:24px;display:grid}label[data-v-05aee527]{gap:6px;font-size:14px;display:grid}.err[data-v-05aee527]{color:var(--danger);margin:0}.wrap[data-v-bdf4be8a]{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.card[data-v-bdf4be8a]{background:var(--panel);border:1px solid var(--border);border-radius:14px;width:100%;max-width:480px;padding:24px}.grid[data-v-bdf4be8a]{gap:10px;margin-top:12px;display:grid}.err[data-v-bdf4be8a]{color:var(--danger)}.ok[data-v-bdf4be8a]{color:var(--ok)}.err[data-v-2a86a8f4]{color:var(--danger)}.grid-form[data-v-2a86a8f4]{gap:10px;display:grid}.stats[data-v-2c2d909c]{flex-wrap:wrap;gap:12px;margin:16px 0;display:flex}.stat[data-v-2c2d909c]{background:var(--panel);border:1px solid var(--border);border-radius:12px;flex:1;gap:4px;min-width:120px;padding:12px;display:grid}.form[data-v-2c2d909c]{background:var(--panel);border:1px solid var(--border);border-radius:12px;gap:12px;max-width:520px;padding:16px;display:grid}label[data-v-2c2d909c]{gap:6px;font-size:14px;display:grid}label.check[data-v-2c2d909c]{align-items:center;gap:8px;display:flex}.row[data-v-2c2d909c]{flex-wrap:wrap;gap:10px;display:flex}.err[data-v-2c2d909c]{color:var(--danger);margin:0}.preview[data-v-2c2d909c]{background:var(--bg-elevated);border:1px dashed var(--border);border-radius:10px;gap:6px;padding:10px 12px;display:grid}.range[data-v-2c2d909c]{margin:0;font-weight:600}.linkish[data-v-2c2d909c]{color:var(--primary);cursor:pointer;background:0 0;border:none;justify-self:start;padding:0;font-size:13px}.linkish[data-v-2c2d909c]:disabled{opacity:.5;cursor:not-allowed}.exam[data-v-0729f9da]{max-width:960px;margin:0 auto;padding:16px}.bar[data-v-0729f9da]{background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex}.timer[data-v-0729f9da]{color:var(--primary);min-width:70px;font-size:20px;font-weight:700}.badge[data-v-0729f9da]{background:var(--badge-bg);color:var(--badge-fg);border-radius:999px;margin-left:8px;padding:2px 8px;font-size:12px;display:inline-block}.badge.mode[data-v-0729f9da]{background:var(--ok-bg);color:var(--ok-fg)}.badge.mode.learn[data-v-0729f9da]{color:#166534;background:#dcfce7}.badge.mock[data-v-0729f9da]{background:var(--warn-soft);color:var(--warn-soft-fg)}.bar-toggle[data-v-0729f9da]{cursor:pointer;vertical-align:middle;opacity:1;align-items:center;gap:3px;margin-left:8px;font-weight:600;line-height:1.4;display:inline-flex;border:1px solid var(--border)!important;background:var(--btn-secondary-bg,var(--panel))!important;color:var(--btn-secondary-fg,var(--text))!important;border-radius:999px!important;padding:2px 10px 2px 8px!important;font-size:12px!important}.bar-toggle[data-v-0729f9da]:hover,.bar-toggle[data-v-0729f9da]:focus-visible{outline:none;border-color:var(--primary)!important;color:var(--primary)!important}.bar-toggle.on[data-v-0729f9da]{border-color:var(--primary)!important;background:var(--primary-soft,#e0f2fe)!important;color:var(--primary)!important}.bar-chevron[data-v-0729f9da]{font-size:10px;transition:transform .15s;display:inline-block;transform:scaleX(1.1)}.bar-chevron.open[data-v-0729f9da]{transform:scaleX(1.1)rotate(180deg)}.qnav[data-v-0729f9da]{background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;gap:8px;margin:0 0 12px;padding:10px 12px;display:flex}.qdot[data-v-0729f9da]{border:2px solid var(--border);background:var(--panel);min-width:36px;height:36px;color:var(--muted);cursor:pointer;border-radius:999px;padding:0 8px;font-size:12px;font-weight:650;line-height:1}.qdot.answered[data-v-0729f9da]{border-color:var(--primary);color:var(--primary);background:var(--primary-soft,#e0f2fe)}.qdot.hinted[data-v-0729f9da]:not(.on){box-shadow:inset 0 -3px 0 0 var(--warn-border,#f59e0b)}.qdot.on[data-v-0729f9da]{border-color:var(--primary);background:var(--primary);color:#fff}.qdot[data-v-0729f9da]:hover{filter:brightness(.97)}.body[data-v-0729f9da]{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:20px}.stem-tag[data-v-0729f9da]{border:1px solid var(--border);background:var(--panel);color:var(--muted,#64748b);letter-spacing:.04em;cursor:help;vertical-align:middle;-webkit-user-select:none;user-select:none;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:700;line-height:1.4;display:inline-block}.stem-tag.tag-extra[data-v-0729f9da]{color:#64748b;background:#f8fafc;border-color:#cbd5e1}.stem-tag.tag-subst[data-v-0729f9da]{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.stem-tag.tag-miss[data-v-0729f9da]{color:#b45309;background:#fffbeb;border-color:#f59e0b}.stem-text[data-v-0729f9da]{-webkit-user-select:text;user-select:text;margin:0 0 16px;font-size:16px;line-height:1.6}.stem-mark-tools[data-v-0729f9da]{flex-wrap:wrap;align-items:center;gap:8px;margin:-8px 0 14px;display:flex}.stem-mark-edit[data-v-0729f9da]{border:1px dashed var(--border);background:var(--panel);border-radius:10px;margin:0 0 14px;padding:10px 12px}.stem-fault-meta[data-v-0729f9da]{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.stem-fault-meta label[data-v-0729f9da]{align-items:center;gap:6px;font-size:12px;display:inline-flex}.tag-select[data-v-0729f9da]{border:1px solid var(--border);background:var(--panel);min-width:96px;height:32px;color:inherit;border-radius:8px;padding:0 8px}.fault-note-input[data-v-0729f9da]{flex:1;min-width:180px;margin:0!important}.tip[data-v-0729f9da]{margin:0 0 10px}.options[data-v-0729f9da]{gap:12px;display:grid}.opt[data-v-0729f9da]{text-align:left;background:var(--panel);border:2px solid var(--border);color:inherit;cursor:pointer;border-radius:10px;align-items:flex-start;gap:8px;padding:12px;display:flex}.opt.selected[data-v-0729f9da]{border-color:var(--primary);background:var(--selected-bg)}.key[data-v-0729f9da]{min-width:1.5em;font-weight:700}.opt-text[data-v-0729f9da]{flex:1;line-height:1.45}.actions[data-v-0729f9da]{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:20px;display:flex}.hint-box[data-v-0729f9da]{background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:10px;margin-top:16px;padding:12px}.hint-head[data-v-0729f9da]{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.hint-actions[data-v-0729f9da]{gap:8px;display:flex}.edit-btn[data-v-0729f9da]{background:var(--panel);border:1px solid var(--warn-border);color:var(--warn-fg);letter-spacing:.04em;cursor:pointer;border-radius:6px;padding:2px 10px;font-size:12px;font-weight:650}.edit-btn.primary[data-v-0729f9da]{color:#fff;background:#d97706;border-color:#b45309}.edit-btn[data-v-0729f9da]:disabled{opacity:.5;cursor:not-allowed}.exp-text[data-v-0729f9da]{white-space:pre-wrap;margin:0 0 8px;line-height:1.55}.exp-input[data-v-0729f9da]{box-sizing:border-box;resize:vertical;border:1px solid var(--warn-border);width:100%;min-height:96px;font:inherit;background:var(--warn-bg);color:var(--text);border-radius:8px;margin-bottom:8px;padding:10px;line-height:1.5}.exp-input[data-v-0729f9da]:focus{border-color:#d97706;outline:none;box-shadow:0 0 0 3px #d9770633}.exp-saved[data-v-0729f9da]{margin:6px 0 0;font-size:12px}.note-box[data-v-0729f9da]{background:var(--note-bg);border:1px dashed var(--note-border);border-radius:10px;margin-top:16px}.detail-box[data-v-0729f9da]{background:var(--selected-bg,#f0f9ff);border:1px dashed var(--primary,#38bdf8);border-radius:10px;margin-top:12px}.note-box.open[data-v-0729f9da],.detail-box.open[data-v-0729f9da]{padding-bottom:12px}.note-toggle[data-v-0729f9da]{text-align:left;width:100%;color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:8px;padding:10px 12px;display:flex}.note-caret[data-v-0729f9da]{width:1em;color:var(--muted)}.note-label[data-v-0729f9da]{font-size:14px;font-weight:600}.md-tag[data-v-0729f9da]{letter-spacing:.03em;color:var(--primary);background:var(--primary-soft,#e0f2fe);border-radius:999px;padding:1px 6px;font-size:10px;font-weight:650}.note-preview[data-v-0729f9da]{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;overflow:hidden}.note-hint[data-v-0729f9da],.note-status[data-v-0729f9da]{margin-left:auto;font-size:12px}.note-body[data-v-0729f9da]{padding:0 12px}.detail-toolbar[data-v-0729f9da]{gap:6px;margin-bottom:8px;display:flex}.detail-toolbar .tab[data-v-0729f9da]{background:var(--panel);border:1px solid var(--border);color:var(--primary);cursor:pointer;border-radius:6px;padding:2px 10px;font-size:12px}.detail-toolbar .tab.on[data-v-0729f9da]{background:var(--primary);color:#fff;border-color:var(--primary)}.ai-row[data-v-0729f9da]{flex-wrap:wrap;align-items:center;gap:10px;padding:0 12px 10px;display:flex}.ai-btn[data-v-0729f9da]{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:6px 12px;font-size:13px;font-weight:650}.ai-btn[data-v-0729f9da]:disabled{opacity:.55;cursor:wait}.ai-btn.secondaryish[data-v-0729f9da]{background:var(--panel);color:var(--primary);border:1px solid var(--primary)}.stem-mark-row[data-v-0729f9da]{margin-top:10px;padding:0}.stem-text.stem-mark[data-v-0729f9da] strong{color:var(--danger,#dc2626);background:#dc262614;border-radius:3px;padding:0 2px;font-weight:750}.stem-text.stem-mark[data-v-0729f9da] .stem-extra{color:#94a3b8;background:#f1f5f9;border-radius:3px;padding:0 2px;font-weight:650}.err-inline[data-v-0729f9da]{color:var(--danger,#dc2626);margin:0;font-size:13px}.linkish[data-v-0729f9da]{color:var(--primary);font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;margin-top:6px;padding:0;font-size:12px;text-decoration:underline;display:inline-block}.modal-mask[data-v-0729f9da]{z-index:80;background:#0f172a73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-card[data-v-0729f9da]{background:var(--panel,#fff);width:min(720px,100%);max-height:min(80vh,840px);color:var(--text);border:1px solid var(--border);border-radius:12px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 18px 48px #0f172a38}.modal-head[data-v-0729f9da]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.modal-head h3[data-v-0729f9da]{margin:0;font-size:16px}.modal-close[data-v-0729f9da]{border:1px solid var(--border);cursor:pointer;color:inherit;font:inherit;background:0 0;border-radius:8px;padding:4px 10px;font-size:13px}.modal-meta[data-v-0729f9da]{margin:0;padding:10px 16px 0;font-size:12px}.prompt-pre[data-v-0729f9da]{white-space:pre-wrap;word-break:break-word;background:var(--input-bg,#f8fafc);border:1px solid var(--border);border-radius:8px;flex:1;min-height:160px;margin:10px 16px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.5;overflow:auto}.modal-foot[data-v-0729f9da]{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:12px 16px 16px;display:flex}.modal-foot .secondary[data-v-0729f9da]{background:var(--panel);border:1px solid var(--border);color:var(--text);cursor:pointer;font:inherit;border-radius:8px;padding:6px 12px;font-size:13px}.note-input[data-v-0729f9da]{box-sizing:border-box;resize:vertical;border:1px solid var(--border);width:100%;min-height:72px;font:inherit;background:var(--input-bg);color:var(--text);border-radius:8px;padding:10px;line-height:1.5}.detail-input[data-v-0729f9da]{min-height:160px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}.note-input[data-v-0729f9da]:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.md-preview[data-v-0729f9da]{background:var(--panel);border:1px solid var(--border);min-height:72px;color:var(--text);border-radius:8px;padding:10px 12px;font-size:14px;line-height:1.55}.md-preview[data-v-0729f9da] h1,.md-preview[data-v-0729f9da] h2,.md-preview[data-v-0729f9da] h3{margin:.6em 0 .35em;line-height:1.3}.md-preview[data-v-0729f9da] h1{font-size:1.25em}.md-preview[data-v-0729f9da] h2{font-size:1.15em}.md-preview[data-v-0729f9da] h3{font-size:1.05em}.md-preview[data-v-0729f9da] p{margin:0 0 .6em}.md-preview[data-v-0729f9da] ul,.md-preview[data-v-0729f9da] ol{margin:0 0 .6em;padding-left:1.4em}.md-preview[data-v-0729f9da] code{background:var(--badge-bg,#e2e8f0);border-radius:4px;padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em}.md-preview[data-v-0729f9da] pre{color:#e2e8f0;background:#0f172a;border-radius:8px;margin:0 0 .6em;padding:10px;overflow:auto}.md-preview[data-v-0729f9da] pre code{color:inherit;background:0 0;padding:0}.md-preview[data-v-0729f9da] blockquote{border-left:3px solid var(--primary);color:var(--muted);margin:0 0 .6em;padding:.2em .8em}.md-preview[data-v-0729f9da] a{color:var(--primary)}.md-preview[data-v-0729f9da] .muted{color:var(--muted)}.note-meta[data-v-0729f9da]{margin:6px 0 0;font-size:12px}.warn[data-v-0729f9da]{color:var(--warn-fg);margin:8px 0 0}.row[data-v-0729f9da]{align-items:center;gap:12px;display:flex}.wrap[data-v-0729f9da]{text-align:center;padding:40px}.wrap[data-v-edd50601]{max-width:800px;margin:24px auto;padding:16px}.card[data-v-edd50601]{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:20px}.score[data-v-edd50601]{align-items:baseline;gap:4px;margin:12px 0 4px;font-size:32px;font-weight:700;display:flex}.score-sep[data-v-edd50601]{color:var(--muted);font-weight:500}.score-unit[data-v-edd50601]{color:var(--muted);margin-left:2px;font-size:16px;font-weight:600}.score-hint[data-v-edd50601]{margin:0 0 12px}.list[data-v-edd50601]{gap:10px;max-height:50vh;margin:20px 0;display:grid;overflow:auto}.item[data-v-edd50601]{border:1px solid var(--border);border-radius:10px;padding:10px 12px}.item.correct[data-v-edd50601]{border-color:var(--ok-border);background:var(--ok-bg)}.item.wrong[data-v-edd50601]{border-color:var(--danger-border);background:var(--danger-bg)}.item.partial[data-v-edd50601]{border-color:var(--info-border);background:var(--info-bg)}.meta[data-v-edd50601]{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;display:flex}.tag[data-v-edd50601]{font-size:12px;font-weight:700}.stem[data-v-edd50601]{margin:0;font-size:14px;line-height:1.5}.exp[data-v-edd50601]{color:var(--muted);margin:8px 0 0;font-size:13px}.note[data-v-edd50601]{color:var(--text);background:var(--note-bg);border-radius:8px;margin:8px 0 0;padding:8px 10px;font-size:13px}.detail-md[data-v-edd50601]{background:var(--selected-bg,#f0f9ff);border:1px solid var(--border);border-radius:8px;margin:8px 0 0;padding:10px 12px}.detail-md>strong[data-v-edd50601]{margin-bottom:6px;font-size:13px;display:block}.detail-md .md-body[data-v-edd50601]{color:var(--text);font-size:14px;line-height:1.55}.detail-md .md-body[data-v-edd50601] p{margin:0 0 .5em}.detail-md .md-body[data-v-edd50601] ul,.detail-md .md-body[data-v-edd50601] ol{margin:0 0 .5em;padding-left:1.3em}.detail-md .md-body[data-v-edd50601] pre{color:#e2e8f0;background:#0f172a;border-radius:6px;margin:0 0 .5em;padding:8px;overflow:auto}.row[data-v-edd50601]{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.err[data-v-edd50601]{color:var(--danger);margin:10px 0 0;font-size:13px}button.btn[data-v-edd50601]:disabled{opacity:.55;cursor:not-allowed}.link[data-v-edd50601]{border:1px solid var(--border);cursor:pointer;color:var(--primary);background:0 0;border-radius:8px;padding:2px 8px;font-size:12px}.modal[data-v-edd50601]{background:var(--overlay);z-index:40;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.panel[data-v-edd50601]{background:var(--panel);border-radius:14px;width:min(640px,100%);max-height:85vh;padding:16px 18px;overflow:auto}.panel header[data-v-edd50601]{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.opts[data-v-edd50601]{gap:8px;margin:12px 0;padding:0;list-style:none;display:grid}.opts li[data-v-edd50601]{border:1px solid var(--border);border-radius:8px;padding:8px 10px}.opts li.correct[data-v-edd50601]{border-color:var(--ok-border);background:var(--ok-bg)}.opts li.mine[data-v-edd50601]:not(.correct){border-color:var(--danger-border);background:var(--danger-bg)}.stem[data-v-37825c52]{max-width:420px;font-size:13px;line-height:1.4}.link[data-v-37825c52]{color:var(--primary);cursor:pointer;background:0 0;border:none}.err[data-v-37825c52],.err[data-v-88c41ff4]{color:var(--danger)}.wrap[data-v-e677e64e]{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.card[data-v-e677e64e]{background:var(--panel);border:1px solid var(--border);border-radius:14px;width:100%;max-width:520px;padding:28px 24px}.eyebrow[data-v-e677e64e]{color:var(--muted);letter-spacing:.04em;margin:0 0 6px;font-size:13px}h1[data-v-e677e64e]{margin:0 0 8px;font-size:28px}h2[data-v-e677e64e]{margin:20px 0 10px;font-size:16px}ul[data-v-e677e64e]{margin:0;padding-left:1.2em;line-height:1.7}.tip[data-v-e677e64e]{margin-top:18px;font-size:13px}.row[data-v-e677e64e]{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}code[data-v-e677e64e]{background:var(--code-bg);border-radius:4px;padding:1px 6px;font-size:12px}.tree[data-v-e1383397]{gap:2px;font-size:13px;display:grid}.node[data-v-e1383397]{text-align:left;color:#e2e8f0;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;width:100%;padding:6px 8px;font-size:13px;display:flex}.node[data-v-e1383397]:hover{background:#1e293b}.node.active[data-v-e1383397]{color:#fff;background:#0369a1}.node.law[data-v-e1383397]{color:#fff;font-weight:700}.node.fold[data-v-e1383397]{color:#94a3b8}.node.leaf[data-v-e1383397]{color:#cbd5e1;padding-left:28px}.caret[data-v-e1383397]{color:#64748b;width:12px;font-size:10px;transition:transform .12s;display:inline-block;transform:rotate(0)}.caret.open[data-v-e1383397]{transform:rotate(90deg)}.label[data-v-e1383397]{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.cnt[data-v-e1383397]{color:#64748b;font-size:11px}.kids[data-v-e1383397]{padding-left:6px}.dot[data-v-e1383397]{border-radius:50%;flex-shrink:0;width:7px;height:7px}.diagram[data-v-9a04d0be]{gap:18px;display:grid}.flow[data-v-9a04d0be]{grid-template-columns:minmax(180px,240px) 1fr;align-items:start;gap:16px;display:grid}.hub[data-v-9a04d0be]{text-align:left;cursor:pointer;border:2px solid;border-radius:12px;gap:6px;min-height:96px;padding:14px 16px;display:grid}.hub strong[data-v-9a04d0be]{font-size:18px;line-height:1.35}.kind[data-v-9a04d0be]{letter-spacing:.04em;text-transform:none;opacity:.75;font-size:11px}.sub[data-v-9a04d0be]{color:var(--muted);font-size:12px}.lanes[data-v-9a04d0be]{gap:10px;display:grid}.lane[data-v-9a04d0be]{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:10px 12px}.lane header[data-v-9a04d0be]{color:var(--text);justify-content:space-between;margin-bottom:8px;font-size:12px;font-weight:650;display:flex}.lane header em[data-v-9a04d0be]{color:var(--muted);font-style:normal}.chips[data-v-9a04d0be]{flex-wrap:wrap;gap:8px;display:flex}.chip[data-v-9a04d0be]{cursor:pointer;text-align:left;border:1px solid;border-radius:8px;max-width:100%;padding:6px 10px;font-size:13px}.chip .kind[data-v-9a04d0be]{margin-bottom:2px;font-size:10px;display:block}.chip .sub[data-v-9a04d0be]{color:var(--muted);margin-top:2px;font-size:11px;display:block}.facts[data-v-9a04d0be],.qs[data-v-9a04d0be]{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:14px 16px}h3[data-v-9a04d0be]{margin:0 0 8px;font-size:14px}.qs-head[data-v-9a04d0be]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.qs-head h3[data-v-9a04d0be]{margin:0}.train-actions[data-v-9a04d0be]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.rand-check[data-v-9a04d0be]{color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:13px;display:inline-flex}.rand-check input[data-v-9a04d0be]{margin:0}.train-btn[data-v-9a04d0be]{background:var(--primary);color:var(--btn-fg);cursor:pointer;border:none;border-radius:8px;padding:6px 12px;font-size:13px}.train-btn[data-v-9a04d0be]:disabled{opacity:.5;cursor:not-allowed}.facts p[data-v-9a04d0be],.caption[data-v-9a04d0be]{color:var(--text);margin:0 0 8px;font-size:14px;line-height:1.55}.caption[data-v-9a04d0be]{color:var(--muted);font-size:12px}.qgroup[data-v-9a04d0be]{border-top:1px solid var(--border);margin-top:12px;padding-top:10px}.qgroup h4[data-v-9a04d0be]{margin:0;font-size:13px;font-weight:650}.qrow[data-v-9a04d0be]{flex-wrap:wrap;gap:6px;display:flex}.qid[data-v-9a04d0be]{background:var(--info-bg);border:1px solid var(--info-border);color:var(--info-fg);cursor:pointer;text-underline-offset:2px;border-radius:999px;padding:2px 10px;font-size:12px;text-decoration:underline}.qid[data-v-9a04d0be]:hover{background:var(--primary-soft)}.qid[data-v-9a04d0be]:disabled{opacity:.5;cursor:not-allowed}.busy[data-v-9a04d0be]{color:var(--primary);margin:8px 0 0;font-size:13px}.err[data-v-9a04d0be]{color:var(--danger);margin:8px 0 0;font-size:13px;line-height:1.5}.empty[data-v-9a04d0be]{color:var(--muted)}@media (width<=900px){.flow[data-v-9a04d0be]{grid-template-columns:1fr}}.learn[data-v-90d75d23]{background:var(--bg);grid-template-columns:280px 1fr;min-height:100vh;display:grid}.left[data-v-90d75d23]{background:var(--sidebar-bg);color:var(--sidebar-text);border-right:1px solid var(--sidebar-border);flex-direction:column;min-height:100vh;display:flex}.brand[data-v-90d75d23]{padding:16px 14px 8px}.brand a[data-v-90d75d23]{color:var(--primary-fg);font-size:12px}.brand h1[data-v-90d75d23]{margin:8px 0 4px;font-size:16px}.brand p[data-v-90d75d23]{color:var(--sidebar-muted);margin:0;font-size:12px;line-height:1.45}.search[data-v-90d75d23]{background:var(--sidebar-hover);border:1px solid var(--sidebar-border);color:var(--sidebar-link);width:auto;margin:8px 12px 12px}.scroll[data-v-90d75d23]{flex:1;padding:0 8px 16px;overflow:auto}.right[data-v-90d75d23]{flex-direction:column;min-width:0;display:flex}.bar[data-v-90d75d23]{border-bottom:1px solid var(--border);background:var(--panel);justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;display:flex}.crumb[data-v-90d75d23]{color:var(--muted);font-size:13px}.link[data-v-90d75d23]{color:var(--text);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px}.link[data-v-90d75d23]:disabled{cursor:default;color:var(--muted)}.bar-links[data-v-90d75d23]{gap:12px;font-size:13px;display:flex}.body[data-v-90d75d23]{padding:20px;overflow:auto}@media (width<=800px){.learn[data-v-90d75d23]{grid-template-columns:1fr}.left[data-v-90d75d23]{min-height:auto;max-height:40vh}}:root,html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f6f8;--bg-elevated:#f8fafc;--panel:#fff;--text:#1f2937;--muted:#6b7280;--primary:#2563eb;--primary-soft:#dbeafe;--primary-fg:#1e3a8a;--border:#e5e7eb;--danger:#dc2626;--ok:#059669;--btn-fg:#fff;--btn-secondary-bg:#e5e7eb;--btn-secondary-fg:#111827;--input-bg:#fff;--thumb-bg:#f9fafb;--code-bg:#f1f5f9;--sidebar-bg:#0f172a;--sidebar-text:#fff;--sidebar-muted:#94a3b8;--sidebar-link:#cbd5e1;--sidebar-active:#0369a1;--sidebar-btn:#334155;--sidebar-border:#1e293b;--sidebar-hover:#1e293b;--badge-bg:#e0e7ff;--badge-fg:#3730a3;--ok-bg:#dcfce7;--ok-fg:#166534;--ok-border:#86efac;--warn-bg:#fffbeb;--warn-fg:#92400e;--warn-border:#fcd34d;--warn-soft:#ffedd5;--warn-soft-fg:#9a3412;--danger-bg:#fef2f2;--danger-fg:#991b1b;--danger-border:#fca5a5;--info-bg:#eff6ff;--info-fg:#1d4ed8;--info-border:#93c5fd;--selected-bg:#e0f2fe;--note-bg:#f8fafc;--note-border:#94a3b8;--canvas-bg:#fafafa;--overlay:#0f172a73}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1220;--bg-elevated:#111827;--panel:#1a2332;--text:#e5e7eb;--muted:#94a3b8;--primary:#3b82f6;--primary-soft:#1e3a5f;--primary-fg:#bfdbfe;--border:#334155;--danger:#f87171;--ok:#34d399;--btn-fg:#fff;--btn-secondary-bg:#334155;--btn-secondary-fg:#e5e7eb;--input-bg:#0f172a;--thumb-bg:#0f172a;--code-bg:#0f172a;--sidebar-bg:#020617;--sidebar-text:#f8fafc;--sidebar-muted:#94a3b8;--sidebar-link:#cbd5e1;--sidebar-active:#1d4ed8;--sidebar-btn:#1e293b;--sidebar-border:#1e293b;--sidebar-hover:#1e293b;--badge-bg:#312e81;--badge-fg:#c7d2fe;--ok-bg:#052e16;--ok-fg:#86efac;--ok-border:#166534;--warn-bg:#3b2a0a;--warn-fg:#fcd34d;--warn-border:#a16207;--warn-soft:#431407;--warn-soft-fg:#fdba74;--danger-bg:#3f1212;--danger-fg:#fca5a5;--danger-border:#7f1d1d;--info-bg:#0c2a4a;--info-fg:#93c5fd;--info-border:#1e40af;--selected-bg:#0c4a6e;--note-bg:#111827;--note-border:#64748b;--canvas-bg:#f8fafc;--overlay:#000000a6}html[data-theme=warm]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1c1214;--bg-elevated:#27181b;--panel:#2e1d21;--text:#f3e6e3;--muted:#c4a39e;--primary:#e07070;--primary-soft:#4a2a2c;--primary-fg:#f5c4c2;--border:#5a3a3e;--danger:#fb7185;--ok:#86c99a;--btn-fg:#fff;--btn-secondary-bg:#4a3336;--btn-secondary-fg:#f3e6e3;--input-bg:#1a1012;--thumb-bg:#1a1012;--code-bg:#1a1012;--sidebar-bg:#140c0e;--sidebar-text:#f8eeec;--sidebar-muted:#c4a39e;--sidebar-link:#e8d4d0;--sidebar-active:#b42318;--sidebar-btn:#3a2428;--sidebar-border:#3a2428;--sidebar-hover:#3a2428;--badge-bg:#4a2a32;--badge-fg:#f5c4c8;--ok-bg:#1a2e22;--ok-fg:#9fd4ae;--ok-border:#2d5a3c;--warn-bg:#3b2a12;--warn-fg:#f0c070;--warn-border:#8a5a20;--warn-soft:#3d2018;--warn-soft-fg:#f0b090;--danger-bg:#3f1a1e;--danger-fg:#f8b4b8;--danger-border:#7a3038;--info-bg:#3a2228;--info-fg:#f0b4b0;--info-border:#7a4548;--selected-bg:#4a282c;--note-bg:#27181b;--note-border:#8a6a68;--canvas-bg:#f8fafc;--overlay:#14080ab3}html{color:var(--text);background:var(--bg);font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}#app{background:var(--bg);min-height:100vh;color:var(--text)}a{color:var(--primary);text-decoration:none}button,.btn{background:var(--primary);color:var(--btn-fg);cursor:pointer;border:none;border-radius:8px;padding:8px 14px;font-size:14px}button.secondary,.btn.secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-fg)}button.danger{background:var(--danger);color:#fff}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{border:1px solid var(--border);background:var(--input-bg);width:100%;color:var(--text);border-radius:8px;padding:8px 10px;font-size:14px}code{background:var(--code-bg);color:var(--text);border-radius:4px;padding:1px 6px;font-size:12px}.card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px}.table{border-collapse:collapse;width:100%}.table th,.table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:10px 8px;font-size:14px}.thumb{object-fit:contain;background:var(--thumb-bg);border:1px solid var(--border);border-radius:6px;width:64px;height:64px}.muted{color:var(--muted)}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.grid-form{gap:12px;display:grid}
