:root {
  color-scheme: dark;
  font-family: system-ui, sans-serif;
  background: #101218;
  color: #f0eff4;
  --panel: #1a1c26;
  --line: #353849;
  --muted: #b3b6c7;
  --accent: #ded3ac;
}
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: radial-gradient(ellipse at 78% 0, #252435 0, transparent 56%); }
a { color: var(--accent); }
.account-nav { padding: 18px max(5vw, 20px); border-bottom: 1px solid var(--line); display: flex; align-items: center; gap: 14px; }
.account-nav a { color: inherit; text-decoration: none; font-weight: 850; font-size: 1.7rem; }
.account-nav span, .eyebrow { color: var(--accent); }
.account-main { width: min(100% - 32px, 460px); margin: clamp(24px, 7vw, 70px) auto; }
.account-main.admin { width: min(100% - 32px, 1120px); }
.panel, .metric, .user { border: 1px solid var(--line); background: var(--panel); border-radius: 18px; padding: clamp(18px, 4vw, 32px); }
.eyebrow { font-weight: 700; font-size: .74rem; letter-spacing: .12em; text-transform: uppercase; }
h1 { margin: 10px 0; line-height: 1.1; font-size: clamp(1.8rem, 5vw, 2.5rem); }
h2 { font-size: 1.25rem; }
p, small { color: var(--muted); line-height: 1.55; }
form, label { display: grid; gap: 9px; }
form { gap: 16px; margin-top: 20px; }
input, select, button { font: inherit; padding: 11px 13px; border: 1px solid var(--line); border-radius: 9px; color: inherit; }
input, select { width: 100%; background: #11131c; }
button { background: #2b2e3e; cursor: pointer; }
button.primary { background: var(--accent); color: #1a1a1e; font-weight: 750; }
button:disabled { opacity: .55; cursor: wait; }
:focus-visible { outline: 2px solid #e5d7a8; outline-offset: 3px; }
.actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-top: 18px; }
.message { min-height: 1.5em; margin-bottom: 0; color: #ffbfad; }
.metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; margin: 20px 0; }
.metric { padding: 16px; }
.metric strong { display: block; font-size: 1.8rem; }
.users { display: grid; gap: 12px; }
.user { padding: 16px; overflow-wrap: anywhere; }
.user form { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; }
.user form label { flex: 1 1 120px; }
.daily { padding-left: 20px; }
@media (prefers-reduced-motion: no-preference) { .panel { animation: appear .2s ease-out; } }
@keyframes appear { from { opacity: .4; transform: translateY(4px); } }
