/* Arcade presentation derived from the supplied gameplay reference. */
.selection-page{background:linear-gradient(0deg,#060912eb,#0609129c 55%,#060912db)}
.selection-stage{grid-template-columns:1fr 1.5fr 1fr;gap:3vw}
.selection-fighter{border:2px solid #358fe9;background:linear-gradient(150deg,#1765c83d,#061a35a6 70%);padding:15px 14px 8px;min-height:230px}
.selection-fighter.right{border-color:#ea4761;background:linear-gradient(210deg,#b72e493d,#260b1aa6 70%)}
.selection-fighter:before{opacity:.2}
.selection-fighter .fighter-big-number{top:8%;left:5%;font-size:17vw;-webkit-text-stroke:2px #ffffff16}
.selection-fighter img{max-height:54vh;width:100%;flex:1;min-height:0}
.selection-fighter.right img{transform:none}
.selection-fighter .caption{border-top:2px solid #ffffff28;background:#07121bbb;padding:14px 8px 10px}
.selection-fighter strong{font-family:Impact,'Arial Black',Arial,sans-serif;font-size:clamp(17px,2.1vw,34px);letter-spacing:.01em;overflow-wrap:anywhere}
.select-center{justify-content:center;gap:12px}
.player-tabs{margin-bottom:0;border:2px solid #080b15}
.player-tabs button{font-weight:900;letter-spacing:.1em;padding:12px 7px}
.player-tabs button.active{background:#235ed2;color:#fff;box-shadow:inset 0 -3px #ffe050}
.player-tabs button.active.p2{background:#b32b4c}
.select-center .roster{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;margin:0}
.select-center .fighter-card{height:clamp(75px,13.5vh,146px);border:2px solid #3b445b;background:#111d32}
.select-center .fighter-card img{height:100%;width:100%;object-fit:cover;transform:none}
.select-center .fighter-card:hover{transform:translateY(-2px);border-color:#ffdf50}
.select-center .fighter-card.p1{border-color:#63caff;box-shadow:0 0 0 2px #63caff}
.select-center .fighter-card.p2{border-color:#ff536e;box-shadow:0 0 0 2px #ff536e}
.select-center .fighter-card.p1.p2{box-shadow:-2px 0 #63caff,2px 0 #ff536e}
.select-center .card-label{font-size:clamp(7px,.78vw,13px);left:4px;right:3px;bottom:5px;letter-spacing:0;text-shadow:0 2px 3px #000;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.select-center .card-label small{display:none}
.player-indicator{font-size:10px;padding:4px 7px}
.random-card{display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#3d2d69,#192d5a)!important}
.random-card b{font:900 clamp(42px,5vw,82px)/1 Impact,Arial,sans-serif;color:#ffe166;text-shadow:3px 4px #080c19}
.versus-mark{font-family:Impact,Arial,sans-serif;font-size:40px;line-height:1;color:#ffdd50;letter-spacing:.05em}
.fighter-bio{margin:0;font-size:11px;max-width:400px;line-height:1.5}
.fighter-stats{margin-top:1px}
.hud-top{top:1.5%;left:1.1%;right:1.1%;grid-template-columns:1fr 8% 1fr;gap:1.4%}
.fighter-hud{padding:1cqw 0 0 6.5cqw}
.fighter-hud.right{padding:1cqw 6.5cqw 0 0}
.hud-portrait{position:absolute;left:0;top:0;width:5.8cqw;height:6.5cqw;border:.25cqw solid #060911;outline:1px solid #f0be54;object-fit:cover;background:#b92e43}
.fighter-hud.right .hud-portrait{left:auto;right:0}
.health-shell{height:1.7cqw;border:.27cqw solid #080b12;padding:.16cqw;box-shadow:0 .12cqw 0 #000;transform:skewX(-18deg);background:#060811}
.fighter-hud.right .health-shell{transform:skewX(18deg)}
.health-inner{background:#291a1c}
.health-fill{background:linear-gradient(0deg,#efab1d,#ffe54e);box-shadow:0 0 8px #ffca3925}
.health-trail{background:#f56948}
.health-marks{background:none}
.name-row{margin:.55cqw 0 .38cqw;gap:.7cqw}
.name-row strong{font-family:Impact,'Arial Black',Arial,sans-serif;font-size:1.42cqw;font-style:normal;letter-spacing:.025em;color:#fff;line-height:1;text-shadow:.12cqw .15cqw #000}
.name-row span{font-size:.53cqw;white-space:nowrap;font-weight:800;color:#fff5bd}
.hud-meta{margin:0;justify-content:space-between;gap:.6cqw}
.hud-meta .hud-hp{font-size:.48cqw;color:#ddd2b4;letter-spacing:.07em}
.round-dots{gap:.4cqw}
.round-dots i{width:.78cqw;height:.78cqw;background:#261f20;border:.16cqw solid #080b12;outline:1px solid #a98d5e;transform:rotate(45deg)}
.round-dots i.won{background:#ffe44e;box-shadow:0 0 8px #ffca3e88}
.hud-meta .break-badge{font-size:.48cqw;letter-spacing:.02em;font-weight:900;background:#060a119c;color:#766c60;padding:.2cqw .45cqw;transform:skew(-8deg)}
.hud-meta .break-badge.ready{background:#ffe24a;color:#1c1e2d}
.timer-wrap{margin:0;position:relative}
.timer{margin:0;background:#080b14;clip-path:polygon(11% 0,89% 0,100% 50%,89% 100%,11% 100%,0 50%);color:white;font:900 3.5cqw/1.5 Impact,'Arial Black',Arial,sans-serif;letter-spacing:.02em;min-height:5.1cqw}
.timer-wrap .round-label{font-size:.5cqw;color:#ffdf65;font-weight:800;letter-spacing:.08em;margin-top:.32cqw}
.hud-bottom{bottom:1.7%;left:1.1%;right:1.1%;grid-template-columns:38% 1fr 38%;gap:2%}
.meter{position:relative;padding-left:3.8cqw}
.meter.right{padding-left:0;padding-right:3.8cqw}
.meter-level{position:absolute;bottom:0;left:0;width:3.15cqw;height:3.15cqw;display:grid;place-items:center;color:#0d1017;background:#ffdc32;border:.26cqw solid #0b0c15;font:900 2.4cqw/1 Impact,Arial,sans-serif;box-shadow:0 0 0 1px #8a631d}
.meter.right .meter-level{left:auto;right:0}
.meter-caption{font-size:.6cqw;font-weight:800;letter-spacing:.045em;margin-bottom:.4cqw;color:#fff1a6}
.meter-caption strong{color:#fff1a6}
.meter-shell{height:1.55cqw;transform:none;border:.24cqw solid #070910;background:#30231a;padding:.15cqw}
.meter-fill{background:linear-gradient(0deg,#dc831f,#ffe05e);box-shadow:0 0 7px #ffc14955}
.meter.right .meter-fill{margin-left:auto}
.meter-shell:after{background:repeating-linear-gradient(90deg,transparent 0%,transparent 32.8%,#0a1021 33%,#0a1021 33.4%)}
.meter-ready .meter-fill{background:linear-gradient(0deg,#ffd32e,#fff5ab)}
.hud-tools{gap:.5cqw}
.hud-tools button{font-size:.58cqw;padding:.45cqw .65cqw;background:#080b16c9}
.combo{top:20%;left:1.5%;color:#ffe143;text-shadow:.16cqw .19cqw #03070d;line-height:1}
.combo.right{right:1.5%;color:#ffe143}
.combo strong{display:block;font-family:Impact,'Arial Black',Arial,sans-serif;font-size:4.8cqw;letter-spacing:.015em;font-style:normal;margin:0}
.combo b{display:block;font-size:1.3cqw;color:#fff;font-family:'Arial Black',Arial,sans-serif;margin:.5cqw 0}
.combo small{font-size:.8cqw;color:#64e0f4;font-weight:900;letter-spacing:0}
#announcement{font-family:Impact,'Arial Black',Arial,sans-serif;letter-spacing:.025em;font-style:normal;color:#ffdd36;font-size:clamp(40px,8vw,160px);-webkit-text-stroke:.035em #080b13;paint-order:stroke fill;text-shadow:.045em .06em 0 #090b12;line-height:1.1}
#announcement small{font:800 .17em/1.5 Arial,sans-serif;letter-spacing:.12em;-webkit-text-stroke:0;text-shadow:0 2px 5px #000;margin-bottom:.5em}
#announcement.ko{font-size:clamp(60px,11vw,210px);color:#ff493e;transform:translate(-50%,-50%) rotate(-5deg);animation:ko-enter .18s ease-out}
#announcement.round-result{font-size:clamp(13px,2.6vw,50px);padding:.4em 1.1em .3em;background:#0d2859e8;border-bottom:.1em solid #ffda36;transform:translate(-50%,-50%) rotate(-2deg);-webkit-text-stroke:.05em #080b13;max-width:96vw}
#announcement.round-result small{font:800 .34em/1.6 Arial,sans-serif;color:#fff;margin:.6em 0 0;letter-spacing:.08em}
#announcement.fight-call{transform:translate(-50%,-50%) rotate(-5deg)}
.training-readout{top:15%;font-size:.62cqw;background:#070e1bc9;border-top:.16cqw solid #d5aa49}
@keyframes ko-enter{from{scale:1.6;opacity:.2}to{scale:1;opacity:1}}
@media(max-width:1000px){.selection-stage{gap:14px;grid-template-columns:1fr 1.4fr 1fr}.selection-fighter{padding:8px;min-height:180px}.select-center{gap:8px}.select-center .roster{gap:5px}.fighter-bio{font-size:9px}.select-center .card-label{font-size:7px}.player-indicator{font-size:8px;padding:3px 4px}.selection-fighter strong{font-size:16px}.selection-fighter .caption{padding:9px 2px}.select-center .fighter-card{height:12vh}}
@media(max-height:650px) and (orientation:landscape){.selection-stage{grid-template-columns:1fr 1.4fr 1fr;gap:15px}.selection-fighter img{max-height:46vh}.selection-fighter{min-height:130px}.select-center{gap:6px}.select-center .fighter-card{height:15.5vh}.select-center .versus-mark,.select-center .fighter-bio{display:none}.select-center .player-tabs button{padding:7px}.fighter-stats label{font-size:6px}.stat-bars{margin-top:3px}.selection-page .section-head h1{font-size:26px}#hud .hud-bottom{bottom:1.7%}}
@media(max-width:600px) and (orientation:portrait){.selection-stage{grid-template-columns:1fr 1fr;gap:10px}.select-center{grid-column:1/-1;grid-row:1;gap:8px}.select-center .roster{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.select-center .fighter-card{height:10.5vh;min-height:68px}.select-center .card-label{font-size:8px}.selection-fighter{min-height:150px}.selection-fighter img{max-height:23vh}.selection-fighter strong{font-size:16px}.selection-fighter .caption small{font-size:6px}.selection-fighter .fighter-big-number{font-size:28vw}.selection-page .section-head{margin:20px 0 12px}.selection-page .section-head h1{font-size:25px}.select-center .versus-mark,.select-center .fighter-bio,.select-center .fighter-stats{display:none}.selection-page .select-bottom{margin-top:12px}.selection-page .select-bottom .text-button{font-size:8px}.selection-page .select-bottom .primary{min-width:145px}.hud-meta .hud-hp,.name-row span{display:none}}
@media(prefers-reduced-motion:reduce){#announcement.ko{animation:none}}

/* Contact feedback stays outside the fighters' silhouettes. */
.combo-pulse strong{animation:combo-hit .18s ease-out}.sync-label{font-size:10px;color:#e1c98f;letter-spacing:.06em}.setting-row output{font-variant-numeric:tabular-nums;color:#f2ce82}.setting-row input[type=range]{accent-color:#f2ce82;max-width:42%;min-width:110px}#graphics-fullscreen{margin:8px 0 16px}@keyframes combo-hit{from{transform:scale(1.25);filter:brightness(1.7)}to{transform:scale(1);filter:brightness(1)}}@media(prefers-reduced-motion:reduce){.combo-pulse strong{animation:none}}
