:root{--bg:#0b0e11;--card:#151a20;--line:#262d36;--text:#e6e9ed;--muted:#8b95a1;--accent:#f0b90b;--danger:#f6465d;--ok:#2ebd85}@media (prefers-color-scheme:light){:root{--bg:#f4f5f7;--card:#fff;--line:#d9dde3;--text:#14181d;--muted:#5d6671;--accent:#b78900;--danger:#c9283d;--ok:#1a8a5f}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);min-height:100dvh;color:var(--text);place-items:center;padding:16px;font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;width:100%;max-width:400px;padding:28px 24px}h1{margin:0 0 4px;font-size:1.5rem}.sub{color:var(--muted);margin:0 0 20px;font-size:.95rem}.form{gap:14px;display:grid}.field{color:var(--muted);gap:6px;font-size:.9rem;display:grid}input{width:100%;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:12px}input:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button,.btn{width:100%;font:inherit;text-align:center;color:#111;background:var(--accent);cursor:pointer;border:0;border-radius:8px;padding:12px;font-weight:600;text-decoration:none;display:block}button:disabled{opacity:.6;cursor:wait}button.secondary,.btn.secondary{color:var(--text);border:1px solid var(--line);background:0 0}.msg{border-radius:8px;margin:0;padding:10px 12px;font-size:.9rem}.msg-error{color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, transparent)}.msg-ok{color:var(--ok);background:color-mix(in srgb, var(--ok) 12%, transparent)}.links{justify-content:space-between;gap:12px;margin-top:18px;font-size:.9rem;display:flex}a{color:var(--accent)}.divider{text-align:center;color:var(--muted);margin:18px 0;font-size:.85rem}.doc{max-width:640px}.doc h2{margin:22px 0 6px;font-size:1.05rem}.doc p,.doc li{font-size:.95rem}.doc ul{padding-left:20px}.legal{text-align:center;color:var(--muted);margin-top:14px;font-size:.8rem}body:has(.dash){place-items:start center}.dash{width:100%;max-width:860px}.dash-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.dash-head .sub{overflow-wrap:anywhere;margin:0}.dash-logout{flex:none;width:110px}.bot-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.bot{flex-direction:column;gap:8px;max-width:none;display:flex}.bot h2{margin:0;font-size:1.15rem}.bot .sub{margin:0}.bot-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.bot .btn,.bot button{margin-top:auto}.meta{color:var(--muted);margin:0;font-size:.85rem}.badge{white-space:nowrap;border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:600}.badge-active{color:var(--ok);border-color:var(--ok)}.badge-expired{color:var(--danger);border-color:var(--danger)}select{width:100%;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:12px}button.danger{background:var(--danger);color:#fff}.rules{color:var(--muted);margin:0 0 16px;padding-left:20px;font-size:.9rem}.rules code{color:var(--text)}.activity{max-width:none;margin-top:16px}.activity h2{margin:0 0 8px;font-size:1rem}.activity ul{margin:0;padding:0;font-size:.85rem;list-style:none}.activity li{border-top:1px solid var(--line);justify-content:space-between;gap:12px;padding:6px 0;display:flex}.activity time{color:var(--muted);white-space:nowrap}.profiles{border:0;gap:8px;margin:0;padding:0;display:grid}.profiles legend{color:var(--muted);margin-bottom:6px;padding:0;font-size:.9rem}.profile{border:1px solid var(--line);cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;display:flex}.profile.on{border-color:var(--accent)}.profile input{width:auto}.profile span{display:grid}.profile small{color:var(--muted)}input[type=range]{accent-color:var(--accent);padding:0}.settings{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.settings h2{margin:0 0 10px;font-size:1.05rem}.check{align-items:center;gap:10px;font-size:.9rem;display:flex}.check input{width:auto}.money{border:0;border-top:1px solid var(--line);gap:10px;margin:0;padding:14px 0 0;display:grid}.money legend{padding:0;font-size:1rem;font-weight:600}
