:root { color-scheme: dark; }
* { box-sizing: border-box; }
body { margin:0; font-family: system-ui, sans-serif; background:#10131a; color:#eef2ff; }
.wrap { max-width:720px; margin:0 auto; padding:24px; }
.admin-wrap { max-width:1000px; }
.card { background:#181d27; border:1px solid #2a3242; border-radius:16px; padding:16px; margin-bottom:16px; }
h1,h2 { margin-top:0; }
.muted { color:#aab3c5; }
.hidden { display:none; }
.badge { display:inline-block; padding:8px 12px; border-radius:999px; font-weight:700; }
.badge-online { background:#123c22; color:#85f0a4; }
.badge-degraded { background:#4b3a10; color:#ffd66e; }
.badge-offline { background:#4c1616; color:#ff9a9a; }
pre { white-space:pre-wrap; font-family:inherit; }
.actions, .form-grid { display:grid; gap:12px; }
button, input, select, textarea { width:100%; padding:14px 16px; border-radius:12px; border:1px solid #34405a; background:#111722; color:white; font-size:16px; }
button { background:#2b63ff; border:none; cursor:pointer; }
button:disabled { opacity:.55; cursor:not-allowed; }
label { display:block; margin-bottom:8px; font-weight:600; }
textarea { resize:vertical; min-height:120px; }
.checkbox { display:flex; align-items:center; gap:12px; }
.checkbox input { width:auto; }
.support-messages, .support-thread-messages { display:grid; gap:10px; margin:12px 0; }
.support-messages { max-height:320px; overflow:auto; }
.support-bubble { padding:12px; border-radius:14px; border:1px solid #2a3242; }
.support-bubble-user { background:#172032; }
.support-bubble-admin { background:#1a2d1f; }
.support-role { font-size:12px; color:#aab3c5; margin-bottom:6px; }
.support-admin-list { display:grid; gap:16px; }
.support-thread { border:1px solid #2a3242; border-radius:14px; padding:14px; }
.support-thread-header { display:grid; gap:4px; margin-bottom:10px; }
.support-reply-form { display:grid; gap:10px; margin-top:12px; }
