:root{color-scheme:light;font-family:system-ui,-apple-system,Segoe UI,sans-serif;--bg: #f7f8fa;--surface: #ffffff;--border: #e2e4e9;--text: #1c1f26;--muted: #6b7280;--accent: #2962ff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}.loading,.auth-page{max-width:420px;margin:10vh auto;text-align:center}.tagline{color:var(--muted);margin-bottom:2rem}.auth-form{display:flex;flex-direction:column;gap:1rem;text-align:left}.auth-form label,.card-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--muted);flex:1}input,select{padding:.5rem .6rem;border:1px solid var(--border);border-radius:6px;font-size:.95rem}button{padding:.6rem 1rem;border-radius:6px;border:none;background:var(--accent);color:#fff;font-weight:600;cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}.link-button{background:none;color:var(--accent);font-weight:500;padding:.25rem}.message{color:var(--muted)}.error{color:#d32f2f;font-size:.85rem}.dashboard{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 4rem}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.user-email{color:var(--muted);margin-right:1rem;font-size:.9rem}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media (max-width: 800px){.dashboard-grid{grid-template-columns:1fr}}.card-form{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1.25rem;display:flex;flex-direction:column;gap:.9rem}.card-form h3{margin:0}.form-row{display:flex;gap:.75rem}.job-status{margin-top:.75rem;font-size:.9rem}.status-badge{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;background:#eee;color:#555}.status-done{background:#e3f6e8;color:#1a7f37}.status-failed{background:#fdecea;color:#d32f2f}.status-running,.status-queued{background:#eaf1ff;color:var(--accent)}.results{margin-top:2.5rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:1.5rem}.stat-tile{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.9rem;display:flex;flex-direction:column;gap:.3rem}.stat-label{font-size:.75rem;color:var(--muted);text-transform:uppercase}.stat-value{font-size:1.3rem;font-weight:700}.equity-chart{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.5rem}
