:root{--arcade-ink:#08090d;--arcade-panel:#161922;--arcade-panel-light:#292d38;--arcade-cream:#f0e7cc;--arcade-red:#e34646;--arcade-cyan:#51d4df;--arcade-blue:#536ecf;--arcade-yellow:#f2c94c;--arcade-green:#68d391;--arcade-pixel:var(--font-geist-mono), "Courier New", monospace}.arcade-page,.tetris-page{min-height:100svh;color:var(--arcade-cream);font-family:var(--arcade-pixel);background:radial-gradient(circle at 50% -20%,#536ecf47,#0000 48%),linear-gradient(#0b0d16 0%,#05060a 100%)}.arcade-page{isolation:isolate;padding:clamp(1rem,3vw,2.5rem);position:relative;overflow:hidden}.arcade-page:before{content:"";z-index:-1;opacity:.18;transform-origin:bottom;background-image:linear-gradient(#51d4df14 1px,#0000 1px),linear-gradient(90deg,#51d4df14 1px,#0000 1px);background-size:32px 32px;position:fixed;inset:0;transform:perspective(360px)rotateX(58deg)scale(1.4)translateY(31%)}.arcade-scanlines,.tetris-page:after{content:"";z-index:20;pointer-events:none;opacity:.13;mix-blend-mode:multiply;background:repeating-linear-gradient(#0000 0 2px,#0000006b 2px 3px);position:fixed;inset:0}.arcade-header{z-index:1;grid-template-columns:1fr minmax(0,2fr) 1fr;align-items:start;width:min(1120px,100%);margin:0 auto clamp(2rem,5vw,4.5rem);display:grid;position:relative}.arcade-title-lockup{text-align:center;text-transform:uppercase}.arcade-title-lockup>span,.arcade-title-lockup>p,.arcade-game-title>span{color:var(--arcade-cyan);letter-spacing:.18em;margin:0;font-size:clamp(.58rem,1.4vw,.78rem);display:block}.arcade-title-lockup h1,.arcade-game-title h1{color:#fff7dc;font-family:var(--arcade-pixel);letter-spacing:-.06em;text-shadow:4px 0 0 var(--arcade-red), 0 4px 0 var(--arcade-blue), 4px 4px 0 #14151b;margin:.38rem 0;font-size:clamp(2rem,6vw,5rem);line-height:.94}.arcade-title-lockup>p{color:#f0e7cc94;letter-spacing:.12em}.arcade-pixel-button{border:3px solid var(--arcade-cream);min-height:2.55rem;color:var(--arcade-cream);font:700 .7rem/1 var(--arcade-pixel);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#171922;border-radius:0;justify-content:center;align-items:center;padding:.58rem .9rem;text-decoration:none;display:inline-flex;box-shadow:4px 4px #000}.arcade-pixel-button:hover,.arcade-pixel-button:focus-visible{color:#fff;background:var(--arcade-blue);outline:3px solid var(--arcade-cyan);outline-offset:3px}.arcade-pixel-button:active{transform:translate(3px,3px);box-shadow:1px 1px #000}.arcade-pixel-button:disabled{opacity:.4;cursor:not-allowed}.arcade-pixel-button--exit{color:#ffb0a8;border-color:#ff8f8f;justify-self:start}.arcade-power-light{color:var(--arcade-green);letter-spacing:.12em;text-transform:uppercase;justify-self:end;align-items:center;gap:.5rem;font-size:.64rem;display:inline-flex}.arcade-power-light:before{content:"";background:var(--arcade-green);width:.55rem;height:.55rem;box-shadow:0 0 12px var(--arcade-green);animation:1.4s steps(2,end) infinite arcade-power-blink}.arcade-game-grid{z-index:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2.4vw,1.75rem);width:min(1120px,100%);margin:0 auto;display:grid;position:relative}.arcade-game-card{min-height:11rem;color:var(--arcade-cream);background:linear-gradient(145deg,#20232c,#101219);border:4px solid #4a4f5e;grid-template-columns:5.7rem minmax(0,1fr);gap:1rem;padding:1rem;text-decoration:none;display:grid;position:relative;box-shadow:7px 7px #000}.arcade-game-card.is-ready{border-color:var(--arcade-cyan)}.arcade-game-card.is-ready:hover,.arcade-game-card.is-ready:focus-visible{border-color:#fff4b8;outline:none;transform:translate(-3px,-3px);box-shadow:10px 10px #000,0 0 22px #51d4df38}.arcade-game-card.is-locked{filter:grayscale(.7);opacity:.48}.arcade-cartridge-art{aspect-ratio:1/1.2;color:#26272d;background:#66686e;border:4px solid #898b91;align-self:start;place-items:center;width:5.7rem;display:grid;box-shadow:inset 0 -9px #4d4e53}.arcade-cartridge-art>strong{font-size:3.2rem}.arcade-tetris-mini{background:#101116;width:4.2rem;height:4.2rem;position:relative}.arcade-tetris-mini span{background:var(--arcade-red);border:2px solid #ffffff61;width:1rem;height:1rem;position:absolute}.arcade-tetris-mini span:first-child{background:var(--arcade-cyan);bottom:0;left:0}.arcade-tetris-mini span:nth-child(2){background:var(--arcade-cyan);bottom:0;left:1.05rem}.arcade-tetris-mini span:nth-child(3){background:var(--arcade-yellow);bottom:1.05rem;left:1.05rem}.arcade-tetris-mini span:nth-child(4){background:var(--arcade-yellow);bottom:0;left:2.1rem}.arcade-tetris-mini span:nth-child(5){background:var(--arcade-blue);bottom:1.05rem;left:2.1rem}.arcade-tetris-mini span:nth-child(6){background:var(--arcade-blue);bottom:0;left:3.15rem}.arcade-tetris-mini span:nth-child(7){background:var(--arcade-red);bottom:2.1rem;left:2.1rem}.arcade-game-copy span{color:var(--arcade-cyan);letter-spacing:.1em;text-transform:uppercase;font-size:.56rem}.arcade-game-copy h2{font:700 clamp(1.1rem, 2vw, 1.5rem)/1.1 var(--arcade-pixel);text-transform:uppercase;margin:.75rem 0 .45rem}.arcade-game-copy p{color:#f0e7cc8f;margin:0;font-size:.7rem;line-height:1.45}.arcade-card-cta{color:var(--arcade-yellow);text-transform:uppercase;font-size:.62rem;position:absolute;bottom:.7rem;right:.8rem}.arcade-footer{color:#f0e7cc6b;letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;gap:1rem;width:min(1120px,100%);margin:clamp(2rem,5vw,4rem) auto 0;font-size:.58rem;display:flex}.tetris-page{touch-action:manipulation;flex-direction:column;align-items:center;padding:clamp(.7rem,2vw,1.5rem);display:flex;position:relative;overflow-x:hidden}.arcade-game-header{z-index:2;grid-template-columns:1fr minmax(0,2fr) 1fr;align-items:center;width:min(820px,100%);margin-bottom:.75rem;display:grid}.arcade-game-header>.arcade-pixel-button:last-child,.tetris-header-actions{justify-self:end}.tetris-header-actions{gap:.45rem;display:flex}.arcade-game-title{text-align:center}.arcade-game-title h1{font-size:clamp(1.8rem,5vw,3.8rem)}.tetris-console{z-index:1;background:#b9b6ad;border:5px solid #777a82;width:min(760px,100%);padding:clamp(.7rem,2.5vw,1.5rem);position:relative;box-shadow:inset 0 0 0 6px #929087,10px 10px #000}.tetris-bezel{background:#30333d;border:5px solid #20222a;grid-template-columns:minmax(0,260px) minmax(8.4rem,1fr);justify-content:center;gap:clamp(.8rem,3vw,2rem);width:100%;padding:clamp(.65rem,2vw,1.2rem);display:grid;box-shadow:inset 0 0 0 4px #101116}.tetris-board-wrap{aspect-ratio:1/2;background:#050609;border:5px solid #d7d1bf;width:100%;position:relative;box-shadow:0 0 0 4px #0d0e12}.tetris-board{grid-template-rows:repeat(20,1fr);grid-template-columns:repeat(10,1fr);width:100%;height:100%;padding:2px;display:grid}.tetris-cell{background:#07080b;border:1px solid #ffffff05;min-width:0;min-height:0;display:block;position:relative}.tetris-cell.is-filled{background:var(--piece-color,var(--arcade-cyan));border:2px solid #ffffff8f;box-shadow:inset 3px 3px #ffffff4d,inset -3px -3px #00000059}.piece-i,.piece-j{--piece-color:#4bcad4}.piece-t,.piece-o,.piece-z{--piece-color:#f1f0e7}.piece-l,.piece-s{--piece-color:#4f67c5}.tetris-cell.is-filled[data-level="1"],.tetris-cell.is-filled[data-level="6"]{filter:hue-rotate(38deg)}.tetris-cell.is-filled[data-level="2"],.tetris-cell.is-filled[data-level="7"]{filter:hue-rotate(80deg)}.tetris-cell.is-filled[data-level="3"],.tetris-cell.is-filled[data-level="8"]{filter:hue-rotate(145deg)}.tetris-cell.is-filled[data-level="4"],.tetris-cell.is-filled[data-level="9"]{filter:hue-rotate(230deg)}.tetris-cell.is-filled[data-level="5"]{filter:hue-rotate(300deg)}.tetris-cell.is-clearing{z-index:1;animation:.16s steps(3,end) forwards tetris-line-clear}.tetris-state-overlay{z-index:4;color:#fff7dc;text-align:center;background:#040508d6;flex-direction:column;justify-content:center;align-items:center;gap:.8rem;display:flex;position:absolute;inset:0}.tetris-state-overlay strong{letter-spacing:.08em;text-shadow:3px 3px 0 var(--arcade-blue);font-size:clamp(1.2rem,4vw,2rem)}.tetris-state-overlay>span{color:var(--arcade-cyan);font-size:.7rem}.tetris-stats{flex-direction:column;gap:.75rem;padding-top:.35rem;display:flex}.tetris-stat-box{color:#fff;text-align:right;background:#08090d;border:4px solid #d7d1bf;padding:.65rem;box-shadow:4px 4px #15161b}.tetris-stat-box>span{color:var(--arcade-red);letter-spacing:.08em;text-align:left;text-transform:uppercase;margin-bottom:.3rem;font-size:.58rem;display:block}.tetris-stat-box>strong{letter-spacing:.1em;font-size:clamp(1rem,3vw,1.5rem)}.tetris-next-box{flex:1}.tetris-next-grid{aspect-ratio:1;background:#050609;grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(4,1fr);width:min(100%,7.5rem);margin:.7rem auto 0;padding:.3rem;display:grid}.tetris-touch-controls{justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding:.65rem .35rem .1rem;display:none}.tetris-dpad{grid-template-columns:repeat(3,clamp(3rem,10vw,4rem));gap:.25rem;display:grid}.tetris-control-button{aspect-ratio:1;color:#e7e1d2;font:800 1.15rem/1 var(--arcade-pixel);-webkit-user-select:none;user-select:none;touch-action:none;background:#292a31;border:0;border-bottom:5px solid #09090c;border-radius:4px;place-items:center;display:grid;box-shadow:0 0 0 3px #77756e}.tetris-control-button:active:not(:disabled){border-bottom-width:2px;transform:translateY(3px)}.tetris-control-button:disabled{opacity:.38}.tetris-control-button--round{color:#fff;background:#b02c3d;border-bottom-color:#701f2a;border-radius:50%;width:clamp(3.4rem,12vw,4.4rem);box-shadow:0 0 0 4px #8c8980}.tetris-action-cluster{align-items:flex-end;gap:clamp(.7rem,3vw,1.4rem);display:flex;transform:rotate(-8deg)}.tetris-action-button-wrap{flex-direction:column;align-items:center;gap:.45rem;display:flex}.tetris-action-button-wrap>span{color:#47464a;text-transform:uppercase;font-size:.5rem;font-weight:800}.tetris-keyboard-help{color:#3d3c40;letter-spacing:.05em;text-align:center;text-transform:uppercase;margin:.9rem 0 0;font-size:.58rem;font-weight:700}@keyframes arcade-power-blink{0%,84%{opacity:1}85%,to{opacity:.34}}@keyframes tetris-line-clear{0%{opacity:1;transform:scale(1)}36%{filter:brightness(1.8);background:#fff;border-color:#fff;transform:scale(.84);box-shadow:0 0 8px #ffffffd9}70%{opacity:.8;transform:scaleX(.55)}to{opacity:0;transform:scaleX(0)}}@media (max-width:820px){.arcade-game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.arcade-page{padding:calc(env(safe-area-inset-top,0px) + .85rem) .85rem calc(env(safe-area-inset-bottom,0px) + 1rem)}.arcade-header,.arcade-game-header{grid-template-columns:auto 1fr auto;gap:.5rem}.arcade-header{align-items:center;margin-bottom:1.8rem}.arcade-header .arcade-pixel-button{color:#ffb0a8;width:2.8rem;padding-inline:0;font-size:0}.arcade-header .arcade-pixel-button:before{content:"←";color:#ffb0a8;font-size:1rem}.arcade-power-light{color:#0000;width:.7rem;overflow:hidden}.arcade-title-lockup h1{font-size:clamp(1.7rem,9vw,2.7rem)}.arcade-game-grid{grid-template-columns:1fr}.arcade-game-card{min-height:9.5rem}.arcade-footer{text-align:center;flex-direction:column;line-height:1.5}.tetris-page{padding:calc(env(safe-area-inset-top,0px) + .45rem) .45rem calc(env(safe-area-inset-bottom,0px) + .5rem);justify-content:flex-start}.arcade-game-header{margin-bottom:.45rem}.arcade-game-header .arcade-pixel-button{border-width:2px;min-height:2.15rem;padding:.45rem .55rem;font-size:.56rem}.tetris-header-actions{gap:.3rem}.tetris-header-actions .arcade-pixel-button{padding-inline:.4rem}.tetris-music-label,.arcade-game-title>span{display:none}.arcade-game-title h1{margin:0;font-size:1.65rem}.tetris-console{border-width:4px;width:min(100%,31rem);padding:.45rem;box-shadow:inset 0 0 0 4px #929087,5px 5px #000}.tetris-bezel{border-width:3px;grid-template-columns:minmax(0,1fr) 5.8rem;gap:.55rem;padding:.55rem;box-shadow:inset 0 0 0 2px #101116}.tetris-board-wrap{border-width:3px;box-shadow:0 0 0 2px #0d0e12}.tetris-cell.is-filled{border-width:1px;box-shadow:inset 2px 2px #ffffff4d,inset -2px -2px #00000059}.tetris-stats{gap:.45rem;padding-top:0}.tetris-stat-box{border-width:2px;padding:.4rem;box-shadow:2px 2px #15161b}.tetris-stat-box>span{margin-bottom:.15rem;font-size:.46rem}.tetris-stat-box>strong{letter-spacing:.04em;font-size:clamp(.72rem,4vw,1rem)}.tetris-next-grid{margin-top:.3rem;padding:.15rem}.tetris-touch-controls{margin-top:.55rem;padding:.45rem .15rem 0;display:flex}.tetris-dpad{grid-template-columns:repeat(3,clamp(2.75rem,15vw,3.6rem))}.tetris-control-button--round{width:clamp(3rem,16vw,3.8rem)}.tetris-keyboard-help{display:none}}@media (max-height:760px) and (max-width:620px){.tetris-console{width:min(100%,24rem)}.tetris-bezel{grid-template-columns:minmax(0,1fr) 5rem}.tetris-stat-box{padding:.25rem .35rem}.tetris-next-grid{width:4rem}.tetris-touch-controls{margin-top:.4rem}.tetris-dpad{grid-template-columns:repeat(3,2.65rem)}.tetris-control-button--round{width:3rem}}@media (max-height:760px) and (min-width:621px){.arcade-game-header{margin-bottom:.45rem}.tetris-console{width:min(650px,100%);padding:.75rem}.tetris-bezel{grid-template-columns:minmax(0,220px) minmax(8rem,1fr);padding:.8rem}.tetris-stats{gap:.5rem}.tetris-stat-box{padding:.5rem}}@media (prefers-reduced-motion:reduce){.arcade-power-light:before{animation:none}.tetris-cell.is-clearing{opacity:.3;animation:none}}
