/* NOVA v5: reuse v4 visuals (name + rank pill + cup pill) */
#duel-intro-overlay { position: fixed; inset: 0; display: none; align-items: center; justify-content: center; z-index: 999999; font-family: 'Comfortaa', cursive; }
#duel-intro-overlay.show { display: flex; }
#duel-intro-overlay .nova-backdrop{ position:absolute; inset:0; background: radial-gradient(1400px 700px at 50% 120%, #061129 0%, #040a1a 40%, #020611 70%, #01030a 100%); overflow:hidden; isolation:isolate; }
#duel-intro-overlay .nova-stars::before,#duel-intro-overlay .nova-stars::after{ content:''; position:absolute; inset:-20%;
  background: radial-gradient(2px 2px at 20% 30%, #d1e6ff 50%, transparent 51%) repeat,
              radial-gradient(1px 1px at 60% 70%, #9bc2ff 50%, transparent 51%) repeat,
              radial-gradient(1px 1px at 80% 20%, #ffffff 50%, transparent 51%) repeat;
  background-size: 300px 300px, 250px 250px, 200px 200px; animation: novaStarDrift 50s linear infinite; opacity:.7; filter: drop-shadow(0 0 2px rgba(160,200,255,.4)); }
#duel-intro-overlay .nova-stars::after{ inset:-10%; background: conic-gradient(from 0deg at 50% -10%, rgba(0,255,255,.06), transparent 20%, rgba(255,0,255,.06) 40%, transparent 60%, rgba(0,255,255,.06) 80%, transparent); filter: blur(8px); animation: novaSweep 12s linear infinite; }
@keyframes novaStarDrift{ to { transform: translateY(-200px); } }
@keyframes novaSweep{ to { transform: rotate(1turn); } }
#duel-intro-overlay .arena{ position:relative; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:clamp(12px,3vw,36px);
  padding:clamp(14px,3vw,40px); width:min(1200px,96vw); height:min(92vh,900px); border-radius:clamp(12px,2vw,24px);
  background:linear-gradient(180deg, rgba(8,18,40,.82), rgba(5,12,28,.88)); border:2px solid rgba(0,200,255,.35); box-shadow:0 0 24px rgba(0,200,255,.25), inset 0 0 24px rgba(0,200,255,.22); color:#e9f4ff; z-index:2; }
#duel-intro-overlay .player-card{ display:grid; grid-template-rows:auto auto auto; justify-items:center; gap:clamp(8px,1.6vw,16px); padding:clamp(8px,2vw,18px);
  border-radius:clamp(10px,1.4vw,18px); background:linear-gradient(180deg, rgba(28,40,72,.35), rgba(10,16,30,.35)); border:1px solid rgba(0,200,255,.25); width:100%; min-width:0; text-align:center; }
#duel-intro-overlay .player-photo{ width:clamp(86px,22vw,220px); height:clamp(86px,22vw,220px); border-radius:clamp(10px,1.4vw,16px); object-fit:cover; border:3px solid rgba(0,200,255,.45); box-shadow:0 6px 18px rgba(0,0,0,.35), 0 0 18px rgba(0,200,255,.25) inset; }
#duel-intro-overlay .player-name{ font-weight:900; font-size:clamp(14px,3.2vw,28px); line-height:1.15; text-shadow:0 0 10px rgba(0,200,255,.25); word-break:break-word; max-width:90%; color:#cfeaff; }
#duel-intro-overlay .player-meta{ display:flex; align-items:center; flex-wrap:wrap; gap:clamp(6px,1.2vw,12px); flex-wrap:wrap; justify-content:center; min-height: clamp(22px, 2.8vw, 28px); }
#duel-intro-overlay .rank-pill{ padding:3px 10px; border-radius:999px; font-weight:800; font-size:clamp(10px,2.2vw,14px); background:linear-gradient(180deg, rgba(14,110,95,.22), rgba(10,30,28,.5)); border:1px solid rgba(0,255,200,.35); color:#aef7da; letter-spacing:.2px; box-shadow:inset 0 0 10px rgba(0,255,200,.18); }
#duel-intro-overlay .rank-pill:empty{ display:none; }
#duel-intro-overlay .cup-pill{ display:inline-flex; align-items:center; gap:6px; padding:3px 10px; border-radius:10px; font-weight:800; font-size:clamp(10px,2.2vw,14px); color:#ffe7a8; background:linear-gradient(180deg, rgba(60,45,18,.35), rgba(25,20,10,.45)); border:1px solid rgba(255,204,0,.35); box-shadow: inset 0 0 10px rgba(255,200,0,.12); }
#duel-intro-overlay .cup-pill .cup-emoji{ display:inline-block; font-size:14px; line-height:1; filter: drop-shadow(0 0 4px rgba(255,200,0,.35)); }
#duel-intro-overlay .cup-pill[data-empty="1"]{ display:none; }
#duel-intro-overlay .vs{ display:grid; place-items:center; gap:clamp(12px,2vw,18px); }
#duel-intro-overlay .vs-badge{ font-weight:900; letter-spacing:2px; font-size:clamp(22px,6vw,64px); background:linear-gradient(90deg, #00f0ff, #00ffcc, #66a6ff, #00f0ff); -webkit-background-clip:text; -webkit-text-fill-color:transparent; filter: drop-shadow(0 0 10px rgba(0,255,255,.65)) drop-shadow(0 0 25px rgba(0,180,255,.45)); animation: novaFlick 1.5s linear infinite; }
@keyframes novaFlick{ 0%,100%{opacity:.95} 50%{opacity:1; filter: drop-shadow(0 0 16px rgba(0,255,255,.9)) drop-shadow(0 0 34px rgba(0,180,255,.7)); } }
#duel-intro-overlay .ring-wrap{ position:relative; width:clamp(120px,22vw,240px); height:clamp(120px,22vw,240px); display:grid; place-items:center; }
#duel-intro-overlay .ring{ position:absolute; inset:0; border-radius:50%; background: conic-gradient(#00e1ff var(--pct, 0%), rgba(255,255,255,.1) 0); mask: radial-gradient(circle at center, transparent 60%, black 61%); -webkit-mask: radial-gradient(circle at center, transparent 60%, black 61%); box-shadow: 0 0 24px rgba(0,200,255,.2); }
#duel-intro-overlay .ring-center{ position:relative; z-index:1; display:grid; place-items:center; width:62%; height:62%; border-radius:50%; border:1px solid rgba(0,255,200,.35); background: rgba(10,20,36,.7); box-shadow: inset 0 0 18px rgba(0,200,255,.15); }
#duel-intro-overlay .countdown{ font-size:clamp(16px,3.6vw,40px); font-weight:900; }
#duel-intro-overlay .flash{ position:absolute; inset:0; pointer-events:none; background: radial-gradient(120% 60% at 50% 50%, rgba(255,255,255,.75), rgba(255,255,255,.25), rgba(255,255,255,0)); opacity:0; mix-blend-mode:screen; animation:novaFlash 900ms ease-out; }
@keyframes novaFlash{ 0%{opacity:1} 100%{opacity:0} }
[data-nova-hide]{ display:none !important; }
