/* ============================================================
   VantaPlay DYNAMIC home — live feeds + playful motion.
   ============================================================ */

/* ---------- TODAY'S TOP MATCHES strip ---------- */
.top-matches{padding:26px 40px;border-top:1px solid var(--line,rgba(255,255,255,.08))}
.top-matches .tm-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.top-matches .tm-head h2{font-size:20px;letter-spacing:-.02em;margin:0}
.top-matches .tm-head .tm-live{display:inline-flex;align-items:center;gap:6px;color:#ff4d4d;font-size:9px;font-weight:900;letter-spacing:.14em}
.top-matches .tm-head .tm-live i{width:6px;height:6px;border-radius:50%;background:#ff4d4d;animation:blink 1.2s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.25}}
.tm-scroll{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
.tm-scroll::-webkit-scrollbar{display:none}
.tm-card{min-width:270px;background:linear-gradient(160deg,#0e120f,#0a0c0b);border:1px solid var(--line);border-radius:10px;padding:15px;transition:transform .25s cubic-bezier(.2,.7,.2,1),border-color .2s,box-shadow .25s}
.tm-card:hover{transform:translateY(-4px);border-color:rgba(201,255,61,.3);box-shadow:0 16px 34px rgba(0,0,0,.5)}
.tm-card .tm-league{display:flex;justify-content:space-between;color:#5a615c;font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
.tm-card .tm-league .live-dot{color:#ff4d4d}
.tm-card .tm-teams{display:flex;flex-direction:column;gap:9px;margin-bottom:14px}
.tm-card .tm-teams .tm-team{display:flex;align-items:center;gap:9px}
.tm-card .tm-teams .tm-badge{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:900;color:#fff;flex-shrink:0}
.tm-card .tm-teams .tm-name{font-size:13px;font-weight:700}
.tm-card .tm-teams .tm-score{margin-left:auto;font-size:14px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--acid,#c9ff3d)}
.tm-odds{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.tm-odds button{background:#141817;border:1px solid var(--line);border-radius:6px;padding:9px 0;cursor:pointer;transition:.15s;color:#dde0db}
.tm-odds button:hover{border-color:var(--acid,#c9ff3d);background:rgba(201,255,61,.06);transform:translateY(-2px)}
.tm-odds button small{display:block;color:#59605c;font-size:8px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px}
.tm-odds button b{font-size:13px;font-variant-numeric:tabular-nums}

/* ---------- GAME OF THE DAY spotlight ---------- */
.gotd{margin:26px 40px;display:grid;grid-template-columns:1.1fr 1fr;gap:0;border-radius:14px;overflow:hidden;border:1px solid rgba(201,255,61,.18);min-height:230px;position:relative}
.gotd .gotd-art{position:relative;display:grid;place-items:center;overflow:hidden}
.gotd .gotd-art:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 40%,transparent,rgba(5,7,6,.7))}
.gotd .gotd-sym{font:900 88px Georgia;z-index:1;filter:drop-shadow(0 10px 30px rgba(0,0,0,.6));animation:floaty 4s ease-in-out infinite}
@keyframes floaty{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-12px) rotate(3deg)}}
.gotd .gotd-body{padding:32px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(120deg,#0c0f0d,#0a0c0b)}
.gotd .gotd-tag{color:var(--acid,#c9ff3d);font-size:9px;font-weight:900;letter-spacing:.2em;margin-bottom:10px}
.gotd .gotd-body h2{font-size:32px;letter-spacing:-.03em;line-height:.95;margin:0 0 8px}
.gotd .gotd-body p{color:#7c847f;font-size:12px;line-height:1.5;margin:0 0 18px;max-width:320px}
.gotd .gotd-meta{display:flex;gap:22px;margin-bottom:20px}
.gotd .gotd-meta div small{display:block;color:#5a615c;font-size:8px;letter-spacing:.1em;text-transform:uppercase}
.gotd .gotd-meta div b{font-size:15px;color:#e6e9e0}
@media(max-width:800px){.gotd{grid-template-columns:1fr}.gotd .gotd-art{min-height:160px}}

/* ---------- LIVE WINS FEED (vertical, animated in) ---------- */
.wins-live{margin:26px 40px}
.wins-live .wl-head{display:flex;align-items:center;gap:8px;margin-bottom:14px}
.wins-live .wl-head h2{font-size:16px;margin:0}
.wins-live .wl-head .wl-pulse{width:7px;height:7px;border-radius:50%;background:var(--acid,#c9ff3d);animation:blink 1.4s infinite}
.wins-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.win-chip{display:flex;align-items:center;gap:11px;background:#0d100f;border:1px solid var(--line);border-radius:9px;padding:11px 13px;animation:winpop .4s cubic-bezier(.2,.7,.2,1)}
@keyframes winpop{from{opacity:0;transform:scale(.9) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}
.win-chip .wc-ava{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:900;color:#0d1005;background:linear-gradient(135deg,#d4ff5c,#a9e01f);flex-shrink:0}
.win-chip .wc-meta{min-width:0;flex:1}
.win-chip .wc-meta b{display:block;font-size:12px}
.win-chip .wc-meta small{color:#5a615c;font-size:9px}
.win-chip .wc-amt{color:var(--acid,#c9ff3d);font-size:13px;font-weight:800;font-variant-numeric:tabular-nums}
.win-chip.flash-in{animation:flashwin .6s ease}
@keyframes flashwin{0%{background:rgba(201,255,61,.15);border-color:rgba(201,255,61,.5)}100%{background:#0d100f;border-color:var(--line)}}

/* ---------- WIN CELEBRATION (confetti canvas) ---------- */
#confetti-canvas{position:fixed;inset:0;pointer-events:none;z-index:9999;display:none}
#confetti-canvas.go{display:block}
