:root{color-scheme:light;--paper:#f5f6f9;--panel:#ffffff;--sunk:#eceff5;--grid:rgba(14,27,64,.045);--rule:#e2e6ee;--rule-strong:#cdd3df;--ink:#0e1b40;--ink-2:#3d4a6b;--ink-3:#5a6582;--accent:#0a7d5e;--accent-soft:#e3f5ee;--on-accent:#ffffff;--bad:#b42318;--bad-soft:#fdecea;--off:#eef1f5;--shadow:0 1px 0 rgba(14,27,64,.04),0 6px 18px -10px rgba(14,27,64,.18);--display:"Outfit","Inter",ui-sans-serif,system-ui,sans-serif;--prose:"Inter",ui-sans-serif,system-ui,sans-serif}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--paper:#0a1022;--panel:#0e1630;--sunk:#070c1a;--grid:rgba(160,180,230,.05);--rule:#1d2a4d;--rule-strong:#2a3a66;--ink:#e8ecf6;--ink-2:#b2bcd6;--ink-3:#8c97b5;--accent:#20c997;--accent-soft:#0c2b23;--on-accent:#04140e;--bad:#ff8a80;--bad-soft:#3a1714;--off:#1a2443;--shadow:0 1px 0 rgba(0,0,0,.3),0 10px 24px -12px rgba(0,0,0,.6)}}:root[data-theme=dark]{color-scheme:dark;--paper:#0a1022;--panel:#0e1630;--sunk:#070c1a;--grid:rgba(160,180,230,.05);--rule:#1d2a4d;--rule-strong:#2a3a66;--ink:#e8ecf6;--ink-2:#b2bcd6;--ink-3:#8c97b5;--accent:#20c997;--accent-soft:#0c2b23;--on-accent:#04140e;--bad:#ff8a80;--bad-soft:#3a1714;--off:#1a2443;--shadow:0 1px 0 rgba(0,0,0,.3),0 10px 24px -12px rgba(0,0,0,.6)}*{box-sizing:border-box}html,body{margin:0}body{background-color:var(--paper);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:24px 24px;background-attachment:fixed;color:var(--ink);font-family:var(--prose);font-size:15px;line-height:1.5}button,input{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1,h2{font-family:var(--display);margin:0;text-wrap:balance}h1{font-size:24px;font-weight:600}h2{font-size:18px;font-weight:600}.small{font-size:13px;color:var(--ink-3)}.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:12px;background:var(--panel);border-bottom:1px solid var(--rule);padding:10px 16px}.wordmark{font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:-.01em;color:var(--ink)}.wordmark i{font-style:normal;color:var(--accent)}.top .title{font-family:var(--display);font-weight:500;color:var(--ink-2);border-left:1px solid var(--rule-strong);padding-left:12px}.grow{flex:1}.btn{border:1px solid var(--rule-strong);background:var(--panel);border-radius:6px;padding:6px 12px;font-size:14px;white-space:nowrap;text-decoration:none;color:var(--ink);display:inline-flex;align-items:center;gap:6px}.btn:hover{border-color:var(--accent)}.btn.pri{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}.btn[aria-disabled=true]{opacity:.5;pointer-events:none}.page{max-width:1240px;margin:0 auto;padding:24px 16px 48px}section.group{margin-bottom:32px}section.group header{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:12px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.card{background:var(--panel);border:1px solid var(--rule);border-radius:10px;box-shadow:var(--shadow);padding:16px;display:flex;flex-direction:column;gap:10px;min-width:0}.card.off{background:var(--sunk);box-shadow:none}.card .name{font-family:var(--display);font-size:18px;font-weight:600}.card .host{font-size:12.5px;color:var(--ink-3);overflow-wrap:anywhere}.card dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:4px 10px;font-size:13.5px}.card dt{color:var(--ink-3)}.card dd{margin:0;color:var(--ink-2)}.card .foot{margin-top:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tag{font-size:12px;border-radius:999px;padding:2px 9px;background:var(--accent-soft);color:var(--accent);font-weight:600}.tag.plain{background:var(--off);color:var(--ink-2)}.login{max-width:380px;margin:12vh auto 0;padding:0 16px}.login form{background:var(--panel);border:1px solid var(--rule);border-radius:10px;box-shadow:var(--shadow);padding:22px;display:grid;gap:14px}label{display:grid;gap:4px;font-size:13.5px;color:var(--ink-2)}input{border:1px solid var(--rule-strong);border-radius:6px;padding:8px 10px;background:var(--panel);width:100%}.err{background:var(--bad-soft);color:var(--bad);border-radius:6px;padding:8px 10px;font-size:14px}@media(max-width:520px){.top .title,.top .who{display:none}.cards{grid-template-columns:minmax(0,1fr)}}
