@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&family=IBM+Plex+Mono:wght@400;600&display=swap";:root{--bg-deep: #0f161d;--bg-panel: #1a252f;--bg-panel-soft: #223240;--text-main: #ebf1f5;--text-muted: #9eb2c3;--accent: #ff8f3f;--accent-soft: #ffd3b1;--danger: #ff5c5c;--success: #59d38e;--warning: #f1c460;--info: #7eb9ff;--line: rgba(255, 255, 255, .14)}*{box-sizing:border-box}body{margin:0;font-family:Space Grotesk,sans-serif;background:radial-gradient(circle at top right,#314456 0%,var(--bg-deep) 52%);color:var(--text-main);min-height:100vh}.shell{max-width:1500px;margin:0 auto;padding:1.5rem;display:grid;gap:1rem}.login-shell{display:grid;min-height:100vh;place-items:center}.login-card,.header-panel,.status-panel,.filters-panel,.table-panel,.cards-panel{background:linear-gradient(130deg,var(--bg-panel) 0%,var(--bg-panel-soft) 100%);border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 30px #00000047}.login-card{width:min(520px,92vw);padding:1.5rem}h1,h2{margin:0;font-weight:700}p{margin:.35rem 0;color:var(--text-muted)}form{margin-top:1rem;display:grid;gap:.9rem}label{display:grid;gap:.35rem;font-size:.9rem;color:var(--text-muted)}input,select,button{font-family:inherit}input,select{border:1px solid var(--line);border-radius:10px;background:#10181f;color:var(--text-main);padding:.6rem .75rem}button{border:0;border-radius:10px;background:var(--accent);color:#1f130b;font-weight:700;padding:.68rem 1rem;cursor:pointer}button:hover{filter:brightness(1.06)}button.secondary{background:#354d60;color:var(--text-main)}button:disabled{opacity:.6;cursor:not-allowed}button.compact{padding:.36rem .62rem;font-size:.78rem}.error{color:var(--danger)}.header-panel,.status-panel,.filters-panel,.table-panel,.cards-panel{padding:1rem}.top-row{display:grid;gap:1rem;grid-template-columns:minmax(0,1fr)}.header-panel{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:100%}.header-actions{display:flex;gap:.6rem}.status-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem;align-items:start;min-height:100%}.chips{display:flex;flex-wrap:wrap;gap:.28rem}.chip{font-family:IBM Plex Mono,monospace;font-size:.62rem;line-height:1.1;border-radius:999px;padding:.12rem .34rem;border:1px solid transparent}.latest-run-meta{min-width:0}.latest-run-title{display:inline-flex;align-items:center;gap:.42rem}.loading-spinner{width:.82rem;height:.82rem;border-radius:999px;border:2px solid rgba(255,255,255,.25);border-top-color:var(--accent);animation:spin .8s linear infinite}.run-timeline{margin-top:.7rem;display:grid;gap:.72rem;width:100%;min-width:0}.run-timeline-controls{display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem;flex-wrap:wrap}.run-follow-toggle{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-main);font-size:.88rem}.run-follow-toggle input{accent-color:var(--accent)}.run-zoom-controls{display:flex;gap:.4rem;flex-wrap:wrap}.run-zoom-controls button{min-width:2.6rem}.run-viewport-label{margin:0;font-size:.77rem;color:var(--accent-soft);font-family:IBM Plex Mono,monospace}.run-density-hint{margin:-.2rem 0 0;font-size:.76rem;color:var(--warning)}.run-overview-panel{position:relative}.run-overview-chart,.run-ruler-chart{width:100%;display:block}.run-overview-chart{height:48px}.run-ruler-chart{height:190px}.run-overview-background,.run-ruler-background{fill:#0a11178a;stroke:#ffffff1a;stroke-width:1}.run-overview-bar{opacity:.72}.run-overview-viewport{fill:#ff8f3f1f;stroke:#ff8f3ff2;stroke-width:1.5;border-radius:12px;cursor:grab}.run-overview-viewport.is-panning{cursor:grabbing}.run-overview-hit-area{fill:transparent;cursor:pointer}.run-ruler-shell{border:1px solid var(--line);border-radius:14px;background:#0a111770;overflow:hidden;outline:none}.run-ruler-shell:focus-visible{box-shadow:0 0 0 2px #ff8f3f73}.run-ruler-hit-area{cursor:grab}.run-ruler-shell.is-panning .run-ruler-hit-area{cursor:grabbing}.run-ruler-grid-line{stroke:#ffffff14;stroke-width:1}.run-ruler-day-line{stroke:#ffffff2e;stroke-width:1.5}.run-ruler-axis-line{stroke:#ffffff2e;stroke-width:1.25}.run-ruler-hover-line{stroke:#ff8f3fb3;stroke-width:1.2;stroke-dasharray:4 3}.run-ruler-hover-chip{fill:#ff8f3f29;stroke:#ff8f3fa3;stroke-width:1}.run-ruler-hour-label,.run-ruler-day-label,.run-ruler-selected-chip-text,.run-ruler-hover-chip-text{fill:var(--text-muted);font-family:IBM Plex Mono,monospace}.run-ruler-hour-label{font-size:10px}.run-ruler-day-label{font-size:10px;fill:var(--accent-soft)}.run-ruler-selected-chip{fill:#ff8f3f2e;stroke:#ff8f3fc7;stroke-width:1}.run-ruler-selected-chip-text{font-size:10px;fill:var(--text-main)}.run-ruler-hover-chip-text{font-size:9px;fill:var(--accent-soft)}.run-strip-shell{border:1px solid var(--line);border-radius:12px;background:#0a11175c;overflow:hidden}.run-strip-list{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,1fr);gap:.45rem;overflow-x:auto;padding:.5rem;scroll-snap-type:x proximity}.run-strip-item{border:1px solid var(--line);border-radius:10px;background:#ffffff08;color:var(--text-main);display:grid;gap:.2rem;align-content:start;padding:.45rem .5rem;text-align:left;min-height:72px;scroll-snap-align:center}.run-strip-item:hover{border-color:#ff8f3f8f}.run-strip-item.is-selected{border-color:#ff8f3fdb;background:#ff8f3f1c}.run-strip-time{font-size:.72rem;color:var(--accent-soft);font-family:IBM Plex Mono,monospace}.run-strip-status{display:inline-flex;width:fit-content;border-radius:999px;padding:.1rem .4rem;font-size:.67rem}.run-strip-trigger{font-size:.72rem;color:var(--text-muted)}.run-detail-summary{display:grid;gap:.45rem;padding:.8rem .9rem;border:1px solid var(--line);border-radius:12px;background:#ffffff08;color:var(--text-muted)}.run-detail-summary strong{color:var(--text-main);font-size:.95rem}.run-detail-summary-primary{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start;flex-wrap:wrap}.run-detail-badges{display:flex;flex-wrap:wrap;gap:.35rem}.run-detail-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.18rem .48rem;font-size:.7rem;line-height:1;border:1px solid transparent}.run-detail-badge-neutral{color:var(--text-main);background:#ffffff14;border-color:#ffffff1f}.run-detail-summary code{color:var(--accent-soft);font-size:.73rem;word-break:break-all}.run-status-success{color:var(--success);background-color:#59d38e2e}.run-status-partial{color:var(--warning);background-color:#f1c4602e}.run-status-blocked{color:var(--danger);background-color:#ff5c5c2e}.run-status-stub{color:var(--info);background-color:#7eb9ff2e}.latest-run-badges{margin-top:.2rem;justify-self:start;justify-content:flex-start}@keyframes spin{to{transform:rotate(360deg)}}.chip-success{color:#102215;background:var(--success)}.chip-partial{color:#2a1f04;background:var(--warning)}.chip-blocked{color:#2c0707;background:var(--danger)}.chip-stub{color:#0f2133;background:var(--info)}.filters-panel{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:.8rem}.status-message{margin:0;color:var(--accent-soft)}.table-panel{overflow:auto}.cards-panel{display:grid;gap:.75rem}.table-note{margin:0 0 .7rem;font-size:.83rem;color:var(--accent-soft)}.bet-card-grid{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));align-items:start}.bet-card{border:1px solid var(--line);border-radius:14px;background:#0a111775;padding:.85rem;display:grid;gap:.8rem}.bet-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem}.bet-card-actions{display:flex;gap:.45rem;align-items:flex-start}.bet-card-header h3{margin:0}.bet-event{font-weight:600;color:var(--text-main)}.bet-meta{font-size:.82rem}.line-mismatch-badge{align-self:flex-start;border-radius:999px;border:1px solid rgba(241,196,96,.8);background:#f1c46024;color:#ffdb8a;font-size:.75rem;padding:.2rem .56rem;white-space:nowrap}.bet-chart{width:100%}.chart-note,.empty-chart-note{margin:.45rem 0 0;font-size:.8rem;color:var(--text-muted)}.overlay-drawer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;grid-template-columns:minmax(0,1fr)}.drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#03080eb3}.drawer-panel{position:relative;margin-left:auto;width:min(560px,96vw);height:100%;background:linear-gradient(160deg,#17222c,#223445);border-left:1px solid var(--line);box-shadow:-10px 0 30px #00000059;display:grid;grid-template-rows:auto minmax(0,1fr)}.drawer-panel.wide{width:min(860px,98vw)}.drawer-header{padding:.9rem 1rem;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem}.drawer-header h3{margin:0}.drawer-subtitle{margin:.2rem 0 0;font-size:.84rem}.drawer-body{padding:.9rem 1rem 1.1rem;overflow:auto;display:grid;gap:.8rem}.drawer-note{margin:0;font-size:.8rem}.drawer-badges{display:flex;flex-wrap:wrap;gap:.4rem}.badge{border-radius:999px;padding:.2rem .55rem;font-size:.74rem;border:1px solid var(--line)}.badge-resolved{color:#0b2d17;background:#59d38ecc;border-color:#59d38ef2}.badge-pending{color:#3e2508;background:#ffb96fd1;border-color:#ffb96ff0}.badge-ambiguous,.badge-error,.badge-not_found{color:#3a1111;background:#f77c;border-color:#ff7777f0}.stat-grid{display:grid;gap:.7rem;grid-template-columns:repeat(2,minmax(0,1fr))}.stat-block{border:1px solid var(--line);border-radius:10px;background:#09101880;padding:.55rem .65rem;display:grid;gap:.35rem}.drawer-actions{display:flex;justify-content:flex-end}.quota-grid{display:grid;gap:.7rem;grid-template-columns:repeat(3,minmax(0,1fr))}.quota-card{border:1px solid var(--line);border-radius:10px;background:#09101880;padding:.65rem;display:grid;gap:.32rem}.quota-card p{margin:0;color:var(--text-main);font-size:1.02rem}.quota-card small{color:var(--text-muted);font-size:.75rem}.quota-meter{width:100%;height:8px;border-radius:999px;background:#ffffff1a;overflow:hidden}.quota-meter span{display:block;height:100%;background:linear-gradient(90deg,#59d38e,#f1c460 65%,#ff6b6b)}.sync-table{border:1px solid var(--line);border-radius:10px;overflow:auto;background:#09101885}.sync-table table{min-width:700px}table{width:100%;border-collapse:collapse;min-width:1150px}th,td{padding:.62rem .52rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:.86rem}th{font-family:IBM Plex Mono,monospace;color:var(--accent-soft);font-size:.77rem;text-transform:uppercase;letter-spacing:.03em}.best-over,.best-under{font-weight:700;color:#121212;background:#f6f0dd;border-radius:6px;padding:.06rem .22rem;display:inline-block}.odds-link{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.line-pill{margin-top:.2rem;display:inline-block;font-size:.72rem;border-radius:6px;padding:.08rem .28rem;font-family:IBM Plex Mono,monospace}.line-tone-0{color:#241500;background:#ffd08a}.line-tone-1{color:#041f09;background:#89dda2}.line-tone-2{color:#052038;background:#8bc7ff}.line-tone-3{color:#2b0a2d;background:#e9a4ff}.line-tone-4{color:#331205;background:#ffae93}.line-tone-5{color:#0d2533;background:#9fdbe8}.row-line-mismatch td{background:#f1c46014}@media(max-width:900px){.shell{padding:1rem}.top-row{grid-template-columns:1fr}.header-panel{flex-direction:column;align-items:flex-start}.status-panel{grid-template-columns:1fr}.latest-run-badges{justify-self:start;justify-content:flex-start}.run-timeline-controls{align-items:stretch}.run-zoom-controls{width:100%}.run-zoom-controls button{flex:1}.run-viewport-label{width:100%}.run-overview-chart{height:42px}.run-ruler-chart{height:176px}.run-detail-summary-primary{flex-direction:column}.run-strip-list{grid-auto-columns:minmax(140px,1fr)}.filters-panel{grid-template-columns:1fr}.bet-card-header{flex-direction:column}.bet-card-grid{grid-template-columns:1fr}.drawer-panel,.drawer-panel.wide{width:100vw;border-left:0}.quota-grid,.stat-grid{grid-template-columns:1fr}.sync-table table{min-width:560px}}
