:root{--bg:#14110f;--surface:#1f1a16;--surface-2:#2a231d;--border:#3b3128;--text:#ece3d6;--muted:#a8998a;--accent:#d9a441;--accent-text:#1a1206;--danger:#c2513f;--success:#6fae5c;--radius:10px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}h1,h2,h3{margin:0 0 .5rem;line-height:1.25}h1{font-size:1.5rem}h2{font-size:1.2rem}h3{font-size:1.05rem}a{color:var(--accent)}code{background:var(--surface-2);border-radius:4px;padding:.15em .4em;font:.95em ui-monospace,SFMono-Regular,Menlo,monospace}.layout{min-height:100vh}.topbar{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.brand{color:var(--text);letter-spacing:.02em;font-weight:700;text-decoration:none}.env-badge{background:var(--danger);color:#fff;text-transform:uppercase;vertical-align:middle;border-radius:4px;margin-left:.4rem;padding:.1rem .45rem;font-size:.7rem}.footer{text-align:center;padding:0 1rem 1.5rem}.user{align-items:center;gap:.75rem;min-width:0;display:flex}.user .muted{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.content{max-width:820px;margin:0 auto;padding:1.5rem 1rem 3rem}.dashboard>*+*{margin-top:1.5rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.card+.card{margin-top:.75rem}.auth-card{max-width:400px;margin:3rem auto 0}.form{gap:.9rem;display:grid}.form-row>label,.form>label{color:var(--muted);gap:.3rem;font-size:.9rem;display:grid}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.9rem;display:grid}.form-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.9rem 1.5rem;display:flex}input:not([type=checkbox]):not([type=radio]){border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);font:inherit;border-radius:6px;padding:.6rem .7rem}input:focus{outline:2px solid var(--accent);outline-offset:1px}input:disabled{opacity:.7}.btn{border:1px solid var(--border);background:var(--surface-2);color:var(--text);font:inherit;cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:.4rem;padding:.6rem 1rem;font-weight:600;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.btn-danger{border-color:var(--danger);color:var(--danger)}.btn-danger,.btn-ghost{background:0 0}.btn-small{padding:.2rem .6rem;font-size:.8rem}.auth-links{justify-content:space-between;gap:1rem;margin-top:1rem;font-size:.9rem;display:flex}.muted{color:var(--muted)}.small{font-size:.875rem}.error{color:#f08b79;margin:0}.notice{color:var(--success);margin:0}.section-header{flex-wrap:wrap;align-items:baseline;margin-bottom:.75rem}.section-header,.server-header{justify-content:space-between;gap:1rem;display:flex}.server-header{align-items:flex-start}.server p{margin:.25rem 0}.badge{white-space:nowrap;background:var(--surface-2);color:var(--muted);border-radius:999px;align-items:center;gap:.4rem;padding:.2rem .65rem;font-size:.8rem;font-weight:600;display:inline-flex}.status-ready .badge{color:var(--success);background:#6fae5c2e}.status-booting .badge,.status-pending .badge{color:var(--accent);background:#d9a44126}.status-failed .badge{color:#f08b79;background:#c2513f2e}.status-terminated{opacity:.7}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:.75rem;height:.75rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(1turn)}}.connection{background:var(--surface-2);border-radius:8px;gap:.6rem;margin:1rem 0 0;padding:1rem;display:grid}.connection div{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;display:flex}.connection dt{color:var(--muted);flex:0 0 9rem;font-size:.9rem}.connection dd{word-break:break-all;align-items:center;gap:.5rem;min-width:0;margin:0;display:flex}.server-actions{justify-content:flex-end;margin-top:1rem;display:flex}@media (width<=480px){.connection div{row-gap:.25rem}.connection dt{flex-basis:100%}.server-header{flex-direction:column}.topbar .muted{display:none}}.tag{border:1px solid var(--accent);color:var(--accent);border-radius:4px;margin-right:.4rem;padding:0 .4rem;font-size:.75rem;font-weight:600;display:inline-block}.join-code{letter-spacing:.15em;font-size:1.15rem}
