.creation-card #play-mode{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:3px 0;padding:5px 0 0;border:0;min-width:0}
.creation-card #play-mode legend{font-size:clamp(10px,1vw,13px);font-weight:800;color:#fff0c6;padding:0}
.creation-card #play-mode label{display:flex;align-items:center;gap:7px;min-height:45px;margin:0;padding:6px 8px;border:1px solid #71899c;border-radius:7px;background:#102434;color:#f5e5c6;cursor:pointer}
.creation-card #play-mode label:has(:checked){border-color:#f6cb73;background:linear-gradient(#34596c,#183348);box-shadow:inset 0 0 0 1px #eac27b}
.creation-card #play-mode input{position:static;flex:none;appearance:auto;width:16px;height:16px;min-height:0;margin:0;padding:0;accent-color:#e8bf75}
.creation-card #play-mode span{display:flex;flex-direction:column;gap:3px;min-width:0}
.creation-card #play-mode b{font-size:clamp(10px,1.2vw,16px);line-height:1.1}.creation-card #play-mode small{font-size:clamp(8px,.85vw,11px);line-height:1.1;color:#c0d5df}
.creation-card #multiplayer-options[hidden]{display:none!important}
.creation-card #multiplayer-options #create[hidden]{display:none!important}
.match-waiting{position:fixed;inset:0 0 auto;height:calc(var(--app-height,100svh) - var(--console-height));z-index:12;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:clamp(12px,2vw,28px);overflow:auto;color:#f5e7c9;background:radial-gradient(ellipse at top,#25445b,#081526 75%);font-family:system-ui;text-align:center}
.match-waiting[hidden]{display:none!important}.match-waiting header{flex:none}.waiting-kicker{font-size:11px;letter-spacing:.2em;color:#8bcfe2;font-weight:750}.match-waiting h1{font-size:clamp(22px,3vw,38px);line-height:1.1;margin:5px 0 8px;color:#ffe2a2}.match-waiting header p{font-size:clamp(11px,1.3vw,17px);margin:0;line-height:1.4}
.waiting-count{font-size:clamp(14px,1.6vw,22px);font-weight:800;color:#80e6d4;margin:0}
.waiting-seats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:min(760px,92%);flex:none}
.waiting-seat{min-width:0;border:1px solid #7795a8;border-top:3px solid var(--chain-color,#7795a8);border-radius:12px;padding:12px 8px;background:linear-gradient(#1c354a,#102233);box-shadow:0 3px 9px #0005;display:flex;flex-direction:column;align-items:center;gap:6px}.waiting-seat.empty{border-style:dashed;opacity:.65;background:#102034}.waiting-seat svg{width:38px;height:30px;fill:none;stroke:var(--chain-color,#7795a8);stroke-width:2;flex:none}.waiting-seat b{font-size:clamp(12px,1.4vw,19px);overflow-wrap:anywhere;line-height:1.2}.waiting-seat small{font-size:11px;color:#bed8e6}.waiting-seat.mine{box-shadow:inset 0 0 0 1px #f2d28c,0 3px 9px #0005}.waiting-seat .waiting-online{color:#8cf4bb}
.waiting-actions{display:flex;justify-content:center;gap:12px;flex:none}.waiting-actions button{min-height:40px;padding:8px 22px;border:1px solid #e9c27b;border-radius:8px;background:linear-gradient(#345c71,#193347);color:#ffedc9;font:750 13px system-ui}.waiting-actions button:disabled{opacity:.5}.match-waiting>small{font-size:10px;color:#9ab9c9}.match-waiting #waiting-connection{font-size:12px;color:#ffcf8d;margin:0;min-height:1em}
@media(max-height:600px){.match-waiting{justify-content:flex-start;gap:6px;padding:10px 12px}.match-waiting h1{font-size:24px;margin:3px 0}.waiting-kicker{font-size:9px}.waiting-seats{gap:7px}.waiting-seat{padding:7px;gap:3px}.waiting-seat svg{width:28px;height:23px}.waiting-actions button{min-height:32px;padding:5px 15px}.match-waiting>small{display:none}.creation-card #play-mode label{min-height:39px;padding:4px 6px}.creation-card #play-mode small{font-size:8px}}

.waiting-code{display:flex;flex-direction:column;align-items:center;gap:3px;flex:none}.waiting-code>span{font-size:11px;color:#bed8e6}.waiting-code strong{font:800 clamp(20px,2.6vw,32px)/1.1 ui-monospace,monospace;letter-spacing:.18em;color:#ffe2a2;user-select:all;-webkit-user-select:all}.waiting-code small{font-size:11px;color:#bed8e6}.creation-card #multiplayer-options summary{font-weight:750;color:#ffe2a2;cursor:pointer;padding:8px 0}
@media(max-height:600px){.waiting-code{gap:1px}.waiting-code strong{font-size:20px}.waiting-code small{font-size:9px}.match-waiting{gap:4px}}

.creation-card #avatar-picker{margin:0;padding:0;border:0;min-width:0}
#avatar-picker legend{font-size:clamp(10px,1vw,13px);font-weight:800;color:#fff0c6}
#avatar-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
.creation-card #avatar-options label{display:grid;justify-items:center;gap:2px;margin:0;padding:3px 1px;border:1px solid #71899c;background:#102434;color:#fff0c6;cursor:pointer;position:relative;text-align:center;font-size:clamp(8px,1vw,12px)}
.creation-card #avatar-options label:has(:checked){border-color:#f6cb73;background:#34596c;box-shadow:inset 0 0 0 1px #f6cb73}
.creation-card #avatar-options label:focus-within{outline:2px solid white;outline-offset:1px}
.creation-card #avatar-options input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;margin:0;padding:0}
#avatar-options canvas{width:auto;height:clamp(26px,6vh,52px);image-rendering:pixelated}

@font-face {
 font-family: ZuvTV Pixel;
 src: url('./pixelify-sans.ttf') format('truetype');
 font-weight: 400 700;
 font-display: swap;
}
body:has(#entry:not([hidden])) :is(#tv-console,.language-settings-trigger){display:none!important}
#entry:not([hidden]){
 position:fixed;inset:0;width:100%;height:var(--app-height,100svh);
 overflow:hidden;background:#08152c;
 container-type:size;
}
#entry .creation-brand,#entry .creation-card>h1,#entry .creation-card>p{display:none!important}
#entry .creation-card{
 position:absolute!important;inset:50% auto auto 50%!important;
 width:100cqw!important;height:clamp(100cqh,75cqw,145cqh)!important;
 transform:translate(-50%,-50%);padding:0!important;
 background:url('./entry-studio-v1.png') center / 100% 100% no-repeat!important;
 border:0;box-shadow:none;overflow:visible;
 container-type:inline-size;
 font-family:ZuvTV Pixel,monospace;
}
#entry .creation-card::before,#entry .creation-card::after,#entry::after{display:none!important}
#entry #join{position:absolute;inset:0;display:block}
#entry #join>label,#entry #join>:is(#name,#character,#language){
 position:absolute!important;left:16.7%!important;width:20.9%!important;
 margin:0!important;min-height:0!important;font:700 clamp(10px,1.65cqw,27px)/1 ZuvTV Pixel,monospace;
}
#entry #join>label{left:15.7%!important;width:22.7%!important;height:3.15%!important;display:grid;place-items:center;color:#46fff1;text-transform:uppercase}
#entry label[for=name]{top:32.65%!important}
#entry label[for=character]{top:41.05%!important}
#entry label[for=language]{top:49.35%!important}
#entry #join>:is(#name,#character,#language){
 height:3.8%!important;background:transparent;color:#171522;border:0;box-shadow:none;padding:0 1.15%;
}
#entry #name{top:36.4%!important}
#entry #character{top:44.65%!important}
#entry #language{top:53.2%!important}
#entry #avatar-picker{
 position:absolute;left:41.3%;top:32.45%;width:43%;height:20.4%;
 display:flex;flex-direction:column;justify-content:space-between;
}
#entry #avatar-picker legend{
 display:block;width:100%;text-align:center;text-transform:uppercase;
 font:700 clamp(14px,2.4cqw,40px)/1 ZuvTV Pixel,monospace;color:#46fff1;
}
#entry #avatar-options{height:88%;gap:0}
#entry #avatar-options label{
 display:grid;place-items:end center;padding:0;background:none;border:0;box-shadow:none;
}
#entry #avatar-options label:has(:checked){
 background:radial-gradient(ellipse 46% 10% at 50% 92%,#58fff0 0%,#01b8c6 42%,transparent 85%);
}
#entry #avatar-options canvas{width:138%;height:auto;max-width:none;aspect-ratio:1;pointer-events:none}
#entry #play-mode{
 position:absolute;left:40.65%;top:54.45%;width:27.35%;height:5%;
 padding:0;margin:0;gap:2%;grid-template-columns:47% 51%;
}
#entry #play-mode legend{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
#entry #play-mode label{
 justify-content:center;padding:0 0 0 12%;min-height:0;height:100%;
 border:0;border-radius:0;background:none;box-shadow:none;color:#fff4d4;
}
#entry #play-mode label:has(:checked){box-shadow:inset 0 0 0 2px #fff3a6}
#entry #play-mode input{position:absolute;opacity:0;width:1px;height:1px}
#entry #play-mode small{display:none}
#entry #play-mode b,#entry #multiplayer-options summary{
 font:700 clamp(9px,1.45cqw,23px)/1 ZuvTV Pixel,monospace;
 text-transform:uppercase;text-shadow:1px 2px #211207;
}
#entry #multiplayer-options{
 position:absolute;left:68.9%;top:54.45%;width:16.4%;height:5%;max-width:none;
 right:auto;padding:0;margin:0;background:none;border:0;overflow:visible;
}
#entry #multiplayer-options summary{
 height:100%;min-height:0;padding:0;display:grid;place-items:center;color:#fff4d4;list-style:none;background:none;border:0;
}
#entry #multiplayer-options summary::-webkit-details-marker{display:none}
#entry #multiplayer-options[open]{padding:0;border:0;background:none;box-shadow:none}
#entry #multiplayer-options[open] .join-row{
 position:absolute;bottom:110%;right:0;width:max(170px,100%);
 padding:6px;background:#112439;border:2px solid #d7a740;box-shadow:0 3px 12px #000;
}
#entry #multiplayer-options>:is(label,small){display:none}
#entry #multiplayer-options #code{min-width:0}
#entry #solo{
 position:absolute!important;left:36.4%;top:61.8%;width:26.9%!important;height:8.6%!important;
 min-height:0;margin:0!important;padding:0 4.5% 0 0;
 background:transparent!important;box-shadow:none;border:0;border-radius:0;
 color:#fff4d4;font:700 clamp(14px,2.65cqw,44px)/1 ZuvTV Pixel,monospace;
 text-shadow:2px 3px #661214;
}
#entry #solo>span{display:none!important}
#entry :is(input,select,summary,button):focus-visible,#entry #play-mode label:focus-within{
 outline:2px solid #61fff3;outline-offset:1px;
}

body:has(#match-waiting:not([hidden])) :is(#tv-console,.language-settings-trigger){display:none!important}
#match-waiting:not([hidden]){
 position:fixed;inset:0;width:100%;height:var(--app-height,100svh);
 display:block;padding:0;overflow:hidden;background:#08152c;container-type:size;
}
.waiting-studio{
 position:absolute;inset:50% auto auto 50%;width:100cqw;height:clamp(100cqh,75cqw,145cqh);
 transform:translate(-50%,-50%);container-type:inline-size;
 background:url('./waiting-studio-v1.png') center / 100% 100% no-repeat;
 color:#fff4d4;font:700 clamp(10px,1.65cqw,26px)/1 ZuvTV Pixel,monospace;
}
#match-waiting .waiting-studio>h1,#match-waiting .waiting-count,.waiting-start{
 position:absolute;left:24%;width:52%;margin:0;text-align:center;
}
#match-waiting .waiting-studio>h1{top:32.4%;font:700 clamp(16px,3cqw,48px)/1 ZuvTV Pixel,monospace;text-transform:uppercase;color:#46fff1}
#match-waiting .waiting-count{top:37.65%;font:700 clamp(10px,2.1cqw,32px)/1 ZuvTV Pixel,monospace;text-transform:uppercase;color:#fff4d4}
#match-waiting .waiting-seats{
 position:absolute;left:20.6%;top:41.15%;width:58.9%;height:21.75%;gap:2%;
}
#match-waiting .waiting-seat{
 position:relative;display:flex;align-items:center;justify-content:flex-end;gap:0;
 padding:0 5% 5%;background:none;box-shadow:none;border:0;border-radius:0;overflow:hidden;
}
#match-waiting .waiting-seat canvas{
 position:absolute;top:0;left:50%;height:87%;width:auto;aspect-ratio:1;
 transform:translateX(-50%);image-rendering:pixelated;
}
#match-waiting .waiting-seat b,#match-waiting .waiting-seat small{
 position:relative;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
 padding:1px 4px;background:#071625df;text-shadow:1px 1px #000;
}
#match-waiting .waiting-seat b{font-size:clamp(9px,1.45cqw,22px)}
#match-waiting .waiting-seat small{font-size:clamp(8px,1.05cqw,16px)}
#match-waiting .waiting-seat.empty{opacity:1;justify-content:center}
.waiting-empty-mark{display:grid;place-items:center;width:32%;aspect-ratio:1;border:2px dashed #38eaf4;color:#53fff4;font-size:clamp(20px,4cqw,64px);margin-bottom:5%}
#match-waiting .waiting-start{top:64.2%;left:32.8%;width:34.4%;font:700 clamp(9px,1.55cqw,25px)/1 ZuvTV Pixel,monospace}
#match-waiting .waiting-code{position:absolute;left:41.7%;top:69.9%;width:16.6%;height:7.4%;display:block}
#match-waiting .waiting-code span{display:block;color:#46fff1;text-transform:uppercase;font-size:clamp(8px,1.5cqw,24px)}
#match-waiting .waiting-code strong{position:absolute;inset:auto 0 3%;font:700 clamp(13px,2.6cqw,40px)/1 ZuvTV Pixel,monospace;color:#191522;letter-spacing:.08em}
#match-waiting :is(#waiting-share,#waiting-cancel){
 position:absolute;top:70.15%;width:16.8%;height:7.6%;min-height:0;
 padding:0 0 0 4.5%;margin:0;border:0;background:none;box-shadow:none;color:#fff4d4;
 font:700 clamp(12px,2.15cqw,33px)/1 ZuvTV Pixel,monospace;text-transform:uppercase;
 text-shadow:2px 2px #281408;
}
#waiting-share{left:20.55%}
#waiting-cancel{left:62.65%}
#match-waiting :is(#waiting-share,#waiting-cancel):focus-visible{outline:2px solid #61fff3}
#match-waiting #waiting-connection{position:absolute;top:82%;left:20%;width:60%;min-height:0;margin:0;font:inherit;color:#ffcf8d}
