/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.z-10{z-index:10}.block{display:block}.flex{display:flex}.hidden{display:none}.h-full{height:100%}.h-screen{height:100vh}.w-full{width:100%}.w-screen{width:100vw}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-3{gap:calc(var(--spacing) * 3)}.gap-5{gap:calc(var(--spacing) * 5)}.overflow-hidden{overflow:hidden}.bg-black{background-color:var(--color-black)}.object-fill{object-fit:fill}}@font-face{font-family:DOS;src:url(/assets/dosLikeFont-DdISv4LV.ttf)}html,body{background:#000;width:100%;height:100%;margin:0;overflow:hidden}.stars{z-index:0;will-change:background-position;opacity:.7;background-image:radial-gradient(circle,#fff 1px,#0000 2px),radial-gradient(circle,#fff 1px,#0000 2px),radial-gradient(circle,#fff 1px,#0000 2px);background-position:20px 40px,100px 200px,300px 100px;background-repeat:repeat;background-size:300px 300px,500px 500px,700px 700px;animation:120s linear infinite starsMove;position:absolute;inset:-1700px 0 0}@keyframes starsMove{0%{background-position:20px 40px,100px 200px,300px 100px}to{background-position:20px 2040px,100px 2200px,300px 2100px}}.crt-screen{z-index:1;position:absolute;inset:0;overflow:hidden}.crt-display{filter:contrast(1.1)brightness(1.05);justify-content:center;align-items:center;animation:2s forwards screenBoot;display:flex;position:absolute;inset:0;overflow:hidden}.crt-display:after{content:"";pointer-events:none;background:radial-gradient(#0000 40%,#0000008c 100%);position:absolute;inset:0}@keyframes screenBoot{0%{clip-path:inset(50% 0);filter:brightness(8)}25%{clip-path:inset(45% 0)}50%{clip-path:inset(0);filter:brightness(3)}to{clip-path:inset(0);filter:brightness();opacity:1}}.crt-content{box-sizing:border-box;z-index:20;pointer-events:auto;opacity:0;justify-content:center;align-items:center;width:100%;height:100%;padding:0 5vw;animation:1s 1s forwards contentFade;display:flex;position:relative}@keyframes contentFade{0%{opacity:0;filter:blur(20px)}to{opacity:1;filter:blur()}}.crt-scanlines{z-index:20;pointer-events:none;mix-blend-mode:screen;background:repeating-linear-gradient(#ffffff0a 0 1px,#0000 2px 5px);animation:.12s linear infinite scanMove;position:absolute;inset:0}@keyframes scanMove{0%{background-position-y:0}to{background-position-y:5px}}.crt-noise{z-index:20;pointer-events:none;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");animation:.15s steps(2,end) infinite noiseMove;position:absolute;inset:-50%}@keyframes noiseMove{0%{transform:translate(0)}25%{transform:translate(-5%,5%)}50%{transform:translate(5%,-5%)}75%{transform:translate(3%,3%)}to{transform:translate(0)}}.crt-flicker{z-index:20;pointer-events:none;opacity:0;background:#fff;animation:80ms infinite crtFlicker;position:absolute;inset:0}@keyframes crtFlicker{0%{opacity:0}15%{opacity:.025}40%{opacity:.01}60%{opacity:.04}to{opacity:0}}#app{color:#e6c38a;letter-spacing:1px;font-family:DOS,monospace}#game-column{flex-direction:column;align-items:center;gap:.9rem;display:flex}#board-stage{width:max-content;position:relative}#controls h2{color:#ffb347}#controls,#sidebar{background:#00000059;border-radius:.25rem;padding:.75rem}#controls li,#sidebar div{line-height:1.5}#controls ul{margin:0;padding-left:1rem}#mobile-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;width:100%;display:none}#mobile-controls button{color:#ffb347;background:#0009;border:1px solid #ffb34759;border-radius:.35rem;justify-content:center;align-items:center;min-height:2.4rem;padding:.35rem;font-size:1.1rem;line-height:1;display:flex}#mobile-controls button img{pointer-events:none;width:2rem;height:2rem;display:block}.game-overlay{z-index:30;background:#000000b8;justify-content:center;align-items:center;padding:1rem;display:flex;position:absolute;inset:0}.game-overlay.hidden{display:none}.hidden{display:none!important}.overlay-panel{width:min(95%,24rem);box-shadow:none;background:0 0;border:none;flex-direction:column;align-items:center;gap:.6rem;padding:.5rem .75rem;display:flex}.game-overlay{background:#000000e0}.overlay-button{color:#ffb347;letter-spacing:.25rem;cursor:pointer;background:#1a1a1a;border:2px solid #ffb3471f;padding:.5rem .9rem;font-family:DOS;font-size:1rem;transition:transform .12s,box-shadow .12s,background .12s;box-shadow:inset 1px 1px #ffffff0a,inset -1px -1px #0006}.overlay-button:hover,.overlay-button:focus-visible{text-shadow:0 0 14px #ffb347;background:linear-gradient(#ffb34708,#ffb34703);transform:translateY(-2px)scale(1.02)}.overlay-button:active{transform:translateY(0)scale(.99);box-shadow:inset 0 0 6px #0009}.overlay-ascii{color:#ffb347;text-shadow:0 0 10px #ffb347;letter-spacing:1px;white-space:pre;text-align:left;margin:0;font-size:clamp(.5rem,1.6vw,.85rem);line-height:1.12}.overlay-subtext{text-align:center;color:#e6c38a;margin:0;font-size:.8rem}.overlay-actions{flex-wrap:wrap;justify-content:center;gap:.7rem;width:100%;display:flex}.overlay-button{color:#ffb347;letter-spacing:.2rem;cursor:pointer;background:0 0;border:none;padding:.2rem .4rem;font-family:DOS;font-size:1rem;transition:all .25s}.overlay-button:hover,.overlay-button:focus-visible{text-shadow:0 0 14px #ffb347;outline:none;transform:scale(1.03)}@media (width<=768px){#app{flex-direction:column;justify-content:center;gap:1rem;width:80vw;height:70vh}#controls{display:none}#sidebar{flex-direction:row;order:1;justify-content:space-between;align-items:center;gap:.5rem;width:100%;display:flex}#game-column{flex:1;order:2;width:100%;min-height:0}#board{flex:none;margin:0 auto}#mobile-controls{flex:1;grid-auto-rows:1fr;align-items:stretch;width:100%;min-height:0;display:grid}#mobile-controls button{height:100%;min-height:0}}.tetris-block{width:20px;height:20px;image-rendering:pixelated;box-sizing:border-box;box-shadow:inset 1px 1px 0 #ffffff59, inset -1px -1px 0 #00000059, 0 0 6px var(--block-color);background:linear-gradient(135deg, #ffffff59, transparent 40%), var(--block-color);border:2px solid #000000b3;border-color:#fffc #000000b3 #000000b3 #fffc}.tetris-block:hover{filter:brightness(1.4);transform:scale(1.05)}#board{grid-template-rows:repeat(20,20px);grid-template-columns:repeat(10,20px);gap:2px;display:grid}.tetris-frame{background:silver;border:3px solid #404040;border-color:#fff #404040 #404040 #fff;padding:8px;box-shadow:inset 2px 2px gray,0 0 30px #ffb3474d}
