:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;--fg:#e7e9ef;--fg-soft:#b5bcc8;--muted:#949cab;--faint:#69717f;--bg:#0c0e12;--surface:#15181f;--surface-2:#1c2029;--border:#272c37;--border-strong:#363d4b;--accent:#7e9bff;--accent-weak:#1b2133;--on-accent:#0c0e12;--ink:#edeff3;--on-ink:#15181f;--ok:#41cf85;--ok-weak:#122a1d;--bad:#f0705f;--bad-weak:#2e1613;--warn-bg:#2a2412;--warn-fg:#ecd49a;--warn-border:#463c1c;--ring:#7e9bff66;--shadow-sm:0 1px 2px #00000059;--shadow:0 1px 3px #0006, 0 10px 30px -20px #000c;--shadow-lg:0 24px 60px -28px #000c;--radius:12px;--radius-sm:8px;--c-edit:#d2a24d;--c-delete:#ef6f60;--c-typing:#6e92f2;--c-online:#45cf85;--c-offline:#8a93a3;--c-presence:#9a8bf2;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box}body{color:var(--fg);background:var(--bg);margin:0}h1{letter-spacing:-.01em;margin:0;font-size:1.1rem;font-weight:700}h2{text-transform:uppercase;letter-spacing:.06em;color:var(--faint);margin:0;font-size:.72rem;font-weight:600}h3{letter-spacing:-.005em;margin:0;font-size:.95rem;font-weight:650}h4{color:var(--muted);margin:.9rem 0 .4rem;font-size:.8rem;font-weight:650}.muted{color:var(--muted)}.small{font-size:.82rem}.error{color:var(--bad);font-weight:600}.banner{background:var(--bad-weak);border:1px solid color-mix(in srgb, var(--bad) 45%, transparent);color:color-mix(in srgb, var(--bad) 85%, var(--fg));border-radius:var(--radius-sm);align-items:center;gap:.5rem;padding:.55rem .75rem;font-size:.88rem;font-weight:550;display:flex}.banner:before{content:"";background:currentColor;flex-shrink:0;width:1.05rem;height:1.05rem;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 2a8 8 0 100 16 8 8 0 000-16zm0 4a1 1 0 011 1v4a1 1 0 01-2 0V7a1 1 0 011-1zm0 8.5a1.1 1.1 0 110 2.2 1.1 1.1 0 010-2.2z'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 2a8 8 0 100 16 8 8 0 000-16zm0 4a1 1 0 011 1v4a1 1 0 01-2 0V7a1 1 0 011-1zm0 8.5a1.1 1.1 0 110 2.2 1.1 1.1 0 010-2.2z'/%3E%3C/svg%3E") 50%/contain no-repeat}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}button{font:inherit;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--fg);cursor:pointer;padding:.5rem .85rem;font-weight:550;transition:background .13s,border-color .13s,color .13s,box-shadow .13s}button:hover{background:var(--surface-2)}button.primary{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}button.primary:hover{background:color-mix(in srgb, var(--ink) 88%, var(--fg))}button.block{width:100%}button:disabled{opacity:.5;cursor:not-allowed}.ghost-button{color:var(--muted);border-radius:var(--radius-sm);background:0 0;border:none;padding:.3rem .5rem;font-weight:550}.ghost-button:hover{background:var(--surface-2);color:var(--fg)}.ghost-button.danger{color:var(--bad)}.ghost-button.danger:hover{background:var(--bad-weak)}.link-button{color:var(--accent);background:0 0;border:none;padding:.3rem 0;font-weight:600}.link-button:hover{background:0 0;text-decoration:underline}:focus-visible{box-shadow:0 0 0 3px var(--ring);border-radius:var(--radius-sm);outline:none}input,select{font:inherit;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg);padding:.5rem .7rem}input::placeholder{color:var(--faint)}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring);outline:none}form label{font-size:.88rem;font-weight:550;display:block}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.login-screen{place-items:center;min-height:100dvh;padding:1.5rem;display:grid}.login-card{width:min(24rem,100%);box-shadow:var(--shadow-lg);border-radius:14px;padding:2rem 1.75rem 1.6rem;animation:.35s cubic-bezier(.22,1,.36,1) both login-rise}@keyframes login-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.login-mark{width:2.75rem;height:2.75rem;color:var(--on-accent);background:var(--accent);border-radius:12px;place-items:center;margin-bottom:1.1rem;display:grid}.login-card h1{letter-spacing:-.02em;font-size:1.35rem}.login-sub{color:var(--muted);margin:.3rem 0 1.5rem;font-size:.9rem}.login-field{margin-bottom:1rem}.login-field>label{color:var(--fg-soft);margin-bottom:.35rem}.input-wrap{align-items:center;display:flex;position:relative}.input-wrap input{width:100%}.input-wrap input.has-trailing{padding-right:3.4rem}.reveal-button{color:var(--muted);border-radius:var(--radius-sm);background:0 0;border:none;padding:.3rem .5rem;font-size:.8rem;font-weight:600;position:absolute;right:.3rem}.reveal-button:hover{background:var(--surface-2);color:var(--fg)}.login-field input#code{letter-spacing:.3em;font-variant-numeric:tabular-nums;text-align:center;font-size:1.05rem}.login-field input#code::placeholder{letter-spacing:normal;font-size:.9rem}.login-card .banner{margin-bottom:1rem}.login-card .primary{margin-top:.25rem;padding:.6rem .9rem;font-weight:600}.login-foot{color:var(--faint);justify-content:center;align-items:center;gap:.4rem;margin:1.25rem 0 0;font-size:.78rem;display:flex}
