@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;700;800;900&family=Rajdhani:wght@500;700&display=swap');
:root{
  --blue:#25b7ff;--pink:#ff416d;--yellow:#ffd64f;--bg:#080d1e;--panel:#081225cc;--line:#30537e;
  font-family:'Rajdhani',Arial,sans-serif;color:#fff;background:#0a1020;
}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#1b2852,#07101e 65%,#040914)}
button,input{font:inherit}button{cursor:pointer;border:1px solid #3675ae;border-radius:8px;padding:9px 12px;background:#0c2041;color:#fff;font-weight:700}
button:hover{filter:brightness(1.12)}input{width:100%;min-width:0;color:#fff;background:#0b1530;border:1px solid #365077;border-radius:8px;padding:8px}
#app{display:flex;align-items:flex-start;gap:20px;padding:20px;justify-content:center}
.broadcast{position:relative;flex:none;width:900px;min-height:1600px;overflow:hidden;border:3px solid #27a8ff;box-shadow:0 0 0 2px #04152f,inset 0 0 60px #0008,0 0 40px #001b58;background:#070b15}
#posterBg{position:absolute;inset:0;width:900px;height:1600px;object-fit:cover;z-index:0;filter:saturate(1.04) contrast(1.04)}
.screen-fx{position:absolute;inset:0;z-index:1;pointer-events:none;background:
 linear-gradient(to bottom,rgba(255,255,255,.05),transparent 20%,transparent 80%,rgba(0,0,0,.35)),
 repeating-linear-gradient(to bottom,transparent 0 3px,rgba(255,255,255,.02) 3px 4px);
 mix-blend-mode:screen;opacity:.55}
.top,.hud,.stagearea,.arena-bottom,.feeds,footer,#fighterMotion,#stage,.victory-scene,.announcer{position:relative;z-index:3}
.top{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;background:linear-gradient(180deg,#071023f0,#081425b5 82%,transparent);backdrop-filter:blur(5px)}
.brand{display:flex;gap:12px;align-items:center;font:900 35px 'Barlow Condensed',sans-serif;letter-spacing:.3px;text-shadow:0 3px 0 #00122f,0 0 18px #000,-2px 0 0 #000,2px 0 0 #000; -webkit-text-stroke:1px rgba(0,0,0,.45)}
.note{color:#00e5ff;text-shadow:3px 2px #fb316c,0 0 14px #0af4ff;font-size:42px;-webkit-text-stroke:1px rgba(0,0,0,.42)}.live{font-size:24px;background:#fb285c;padding:4px 10px;border-radius:7px;box-shadow:0 0 14px #fb285c;border:2px solid #ffd7e1}.brand #viewers{font:800 19px Rajdhani;background:#060c25f2;padding:7px 12px;border-radius:10px;border:1px solid #5f86d4;box-shadow:0 0 10px #0008;color:#eef8ff}
.sound{display:flex;gap:8px}.sound button{border-color:#046ed6;color:#8ee5ff;background:#07142ddd;font-size:16px;box-shadow:inset 0 0 10px #0cf2}
.hud{display:grid;grid-template-columns:1fr 135px 1fr;gap:6px;align-items:start;padding:2px 10px 0;height:126px}
.stat{padding:8px 8px 6px;border:2px solid #1d4f85;background:linear-gradient(180deg,#090f28e6,#09152ee8);clip-path:polygon(0 10px,10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%);box-shadow:0 0 0 2px #01050d,0 8px 18px #0008}
.stat.right{border-color:#83456a}.identity{display:flex;align-items:center;gap:8px;margin-bottom:6px}.portrait{font-size:36px;border:2px solid #0cc0fc;background:#111a35;border-radius:10px;width:54px;height:54px;display:grid;place-items:center;box-shadow:0 0 15px #000a}.idtext{font:900 31px 'Barlow Condensed';letter-spacing:.5px;text-shadow:3px 3px #000,-2px -1px #000,0 0 14px #000;white-space:nowrap;-webkit-text-stroke:1px rgba(0,0,0,.38)}.rightidentity{justify-content:end}.rightidentity .idtext{font-size:28px}
.hp-shell{position:relative;height:33px;padding:3px;background:#0b1224;border-radius:5px;border:3px solid;box-shadow:inset 0 0 15px #000,0 2px 0 #000}.left-shell{border-color:#19bfff}.right-shell{border-color:#ff4670}.bar{height:100%;width:100%;transition:width .4s ease;background:linear-gradient(90deg,#1ff45d,#eaff4b,#ffbf2f,#ff6a1b);box-shadow:inset 0 -7px #0003}.rightbar{background:linear-gradient(90deg,#ff426f,#ff6d42,#ffc636)}.bar-gloss{position:absolute;inset:3px 3px auto 3px;height:42%;background:linear-gradient(to bottom,rgba(255,255,255,.36),transparent);pointer-events:none}
.value{display:flex;justify-content:space-between;font-size:22px;font-weight:900;text-shadow:2px 2px #000;align-items:center;margin-top:5px}.score-star{color:#ffe071}
.roundbox{text-align:center;padding-top:3px;background:linear-gradient(180deg,#03142f,#061029 74%,#0d0e1a);border:3px solid #1067ca;border-bottom-color:#18243f;clip-path:polygon(10% 0,90% 0,100% 18%,90% 100%,10% 100%,0 18%);height:111px;box-shadow:0 0 0 2px #01050d,0 10px 18px #0008}
.roundbox small{display:block;font:900 24px 'Barlow Condensed';color:#eff8ff;text-shadow:0 2px 0 #00173b} .roundbox strong{display:block;font:900 66px 'Barlow Condensed';color:#ffb42b;line-height:.9;text-shadow:0 5px #98241a,0 0 12px #ffb02966,-2px 0 #000,2px 0 #000}.mini-gems{display:flex;justify-content:center;gap:6px;margin-top:4px}.mini-gems i{width:14px;height:14px;border:2px solid #2aa8ff;border-radius:50%;background:#091a30;box-shadow:0 0 10px #000 inset}
.announcer{position:absolute;left:50%;top:160px;transform:translateX(-50%) scale(.7);padding:14px 42px;font:900 78px 'Barlow Condensed';letter-spacing:2px;line-height:1;color:#ffd34a;text-shadow:0 5px 0 #862010,0 0 25px #ff5a28,-3px 0 #000,3px 0 #000;background:linear-gradient(180deg,rgba(7,10,20,.82),rgba(9,16,34,.54));border:3px solid rgba(255,225,112,.72);border-radius:14px;opacity:0;pointer-events:none;z-index:8;text-align:center;white-space:nowrap}
.announcer.show{animation:announce-pop 1.45s ease both}.announcer.ko{color:#ff5d56;text-shadow:0 5px 0 #6b0909,0 0 25px #ff5d56}.announcer.round{color:#71d8ff;text-shadow:0 5px 0 #003b6e,0 0 22px #25b7ff}
@keyframes announce-pop{0%{opacity:0;transform:translateX(-50%) scale(.3)}15%{opacity:1;transform:translateX(-50%) scale(1.12)}75%{opacity:1;transform:translateX(-50%) scale(1)}100%{opacity:0;transform:translateX(-50%) scale(.96)}}
.stagearea{position:relative;height:900px;margin-top:-22px;overflow:hidden}
#stage{position:absolute;inset:0;width:900px;height:910px;opacity:0}
#fighterMotion{position:absolute;inset:0;width:900px;height:900px;pointer-events:none;z-index:6}
.status-sign{position:absolute;top:127px;left:347px;text-align:center;font:900 43px 'Barlow Condensed';line-height:.9;color:#3eff85;transform:rotate(-6deg);text-shadow:0 0 12px #03f4b6,3px 3px #073a34;pointer-events:none}
.status-sign em{display:block;font-size:32px;color:#ffed48}.status-sign strong{display:block;color:#ff40b2;font-size:55px;text-shadow:0 0 16px #ff14a7}.stage-status{position:absolute;bottom:34px;left:22px;font-weight:900;background:#070d22dd;padding:8px 14px;border:2px solid #26b2fa;border-radius:8px;box-shadow:0 0 12px #04172f}
#impact{position:absolute;top:355px;left:50%;font:900 74px 'Barlow Condensed';color:#ff3434;text-shadow:5px 5px #000,0 0 25px orange;transform:translateX(-50%);pointer-events:none;opacity:0}
.impactplay{animation:impact .65s ease-out}@keyframes impact{0%{opacity:0;transform:translate(-50%,30px) scale(.45)}25%{opacity:1;transform:translate(-50%,-15px) scale(1.3)}100%{opacity:0;transform:translate(-50%,-75px) scale(.9)}}
.move-banner{position:absolute;left:50%;top:510px;transform:translateX(-50%);min-width:340px;max-width:640px;padding:10px 20px;text-align:center;font:900 38px 'Barlow Condensed';letter-spacing:1px;color:#fff;text-shadow:0 3px 0 rgba(0,0,0,.7),0 0 14px rgba(0,0,0,.45);-webkit-text-stroke:1px rgba(0,0,0,.4);background:linear-gradient(90deg,#8f1029,#f74f24);border:3px solid #ffe47c;box-shadow:0 8px 20px #0008,0 0 18px #ff7d2850;clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);opacity:0;pointer-events:none}
.move-banner.blue{background:linear-gradient(90deg,#0d56a5,#22aaf2)}.move-banner.show{animation:move-banner 1.15s ease both}@keyframes move-banner{0%{opacity:0;transform:translateX(-50%) translateY(20px) scale(.85)}20%{opacity:1;transform:translateX(-50%) translateY(0) scale(1.04)}80%{opacity:1}100%{opacity:0;transform:translateX(-50%) translateY(-14px) scale(.98)}}
.arena-bottom{display:grid;grid-template-columns:1fr 160px 1fr;gap:6px;padding:0 9px;z-index:5}
.giftpanel{border:3px solid;border-radius:10px;background:#070d1fd4;padding:8px 5px;box-shadow:inset 0 0 18px #000,0 0 18px #0006;backdrop-filter:blur(4px)}.giftpanel.red{border-color:#ff294e;box-shadow:0 0 12px #e82a43}.giftpanel.blue{border-color:#00bcff;box-shadow:0 0 12px #198dff}.giftpanel h2{text-align:center;margin:0 0 8px;font:900 28px 'Barlow Condensed';background:#4e0618;padding:3px;border:1px solid #ff6a85}.giftpanel.blue h2{background:#082d68;border-color:#58caff}.giftgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.gift{border:2px solid #ed3456;min-height:139px;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:16px;padding:4px;background:linear-gradient(180deg,#101321dd,#0b1021dd);box-shadow:inset 0 0 12px #000;overflow:hidden}.blue .gift{border-color:#008eea}.gift .emoji{font-size:39px;filter:drop-shadow(0 0 7px #fff4)}.gift strong{font:900 20px 'Barlow Condensed';line-height:.95;text-shadow:0 2px 0 #000}.gift small{font:700 16px 'Barlow Condensed';line-height:1;color:#eff6ff;text-shadow:0 1px 0 #000}.gift em{font-size:14px;color:#ffe986;font-style:normal;text-shadow:0 1px 0 #000}
.callout{text-align:center;font:900 28px 'Barlow Condensed';font-style:italic;color:#ffdf4a;text-shadow:2px 3px #dc2046;padding-top:28px;line-height:1}.callout strong{color:#fef500}.callout div{font-size:60px;filter:drop-shadow(0 0 12px #ffa600)}
.feeds{display:grid;grid-template-columns:1fr 160px 1fr;gap:7px;padding:12px 11px 0;height:335px;z-index:5}.feed{background:#060f24db;border:2px solid #244970;border-radius:12px;padding:5px 9px;overflow:hidden;backdrop-filter:blur(4px)}.feed h3{margin:2px 0 8px;text-align:center;font-size:20px;color:#c5f1ff;text-shadow:0 2px 0 #00173b}.feed>div{display:flex;flex-direction:column;gap:5px}.entry{background:#10203ee6;padding:6px 7px;border-radius:7px;line-height:1.15;font-size:18px;color:#f8fbff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}.entry b{color:#94b9ff}.entry.redline{border-left:4px solid #fa2e50}.entry.blueline{border-left:4px solid #08c5ff}.neon{font:900 italic 32px 'Barlow Condensed';color:#17f5ff;text-shadow:0 0 10px #168cfa,2px 2px #125bef;transform:rotate(-8deg);align-self:center;text-align:center;line-height:1.1}
footer{text-align:center;font-weight:bold;color:#a3caff;padding:12px;text-shadow:0 2px 0 #000}
#control{width:410px;min-width:335px;max-height:calc(100vh - 40px);overflow:auto;position:sticky;top:20px;background:#111a30;border:1px solid #334867;border-radius:14px;padding:18px}#control h1{margin:0 0 6px;font-size:26px}#control h3{margin:0 0 12px}.muted{color:#b3bfd7}.group{border-top:1px solid #2f3c5b;margin-top:16px;padding-top:16px}.group label{display:block;margin:5px 0;font-weight:bold}.inline{display:flex;gap:5px;align-items:center}.primary{background:#076ad8}.danger{background:#9d203d;margin-top:8px}.connection{margin:9px 0;color:#ffd04c}.testgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:8px}.editorline{border:1px solid #314b74;border-radius:8px;padding:8px;margin:8px 0}.editorline h4{margin:0 0 8px}.editorline .cols{display:grid;grid-template-columns:1fr 1fr;gap:6px}.editorline small{color:#b9c6e1}.check{display:flex!important;align-items:center;gap:8px}.check input{width:auto}
#toast{margin-top:10px;color:#fff59e;font-weight:700;min-height:24px}
.overlay #control{display:none}.overlay #app{padding:0}.overlay .broadcast{border:0;box-shadow:none}.overlay body{background:transparent}
.victory-scene{position:absolute;inset:188px 10px 372px;z-index:12;pointer-events:none;visibility:hidden;opacity:0;display:flex;align-items:center;flex-direction:column;justify-content:center;background:radial-gradient(ellipse at center,#38145eef 0%,#080b29ed 75%);border:4px solid #ffd65a;border-radius:22px;box-shadow:inset 0 0 90px #dc4e5480,0 0 50px #ffba32aa;overflow:hidden;transform:scale(.91);transition:opacity .35s,transform .35s,visibility .35s}.victory-scene.show{visibility:visible;opacity:1;transform:scale(1)}.victory-scene.flavio{background:radial-gradient(ellipse at center,#072c4def,#080b29f5 75%);box-shadow:inset 0 0 90px #28b4ff80,0 0 50px #42aaffaa}.victory-title{font:900 68px 'Barlow Condensed';color:#ffe57c;text-shadow:0 4px 0 #8b190e,0 0 25px #ffbb54,-2px 0 #000,2px 0 #000}.victory-names{font:900 38px 'Barlow Condensed';margin-top:8px;letter-spacing:.8px;text-shadow:0 2px 0 #000}.victory-duo{display:flex;gap:20px;align-items:flex-end;justify-content:center;padding:18px 0 10px;perspective:1000px}.victory-person{width:210px;height:296px;display:flex;align-items:flex-end;justify-content:center;padding:8px;border:2px solid rgba(255,255,255,.16);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.02));box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 15px 24px rgba(0,0,0,.3);transform-origin:50% 100%;animation:winner-bob 1.4s ease-in-out infinite}.victory-person svg{width:100%;height:100%;filter:drop-shadow(0 18px 12px #0007)}.victory-hands{font-size:74px;animation:raise 1s ease-in-out infinite;min-width:100px;text-align:center;filter:drop-shadow(0 10px 10px rgba(0,0,0,.35))}.victory-quote{padding:0 28px;text-align:center;font-size:28px;font-weight:800;max-width:760px;text-shadow:0 2px 0 #000}.victory-sub{margin-top:12px;color:#bee6ff;font-weight:700;letter-spacing:1px;background:rgba(6,11,31,.55);padding:6px 16px;border-radius:999px;border:1px solid rgba(190,230,255,.2)}.victory-sparks{position:absolute;inset:0;overflow:hidden}.victory-sparks i{position:absolute;left:var(--x);top:-16px;width:var(--w);height:var(--h);background:var(--c);transform:rotate(var(--r));opacity:.85;animation:confetti var(--d) linear infinite;animation-delay:var(--delay)}@keyframes winner-bob{50%{transform:translateY(-8px)}}@keyframes raise{50%{transform:translateY(-7px) scale(1.06)}}@keyframes confetti{to{transform:translateY(450px) rotate(calc(var(--r) + 360deg));opacity:.35}}
@media(max-width:1350px){#app{flex-direction:column;align-items:center}#control{position:static;max-height:none;width:min(900px,100%)}}
@media(max-width:920px){.broadcast{transform-origin:top center;zoom:var(--zoom,1)}#app{padding:0}#control{margin-top:10px}}
@media(prefers-reduced-motion:reduce){#fighterMotion,.screen-fx,.announcer,.move-banner{animation:none!important;transition:none!important}}

/* V1.8 — retratos reais das ilustrações e sprites em canvas com resolução correta */
.portrait{position:relative;overflow:hidden;padding:0!important}.portrait img{display:block;width:100%;height:100%;object-fit:cover}.stagearea #fighterMotion{display:block!important;image-rendering:auto}.stagearea{isolation:isolate}

/* Adequação vertical OBS: lutadores apoiados no asfalto e painéis compactos */
.gift{min-height:111px}.gift .emoji{font-size:34px}.gift strong{font-size:18px}.gift small{font-size:14px}.giftpanel h2{font-size:25px}.feeds{height:260px}.feed .entry{font-size:15px;padding:4px}.feed h3{font-size:16px}.callout{padding-top:19px}.callout div{font-size:53px}

#impact{z-index:9}.move-banner,.stage-status{z-index:10}

/* V1.9 — dimensionamento real: o jogo continua renderizando a 900 × 1600. */
:root{--fit-scale:1}
#app{gap:16px;padding:12px;align-items:flex-start}
.stage-mount{flex:0 0 auto;position:relative;width:900px;height:1600px;overflow:hidden;isolation:isolate}
.stage-mount>.broadcast{position:absolute;left:0;top:0;width:900px;height:1600px;min-height:0;transform-origin:0 0;transform:scale(var(--fit-scale));margin:0}
#control{top:12px;max-height:calc(100dvh - 24px);width:395px;min-width:335px;overscroll-behavior:contain}
.fit-panel{background:linear-gradient(145deg,#123564,#09162c);padding:12px;border:1px solid #2477c0;border-radius:12px;margin:14px 0 6px}
.fit-header{display:flex;justify-content:space-between;align-items:center;gap:12px}
.fit-header>strong{font-size:18px;color:#ddf5ff}
#fitValue{font-size:13px;color:#78e2ff;white-space:nowrap;font-weight:700}
.fit-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:9px}
.fit-buttons button{padding:8px 3px;background:#112441}
.fit-buttons button.fit-active{background:#0877c6;border-color:#76d5ff;box-shadow:inset 0 0 8px #88dfff33}
.fit-note{font-size:13px;margin:8px 0 0}
.overlay #app{padding:0!important;gap:0!important}
.overlay .stage-mount{width:900px!important;height:1600px!important}
.overlay .stage-mount>.broadcast{transform:none!important;border:0;box-shadow:none}
.stage-mount:fullscreen{width:100vw!important;height:100vh!important;background:#030816;overflow:hidden}
.stage-mount:fullscreen .broadcast{border:0;box-shadow:none}
@media(max-width:1350px){#app{flex-direction:column;align-items:center;gap:12px}#control{position:static;max-height:none;min-width:0;width:min(900px,100%)}}
@media(max-width:920px){.broadcast{zoom:1!important}#app{padding:8px}}

/* Contraste do painel mesmo quando fontes externas não carregam */
body,#control,.broadcast{color:#f8fbff}

/* V1.10 — placar acumulado, torcida com avatares e painéis ajustados */
.hud{height:151px;z-index:10}.stat{min-height:137px}.stagearea{margin-top:-24px;height:756px}
.totalpoints{font:900 23px 'Barlow Condensed',Arial,sans-serif;letter-spacing:1.2px;padding:3px 9px;text-align:center;margin-top:3px;border-radius:5px;text-shadow:1px 2px #000}
.red-points{background:linear-gradient(90deg,#531022dd,#ac1d3bdc);color:#ffe073}
.blue-points{background:linear-gradient(90deg,#0a398bdc,#062a67dc);color:#ffe073}
.spectator-row{position:absolute;top:227px;left:48px;width:804px;z-index:5;pointer-events:none;display:flex;align-items:flex-end;justify-content:center;gap:4px;flex-wrap:wrap;max-height:100px;overflow:hidden}
.spectator{position:relative;display:grid;place-items:center;width:45px;height:55px;flex:0 0 auto;border:2px solid #f4be54;border-radius:9px 9px 16px 16px;overflow:hidden;background:linear-gradient(145deg,#143251,#2b1946);box-shadow:0 2px 12px #01020f,0 0 8px #ffce5a88;animation:crowd-sway calc(1.8s + var(--i)*.12s) ease-in-out infinite alternate}
.spectator img{width:100%;height:100%;object-fit:cover}.spectator span{font-size:22px}
@keyframes crowd-sway{0%{transform:translateY(2px) rotate(-2deg)}100%{transform:translateY(-7px) rotate(2deg)}}
.giftgrid{grid-template-columns:repeat(5,minmax(0,1fr))}.gift{min-height:118px}.gift .emoji{font-size:30px}.gift strong{font-size:16px}.gift small{font-size:13px}.gift em{font-size:12px}.gift.premium{border-color:#ffcb47;box-shadow:inset 0 0 13px #ff950022,0 0 12px #ffa82277}
#control input[type=file]{font-size:13px}.group select{width:100%;padding:8px;background:#0b1530;color:#fff;border:1px solid #365077;border-radius:7px;font:700 14px Rajdhani,Arial,sans-serif}
.group .cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.group .cols label{min-width:0}.group .cols .span-two{grid-column:1/-1}
#soundUploadStatus{word-break:break-word}#audienceTest{margin-bottom:8px}
@media(prefers-reduced-motion:reduce){.spectator{animation:none}}
/* V1.13: provocação como legenda arcade, sem interromper o duelo ou aumentar área OBS. */
.taunt-bubble{position:absolute;top:575px;left:50%;transform:translateX(-50%) translateY(12px) scale(.96);font:900 28px 'Barlow Condensed',Arial,sans-serif;letter-spacing:.3px;text-align:center;width:max-content;max-width:700px;padding:9px 20px;border-radius:13px;border:2px solid #82ceff;color:white;background:linear-gradient(115deg,#061327eb,#1a305be8);box-shadow:0 8px 24px #0009,0 0 20px #1886ff70;text-shadow:2px 3px #000;opacity:0;pointer-events:none;z-index:11;transition:transform .2s,opacity .2s}
.taunt-bubble.show{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}
.taunt-bubble.lula{border-color:#ff7b9d;background:linear-gradient(115deg,#321022ec,#602032ec)}
#control textarea{width:100%;display:block;resize:vertical;border:1px solid #365077;background:#0b1530;color:#fff;border-radius:8px;padding:8px;font:600 14px Rajdhani,Arial,sans-serif}
#audioConfig .cols label{display:flex;flex-direction:column;gap:5px}
#audioConfig .cols label.check{display:flex;flex-direction:row;align-items:center}
#control input[type=range]{padding:3px;width:100%;accent-color:#23b8ff}
/* V2.0 Pro — energia, combos, edição visual e ranking */
.energy-box{height:10px;margin:4px 2px 0;background:#071128;border:1px solid #5096b7;border-radius:7px;overflow:hidden;box-shadow:inset 0 0 5px #0009}.energy-fill{height:100%;width:0;background:linear-gradient(90deg,#21c9ff,#a4f3ff);transition:width .24s}.energy-caption{color:#b4f7fc;font:700 13px Rajdhani,Arial,sans-serif;display:flex;gap:5px;align-items:center;justify-content:space-between}.energy-caption span{color:#ffe677;text-shadow:0 0 4px #ffd14b}.stat{min-height:146px}.hud{height:155px}.stagearea{margin-top:-29px}
.combo-notice{position:absolute;top:205px;left:29%;font:900 42px 'Barlow Condensed',Arial,sans-serif;color:#ffe24c;text-shadow:2px 3px #d54420,0 0 13px #ed802a,-2px 0 #000,2px 0 #000;pointer-events:none;opacity:0;z-index:11}.combo-notice.show{animation:move-banner 1.05s ease both}.cheer-notice{position:absolute;top:290px;left:15px;background:#11233ef5;border:2px solid #ffcb4d;color:#fff4c6;padding:8px 12px;border-radius:8px;font:700 23px Rajdhani;z-index:9;opacity:0;box-shadow:0 6px 16px #0007}.cheer-notice.show{animation:move-banner 1.2s ease both}
.support-board{position:absolute;right:12px;bottom:76px;z-index:7;width:202px;border:1px solid #44c7ff9c;border-radius:10px;padding:7px;background:#06112bba;backdrop-filter:blur(4px);box-shadow:0 0 15px #0007;font:700 15px Rajdhani,Arial,sans-serif;pointer-events:none}
.support-board strong{display:block;font-size:17px;color:#ffd470}.support-board>div{display:flex;justify-content:space-between;gap:5px;line-height:1.3}.support-board>div span:first-child{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:120px}.support-board b{color:#8dedff}
.visual-editing .editable-zone{outline:3px dashed #c5f4ff;outline-offset:-4px;cursor:move;touch-action:none;pointer-events:auto;z-index:20}.visual-editing .chosen-zone{outline-color:#ffe85a;background-color:#5f7aff16}.editor-panel input,.editor-panel select{max-width:100%}

/* Mantém resolução lógica e proporções dos lutadores, sem esticamento ou corte de pés */
.stagearea #fighterMotion{width:900px!important;height:756px!important;max-height:756px!important;object-fit:fill}
.stagearea{overflow:hidden}
/* V2.1 — diagnóstico local e controles do editor (fora da fonte OBS). */
.monitor-panel{padding:12px;margin-top:11px;background:linear-gradient(165deg,#0e284b,#0a1327);border:1px solid #3e6f9f;border-radius:12px;box-shadow:0 6px 22px #0005}
.monitor-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.monitor-heading strong{color:#bcecff;font-size:18px}.monitor-heading span{font-size:14px;font-weight:700;color:#ffd56e}
.monitor-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:10px}
.monitor-stats>div{background:#09182fa8;border:1px solid #284567;border-radius:8px;min-width:0;padding:6px;display:flex;flex-direction:column;gap:3px}
.monitor-stats span{font:600 12px Rajdhani,Arial;color:#c2d6eb}.monitor-stats b{font:900 19px Rajdhani,Arial;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.queue-meter{height:8px;background:#060c1a;border-radius:10px;overflow:hidden;margin-top:9px;border:1px solid #23436b}.queue-meter>div{height:100%;width:0;background:linear-gradient(90deg,#34ddad,#e3be3d,#ee4155);transition:width .25s}
#monitorMessage{font-size:12px;margin:8px 0 0;color:#91b6d8;overflow-wrap:anywhere}.editor-history{margin:9px 0;flex-wrap:wrap}.editor-history button{flex:1;min-width:70px;font-size:14px}
#visualUndo:disabled,#visualRedo:disabled{opacity:.42;cursor:not-allowed}

/* V2.2: arte aprovada na comemoração e botões de preview separados */
.victory-person img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 18px 12px #0008);animation:winner-bob 1.3s ease-in-out infinite}
.sprite-preview button{min-height:38px;white-space:normal}

/* V2.2: área de combate estendida até o asfalto; pés não flutuam na torcida. */
.stagearea{height:845px!important}
.stagearea #fighterMotion{height:845px!important;max-height:845px!important}

.victory-fallback{width:100%;height:100%;display:flex;align-items:flex-end;justify-content:center}.victory-fallback svg{width:100%;height:100%;filter:drop-shadow(0 18px 12px #0008)}

/* Figuras oficiais fornecidas pelo catálogo da própria Live. Emoji é apenas fallback. */
.gift .emoji{width:46px;height:46px;display:flex;align-items:center;justify-content:center;margin:1px auto;}
.gift-image{width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 0 5px rgba(255,255,255,.25));}
.gift-emoji{font-size:36px;line-height:1;}
#giftCatalogStatus{background:#10223c;border:1px solid #ccaf66;padding:9px;border-radius:8px;line-height:1.25;}

.gift-audit-message{font:700 14px Rajdhani,Arial,sans-serif;color:#ffe5ad;background:#1a2234;padding:7px 9px;border:1px solid #65593b;border-radius:7px;margin-top:7px;}
.gift-audit-message[data-ok="true"]{color:#b4ffe0;border-color:#387c65;}

/* V2.3.4 — arena maior e instruções de presentes em faixas horizontais.
   O chat/eventos continuam no servidor, mas não ocupam pixels da transmissão. */
.stagearea{height:1090px!important;min-height:1090px!important}
.stagearea #fighterMotion{display:block!important;width:900px!important;height:1090px!important;max-height:1090px!important;image-rendering:auto;pointer-events:none}
.stagearea #stage{width:900px;height:1090px}
.stagearea #impact{top:605px}
.stagearea .move-banner{top:713px}
.stagearea .taunt-bubble{top:817px}
.stagearea .support-board{bottom:90px}
.stagearea .stage-status{bottom:40px}
.gift-ribbon{display:flex;flex-direction:column;gap:4px;width:900px;height:249px;padding:4px 11px 6px;z-index:7;background:linear-gradient(180deg,rgba(6,12,27,.97),rgba(5,11,28,.97));border-top:3px solid #ffe48a;box-shadow:0 -9px 24px rgba(0,0,0,.65);overflow:hidden}
.gift-ribbon-head{height:27px;flex:0 0 27px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 8px;color:#f8fbff;font:800 16px Rajdhani,Arial,sans-serif;letter-spacing:.2px}
.gift-ribbon-head strong{font:900 22px 'Barlow Condensed',Arial,sans-serif;color:#ffe07e;text-shadow:0 2px 2px #000}
.gift-stream{display:flex;align-items:stretch;gap:6px;height:103px;min-height:0;flex:0 0 103px;overflow:hidden;background:#091733;border:1px solid #384a72;border-radius:10px}
.gift-stream.red{border-color:#d94a6b;background:linear-gradient(90deg,#431428,#0b142c 25%)}
.gift-stream.blue{border-color:#329de5;background:linear-gradient(90deg,#0a3d69,#0b142c 25%)}
.gift-side-label{flex:0 0 103px;display:flex;align-items:center;justify-content:center;text-align:center;padding:7px;font:900 22px 'Barlow Condensed',Arial,sans-serif;line-height:1.05;color:#fff;text-shadow:0 2px 2px #000,0 0 8px #000;white-space:normal;border-right:2px solid rgba(255,255,255,.2)}
.gift-window{flex:1;min-width:0;overflow:hidden;position:relative;isolation:isolate;mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent)}
.gift-track{display:flex;align-items:stretch;width:max-content;min-height:100%;animation:gift-horizontal-flow var(--scroll-seconds,30s) linear infinite;will-change:transform}
.gift-track:hover{animation-play-state:paused}
.gift-set{display:flex;align-items:stretch;gap:9px;flex:0 0 auto;padding:5px 9px 5px 0}
.gift-card{height:91px;flex:0 0 201px;width:201px;display:grid;grid-template-columns:48px 1fr;grid-template-rows:1fr 22px;gap:0 5px;background:linear-gradient(160deg,#102645,#08142f);color:#f8fbff;border:1px solid #476b94;border-radius:9px;padding:4px 7px;box-shadow:inset 0 1px rgba(255,255,255,.08),0 3px 9px #0009}
.gift-stream.red .gift-card{border-color:#955267}.gift-stream.blue .gift-card{border-color:#3874a4}
.gift-card.premium{border-color:#edc96c!important;background:linear-gradient(130deg,#45351d,#101e37);box-shadow:inset 0 0 9px #ffd06338}
.gift-card.hot{border-color:#d5ffa8!important;box-shadow:0 0 15px #e4ff65,inset 0 0 12px #7cff5155}
.gift-icon{grid-row:1/3;grid-column:1;display:flex;align-items:center;justify-content:center;font-size:34px;min-width:0}
.gift-icon .gift-image{width:43px;height:43px;object-fit:contain}
.gift-icon .gift-emoji{font-size:34px}
.gift-description{grid-row:1;grid-column:2;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:1px}
.gift-description strong{font:900 18px 'Barlow Condensed',Arial,sans-serif;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px #000}
.gift-description small{font:800 13px Rajdhani,Arial,sans-serif;color:#bae8ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}
.gift-price{grid-row:2;grid-column:2;font:900 16px Rajdhani,Arial,sans-serif;color:#ffe38a}
.gift-empty{font:800 17px Rajdhani,Arial,sans-serif;color:#c8e4fc;align-self:center;padding-left:20px}
@keyframes gift-horizontal-flow{0%{transform:translate3d(0,0,0)}100%{transform:translate3d(-50%,0,0)}}
@media(prefers-reduced-motion:reduce){.gift-track{animation:none!important}.gift-window{overflow-x:auto}}

.victory-scene::after{content:"";position:absolute;left:9%;right:9%;bottom:28px;height:88px;border-radius:999px;background:radial-gradient(ellipse at center,rgba(255,220,90,.28),rgba(255,220,90,0) 70%);pointer-events:none;mix-blend-mode:screen}
.victory-scene.dance-lula .victory-duo{animation:duo-shuffle 1.15s ease-in-out infinite}
.victory-scene.dance-lula #victoryFighter{animation:samba-left 1.05s ease-in-out infinite}
.victory-scene.dance-lula #victoryCompanion{animation:samba-right 1.05s ease-in-out infinite}
.victory-scene.dance-flavio .victory-duo{animation:duo-bounce 1s ease-in-out infinite}
.victory-scene.dance-flavio #victoryFighter{animation:march-left .95s ease-in-out infinite}
.victory-scene.dance-flavio #victoryCompanion{animation:march-right .95s ease-in-out infinite}
.victory-scene.dance-lula .victory-hands{animation:music-sway .8s ease-in-out infinite}
.victory-scene.dance-flavio .victory-hands{animation:music-pop .95s ease-in-out infinite}
.victory-scene.dance-lula .victory-title,.victory-scene.dance-flavio .victory-title{animation:title-pulse .95s ease-in-out infinite}
.victory-scene.dance-lula .victory-sub,.victory-scene.dance-flavio .victory-sub{box-shadow:0 0 18px rgba(255,255,255,.12),0 0 28px rgba(255,225,112,.18)}
@keyframes samba-left{0%,100%{transform:translateX(-10px) rotate(-7deg) translateY(0)}25%{transform:translateX(10px) rotate(6deg) translateY(-10px)}50%{transform:translateX(-2px) rotate(-3deg) translateY(0)}75%{transform:translateX(12px) rotate(7deg) translateY(-8px)}}
@keyframes samba-right{0%,100%{transform:translateX(10px) rotate(7deg) translateY(-2px)}25%{transform:translateX(-10px) rotate(-6deg) translateY(0)}50%{transform:translateX(2px) rotate(3deg) translateY(-12px)}75%{transform:translateX(-12px) rotate(-7deg) translateY(0)}}
@keyframes march-left{0%,100%{transform:translateX(-8px) rotate(-3deg) translateY(0)}25%{transform:translateX(6px) rotate(1deg) translateY(-14px)}50%{transform:translateX(-6px) rotate(-2deg) translateY(0)}75%{transform:translateX(10px) rotate(3deg) translateY(-10px)}}
@keyframes march-right{0%,100%{transform:translateX(8px) rotate(3deg) translateY(-2px)}25%{transform:translateX(-6px) rotate(-1deg) translateY(0)}50%{transform:translateX(6px) rotate(2deg) translateY(-14px)}75%{transform:translateX(-10px) rotate(-3deg) translateY(0)}}
@keyframes duo-shuffle{50%{transform:translateY(-4px) scale(1.01)}}
@keyframes duo-bounce{50%{transform:translateY(-8px) scale(1.012)}}
@keyframes music-sway{0%,100%{transform:rotate(-7deg) translateY(0)}50%{transform:rotate(7deg) translateY(-8px)}}
@keyframes music-pop{0%,100%{transform:scale(1) translateY(0)}50%{transform:scale(1.14) translateY(-8px)}}
@keyframes title-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}

.taunt-clips{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:9px;margin:8px 0 16px}.taunt-clips label{padding:8px 10px;display:grid;gap:5px;background:#13263c;border:1px solid #486a85;border-radius:9px;color:#f5faff;font-weight:700}.taunt-clips select{width:100%;min-width:0}.taunt-clips strong{color:#ffdb72}

/* V2.6: oito tempos de coreografia, sem imagens duplicadas. */
.victory-scene.dance-lula .victory-person img,.victory-scene.dance-flavio .victory-person img {animation:none}
.victory-scene.dance-lula #victoryFighter{animation:dance-samba-a 2.6s ease-in-out infinite}
.victory-scene.dance-lula #victoryCompanion{animation:dance-samba-b 2.6s ease-in-out infinite}
.victory-scene.dance-flavio #victoryFighter{animation:dance-march-a 2.2s ease-in-out infinite}
.victory-scene.dance-flavio #victoryCompanion{animation:dance-march-b 2.2s ease-in-out infinite}
@keyframes dance-samba-a{0%,100%{transform:translate(0,0) rotate(0)}12.5%{transform:translate(-19px,-10px) rotate(-7deg)}25%{transform:translate(-24px,0) rotate(-3deg)}37.5%{transform:translate(-8px,-15px) rotate(5deg)}50%{transform:translate(10px,0) rotate(5deg)}62.5%{transform:translate(24px,-12px) rotate(8deg)}75%{transform:translate(14px,0) rotate(2deg)}87.5%{transform:translate(3px,-16px) rotate(-6deg)}}
@keyframes dance-samba-b{0%,100%{transform:translate(0,-6px) rotate(0)}12.5%{transform:translate(16px,0) rotate(6deg)}25%{transform:translate(24px,-16px) rotate(6deg)}37.5%{transform:translate(8px,0) rotate(-5deg)}50%{transform:translate(-12px,-12px) rotate(-5deg)}62.5%{transform:translate(-22px,0) rotate(-8deg)}75%{transform:translate(-14px,-15px) rotate(-4deg)}87.5%{transform:translate(-3px,0) rotate(6deg)}}
@keyframes dance-march-a{0%,100%{transform:translateX(0) translateY(0) rotate(0)}12.5%{transform:translate(0,-20px) rotate(-4deg)}25%{transform:translate(13px,0) rotate(-3deg)}37.5%{transform:translate(18px,-17px) rotate(4deg)}50%{transform:translate(0,0) rotate(4deg)}62.5%{transform:translate(-17px,-22px) rotate(-4deg)}75%{transform:translate(-12px,0) rotate(-2deg)}87.5%{transform:translate(0,-17px) rotate(3deg)}}
@keyframes dance-march-b{0%,100%{transform:translate(0,-15px) rotate(3deg)}12.5%{transform:translate(-10px,0) rotate(-2deg)}25%{transform:translate(-17px,-17px) rotate(-4deg)}37.5%{transform:translate(0,0) rotate(-2deg)}50%{transform:translate(13px,-20px) rotate(4deg)}62.5%{transform:translate(17px,0) rotate(2deg)}75%{transform:translate(0,-18px) rotate(-3deg)}87.5%{transform:translate(-12px,0) rotate(-4deg)}}
.soundboard-editor{display:flex;flex-direction:column;gap:10px}.soundboard-line{display:grid;grid-template-columns:110px minmax(115px,1.5fr) minmax(110px,1fr) minmax(120px,1fr) auto auto;gap:7px;align-items:center;padding:8px 5px;border-bottom:1px solid #36466d}.soundboard-speaker{font-weight:800;color:#ddeaff}.soundboard-line label{white-space:nowrap;font-size:13px}.soundboard-line button{padding:7px!important}@media(max-width:1050px){.soundboard-line{grid-template-columns:1fr 1fr}.soundboard-line .soundboard-speaker{grid-column:1/-1}}

.victory-scene .victory-person img{width:100%;height:100%;object-fit:contain;transform-origin:50% 100%;filter:drop-shadow(0 16px 12px rgba(0,0,0,.45))}
.victory-scene .victory-duo{transform-origin:50% 100%}
.victory-scene.dance-lula.beat-0 #victoryFighter,.victory-scene.dance-lula.beat-4 #victoryFighter{transform:translate(-20px,-8px) rotate(-8deg) scale(1.04)}
.victory-scene.dance-lula.beat-1 #victoryCompanion,.victory-scene.dance-lula.beat-5 #victoryCompanion{transform:translate(18px,-14px) rotate(8deg) scale(1.04)}
.victory-scene.dance-lula.beat-2 #victoryFighter,.victory-scene.dance-lula.beat-6 #victoryFighter{transform:translate(18px,-16px) rotate(8deg) scale(1.05)}
.victory-scene.dance-lula.beat-3 #victoryCompanion,.victory-scene.dance-lula.beat-7 #victoryCompanion{transform:translate(-18px,-10px) rotate(-8deg) scale(1.05)}
.victory-scene.dance-flavio.beat-0 #victoryFighter,.victory-scene.dance-flavio.beat-4 #victoryFighter{transform:translate(0,-22px) rotate(-3deg) scale(1.06)}
.victory-scene.dance-flavio.beat-1 #victoryCompanion,.victory-scene.dance-flavio.beat-5 #victoryCompanion{transform:translate(-18px,0) rotate(-5deg) scale(1.03)}
.victory-scene.dance-flavio.beat-2 #victoryFighter,.victory-scene.dance-flavio.beat-6 #victoryFighter{transform:translate(16px,-6px) rotate(4deg) scale(1.04)}
.victory-scene.dance-flavio.beat-3 #victoryCompanion,.victory-scene.dance-flavio.beat-7 #victoryCompanion{transform:translate(14px,-18px) rotate(5deg) scale(1.04)}
.victory-scene.beat-0 .victory-hands,.victory-scene.beat-4 .victory-hands{transform:translateY(-10px) scale(1.18)}
.victory-scene.beat-2 .victory-hands,.victory-scene.beat-6 .victory-hands{transform:translateY(-2px) scale(1.04)}

.victory-duo-sheet-wrap{justify-content:center}.victory-duo-sheet{width:710px;height:355px;border-radius:22px;border:2px solid rgba(255,255,255,.16);background-color:rgba(255,255,255,.03);background-repeat:no-repeat;background-size:400% 200%;background-position:0 0;filter:drop-shadow(0 18px 12px rgba(0,0,0,.45));box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 15px 24px rgba(0,0,0,.3)}
.victory-scene .victory-hands,.victory-scene .victory-person{display:none!important}

/* V2.8 — Estúdio com navegação por área; não altera overlay OBS. */
#control{background:linear-gradient(168deg,#152846 0%,#0c172c 48%,#111a2b 100%);border:1px solid #416f9c;box-shadow:0 18px 44px #0007}
#control h1{color:#e5f5ff;font:900 26px Rajdhani,Arial,sans-serif;letter-spacing:.3px}
#control h1 small{display:inline-block;font-size:13px;color:#8ad7ff;background:#14365b;padding:3px 7px;border-radius:8px;vertical-align:middle}
.panel-intro{font-size:14px;line-height:1.35;color:#b7d2e9;margin:6px 0 12px}
.control-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;background:#09182c;padding:9px;border:1px solid #2d618a;border-radius:12px;position:sticky;top:-18px;z-index:30;box-shadow:0 12px 22px #060e23c4}
.control-nav button{font:800 14px Rajdhani,Arial,sans-serif;letter-spacing:.2px;padding:10px 7px;min-width:0;white-space:normal;line-height:1.1;background:#163049;border:1px solid #335a7f;color:#d8e9f8;border-radius:9px}
.control-nav button.nav-active{background:linear-gradient(135deg,#1684cc,#1951a3);border-color:#86d7fc;color:white;box-shadow:0 0 0 1px #82d7ff40}
#control [data-panel][hidden]{display:none!important}
#control [data-panel]:not([hidden]){animation:panel-appear .18s ease both}
@keyframes panel-appear{from{opacity:.75;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
#control .group{padding-top:14px;margin-top:12px}
#control h3{font:900 21px Rajdhani,Arial,sans-serif;color:#f1faff;margin-bottom:12px}
#control .group label{color:#e3effb;font-size:14px;line-height:1.35}
#control button{transition:background-color .15s,border-color .15s}
#control button:focus-visible,#control input:focus-visible,#control select:focus-visible,#control textarea:focus-visible{outline:2px solid #71d9ff;outline-offset:2px}
.control-actions{position:sticky;bottom:-18px;z-index:40;margin:20px -10px -10px;padding:10px;background:#0b1a30f7;border:1px solid #3b759c;border-radius:12px;box-shadow:0 -8px 22px #0007;display:flex;align-items:center;gap:10px}
.control-actions button{min-width:170px;background:#148baf;font-weight:900}.control-actions span{font-size:12px;color:#cce8f6;line-height:1.2}
.studio-box{margin:14px 0 4px;padding:13px;background:linear-gradient(150deg,#152c47,#0f2038);border:1px solid #385e89;border-radius:13px}
.studio-box h4{font:900 17px Rajdhani,Arial,sans-serif;margin:0 0 5px;color:#ccecff}
.studio-box .muted{font-size:13px;margin:4px 0 10px}.studio-box span{color:#8be0ff;font-size:12px}
.audio-section{background:#122640;border:1px solid #365e84;border-radius:12px;margin:12px 0;overflow:hidden}
.audio-section>summary{cursor:pointer;padding:13px 14px;font:900 18px Rajdhani,Arial,sans-serif;background:#1b3654;color:#e8f5ff;list-style:none}
.audio-section>summary::-webkit-details-marker{display:none}
.audio-section>summary::after{content:'▾';float:right;color:#79d4ff}
.audio-section:not([open])>summary::after{content:'▸'}
.audio-section> :not(summary){margin-left:10px;margin-right:10px;margin-bottom:10px}
.audio-section .fit-panel{margin:10px}
.obs-studio{background:#101f37;border:1px solid #4c80a6;border-radius:14px;padding:12px;margin:12px 0 18px}
.obs-preview-shell{width:100%;height:250px;background:repeating-linear-gradient(45deg,#0d1c2f,#0d1c2f 15px,#13253a 15px,#13253a 30px);border:1px solid #5a7696;border-radius:13px;display:flex;align-items:center;justify-content:center;margin:14px 0;overflow:hidden}
.obs-preview-shell iframe{max-height:238px;max-width:100%;height:100%;width:auto;aspect-ratio:9/16;border:1px solid #ffffff4d;border-radius:4px;box-shadow:0 6px 20px #000b;background:#030d1d}
.obs-studio .inline{margin:8px 0;flex-wrap:wrap}.obs-studio .inline input{min-width:120px;flex:1}
#fxOptions .cols{grid-template-columns:1fr 1fr}.arena-fx{position:absolute;inset:0;z-index:12;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 50% 45%,rgba(255,255,255,.56),transparent 66%)}
.arena-fx.fx-hit{animation:fx-hit-pulse .24s ease-out both}.arena-fx.fx-ko{background:radial-gradient(ellipse at 50% 45%,rgba(255,234,116,.85),transparent 68%);animation:fx-ko-pulse .52s ease-out both}
@keyframes fx-hit-pulse{0%{opacity:calc(.82 * var(--fx-intensity,1))}100%{opacity:0}}
@keyframes fx-ko-pulse{0%{opacity:0}16%{opacity:calc(.88 * var(--fx-intensity,1))}100%{opacity:0}}
@media(max-width:1350px){.control-nav{top:0}.control-actions{bottom:0}}
@media(max-width:500px){#control{padding:12px}.control-actions{margin:12px -4px -4px}.control-actions button{min-width:130px}.obs-preview-shell{height:210px}.obs-preview-shell iframe{max-height:198px}.control-nav button{font-size:13px}}
@media(prefers-reduced-motion:reduce){#control [data-panel],.arena-fx{animation:none!important}}

.stat.low-life .hp-shell{box-shadow:0 0 18px #ff4c62,0 0 5px #ffec9a;animation:life-warning 1.2s ease-in-out infinite}
@keyframes life-warning{50%{box-shadow:0 0 7px #ff4c62,0 0 2px #ffec9a}}
@media(prefers-reduced-motion:reduce){.stat.low-life .hp-shell{animation:none}}

.tiktok-audit{margin:10px 0 16px;padding:12px;border:1px solid #48668d;border-radius:12px;background:#09182c;color:#e7f5ff}.tiktok-audit strong{font-size:17px}.gift-observations{max-height:180px;overflow-y:auto;font-size:13px;line-height:1.5;margin-top:8px}.gift-observation{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #294463;padding:5px 0}.gift-observation b{color:#ffe49a}.gift-observation span{color:#b4cfea}button[data-remove-gift]{border:1px solid #944861;background:#391727;color:#ffdae5;border-radius:8px;padding:6px 10px;cursor:pointer;margin-top:10px}

/* V2.9.1: canvas real por quadro, proporção preservada e botão de áudio clicável */
.victory-duo-sheet-wrap{flex:none;padding:4px 0}.victory-duo-sheet{width:450px!important;height:450px!important;max-width:94%;aspect-ratio:1;display:block;margin:auto;background:none!important;object-fit:contain;border:0;box-shadow:none;filter:drop-shadow(0 17px 13px #0009)}
.victory-scene .victory-duo-sheet-wrap{animation:none!important}.victory-scene .victory-duo-sheet{animation:none!important;transform:none!important}
.victory-audio-retry{pointer-events:auto;position:relative;z-index:15;border:2px solid #ffde70;background:#154174;border-radius:11px;color:#fff;padding:9px 15px;margin-top:10px;font:800 19px Rajdhani,Arial;cursor:pointer}
.victory-audio-retry[hidden]{display:none}

.chat-diagnostic{margin-top:14px;padding:12px;border:1px solid rgba(125,177,231,.26);border-radius:12px;background:rgba(10,24,46,.64)}
.chat-diagnostic h4{margin:0 0 8px;color:#e4f6ff;font-size:18px}
.chat-diagnostic .monitor-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.chat-diagnostic-reasons{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.chat-diagnostic-reasons span{padding:4px 7px;border:1px solid rgba(145,183,222,.26);border-radius:6px;background:rgba(4,16,33,.8);font-size:13px;color:#ebf6ff}
#chatStatus{color:#f5e6a5;font-weight:750;line-height:1.35}

/* Painel VPS: a senha não aparece na fonte OBS. */
.admin-login[hidden]{display:none!important}
.admin-login{position:sticky;top:0;z-index:200;background:#10203a;border:2px solid #50d1f5;border-radius:14px;padding:16px;margin:0 0 18px;box-shadow:0 12px 34px #0009;color:#f2f8ff}
.admin-login h2{margin:0 0 8px;font-size:21px}.admin-login p{font-size:15px;line-height:1.35}
.admin-login input{display:block;width:100%;padding:12px;margin:8px 0 12px;border-radius:8px;font-size:17px}
.admin-login button{padding:11px 16px;font-weight:800}.admin-login #adminLoginMessage{color:#ffda9d;min-height:20px}
