:root{--night:#070b1f;--ink:#eef1ff;--mute:#9aa4d6;--gold:#f2c14e;--royal:#2f5bff;--line:rgba(150,170,255,.18);color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:var(--night);background-image:radial-gradient(900px 500px at 85% -10%,rgba(47,91,255,.35),transparent 60%),radial-gradient(700px 420px at -10% 20%,rgba(255,61,139,.18),transparent 60%);color:var(--ink);font:15px/1.5 system-ui,-apple-system,"Segoe UI",Manrope,sans-serif;padding:0 max(16px,env(safe-area-inset-left)) 0 max(16px,env(safe-area-inset-right))}
.auth{display:grid;place-items:center}
.authbox{width:min(400px,100%);padding:28px;border-radius:20px;background:rgba(22,32,82,.6);border:1px solid var(--line);display:grid;gap:14px}
.authbox h1,.homebar h1{margin:0;font-size:22px}
form{display:grid;gap:12px}
label{display:grid;gap:6px;font-size:13px;font-weight:700;color:var(--mute)}
input{font:inherit;color:var(--ink);background:rgba(5,9,28,.6);border:1px solid var(--line);border-radius:11px;padding:11px 12px}
button,.btn{font:inherit;font-weight:800;border:0;border-radius:12px;padding:12px 16px;background:linear-gradient(135deg,var(--gold),#ffda85);color:#1b1300;cursor:pointer;text-align:center;text-decoration:none}
.err{color:#f87171;margin:0}.ok{color:#34d399;margin:0}
.homebar{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:20px 0;border-bottom:1px solid var(--line)}
.homebar span{margin-left:auto;color:var(--mute)}.homebar a{color:var(--gold)}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;padding:24px 0}
.tile{display:grid;gap:6px;padding:20px;border-radius:18px;background:rgba(22,32,82,.55);border:1px solid var(--line);color:var(--ink);text-decoration:none;box-shadow:inset 0 3px 0 var(--c)}
.tile:hover{border-color:var(--c)}
.tile .ic{font-size:28px}.tile small{color:var(--mute)}
.sub{color:var(--mute);margin:0;font-size:13.5px}
.settings{display:grid;gap:18px;padding:22px 0 40px;max-width:640px}
.settings section{display:grid;gap:10px}
.settings h2{margin:0;font-size:17px}
.settings .card{display:grid;gap:10px;padding:14px;border-radius:14px;background:rgba(22,32,82,.55);border:1px solid var(--line)}
.settings small{color:var(--mute)}
.settings label a{color:var(--gold);font-weight:600}
.settings .chk{display:flex;flex-direction:row;align-items:center;gap:8px;font-weight:600}
.settings code{font-size:12px;color:var(--gold);overflow-wrap:anywhere}
