:root{color-scheme:dark;--bg:#0c0a19;--panel:#141123;--muted:#a79bbd;--pink:#ff6bae;--cyan:#69eeea;--line:#342942;font-family:'Courier New',monospace;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100dvh;background:radial-gradient(ellipse at 20% 20%,#2b153844,transparent 55%),radial-gradient(ellipse at 90% 80%,#122f3a55,transparent 60%),var(--bg);color:#f7eef8}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:1px solid var(--line);background:#1d172d;touch-action:manipulation}button:hover{border-color:var(--cyan)}button:active{transform:translateY(1px)}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}button:disabled{opacity:.5;cursor:default}.arcade{width:min(680px,100%);margin:auto;padding:26px 32px 18px}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:16px}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--muted);font-size:10px;letter-spacing:2px;line-height:1.6}.brand b{display:block;color:#e6dae9;font-size:12px;letter-spacing:4px}.edition{font-size:10px;color:#a496b2;letter-spacing:1px}.title-row{display:flex;justify-content:space-between;align-items:center;margin:24px 0 22px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--muted);line-height:1.6;margin:0 0 10px}h1{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(32px,6vw,48px);line-height:.95;letter-spacing:1px;margin:0;transform:skew(-5deg);text-shadow:3px 3px 0 #9b3379}h1 span{color:var(--pink);margin-left:8px}.icon-button{padding:10px;border-radius:8px;font-size:22px}.icon-button span{font-size:9px;vertical-align:middle}.machine{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:25px;max-width:490px;margin:auto}.score-strip{display:flex;justify-content:space-between;padding:0 1px 12px}.score-strip div:last-child{text-align:right}.score-strip span,.stat span{display:block;font-size:10px;letter-spacing:2px;color:var(--muted);margin-bottom:5px}.score-strip strong{font-size:24px;letter-spacing:1px;color:var(--cyan)}.score-strip div:last-child strong{color:var(--pink)}.screen{position:relative;aspect-ratio:1/2;width:100%;border:1px solid #624373;box-shadow:0 0 0 4px #211a30,0 0 32px #ee63af10;overflow:hidden;background:#0b0b17;touch-action:none;user-select:none}.screen:after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(transparent 0 3px,#00000018 3px 4px)}#board{display:block;width:100%;height:100%}.overlay{position:absolute;inset:0;background:#0d0b19eF;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:18px;z-index:2}.overlay[hidden]{display:none}.mini-block{font-size:54px;color:var(--cyan);text-shadow:0 0 22px #69eeea55;margin-bottom:22px}h2{font-size:32px;line-height:1.1;letter-spacing:-1px;margin:8px 0 18px}.overlay h2{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(32px,6vw,46px);letter-spacing:2px;color:#f4d9ef;text-shadow:3px 3px #8f315f}.overlay p:not(.eyebrow){font-size:11px;line-height:1.7;color:var(--muted);max-width:180px}.primary{width:100%;padding:16px 12px;background:var(--pink);color:#210f25;border:0;font-weight:bold;font-size:13px;letter-spacing:1px;box-shadow:0 4px 0 #8e365d;border-radius:3px}.overlay .primary{margin:14px 0 5px;max-width:210px}.primary span{margin-left:12px}.tap-hint{position:absolute;bottom:0;left:0;right:0;display:flex;pointer-events:none;color:#d2bbe855;background:linear-gradient(transparent,#0b0b17bb);padding:20px 0 7px;font-size:16px}.tap-hint span{width:33.333%;text-align:center}.touch-controls{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:13px}.touch-controls button{height:56px;font-size:25px;border-radius:5px;border-bottom:3px solid #493257;background:linear-gradient(#251a36,#1b152a)}.touch-controls button:nth-child(2){color:var(--pink)}.touch-controls small{display:block;font-size:8px;letter-spacing:1px;color:var(--muted);margin-top:1px}.under-controls{display:flex;gap:8px;margin-top:8px}.under-controls button{flex:1;font-size:10px;padding:10px 2px;letter-spacing:1px;border-radius:4px}.under-controls button:first-child{color:var(--cyan)}aside{padding-top:4px;display:flex;flex-direction:column}.next-section{border-bottom:1px solid var(--line);padding:0 0 18px;margin-bottom:22px}#next{width:100%;height:auto;display:block}.stat{margin-bottom:24px}.stat strong{font-size:32px;font-weight:normal}.side-note{margin-top:auto;padding-bottom:24px;color:var(--muted);font-size:10px;line-height:1.8}.side-note span{font-size:28px;color:var(--pink)}.side-button{display:flex;justify-content:space-between;border:0;border-top:1px solid var(--line);background:transparent;padding:15px 0;font-size:10px;letter-spacing:1px;text-align:left}.side-button span{color:var(--pink)}footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:24px;padding-top:16px;font-size:9px;letter-spacing:1px;color:var(--muted)}footer i{display:inline-block;width:5px;height:5px;background:var(--cyan);border-radius:50%;margin-right:5px}footer button{border:0;background:transparent;color:var(--muted);font-size:9px;padding:0}.desktop-hint{text-align:center;font-size:8px;color:var(--muted);margin-top:22px;line-height:1.7}dialog{position:fixed;width:min(420px,calc(100% - 32px));max-height:85dvh;overflow:auto;border:1px solid #705071;border-radius:12px;background:#191226;color:#f7eef8;padding:32px;box-shadow:0 20px 100px #0009}dialog::backdrop{background:#060410cf;backdrop-filter:blur(6px)}dialog p{font-size:13px;line-height:1.7;color:#c4b9d2}dialog h2{font-family:Impact,'Arial Black',sans-serif;font-size:36px;letter-spacing:1px}dialog .eyebrow{font-size:10px;color:var(--pink)}.close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:28px;padding:0 6px;color:var(--muted)}.install-icon{border-radius:16px;margin-bottom:20px}.instruction{padding:12px;background:#0e0c1a;border-radius:6px}.text-button{width:100%;border:0;background:transparent;padding:18px 0 0;font-size:11px;color:var(--muted)}.small{font-size:11px!important;color:var(--muted)}label{display:block;font-size:10px;letter-spacing:1px;margin:20px 0 8px}input{width:100%;background:#0e0b18;color:var(--cyan);font:inherit;padding:14px;border:1px solid #705071;border-radius:4px;margin-bottom:16px;font-size:16px}ol{padding:0;list-style:none;counter-reset:rank}li{counter-increment:rank;display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:13px 0;font-size:12px}li:before{content:counter(rank,decimal-leading-zero);color:var(--muted);font-size:10px}li:first-child{color:var(--pink)}li strong{margin-left:auto;color:var(--cyan)}
@media(min-width:600px){.screen{max-height:56dvh;max-width:28dvh;margin:auto}.machine{grid-template-columns:minmax(0,1fr) 110px;max-width:440px}.game-column{max-width:300px}.title-row{margin-bottom:28px}}
@media(max-width:599px){.arcade{padding:14px 18px max(12px,env(safe-area-inset-bottom))}header{padding-bottom:10px}.title-row{margin:16px 0}.title-row .eyebrow{font-size:8px;margin-bottom:8px}.machine{grid-template-columns:minmax(0,1fr) 72px;gap:18px;max-width:390px}.screen{max-height:calc(100dvh - 344px);min-height:260px;width:auto;max-width:100%;aspect-ratio:1/2;margin:auto}.score-strip strong{font-size:21px}.score-strip span,.stat span{font-size:9px}.stat strong{font-size:27px}.stat{margin-bottom:18px}.next-section{margin-bottom:18px;padding-bottom:12px}.next-section .eyebrow{font-size:8px;letter-spacing:1px}.side-note{font-size:9px;padding-bottom:10px}.side-button{font-size:9px;padding:13px 0;letter-spacing:0}.touch-controls button{height:48px}.under-controls button{padding:10px 0}footer{margin-top:16px;padding-top:12px;font-size:8px;letter-spacing:0}footer button{font-size:8px}.desktop-hint{display:none}.mini-block{font-size:36px;margin-bottom:10px}.overlay{padding:12px}.overlay h2{margin:4px 0 8px}.overlay .eyebrow{font-size:8px}.overlay p:not(.eyebrow){margin:6px 0}.overlay .primary{padding:13px 8px;font-size:11px}.edition{font-size:8px}h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.screen:after{display:none}}
