:root{color-scheme:dark;--bg: #161410;--bg-elev: #211c16;--ink: #f4eee4;--muted: #b7aa98;--line: #3a3228;--accent: #e2a35c;--danger: #e07a5f;--ok: #8fb89a;--font: "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;--display: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);line-height:1.5}button,input{font:inherit}a{color:var(--accent)}.page{max-width:42rem;margin:0 auto;padding:3rem 1.25rem 4rem}.wordmark{font-family:var(--display);font-size:2.4rem;letter-spacing:.02em;margin:0}.tagline{color:var(--muted);margin:.35rem 0 0}.note{margin:1.5rem 0 2rem;color:var(--muted);font-size:.95rem}.card{background:var(--bg-elev);border:1px solid var(--line);border-radius:12px;padding:1.25rem 1.35rem;margin-bottom:1rem}.card h2{margin:0 0 .75rem;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600}.status{display:inline-block;font-size:.85rem;padding:.15rem .5rem;border-radius:999px;border:1px solid var(--line)}.status.ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 45%,var(--line))}.status.err{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,var(--line))}.genres{display:flex;flex-wrap:wrap;gap:.4rem;margin:.85rem 0 0;padding:0;list-style:none}.genres li{border:1px solid var(--line);border-radius:999px;padding:.15rem .65rem;font-size:.85rem}.error,.hint{margin:.75rem 0 0;font-size:.9rem}.error{color:var(--danger)}.hint{color:var(--muted)}form{display:grid;gap:.7rem;margin-top:.5rem}label{display:grid;gap:.3rem;font-size:.85rem;color:var(--muted)}input{background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:.55rem .7rem}input:focus{outline:2px solid color-mix(in srgb,var(--accent) 50%,transparent);border-color:var(--accent)}.actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}button{background:var(--accent);color:#1a140c;border:0;border-radius:8px;padding:.55rem .9rem;font-weight:600;cursor:pointer}button.secondary{background:transparent;color:var(--ink);border:1px solid var(--line)}button:disabled{opacity:.6;cursor:not-allowed}.session{margin:0;font-size:.95rem}.session dt{color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;margin-top:.7rem}.session dd{margin:.1rem 0 0;word-break:break-all}.toggle{background:none;border:0;color:var(--accent);padding:0;font-weight:500;cursor:pointer}
