*{box-sizing:border-box}body{margin:0;background:#10151e;color:#f7efe3;font-family:Arial,Helvetica,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:700 12px Arial;letter-spacing:1px;border:1px solid #647282;background:#202b39;color:#fff;cursor:pointer;border-radius:7px;min-height:44px}button:hover{background:#334357}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid #ffd27c;outline-offset:3px}a{color:inherit;text-decoration:none}.maze-app{max-width:1600px;margin:auto;padding:0 3vw}header{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff1c}.brand{font-size:25px;font-style:italic;font-weight:900;color:#ff5748}.brand span{font-size:10px;font-style:normal;color:#f7efe3;letter-spacing:2px;margin-left:10px}.back{font-size:10px;letter-spacing:1px}.maze-layout{min-height:calc(100dvh - 120px);display:grid;grid-template-columns:minmax(150px,1fr) minmax(0,3.7fr) minmax(150px,1fr);gap:28px;align-items:center;padding:24px 0}.eyebrow{font-size:10px;letter-spacing:1.6px;color:#e7b66c}h1{font-size:clamp(25px,3.6vw,52px);line-height:.97;letter-spacing:-2px;margin:20px 0}h1 em{color:#ff5a49}.intro{font-size:13px;line-height:1.6;color:#a8b6c8}.stats{border-top:1px solid #ffffff24;margin-top:25px;padding-top:20px;display:grid;gap:20px}.stats>span{font-size:9px;color:#9facbe;letter-spacing:1px}.stats strong{display:block;font-size:25px;color:#fff;margin-top:6px;letter-spacing:0;font-variant-numeric:tabular-nums}#status{font-size:12px;line-height:1.5;color:#edc58a;min-height:36px}#pause{width:100%}#pause:disabled{opacity:.4}.board-wrap{position:relative;max-width:100%;width:min(100%,calc((100dvh - 170px)*19/15));justify-self:center;line-height:0;background:#0a1019;border-radius:12px;box-shadow:0 22px 70px #0006;border:1px solid #566172;overflow:hidden}canvas{display:block;width:100%;height:auto;touch-action:none}#curtain{position:absolute;inset:0;background:#08121bd9;display:grid;place-items:center;padding:20px;line-height:1.5}#curtain[hidden]{display:none}.card{text-align:center;max-width:330px}.card h2{font-size:26px;line-height:1.05;margin:18px 0;color:#fff}.card p{font-size:14px;color:#bfccda}.card button{width:100%;margin-top:10px}#play{background:#e74737;border-color:#ff7664}#play:hover{background:#fa5e4e}.card a{display:block;margin-top:17px;font-size:10px;letter-spacing:1px}.controls{text-align:center}.controls>.eyebrow{font-size:9px;line-height:1.5;display:block}.dpad{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;max-width:190px;margin:20px auto}.dpad button{aspect-ratio:1;font-size:18px;touch-action:manipulation;user-select:none}.dpad button:active,.dpad button.selected{background:#8c342b;border-color:#ff8974}.dpad [data-dir=up]{grid-column:2}.dpad [data-dir=left]{grid-column:1}.dpad [data-dir=down]{grid-column:2}.hub{display:grid;place-items:center;font-size:12px;font-style:italic;color:#73829a}.controls p{font-size:11px;line-height:1.8;color:#c5ceda}.controls p span{font-size:9px;color:#8c9aad}.legend{display:grid;gap:13px;text-align:left;font-size:11px;max-width:155px;margin:25px auto}.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:8px}.dot{background:#ffcf6b;border-radius:50%!important}.red{background:#ff5140}.blue{background:#65a8ed}footer{text-align:center;font-size:8px;letter-spacing:2px;color:#778497;height:36px}
@media(max-height:600px) and (min-width:600px){header{height:42px}.maze-app{padding:0 12px}.maze-layout{min-height:0;height:calc(100dvh - 42px);padding:8px 0;gap:12px;grid-template-columns:130px minmax(0,1fr) 140px}.board-wrap{width:min(100%,calc((100dvh - 58px)*19/15))}h1{font-size:24px;margin:9px 0}.intro,.legend,footer{display:none}.stats{margin-top:10px;padding-top:8px;gap:7px}.stats strong{font-size:18px;margin-top:3px}#status{font-size:10px;margin:8px 0;min-height:28px}.dpad{margin:8px auto;gap:4px}.dpad button{min-height:40px}.card h2{font-size:21px;margin:8px 0}.card p{font-size:12px;line-height:1.4;margin:7px 0}.card a{margin-top:8px}.card button{min-height:36px;margin-top:5px}.card .eyebrow{font-size:8px}#curtain{padding:12px}.controls p{margin:6px 0}.info>.eyebrow{font-size:8px}}
@media(max-width:599px){.maze-app{padding:0 12px}header{height:55px}.brand span{font-size:8px}.back{font-size:9px}.maze-layout{grid-template-columns:1fr;padding:15px 0;gap:16px;min-height:0}.info{display:grid;grid-template-columns:1fr auto;gap:5px 15px}.info>.eyebrow,.intro,.info h1,#status{display:none}.stats{display:flex;gap:30px;margin:0;padding:0;border:0}.stats strong{font-size:21px}.stats>span{font-size:8px}#pause{width:85px}.board-wrap{width:100%}.controls>.eyebrow{display:none}.controls{display:grid;grid-template-columns:1fr 1fr;align-items:center}.dpad{width:165px;margin:0}.controls p{margin:0}.legend{display:none}.card h2{font-size:23px}.card p{font-size:13px}footer{font-size:7px;letter-spacing:1px}}
@media(max-height:360px) and (min-width:600px){
 .info>.eyebrow,.controls>p{display:none}
 .info h1{font-size:22px;margin:4px 0 8px}
 .stats{gap:5px;margin-top:6px;padding-top:6px}.stats strong{font-size:16px}
 #status{min-height:0;margin:6px 0;font-size:10px}#pause{min-height:34px}
 .controls>.eyebrow{font-size:8px}.dpad{max-width:132px;margin:8px auto}.dpad button{min-height:38px}
 #curtain{padding:8px}.card .eyebrow{display:none}.card h2{font-size:18px}.card p{font-size:11px}.card a{font-size:9px}
}

#sound{width:100%;margin-bottom:8px;font-size:10px;touch-action:manipulation}button,a{touch-action:manipulation}@media(max-width:599px){#sound{grid-column:2;grid-row:1;width:85px;margin:0}#pause{grid-column:2;grid-row:2}.stats{grid-row:1 / 3;align-self:center}}

.dpad button:disabled{opacity:.35;cursor:default;background:#202b39}
