:root{--bg: #0f172a;--bg-2: #1e293b;--bg-3: #334155;--fg: #e2e8f0;--fg-muted: #94a3b8;--accent: #38bdf8;--danger: #f87171;--ok: #34d399;--radius: 12px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;font-size:16px;min-height:100vh}a{color:var(--accent);text-decoration:none}.layout{max-width:640px;margin:0 auto;padding:16px}.nav{display:flex;gap:12px;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid var(--bg-3);background:var(--bg-2);position:sticky;top:0;z-index:5}.nav a{color:var(--fg);font-weight:500;padding:6px 10px;border-radius:8px}.nav a.active{background:var(--bg-3);color:var(--accent)}button,.btn{background:var(--accent);color:#0f172a;border:0;padding:12px 16px;font-weight:600;border-radius:var(--radius);cursor:pointer}button:disabled{opacity:.6;cursor:progress}button.secondary{background:var(--bg-3);color:var(--fg)}button.danger{background:var(--danger);color:#0f172a}input{width:100%;background:var(--bg-2);color:var(--fg);border:1px solid var(--bg-3);padding:12px 14px;border-radius:var(--radius);font-size:16px}input:focus{outline:2px solid var(--accent)}.card{background:var(--bg-2);border:1px solid var(--bg-3);border-radius:var(--radius);padding:16px;margin-bottom:16px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.field label{font-size:14px;color:var(--fg-muted)}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0}.row+.row{border-top:1px solid var(--bg-3)}.muted{color:var(--fg-muted);font-size:14px}.error{color:var(--danger);margin-top:8px}.ok{color:var(--ok);margin-top:8px}h1{font-size:28px;margin:8px 0 16px}h2{font-size:18px;margin:0 0 12px;color:var(--fg-muted);text-transform:uppercase;letter-spacing:.04em}.segmented{display:flex;background:var(--bg-2);border:1px solid var(--bg-3);border-radius:var(--radius);overflow:hidden;margin-bottom:12px}.segmented button{background:transparent;color:var(--fg);flex:1;border-radius:0;padding:10px 12px;font-weight:500;border-right:1px solid var(--bg-3)}.segmented button:last-child{border-right:0}.segmented button.active{background:var(--bg-3);color:var(--accent)}.segmented button:disabled{opacity:.4;cursor:not-allowed}select{width:100%;background:var(--bg-2);color:var(--fg);border:1px solid var(--bg-3);padding:12px 14px;border-radius:var(--radius);font-size:16px}.badge{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;background:var(--bg-3);color:var(--fg-muted);padding:2px 8px;border-radius:999px;margin-left:8px}.row.tappable{cursor:pointer;transition:background .1s}.row.tappable:hover{background:var(--bg-3)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:50;padding:16px}.modal{background:var(--bg-2);border:1px solid var(--bg-3);border-radius:var(--radius);padding:20px;width:100%;max-width:420px}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px;flex-wrap:wrap}.invite-code{font-family:ui-monospace,SF Mono,monospace;font-size:20px;letter-spacing:.15em;background:var(--bg-3);padding:4px 10px;border-radius:8px;color:var(--accent)}
