*{box-sizing:border-box}html{background:#07090d}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:#0b0d10;color:#f5f5f5;min-height:100vh}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 15% 0%,rgba(255,255,255,.045),transparent 28%),radial-gradient(circle at 90% 100%,rgba(255,255,255,.035),transparent 30%);z-index:-1}a{color:#aaa;text-decoration:none;margin-left:20px}a:hover{color:white}.top{height:70px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #25282d;background:rgba(16,19,24,.94);position:sticky;top:0;z-index:100;backdrop-filter:blur(12px)}.brand{font-weight:900;letter-spacing:2px}.brand span{font-weight:400;color:#888}.top nav a{margin-left:18px}.tv-hide{display:none}main{max-width:1500px;margin:auto;padding:30px 24px}.hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:20px}.eyebrow{font-size:12px;letter-spacing:2px;color:#999}.hero h1{font-size:38px;margin:5px 0}.hero p{color:#aaa}.roundbox{border:1px solid #333;border-radius:18px;padding:15px 24px;text-align:center;color:#aaa;min-width:125px;background:rgba(13,16,20,.78)}.roundbox span{display:block;font-size:11px;letter-spacing:2px}.roundbox strong{display:inline-block;font-size:40px;color:white;line-height:1}.roundbox small{font-size:14px;margin-left:4px}.grid2{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.card{background:rgba(19,22,27,.92);border:1px solid #282c32;border-radius:20px;padding:22px;margin-bottom:20px;box-shadow:0 14px 45px rgba(0,0,0,.16)}.card h2{margin-top:0}.form input{background:#0b0d10;border:1px solid #343941;color:white;padding:12px;border-radius:10px;width:100%;outline:none}.form input:focus{border-color:#777;box-shadow:0 0 0 3px rgba(255,255,255,.05)}.row{display:flex;gap:10px;margin:10px 0}.row>*{flex:1}.form label{color:#aaa;font-size:12px}.form button,button{border:0;border-radius:10px;padding:11px 15px;background:#eee;color:#111;font-weight:800;cursor:pointer;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}.form button:hover,button:hover{transform:translateY(-1px);filter:brightness(1.06)}.primary,.next{background:#e6e6e6;font-size:15px}.save-button{margin-top:14px}.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:15px}.flash{padding:12px 16px;background:#1f3025;border:1px solid #315f3d;border-radius:10px;margin-bottom:20px}.players-admin{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.player-row{display:flex;gap:10px;align-items:center;background:#0d1014;padding:10px;border-radius:12px;min-width:0}.player-row img{width:38px;height:38px;object-fit:cover;border-radius:50%;flex:none}.player-row span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-row em{color:#aaa;font-style:normal}.danger{background:#32171a;color:#ff9b9b;padding:5px 9px}.dangerzone{border-color:#3a2024}.dangerbig{background:#32171a;color:#ff9b9b}.matches{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.match{background:#0c0f13;border:1px solid #2b3037;border-radius:16px;padding:18px;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.match:hover{transform:translateY(-2px);border-color:#444}.table{font-size:11px;letter-spacing:2px;color:#888}.versus{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:18px 0}.versus span{color:#777}.result{display:flex;gap:7px}.result button{flex:1;font-size:11px}.done{color:#8fd09d;text-align:center}.next{margin-top:18px;width:100%}.ranking{overflow:hidden}.rankhead,.rankrow{display:grid;grid-template-columns:45px 1fr 45px 45px 45px 70px;align-items:center;gap:8px;padding:12px 10px}.rankhead{font-size:11px;color:#777;text-transform:uppercase}.rankrow{background:#0d1014;border-top:1px solid #20242a;transition:transform .55s cubic-bezier(.2,.8,.2,1),background .35s ease,box-shadow .35s ease}.rankrow.leader{background:#191b16}.rankrow.rank-moved{animation:rankMove .7s ease both;background:#191b16}.pos{font-size:20px;font-weight:900}.pname{display:flex;align-items:center;gap:12px;min-width:0}.pname img{width:45px;height:45px;border-radius:50%;object-fit:cover}.pname b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pname small,.fight small{display:block;color:#777;font-size:11px;margin-top:3px}.rankrow>strong{font-size:22px}.publichero h1{font-size:44px}.publicmatches .match{position:relative}.fight{display:grid;grid-template-columns:1fr 40px 1fr;align-items:center;text-align:center;gap:8px;margin:15px 0}.fight img{width:65px;height:65px;object-fit:cover;border-radius:50%;display:block;margin:0 auto 7px}.fight span{color:#777;font-weight:900}.status{text-align:center;font-size:11px;letter-spacing:1px;color:#777}.finished{opacity:.82}.live-dot,#live{color:#78d98a;font-size:12px;letter-spacing:1px;animation:livePulse 1.8s infinite}.bye-public{display:flex;align-items:center;justify-content:center;gap:18px;padding:18px;text-align:center}.bye-public img{width:70px;height:70px;border-radius:50%;object-fit:cover}.bye-public small,.bye-public strong{display:block;margin-top:5px}.bye-public strong{font-size:20px}.pname a{color:white;margin:0}.playerprofile{display:flex;align-items:center;gap:30px}.profilephoto{width:130px;height:130px;object-fit:cover;border-radius:50%}.stats{display:flex;gap:35px}.stats b{display:block;font-size:30px}.stats small{color:#777}.historyrow{display:grid;grid-template-columns:120px 1fr 100px;padding:14px;border-top:1px solid #24282d}.tvbutton,.nextlink,.fullscreen{background:#e8e8e8;color:#111;padding:10px 14px;border-radius:10px;font-weight:800;font-size:12px;border:0}.fullscreen{cursor:pointer}.tournament-logo{max-width:160px;max-height:90px;object-fit:contain}.brandhero{display:flex;align-items:center;gap:18px}.logo-frame{width:170px;height:100px;display:flex;align-items:center;justify-content:center;flex:none}.logo-frame.empty-logo{border:1px dashed #343941;border-radius:16px;color:#555;font-size:12px;letter-spacing:2px}.uploadgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.asset-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.asset-editor{background:#0d1014;border:1px solid #252a30;border-radius:16px;padding:12px}.asset-head{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:10px}.asset-head span{font-size:10px;color:#666;text-align:right}.asset-preview{height:130px;border-radius:12px;background:#080a0e;border:1px dashed #343941;display:flex;align-items:center;justify-content:center;overflow:hidden;color:#555;font-size:11px;letter-spacing:1px;background-position:center;background-size:cover}.asset-preview img{max-width:90%;max-height:110px;object-fit:contain}.upload-drop{display:block;margin-top:10px;border:1px solid #30353d;border-radius:10px;padding:11px;text-align:center;color:#ddd;cursor:pointer;background:#11151a}.upload-drop input{display:none}.ghost{background:#15191e;color:#ccc;margin-top:8px}.danger-outline{border:1px solid #54262c;color:#ff9b9b;width:100%}.muted{color:#777;font-size:12px}.podium{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:15px 0 20px}.podium-item{text-align:center;background:rgba(12,15,19,.88);border:1px solid #292e35;border-radius:18px;padding:14px;animation:podiumIn .6s ease both}.podium-item.rank-1{transform:translateY(-8px);border-color:#777;box-shadow:0 12px 30px rgba(0,0,0,.2)}.podium-item img{width:72px;height:72px;display:block;margin:4px auto 8px;border-radius:50%;object-fit:cover}.podium-item b,.podium-item strong,.podium-item small{display:block;margin-top:4px}.podium-item strong{font-size:20px}.podium-item small{color:#777}.medal{font-size:24px}.toprow{border-left:3px solid #777}.tv-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:20px;position:relative;z-index:2}.public-app{position:relative}.tv-background{position:fixed;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat;opacity:0;z-index:-3;transition:opacity .8s ease,transform 7s ease}.tv-background:not([style="background-image:url('')"]){opacity:.28;transform:scale(1.035)}.tv-vignette{position:fixed;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(circle at center,transparent 15%,rgba(4,6,10,.58) 90%),linear-gradient(180deg,rgba(4,6,10,.65),rgba(4,6,10,.88))}.tv-footer{display:flex;justify-content:space-between;color:#666;font-size:10px;letter-spacing:1px;padding:0 8px 8px;position:relative;z-index:2}.state-pulse .ranking-card,.state-pulse .matches-card{animation:statePulse .55s ease}.match-enter{animation:matchIn .55s cubic-bezier(.2,.8,.2,1) both}.winner-overlay{display:none;position:fixed;inset:0;z-index:9999;background:radial-gradient(circle at center,#252b35 0,#07080a 68%);align-items:center;justify-content:center;flex-direction:column;text-align:center;overflow:hidden}.winner-overlay.show{display:flex;animation:ceremonyFade .8s ease}.winner-logo{max-width:220px;max-height:110px;object-fit:contain;margin-bottom:14px;animation:logoReveal 1s ease}.winner-kicker{animation:slideUp .8s .15s both}.winner-overlay h2{font-size:30px;letter-spacing:4px;animation:slideUp .8s .35s both}.winner-overlay h1{font-size:76px;margin:16px 0;text-transform:uppercase;letter-spacing:2px;animation:winnerReveal 1.1s .55s cubic-bezier(.15,.8,.2,1) both;text-shadow:0 0 45px rgba(255,255,255,.15)}.winner-photo{width:230px;height:230px;border-radius:50%;object-fit:cover;border:5px solid #ddd;box-shadow:0 0 70px rgba(255,255,255,.14),0 0 0 12px rgba(255,255,255,.04);animation:photoReveal 1s .3s both}.winner-points{font-size:28px;font-weight:900;animation:slideUp .8s .8s both}.winner-overlay p{color:#aaa}.winner-glow{position:absolute;width:70vw;height:70vw;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.11),transparent 60%);animation:glow 3s ease-in-out infinite}.confetti-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden}.confetti-layer i{position:absolute;top:-30px;width:8px;height:16px;border-radius:2px;background:#fff;animation:fall linear forwards;opacity:.9}.round-banner{position:fixed;left:50%;top:50%;transform:translate(-50%,-42%) scale(.85);opacity:0;z-index:9998;background:rgba(8,10,14,.96);border:1px solid #444;border-radius:24px;padding:28px 60px;text-align:center;box-shadow:0 30px 100px rgba(0,0,0,.55);transition:opacity .35s ease,transform .45s cubic-bezier(.2,.8,.2,1);pointer-events:none}.round-banner.show{opacity:1;transform:translate(-50%,-50%) scale(1)}.round-banner span,.round-banner strong,.round-banner small{display:block}.round-banner span{font-size:12px;letter-spacing:3px;color:#aaa}.round-banner strong{font-size:52px;margin:8px 0}.round-banner small{color:#777}.ceremony-mode .publichero,.ceremony-mode .tv-layout,.ceremony-mode .tv-footer{visibility:hidden}.ceremony-mode .winner-overlay{display:flex}.ceremony-mode .winner-overlay.show{animation:ceremonyFade .8s ease}@keyframes livePulse{0%,100%{opacity:1}50%{opacity:.45}}@keyframes rankMove{0%{transform:translateY(-18px);opacity:.3}100%{transform:translateY(0);opacity:1}}@keyframes podiumIn{from{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes matchIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes statePulse{0%{box-shadow:0 0 0 rgba(255,255,255,0)}45%{box-shadow:0 0 45px rgba(255,255,255,.08)}100%{box-shadow:0 0 0 rgba(255,255,255,0)}}@keyframes ceremonyFade{from{opacity:0}to{opacity:1}}@keyframes logoReveal{from{opacity:0;transform:scale(.65)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes winnerReveal{from{opacity:0;transform:scale(.55);filter:blur(8px)}to{opacity:1;transform:scale(1);filter:blur(0)}}@keyframes photoReveal{from{opacity:0;transform:scale(.5) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes glow{0%,100%{transform:scale(.9);opacity:.55}50%{transform:scale(1.1);opacity:.85}}@keyframes fall{to{top:110%;transform:translateX(70px) rotate(720deg);opacity:0}}

.tv-page{background:#06080c}.tv-page main{max-width:1800px;padding:24px 28px}.tv-page .publichero{margin-bottom:18px}.tv-page .publichero h1{font-size:50px}.tv-page .publichero p{font-size:15px}.tv-page .roundbox{min-width:170px;padding:18px 28px}.tv-page .roundbox strong{font-size:54px}.tv-page .ranking-card,.tv-page .matches-card{background:rgba(12,15,20,.84);backdrop-filter:blur(10px)}.tv-page .rankhead,.tv-page .rankrow{grid-template-columns:52px 1fr 50px 50px 50px 80px}.tv-page .rankrow{padding:11px 12px}.tv-page .pname img{width:48px;height:48px}.tv-page .rankrow>strong{font-size:24px}.tv-page .match{padding:14px}.tv-page .fight{margin:10px 0}.tv-page .fight img{width:58px;height:58px}.tv-page .matches{grid-template-columns:repeat(2,1fr);gap:10px}.tv-page .podium{gap:8px;margin:10px 0 12px}.tv-page .podium-item{padding:9px}.tv-page .podium-item img{width:58px;height:58px}.tv-page .podium-item strong{font-size:17px}.tv-page .card{border-radius:18px}.tv-page .sectionhead h2{font-size:22px}

@media(min-width:1500px){.tv-page .rankrow{padding:12px 14px}.tv-page .pname img{width:50px;height:50px}.tv-page .fight img{width:64px;height:64px}.tv-page .match{padding:16px}}
@media(max-width:1050px){.tv-layout{grid-template-columns:1fr}.asset-grid,.grid2{grid-template-columns:1fr}.matches{grid-template-columns:1fr}.players-admin{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){main{padding:20px 14px}.grid2,.matches,.players-admin,.asset-grid{grid-template-columns:1fr}.hero{align-items:flex-start;flex-direction:column}.hero h1,.publichero h1{font-size:30px}.roundbox{align-self:stretch}.top nav{display:none}.row{flex-wrap:wrap}.rankhead,.rankrow{grid-template-columns:30px 1fr 30px 30px 30px 50px}.podium{grid-template-columns:1fr}.podium-item.rank-1{transform:none}.brandhero{align-items:flex-start}.logo-frame{width:105px}.tournament-logo{max-width:100px;max-height:70px}.winner-overlay h1{font-size:42px}.winner-photo{width:170px;height:170px}.winner-overlay h2{font-size:20px}.round-banner{width:90%;padding:24px}.round-banner strong{font-size:38px}.playerprofile{flex-direction:column}.stats{gap:15px;flex-wrap:wrap}.historyrow{grid-template-columns:90px 1fr 70px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
.scanner-box{margin:15px 0}.scanner{background:#080a0e;border:1px solid #2c3239;border-radius:16px;padding:12px;margin-top:12px}.scanner video{width:100%;max-height:320px;object-fit:cover;border-radius:12px}.checkin-manual{display:flex;gap:8px;margin-top:12px}.checkin-manual input{flex:1}.checkin-ok,.checkin-error{margin-top:12px;padding:10px;border-radius:12px}.checkin-ok{background:#112219;border:1px solid #284b34}.checkin-error{background:#281317;border:1px solid #5c2930}.checkin-card{display:flex;align-items:center;gap:14px}.checkin-card img{width:54px;height:54px;border-radius:50%;object-fit:cover}.checkin-card b,.checkin-card strong,.checkin-card small{display:block}.checkin-card b{color:#8ce7a1}.checkin-card strong{font-size:17px}.checkin-card small{color:#888}.roster-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.roster-player{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #252a30;border-radius:13px;background:#0d1014}.roster-player img{width:42px;height:42px;border-radius:50%;object-fit:cover}.roster-player div{flex:1;min-width:0}.roster-player b,.roster-player span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roster-player b{font-size:11px;color:#aaa}.roster-player strong{font-size:9px;color:#777}.roster-player.checked{border-color:#31563b}.roster-player.checked strong{color:#8ce7a1}.mini{padding:7px 9px;font-size:10px;text-decoration:none}.player-row>div{flex:1}.player-row small{display:block;color:#777}.timer-admin{font-size:32px;font-weight:900;letter-spacing:2px}.timer-admin.timeup{color:#ff8d8d}.table{display:flex;justify-content:space-between;align-items:center}.table span{font-size:10px;color:#777;border:1px solid #30353d;border-radius:999px;padding:3px 7px}.bo-score{display:flex;justify-content:center;gap:18px;font-size:30px;margin:8px}.bo-score span{color:#666}.standings-mini>div{display:grid;grid-template-columns:45px 1fr 90px 230px;gap:10px;padding:11px;border-top:1px solid #24282d;align-items:center}.standings-mini small{color:#888}.tv-page .bo-score{font-size:36px}.tv-page .match{min-height:180px}.tv-page .table{font-size:14px}.tv-page .roundbox small{font-size:11px}.tv-page .roundbox #tvTimer{font-variant-numeric:tabular-nums}@media(max-width:1000px){.roster-grid{grid-template-columns:1fr 1fr}.standings-mini>div{grid-template-columns:40px 1fr 70px}.standings-mini small{grid-column:2/-1}}@media(max-width:650px){.roster-grid{grid-template-columns:1fr}.checkin-manual{flex-direction:column}.standings-mini>div{grid-template-columns:35px 1fr}.standings-mini strong,.standings-mini small{grid-column:2}.player-create .row{display:grid;grid-template-columns:1fr}}

/* QR scanner V5 mobile */
.scanner-status{margin:10px 0;padding:10px;border-radius:10px;background:#111;color:#ddd;text-align:center}
.file-qr{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;margin:8px 0}
.file-qr input{display:none}
.qr-file-reader{width:1px;height:1px;overflow:hidden;opacity:0;position:absolute;pointer-events:none}
#qr-reader{max-width:420px;margin:0 auto}
#qr-reader video{border-radius:14px}

/* V5 Check-in lobby */
.checkin-board{margin:0 0 18px;padding:28px;position:relative;overflow:hidden}
.checkin-hero{display:flex;align-items:center;justify-content:space-between;gap:24px}
.checkin-hero h2{font-size:clamp(28px,4vw,52px);margin:4px 0}
.checkin-hero p{margin:0;opacity:.75}
.checkin-big{text-align:right}.checkin-big strong{display:block;font-size:clamp(54px,8vw,96px);line-height:.9}.checkin-big span{font-weight:800;letter-spacing:.08em}
.checkin-progress{height:10px;background:rgba(255,255,255,.1);border-radius:99px;overflow:hidden;margin:22px 0}
.checkin-progress span{display:block;height:100%;border-radius:99px;background:currentColor;transition:width .6s ease}
.checkin-live-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.checkin-tv-player{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.06);animation:checkinIn .45s ease both}
.checkin-tv-player img{width:52px;height:52px;border-radius:50%;object-fit:cover}.checkin-tv-player div{min-width:0;flex:1}.checkin-tv-player b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.checkin-tv-player small{opacity:.6}.checkin-tv-player strong{font-size:11px;white-space:nowrap}
.checkin-empty{text-align:center;padding:42px;opacity:.6;font-size:18px}
.checkin-pending{text-align:center;margin-top:16px;opacity:.6;font-size:13px}
.checkin-counter{margin-top:10px;font-size:14px}.checkin-counter strong{font-size:24px}.checkin-counter span{opacity:.6}
button:disabled{opacity:.45;cursor:not-allowed}
@keyframes checkinIn{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}

.checkin-celebration{position:fixed;inset:0;z-index:80;display:grid;place-items:center;pointer-events:none;opacity:0;visibility:hidden;background:rgba(4,6,10,.72);backdrop-filter:blur(8px)}
.checkin-celebration.show{opacity:1;visibility:visible;animation:checkinOverlayIn .35s ease both}
.checkin-celebration-glow{position:absolute;width:65vw;height:65vw;border-radius:50%;background:radial-gradient(circle,rgba(95,255,160,.20),transparent 68%);filter:blur(12px);animation:checkinGlow 1.8s ease-in-out infinite}
.checkin-celebration-card{position:relative;text-align:center;padding:44px 70px;border:1px solid rgba(255,255,255,.15);border-radius:34px;background:rgba(12,16,21,.92);box-shadow:0 30px 100px rgba(0,0,0,.55);transform:translateY(24px) scale(.92);animation:checkinCardIn .55s cubic-bezier(.2,.8,.2,1) both}
.checkin-celebration.show .checkin-celebration-card{animation:checkinCardIn .55s cubic-bezier(.2,.8,.2,1) both}
.checkin-celebration-kicker{font-size:clamp(16px,2vw,24px);font-weight:900;letter-spacing:.14em;opacity:.8;margin-bottom:18px}
.checkin-celebration-card img{width:clamp(130px,15vw,220px);height:clamp(130px,15vw,220px);object-fit:cover;border-radius:50%;border:5px solid rgba(255,255,255,.85);box-shadow:0 0 45px rgba(255,255,255,.16)}
.checkin-celebration-name{font-size:clamp(42px,6vw,86px);font-weight:1000;line-height:1;margin-top:22px}.checkin-celebration-code{font-size:clamp(14px,1.4vw,20px);opacity:.55;margin-top:8px}.checkin-celebration-ok{margin-top:20px;font-size:clamp(20px,2.2vw,32px);font-weight:1000;letter-spacing:.06em}
@keyframes checkinOverlayIn{from{opacity:0}to{opacity:1}}
@keyframes checkinCardIn{from{opacity:0;transform:translateY(35px) scale(.88)}60%{transform:translateY(-5px) scale(1.02)}to{opacity:1;transform:none}}
@keyframes checkinGlow{0%,100%{transform:scale(.92);opacity:.65}50%{transform:scale(1.05);opacity:1}}

/* V5 dedicated check-in station */
.checkin-station{max-width:980px;margin:0 auto;padding:28px 18px 60px}
.checkin-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}
.checkin-top h1{font-size:clamp(2rem,6vw,4rem);margin:.15em 0}
.checkin-count{display:flex;align-items:center;gap:12px;text-align:right}
.checkin-count strong{font-size:clamp(3rem,10vw,6rem);line-height:.8}
.checkin-count span{font-size:1rem;font-weight:700}
.checkin-scanner-card,.checkin-live-card{padding:28px;border-radius:24px;background:rgba(20,25,35,.88);border:1px solid rgba(255,255,255,.1);box-shadow:0 15px 50px rgba(0,0,0,.18);margin-bottom:20px}
.checkin-main-btn{width:100%;min-height:110px;font-size:clamp(1.4rem,4vw,2.2rem);font-weight:800;border:0;border-radius:20px;cursor:pointer}
.scanner-panel{margin-top:18px;text-align:center}
#liveReader{max-width:420px;margin:0 auto 12px}
.scanner-status{margin:10px 0 16px;font-weight:700}
.checkin-photo-btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 22px;border-radius:14px;background:#fff;color:#111;font-weight:800;cursor:pointer}
.checkin-photo-btn input{display:none}
.manual-row{display:flex;gap:10px;margin-top:18px}
.manual-row input{flex:1;min-width:0;font-size:1.1rem;padding:16px;border-radius:12px;border:1px solid #555;background:#111;color:#fff}
.manual-row button{padding:0 20px;border:0;border-radius:12px;font-weight:800;cursor:pointer}
.player-result{min-height:10px;margin-top:18px}
.confirmed{display:flex;align-items:center;gap:18px;padding:18px;border-radius:18px;background:rgba(30,170,90,.16);border:1px solid rgba(80,230,140,.35);animation:checkinPop .45s ease}
.confirmed img{width:86px;height:86px;border-radius:50%;object-fit:cover}
.confirmed small{font-weight:800}.confirmed h2{margin:4px 0;font-size:clamp(1.4rem,4vw,2.4rem)}
.checkin-error{padding:16px;border-radius:14px;background:rgba(200,60,60,.15);border:1px solid rgba(255,100,100,.3);font-weight:700}
.connection{font-weight:800}.connection.good{opacity:.9}.connection.bad{opacity:.75}
@keyframes checkinPop{0%{transform:scale(.94);opacity:0}100%{transform:scale(1);opacity:1}}
@media(max-width:650px){.checkin-top{align-items:flex-start}.manual-row{flex-direction:column}.manual-row button{min-height:52px}.checkin-scanner-card,.checkin-live-card{padding:18px}}

.match-winner{position:relative;transform:scale(1.03)}
.match-winner b{font-weight:900}
.match-duration{font-size:.72rem;letter-spacing:.04em;opacity:.72;margin-top:.35rem;text-align:center}
.match.finished .status{font-weight:900}

.member-search{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.member-search input{flex:1;min-width:260px;background:#0b0d10;border:1px solid #30353d;color:#fff;padding:12px;border-radius:10px}.member-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:18px}.member-card{display:flex;gap:14px;align-items:center;padding:14px;border:1px solid #292e35;border-radius:16px;background:#0d1014;color:#fff;margin:0}.member-card img{width:72px;height:72px;border-radius:50%;object-fit:cover}.member-card b,.member-card small,.member-card span,.member-card strong{display:block}.member-card small,.member-card span{color:#888;font-size:11px;margin-top:4px}.member-card strong{font-size:11px;margin-top:7px}.member-profile-hero{display:flex;gap:25px;align-items:center}.game-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.game-stat{padding:18px;border:1px solid #292e35;border-radius:16px;background:#0d1014}.game-stat>b,.game-stat>strong,.game-stat>span,.game-stat>small{display:block}.game-stat>strong{font-size:36px;margin:10px 0}.game-stat>span,.game-stat>small{color:#888;font-size:12px;margin-top:5px}.member-admin-summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:18px;border:1px solid #292e35;border-radius:16px;background:#0d1014}.member-admin-summary strong{font-size:36px}.member-admin-summary span{color:#888}.member-admin-summary p{width:100%;margin:0;color:#888;font-size:12px}.danger-outline{background:#1b1113!important}.danger-outline.mini{padding:5px 8px;font-size:10px}.draw-overlay{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;background:rgba(3,5,8,.96);transition:opacity .25s ease,visibility .25s ease;isolation:isolate}.draw-overlay.show{opacity:1;visibility:visible}.draw-card{width:min(1000px,90vw);max-height:88vh;overflow:auto;text-align:center;padding:42px;border:2px solid rgba(255,205,45,.55);border-radius:30px;background:#10141b;box-shadow:0 0 0 1px rgba(255,205,45,.12),0 0 70px rgba(255,205,45,.18),0 40px 120px rgba(0,0,0,.8);position:relative;z-index:3;animation:drawCardIn .35s cubic-bezier(.2,.8,.2,1) both}.draw-overlay.show .draw-glow{z-index:1}.draw-card .eyebrow{color:#f2c52b}.draw-card h2{color:#fff;text-shadow:0 0 24px rgba(255,205,45,.22)}.draw-shuffle{color:#ffd42f}.draw-pair{background:#151a22;border-color:rgba(255,205,45,.25)}@keyframes drawCardIn{from{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.draw-card h2{font-size:54px;margin:10px 0}.draw-shuffle{font-size:30px;font-weight:1000;letter-spacing:.08em;min-height:38px}.draw-pairings{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px;margin-top:25px}.draw-pair{padding:14px;border:1px solid #2e343c;border-radius:14px;display:grid;grid-template-columns:70px 1fr 35px 1fr;align-items:center;gap:8px;opacity:0;transform:translateY(15px);animation:drawPairIn .5s ease forwards}.draw-pair span{font-size:10px;color:#777}.draw-pair b{font-size:15px}.draw-pair em{font-style:normal;color:#777}.draw-card #drawStatus{margin-top:20px;color:#aaa;font-weight:800}.draw-glow{position:absolute;width:70vw;height:70vw;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.10),transparent 65%);animation:glow 2.5s ease-in-out infinite}@keyframes drawPairIn{to{opacity:1;transform:none}}@media(max-width:800px){.member-profile-hero{align-items:flex-start;flex-direction:column}.draw-card h2{font-size:34px}.draw-pair{grid-template-columns:50px 1fr 25px 1fr}}

.member-form .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.member-form label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:800}.member-form label.full{grid-column:1/-1}.member-form input,.member-form textarea{background:#0b0d10;border:1px solid #30353d;color:#fff;padding:12px;border-radius:10px;font:inherit}.member-form textarea{resize:vertical}.member-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}@media(max-width:700px){.member-form .form-grid{grid-template-columns:1fr}.member-form label.full{grid-column:auto}}

.branding-card{margin-bottom:14px}.branding-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.branding-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:800}.brand-preview{max-width:140px;max-height:50px;object-fit:contain;filter:grayscale(1);background:#fff;padding:6px;border-radius:8px}.member-actions{display:flex;gap:6px;margin-top:8px}.member-actions a{font-size:10px;padding:5px 8px;border:1px solid #333;border-radius:7px}.hero-actions{display:flex;gap:8px;flex-wrap:wrap}.edit-preview{display:flex;gap:14px;align-items:center;margin-bottom:18px;padding:12px;border:1px solid #292e35;border-radius:14px}.edit-preview img{width:78px;height:78px;border-radius:50%;object-fit:cover}.edit-preview b,.edit-preview small{display:block}.edit-preview small{color:#888;margin-top:5px}

.qr-counts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.qr-counts>div{background:#0d1014;border:1px solid #292e35;border-radius:14px;padding:15px;text-align:center}.qr-counts b,.qr-counts span{display:block}.qr-counts b{font-size:28px}.qr-counts span{font-size:10px;color:#888;margin-top:4px}.qr-row{display:grid;grid-template-columns:1.4fr 1fr .7fr .6fr;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid #222}.qr-row:last-child{border-bottom:0}.qr-row small,.qr-row b{display:block}.qr-row small{font-size:10px;color:#777;margin-top:4px;word-break:break-all}.qr-status{font-size:9px;font-weight:900;letter-spacing:1px;padding:5px 8px;border-radius:7px;border:1px solid #333}.qr-status.assigned{color:#79d98b}.qr-status.available{color:#aaa}.qr-status.blocked{color:#ff7474}.qr-bind-card{min-height:420px}.bind-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.scan-large{width:100%;font-size:16px;padding:18px}.bind-reader{width:100%;max-width:360px;margin:15px auto}.bind-grid label{display:block;font-size:12px;font-weight:800;margin-bottom:10px}.bind-grid select,.bind-grid input{width:100%;padding:12px;border-radius:10px;background:#0b0d10;border:1px solid #30353d;color:#fff}.member-pick{display:flex;flex-direction:column;width:100%;padding:10px;background:#11151a;border:1px solid #292e35;color:#fff;text-align:left}.member-pick small{color:#888}.bind-preview{margin:15px 0;padding:15px;border:1px dashed #444;border-radius:12px;color:#999}.qr-member-card{text-align:center}.qr-big{width:260px;height:260px;margin:20px auto;padding:12px;border:5px solid #000;background:#fff}.qr-big img{width:100%;height:100%;object-fit:contain}.qr-member-card code{display:block;font-size:10px;word-break:break-all;color:#888;margin:10px}.empty-qr{padding:60px 20px;text-align:center}
@media(max-width:750px){.qr-counts{grid-template-columns:repeat(2,1fr)}.qr-row{grid-template-columns:1fr 1fr}.bind-grid{grid-template-columns:1fr}}

.bind-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.bind-actions button{flex:1;min-width:180px}.danger-outline{border:1px solid #7a3030;background:transparent;color:#ff8a8a;border-radius:8px;padding:8px 12px;font-weight:800}.mini{padding:6px 9px;font-size:10px}

.microqr-badge{display:inline-block;background:#fff;color:#000;border:2px solid #000;border-radius:8px;padding:7px 11px;font-size:10px;font-weight:1000;letter-spacing:1.5px;margin-bottom:18px}.micro-camera{width:100%;max-width:520px;border-radius:16px;background:#000;border:2px solid #333;margin-top:14px}.or-divider{display:flex;align-items:center;gap:10px;color:#777;margin:18px 0}.or-divider:before,.or-divider:after{content:"";height:1px;background:#333;flex:1}.photo-drop{display:flex;align-items:center;justify-content:center;min-height:70px;border:2px dashed #444;border-radius:14px;cursor:pointer;font-weight:900}.photo-drop input{display:none}.scan-status{margin-top:12px;padding:12px;border-radius:10px;background:#11151a;color:#aaa;font-size:12px}.scan-status.ok{border:1px solid #376d44;color:#8ee0a0}.detected-card{background:#0b0d10;border:1px solid #30353d;border-radius:14px;padding:16px;margin-bottom:18px}.detected-label{display:block;font-size:9px;letter-spacing:2px;color:#888;font-weight:900;margin-bottom:8px}.detected-card code{display:block;word-break:break-all;color:#fff;font-size:12px}.member-pick{display:flex;flex-direction:column;width:100%;padding:10px;background:#11151a;border:1px solid #292e35;color:#fff;text-align:left}.member-pick small{color:#888;margin-top:3px}.member-pick:hover{background:#1b2026}.bind-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.bind-actions button{flex:1;min-width:180px}

/* ===== JAWKA V6 vertical slice ===== */
.v6-shell{max-width:1100px;margin:0 auto;padding:32px 18px}.v6-shell.narrow{max-width:520px}.v6-card{background:rgba(14,17,24,.92);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:24px;box-shadow:0 20px 60px rgba(0,0,0,.2)}.auth-card{margin-top:8vh}.v6-form{display:grid;gap:16px}.v6-form label,.station-card label{display:grid;gap:8px;font-weight:700}.v6-form input,.station-card select{width:100%;box-sizing:border-box;background:#0a0d13;color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:13px}.v6-primary,.v6-ghost{border:0;border-radius:14px;padding:13px 18px;font-weight:900;cursor:pointer}.v6-primary{background:#fff;color:#090b10}.v6-primary:disabled{opacity:.4;cursor:not-allowed}.v6-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.15)}.v6-page-head,.station-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.id-card{background:linear-gradient(145deg,#151922,#090b10)}.id-card-brand{font-weight:900;letter-spacing:.15em}.profile-photo{width:110px;height:110px;object-fit:cover;border-radius:24px;margin:22px 0}.id-card-name{font-size:26px;font-weight:900}.id-card-code{opacity:.65}.id-card-points{font-size:20px;font-weight:900;margin:18px 0}.big-number{font-size:58px;font-weight:900}.stat-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}.history-list{display:grid}.history-item{display:grid;grid-template-columns:1fr 2fr auto;gap:14px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}.win{color:#7df2a7}.loss{color:#ff8b8b}.small{font-size:13px}.v6-link{color:#fff}.station-shell{max-width:900px;margin:0 auto;padding:28px 18px}.station-live{color:#7df2a7;font-weight:900}.station-card{background:rgba(12,15,21,.96);border:1px solid rgba(255,255,255,.1);border-radius:28px;padding:30px;margin-bottom:18px}.station-card>h2{text-align:center;font-size:32px}.station-icon{text-align:center;font-size:64px}.station-card>p{text-align:center}.station-players{display:grid;gap:12px;margin:20px 0}.station-player{display:flex;align-items:center;gap:14px;padding:14px;border-radius:18px;background:rgba(255,255,255,.05)}.station-player img{width:60px;height:60px;object-fit:cover;border-radius:16px}.station-player small{display:block;opacity:.6}.versus-names{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;margin-bottom:28px}.game-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.game-grid button{padding:18px;border-radius:16px;background:#10141c;color:#fff;border:1px solid rgba(255,255,255,.1);font-weight:900;cursor:pointer}.game-grid button.selected{outline:2px solid #fff;background:#fff;color:#090b10}.station-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.live-game{text-align:center;font-size:20px;margin:16px}.live-timer{text-align:center;font-size:54px;font-weight:900;margin:20px}.danger{background:#ff6f61}.versus-tv{position:fixed;inset:0;background:radial-gradient(circle at 50% 30%,#242a39 0,#090b10 55%,#050608 100%);color:#fff;display:grid;place-items:center;text-align:center;padding:5vw;box-sizing:border-box}.tv-eyebrow{position:absolute;top:5vh;left:5vw;letter-spacing:.18em;font-weight:900;opacity:.65}.tv-logo{font-size:12vw;font-weight:1000;letter-spacing:.1em}.versus-tv #duel{width:min(1400px,90vw)}.tv-game{font-size:28px;font-weight:900;margin-bottom:28px}.tv-players{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:40px}.tv-players article{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:34px;padding:30px}.tv-players img{width:180px;height:180px;object-fit:cover;border-radius:50%;border:6px solid rgba(255,255,255,.8)}.tv-name{font-size:42px;font-weight:1000;margin-top:15px}.tv-code,.tv-record{opacity:.6;margin-top:6px}.tv-stat{font-size:22px;font-weight:900;margin-top:18px}.tv-vs{font-size:72px;font-weight:1000}.tv-status{font-size:42px;font-weight:1000;margin-top:34px}.tv-reward{font-size:50px;font-weight:1000;margin-top:20px}.tv-pop{animation:v6pop .7s ease}@keyframes v6pop{0%{transform:scale(.97);opacity:.5}100%{transform:scale(1);opacity:1}}
@media(max-width:720px){.profile-grid{grid-template-columns:1fr}.game-grid{grid-template-columns:1fr}.tv-players{grid-template-columns:1fr;gap:14px}.tv-vs{font-size:40px}.tv-players img{width:110px;height:110px}.tv-name{font-size:26px}.tv-status{font-size:26px}.history-item{grid-template-columns:1fr}.station-head{align-items:flex-start;flex-direction:column}}
.versus-overlay{position:fixed;inset:0;z-index:2000;background:radial-gradient(circle at 50% 30%,rgba(40,46,62,.98),rgba(4,6,10,.99) 70%);display:none;align-items:center;justify-content:center;text-align:center}.versus-overlay.show{display:flex;animation:v6pop .45s ease}.versus-overlay-inner{width:min(1500px,90vw)}.versus-tv-kicker{font-weight:900;letter-spacing:.2em;opacity:.7;font-size:18px}.vo-game{font-size:32px;font-weight:900;margin:20px}.vo-players{display:grid;grid-template-columns:1fr auto 1fr;gap:35px;align-items:center}.vo-players article{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);border-radius:32px;padding:30px}.vo-players img{width:190px;height:190px;object-fit:cover;border-radius:50%;border:5px solid rgba(255,255,255,.85)}.vo-players b{display:block;font-size:42px;margin-top:14px}.vo-players small{display:block;margin-top:10px;opacity:.65;font-size:20px}.vo-vs{font-size:80px;font-weight:1000}.vo-status{font-size:42px;font-weight:1000;margin-top:30px}.vo-reward{font-size:52px;font-weight:1000;margin-top:20px}@media(max-width:900px){.vo-players{grid-template-columns:1fr;gap:10px}.vo-vs{font-size:40px}.vo-players img{width:110px;height:110px}.vo-players b{font-size:28px}.vo-status{font-size:28px}}
/* ===== JAWKA PUBLIC HOME / EVENTS / CREATOR ===== */
.public-home{min-height:calc(100vh - 70px)}
.home-hero{max-width:1180px;margin:0 auto;padding:72px 24px 54px;display:grid;grid-template-columns:1.5fr .7fr;gap:40px;align-items:center}
.home-hero h1{font-size:clamp(48px,7vw,88px);line-height:.94;margin:12px 0 22px;letter-spacing:-.055em}.home-hero h1 span{opacity:.55}.home-hero p{max-width:650px;color:#a7adb8;font-size:18px;line-height:1.65}.home-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.home-hero-mark{min-height:360px;border:1px solid rgba(255,255,255,.09);border-radius:36px;background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.12),rgba(255,255,255,.02) 45%,transparent 70%);display:grid;place-items:center;font-size:150px;font-weight:1000}.home-hero-mark small{font-size:12px;letter-spacing:.25em;margin-top:-110px;opacity:.5}
.home-section{max-width:1180px;margin:0 auto;padding:25px 24px 80px}.home-section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.home-section-head h1,.home-section-head h2{margin:5px 0;font-size:38px;letter-spacing:-.035em}.home-section-head p{margin:0;color:#8d94a0}.game-tabs{display:flex;gap:8px;overflow:auto;padding:4px 0 20px;scrollbar-width:none}.game-tabs::-webkit-scrollbar{display:none}.game-tabs a{white-space:nowrap;text-decoration:none;color:#9ca3af;border:1px solid rgba(255,255,255,.1);background:#0c1016;border-radius:999px;padding:10px 15px;font-size:12px;font-weight:900}.game-tabs a.active{background:#fff;color:#080a0f;border-color:#fff}.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.event-card{overflow:hidden;background:#0d1118;border:1px solid rgba(255,255,255,.09);border-radius:24px;box-shadow:0 18px 50px rgba(0,0,0,.18)}.event-cover{height:175px;background:linear-gradient(135deg,#202632,#0d1016);background-size:cover;background-position:center;display:flex;justify-content:space-between;align-items:flex-start;padding:16px;background-blend-mode:overlay}.event-cover span,.event-cover b{background:rgba(4,6,10,.75);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:8px 11px;font-size:10px;font-weight:900}.event-cover b{color:#9df2b4}.event-body{padding:20px}.event-date{font-size:11px;font-weight:900;letter-spacing:.1em;color:#9ea5b1;text-transform:uppercase}.event-body h3{font-size:23px;margin:8px 0}.event-body p{color:#9ca3af;line-height:1.55;min-height:50px}.event-meta{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;color:#7e8692;font-size:11px;margin:16px 0}.event-button{display:block;text-align:center;text-decoration:none}.empty-public{grid-column:1/-1;padding:60px;text-align:center;border:1px dashed rgba(255,255,255,.12);border-radius:24px;color:#9ca3af}
.narrow-event{max-width:880px}.event-detail{margin-top:18px;overflow:hidden;background:#0d1118;border:1px solid rgba(255,255,255,.09);border-radius:28px}.event-detail-cover{height:330px;background:linear-gradient(135deg,#202632,#0d1016);background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:22px}.event-detail-cover span{background:rgba(4,6,10,.78);border-radius:999px;padding:10px 14px;font-weight:900}.event-detail-body{padding:32px}.event-detail-body h1{font-size:48px;letter-spacing:-.04em;margin:8px 0}.event-lead{font-size:20px;color:#c4c9d1;line-height:1.55}.event-description{color:#a2a8b2;line-height:1.75;margin:25px 0}.event-detail-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:28px 0}.event-detail-meta div{padding:15px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:#10151d}.event-detail-meta small,.event-detail-meta b{display:block}.event-detail-meta small{font-size:9px;color:#737b88;margin-bottom:7px}.prereg-box{padding:24px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:#111720}.prereg-box h2{margin-top:0}.prereg-box small{display:block;color:#777f8c;margin-top:10px}.registered-ok{padding:14px 16px;border-radius:14px;background:rgba(75,220,130,.08);border:1px solid rgba(75,220,130,.25);color:#9df2b4;font-weight:800}
.creator-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.creator-grid textarea,.creator-grid select,.creator-grid input:not([type=checkbox]){width:100%;box-sizing:border-box;background:#0a0d13;color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:13px}.creator-grid textarea{resize:vertical}.checkline{display:flex!important;grid-template-columns:none!important;align-items:center;gap:10px}.checkline input{width:auto!important}.creator-list{display:grid}.creator-event{display:flex;justify-content:space-between;gap:14px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.08)}.creator-event b,.creator-event small{display:block}.creator-event small{color:#777f8c;margin-top:4px}.creator-event a{color:#fff;font-weight:900}.muted{color:#8d94a0}
@media(max-width:900px){.home-hero{grid-template-columns:1fr}.home-hero-mark{min-height:220px;font-size:100px}.event-grid{grid-template-columns:repeat(2,1fr)}.creator-grid{grid-template-columns:1fr}.event-detail-meta{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.home-hero{padding-top:40px}.event-grid{grid-template-columns:1fr}.home-section-head{align-items:flex-start;flex-direction:column}.event-detail-cover{height:220px}.event-detail-body{padding:22px}.event-detail-body h1{font-size:36px}.event-detail-meta{grid-template-columns:1fr}}

/* V6.0.2 — Creator pre-registration management */
.v6-actions,.creator-event-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.creator-event-actions{justify-content:flex-end}.creator-event-actions a{font-size:.88rem;text-decoration:none}.prereg-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:18px}.prereg-summary>div{display:flex;flex-direction:column;gap:5px}.prereg-summary strong{font-size:1.25rem}.prereg-table-wrap{overflow:auto}.prereg-table{width:100%;border-collapse:collapse;min-width:850px}.prereg-table th,.prereg-table td{padding:12px 10px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left;vertical-align:middle}.prereg-table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;opacity:.7}.prereg-table td small{display:block;opacity:.6;margin-top:3px}.status-pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.08);font-size:.78rem}.status-pill.ok{background:rgba(60,200,120,.14);color:#9ff0bf}.empty-state{text-align:center;padding:45px 20px}.empty-icon{font-size:2.5rem;margin-bottom:8px}@media(max-width:760px){.prereg-summary{grid-template-columns:1fr}.v6-actions{width:100%}.v6-actions a{flex:1;text-align:center}.creator-event-actions{justify-content:flex-start}}

/* V6.0.3 — Versus finish, player identity and points */
.member-points{display:block;margin-top:6px;font-size:.92rem;color:#ffe58a}
.tv-points{font-size:20px;font-weight:900;margin-top:10px;color:#ffe58a}
.versus-finish{text-align:center;position:relative;overflow:hidden}.finish-icon{font-size:82px;filter:drop-shadow(0 0 24px rgba(255,215,80,.35))}.finish-winner{font-size:clamp(32px,5vw,58px);font-weight:1000;margin-top:12px}.finish-score{font-size:20px;opacity:.7;margin-top:12px}.finish-reward{font-size:30px;font-weight:1000;color:#ffe58a;margin-top:22px}.finish-loading{font-size:13px;opacity:.55;margin-top:12px}.finish-pop{animation:finishPop .65s cubic-bezier(.2,.8,.2,1)}@keyframes finishPop{0%{opacity:0;transform:scale(.82) translateY(25px)}65%{opacity:1;transform:scale(1.04) translateY(0)}100%{transform:scale(1)}}
.result-processing{position:fixed;inset:0;z-index:3000;background:rgba(4,6,10,.88);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center}.result-processing[hidden]{display:none}.processing-card{min-width:280px;padding:35px;border-radius:28px;background:#10151d;border:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;box-shadow:0 25px 80px rgba(0,0,0,.5)}.processing-spinner{width:42px;height:42px;border:4px solid rgba(255,255,255,.15);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.tv-reward{color:#ffe58a}.vo-reward{color:#ffe58a}

/* V6 Versus ceremony */
.versus-overlay.stage-confirming .vo-players article{animation:versusSlide .65s cubic-bezier(.2,.8,.2,1) both}.versus-overlay.stage-confirming .vo-vs{animation:versusPulse 1s ease-in-out infinite}.versus-overlay.stage-ready .vo-status{animation:versusReady 1.2s ease-in-out infinite}.versus-overlay.stage-live .vo-players article{animation:versusFloat 2.4s ease-in-out infinite}.versus-overlay.stage-finished{background:radial-gradient(circle at 50% 35%,rgba(70,55,20,.98),rgba(4,6,10,.99) 72%)}.versus-overlay.stage-finished .vo-status{animation:versusWinner .8s cubic-bezier(.2,.8,.2,1) both}.versus-overlay.stage-finished .vo-reward{animation:versusReward .8s .2s cubic-bezier(.2,.8,.2,1) both}.versus-overlay.stage-finished .vo-players article:first-child{animation:versusWinnerCard .8s .1s cubic-bezier(.2,.8,.2,1) both}.versus-overlay.stage-finished .vo-players article:last-child{animation:versusLoseCard .6s both}.versus-overlay.stage-finished .vo-vs{opacity:.35;transform:scale(.85)}@keyframes versusSlide{from{opacity:0;transform:translateX(-70px) scale(.94)}to{opacity:1;transform:none}}@keyframes versusPulse{50%{transform:scale(1.12);opacity:.8}}@keyframes versusReady{50%{transform:scale(1.08);text-shadow:0 0 30px rgba(255,255,255,.7)}}@keyframes versusFloat{50%{transform:translateY(-8px)}}@keyframes versusWinner{from{opacity:0;transform:scale(.65)}to{opacity:1;transform:scale(1)}}@keyframes versusReward{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@keyframes versusWinnerCard{from{opacity:.3;transform:scale(.9)}to{opacity:1;transform:scale(1.03)}}@keyframes versusLoseCard{from{opacity:1}to{opacity:.55;transform:scale(.96)}}
/* JAWKA VERSUS EXPERIENCE ENGINE */
.jawka-arena{position:fixed;inset:0;overflow:hidden;background:#05070b;color:#fff;display:grid;place-items:center;font-family:Inter,Segoe UI,Arial,sans-serif}.arena-noise{position:absolute;inset:0;opacity:.035;background-image:radial-gradient(#fff .7px,transparent .7px);background-size:5px 5px;animation:arenaDrift 12s linear infinite}.arena-grid{position:absolute;inset:-20%;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:70px 70px;transform:perspective(500px) rotateX(60deg) translateY(35%);transform-origin:center bottom;opacity:.25;animation:gridMove 10s linear infinite}.arena-glow{position:absolute;width:55vw;height:55vw;border-radius:50%;filter:blur(70px);opacity:.16;pointer-events:none}.glow-a{background:#6d7cff;left:-20vw;top:-20vw}.glow-b{background:#ff4f7b;right:-20vw;bottom:-25vw}.arena-brand{position:absolute;top:4vh;left:4vw;font-weight:1000;letter-spacing:.2em;font-size:14px;z-index:5}.arena-brand span{opacity:.45}.audio-unlock{position:absolute;right:4vw;top:4vh;z-index:10;background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:10px 16px;font-size:11px;letter-spacing:.08em}.audio-unlock.active{background:rgba(255,255,255,.16)}.arena-stage{position:relative;width:min(1500px,90vw);text-align:center;z-index:2}.arena-title{font-size:clamp(70px,12vw,190px);line-height:.82;font-weight:1000;letter-spacing:-.06em;text-shadow:0 20px 70px rgba(0,0,0,.45);animation:arenaTitleIn 1.1s cubic-bezier(.15,.8,.2,1)}.arena-title span{opacity:.45}.idle-mark{font-size:clamp(50px,7vw,100px);margin-bottom:18px;animation:idleSpin 5s linear infinite}.idle-line,.waiting-opponent{margin-top:36px;font-weight:900;letter-spacing:.25em;font-size:14px;opacity:.72}.idle-pulse{margin:35px auto 0;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,.3);animation:idlePulse 1.8s infinite}.stage-kicker{font-size:16px;letter-spacing:.25em;font-weight:1000;opacity:.72;margin-bottom:16px}.stage-label{font-size:18px;letter-spacing:.3em;font-weight:1000;margin-bottom:20px}.reveal-single{width:min(330px,40vw);margin:0 auto}.reveal-single .arena-player-card{animation:playerReveal 1s cubic-bezier(.16,1,.3,1)}.arena-player-card{background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.035));border:1px solid rgba(255,255,255,.15);border-radius:34px;padding:26px;box-shadow:0 30px 80px rgba(0,0,0,.35);backdrop-filter:blur(14px)}.arena-player-card img{width:190px;height:190px;object-fit:cover;border-radius:50%;border:5px solid rgba(255,255,255,.82);box-shadow:0 0 55px rgba(255,255,255,.12)}.reveal-single .arena-player-card img{width:220px;height:220px}.tv-name{font-size:38px;font-weight:1000;margin-top:16px}.tv-code{font-size:13px;opacity:.5;margin-top:6px}.tv-points{font-size:21px;font-weight:1000;margin-top:13px}.tv-stat{font-size:17px;font-weight:900;margin-top:16px}.tv-record{font-size:13px;opacity:.55;margin-top:6px}.dots{display:inline-block;width:28px;text-align:left;overflow:hidden;vertical-align:bottom;animation:dots 1.1s steps(4,end) infinite}.arena-game{font-size:28px;font-weight:1000;margin-bottom:26px}.duel-grid{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:34px}.duel-grid article{min-width:0}.stage-ready .duel-grid article:first-child{animation:slideLeft .8s cubic-bezier(.16,1,.3,1)}.stage-ready .duel-grid article:last-child{animation:slideRight .8s cubic-bezier(.16,1,.3,1)}.vs-core{font-size:54px;font-weight:1000;animation:vsImpact .8s .45s cubic-bezier(.15,1.5,.3,1) both}.vs-core b{display:block;font-size:82px;letter-spacing:-.08em}.reward-banner{margin:28px auto 0;width:max-content;max-width:90%;padding:13px 22px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.06);font-size:14px;letter-spacing:.1em}.reward-banner strong{margin-left:10px;color:#ffe58a}.countdown-kicker{font-weight:1000;letter-spacing:.3em;font-size:18px;opacity:.7}.countdown-number{font-size:clamp(170px,30vw,430px);font-weight:1000;line-height:.85;text-shadow:0 0 80px rgba(255,255,255,.18)}.count-pulse{animation:countPulse .8s cubic-bezier(.15,1.5,.3,1)}.fight-call{font-size:clamp(90px,13vw,210px);animation:fightCall .75s cubic-bezier(.15,1.5,.3,1)}.live-kicker{color:#7df2a7}.live-grid .arena-player-card{animation:liveCardIn .7s ease}.vs-live{font-size:64px;font-weight:1000;opacity:.9}.live-footer{display:flex;justify-content:center;align-items:center;gap:35px;margin-top:24px;font-size:14px;letter-spacing:.12em}.live-footer strong{color:#ffe58a}.live-footer span:last-child{font-variant-numeric:tabular-nums;opacity:.65}.victory-flash{display:none}.victory-crown{font-size:90px;animation:crownDrop .8s .1s cubic-bezier(.16,1,.3,1) both}.stage-victory .arena-player-card{width:min(390px,70vw);margin:0 auto;animation:winnerCard 1s .25s cubic-bezier(.16,1,.3,1) both}.victory-reward{font-size:42px;font-weight:1000;color:#ffe58a;margin-top:20px;animation:slideUp .6s .7s both}.points-big{font-size:clamp(110px,20vw,260px);font-weight:1000;color:#ffe58a;line-height:.9;animation:pointsPop .9s cubic-bezier(.16,1,.3,1)}.points-flow{display:flex;justify-content:center;align-items:center;gap:25px;margin-top:25px;font-size:34px}.points-flow strong{opacity:.5}.points-flow b{font-size:52px}.points-caption{margin-top:18px;letter-spacing:.2em;font-size:12px;opacity:.55}.result-crown{font-size:20px;font-weight:1000;letter-spacing:.25em;margin-bottom:20px}.stage-result .arena-player-card{width:min(380px,70vw);margin:0 auto}.result-stat{font-size:17px;font-weight:900;margin-top:20px;color:#ffe58a}@keyframes arenaTitleIn{from{opacity:0;transform:scale(.82) translateY(30px);filter:blur(12px)}to{opacity:1;transform:none;filter:none}}@keyframes idleSpin{to{transform:rotate(360deg)}}@keyframes idlePulse{70%{box-shadow:0 0 0 22px transparent}100%{box-shadow:0 0 0 0 transparent}}@keyframes arenaDrift{to{transform:translate3d(10px,-8px,0)}}@keyframes gridMove{to{background-position:0 70px,70px 0}}@keyframes playerReveal{0%{opacity:0;transform:translateY(80px) scale(.72);filter:blur(15px)}100%{opacity:1;transform:none;filter:none}}@keyframes slideLeft{from{opacity:0;transform:translateX(-180px) rotate(-3deg)}to{opacity:1;transform:none}}@keyframes slideRight{from{opacity:0;transform:translateX(180px) rotate(3deg)}to{opacity:1;transform:none}}@keyframes vsImpact{0%{opacity:0;transform:scale(3) rotate(-8deg);filter:blur(12px)}60%{opacity:1;transform:scale(.86) rotate(2deg)}100%{transform:scale(1)}}@keyframes countPulse{0%{opacity:0;transform:scale(1.5);filter:blur(8px)}35%{opacity:1;transform:scale(.9);filter:none}100%{transform:scale(1)}}@keyframes fightCall{0%{opacity:0;transform:scale(.3)}60%{opacity:1;transform:scale(1.1)}100%{transform:scale(1)}}@keyframes liveCardIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}@keyframes victoryFlash{0%{opacity:0}15%{opacity:.95}100%{opacity:0}}@keyframes crownDrop{from{opacity:0;transform:translateY(-70px) scale(.5)}to{opacity:1;transform:none}}@keyframes winnerCard{from{opacity:0;transform:scale(.65) translateY(50px);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}@keyframes pointsPop{0%{opacity:0;transform:scale(.35)}60%{opacity:1;transform:scale(1.08)}100%{transform:scale(1)}}@keyframes slideUp{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@keyframes dots{from{width:0}to{width:28px}}@media(max-width:900px){.duel-grid{grid-template-columns:1fr;gap:12px}.vs-core{font-size:30px}.vs-core b{font-size:45px}.arena-player-card img,.reveal-single .arena-player-card img{width:120px;height:120px}.tv-name{font-size:26px}.reward-banner{font-size:11px}.live-footer{gap:12px;font-size:10px}.arena-brand{font-size:10px}.audio-unlock{font-size:9px}}

/* JAWKA VERSUS EXPERIENCE V2 */
.arena-particles{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:4}.particle{position:absolute;left:50%;top:50%;width:5px;height:18px;border-radius:4px;background:rgba(255,255,255,.9);box-shadow:0 0 14px rgba(255,255,255,.45);transform:translate(-50%,-50%) rotate(var(--r));animation:particleBurst 1s var(--delay) cubic-bezier(.1,.8,.2,1) both}.arena-scanline{position:absolute;inset:0;pointer-events:none;opacity:.08;background:linear-gradient(to bottom,transparent 0%,rgba(255,255,255,.35) 48%,transparent 52%);background-size:100% 12px;mix-blend-mode:screen;animation:scanlineMove 7s linear infinite}.screen-hit{animation:screenHit .45s cubic-bezier(.2,.8,.2,1)}.stage-ready{animation:stageEnter .65s cubic-bezier(.16,1,.3,1)}.stage-live{animation:liveEnter .7s cubic-bezier(.16,1,.3,1)}.stage-victory,.stage-points,.stage-result{animation:stageEnterLight .42s cubic-bezier(.2,.8,.2,1)}.stage-victory,.stage-points,.stage-result{filter:none}.stage-points .points-big{text-shadow:0 0 24px rgba(255,220,120,.22)}.stage-result .result-stat{animation:none}
@keyframes particleBurst{0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(var(--r))}15%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(.8) rotate(calc(var(--r) + 180deg))}}@keyframes scanlineMove{0%{transform:translateY(-20%)}100%{transform:translateY(20%)}}@keyframes screenHit{0%{transform:scale(1)}18%{transform:scale(1.012)}40%{transform:scale(.996)}100%{transform:scale(1)}}@keyframes stageEnter{from{opacity:0;transform:scale(.96);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}@keyframes liveEnter{from{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}@keyframes resultGlow{from{text-shadow:0 0 0 rgba(255,229,138,0)}to{text-shadow:0 0 22px rgba(255,229,138,.35)}}
.station-pending-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.station-pending-actions>*{flex:1;min-width:180px}.pending-player{position:relative}.pending-player .mini{flex:0 0 auto;min-width:auto;background:transparent;border:1px solid #54262c;color:#ff9b9b;margin-left:auto}.pending-player .mini:hover{background:#32171a}.station-players .station-player{display:flex;align-items:center;gap:12px}/* Jawka Arcade Experience - clean bumper */
.jawka-arena{background:#05070b}
.arena-brand,.audio-unlock{display:none!important}
.stage-idle{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:70vh}
.jawka-arcade-logo{width:min(62vw,920px);max-height:31vh;object-fit:contain;display:block;filter:drop-shadow(0 18px 45px rgba(0,0,0,.55));animation:jawkaLogoIn .9s cubic-bezier(.16,1,.3,1)}
.arcade-versus{margin-top:-8px;font-size:clamp(70px,9vw,150px);line-height:.85;font-weight:1000;letter-spacing:-.055em;text-shadow:0 18px 55px rgba(0,0,0,.5);animation:versusBumperIn .9s .08s cubic-bezier(.16,1,.3,1) both}
.stage-idle .idle-line{margin-top:30px;font-size:clamp(11px,1.1vw,16px);letter-spacing:.24em}
.stage-ranking{width:min(1100px,88vw)}
.ranking-kicker{font-size:14px;letter-spacing:.3em;font-weight:1000;opacity:.55;margin-bottom:12px}.ranking-game{font-size:clamp(36px,5vw,72px);font-weight:1000;letter-spacing:-.04em;margin-bottom:28px;animation:rankingTitle .6s cubic-bezier(.16,1,.3,1)}.ranking-list{display:grid;gap:10px}.rank-row{display:grid;grid-template-columns:52px 1fr 80px 90px 150px;align-items:center;gap:15px;padding:15px 20px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.045);text-align:left;animation:rankIn .55s cubic-bezier(.16,1,.3,1) both}.rank-row b{font-size:25px}.rank-row span{font-size:22px;font-weight:900}.rank-row strong{opacity:.7}.rank-row em{font-style:normal;opacity:.65}.rank-row small{opacity:.75;text-align:right}.ranking-empty{padding:50px;opacity:.5;letter-spacing:.18em}@keyframes jawkaLogoIn{from{opacity:0;transform:scale(.78) translateY(25px);filter:blur(10px)}to{opacity:1;transform:none;filter:drop-shadow(0 18px 45px rgba(0,0,0,.55))}}@keyframes versusBumperIn{from{opacity:0;transform:translateY(-8px) scale(.88);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}@keyframes rankingTitle{from{opacity:0;transform:translateY(25px) scale(.95)}to{opacity:1;transform:none}}@keyframes rankIn{from{opacity:0;transform:translateX(-45px)}to{opacity:1;transform:none}}.screen-hit{animation:screenHit .45s ease}@keyframes screenHit{0%{filter:brightness(1)}12%{filter:brightness(1.8)}100%{filter:brightness(1)}}
@media(max-width:900px){.jawka-arcade-logo{width:70vw;max-height:25vh}.arcade-versus{font-size:15vw}.rank-row{grid-template-columns:35px 1fr 50px 60px}.rank-row small{display:none}.rank-row span{font-size:16px}.rank-row em{font-size:12px}}

/* Jawka Arcade FX v2 - explicit animation classes */
.fx-stage-enter{animation:fxStageEnter .55s cubic-bezier(.16,1,.3,1) both}
.fx-player-reveal{animation:fxPlayerReveal .95s cubic-bezier(.16,1,.3,1) both!important}
.fx-slide-left{animation:fxSlideLeft .75s cubic-bezier(.16,1,.3,1) both!important}
.fx-slide-right{animation:fxSlideRight .75s .08s cubic-bezier(.16,1,.3,1) both!important}
.fx-vs-impact{animation:fxVsImpact .8s .35s cubic-bezier(.15,1.5,.3,1) both!important}
@keyframes fxStageEnter{0%{opacity:.15;transform:scale(.94);filter:blur(7px)}100%{opacity:1;transform:none;filter:none}}
@keyframes fxPlayerReveal{0%{opacity:0;transform:translateY(90px) scale(.65) rotateX(12deg);filter:blur(16px)}55%{opacity:1;transform:translateY(-8px) scale(1.035);filter:blur(0)}100%{opacity:1;transform:none}}
@keyframes fxSlideLeft{0%{opacity:0;transform:translateX(-220px) rotate(-5deg) scale(.9)}65%{opacity:1;transform:translateX(8px) rotate(.5deg) scale(1.02)}100%{transform:none}}
@keyframes fxSlideRight{0%{opacity:0;transform:translateX(220px) rotate(5deg) scale(.9)}65%{opacity:1;transform:translateX(-8px) rotate(-.5deg) scale(1.02)}100%{transform:none}}
@keyframes fxVsImpact{0%{opacity:0;transform:scale(2.8) rotate(-10deg);filter:blur(12px)}55%{opacity:1;transform:scale(.82) rotate(2deg);filter:none}100%{transform:scale(1)}}


/* V6.1.28 — FULLSCREEN ARCADE DUEL EXPERIENCE */
.versus-mini-logo{position:absolute;top:2.8vh;left:50%;transform:translateX(-50%);width:min(18vw,250px);height:auto;max-height:8vh;object-fit:contain;z-index:20;opacity:0;pointer-events:none;filter:drop-shadow(0 8px 22px rgba(0,0,0,.55));transition:opacity .25s ease,transform .25s ease}
.jawka-arena[data-stage="player1"] .versus-mini-logo,.jawka-arena[data-stage="ready"] .versus-mini-logo,.jawka-arena[data-stage="countdown"] .versus-mini-logo,.jawka-arena[data-stage="live"] .versus-mini-logo,.jawka-arena[data-stage="victory"] .versus-mini-logo,.jawka-arena[data-stage="points"] .versus-mini-logo,.jawka-arena[data-stage="result"] .versus-mini-logo{opacity:.9}
.arena-stage.stage-player1,.arena-stage.stage-ready,.arena-stage.stage-countdown,.arena-stage.stage-live,.arena-stage.stage-victory,.arena-stage.stage-points,.arena-stage.stage-result{width:100vw;max-width:none;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10vh 4vw 5vh;box-sizing:border-box}
.stage-player1 .reveal-single{width:min(720px,72vw)}
.stage-player1 .arena-player-card{padding:38px 42px;border-radius:42px;min-width:min(520px,78vw);}
.stage-player1 .arena-player-card img{width:clamp(240px,25vw,360px);height:clamp(240px,25vw,360px)}
.stage-player1 .tv-name{font-size:clamp(42px,4vw,68px)}
.stage-player1 .tv-points{font-size:clamp(24px,2vw,34px)}
.stage-player1 .tv-stat{font-size:clamp(18px,1.5vw,24px)}
.stage-player1 .tv-record{font-size:clamp(14px,1.1vw,18px)}
.stage-player1 .waiting-opponent{margin-top:28px}
.stage-ready .arena-game,.stage-live .arena-game{font-size:clamp(22px,2.1vw,34px);margin-bottom:34px}
.stage-ready .duel-grid,.stage-live .duel-grid{width:min(1500px,92vw);grid-template-columns:minmax(0,1fr) minmax(150px,18vw) minmax(0,1fr);gap:clamp(18px,3vw,55px)}
.stage-ready .arena-player-card,.stage-live .arena-player-card{padding:clamp(20px,2.2vw,36px);border-radius:40px;min-height:360px;display:flex;flex-direction:column;justify-content:center;align-items:center}
.stage-ready .arena-player-card img,.stage-live .arena-player-card img{width:clamp(230px,20vw,330px);height:clamp(230px,20vw,330px)}
.stage-ready .tv-name,.stage-live .tv-name{font-size:clamp(32px,3vw,52px)}
.stage-ready .tv-points,.stage-live .tv-points{font-size:clamp(21px,1.7vw,30px)}
.vs-core,.vs-live{font-size:clamp(56px,7vw,110px);text-shadow:0 0 35px rgba(255,255,255,.28)}
.vs-core b{font-size:clamp(80px,10vw,155px)}
.stage-ready .reward-banner{margin-top:34px;font-size:clamp(13px,1.2vw,18px)}
.stage-countdown .countdown-kicker{font-size:clamp(18px,2vw,28px)}
.stage-countdown .countdown-number{font-size:clamp(210px,32vw,520px)}
.stage-countdown .fight-call{font-size:clamp(110px,15vw,250px)}
.stage-live .live-kicker{font-size:clamp(16px,1.7vw,25px)}
.stage-live .live-grid{margin-top:6px}
.stage-live .live-footer{font-size:clamp(13px,1.2vw,18px);margin-top:30px}
.stage-victory .victory-crown{font-size:clamp(90px,10vw,170px)}
.stage-victory .arena-player-card{width:min(620px,72vw);padding:38px;border-radius:44px}
.stage-victory .arena-player-card img{width:clamp(230px,22vw,340px);height:clamp(230px,22vw,340px)}
.stage-victory .tv-name{font-size:clamp(40px,4vw,64px)}
.stage-victory .victory-reward{font-size:clamp(34px,3.5vw,58px)}
.stage-points .points-big{font-size:clamp(150px,25vw,390px)}
.stage-points .points-flow{font-size:clamp(28px,3vw,48px)}
.stage-points .points-flow b{font-size:clamp(44px,4vw,70px)}
.stage-result .arena-player-card{width:min(560px,70vw);padding:34px}
.stage-result .arena-player-card img{width:clamp(200px,18vw,300px);height:clamp(200px,18vw,300px)}
.stage-result .tv-name{font-size:clamp(36px,3.5vw,58px)}
.jawka-arena[data-stage="player1"],.jawka-arena[data-stage="ready"],.jawka-arena[data-stage="countdown"],.jawka-arena[data-stage="live"],.jawka-arena[data-stage="victory"],.jawka-arena[data-stage="points"],.jawka-arena[data-stage="result"]{background:radial-gradient(circle at 50% 42%,rgba(35,40,70,.42),rgba(5,7,11,.98) 72%)}
.jawka-arena[data-stage="ready"] .arena-grid,.jawka-arena[data-stage="countdown"] .arena-grid,.jawka-arena[data-stage="live"] .arena-grid{opacity:.13}
.jawka-arena[data-stage="live"] .arena-scanline{opacity:.12}
@media(max-width:900px){
 .versus-mini-logo{width:30vw;max-height:7vh;top:2vh}
 .arena-stage.stage-player1,.arena-stage.stage-ready,.arena-stage.stage-countdown,.arena-stage.stage-live,.arena-stage.stage-victory,.arena-stage.stage-points,.arena-stage.stage-result{padding:9vh 3vw 4vh}
 .stage-ready .duel-grid,.stage-live .duel-grid{grid-template-columns:1fr 90px 1fr;gap:8px;width:96vw}
 .stage-ready .arena-player-card,.stage-live .arena-player-card{min-height:300px;padding:14px}
 .stage-ready .arena-player-card img,.stage-live .arena-player-card img{width:min(22vw,190px);height:min(22vw,190px)}
 .stage-ready .tv-name,.stage-live .tv-name{font-size:clamp(20px,4vw,34px)}
 .stage-ready .tv-points,.stage-live .tv-points{font-size:clamp(15px,2.5vw,22px)}
 .stage-ready .tv-stat,.stage-ready .tv-record,.stage-live .tv-stat,.stage-live .tv-record{font-size:11px}
 .vs-core b{font-size:clamp(48px,11vw,80px)}
 .vs-core,.vs-live{font-size:clamp(32px,7vw,58px)}
 .stage-ready .reward-banner{max-width:92vw;font-size:10px}
 .stage-player1 .arena-player-card{min-width:0;width:76vw;padding:24px}
 .stage-player1 .arena-player-card img{width:min(42vw,280px);height:min(42vw,280px)}
}

/* V6.1.29 — HARD HIDE STAGES */
.arena-stage[hidden]{display:none!important}


/* V6.1.31 — JAWKA RETRO ARCADE FX */
.jawka-arena::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;border:2px solid rgba(255,255,255,.08);box-shadow:inset 0 0 0 12px rgba(0,0,0,.12),inset 0 0 90px rgba(0,0,0,.5);opacity:.8}
.jawka-arena::after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.035) 0,rgba(255,255,255,.035) 1px,transparent 1px,transparent 4px);mix-blend-mode:screen;opacity:.18;animation:retroCrt 5s steps(2,end) infinite}
.versus-mini-logo{transition:opacity .2s ease,transform .2s ease;filter:drop-shadow(0 0 18px rgba(255,255,255,.12))}
.jawka-arena[data-stage="player1"] .versus-mini-logo,.jawka-arena[data-stage="ready"] .versus-mini-logo,.jawka-arena[data-stage="countdown"] .versus-mini-logo,.jawka-arena[data-stage="live"] .versus-mini-logo,.jawka-arena[data-stage="victory"] .versus-mini-logo,.jawka-arena[data-stage="points"] .versus-mini-logo,.jawka-arena[data-stage="result"] .versus-mini-logo{animation:retroLogoPulse 2.4s ease-in-out infinite}
.retro-scan::before,.retro-vs::before,.retro-count::before,.retro-live::before,.retro-win::before,.retro-points::before{content:"";position:absolute;inset:7%;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 45px rgba(255,255,255,.04),inset 0 0 45px rgba(255,255,255,.03);pointer-events:none;animation:retroFrame .9s ease-out both}
.retro-scan .stage-kicker{animation:retroKicker .55s steps(2,end) both;text-shadow:0 0 18px rgba(255,255,255,.55)}
.retro-scan .arena-player-card{position:relative;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,.14),0 0 35px rgba(120,140,255,.12),0 30px 80px rgba(0,0,0,.4)}
.retro-scan .arena-player-card::after{content:"";position:absolute;left:-20%;right:-20%;top:-10%;height:4px;background:rgba(255,255,255,.9);box-shadow:0 0 18px rgba(255,255,255,.8);animation:retroScanner 1.15s .1s ease-out both}
.retro-vs .duel-grid{filter:drop-shadow(0 0 22px rgba(255,255,255,.06))}
.retro-vs .vs-core{position:relative;isolation:isolate}
.retro-vs .vs-core::before,.retro-vs .vs-core::after{content:"";position:absolute;top:50%;width:7vw;height:2px;background:rgba(255,255,255,.8);box-shadow:0 0 16px rgba(255,255,255,.6);transform:scaleX(0);animation:retroVsBeam .5s .45s cubic-bezier(.2,.9,.2,1) forwards}
.retro-vs .vs-core::before{right:100%;transform-origin:right}.retro-vs .vs-core::after{left:100%;transform-origin:left}
.retro-count .countdown-number{filter:drop-shadow(0 0 28px rgba(255,255,255,.2));animation:retroCount .75s cubic-bezier(.15,1.6,.3,1)}
.retro-count .countdown-kicker{animation:retroKicker .5s steps(2,end) both}
.retro-live .live-kicker{animation:retroLiveBlink 1.2s steps(2,end) infinite;text-shadow:0 0 18px rgba(125,242,167,.45)}
.retro-live .vs-live{animation:retroLiveVs 2.1s ease-in-out infinite}
.retro-live .live-footer{animation:retroHud .8s .15s both}
.retro-win .victory-crown,.retro-win .result-crown{filter:none}
.retro-win::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,rgba(255,230,130,.12),transparent 48%);pointer-events:none;animation:retroWinFlash .45s ease-out both}
.retro-points .points-big{animation:retroScore .6s cubic-bezier(.15,1.5,.3,1) both;filter:none}
.retro-points .points-flow{animation:retroHud .55s .35s both}
.retro-points .points-caption{animation:retroKicker .55s .55s both}
.retro-reset::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(to bottom,transparent 0 5px,rgba(255,255,255,.12) 5px 6px);opacity:0;animation:retroPowerDown .42s ease-out both;pointer-events:none}
@keyframes retroCrt{0%,100%{opacity:.16}50%{opacity:.22}}
@keyframes retroLogoPulse{0%,100%{filter:drop-shadow(0 0 12px rgba(255,255,255,.08))}50%{filter:drop-shadow(0 0 24px rgba(255,255,255,.22))}}
@keyframes retroFrame{from{opacity:0;transform:scale(1.03)}to{opacity:1;transform:none}}
@keyframes retroKicker{0%{opacity:0;transform:translateY(-8px);filter:blur(4px)}60%{opacity:1;transform:translateY(2px);filter:none}100%{transform:none}}
@keyframes retroScanner{0%{transform:translateY(0);opacity:0}12%{opacity:1}100%{transform:translateY(620px);opacity:0}}
@keyframes retroVsBeam{to{transform:scaleX(1)}}
@keyframes retroCount{0%{opacity:0;transform:scale(1.7);filter:blur(10px)}55%{opacity:1;transform:scale(.9);filter:none}100%{transform:scale(1)}}
@keyframes retroLiveBlink{0%,100%{opacity:.72}50%{opacity:1}}
@keyframes retroLiveVs{50%{transform:scale(1.08);text-shadow:0 0 35px rgba(255,255,255,.28)}}
@keyframes retroHud{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes retroWinFlash{0%{opacity:0}18%{opacity:.9}100%{opacity:0}}
@keyframes retroScore{0%{opacity:0;transform:scale(.3);filter:blur(8px)}55%{opacity:1;transform:scale(1.12);filter:none}100%{transform:scale(1)}}
@keyframes retroPowerDown{0%{opacity:0;transform:scaleY(1)}35%{opacity:.35}100%{opacity:0;transform:scaleY(.015)}}
@media(prefers-reduced-motion:reduce){.jawka-arena::after,.versus-mini-logo,.retro-live .live-kicker,.retro-live .vs-live{animation:none!important}}

.stage-victory,.stage-points,.stage-result{will-change:opacity,transform}@keyframes stageEnterLight{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}

/* JAWKA MEMBERS — responsive cards */
.member-card{display:grid;grid-template-columns:84px minmax(0,1fr);gap:14px;align-items:center;min-width:0;overflow:hidden;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}
.member-card:hover{transform:translateY(-2px);border-color:#454b54;background:#11151a;box-shadow:0 12px 30px rgba(0,0,0,.22)}
.member-photo-wrap{width:84px;height:84px;aspect-ratio:1;border-radius:18px;overflow:hidden;background:#11151a;border:1px solid #30353d;flex:none}
.member-photo-wrap img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.member-card-body{min-width:0}
.member-card b,.member-card small,.member-card span,.member-card strong{min-width:0;overflow-wrap:anywhere}
.member-card b{font-size:16px;line-height:1.15}
.member-card small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.member-points{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.member-actions{flex-wrap:wrap}
.member-actions a{margin:0}
@media (max-width:900px){
  main{padding:22px 16px}
  .hero{align-items:flex-start}
  .hero h1{font-size:32px}
  .member-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .member-card{grid-template-columns:72px minmax(0,1fr);padding:12px;gap:12px}
  .member-photo-wrap{width:72px;height:72px;border-radius:15px}
  .member-card b{font-size:14px}
}
@media (max-width:600px){
  .hero{flex-direction:column}
  .hero-actions{display:flex;flex-wrap:wrap;gap:8px}
  .hero-actions a{margin:0}
  .roundbox{align-self:stretch;display:flex;align-items:center;justify-content:center;gap:10px;min-width:0}
  .branding-card .sectionhead{align-items:flex-start}
  .branding-form{display:flex;flex-direction:column;gap:10px}
  .branding-form button{width:100%}
  .member-search{display:grid;grid-template-columns:1fr;gap:8px}
  .member-search input{min-width:0;width:100%}
  .member-search .primary{width:100%;text-align:center;margin:0}
  .member-grid{grid-template-columns:1fr;gap:10px}
  .member-card{grid-template-columns:76px minmax(0,1fr);padding:11px;border-radius:14px}
  .member-photo-wrap{width:76px;height:76px}
  .member-card b{font-size:15px}
  .member-card small,.member-card span{font-size:10px}
  .member-card strong{font-size:10px}
  .member-actions a{font-size:9px;padding:5px 6px}
}
@media (max-width:380px){
  .member-card{grid-template-columns:64px minmax(0,1fr);padding:10px;gap:10px}
  .member-photo-wrap{width:64px;height:64px;border-radius:13px}
  .member-card b{font-size:14px}
  .member-actions a{font-size:8px;padding:4px 5px}
}

/* V6.2 — explicit TV modes + tournament history */
.versus-station-badge{position:absolute;top:18px;left:24px;z-index:20;font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:.7;font-weight:800}
.history-shell{max-width:1280px;margin:0 auto;padding:28px 20px 60px}
.history-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:18px 0 24px}
.history-filter{padding:10px 14px;border:1px solid rgba(255,255,255,.12);border-radius:999px;text-decoration:none;font-weight:800;font-size:12px;color:inherit;background:rgba(255,255,255,.03)}
.history-filter.active{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.25)}
.history-filters select{margin-left:auto;min-height:40px;border-radius:10px;padding:0 12px;background:rgba(0,0,0,.25);color:inherit;border:1px solid rgba(255,255,255,.12)}
.tournament-history-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.tournament-history-card{padding:20px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:rgba(255,255,255,.035);display:flex;flex-direction:column;gap:12px;min-width:0}
.history-card-top,.history-meta{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.history-card-top span{font-weight:800}.history-card-top b{font-size:10px;letter-spacing:.1em;opacity:.65}.history-date{font-size:12px;opacity:.6}.tournament-history-card h2{margin:0;font-size:22px}.history-meta{justify-content:flex-start;font-size:12px;opacity:.72}.history-winner{margin-top:4px;padding:15px;border-radius:14px;background:rgba(255,255,255,.045)}.history-winner-kicker{font-size:10px;letter-spacing:.12em;opacity:.55;margin-bottom:5px}.history-winner strong{display:block;font-size:20px}.history-winner small{opacity:.6}.tournament-history-card .v6-primary{margin-top:auto;text-align:center;text-decoration:none}.history-empty{grid-column:1/-1;padding:50px;text-align:center}.history-detail-hero{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.history-detail-hero>div{padding:18px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.history-detail-hero span{display:block;font-size:10px;letter-spacing:.1em;opacity:.55}.history-detail-hero strong{display:block;margin-top:6px}.history-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.history-standing-list,.history-match-list{display:flex;flex-direction:column}.history-standing-row{display:grid;grid-template-columns:32px minmax(0,1fr) 44px 44px 44px 50px;gap:8px;align-items:center;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.06)}.history-player{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;column-gap:8px}.history-player img{width:36px;height:36px;border-radius:50%;object-fit:cover;grid-row:span 2}.history-player strong,.history-player small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-player small{opacity:.5;font-size:10px}.history-match{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.06)}.history-match>small{opacity:.5}.history-match>div{display:flex;justify-content:space-between;gap:8px;margin:7px 0}.history-match>div span{opacity:.5}.history-match>b{font-size:10px;opacity:.6}
@media(max-width:760px){.versus-station-badge{top:10px;left:12px;font-size:9px}.history-shell{padding:18px 12px 40px}.history-filters select{margin-left:0;width:100%}.history-detail-hero{grid-template-columns:1fr}.history-detail-grid{grid-template-columns:1fr}.history-standing-row{grid-template-columns:25px minmax(0,1fr) 36px 36px 36px 42px;font-size:12px}.history-player img{width:30px;height:30px}.history-player{grid-template-columns:30px minmax(0,1fr)}}

/* V6.2.2 — Tournament victory uses the same yellow arcade language as Versus */
.arcade-tournament-victory{background:radial-gradient(circle at 50% 42%,rgba(58,49,18,.72) 0,rgba(7,8,10,.98) 66%);isolation:isolate}
.arcade-tournament-victory .tournament-victory-grid{position:absolute;inset:-20%;z-index:-2;opacity:.22;background:linear-gradient(rgba(255,229,138,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,229,138,.055) 1px,transparent 1px);background-size:70px 70px;transform:perspective(520px) rotateX(58deg) translateY(35%);transform-origin:center bottom;animation:tournamentGridMove 7s linear infinite}
.arcade-tournament-victory .tournament-victory-flash{position:absolute;inset:0;z-index:1;pointer-events:none;background:rgba(255,220,80,.8);opacity:0}
.arcade-tournament-victory.show .tournament-victory-flash{animation:tournamentVictoryFlash .55s ease-out both}
.arcade-tournament-victory .winner-glow{background:radial-gradient(circle,rgba(255,218,72,.24),rgba(255,191,0,.06) 35%,transparent 68%);filter:blur(8px);animation:tournamentGlow 2.2s ease-in-out infinite}
.arcade-tournament-victory .tournament-victory-kicker{font-size:clamp(18px,2vw,28px);font-weight:1000;letter-spacing:.28em;color:#ffe58a;text-shadow:0 0 28px rgba(255,218,72,.45);animation:tournamentVictoryKicker .65s cubic-bezier(.15,1.5,.3,1) both;z-index:3}
.arcade-tournament-victory .winner-logo{margin:10px 0 0;max-width:170px;max-height:80px;filter:drop-shadow(0 0 20px rgba(255,220,90,.25));animation:tournamentLogoIn .65s .08s ease both;z-index:3}
.arcade-tournament-victory .tournament-victory-crown{font-size:clamp(70px,8vw,120px);line-height:.9;margin-top:6px;filter:drop-shadow(0 0 24px rgba(255,220,90,.35));animation:tournamentCrownDrop .7s .12s cubic-bezier(.16,1.4,.3,1) both;z-index:3}
.arcade-tournament-victory .winner-kicker{margin:10px 0 0;color:#ffe58a;letter-spacing:.22em;font-size:12px;font-weight:1000;animation:tournamentSlideUp .55s .25s both;z-index:3}
.arcade-tournament-victory h2{margin:7px 0 10px;font-size:clamp(18px,2.3vw,32px);letter-spacing:.18em;color:#fff;animation:tournamentSlideUp .55s .34s both;z-index:3}
.arcade-tournament-victory .winner-photo{width:clamp(150px,15vw,220px);height:clamp(150px,15vw,220px);border:5px solid #ffe58a;box-shadow:0 0 0 10px rgba(255,220,90,.08),0 0 55px rgba(255,210,50,.32);animation:tournamentWinnerPhoto .8s .38s cubic-bezier(.16,1,.3,1) both;z-index:3}
.arcade-tournament-victory h1{margin:12px 0 2px;font-size:clamp(38px,4.8vw,72px);color:#fff;text-shadow:0 0 32px rgba(255,220,90,.18);animation:tournamentWinnerName .7s .5s cubic-bezier(.16,1,.3,1) both;z-index:3}
.arcade-tournament-victory .winner-points-label{font-size:11px;letter-spacing:.25em;font-weight:1000;color:#ffe58a;margin-top:6px;animation:tournamentSlideUp .5s .66s both;z-index:3}
.arcade-tournament-victory .winner-points{font-size:clamp(34px,4vw,62px);font-weight:1000;color:#ffe58a;line-height:1;margin-top:7px;text-shadow:0 0 28px rgba(255,220,90,.4);animation:tournamentPointsPop .75s .72s cubic-bezier(.15,1.5,.3,1) both;z-index:3}
.arcade-tournament-victory .confetti-layer{z-index:4}
@keyframes tournamentVictoryFlash{0%{opacity:0}12%{opacity:.9}100%{opacity:0}}
@keyframes tournamentGridMove{to{background-position:0 70px,70px 0}}
@keyframes tournamentGlow{0%,100%{transform:scale(.92);opacity:.7}50%{transform:scale(1.08);opacity:1}}
@keyframes tournamentVictoryKicker{from{opacity:0;transform:scale(1.6);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}
@keyframes tournamentLogoIn{from{opacity:0;transform:scale(.7) translateY(-20px)}to{opacity:1;transform:none}}
@keyframes tournamentCrownDrop{from{opacity:0;transform:translateY(-70px) scale(.45)}to{opacity:1;transform:none}}
@keyframes tournamentSlideUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes tournamentWinnerPhoto{from{opacity:0;transform:scale(.55);filter:brightness(1.8)}to{opacity:1;transform:none;filter:none}}
@keyframes tournamentWinnerName{from{opacity:0;transform:scale(.75) translateY(20px)}to{opacity:1;transform:none}}
@keyframes tournamentPointsPop{0%{opacity:0;transform:scale(.3)}65%{opacity:1;transform:scale(1.12)}100%{transform:scale(1)}}
@media(max-width:700px){.arcade-tournament-victory h2{letter-spacing:.1em}.arcade-tournament-victory .winner-photo{width:145px;height:145px}.arcade-tournament-victory .winner-logo{max-width:130px;max-height:60px}.arcade-tournament-victory .winner-points{font-size:36px}}

/* V6.2.4 — ARCADE BUMPER LOGO FX */
.stage-idle .jawka-arcade-logo{transform-origin:center center;will-change:transform,filter;animation:jawkaBumperIdle 3.2s ease-in-out infinite;filter:drop-shadow(0 0 18px rgba(255,218,90,.10)) drop-shadow(0 18px 45px rgba(0,0,0,.55))}
.stage-idle .arcade-versus{will-change:transform,filter;animation:versusBumperIdle 3.2s .12s ease-in-out infinite}
.bumper-logo-fire{animation:jawkaBumperFire 1.15s cubic-bezier(.16,1,.3,1) both!important}
.bumper-versus-fire{animation:versusBumperFire .9s .12s cubic-bezier(.16,1,.3,1) both!important}
@keyframes jawkaBumperIdle{0%,100%{transform:scale(1) translateY(0);filter:drop-shadow(0 0 16px rgba(255,218,90,.08)) drop-shadow(0 18px 45px rgba(0,0,0,.55));}45%{transform:scale(1.018) translateY(-3px);filter:drop-shadow(0 0 30px rgba(255,218,90,.28)) drop-shadow(0 18px 45px rgba(0,0,0,.55));}50%{transform:scale(1.006) skewX(-.7deg);filter:brightness(1.18) drop-shadow(0 0 38px rgba(255,218,90,.38)) drop-shadow(0 18px 45px rgba(0,0,0,.55));}55%{transform:scale(1.014) skewX(.7deg);filter:brightness(1.05) drop-shadow(0 0 25px rgba(255,218,90,.22)) drop-shadow(0 18px 45px rgba(0,0,0,.55));}}
@keyframes jawkaBumperFire{0%{opacity:0;transform:scale(.68) translateY(28px);filter:blur(10px) brightness(.7) drop-shadow(0 0 0 rgba(255,218,90,0));}35%{opacity:1;transform:scale(1.08) translateY(-5px);filter:blur(0) brightness(1.45) drop-shadow(0 0 48px rgba(255,218,90,.6));}58%{transform:scale(.985);filter:brightness(1.05) drop-shadow(0 0 26px rgba(255,218,90,.3));}100%{transform:scale(1);filter:brightness(1) drop-shadow(0 0 18px rgba(255,218,90,.10)) drop-shadow(0 18px 45px rgba(0,0,0,.55));}}
@keyframes versusBumperIdle{0%,100%{transform:scale(1);text-shadow:0 18px 55px rgba(0,0,0,.5);}50%{transform:scale(1.025);text-shadow:0 0 28px rgba(255,218,90,.24),0 18px 55px rgba(0,0,0,.5);}}
@keyframes versusBumperFire{0%{opacity:0;transform:translateY(-16px) scale(.78);filter:blur(8px);}55%{opacity:1;transform:translateY(3px) scale(1.06);filter:blur(0);text-shadow:0 0 30px rgba(255,218,90,.45),0 18px 55px rgba(0,0,0,.5);}100%{transform:none;filter:none;}}
