:root{--text:#1f2328;--text-muted:#6b7280;--bg:#f4f5f9;--bg-elevated:#fff;--border:#e5e4e7;--accent:#7c3aed;--accent-soft:#ede9fe;--accent-contrast:#fff;--dps-color:#2563eb;--dps-soft:#dbeafe;--discipline-color:#dc2626;--discipline-soft:#fee2e2;--prs-color:#059669;--prs-soft:#d1fae5;--jagbucks-color:#d97706;--jagbucks-soft:#fef3c7;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font:16px/145% system-ui,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#e5e7eb;--text-muted:#9ca3af;--bg:#101116;--bg-elevated:#1b1c24;--border:#2e303a;--accent:#c084fc;--accent-soft:#322049;--accent-contrast:#16171d;--dps-color:#60a5fa;--dps-soft:#1e3a5f;--discipline-color:#f87171;--discipline-soft:#4c1d1d;--prs-color:#34d399;--prs-soft:#0f3d2c;--jagbucks-color:#fbbf24;--jagbucks-soft:#4a3208}}*{box-sizing:border-box}body{margin:0}h1,h2,h3{color:var(--text)}button{font:inherit;border:1px solid var(--border);background:var(--accent);color:var(--accent-contrast);cursor:pointer;border-radius:6px;padding:8px 16px;transition:filter .15s}button:hover:not(:disabled){filter:brightness(1.08)}button:disabled{opacity:.5;cursor:not-allowed}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:10px 14px}thead th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:2px solid var(--border);font-size:.78em}tbody tr:not(:last-child) td{border-bottom:1px solid var(--border)}tbody tr:hover{background:var(--accent-soft)}.login{text-align:center;max-width:420px;margin:15vh auto}.dashboard{flex-direction:column;min-height:100vh;display:flex}.dashboard header{border-bottom:1px solid var(--border);background:linear-gradient(120deg, var(--accent), #a855f7);color:#fff;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.dashboard header strong{font-size:1.1em}.dashboard header span{opacity:.9}.dashboard header button{color:#fff;background:#ffffff2e;border-color:#ffffff59}.dashboard main{width:100%;max-width:1000px;margin:0 auto;padding:24px}.dashboard-page{flex-direction:column;gap:24px;display:flex}.top-row{grid-template-columns:1fr 1fr;align-items:start;gap:24px;display:grid}@media (width<=720px){.top-row{grid-template-columns:1fr}}.dashboard-page section{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;padding:20px;overflow-x:auto;box-shadow:0 1px 3px #0000000f}.dashboard-page h2{margin:0 0 16px;font-size:1.1em}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;display:grid}.stat-card{background:var(--card-soft,var(--accent-soft));border-radius:10px;padding:16px}.stat-card .stat-label{color:var(--text-muted);font-size:.85em;font-weight:600}.stat-card .stat-value{color:var(--card-color,var(--accent));margin-top:4px;font-size:1.8em;font-weight:700}.stat-card.dps{--card-soft:var(--dps-soft);--card-color:var(--dps-color)}.stat-card.prs{--card-soft:var(--prs-soft);--card-color:var(--prs-color)}.stat-card.jagbucks{--card-soft:var(--jagbucks-soft);--card-color:var(--jagbucks-color)}.badge{white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:.8em;font-weight:600;display:inline-block}.badge.dps{background:var(--dps-soft);color:var(--dps-color)}.badge.discipline{background:var(--discipline-soft);color:var(--discipline-color)}.announcement-list{flex-direction:column;gap:14px;max-height:320px;padding-right:4px;display:flex;overflow-y:auto}.announcement-card{border-left:4px solid var(--accent);background:var(--accent-soft);border-radius:8px;padding:14px 18px}.announcement-card-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.announcement-card h3{margin:0;font-size:1.05em}.announcement-date{color:var(--text-muted);white-space:nowrap;font-size:.85em;font-weight:600}.announcement-card p{color:var(--text);margin:8px 0 0;line-height:1.5}
