:root{--bg: #0f1115;--surface: #171a21;--surface-2: #1f242e;--border: #2a303c;--text: #e8ebf0;--muted: #9aa3b2;--accent: #6c8cff;--accent-2: #3ad0a0;--warn: #f0a23a;--danger: #f06a6a;--radius: 14px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Apple SD Gothic Neo,Noto Sans KR,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.topbar{position:sticky;top:0;z-index:10;background:#0f1115d9;backdrop-filter:blur(8px);border-bottom:1px solid var(--border);padding:14px 16px}.brand{font-weight:800;font-size:1.05rem;letter-spacing:-.02em}.container{max-width:720px;margin:0 auto;padding:16px 16px 40px}.site-foot{max-width:720px;margin:0 auto;padding:20px 16px 40px}.disclaimer{font-size:.78rem;color:var(--muted);line-height:1.6}.tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:14px;-webkit-overflow-scrolling:touch}.tab{flex:0 0 auto;padding:8px 14px;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--muted);font-size:.88rem;font-weight:600}.tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.tab-soon{opacity:.5;pointer-events:none}.list-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:12px;flex-wrap:wrap}.list-head h1{font-size:1.3rem;margin:0;letter-spacing:-.02em}.list-date{color:var(--muted);font-size:.9rem;font-variant-numeric:tabular-nums}.date-nav{display:flex;align-items:center;gap:6px}.date-arrow{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:var(--surface);border:1px solid var(--border);color:var(--text);font-size:1.1rem;line-height:1}.date-input{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:6px 8px;font-size:.85rem;color-scheme:dark}.grid{display:grid;grid-template-columns:1fr;gap:12px}@media(min-width:560px){.grid{grid-template-columns:1fr 1fr}}.card{display:block;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px;transition:transform .12s ease,border-color .12s ease}.card:active{transform:scale(.99)}.card:hover{border-color:var(--accent)}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.league{font-size:.76rem;color:var(--muted);font-weight:700}.badge{font-size:.7rem;font-weight:700;padding:3px 8px;border-radius:999px;border:1px solid var(--border);color:var(--muted)}.badge-scheduled{color:#cdd5e2}.badge-live{color:#fff;background:var(--danger);border-color:var(--danger)}.badge-final{color:var(--muted)}.badge-postponed{color:var(--warn);border-color:var(--warn)}.badge-canceled{color:var(--danger);border-color:var(--danger)}.teams{display:flex;flex-direction:column;gap:6px}.team{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:8px;padding:6px 8px;border-radius:10px}.team-fav{background:var(--surface-2)}.team-role{font-size:.68rem;color:var(--muted);font-weight:700}.team-name{font-weight:700}.team-fav .team-name{color:var(--accent-2)}.team-pitcher{font-size:.76rem;color:var(--muted)}.card-pred{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px dashed var(--border)}.pred-label{font-size:.72rem;color:var(--muted);font-weight:700}.pred-winner{color:var(--accent-2)}.pred-pct{margin-left:auto;font-weight:800;font-variant-numeric:tabular-nums}.pred-empty{color:var(--muted);font-size:.85rem}.card-score{margin-top:8px;font-size:.82rem;color:#cdd5e2}.card-score strong{color:var(--text);font-variant-numeric:tabular-nums}.card-foot{display:flex;gap:10px;justify-content:space-between;margin-top:10px;color:var(--muted);font-size:.76rem}.list-note{color:var(--muted);font-size:.8rem;margin:-4px 0 14px}.card-result{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px;font-size:.82rem;color:#cdd5e2}.card-result strong{color:var(--text);font-variant-numeric:tabular-nums}.result-label{font-size:.72rem;color:var(--muted);font-weight:700}.result-block{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-bottom:16px}.result-score{font-weight:800;font-size:1.15rem;font-variant-numeric:tabular-nums}.hit{font-size:.7rem;font-weight:800;padding:3px 9px;border-radius:999px;white-space:nowrap}.hit-hit{color:#0c1a12;background:var(--accent-2)}.hit-miss{color:#fff;background:var(--danger)}.hit-draw{color:var(--muted);border:1px solid var(--border)}.exp-score{display:flex;align-items:center;gap:10px;margin-top:14px;padding-top:12px;border-top:1px dashed var(--border)}.exp-score-val{font-weight:800;font-variant-numeric:tabular-nums}.lineups{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lineup-team{font-size:.82rem;font-weight:700;color:var(--accent-2);margin-bottom:6px}.lineup-list{margin:0;padding-left:22px}.lineup-list li{margin:4px 0;font-size:.86rem}.back{display:inline-block;color:var(--muted);font-size:.88rem;margin-bottom:12px}.detail-head{margin-bottom:18px}.detail-meta{display:flex;align-items:center;gap:10px;margin-bottom:8px}.detail-title{font-size:1.55rem;margin:0;letter-spacing:-.03em}.detail-title .at{color:var(--muted)}.detail-sub{color:var(--muted);font-size:.9rem;margin:4px 0 0}.detail-pitchers{color:var(--muted);font-size:.85rem;margin:6px 0 0}.pred-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:16px}.pred-winner-big{display:flex;align-items:baseline;gap:10px;margin-bottom:12px}.pred-winner-big .pred-label{font-size:.8rem}.pred-winner-big strong{font-size:1.5rem;color:var(--accent-2);letter-spacing:-.02em}.prob{display:flex;align-items:center;gap:10px}.prob-track{flex:1;height:12px;background:var(--surface-2);border-radius:999px;overflow:hidden}.prob-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));border-radius:999px}.prob-label{font-weight:800;font-variant-numeric:tabular-nums;min-width:44px;text-align:right}.block{margin-bottom:18px}.block h2{font-size:.95rem;margin:0 0 8px;color:var(--text)}.factors{margin:0;padding-left:18px}.factors li{margin:6px 0;line-height:1.5}.briefing-p{line-height:1.7;margin:0 0 10px;color:#d7dce6}.sources li{margin:6px 0}.sources a{color:var(--accent);text-decoration:underline;word-break:break-all}.genmeta{color:var(--muted);font-size:.74rem;margin-top:16px}.empty{color:var(--muted);padding:24px 0;text-align:center}
