:root{--bg:#12080c;--bg-elev:#1c0d12;--panel:#241116;--line:#3d1f28;--gold:#d4b15a;--gold-dim:#9a7a32;--burgundy:#8b1e32;--text:#f4ead8;--muted:#b7a394;--hit:#2f9e6b;--miss:#9a4a4a}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:radial-gradient(1200px 500px at 10% -10%, #8b1e3259, transparent), radial-gradient(900px 400px at 100% 0%, #d4b15a1f, transparent), var(--bg);color:var(--text);font-family:Noto Sans TC,sans-serif}a{color:var(--gold);text-decoration:none}a:hover{text-decoration:underline}.shell{max-width:1180px;margin:0 auto;padding:0 20px 48px}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;padding:18px 0 22px;display:flex}.brand{letter-spacing:.04em;font-family:Noto Serif TC,serif;font-size:22px}.brand span{color:var(--gold)}nav{gap:18px;font-size:14px;display:flex}nav a.active{color:var(--gold);font-weight:700}.disclaimer{border:1px solid var(--line);color:var(--muted);background:#8b1e322e;margin:0 0 22px;padding:10px 14px;font-size:13px}.grid{gap:16px;display:grid}.cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px 18px}.card h3,.card h2{margin:0 0 8px;font-family:Noto Serif TC,serif}.muted{color:var(--muted);font-size:13px}.stat{color:var(--gold);font-size:28px;font-weight:700}table{border-collapse:collapse;background:var(--panel);border:1px solid var(--line);border-radius:12px;width:100%;overflow:hidden}.table-scroll{overflow-x:auto}th,td{text-align:left;border-bottom:1px solid var(--line);padding:10px 12px;font-size:14px}th{color:var(--gold);background:#2a141b;font-weight:500}tr.pred td{background:#d4b15a14}tr.hit td{background:#2f9e6b1f}.badge{border:1px solid var(--gold-dim);color:var(--gold);border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.badge.train{color:var(--muted);border-color:var(--line)}.page-title{margin:0 0 8px;font-family:Noto Serif TC,serif}.error{color:#e08a8a}.top4{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:22px;display:grid}.stat-inline{color:var(--gold);margin-left:8px;font-weight:700}.live-panel{border:1px solid var(--gold-dim);background:#d4b15a0f;border-radius:14px;margin:8px 0 28px;padding:18px}.live-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.live-card{color:inherit;display:block}.live-card:hover{border-color:var(--gold);text-decoration:none}.pool-table{margin-top:12px}.ticket-cell{color:var(--gold);letter-spacing:.04em;font-family:Noto Serif TC,serif;font-weight:700}tr.pool-avoid td{opacity:.55}.ticket-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-top:12px}.ticket-nos{color:var(--gold);letter-spacing:.04em;margin:6px 0;font-family:Noto Serif TC,serif;font-size:22px;font-weight:700}.ticket-compact{border-top:1px solid var(--line);margin-top:10px;padding-top:10px;font-size:13px}.ticket-compact .ticket-nos{margin:0 0 0 6px;font-size:16px}.prob-list{margin:10px 0 0;padding-left:18px}.prob-list li{justify-content:space-between;gap:8px;margin:4px 0;display:flex}.btn{background:var(--burgundy);color:var(--text);border:1px solid var(--gold-dim);cursor:pointer;border-radius:999px;padding:8px 16px;font-family:inherit}.btn:disabled{opacity:.6;cursor:wait}@media (width<=800px){.top4{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:flex-start}}
