:root{--bg: #e8eef5;--panel: #ffffff;--ink: #1a2332;--muted: #5b6b7c;--line: #c5d0dc;--input: #fff8c6;--head: #1e3a5f;--accent: #0b6e4f;--flag: #d4edda;--flag-ink: #155724;--font-sans: "Segoe UI", ui-sans-serif, system-ui, sans-serif}*,*:before,*:after{box-sizing:border-box}body.formula-page{margin:0;min-height:100vh;font-family:var(--font-sans);color:var(--ink);background:radial-gradient(ellipse 80% 50% at 10% 0%,#d4e4f7 0%,transparent 55%),radial-gradient(ellipse 60% 40% at 100% 100%,#cfe8dc 0%,transparent 50%),var(--bg)}.wrap{max-width:1400px;margin:0 auto;padding:1.25rem 1rem 2.5rem}.page-header h1{margin:0 0 .35rem;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;color:var(--head)}.page-header p{margin:0 0 1.25rem;color:var(--muted);font-size:.95rem}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:.85rem .85rem 1rem;margin-bottom:1.25rem;box-shadow:0 8px 24px #1e3a5f0f}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.panel-head h2{margin:0;font-size:1.05rem;color:var(--head)}.panel-actions{display:flex;align-items:center;gap:.5rem}.f-history-nav{display:flex;align-items:center;gap:.35rem;margin-right:.25rem}.f-history-label{min-width:3.25rem;text-align:center;font-size:.85rem;font-variant-numeric:tabular-nums;color:var(--head)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:var(--accent);color:#fff;font-weight:600;font-size:.9rem;padding:.45rem .9rem;border-radius:6px;cursor:pointer}.btn:hover:not(:disabled){filter:brightness(1.08)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-icon{padding:.45rem .65rem;line-height:1}.btn-secondary{background:#6b7c8f}.btn-mode-auto{background:#1a7f4b}.btn-mode-auto:hover:not(:disabled){filter:brightness(1.08)}.formula-page.mode-auto .cell-input{opacity:.85}.race-live-status{margin:.5rem 0 0;font-size:.9rem;font-weight:600;color:var(--head);font-variant-numeric:tabular-nums}.race-history-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem}.race-history-label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--muted);font-weight:600}.race-select{min-width:14rem;max-width:100%;padding:.4rem .55rem;border:1px solid var(--line);border-radius:6px;font-size:.9rem;background:#fff;color:var(--ink)}.table-scroll{overflow-x:auto}.sheet{border-collapse:collapse;width:max-content;min-width:100%;font-size:.8rem}.sheet th,.sheet td{border:1px solid var(--line);padding:.2rem .3rem;text-align:right;white-space:nowrap}.sheet th{background:#f0f4f8;color:var(--head);font-weight:600;text-align:center}.sheet td.id,.sheet tfoot td:first-child{text-align:center;font-weight:600;background:#f7fafc}.sheet .out{background:#fafbfc;min-width:3.5rem;font-variant-numeric:tabular-nums}.sheet .out.total{font-weight:700;background:#eef6ff}.sheet .hist{min-width:2.75rem;background:#f5f7fa;color:var(--muted)}.sheet th.col-blue,.sheet td.col-blue{background:#d9e1f2}.sheet th.col-amber,.sheet td.col-amber{background:#ffc000}.sheet th.col-yellow,.sheet td.col-yellow{background:#ff0}.sheet th.col-k,.sheet td.col-k{background:#c6e0b4}#analysis-sheet td.stripe{background:#fff}#analysis-sheet tr.row-alt td.stripe{background:#b4c6e7}.sheet td.cf-alert{background:#ffc7ce!important;color:#9c0006!important}.sheet td.cf-good{background:#c6efce!important;color:#006100!important}.sheet .flag.flag-on{background:var(--flag);color:var(--flag-ink);font-weight:700}#analysis-sheet td.flag.flag-on{background:var(--flag)!important;color:var(--flag-ink)!important}.cell-input{width:4.5rem;border:1px solid #e0d48a;background:var(--input);border-radius:3px;padding:.2rem .25rem;text-align:right;font:inherit;font-variant-numeric:tabular-nums}.cell-input:focus{outline:2px solid #c9b44a;outline-offset:0}.hint{margin:.75rem 0 0;font-size:.85rem;color:var(--muted)}.hint code{background:#f0f4f8;padding:.05rem .3rem;border-radius:3px}.odds-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.text-input{min-width:14rem;max-width:100%;padding:.4rem .55rem;border:1px solid var(--line);border-radius:6px;font-size:.9rem;background:#fff;color:var(--ink)}.bot-setup-row{display:flex;align-items:center;gap:.65rem;margin-bottom:.5rem}.debug-browser-status{font-size:.85rem;font-weight:600;color:#b3261e}.debug-browser-status[data-connected=true]{color:#1a7f4b}.bot-config-hint code{background:#f0f4f8;border:1px solid var(--line);border-radius:4px;padding:.1rem .35rem;font-size:.85em}.debug-browser-tutorial{background:#f7fafc;border:1px solid var(--line);border-radius:8px;padding:.85rem 1rem;margin-bottom:.75rem;font-size:.85rem;color:var(--ink);max-width:640px}.debug-browser-tutorial-title{margin:0 0 .5rem;font-weight:700;color:var(--head)}.debug-browser-tutorial ol{margin:0;padding-left:1.25rem;display:flex;flex-direction:column;gap:.55rem}.debug-browser-tutorial code{background:#eef2f6;border:1px solid var(--line);border-radius:4px;padding:.1rem .35rem;font-size:.85em}.debug-browser-tutorial pre{margin:.35rem 0;overflow-x:auto}.debug-browser-tutorial pre code{display:block;padding:.5rem .65rem;white-space:pre}.debug-browser-tutorial-note{margin:.6rem 0 0;padding-top:.6rem;border-top:1px solid var(--line);color:var(--muted)}.bot-config{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem}.bot-config .race-history-label{margin:0}.bot-config .text-input{min-width:12rem}.bot-config-hint{margin:.35rem 0 0;font-size:.8rem;color:var(--muted)}.header-nav{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.header-nav-user{font-size:.85rem;color:var(--muted)}.auth-wrap{max-width:380px;margin:4rem auto;padding:0 1rem}.auth-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:1.5rem;box-shadow:0 8px 24px #1e3a5f14}.auth-card h1{margin:0 0 1rem;font-size:1.35rem;color:var(--head)}.form-field{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.9rem;font-size:.85rem;font-weight:600;color:var(--muted)}.form-field .text-input{width:100%}.form-error{background:#fdecea;color:#b3261e;border:1px solid #f3c2bd;border-radius:6px;padding:.5rem .75rem;font-size:.85rem;margin-bottom:1rem}.form-status{background:var(--flag);color:var(--flag-ink);border:1px solid #b7dfc1;border-radius:6px;padding:.5rem .75rem;font-size:.85rem;margin-bottom:1rem}.admin-table{border-collapse:collapse;width:100%;font-size:.9rem}.admin-table th,.admin-table td{border-bottom:1px solid var(--line);padding:.5rem .6rem;text-align:left}.admin-table th{color:var(--head);font-weight:600}.admin-table .row-actions{display:flex;gap:.5rem}.checkbox-field{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--muted);margin-bottom:.9rem}
