

*{ box-sizing:border-box; }
body{ margin:0; font-family: ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif; background:var(--bg); color:var(--text); }
.app{ max-width:1100px; margin:40px auto; padding:0 16px; }
h1,h2{ margin:0 0 10px; }
.card{ background:var(--card); border-radius:16px; padding:16px; margin-bottom:16px; box-shadow:0 6px 24px rgba(0,0,0,.25); }
.row{ display:flex; gap:12px; align-items:center; }
input,select,button{ padding:10px 12px; border-radius:10px; border:1px solid #223; background:#0f1627; color:var(--text); }
button{ background:linear-gradient(135deg,#1c88ff,#6ad1ff); border:0; color:#001024; font-weight:700; cursor:pointer; }
button:disabled{ opacity:.6; cursor:not-allowed; }
.grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.stats{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.stats.four{ grid-template-columns:repeat(4,1fr); }
.stat{ background:#1f1f1f; border:1px solid #2a2a2a; border-radius:14px; padding:12px; }
.stat .label{ color:var(--muted); font-size:12px; letter-spacing:.06em; text-transform:uppercase; }
.stat .value{ font-size:22px; font-weight:800; }
.stat.perf-big .value{ font-size:22px; font-weight:800; }
.table{ width:100%; border-collapse:collapse; }
.table th,.table td{ padding:10px; text-align:left; border-bottom:1px solid #223; font-size:14px; }
.mono{ font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace; }
.subtle{ color:var(--muted); font-size:13px; margin-top:6px; }
.toast{ position:fixed; right:16px; bottom:16px; background:#0e1629; border:1px solid #1f2a44; padding:10px 12px; border-radius:10px; }
.hidden{ display:none; }


/* Brand logo */
.logo{ height:32px; width:auto; display:block; }
.logo-wrap{ display:flex; align-items:center; gap:10px; }
.brand-title{ font-size:18px; font-weight:800; letter-spacing:.02em; }


/* Brand overrides */
body{ background:var(--bg); color:var(--text); }
.card{ background:var(--card); box-shadow:0 8px 30px rgba(0,0,0,.35); }
input,select,button{ background:#2a2a2a; border:1px solid #3a3a3a; color:var(--text); }
button{ background:linear-gradient(135deg, var(--accent), #0d5f34); color:#eafff5; }
a{ color:var(--accent); }

/* Uniform type scale */
h1{ font-size:28px; }
h2{ font-size:22px; }
h3{ font-size:18px; }
label, .label{ font-size:12px; }
.value{ font-size:20px; }

/* Performance colors */
.pos{ color:var(--accent); }
.neg{ color:var(--danger); }
.neutral{ opacity:.9; }

/* Inputs */
input::placeholder{ color:#cbd5e1; opacity:.8; }


/* Persistent site header */
.site-header{ max-width:1100px; margin:24px auto 16px; padding:0 16px; }
.site-header .bar{ background:var(--card); border-radius:16px; padding:14px 18px; box-shadow:0 6px 24px rgba(0,0,0,.25); }
.site-header .logo-line{ display:flex; align-items:center; gap:12px; }
.site-header .logo-line img{ height:36px; width:auto; display:block; }
.site-header .help{ margin-top:6px; font-size:13px; color:var(--muted); }
.site-header .help a{ color:var(--accent); text-decoration:none; }

/* Header layout with right account area */
.header-flex{ display:flex; align-items:center; justify-content:space-between; gap:16px; }
.header-flex .left{ display:flex; flex-direction:column; }
.header-flex .acct .row{ gap:12px; }
