:root{--bg: #0d1012;--surface: #161a1e;--surface-2: #20262c;--border: rgba(255, 255, 255, .12);--text: #e8eaed;--muted: #9aa3ad;--accent: #2f81f7;--ok: #3ddc84;--danger: #ff5c5c;color-scheme:dark}html,body{margin:0;height:100%;background:var(--bg);color:var(--text);font:15px/1.45 system-ui,-apple-system,Segoe UI,sans-serif;overscroll-behavior:none}.page{max-width:720px;margin:0 auto;padding:max(16px,env(safe-area-inset-top)) 16px 32px}.page.narrow{max-width:360px;padding-top:12vh}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:12px}.card h2{font-size:16px;margin:0 0 10px}form.card:not(.row){display:grid;gap:12px}label{display:grid;gap:4px;font-size:13px;color:var(--muted)}input,textarea,button,.button{font:inherit;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:9px 12px;min-height:40px;box-sizing:border-box}input{font-size:16px}button,.button{cursor:pointer;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}button:disabled{opacity:.6;cursor:default}.primary{background:var(--accent);border-color:var(--accent);color:#fff}.danger{color:var(--danger)}button.link{background:none;border:none;color:var(--muted);font-weight:500}.row{display:flex;gap:8px;flex-wrap:wrap}.row input{flex:1;min-width:0}.spacer{flex:1}.error{color:var(--danger);margin:0 0 12px}.notice{color:var(--ok);margin:0 0 12px}
