:root{color-scheme:dark;--bg: #111;--panel: #1c1c1c;--text: #f2f2f2;--muted: #9a9a9a;--line: #2a2a2a;--accent: #e8e8e8;font-family:Segoe UI,Apple SD Gothic Neo,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}main{max-width:32rem;margin:0 auto;padding:1.25rem 1rem 3rem}h1{font-size:1.6rem;margin:.2rem 0 .4rem}h2{font-size:1rem;margin:0 0 .6rem}.eyebrow{margin:0;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;color:var(--muted)}.lede,.note,.status,.meaning{color:var(--muted);line-height:1.45}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:1rem;margin-top:.9rem}.pattern{font-size:1.45rem;font-weight:700;margin:0 0 .35rem}button{width:100%;border:0;border-radius:10px;padding:.95rem .75rem;margin-top:.5rem;font:inherit;font-weight:600;background:var(--accent);color:#111}button.secondary{background:#2b2b2b;color:var(--text)}button.ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}button:disabled{opacity:.4}.cue{font-size:1.15rem;font-weight:650;margin:0 0 .35rem}.time{margin:0 0 .75rem;font-variant-numeric:tabular-nums;color:var(--muted)}audio{width:100%}.hidden{display:none}.tabs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.4rem;margin-top:.85rem}.tab{margin:0;padding:.7rem .5rem;background:#2b2b2b;color:var(--text);font-weight:600}.tab.active{background:var(--accent);color:#111}select{width:100%;margin:.35rem 0 1rem;padding:.75rem .6rem;border-radius:10px;border:1px solid var(--line);background:#111;color:var(--text);font:inherit}.select-label{display:block;font-size:.8rem;color:var(--muted)}#script-body h2{margin-top:1.15rem}#script-body ol{margin:0;padding-left:1.15rem;line-height:1.5}#script-body li+li{margin-top:.45rem}#script-body .ko{margin:0;color:var(--muted)}#script-body .en{margin:.15rem 0 0}#script-body .caption{margin:.15rem 0 0;font-size:.78rem;color:var(--muted)}.drills{list-style:decimal;padding-left:1.2rem}.dialogue{list-style:none;padding-left:0}.dialogue li{display:grid;grid-template-columns:1.4rem 1fr;gap:.45rem}.speaker{color:var(--muted);font-weight:700}.pattern-line .en{font-weight:650}.plain .en{margin:0}.progress-kicker{margin:0 0 .55rem;font-weight:650}.progress-bar{height:.45rem;background:#111;border-radius:999px;overflow:hidden;margin-bottom:.7rem}.progress-bar span{display:block;height:100%;background:var(--accent)}.session-flow{margin:0 0 .7rem;padding-left:1.2rem;line-height:1.5;color:var(--muted)}.session-flow li+li{margin-top:.3rem}#progress-body h2{margin-top:1.2rem}#progress-body h3{margin:1rem 0 .45rem;font-size:.82rem;font-weight:650;color:var(--muted)}.progress-list{list-style:none;margin:0;padding:0}.progress-list li+li{margin-top:.35rem}.progress-item{display:grid;grid-template-columns:2.1rem 1fr auto;gap:.55rem;align-items:center;width:100%;margin:0;padding:.7rem .65rem;text-align:left;background:#151515;color:var(--text);border:1px solid var(--line)}.progress-item.today{border-color:#6d6d6d;background:#222}.progress-item.done{opacity:1}.progress-item.todo{opacity:.72}.progress-order{font-variant-numeric:tabular-nums;color:var(--muted);font-weight:700}.progress-copy{display:grid;gap:.12rem;min-width:0}.progress-copy strong{font-size:.95rem}.progress-copy .meaning{margin:0;font-size:.8rem}.progress-badge{font-size:.72rem;color:var(--muted)}.install-card h2{margin-bottom:.35rem}.install-steps{margin:.7rem 0 0;color:var(--muted);line-height:1.5;font-size:.92rem}.install-steps strong{color:var(--text);font-weight:650}.install-howto{margin:.65rem 0 0;padding-left:1.2rem;color:var(--muted);line-height:1.5;font-size:.92rem}.install-howto li+li{margin-top:.28rem}.install-howto strong{color:var(--text);font-weight:650}#drive-view:has(#player-panel:not(.hidden)) #install-card,#drive-view:has(#review:not(.hidden)) #install-card{display:none}
