@font-face{font-family:Welbutrin;src:url(/fonts/Welbutrin.ttf)format("truetype");font-display:swap}:root{--oja-night-sky:#2a2a45;--oja-night-sky-2:#3a3a5c;--oja-shadow-blue:#3c3c55;--oja-charcoal-dark:#0d131a;--oja-neon-magenta:#d63fc4;--oja-purple-tentacle:#7b2cbf;--oja-acid-green:#39ff14;--oja-lamp-yellow:#f5c518;--oja-motel-peach:#e8a24a;--oja-retro-red:#c1121f;--oja-cream-light:#fdf0d5;--oja-neon-yellow:#ffe600;--oja-cosmic-carpet:#2b1b45;--asym-radius-soft:25px 8px 30px 12px;--asym-radius-hard:15px 4px 20px 6px;--skew-light:skewX(-2deg) skewY(1deg);--cartoon-border:4px solid var(--oja-charcoal-dark);--cartoon-border-thick:6px solid var(--oja-charcoal-dark);--cartoon-shadow:4px 4px 0 var(--oja-charcoal-dark);--neon-glow:0 0 15px var(--oja-neon-magenta), 0 0 30px var(--oja-neon-magenta);--font-arcade:"Welbutrin", "Press Start 2P", monospace;--font-headline:"Welbutrin", "Bangers", cursive;--font-body:"Welbutrin", "Nunito", system-ui, sans-serif;--font-terminal:"Welbutrin", "VT323", monospace}*{box-sizing:border-box}html,body{height:100%;color:var(--oja-cream-light);font-family:var(--font-body);background:radial-gradient(circle at 50% 25%,#1a1430,#0d131a 75%);margin:0;overflow:hidden}#app{position:fixed;inset:0}.tritris-view{position:absolute;inset:0}.auth-backdrop{z-index:200;background:radial-gradient(circle at 50% 30%,#1a1430,#0a0812 80%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.auth-card{border:var(--cartoon-border-thick);border-radius:var(--asym-radius-soft);width:min(400px,94%);max-height:96%;box-shadow:var(--cartoon-shadow);background:#0d131aeb;flex-direction:column;gap:8px;padding:14px 18px;display:flex;overflow:hidden}.auth-title{text-align:center;letter-spacing:3px;font-family:var(--font-headline);color:var(--oja-neon-yellow);text-shadow:var(--cartoon-shadow), 0 0 16px var(--oja-neon-magenta);margin:0;font-size:2rem}.auth-tab{cursor:pointer;font-family:var(--font-arcade);background:var(--oja-shadow-blue);color:var(--oja-cream-light);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);opacity:.7;flex:1;padding:8px 6px;font-size:.62rem;transition:transform .1s,border-color .1s,box-shadow .14s}.auth-tab:hover{transform:translateY(-1px) var(--skew-light);border-color:var(--oja-neon-magenta)}.auth-tab.is-active{background:var(--oja-purple-tentacle);opacity:1;border-color:var(--oja-neon-magenta);box-shadow:var(--neon-glow)}.auth-desc{text-align:center;font-family:var(--font-terminal);color:var(--oja-acid-green);margin:0;font-size:1.05rem}.auth-form{flex-direction:column;gap:10px;display:flex}.auth-field{display:flex;position:relative}.auth-field input{font-family:var(--font-terminal);letter-spacing:1px;color:var(--oja-cream-light);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);caret-color:var(--oja-acid-green);background:#0a0812e6;outline:none;flex:1;padding:6px 38px 6px 12px;font-size:1rem;transition:border-color .15s,box-shadow .15s}.auth-field input:focus{border-color:var(--oja-neon-magenta);box-shadow:var(--neon-glow)}.auth-mark{pointer-events:none;font-size:1.1rem;font-weight:900;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.auth-mark.is-ok{color:var(--oja-acid-green);text-shadow:0 0 8px var(--oja-acid-green)}.auth-mark.is-bad{color:var(--oja-retro-red);text-shadow:0 0 8px var(--oja-retro-red)}.auth-hint{font-family:var(--font-terminal);color:var(--oja-cream-light);opacity:.75;margin:0;font-size:.95rem}.auth-info{align-items:flex-start;gap:8px;display:flex}.auth-info-btn{cursor:pointer;background:var(--oja-shadow-blue);width:24px;height:24px;color:var(--oja-cream-light);border:2px solid var(--oja-charcoal-dark);border-radius:50%;flex:none;font-weight:900;line-height:1;transition:transform .1s,box-shadow .14s}.auth-info-btn:hover{transform:scale(1.1) var(--skew-light);box-shadow:var(--neon-glow)}.auth-info-text{font-family:var(--font-terminal);color:var(--oja-motel-peach);font-size:.9rem}.auth-remember{cursor:pointer;font-family:var(--font-body);color:var(--oja-cream-light);align-items:center;gap:8px;font-size:.85rem;font-weight:700;display:flex}.auth-remember input{accent-color:var(--oja-neon-magenta);width:18px;height:18px}.auth-error{text-align:center;min-height:1.1em;font-family:var(--font-terminal);color:var(--oja-retro-red);margin:0}.auth-submit{cursor:pointer;font-family:var(--font-body);background:var(--oja-acid-green);color:var(--oja-charcoal-dark);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);box-shadow:var(--cartoon-shadow);padding:8px;font-size:.95rem;font-weight:900;transition:transform .1s,box-shadow .14s}.auth-submit:hover:not(:disabled){transform:translateY(-2px) var(--skew-light);box-shadow:var(--neon-glow)}.auth-submit:disabled{opacity:.6;cursor:wait;transform:none}.auth-forgot{cursor:pointer;font-family:var(--font-body);color:var(--oja-purple-tentacle);background:0 0;border:none;align-self:center;margin-top:2px;padding:4px;font-size:.78rem;text-decoration:underline}.auth-forgot:hover{color:var(--oja-neon-magenta)}.auth-tab:focus-visible,.auth-submit:focus-visible,.auth-forgot:focus-visible,.auth-remember input:focus-visible,.auth-info-btn:focus-visible{outline-offset:2px;outline:3px solid var(--oja-neon-yellow)!important}.auth-tab:focus-visible{transform:translateY(-1px) var(--skew-light)}.auth-submit:focus-visible{transform:translateY(-2px) var(--skew-light);box-shadow:var(--neon-glow)}.cab-stage{background:#060409;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.cab-stage.cab-hidden{opacity:0}.cab-frame{--cab-aspect:1.7917;width:min(100vw, calc(100vh * var(--cab-aspect)));aspect-ratio:var(--cab-aspect);transform-origin:50%;will-change:transform;flex:none;position:relative}.cab-stage.cab-anim .cab-frame{transition:transform .9s cubic-bezier(.65,0,.35,1)}.cab-img{object-fit:fill;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;z-index:20;width:100%;height:100%;position:absolute;inset:0}.cab-screen{z-index:10;background:#04030a;border-radius:4%/6%;position:absolute;overflow:hidden;box-shadow:inset 0 0 40px #000000e6}.cab-screen-inner{position:absolute;inset:0;container-type:inline-size}.cab-screen-inner .tritris-view{aspect-ratio:4/3;width:100%;max-width:100%;height:100%;max-height:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cab-crt{pointer-events:none;border-radius:4%/6%;position:absolute;inset:0}.cab-crt-scan{mix-blend-mode:multiply;background:repeating-linear-gradient(0deg,#00000038 0 1px,#0000 1px 3px),repeating-linear-gradient(90deg,#ff005008 0,#00ff7805 1px,#0050ff08 2px,#0000 3px);animation:9s linear infinite cab-scan-roll;position:absolute;inset:0}.cab-crt-scan:after{content:"";background:linear-gradient(#0000,#ffffff0b,#0000);height:14%;animation:5.5s linear infinite cab-beam;position:absolute;left:0;right:0}@keyframes cab-beam{0%{top:-16%}to{top:108%}}@keyframes cab-scan-roll{0%{background-position:0 0,0 0}to{background-position:0 6px,0 0}}.cab-crt-glass{background:linear-gradient(115deg,#0000 42%,#ffffff12 47%,#ffffff1c 50%,#ffffff0d 54%,#0000 60%);position:absolute;inset:0}.cab-crt-vignette{background:radial-gradient(#0000 58%,#00000061 100%);animation:7s steps(60,end) infinite cab-flicker;position:absolute;inset:0}@keyframes cab-flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.86}94%{opacity:1}97%{opacity:.92}98%{opacity:1}}.cab-crt.is-flicker .cab-crt-vignette{animation:.14s steps(2,end) infinite cab-flicker-hard}@keyframes cab-flicker-hard{0%{opacity:1}50%{opacity:.55}to{opacity:.9}}.cab-spot{aspect-ratio:1;cursor:pointer;outline-offset:2px;z-index:30;background:0 0;border:none;border-radius:50%;position:absolute}.cab-spot:after{content:"";opacity:0;border-radius:50%;transition:opacity .15s;position:absolute;inset:-18%;box-shadow:0 0 18px 6px #ffe6008c,inset 0 0 12px #ffffff59}.cab-spot:hover:after,.cab-spot:focus-visible:after{opacity:.85}.cab-spot:active:after{opacity:1;box-shadow:0 0 26px 10px #d63fc4cc,inset 0 0 14px #ffffff80}.cab-spot:hover:before{content:attr(title);white-space:nowrap;font-family:var(--font-terminal), monospace;color:var(--oja-neon-yellow,#ffe600);border:2px solid var(--oja-purple-tentacle,#7b2cbf);pointer-events:none;z-index:5;background:#0d131af2;border-radius:8px;padding:4px 10px;font-size:14px;position:absolute;bottom:130%;left:50%;transform:translate(-50%)}.cab-party .cab-spot:after{animation:.6s ease-in-out infinite cab-party-blink}.cab-party .cab-spot:nth-child(odd):after{animation-delay:.3s}@keyframes cab-party-blink{0%,to{opacity:.1}50%{opacity:1}}.cab-stage.is-zoom .cab-spot:not(.cab-spot-gb){display:none}.cab-spot-gb{aspect-ratio:auto;border-radius:10px}.cab-spot-gb.cab-spot-round{border-radius:50%}.cab-spot-gb:after,.cab-spot-gb:before{content:none;display:none}.cab-frame[data-skin=gameboy] .cab-img{z-index:20}.cab-frame[data-skin=gameboy] .cab-crt-glass{opacity:.5}.cab-frame[data-skin=gameboy] .cab-screen{border-radius:2%}.boot-overlay{z-index:50;background:#050308;justify-content:flex-start;align-items:flex-start;padding:4% 5%;display:flex;position:absolute;inset:0}.boot-text{white-space:pre-wrap;word-break:break-word;font-family:var(--font-terminal,monospace);letter-spacing:1px;color:#b565f0;text-shadow:0 0 6px #b565f0cc,0 0 18px #7b2cbf66;margin:0;font-size:clamp(10px,1.6vw,19px);line-height:1.45;animation:2.4s ease-in-out infinite boot-glow}.boot-text:after{content:"█";animation:.64s step-end infinite boot-cursor}@keyframes boot-cursor{50%{opacity:0}}@keyframes boot-glow{0%,to{opacity:1}50%{opacity:.88}}.boot-overlay.boot-off{animation:.28s ease-in forwards boot-off}@keyframes boot-off{0%{opacity:1;transform:scaleY(1)}70%{opacity:1;filter:brightness(6);transform:scaleY(.02)}to{opacity:0;transform:scaleY(.005)}}.cab-exit{z-index:300;cursor:pointer;width:40px;height:40px;color:var(--oja-cream-light,#fdf0d5);border:2px solid var(--oja-purple-tentacle,#7b2cbf);opacity:.35;background:#0d131ab8;border-radius:50%;font-size:1.1rem;font-weight:900;line-height:1;transition:opacity .15s;display:none;position:fixed;top:10px;right:10px}.cab-exit:hover{opacity:1}.cab-stage.is-zoom~.cab-exit,.cab-stage.is-zoom .cab-exit{display:block}.ttc-root{z-index:80;pointer-events:none;font-family:var(--font-body);position:absolute;inset:0}.ttc-bar{left:0;right:0;bottom:calc(10px + env(safe-area-inset-bottom,0px));justify-content:space-between;align-items:flex-end;gap:16px;padding:0 10px;display:flex;position:absolute}.ttc-cluster{align-items:flex-end;gap:10px;display:flex}.ttc-btn{pointer-events:auto;min-width:52px;min-height:52px;color:var(--oja-cream-light);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);-webkit-backdrop-filter:blur(3px);font-family:var(--font-arcade);cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#3a3a5c8c;border-color:#0d131ad9;justify-content:center;align-items:center;padding:4px 8px;font-size:1.05rem;line-height:1;display:flex;box-shadow:2px 2px #0d131a99}.ttc-btn:active,.ttc-btn.ttc-pressed{border-color:var(--oja-neon-magenta);box-shadow:0 0 12px var(--oja-neon-magenta), 0 0 24px var(--oja-neon-magenta);color:var(--oja-neon-yellow);background:#7b2cbfbf;transform:translateY(1px)scale(.96)}.ttc-btn-wide{letter-spacing:1px;padding:4px 12px;font-size:.6rem}.ttc-bar-3d .ttc-btn{min-width:44px;min-height:44px;padding:2px 4px;font-size:.7rem}.ttc-dpad,.ttc-grid3{grid-template-columns:repeat(3,44px);grid-auto-rows:44px;gap:4px;display:grid}.ttc-gap{pointer-events:none}.rotate-guard{z-index:9999;text-align:center;background:#050308;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:none;position:fixed;inset:0}.rotate-guard-icon{font-size:3rem;animation:1.8s ease-in-out infinite rotate-guard-spin}.rotate-guard p{font-family:var(--font-terminal);color:var(--oja-cream-light);margin:0;font-size:1.1rem}.rotate-guard p b{color:var(--oja-neon-yellow)}@keyframes rotate-guard-spin{0%,to{transform:rotate(0)}50%{transform:rotate(-90deg)}}@media (orientation:landscape) and (pointer:coarse){.rotate-guard{display:flex}}.tritris-view{z-index:60;color:var(--oja-cream-light);font-family:var(--font-body);background:radial-gradient(circle at 50% 25%,#1a1430,#0d131a 75%);flex-direction:column;display:flex;position:absolute;inset:0}.crt-frame{box-shadow:inset 0 0 90px #0009,0 0 24px #7b2cbf59}.tritris-menu{border:var(--cartoon-border-thick);border-radius:var(--asym-radius-soft);width:min(560px,94%);max-height:96%;box-shadow:var(--cartoon-shadow);background:#0d131ad1;flex-direction:column;gap:10px;margin:auto;padding:14px 16px;display:flex;overflow-y:auto}.tritris-menu-left{flex-direction:column;gap:8px;display:flex}.tritris-modes{flex-direction:column;gap:10px;display:flex}.tritris-mode-card{--mc:var(--oja-neon-magenta);text-align:left;cursor:pointer;border:2.5px solid var(--mc);box-shadow:0 0 10px var(--mc), inset 0 0 14px #0009;background:#080a14d9;border-radius:12px;grid-template-columns:auto 1fr;grid-auto-rows:min-content;align-items:center;column-gap:12px;padding:10px 14px;transition:transform .12s,box-shadow .16s;display:grid}.tritris-mode-card.mode-classic{--mc:#00e5ff}.tritris-mode-card.mode-ultimate{--mc:#ff7a1a}.tritris-mode-card.mode-3d{--mc:#39ff14}.tritris-mode-card:hover:not(.is-locked){box-shadow:0 0 22px var(--mc), inset 0 0 14px #00000080;transform:translateY(-2px)scale(1.015)}.tritris-mode-card .mc-icon{filter:drop-shadow(0 0 6px var(--mc));grid-row:1/span 5;font-size:2rem}.tritris-mode-card .mc-title{font-family:var(--font-headline);letter-spacing:2px;color:var(--mc);text-shadow:0 0 8px var(--mc);font-size:1.5rem}.tritris-mode-card small{font-family:var(--font-terminal);color:var(--oja-cream-light);opacity:.85;font-size:.9rem;line-height:1.15}.tritris-mode-card .mc-best{color:var(--oja-neon-yellow);opacity:1}.tritris-mode-card.is-locked{--mc:#55506a;cursor:not-allowed;filter:saturate(.4);box-shadow:none}.tritris-mode-card.is-locked .mc-lock{color:var(--oja-lamp-yellow);opacity:1}.tritris-mode-card.is-sel:not(.is-locked){box-shadow:0 0 26px var(--mc), inset 0 0 14px #0006;transform:scale(1.02)}.tritris-title-screen{border:var(--cartoon-border-thick);border-radius:var(--asym-radius-soft);width:92%;max-height:96%;box-shadow:var(--cartoon-shadow), inset 0 0 60px #000000b3;background:#060810e6;flex-direction:column;align-items:center;gap:clamp(10px,3vh,26px);margin:auto;padding:clamp(12px,4vh,34px) 24px;display:flex;position:relative;overflow:hidden}.tritris-logo{font-family:var(--font-arcade);letter-spacing:1px;white-space:nowrap;text-shadow:3px 3px #000000e6,0 0 18px #d63fc480;margin:0;font-size:clamp(1rem,6cqw,2.6rem);line-height:1}.tritris-logo span{display:inline-block}.tritris-arcade-menu{flex-direction:column;gap:clamp(6px,1.6vh,14px);display:flex}.tritris-arcade-item{cursor:pointer;text-align:left;font-family:var(--font-arcade);color:var(--oja-cream-light);letter-spacing:1px;background:0 0;border:none;padding:4px 8px 4px 30px;font-size:clamp(.75rem,2.6cqw,1.15rem);transition:color .1s,text-shadow .1s;position:relative}.tritris-arcade-item .ai-arrow{opacity:0;color:var(--oja-neon-yellow);position:absolute;left:4px}.tritris-arcade-item.is-sel{color:var(--oja-neon-yellow);text-shadow:0 0 10px var(--oja-neon-magenta)}.tritris-arcade-item.is-sel .ai-arrow{opacity:1;animation:.6s steps(2,end) infinite ai-blink}.tritris-arcade-item:hover{color:var(--oja-neon-yellow)}@keyframes ai-blink{50%{opacity:.2}}.tritris-arcade-foot{font-family:var(--font-terminal);color:var(--oja-acid-green);text-align:center;margin:0;font-size:clamp(.6rem,3cqw,.85rem)}.tritris-arcade-foot b{color:var(--oja-neon-yellow)}.cab-screen-inner .tritris-logo{font-size:clamp(.8rem,6.2cqw,1.7rem)}.cab-screen-inner .tritris-arcade-item{font-size:clamp(.7rem,4.2cqw,1rem)}.cab-screen-inner .tritris-title-screen{gap:12px;padding:10px 14px}.tritris-title{font-family:var(--font-headline);text-align:center;letter-spacing:3px;color:var(--oja-neon-yellow);text-shadow:var(--cartoon-shadow), 0 0 16px var(--oja-neon-magenta);font-size:clamp(2rem,6vw,3.4rem)}.tritris-sub{text-align:center;font-family:var(--font-terminal);color:var(--oja-acid-green);margin-bottom:4px}.tritris-coin{text-align:center;font-family:var(--font-body);color:var(--oja-cream-light);margin-bottom:6px;font-weight:700}.tritris-coin b{color:var(--oja-neon-yellow)}.tritris-warn{text-align:center;color:var(--oja-retro-red);border:var(--cartoon-border);border-color:var(--oja-retro-red);border-radius:var(--asym-radius-hard);box-shadow:var(--cartoon-shadow);background:#c1121f24;margin-bottom:6px;padding:6px 10px;font-weight:800}.tritris-mode-btn{text-align:left;cursor:pointer;background:var(--oja-purple-tentacle);color:var(--oja-cream-light);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);box-shadow:var(--cartoon-shadow);font-family:var(--font-body);flex-direction:column;gap:2px;padding:12px 16px;font-weight:900;transition:transform .1s,box-shadow .14s;display:flex}.tritris-mode-btn span{font-size:clamp(.9rem,2.4vw,1.15rem)}.tritris-mode-btn small{opacity:.8;font-size:.78rem;font-weight:700}.tritris-mode-btn:hover{transform:translateY(-2px) var(--skew-light);box-shadow:var(--neon-glow)}.tritris-back{cursor:pointer;font-family:var(--font-body);background:var(--oja-cream-light);color:var(--oja-charcoal-dark);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);box-shadow:var(--cartoon-shadow);align-self:center;margin-top:6px;padding:8px 16px;font-weight:700;transition:transform .1s,box-shadow .14s}.tritris-back:hover{transform:translateY(-2px) var(--skew-light);box-shadow:var(--neon-glow)}.tritris-hud{font-family:var(--font-arcade);justify-content:center;gap:18px;padding:10px;font-size:.7rem;display:flex}.hud-item{color:var(--oja-cream-light);flex-direction:column;align-items:center;gap:4px;display:flex}.hud-item b{color:var(--oja-neon-yellow);font-size:.95rem}.tritris-game{flex:1;min-height:0;position:relative}.tritris-gameover{border:var(--cartoon-border-thick);border-radius:var(--asym-radius-soft);width:max-content;max-width:min(420px,96%);height:max-content;max-height:98%;box-shadow:var(--cartoon-shadow);z-index:40;background:#0d131af2;flex-direction:column;align-self:center;align-items:center;gap:6px;margin:auto;padding:12px 20px;display:flex;position:absolute;inset:50% 0 0 50%;overflow:hidden;transform:translate(-50%,-50%)}.tritris-gameover h2{font-family:var(--font-headline);color:var(--oja-retro-red);text-shadow:var(--cartoon-shadow);margin:0;font-size:2.1rem}.tritris-go-mode{font-family:var(--font-terminal);color:var(--oja-acid-green);margin:0}.tritris-toasts{z-index:25;pointer-events:none;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:12%;left:0;right:0}.tritris-toast{font-family:var(--font-arcade);color:var(--oja-cream-light);border:3px solid var(--oja-neon-magenta);border-radius:var(--asym-radius-hard);text-shadow:0 0 8px var(--oja-neon-magenta);background:#0d131abf;padding:8px 14px;font-size:.85rem;animation:1.2s ease-out forwards tritris-toast-float}.tritris-toast.is-big{color:var(--oja-neon-yellow);border-color:var(--oja-neon-yellow);text-shadow:0 0 12px var(--oja-neon-yellow), 0 0 26px var(--oja-neon-magenta);font-size:1.25rem}@keyframes tritris-toast-float{0%{opacity:0;transform:translateY(14px)scale(.85)}12%{opacity:1;transform:translateY(0)scale(1.06)}22%{transform:translateY(0)scale(1)}75%{opacity:1}to{opacity:0;transform:translateY(-22px)scale(.95)}}.tritris-audio-row{justify-content:center;gap:10px;display:flex}.tritris-audio-btn{cursor:pointer;font-family:var(--font-body);background:var(--oja-acid-green);color:var(--oja-charcoal-dark);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);box-shadow:var(--cartoon-shadow);padding:6px 12px;font-size:.85rem;font-weight:800;transition:transform .1s,box-shadow .14s}.tritris-audio-btn:hover{transform:translateY(-2px) var(--skew-light);box-shadow:var(--neon-glow)}.tritris-audio-btn.is-off{background:var(--oja-shadow-blue);color:var(--oja-cream-light);opacity:.75}.tritris-install-btn{cursor:pointer;font-family:var(--font-body);background:var(--oja-lamp-yellow);color:var(--oja-charcoal-dark);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);box-shadow:var(--cartoon-shadow);padding:10px 14px;font-weight:900;transition:transform .1s,box-shadow .14s}.tritris-install-btn:hover{transform:translateY(-2px) var(--skew-light);box-shadow:var(--neon-glow)}.tritris-queue-note{text-align:center;font-family:var(--font-terminal);color:var(--oja-motel-peach);margin:0}.tritris-lb{flex-direction:column;gap:8px;margin-top:6px;display:flex}.tritris-lb-head{text-align:center;font-family:var(--font-arcade);color:var(--oja-neon-yellow);font-size:.75rem}.tritris-lb-tabs{justify-content:center;gap:6px;display:flex}.tritris-lb-tab{cursor:pointer;font-family:var(--font-terminal);color:var(--oja-cream-light);border:2px solid var(--oja-shadow-blue);border-radius:var(--asym-radius-hard);background:0 0;padding:4px 10px;font-size:1rem;transition:transform .1s,border-color .1s,box-shadow .14s}.tritris-lb-tab:hover{transform:translateY(-1px) var(--skew-light);border-color:var(--oja-neon-magenta)}.tritris-lb-tab.is-active{border-color:var(--oja-neon-magenta);color:var(--oja-neon-yellow);box-shadow:0 0 10px #d63fc480}.tritris-lb-list{min-height:60px}.tritris-lb-state{text-align:center;font-family:var(--font-terminal);color:var(--oja-cream-light);opacity:.7;margin:8px 0}.tritris-lb-state.is-offline{color:var(--oja-retro-red);opacity:1}.tritris-lb-entries{counter-reset:lb;flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.tritris-lb-entries li{counter-increment:lb;font-family:var(--font-terminal);border-radius:6px;align-items:baseline;gap:8px;padding:2px 8px;font-size:1.05rem;display:flex}.tritris-lb-entries li:before{content:counter(lb, decimal-leading-zero);color:var(--oja-neon-magenta);min-width:2ch}.tritris-lb-entries li:first-child:before{color:var(--oja-neon-yellow)}.tritris-lb-entries li.is-me{outline:2px solid var(--oja-acid-green);background:#39ff141f}.tritris-lb-name{text-overflow:ellipsis;white-space:nowrap;letter-spacing:1px;flex:1;overflow:hidden}.tritris-lb-score{color:var(--oja-neon-yellow)}.tritris-submit{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.tritris-name-input{text-transform:uppercase;width:13ch;font-family:var(--font-arcade);letter-spacing:2px;color:var(--oja-neon-yellow);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);caret-color:var(--oja-acid-green);background:#0d131ae6;outline:none;padding:8px 10px;font-size:.8rem;transition:border-color .15s,box-shadow .15s}.tritris-name-input:focus{border-color:var(--oja-neon-magenta);box-shadow:var(--neon-glow)}.tritris-submit-btn{cursor:pointer;font-family:var(--font-body);background:var(--oja-acid-green);color:var(--oja-charcoal-dark);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);box-shadow:var(--cartoon-shadow);padding:8px 14px;font-weight:900;transition:transform .1s,box-shadow .14s}.tritris-submit-btn:hover:not(:disabled){transform:translateY(-2px) var(--skew-light);box-shadow:var(--neon-glow)}.tritris-submit-btn:disabled{opacity:.6;cursor:wait}.tritris-submit-note{text-align:center;width:100%;font-family:var(--font-terminal);color:var(--oja-motel-peach);min-height:1.2em;margin:0}.tritris-submit-note.is-ok{color:var(--oja-acid-green)}.tritris-userbar{font-family:var(--font-terminal);color:var(--oja-cream-light);justify-content:space-between;align-items:center;gap:10px;font-size:1.05rem;display:flex}.tritris-userbar b{color:var(--oja-neon-yellow);letter-spacing:1px}.tritris-logout{cursor:pointer;font-family:var(--font-body);color:var(--oja-purple-tentacle);border:2px solid var(--oja-purple-tentacle);border-radius:var(--asym-radius-hard);background:0 0;padding:3px 10px;font-size:.72rem;font-weight:700;transition:transform .1s,border-color .1s,color .1s,box-shadow .14s}.tritris-logout:hover{color:var(--oja-neon-magenta);border-color:var(--oja-neon-magenta);transform:translateY(-1px) var(--skew-light);box-shadow:var(--neon-glow)}.tritris-mode-btn.is-locked{background:var(--oja-shadow-blue);opacity:.7;filter:saturate(.4);cursor:not-allowed}.tritris-mode-btn.is-locked:hover{box-shadow:var(--cartoon-shadow);transform:none}.tritris-mode-btn.is-locked small{color:var(--oja-lamp-yellow);opacity:1}.tritris-go-rank{font-family:var(--font-terminal);color:var(--oja-acid-green);margin:0}.tritris-go-rank.is-off{color:var(--oja-motel-peach)}.tritris-game.mode-ultimate{background:radial-gradient(at 20% 30%,#7b2cbf59,#0000 55%),radial-gradient(at 80% 70%,#0050c84d,#0000 55%),radial-gradient(at 60% 20%,#d63fc42e,#0000 45%),#060a18;animation:26s ease-in-out infinite alternate ult-nebula}.tritris-game.mode-ultimate.bg-void{background:#04040a;animation:none}.tritris-game.mode-ultimate.bg-stars{background:radial-gradient(1.5px 1.5px at 15% 25%,#fff8,#0000),radial-gradient(1px 1px at 45% 70%,#fff6,#0000),radial-gradient(2px 2px at 75% 35%,#fffa,#0000),radial-gradient(1px 1px at 85% 80%,#fff7,#0000),radial-gradient(1.5px 1.5px at 30% 85%,#fff5,#0000),radial-gradient(1px 1px at 60% 15%,#fff8,#0000),#05060f;animation:none}@keyframes ult-nebula{0%{background-position:0 0,0 0,0 0,0 0}to{background-position:4% 6%,-5% -4%,3% -5%,0 0}}.tritris-scores-ov{z-index:52;background:#050308e6;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:5%;display:flex;position:absolute;inset:0}.tritris-scores-ov .tritris-lb{border:var(--cartoon-border-thick);border-radius:var(--asym-radius-soft);width:min(420px,94%);box-shadow:var(--cartoon-shadow);background:#0d131af5;padding:22px 24px}.cab-screen-inner .tritris-menu{justify-content:center;gap:5px;width:96%;max-height:98%;padding:10px 12px;overflow-y:auto}.cab-screen-inner .tritris-modes{gap:6px}.cab-screen-inner .tritris-modehdr{display:none}.cab-screen-inner .tritris-mode-card{border-width:2px;align-items:center;gap:8px;padding:5px 10px;display:flex}.cab-screen-inner .tritris-mode-card .mc-icon{grid-row:auto;font-size:1.25rem}.cab-screen-inner .tritris-mode-card .mc-title{font-size:1rem}.cab-screen-inner .tritris-mode-card small:not(.mc-best):not(.mc-lock){display:none}.cab-screen-inner .tritris-mode-card .mc-best,.cab-screen-inner .tritris-mode-card .mc-lock{white-space:nowrap;margin-left:auto;font-size:.66rem}.cab-screen-inner .tritris-modehdr{font-size:.9rem}.cab-screen-inner .tritris-menu .tritris-back{padding:4px 12px}.cab-screen-inner .tritris-title{font-size:clamp(1.4rem,4.5cqw,2.4rem)}.cab-screen-inner .tritris-hud{gap:12px;padding:6px;font-size:.58rem}.cab-screen-inner .tritris-gameover{gap:6px;max-height:98%;padding:12px 18px;overflow-y:hidden}.cab-screen-inner .tritris-gameover h2{font-size:1.8rem}.cab-screen-inner .tritris-gameover p{margin:1px 0;font-size:.85rem}.cab-screen-inner .tritris-submit{gap:4px}.cab-screen-inner .tritris-lb{margin-top:2px}.cab-screen-inner .tritris-lb-entries li{padding:1px 6px;font-size:.95rem}@media (max-width:640px){.tritris-menu{gap:10px;max-height:96%;padding:20px 16px;overflow-y:auto}.tritris-hud{gap:12px;padding:8px 6px;font-size:.6rem}.tritris-gameover{padding:16px 14px}}.tritris-lb-tab:focus-visible,.tritris-back:focus-visible,.tritris-mode-card:focus-visible,.tritris-arcade-item:focus-visible{outline-offset:2px;outline:3px solid var(--oja-neon-yellow)!important}.tritris-back:focus-visible,.tritris-mode-card:focus-visible{transform:translateY(-2px) var(--skew-light);box-shadow:var(--neon-glow)}.tritris-arcade-item:focus-visible{transform:scale(1.05) var(--skew-light);box-shadow:var(--neon-glow)}.set-ov,.hlp-ov{z-index:55;background:#050308cc;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.set-panel,.hlp-panel{border:var(--cartoon-border-thick);border-radius:var(--asym-radius-soft);width:min(430px,94%);max-height:96%;box-shadow:var(--cartoon-shadow);background:#0d131af5;flex-direction:column;gap:clamp(4px,1.6cqw,8px);padding:clamp(6px,2.4cqw,10px) clamp(8px,3cqw,14px);display:flex;overflow:hidden auto}.set-titlerow{justify-content:space-between;align-items:center;display:flex}.set-title{font-family:var(--font-arcade);letter-spacing:1px;color:var(--oja-neon-yellow);text-shadow:0 0 10px var(--oja-neon-magenta);margin:0;font-size:clamp(.55rem,3.4cqw,.85rem)}.set-close{cursor:pointer;background:var(--oja-retro-red);width:clamp(20px,6cqw,30px);height:clamp(20px,6cqw,30px);color:var(--oja-cream-light);border:3px solid var(--oja-charcoal-dark);border-radius:50%;justify-content:center;align-items:center;font-size:clamp(.6rem,3cqw,.9rem);font-weight:900;line-height:1;transition:transform .1s,box-shadow .14s;display:flex}.set-close:hover{transform:scale(1.15) var(--skew-light);box-shadow:var(--neon-glow)}.set-section{flex-direction:column;gap:clamp(4px,1.4cqw,7px);display:flex}.set-head{font-family:var(--font-arcade);letter-spacing:1px;color:var(--oja-acid-green);border-bottom:2px solid #7b2cbf80;margin:2px 0 0;padding-bottom:2px;font-size:clamp(.4rem,2.2cqw,.55rem)}.set-sublabel{font-family:var(--font-terminal);color:var(--oja-cream-light);opacity:.7;margin:2px 0 0;font-size:clamp(.6rem,3.2cqw,.85rem)}.set-label{font-family:var(--font-terminal);color:var(--oja-cream-light);min-width:30cqw;font-size:clamp(.65rem,3.6cqw,.95rem)}.set-slider{align-items:center;gap:10px;display:flex}.set-slider input[type=range]{accent-color:var(--oja-neon-magenta);cursor:pointer;flex:1;height:clamp(16px,4cqw,22px)}.set-toggle{cursor:pointer;align-items:center;gap:10px;display:flex}.set-toggle input{display:none}.set-knob{background:var(--oja-shadow-blue);border:2px solid var(--oja-charcoal-dark);border-radius:12px;flex:none;width:clamp(34px,9cqw,44px);height:clamp(17px,4.5cqw,22px);transition:background .15s;position:relative}.set-knob:after{content:"";background:var(--oja-cream-light);border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:1px;left:2px}.set-toggle input:checked+.set-knob{background:var(--oja-acid-green)}.set-toggle input:checked+.set-knob:after{transform:translate(20px)}.set-chips{flex-wrap:wrap;gap:6px;display:flex}.set-chip{cursor:pointer;font-family:var(--font-terminal);letter-spacing:1px;color:var(--oja-cream-light);border:2px solid var(--oja-shadow-blue);border-radius:var(--asym-radius-hard);background:0 0;padding:clamp(3px,1cqw,5px) clamp(7px,2.4cqw,11px);font-size:clamp(.6rem,3.2cqw,.9rem);transition:transform .1s,border-color .1s,box-shadow .14s}.set-chip:hover{transform:translateY(-1px) var(--skew-light);border-color:var(--oja-neon-magenta)}.set-chip.is-active{border-color:var(--oja-neon-magenta);color:var(--oja-neon-yellow);box-shadow:var(--neon-glow)}.set-customizer{flex-direction:column;gap:clamp(4px,1.4cqw,7px);display:flex}.set-random{cursor:pointer;font-family:var(--font-body);background:var(--oja-neon-magenta);color:var(--oja-charcoal-dark);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);box-shadow:var(--cartoon-shadow);margin-top:6px;padding:clamp(7px,2.4cqw,11px);font-size:clamp(.65rem,3.4cqw,.95rem);font-weight:900;transition:transform .1s,box-shadow .14s}.set-random:hover{transform:translateY(-2px) var(--skew-light);box-shadow:var(--neon-glow)}.set-close:focus-visible,.set-slider input[type=range]:focus-visible,.set-chip:focus-visible,.set-random:focus-visible,.set-toggle input:focus-visible~.set-knob{outline-offset:2px;outline:3px solid var(--oja-neon-yellow)!important}.hlp-table{border-collapse:collapse;width:100%;font-family:var(--font-terminal);color:var(--oja-cream-light);font-size:clamp(.6rem,3cqw,.8rem)}.hlp-table td{border-bottom:1px solid #7b2cbf33;padding:2px 4px}.hlp-key{color:var(--oja-neon-yellow);white-space:nowrap;width:34%}.set-menu{flex-direction:column;gap:2px;display:flex}.set-menu-item{cursor:pointer;text-align:left;font-family:var(--font-arcade);letter-spacing:1px;color:var(--oja-cream-light);background:0 0;border:none;border-bottom:1px solid #7b2cbf40;padding:clamp(4px,1.6cqw,8px) 8px clamp(4px,1.6cqw,8px) clamp(16px,5cqw,26px);font-size:clamp(.6rem,3.2cqw,.85rem);transition:color .1s,text-shadow .1s;position:relative}.set-menu-item .ai-arrow{opacity:0;color:var(--oja-neon-yellow);position:absolute;left:4px}.set-menu-item:hover,.set-menu-item:focus-visible{color:var(--oja-neon-yellow);text-shadow:0 0 10px var(--oja-neon-magenta);outline:none}.set-menu-item:hover .ai-arrow,.set-menu-item:focus-visible .ai-arrow{opacity:1;animation:.6s steps(2,end) infinite ai-blink}.set-back{cursor:pointer;font-family:var(--font-terminal);color:var(--oja-cream-light);background:0 0;border:none;border-bottom:1px solid #7b2cbf66;align-self:flex-start;margin-bottom:6px;padding:4px 6px;font-size:clamp(.65rem,3.4cqw,1rem)}.set-back:hover,.set-back:focus-visible{color:var(--oja-neon-yellow);outline:none}.set-keyrow{border-bottom:1px solid #7b2cbf33;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:clamp(4px,2cqw,10px);padding:clamp(4px,1.4cqw,6px) 2px;display:flex}.set-keyrow-label{font-family:var(--font-terminal);color:var(--oja-cream-light);font-size:clamp(.6rem,3.2cqw,.9rem)}.set-keyrow-key{font-family:var(--font-terminal);color:var(--oja-neon-yellow);text-align:center;min-width:20cqw;font-size:clamp(.65rem,3.4cqw,.95rem)}.set-keyrow-rebind{cursor:pointer;font-family:var(--font-terminal);color:var(--oja-cream-light);border:1px solid var(--oja-shadow-blue);background:0 0;border-radius:6px;padding:clamp(3px,1cqw,4px) clamp(6px,2.4cqw,10px);font-size:clamp(.55rem,3cqw,.85rem)}.set-keyrow-rebind.is-capturing{color:var(--oja-neon-yellow);border-color:var(--oja-neon-magenta);animation:.5s steps(2,end) infinite ai-blink}.set-keyrow-rebind:hover,.set-keyrow-rebind:focus-visible{border-color:var(--oja-neon-magenta);outline:none}.unlock-ov{z-index:60;cursor:pointer;background:radial-gradient(circle at 50% 40%,#2b1b45f5,#050308fa);flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;inset:0;overflow:hidden}.unlock-flash{opacity:0;background:#fff;animation:.9s ease-out unlock-flash;position:absolute;inset:0}@keyframes unlock-flash{0%{opacity:.9}30%{opacity:.15}45%{opacity:.5}to{opacity:0}}.unlock-pre{font-family:var(--font-arcade);color:var(--oja-acid-green);text-shadow:0 0 12px var(--oja-acid-green);margin:0;font-size:clamp(.5rem,1.6vw,.85rem);animation:.8s ease-out both unlock-rise}.unlock-title{text-align:center;font-family:var(--font-headline);letter-spacing:4px;color:var(--oja-neon-yellow);text-shadow:0 0 18px var(--oja-neon-magenta), 0 0 46px var(--oja-neon-magenta), var(--cartoon-shadow);margin:0;font-size:clamp(1.6rem,6vw,3.6rem);animation:1.1s cubic-bezier(.16,1,.3,1) .3s both unlock-zoom}@keyframes unlock-zoom{0%{opacity:0;filter:blur(6px);transform:scale(.2)rotate(-6deg)}60%{opacity:1;filter:blur();transform:scale(1.12)rotate(1deg)}to{transform:scale(1)}}@keyframes unlock-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.unlock-sub{font-family:var(--font-terminal);color:var(--oja-cream-light);opacity:.8;margin:0;animation:.8s ease-out .9s both unlock-rise}.unlock-confetti{width:10px;height:10px;animation:linear infinite unlock-fall;position:absolute;top:-12px}@keyframes unlock-fall{0%{opacity:1;transform:translateY(-4vh)rotate(0)}to{opacity:.7;transform:translateY(105vh)rotate(660deg)}}.egc-ov{z-index:70;background:radial-gradient(circle at 50% 35%,#2b1b45f7,#050308fc);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:4%;display:flex;position:absolute;inset:0;overflow:hidden}.egc-title{text-align:center;font-family:var(--font-headline);letter-spacing:4px;color:var(--oja-neon-yellow);text-shadow:0 0 18px var(--oja-neon-magenta), 0 0 40px var(--oja-neon-magenta), var(--cartoon-shadow);margin:0;font-size:clamp(1.6rem,5.5vw,3.2rem);animation:.9s ease-in-out infinite alternate egc-pulse}.egc-title.egc-small{font-size:clamp(1.2rem,3.6vw,2.1rem);animation:none}@keyframes egc-pulse{0%{transform:scale(1)}to{transform:scale(1.05)}}.egc-mode{font-family:var(--font-arcade);color:var(--oja-acid-green);text-shadow:0 0 10px var(--oja-acid-green);margin:0;font-size:clamp(.65rem,2vw,1rem)}.egc-hint{font-family:var(--font-terminal);color:var(--oja-cream-light);opacity:.6;margin:0}.egc-era{font-family:var(--font-terminal);color:var(--oja-motel-peach);letter-spacing:2px;margin:0;font-size:1rem}.egc-lights{pointer-events:none;position:absolute;inset:0}.egc-lights span{transform-origin:50% 0;opacity:.16;filter:blur(6px);width:16%;height:160%;animation:2.6s ease-in-out infinite alternate egc-sweep;position:absolute;top:-30%;left:50%}.egc-lights span:first-child{background:linear-gradient(#d63fc4,#0000);animation-delay:0s}.egc-lights span:nth-child(2){background:linear-gradient(#00f0f0,#0000);animation-delay:.6s}.egc-lights span:nth-child(3){background:linear-gradient(#ffe600,#0000);animation-delay:1.2s}.egc-lights span:nth-child(4){background:linear-gradient(#39ff14,#0000);animation-delay:1.8s}@keyframes egc-sweep{0%{transform:rotate(-38deg)}to{transform:rotate(38deg)}}.egc-confetti{width:9px;height:9px;animation:linear infinite egc-fall;position:absolute;top:-12px}@keyframes egc-fall{0%{opacity:1;transform:translateY(-4vh)rotate(0)}to{opacity:.6;transform:translateY(108vh)rotate(720deg)}}.egc-flash{z-index:80;pointer-events:none;background:#fff;animation:1.2s cubic-bezier(.1,.8,.3,1) forwards egc-flash-fade;position:absolute;inset:0}@keyframes egc-flash-fade{0%{opacity:.95}to{opacity:0}}.egc-stats{font-family:var(--font-terminal);grid-template-columns:auto auto;gap:8px 22px;margin:0;font-size:clamp(1rem,2.4vw,1.4rem);display:grid}.egc-stats dt{color:var(--oja-cream-light);opacity:.75;text-align:right}.egc-stats dd{color:var(--oja-neon-yellow);margin:0;font-weight:700}.egc-next{cursor:pointer;font-family:var(--font-body);background:var(--oja-acid-green);color:var(--oja-charcoal-dark);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);box-shadow:var(--cartoon-shadow);margin-top:8px;padding:10px 22px;font-size:1rem;font-weight:900}.egc-next:hover{box-shadow:var(--neon-glow)}.egc-outro{justify-content:flex-start;padding-top:6%}.egc-lines{width:100%;max-width:640px;max-height:55%;font-family:var(--font-terminal);color:#b565f0;text-shadow:0 0 6px #b565f099;font-size:clamp(.95rem,2vw,1.25rem);line-height:1.5;overflow-y:auto}.egc-lines p{margin:0 0 2px;animation:.7s ease-out both egc-linein}@keyframes egc-linein{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}.egc-search-input{transition:border-color .2s,box-shadow .2s}.egc-search-input:focus{box-shadow:0 0 8px #39ff1466;border-color:var(--oja-acid-green)!important}.egc-finishers{flex-direction:column;gap:4px;width:min(460px,92%);max-height:50%;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.egc-finishers li{font-family:var(--font-terminal);color:var(--oja-cream-light);border-radius:8px;align-items:baseline;gap:10px;padding:6px 10px;font-size:1.1rem;transition:background .15s,transform .15s;display:flex}.egc-finishers li:hover{background:#ffffff0f;transform:translate(4px)}.egc-finishers li:before{content:attr(data-rank);color:var(--oja-neon-magenta);min-width:3ch;font-weight:700}.egc-finishers li span{letter-spacing:1px;flex:1}.egc-finishers li b{color:var(--oja-neon-yellow)}.egc-finishers li.is-me{outline:2px solid var(--oja-acid-green);background:#39ff141f}.cab-screen-inner .egc-ov{gap:8px;padding:4% 5%;overflow-y:hidden}.cab-screen-inner .egc-title{letter-spacing:2px;font-size:clamp(1.3rem,4.5vw,2.2rem)}.cab-screen-inner .egc-title.egc-small{font-size:clamp(1.05rem,3.6vw,1.5rem)}.cab-screen-inner .egc-stats{gap:4px 16px;font-size:clamp(.85rem,2.4vw,1.1rem)}.cab-screen-inner .egc-outro{padding-top:4%}.cab-screen-inner .egc-lines{max-height:62%;font-size:clamp(.7rem,2.2vw,.85rem);line-height:1.3;overflow-y:hidden}.cab-screen-inner .egc-finishers{max-height:55%;overflow-y:hidden}.cab-screen-inner .egc-finishers li{padding:4px 8px;font-size:clamp(.85rem,2.4vw,1.05rem)}.cab-screen-inner .egc-search-wrap{margin-bottom:2px}.cab-screen-inner .egc-search-input{padding:5px 10px;font-size:.9rem}.cab-screen-inner .egc-next{margin-top:4px;padding:8px 18px;font-size:.9rem}.egc-next:focus-visible,.egc-search-input:focus-visible{outline-offset:2px;outline:3px solid var(--oja-neon-yellow)!important}.egc-next:focus-visible{box-shadow:var(--neon-glow)}.pvp-battle{gap:6px;display:flex;position:absolute;inset:0}.pvp-me{flex:1;min-width:0;position:relative}.pvp-opp{border-left:3px solid var(--oja-purple-tentacle);background:#0d131ae0;flex-direction:column;flex:none;align-items:center;gap:6px;width:148px;padding:8px 6px;display:flex}.pvp-opp-tag{font-family:var(--font-arcade);letter-spacing:1px;color:var(--oja-neon-yellow);text-align:center;word-break:break-all;font-size:.6rem}.pvp-opp-board{border:3px solid var(--oja-charcoal-dark);border-radius:6px;overflow:hidden}.pvp-opp-stats{font-family:var(--font-terminal);color:var(--oja-cream-light);font-size:.95rem}.pvp-opp-status{align-items:center;gap:8px;display:flex}.pvp-led{background:var(--oja-acid-green);width:12px;height:12px;box-shadow:0 0 8px var(--oja-acid-green);border-radius:50%}.pvp-led--dead{background:var(--oja-retro-red);box-shadow:0 0 8px var(--oja-retro-red)}.pvp-garbage{font-family:var(--font-terminal);color:var(--oja-retro-red);opacity:0;font-size:.85rem}.pvp-garbage.is-active{animation:.9s ease-out pvp-garbage-flash}@keyframes pvp-garbage-flash{0%{opacity:1;transform:scale(1.25)}to{opacity:0;transform:scale(1)}}.pvp-me.garbage-warning .tritris-canvas{animation:.3s ease-in-out infinite alternate pvp-pulsing-red}@keyframes pvp-pulsing-red{0%{outline:4px solid var(--oja-retro-red);box-shadow:0 0 15px var(--oja-retro-red)}to{outline:4px solid #ff4d4d;box-shadow:0 0 30px #ff4d4d}}.pvp-result{z-index:45;background:#050308d1;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.pvp-result-box{border:var(--cartoon-border-thick);border-radius:var(--asym-radius-soft);box-shadow:var(--cartoon-shadow);background:#0d131af5;flex-direction:column;align-items:center;gap:8px;padding:14px 20px;display:flex}.pvp-result-title{font-family:var(--font-headline);letter-spacing:3px;color:var(--oja-neon-yellow);text-shadow:0 0 16px var(--oja-neon-magenta), var(--cartoon-shadow);font-size:clamp(1.6rem,5vw,2.6rem)}.pvp-result-sub{font-family:var(--font-terminal);color:var(--oja-cream-light);font-size:1.1rem}.pvp-result-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.pvp-btn{cursor:pointer;font-family:var(--font-body);background:var(--oja-acid-green);color:var(--oja-charcoal-dark);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);box-shadow:var(--cartoon-shadow);padding:10px 18px;font-weight:900;transition:transform .1s,box-shadow .14s}.pvp-btn:hover{transform:translateY(-2px) var(--skew-light);box-shadow:var(--neon-glow)}@media (max-width:520px){.pvp-battle{flex-direction:column-reverse}.pvp-opp{border-left:none;border-bottom:3px solid var(--oja-purple-tentacle);flex-direction:row;justify-content:center;width:auto}.pvp-opp-board{transform-origin:50%;transform:scale(.7)}}.pvl-ov{z-index:48;background:#050308d9;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.pvl-panel{border:var(--cartoon-border-thick);border-radius:var(--asym-radius-soft);width:min(420px,94%);max-height:96%;box-shadow:var(--cartoon-shadow);background:#0d131af2;flex-direction:column;gap:8px;padding:12px 16px;display:flex;overflow:hidden}.pvl-title{text-align:center;letter-spacing:2px;font-family:var(--font-headline);color:var(--oja-neon-yellow);text-shadow:var(--cartoon-shadow), 0 0 14px var(--oja-neon-magenta);margin:0;font-size:1.7rem}.pvl-list{flex-direction:column;gap:8px;display:flex}.pvl-btn{cursor:pointer;text-align:left;font-family:var(--font-body);background:var(--oja-purple-tentacle);color:var(--oja-cream-light);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);box-shadow:var(--cartoon-shadow);padding:11px 14px;font-size:.95rem;font-weight:900;transition:transform .1s,box-shadow .14s}.pvl-btn:hover:not(:disabled){transform:translateY(-2px) var(--skew-light);box-shadow:var(--neon-glow)}.pvl-btn:disabled{opacity:.6;cursor:wait;transform:none}.pvl-back{cursor:pointer;font-family:var(--font-body);background:var(--oja-cream-light);color:var(--oja-charcoal-dark);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);box-shadow:var(--cartoon-shadow);align-self:center;padding:6px 14px;font-weight:700;transition:transform .1s,box-shadow .14s}.pvl-back:hover{transform:translateY(-2px) var(--skew-light);box-shadow:var(--neon-glow)}.pvl-hint{font-family:var(--font-terminal);color:var(--oja-cream-light);opacity:.8;margin:0;font-size:.95rem}.pvl-status{text-align:center;font-family:var(--font-arcade);color:var(--oja-acid-green);text-shadow:0 0 8px var(--oja-acid-green);margin:0;font-size:.7rem}.pvl-error{text-align:center;min-height:1em;font-family:var(--font-terminal);color:var(--oja-retro-red);margin:0}.pvl-input{width:100%;font-family:var(--font-terminal);letter-spacing:1px;color:var(--oja-neon-yellow);border:var(--cartoon-border);border-radius:var(--asym-radius-hard);background:#0a0812e6;outline:none;padding:10px 12px;font-size:1.05rem;transition:border-color .15s,box-shadow .15s}.pvl-input:focus{border-color:var(--oja-neon-magenta);box-shadow:var(--neon-glow)}.pvl-link{color:var(--oja-acid-green);font-size:.85rem}.pvl-incoming{flex-direction:column;gap:6px;display:flex}.pvl-challenge{border:3px solid var(--oja-neon-magenta);border-radius:var(--asym-radius-hard);box-shadow:3px 3px 0 var(--oja-charcoal-dark);background:#7b2cbf40;align-items:center;gap:8px;padding:6px 10px;animation:1.4s ease-in-out infinite pvl-blink;display:flex}@keyframes pvl-blink{50%{box-shadow:0 0 14px #d63fc4b3}}.pvl-challenge-tag{font-family:var(--font-arcade);color:var(--oja-neon-yellow);flex:1;font-size:.62rem}.pvl-mini{cursor:pointer;font-family:var(--font-body);background:var(--oja-acid-green);color:var(--oja-charcoal-dark);border:3px solid var(--oja-charcoal-dark);border-radius:var(--asym-radius-hard);box-shadow:2px 2px 0 var(--oja-charcoal-dark);padding:4px 10px;font-size:.75rem;font-weight:800;transition:transform .1s,box-shadow .14s}.pvl-mini:hover{transform:translateY(-1px) var(--skew-light);box-shadow:0 0 8px var(--oja-neon-magenta)}.pvl-mini-no{background:var(--oja-retro-red);color:var(--oja-cream-light)}.pvl-btn:focus-visible,.pvl-back:focus-visible,.pvl-mini:focus-visible,.pvp-btn:focus-visible,.pvl-input:focus-visible{outline-offset:2px;outline:3px solid var(--oja-neon-yellow)!important}.pvl-btn:focus-visible,.pvl-back:focus-visible{transform:translateY(-2px) var(--skew-light);box-shadow:var(--neon-glow)}.pvl-mini:focus-visible{transform:translateY(-1px) var(--skew-light);box-shadow:0 0 8px var(--oja-neon-magenta)}.install-banner{z-index:500;max-width:92vw;color:var(--oja-cream-light);border:var(--cartoon-border-thick);border-radius:var(--asym-radius-hard);box-shadow:var(--cartoon-shadow);font-family:var(--font-terminal);background:#0d131af5;align-items:center;gap:10px;padding:10px 14px;font-size:.95rem;display:flex;position:fixed;bottom:14px;left:50%;transform:translate(-50%)}.install-banner button{cursor:pointer;font-family:var(--font-terminal);background:var(--oja-acid-green);color:var(--oja-charcoal-dark);border:2px solid var(--oja-charcoal-dark);white-space:nowrap;border-radius:8px;padding:6px 12px;font-weight:700}.install-banner-close{font-size:1.1rem;color:var(--oja-cream-light)!important;background:0 0!important;border:none!important;padding:2px 6px!important}
