/* The app in the Roundcraft "on air" palette: maps the original tokens to the dark brand and fixes hard-coded lights. */
:root { --paper: #0e0f12; --card: #181b21; --ink: #f2f1ec; --soft: #a9adb4; --faint: #6f747d; --line: #2a2f37; --blue: #8fa2ff; --blue-bg: rgba(108,149,255,0.16);
  --hi: rgba(255,176,32,0.16); --serif: 'Geist', system-ui, sans-serif; }
body { font-family: 'Geist', system-ui, sans-serif; background: var(--paper); color: var(--ink); }
.side { background: #121418; } .side a:hover, .ln:hover, .chap:hover, .item:hover, .tbtn:hover { background: #1f232a; } .side a.on { background: #1f232a; box-shadow: 0 0 0 1px var(--line); }
.side .brand, .brand { font: 700 18px 'Geist', sans-serif; letter-spacing: -0.03em; }
.brand::before { content: ''; display: inline-block; width: 11px; height: 11px; border-radius: 50%; background: #ff4d2e; box-shadow: 0 0 0 4px rgba(255,77,46,0.12); margin-right: 8px; vertical-align: 1px; }
.brand small { display: none; }
.top { background: rgba(14,15,18,0.9); } .top .up { background: #ff4d2e; color: #fff; } .top .av { background: #2a2f37; color: var(--ink); }
.btn { background: var(--ink); color: #0e0f12; border-radius: 10px; } .btn.ghost, .turn .ghost { background: none; color: var(--ink); border: 1px solid var(--line); }
.board-frame, .wb, .search input, .pcell, .chat textarea, .turn textarea, .capture input, .opts button, .lm-form input { background: #13151a; color: var(--ink); border-color: var(--line); }
.board-frame { background: #fff; } .wb textarea { background: repeating-linear-gradient(#13151a, #13151a 23px, #1b1e24 24px); color: var(--ink); }
.msg.mei { background: #1f232a; } .msg.you { background: rgba(108,149,255,0.18); } .msg.mei b { color: #ff7ab8; }
.ln.i b { color: #ff7ab8; } .ln.c b { color: #8fa2ff; } .chap.on, .ln.now { background: rgba(255,176,32,0.14); } mark { background: rgba(255,176,32,0.4); color: var(--ink); }
.note { background: rgba(255,176,32,0.12); color: #ffcf73; } .lvl div { background: #1f232a; } .lvl div.you { background: rgba(255,176,32,0.16); }
.turn { background: rgba(0,0,0,0.6); } .turn .box { background: #181b21; border: 1px solid var(--line); }
.dive, .glance, .transcript, .card, .mod, .ptable, .tier, .chat { background: var(--card); border-color: var(--line); }
.item.done .ic { background: #ffb020; border-color: #ffb020; color: #0e0f12; } .bar-p i, .pcell .dots i.on { background: #ffb020; } .bar-p, .pcell .dots i { background: #2a2f37; }
.filters button { background: var(--card); color: var(--soft); border-color: var(--line); } .filters button.on { background: var(--ink); color: #0e0f12; }
.tabs { background: #1f232a; } .tabs button.on { background: #2a2f37; color: var(--ink); }
.retro { background: #13151a; border: 1px solid var(--line); } .art .monolist { background: #13151a; border: 1px solid var(--line); }
.palette .box { background: #181b21; border: 1px solid var(--line); } .palette .res a:hover { background: #1f232a; }
.view h1, .card h2, .mod header h3, .tier h3, .turn h2, .art h2, .art h3 { font-family: 'Geist', sans-serif; letter-spacing: -0.03em; }
.chip { background: #13151a; border-color: var(--line); color: var(--soft); }
.opts button:hover, .opts button.on { border-color: var(--ink); }
.week b { color: var(--faint); } .week.now b { color: #ffb020; }
.next { border-color: #ffb020; }
/* your turn as a bottom sheet on phones */
@media (max-width: 700px) { .turn { align-items: end; padding: 0; } .turn .box { border-radius: 18px 18px 0 0; max-height: 88vh; padding: 18px 16px calc(18px + env(safe-area-inset-bottom, 0px)); } .turn h2 { font-size: 20px; } }
.choice { display: grid; gap: 8px; margin-top: 12px; }
.choice button { text-align: left; display: grid; grid-template-columns: 26px 1fr; gap: 10px; padding: 12px; border-radius: 12px; border: 1px solid var(--line); background: #13151a; color: var(--ink); font: 500 15px/1.35 'Geist', sans-serif; cursor: pointer; }
.choice button .k { font: 600 12px 'Geist Mono', monospace; color: var(--faint); padding-top: 2px; }
.choice.done button { opacity: 0.5; cursor: default; } .choice.done button.pick { opacity: 1; border-color: var(--ink); }
.choice .lvtag { display: none; } .choice.done .lvtag { display: inline-block; margin-top: 6px; }
.lvtag { font: 500 11px 'Geist Mono', monospace; padding: 3px 8px; border-radius: 999px; border: 1px solid var(--line); }
.lvtag.staff { color: #ffb020; border-color: rgba(255,176,32,0.5); } .lvtag.senior { color: #8fa2ff; border-color: rgba(108,149,255,0.5); } .lvtag.mid { color: #9aa0aa; }
.or-type { font-size: 13px; color: var(--faint); margin-top: 10px; cursor: pointer; text-decoration: underline; }
[hidden] { display: none !important; }
.player video { background: #fff; }
.choice.locked .lvtag { display: none !important; }
