:root { color-scheme: dark; }
* { box-sizing: border-box; }
body { margin: 0; font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; background:#0b0b0f; color:#e8e8f0; }
.container { max-width: 980px; margin: 24px auto; padding: 0 16px; }
h1,h2 { margin: 8px 0 12px; }
nav a { margin-right: 12px; color:#9ad1ff; text-decoration:none; }
nav a:hover { text-decoration:underline; }
.grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; }
label { display:flex; flex-direction:column; gap:6px; font-weight:600; }
input, select, textarea, button {
  padding:10px; border-radius:8px; border:1px solid #2c2f3a; background:#131620; color:#e8e8f0;
}
button { background:#4ea1ff; border:0; font-weight:700; cursor:pointer; transition: filter 0.2s ease; width: 200px; height: 80px; }
button:hover { filter: brightness(1.1); }
fieldset { border:1px solid #2c2f3a; border-radius:10px; padding:12px; margin:12px 0; }
.flash-wrap { margin: 12px 0; }
.flash { padding:10px; border-radius:8px; margin-bottom:8px; background:#1f2533; }
.flash.error { background:#3a1f25; }
table { width:100%; border-collapse: collapse; margin-top: 12px; }
th, td { padding:10px; border-bottom:1px solid #2c2f3a; text-align:left; }
.muted { color:#aab3c5; }
.btn { display:inline-block; padding:10px 16px; border-radius:8px; background:#4ea1ff; color:#0b0b0f; font-weight:700; text-decoration:none; }
.btn:hover { filter:brightness(1.1); }
.link-button { display:inline-block; padding:10px 18px; border-radius:8px; background:#4ea1ff; color:#0b0b0f; font-weight:700; text-decoration:none; }
.link-button:hover { filter:brightness(1.1); }
@media (max-width: 800px) { .grid { grid-template-columns: 1fr; } }
