:root,[data-theme=dark]{--bg: #080c14;--surface: #0d1420;--card: #111927;--border: #1e2e45;--accent: #00d4ff;--green: #00e5a0;--orange: #ff7c2a;--red: #ff3d5a;--text: #eef4ff;--muted: #90a8c8;--gold: #ffd166;--purple: #b8a0fa;--font-mono: "Space Mono", monospace;--font-serif: "Lora", Georgia, serif;color-scheme:dark}[data-theme=light]{--bg: #eef2f7;--surface: #f8fafc;--card: #ffffff;--border: #c8d8e8;--accent: #0078a0;--green: #00875a;--orange: #b84a00;--red: #cc0028;--text: #111827;--muted: #4b6280;--gold: #966400;--purple: #5842d4;color-scheme:light}body{margin:0;background-color:var(--bg);color:var(--text);font-family:var(--font-serif);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}.theme-switching,.theme-switching *{transition:background-color .28s ease,color .28s ease,border-color .28s ease,box-shadow .28s ease,fill .28s ease,stroke .28s ease!important}@keyframes spin{to{transform:rotate(360deg)}}@keyframes spinR{to{transform:rotate(-360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes glow{0%,to{box-shadow:0 0 10px #00d4ff4d}50%{box-shadow:0 0 24px #00d4ffa6}}@keyframes pulseRed{0%,to{box-shadow:0 0 6px #ff3d5a4d}50%{box-shadow:0 0 16px #ff3d5a99}}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}button{transition:all .18s;cursor:pointer;border:none;background:none;font-family:inherit}button:active{transform:scale(.96)}button:disabled{cursor:not-allowed;opacity:.45}input,select,textarea{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit}.metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}@media (max-width: 640px){.metrics-grid{grid-template-columns:repeat(2,1fr)}}.coach-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 740px){.coach-grid{grid-template-columns:1fr}}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 480px){.two-col{grid-template-columns:1fr}}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}@media (max-width: 480px){.profile-grid{grid-template-columns:1fr}}@media print{.no-print{display:none!important}body{background:#fff;color:#000}}
