:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#e7f5ff;background:#030a18;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid #6de7ff;outline-offset:3px}.top{display:flex;align-items:center;gap:30px;padding:16px 3%;background:#060e21;border-bottom:1px solid #18395a;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:14px;color:#36d9ff;letter-spacing:4px;line-height:.9}.brand-icon{font-size:37px;filter:drop-shadow(0 0 8px #c64cff)}.brand b{font-size:29px;text-shadow:0 0 13px #158eff}.brand small{display:block;color:#cb79ff;text-align:center;font-size:12px;margin-top:9px;letter-spacing:9px}.top nav{display:flex;gap:8px;flex-wrap:wrap;flex:1}.top nav button,.header-right button{background:none;border:0;color:#b9d4e8;padding:12px;border-radius:12px}.top nav button:hover,.top nav .active{background:#113272;color:#fff;box-shadow:0 0 15px #246bda66}.header-right{display:flex;align-items:center;gap:10px}.header-right input{background:#06182f;color:#fff;border:1px solid #287ba4;border-radius:22px;padding:12px 17px;width:200px}main{max-width:1600px;margin:auto}.hero{min-height:325px;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:35px 4%;background:radial-gradient(ellipse at 78% 40%,#4a0c72aa,transparent 38%),radial-gradient(ellipse at 42% 0%,#082b63,transparent 65%),#031022;border-bottom:1px solid #174369;overflow:hidden}.hero-copy{max-width:700px;z-index:1}.eyebrow,.section-heading h2,.more h2{color:#41d7ff;letter-spacing:5px;font-size:15px}.hero h1{font-size:clamp(36px,5vw,70px);margin:10px 0 0;color:#37d7ff;line-height:1.1;text-shadow:0 0 22px #1b96ff}.hero h1 em{font-style:normal;color:#ed64ed;text-shadow:0 0 20px #c535ee}.hero h2{font-size:clamp(20px,2.4vw,30px);color:#31cfff;margin:10px 0}.hero p{color:#afcde2;line-height:1.5;font-size:18px}.hero-actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:18px}.primary,.outline,.play,.install button{border-radius:13px;padding:13px 24px;font-weight:750}.primary{color:#fff;border:1px solid #f99dff;background:linear-gradient(120deg,#ff4dd8,#7d4eff,#2885ff);box-shadow:0 0 18px #e34dff}.outline{color:#9deaff;border:1px solid #21baff;background:#031527}.cabinet{margin-right:7%;width:220px;height:255px;background:linear-gradient(145deg,#1a1552,#070c21);border:5px solid #fc54d3;box-shadow:0 0 24px #ed2ebc,20px 20px 50px #000;border-radius:24px 24px 12px 12px;transform:perspective(700px) rotateY(-12deg);text-align:center;flex-shrink:0}.cab-top{padding:16px;color:#34dfff;font-weight:900;font-size:24px;text-shadow:0 0 12px #23adff}.cab-top span{font-size:13px;letter-spacing:6px;color:#db74ff}.cab-screen{font-size:70px;margin:5px 15px;background:#070f29;border:3px solid #245aff;border-radius:12px;box-shadow:inset 0 0 20px #2246e8}.cab-controls{padding:10px;font-size:19px}.catalog{padding:12px 3% 20px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-heading span{color:#69b6dd}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.game-card{border:1px solid #175183;background:linear-gradient(#0a1c36,#041124);border-radius:18px;overflow:hidden;transition:transform .2s,box-shadow .2s}.game-card:hover{transform:translateY(-4px);box-shadow:0 0 23px #1575c744}.art{height:190px;position:relative;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,#144ab9,#040c27 70%)}.art.snake{background:radial-gradient(circle,#075a4c,#051b23 70%)}.art.space{background:radial-gradient(circle,#4a1278,#080b28 70%)}.art.pong{background:radial-gradient(circle,#074d79,#071126 70%)}.art-symbol{font-size:100px;color:#ffda32;text-shadow:0 0 25px currentColor;z-index:1}.snake .art-symbol{color:#46f69a}.space .art-symbol{color:#f06cff}.pong .art-symbol{color:#39dfff}.art-grid{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#ffffff0a 1px,transparent 1px),linear-gradient(#ffffff0a 1px,transparent 1px);background-size:27px 27px}.category{position:absolute;top:12px;left:12px;background:#ffda39;color:#061023;border-radius:20px;padding:6px 12px;font-size:11px;font-weight:900;z-index:2}.green .category{background:#3dff91}.violet .category{background:#d56bff}.cyan .category{background:#35cfff}.star{position:absolute;right:12px;top:10px;z-index:2;background:#09112cbd;border:1px solid #3e82b6;border-radius:50%;color:#fff;font-size:23px;width:39px;height:39px}.star.on{color:#ffdb4d}.card-body{padding:16px 18px}.card-body h3{margin:0;font-size:20px}.card-body p{color:#b0c7db;line-height:1.45;min-height:63px;margin:6px 0}.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}.play{background:#ffd63e;border:0;color:#0a1530;min-width:110px;box-shadow:0 0 16px #f6bd2799}.green .play{background:#48ee91;box-shadow:0 0 16px #35eb8c66}.violet .play{background:#bb56ef;box-shadow:0 0 16px #aa45ed88}.cyan .play{background:#34c8ff;box-shadow:0 0 16px #26aaff88}.score-caption{font-size:11px;color:#a5c2d9;text-align:center}.score-caption strong{display:block;font-size:17px;color:#fff}.more{display:flex;gap:24px;justify-content:space-between;padding:12px 3%}.more>div:first-child{flex:1}.more p{color:#9dbbd0}.install{border:1px solid #38479c;background:linear-gradient(135deg,#072039,#260c3d);padding:16px;border-radius:18px;max-width:340px}.install b{color:#36d8ff}.install button{background:linear-gradient(90deg,#654eff,#d92aff);border:0;color:#fff}.install small{display:block;color:#a8dfff;margin-top:6px}footer{padding:20px 3%;display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;color:#d2e8f7;font-size:13px}.leaderboard{max-width:700px;margin:auto}.leaderboard>div{display:flex;justify-content:space-between;padding:18px;border-bottom:1px solid #1a4e72}.game-page{min-height:100vh;background:radial-gradient(circle at 50% 25%,#102455,#030916 70%);padding:18px}.game-bar{max-width:960px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.game-bar h2{color:#4de3ff}.game-bar button{background:#10254d;border:1px solid #367cb3;border-radius:10px;color:#fff;padding:10px 14px}.game-stats{max-width:640px;margin:15px auto;display:flex;justify-content:space-between;color:#b3dbfa}.game-stats b{color:#fff}.game-stage{max-width:640px;margin:auto}canvas{display:block;width:100%;height:auto;background:#050b1c;border:2px solid #1c78c8;border-radius:12px;box-shadow:0 0 22px #1478ed66;touch-action:none}.touch-controls{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin:16px 0}.touch-controls button{min-width:60px;min-height:54px;background:#142f61;border:1px solid #42baff;color:#fff;border-radius:13px;font-size:19px;touch-action:none;-webkit-user-select:none;user-select:none}.instructions{text-align:center;color:#a6c6e0;line-height:1.5}@media(max-width:1100px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.top nav{order:3;flex-basis:100%}.cabinet{margin-right:0}}@media(max-width:620px){.cards{grid-template-columns:1fr}.hero{padding:25px 5%}.cabinet{display:none}.header-right{width:100%}.header-right input{flex:1;min-width:0}.more{flex-direction:column}.install{max-width:none}.game-bar h2{order:-1;flex-basis:100%;text-align:center}.brand b{font-size:23px}.hero h1{font-size:37px}.top{gap:15px}.top nav button{padding:9px}}.art.maze{overflow:hidden;background:radial-gradient(ellipse at 40% 65%,#102e77,#03081e 70%)}.maze-poster{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:repeating-linear-gradient(90deg,transparent 0 34px,rgba(23,82,230,.11) 35px 36px),repeating-linear-gradient(0deg,transparent 0 34px,rgba(23,82,230,.11) 35px 36px)}.poster-path{position:absolute;border:4px solid #166bff;border-radius:13px;box-shadow:0 0 9px #125dff,inset 0 0 8px #125dff}.path-a{left:8%;top:16%;width:78%;height:66%}.path-b{left:26%;top:-24%;width:45%;height:65%}.path-c{left:45%;top:55%;width:57%;height:55%}.poster-dots{position:absolute;top:53%;left:6%;right:0;white-space:nowrap;font-size:25px;letter-spacing:8px;color:#ffd675;text-shadow:0 0 8px #ffac38}.poster-hero{position:absolute;width:69px;height:69px;left:20%;top:48%;border-radius:50%;background:conic-gradient(from 36deg,transparent 0deg 65deg,#ffda28 66deg 360deg);filter:drop-shadow(0 0 14px #ffcb22);animation:poster-chomp .42s ease-in-out infinite alternate}@keyframes poster-chomp{to{background:conic-gradient(from 12deg,transparent 0deg 23deg,#ffda28 24deg 360deg)}}.poster-ghost{position:absolute;width:39px;height:43px;border-radius:22px 22px 5px 5px;filter:drop-shadow(0 0 9px currentColor)}.poster-ghost:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:9px;background:inherit;clip-path:polygon(0 0,13% 100%,25% 0,38% 100%,50% 0,63% 100%,75% 0,88% 100%,100% 0)}.poster-ghost i{position:absolute;top:13px;width:11px;height:15px;border-radius:50%;background:#fff}.poster-ghost i:first-child{left:8px}.poster-ghost i:nth-child(2){right:7px}.poster-ghost i:after{content:"";position:absolute;top:6px;left:5px;width:5px;height:6px;border-radius:50%;background:#1940a1}.pg-red{left:56%;top:28%;background:#ff4b64;color:#ff4b64}.pg-pink{left:75%;top:57%;background:#ff86cf;color:#ff86cf}.pg-orange{left:45%;top:67%;background:#ffa745;color:#ffa745}@media(prefers-reduced-motion:reduce){.poster-hero{animation:none}}.maze-game-page .game-bar{max-width:900px}.maze-game-page .game-stats,.maze-game-page .game-stage{max-width:850px}.maze-game-page canvas{border:1px solid #2346a9;box-shadow:0 0 20px #1845b755;image-rendering:auto}@media(min-width:701px){.maze-game-page{height:100dvh;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:8px 16px 6px}.maze-game-page .game-bar{width:100%;max-width:850px;min-height:44px;flex-shrink:0}.maze-game-page .game-bar h2{margin:3px 0;font-size:20px}.maze-game-page .game-stats{width:min(100%,680px);margin:5px auto 6px;flex-shrink:0}.maze-game-page .game-stage{flex:1;min-height:0;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.maze-game-page canvas{height:min(calc(100dvh - 193px),100%);width:auto;max-width:100%;object-fit:contain;flex-shrink:1}.maze-game-page .touch-controls{margin:7px 0 4px;flex-shrink:0}.maze-game-page .touch-controls button{min-height:36px;min-width:44px;padding:4px 9px;font-size:16px}.maze-game-page .instructions{margin:4px auto 0;font-size:12px;flex-shrink:0}}.maze-mobile-input,.maze-game-page .touch-controls [data-key=Space]{display:none}@media(hover:none)and (pointer:coarse){.maze-game-page .maze-mobile-input{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0;width:100%;margin:3px auto 0}.maze-control-switch{display:flex;gap:3px;padding:3px;border:1px solid #3a6aa1;background:#07142acc;border-radius:999px}.maze-control-switch button{color:#a4c9ea;background:transparent;border:0;border-radius:999px;padding:4px 15px;font-size:12px;font-weight:700}.maze-control-switch button.selected{color:#fff;background:linear-gradient(120deg,#2368bb,#7846c9);box-shadow:0 0 9px #438ff566}.maze-joystick{width:140px;height:140px;position:relative;touch-action:none;user-select:none;-webkit-user-select:none;display:grid;place-items:center;flex-shrink:0}.maze-joystick-base{position:relative;width:125px;height:125px;border-radius:50%;border:2px solid #5ccfff77;background:radial-gradient(circle,#246ab322 0,#246ab322 38%,#0a214a88 70%,#07152a99);box-shadow:inset 0 0 18px #45bfff33,0 0 16px #2466b744}.maze-joystick-base:before,.maze-joystick-base:after{content:"";position:absolute;background:#73cfff30;pointer-events:none}.maze-joystick-base:before{height:1px;left:9px;right:9px;top:50%}.maze-joystick-base:after{width:1px;top:9px;bottom:9px;left:50%}.maze-joystick-knob{position:absolute;left:50%;top:50%;width:56px;height:56px;transform:translate(-50%,-50%);border-radius:50%;border:2px solid #88e9ffbb;background:radial-gradient(circle at 35% 30%,#80d9ff9e,#367bd2aa 55%,#263c83c9);box-shadow:0 0 12px #3cb5ff88,inset 0 1px 6px #d3f9ff55;pointer-events:none;transition:box-shadow .12s}.maze-joystick.engaged .maze-joystick-knob{box-shadow:0 0 21px #49d5ffcc,inset 0 1px 6px #d3f9ff88}.maze-game-page[data-control-mode=joystick] .touch-controls,.maze-game-page[data-control-mode=buttons] .maze-joystick{display:none}.maze-game-page[data-control-mode=buttons] .touch-controls{display:flex;margin:5px 0}.maze-game-page .game-stage{justify-content:flex-start}.maze-game-page canvas{max-height:calc(100dvh - 258px);height:auto;width:auto;max-width:100%;object-fit:contain}.maze-game-page[data-control-mode=buttons] canvas{max-height:calc(100dvh - 180px)}.maze-game-page .instructions{font-size:11px;line-height:1.2}}@media(hover:none)and (pointer:coarse)and (max-height:650px){.maze-joystick{width:104px;height:104px}.maze-joystick-base{width:96px;height:96px}.maze-joystick-knob{width:44px;height:44px}.maze-game-page canvas{max-height:calc(100dvh - 208px)}}.other-mobile-input{display:none}@media(hover:none)and (pointer:coarse){.other-game-page .other-mobile-input{display:flex;flex-direction:column;align-items:center;gap:9px;width:100%;margin:12px auto 3px}.other-control-switch{display:flex;gap:3px;padding:3px;border:1px solid #3a6aa1;background:#07142acc;border-radius:999px}.other-control-switch button{color:#a4c9ea;background:transparent;border:0;border-radius:999px;padding:5px 16px;font-size:12px;font-weight:700}.other-control-switch button.selected{color:#fff;background:linear-gradient(120deg,#2368bb,#7846c9);box-shadow:0 0 9px #438ff566}.other-control-row{width:100%;display:flex;align-items:center;justify-content:center;gap:25px;min-height:142px}.space-game-page .other-control-row{justify-content:space-between;padding:0 clamp(12px,5vw,55px)}.other-joystick{width:140px;height:140px;position:relative;touch-action:none;user-select:none;-webkit-user-select:none;display:grid;place-items:center;flex-shrink:0}.other-joystick-base{position:relative;width:125px;height:125px;border-radius:50%;border:2px solid #5ccfff77;background:radial-gradient(circle,#246ab322 0,#246ab322 38%,#0a214a88 70%,#07152a99);box-shadow:inset 0 0 18px #45bfff33,0 0 16px #2466b744}.other-joystick-base:before,.other-joystick-base:after{content:"";position:absolute;background:#73cfff30;pointer-events:none}.other-joystick-base:before{height:1px;left:9px;right:9px;top:50%}.other-joystick-base:after{width:1px;top:9px;bottom:9px;left:50%}.other-joystick-knob{position:absolute;left:50%;top:50%;width:56px;height:56px;transform:translate(-50%,-50%);border-radius:50%;border:2px solid #88e9ffbb;background:radial-gradient(circle at 35% 30%,#80d9ff9e,#367bd2aa 55%,#263c83c9);box-shadow:0 0 12px #3cb5ff88,inset 0 1px 6px #d3f9ff55;pointer-events:none}.other-joystick.engaged .other-joystick-knob{box-shadow:0 0 21px #49d5ffcc,inset 0 1px 6px #d3f9ff88}.other-fire{width:106px;height:106px;border-radius:50%;flex-shrink:0;border:3px solid #ff7194;color:#ffe6f0;background:radial-gradient(circle,#e9417888,#95183d55 72%,#360d2899);font-size:19px;font-weight:900;letter-spacing:2px;box-shadow:0 0 18px #ff357555,inset 0 0 14px #ff6e7a44;touch-action:none;user-select:none;-webkit-user-select:none}.other-fire.engaged{background:radial-gradient(circle,#ff7398cc,#bc2158aa);box-shadow:0 0 28px #ff468baa}.snake-game-page .other-fire,.pong-game-page .other-fire,.other-game-page[data-control-mode=joystick] .touch-controls,.other-game-page[data-control-mode=buttons] .other-control-row{display:none}.other-game-page[data-control-mode=buttons] .touch-controls{display:flex;margin:8px 0}.other-game-page .touch-controls [data-key=Space]{display:none}.space-game-page[data-control-mode=buttons] .touch-controls [data-key=Space]{display:inline-flex;align-items:center;justify-content:center}.other-game-page .instructions{font-size:12px;margin:7px auto}}@media(hover:none)and (pointer:coarse)and (max-width:360px){.other-joystick{width:116px;height:116px}.other-joystick-base{width:106px;height:106px}.other-joystick-knob{width:48px;height:48px}.other-fire{width:90px;height:90px;font-size:16px}.other-control-row{min-height:120px}}.maze-audio-settings{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;padding:8px 12px;color:#bdcafa;font-size:12px}.maze-audio-settings label{display:flex;align-items:center;gap:7px}.maze-audio-settings input{width:90px;accent-color:#8c80ff}.other-game-page .maze-audio-settings{display:none}@media(max-width:480px){.maze-audio-settings{gap:8px;padding:5px}.maze-audio-settings input{width:75px}}
