:root{color-scheme:light;--bg: #f6f7f5;--surface: #ffffff;--surface-soft: #eef3ef;--surface-blue: #edf3fa;--text: #17211f;--muted: #64706c;--line: #d8dfda;--green: #1d7f58;--green-dark: #125d40;--blue: #245e9c;--amber: #a86712;--red: #a13c3c;--tier-high: #1d7f58;--tier-med: #a86712;--tier-low: #64706c;--shadow: 0 4px 12px rgba(25, 35, 32, .06)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px}button,input{font:inherit}button{border:0;border-radius:6px;background:var(--green);color:#fff;cursor:pointer;font-weight:700;min-height:40px;padding:0 14px}button:hover{background:var(--green-dark)}button:disabled{cursor:not-allowed;opacity:.55}h1,h2,h3,p{margin:0}h1{font-size:20px;font-weight:700;letter-spacing:0}h2{font-size:16px;font-weight:700}ul{margin:0;padding-left:18px}.shell{width:min(720px,calc(100vw - 16px));margin:0 auto;padding:12px 0 32px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.status-pill{border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:11px;font-weight:700;padding:4px 9px;white-space:nowrap}.status-pill.busy{color:var(--amber)}.status-pill.ok{color:var(--green-dark)}.status-pill.warn{color:var(--amber)}.status-pill.error{color:var(--red)}.action-band{background:var(--surface);border:1px solid var(--line);border-radius:8px;display:grid;gap:8px;margin-bottom:8px;padding:8px}.day-picker{display:grid;gap:6px;grid-template-columns:repeat(3,1fr)}.day-button{background:var(--surface-soft);border:1px solid var(--line);color:var(--text);display:grid;gap:1px;min-height:46px;padding:6px 8px;text-align:left}.day-button:hover,.day-button.active{background:#e8f5ef;border-color:var(--green)}.day-button span{font-size:12px;font-weight:700}.day-button b{color:var(--muted);font-size:11px;font-weight:600}#runBtn{width:100%}.notice{border:1px solid #d9d0aa;border-radius:6px;background:#fff9dc;color:#604a17;font-size:12px;line-height:1.4;margin-bottom:10px;padding:7px 10px}.prediction-pane{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px;margin-bottom:10px}.empty-state{display:grid;gap:6px;padding:24px 12px;place-content:center;text-align:center}.empty-state.compact{padding:16px 10px}.empty-state.compact.small{padding:10px}.empty-state p{color:var(--muted);font-size:13px;line-height:1.4;max-width:320px}.result-head{border-bottom:1px solid var(--line);margin-bottom:8px;padding-bottom:8px}.result-head p{color:var(--muted);font-size:12px;margin-top:2px}.picks-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.pick-row{border:1px solid var(--line);border-left:3px solid var(--tier-low);border-radius:6px;display:grid;grid-template-columns:28px 1fr;gap:8px;padding:8px 10px}.pick-row.tier-high{border-left-color:var(--tier-high)}.pick-row.tier-med{border-left-color:var(--tier-med)}.pick-row.tier-low{border-left-color:var(--tier-low)}.pick-rank{align-items:center;background:var(--surface-soft);border-radius:999px;color:var(--text);display:inline-flex;font-size:12px;font-weight:800;height:24px;justify-content:center;width:24px;align-self:start}.pick-body{display:grid;gap:4px;min-width:0}.pick-meta{color:var(--muted);display:flex;flex-wrap:wrap;font-size:11px;font-weight:600;gap:6px}.pick-teams{font-size:14px;font-weight:700;line-height:1.25;overflow:hidden;text-overflow:ellipsis}.pick-call{align-items:baseline;display:flex;flex-wrap:wrap;gap:6px}.pick-market{background:var(--surface-soft);border-radius:4px;color:var(--green-dark);font-size:10px;font-weight:800;letter-spacing:.04em;padding:2px 6px;text-transform:uppercase}.pick-pick{font-size:15px;font-weight:800}.tier-high .pick-pick{color:var(--tier-high)}.tier-med .pick-pick{color:var(--tier-med)}.tier-low .pick-pick{color:var(--tier-low)}.pick-conf{background:var(--surface-soft);border-radius:4px;font-size:11px;font-weight:800;margin-left:auto;padding:2px 6px}.tier-high .pick-conf{background:#d8efe2;color:var(--tier-high)}.tier-med .pick-conf{background:#fbecd0;color:var(--tier-med)}.pick-alt{color:var(--muted);font-size:11px;font-weight:600}.algorithm-box{background:var(--surface-blue);border:1px solid #ccdaea;border-radius:6px;margin-top:10px;padding:8px 10px}.algorithm-box summary{cursor:pointer;font-size:12px;font-weight:700;list-style:none;padding:2px 0}.algorithm-box summary::-webkit-details-marker{display:none}.algorithm-box summary:before{content:"▸ ";display:inline-block;margin-right:2px;transition:transform .15s}.algorithm-box[open] summary:before{content:"▾ "}.algo-section{margin-top:8px}.algo-section b{display:block;font-size:11px;font-weight:800;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase;color:var(--muted)}.algo-section ul,.algo-section p{color:var(--text);font-size:12px;line-height:1.4}.games-details{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:0}.games-details summary{align-items:center;cursor:pointer;display:flex;font-size:13px;font-weight:700;justify-content:space-between;list-style:none;padding:10px 12px}.games-details summary::-webkit-details-marker{display:none}.games-details summary:before{content:"▸ ";margin-right:4px;transition:transform .15s}.games-details[open] summary:before{content:"▾ "}.games-details summary b{background:var(--green-dark);border-radius:999px;color:#fff;font-size:11px;font-weight:800;padding:2px 8px}.filter-row{border-top:1px solid var(--line);padding:8px 10px}.filter-row input{background:var(--surface);border:1px solid var(--line);border-radius:6px;color:var(--text);min-height:36px;padding:0 10px;width:100%}.games-list{display:grid;gap:6px;max-height:60vh;overflow:auto;padding:8px 10px 10px}.game-card{background:#fbfcfb;border:1px solid var(--line);border-radius:6px;display:grid;gap:5px;padding:8px 10px}.game-meta,.odds-row{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.game-meta{color:var(--muted);font-size:11px;font-weight:700}.teams{font-size:13px;font-weight:700;line-height:1.25}.odds-row span{background:var(--surface-soft);border-radius:4px;font-size:11px;font-weight:700;padding:2px 6px}@media(min-width:720px){.shell{width:min(720px,calc(100vw - 32px));padding:20px 0 40px}body{font-size:16px}h1{font-size:24px}.action-band{grid-template-columns:1fr 160px;align-items:stretch}#runBtn{width:100%}.pick-teams{font-size:15px}.pick-pick{font-size:17px}}
