:root{--bg:#0b0f14;--panel:#0f1620;--line:#23303d;--text:#e6edf5;--muted:#8fa1b3;--accent:#6ea8fe}
*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;display:flex;flex-direction:column;overflow:hidden}
.cards-head{height:56px;flex:none;display:flex;align-items:center;gap:12px;padding:0 16px;background:#0d141d;border-bottom:1px solid var(--line)}.cards-brand{color:var(--accent);font-weight:800;text-decoration:none}
.cards-main{flex:1;min-height:0;display:flex;flex-direction:column;padding:12px 14px 10px;max-width:720px;width:100%;margin:0 auto}
.cards-scope{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px;margin-bottom:6px}.cards-path{font-weight:700;color:var(--accent);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.cards-scope select{background:#0a1118;color:var(--text);border:1px solid var(--line);border-radius:7px;padding:5px 7px}.cards-scope #c-count{margin-left:auto}.cards-bar{height:3px;background:#1b2735;border-radius:999px;overflow:hidden;margin:0 0 8px}.cards-bar i{display:block;height:100%;background:var(--accent);width:0;transition:width .2s}
.card-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;perspective:1200px}
.flashcard{width:100%;height:100%;max-height:560px;position:relative;transform-style:preserve-3d;transition:transform .35s;background:transparent;border:0;padding:0;cursor:pointer}
.flashcard.flipped{transform:rotateY(180deg)}
.flash-face{position:absolute;inset:0;backface-visibility:hidden;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#101a26,#0c141d);padding:20px;display:flex;flex-direction:column;overflow:auto}
.flash-face.back{transform:rotateY(180deg);background:linear-gradient(180deg,#0f1b22,#0b1219)}
.flash-id{font:800 13px/1.3 ui-monospace,Menlo,monospace;color:var(--accent)}
.flash-math{flex:1;display:flex;align-items:center;justify-content:center;overflow:auto;padding:12px;min-height:120px}
.flash-title{font-size:18px;font-weight:800;margin-bottom:10px}.flash-text{color:#c9d6e3;font-size:14px;line-height:1.65;white-space:pre-wrap}.flash-hint{margin-top:auto;color:var(--muted);font-size:11px;text-align:center;padding-top:10px}
.cards-meta{min-height:20px;color:var(--muted);font-size:11px;text-align:center;margin:6px 0}.cards-meta a{color:var(--accent);text-decoration:none}
.cards-controls{display:flex;gap:8px;justify-content:space-between}.cards-controls button{flex:1;max-width:160px;background:#162231;color:var(--text);border:1px solid var(--line);border-radius:10px;padding:10px;font-size:13px;cursor:pointer}.cards-controls #c-flip{background:#18314f;border-color:#2f5f92}
.cards-help{text-align:center;color:var(--muted);font-size:10px;margin:8px 0 0}
@media(min-width:760px){.card-stage{max-height:600px}.flash-face{padding:28px}}

.flash-derive,.flash-deps{margin-top:14px;color:#c9d6e3;font-size:13px;line-height:1.55}.flash-derive h4,.flash-deps h4{color:var(--accent);font-size:10px;letter-spacing:.1em;text-transform:uppercase;margin:0 0 6px}.derive-step{background:#0a1118;border:1px solid var(--line);border-radius:8px;padding:8px;margin-bottom:6px;overflow:auto}.derive-why{color:var(--muted);font-size:11px;margin-top:4px}.dep-chip{display:inline-block;border:1px solid var(--line);background:#131c26;border-radius:999px;padding:3px 8px;font-size:10px;margin:0 4px 4px 0;color:#c9d6e3}.dep-ext{border-color:#6b571f;color:#ffdf9a}

html[data-theme=light] body{background:#f4f7fb;color:#111827}
html[data-theme=light] .cards-head{background:#fff;border-color:#d6dee8}
html[data-theme=light] .flash-face{background:#fff;border-color:#d6dee8;color:#111827}
html[data-theme=light] .flash-face.back{background:#f8fafc;color:#111827}
html[data-theme=light] .flash-text,html[data-theme=light] .flash-derive,html[data-theme=light] .flash-deps{color:#1f2937}
html[data-theme=light] .derive-step{background:#f3f6fa;border-color:#d6dee8}
html[data-theme=light] .cards-controls button{background:#fff;color:#111827;border-color:#cbd5e1}
html[data-theme=light] .cards-controls #c-flip{background:#dbeafe;border-color:#93c5fd;color:#1e3a8a}
html[data-theme=light] .cards-meta{color:#5b6b7c}
html[data-theme=light] .app-nav{background:#fff;border-color:#d6dee8}
html[data-theme=light] .app-nav a{color:#5b6b7c}
html[data-theme=light] .cards-scope select{background:#fff;color:#111827;border-color:#cbd5e1}
html[data-theme=light] .dep-chip{background:#fff;color:#111827;border-color:#cbd5e1}
html[data-theme=light] .dep-ext{border-color:#b45309;color:#92400e}
html[data-theme=light] .cards-help,html[data-theme=light] .flash-hint,html[data-theme=light] .cards-scope{color:#5b6b7c}

.flash-activity{display:block;margin:2px 0 10px;color:var(--muted);font-size:11px;line-height:1.45}.flash-activity b{color:var(--accent)}
