:root{--bg: #010a13;--bg-2: #0a1428;--panel: #0f1d33;--panel-2: #142540;--line: #1e3a5c;--line-soft: #19304d;--gold: #c8aa6e;--gold-2: #f0e6d2;--gold-dim: #785a28;--text: #e8e2d4;--muted: #8a96a8;--blue: #0ac8b9;--blue-side: #2a7bd4;--red-side: #d13f3f;--green: #3ec774;--amber: #f0b232;--danger: #e2524b;--radius: 10px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}body{background:radial-gradient(ellipse at top,#0c2342 0%,var(--bg) 60%) fixed;min-height:100vh}a{color:var(--gold)}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}input,select,textarea{font:inherit;color:var(--text);background:var(--bg-2);border:1px solid var(--line);border-radius:6px;padding:10px;min-height:44px;width:100%}input[type=checkbox]{width:22px;min-height:22px;accent-color:var(--gold)}h1,h2,h3{margin:0;font-weight:700;letter-spacing:.02em}h2{font-size:1.05rem;color:var(--gold-2);text-transform:uppercase;letter-spacing:.08em}h3{font-size:.95rem;color:var(--gold)}.btn{min-height:44px;padding:10px 16px;border-radius:6px;border:1px solid var(--gold-dim);background:linear-gradient(180deg,#1e2328,#10151b);color:var(--gold-2);font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-size:.85rem}.btn:active{transform:translateY(1px)}.btn.primary{border-color:var(--gold);background:linear-gradient(180deg,#1c4d5c,#0b2b38);color:#cdfafa}.btn.danger{border-color:var(--danger);color:#ffd6d4}.btn.small{min-height:36px;padding:6px 10px;font-size:.75rem}.btn:disabled{opacity:.45;cursor:default}.panel{background:linear-gradient(180deg,var(--panel),var(--bg-2));border:1px solid var(--line);border-radius:var(--radius);padding:14px}.muted{color:var(--muted)}.small{font-size:.8rem}.row{display:flex;gap:8px;align-items:center}.grow{flex:1}.stack{display:flex;flex-direction:column;gap:12px}.center{text-align:center}.spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--line);border-top-color:var(--gold);border-radius:50%;animation:spin .8s linear infinite;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}
