:root{--bg:#f5f6f0;--surface:#fff;--surface-2:#f0f2ea;--ink:#151912;--ink-2:#485043;--ink-3:#6f7866;--line:#e0e4d6;--accent:#a3e635;--accent-hover:#93d42a;--accent-ink:#1a2e05;--accent-text:#3f6212;--danger:#b4320a;--danger-bg:#fff1eb;--ok:#3f6212;--focus:#65a30d;--radius:12px;--shadow:0 1px 2px #141e0a0a, 0 12px 32px #141e0a12;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#0c0e0a;--surface:#14170f;--surface-2:#1b1f15;--ink:#eef2e6;--ink-2:#b6beaa;--ink-3:#8a9380;--line:#2a3022;--accent-text:#bef264;--danger:#ff9a6b;--danger-bg:#2a1710;--ok:#bef264;--focus:#a3e635;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font:16px/1.5 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif}a{color:var(--accent-text);font-weight:600;text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.auth{place-items:center;min-height:100dvh;padding:32px 16px;display:grid}.card{background:var(--surface);border:1px solid var(--line);width:min(100%,420px);box-shadow:var(--shadow);border-radius:20px;padding:32px}@media (max-width:480px){.card{padding:24px 20px}}.brand{color:var(--ink);letter-spacing:-.03em;align-items:center;gap:10px;margin-bottom:28px;font-size:22px;font-weight:800;display:inline-flex}.brand:hover{text-decoration:none}.brand svg{width:34px;height:34px}.title{letter-spacing:-.02em;margin:0 0 6px;font-size:26px;line-height:1.2}.subtitle{color:var(--ink-2);margin:0 0 24px}.stack{gap:16px;display:grid}.footer-link{text-align:center;color:var(--ink-2);margin:20px 0 0;font-size:15px}.step{color:var(--ink-3);letter-spacing:.02em;margin-bottom:10px;font-size:13px;font-weight:600;display:block}.field{gap:6px;display:grid}.field label,.field-label{font-size:14px;font-weight:600}.field .optional{color:var(--ink-3);font-weight:400}.input-wrap{align-items:center;display:flex;position:relative}.input,textarea.input{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);width:100%;min-height:46px;color:var(--ink);font:inherit;padding:11px 14px;transition:border-color .15s,background .15s}textarea.input{resize:vertical;min-height:88px}.input:hover{border-color:var(--ink-3)}.input:focus{border-color:var(--focus);background:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb, var(--focus) 25%, transparent);outline:none}.input[aria-invalid=true]{border-color:var(--danger)}.input-prefix{color:var(--ink-3);pointer-events:none;position:absolute;left:14px}.input.has-prefix{padding-left:30px}.input.has-toggle{padding-right:48px}.toggle{width:40px;height:38px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;display:grid;position:absolute;right:4px}.toggle:hover{color:var(--ink);background:var(--line)}.hint{color:var(--ink-3);font-size:13px}.field-error{color:var(--danger);font-size:13px}.field-ok{color:var(--ok);font-size:13px}.counter{color:var(--ink-3);justify-self:end;font-size:12px}.btn{border-radius:var(--radius);min-height:46px;font:inherit;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:700;transition:background .15s,border-color .15s,opacity .15s;display:inline-flex}.btn-primary{background:var(--accent);width:100%;color:var(--accent-ink)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--surface-2);border-color:var(--line);color:var(--ink)}.btn-secondary:hover:not(:disabled){border-color:var(--ink-3)}.btn-danger{border-color:var(--line);color:var(--danger);background:0 0}.btn-link{min-height:0;color:var(--accent-text);background:0 0;border:0;padding:0;font-weight:600}.btn-link:disabled{color:var(--ink-3);cursor:default}.btn:disabled{opacity:.6;cursor:default}.btn-small{border-radius:10px;min-height:34px;padding:0 12px;font-size:14px}.spinner{border:2.5px solid;border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2s}}.alert{border-radius:var(--radius);background:var(--danger-bg);color:var(--danger);padding:12px 14px;font-size:14px}.privacy-note{border-radius:var(--radius);background:var(--surface-2);color:var(--ink-2);gap:10px;margin-top:20px;padding:12px 14px;font-size:13px;display:flex}.privacy-note svg{width:18px;height:18px;color:var(--accent-text);flex:none;margin-top:1px}.privacy-note details summary{cursor:pointer;color:var(--ink);font-weight:600}.privacy-note details p{margin:8px 0 0}.meter{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.meter span{background:var(--line);border-radius:2px;height:4px;transition:background .2s}.meter[data-score="1"] span:nth-child(-n+1),.meter[data-score="2"] span:nth-child(-n+2){background:var(--danger)}.meter[data-score="3"] span:nth-child(-n+3),.meter[data-score="4"] span:nth-child(-n+4){background:var(--accent)}.code{grid-template-columns:repeat(6,1fr);gap:8px;display:grid;position:relative}.code input{opacity:0;letter-spacing:40px;color:#0000;caret-color:#0000;border:0;width:100%;height:100%;font-size:16px;position:absolute;inset:0}.code .cell{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);place-items:center;height:58px;font:700 26px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:grid}.code .cell.active{border-color:var(--focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--focus) 25%, transparent)}.code[data-invalid=true] .cell{border-color:var(--danger)}@media (max-width:380px){.code{gap:6px}.code .cell{height:50px;font-size:22px}}.avatar{background:var(--accent);color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar-picker{align-items:center;gap:16px;display:flex}.avatar-editor{border:1px dashed var(--line);border-radius:16px;justify-items:center;gap:12px;padding:16px;display:grid}.avatar-viewport{background:var(--surface-2);cursor:grab;touch-action:none;border-radius:50%;width:180px;height:180px;position:relative;overflow:hidden}.avatar-viewport:active{cursor:grabbing}.avatar-viewport canvas{width:100%;height:100%;display:block}.avatar-editor input[type=range]{width:180px;accent-color:var(--focus)}.row{flex-wrap:wrap;gap:8px;display:flex}.app{min-height:100dvh}.topbar{justify-content:space-between;align-items:center;gap:12px;max-width:720px;margin:0 auto;padding:16px;display:flex}.topbar .brand{margin:0}.main{gap:16px;max-width:720px;margin:0 auto;padding:8px 16px 48px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:24px}.panel h2{margin:0 0 4px;font-size:18px}.panel .muted{color:var(--ink-2);margin:0;font-size:14px}.profile{align-items:center;gap:18px;display:flex}.profile .name{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:800}.profile .handle{color:var(--ink-3);margin:0}.profile .bio{white-space:pre-line;overflow-wrap:anywhere;margin:8px 0 0}.status{color:var(--ink-2);align-items:center;gap:8px;font-size:14px;display:inline-flex}.status .dot{background:var(--ink-3);border-radius:50%;width:9px;height:9px}.status[data-state=online] .dot{background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 30%, transparent)}.status[data-state=offline] .dot{background:var(--danger)}.sessions{gap:8px;margin:16px 0 0;padding:0;list-style:none;display:grid}.sessions li{border-radius:var(--radius);background:var(--surface-2);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.sessions .device{font-weight:600}.sessions .meta{color:var(--ink-3);font-size:13px}.badge{background:var(--accent);color:var(--accent-ink);border-radius:999px;margin-left:6px;padding:1px 8px;font-size:12px;font-weight:700;display:inline-block}.splash{min-height:100dvh;color:var(--ink-3);place-items:center;display:grid}.btn:hover{text-decoration:none}.footer-link.flush{margin:0}.field-aside{justify-self:end;margin-top:-8px;font-size:14px}.notice{border-radius:var(--radius);background:color-mix(in srgb, var(--accent) 22%, var(--surface));color:var(--ink);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:14px;display:flex}
