*{box-sizing:border-box}:root{--a:#61f4e8;--b:#ff71cb;--bg:#11132d}body{margin:0;background:radial-gradient(ellipse at 10% -10%,color-mix(in srgb,var(--a) 25%,transparent),transparent 45%),var(--bg);color:#fff;font:16px/1.45 system-ui,sans-serif;min-height:100vh}.shell{width:min(1120px,calc(100% - 28px));margin:auto}header{height:72px;border-bottom:1px solid #ffffff22;display:flex;align-items:center;justify-content:space-between;font-size:.8rem;font-weight:900;letter-spacing:.15em}.brand{display:flex;align-items:center;gap:8px;color:white;text-decoration:none}.brand b{color:var(--a)}.logo{display:grid;place-items:center;width:34px;height:34px;background:linear-gradient(135deg,var(--a),var(--b));border-radius:11px;color:#111;font-size:1.2rem}.badge,.eyebrow{font-size:.68rem;color:var(--a);font-weight:900;letter-spacing:.14em}.intro{display:flex;justify-content:space-between;align-items:center;padding:20px 2px}h1{font-size:clamp(2rem,5vw,3.6rem);line-height:1;margin:4px 0 8px}.intro p:last-child{max-width:650px;color:#d4d9ed;margin:0}.hero{width:90px;height:90px;border-radius:25px;display:grid;place-items:center;font-size:3.7rem;background:linear-gradient(145deg,#ffffff18,#ffffff06);border:1px solid #ffffff2d;box-shadow:0 0 32px color-mix(in srgb,var(--a) 25%,transparent)}.hero img{width:72px;height:72px;object-fit:contain;filter:drop-shadow(0 8px 14px #0007)}.layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:15px;align-items:start}.game-card,.panel{background:#10172bdc;border:1px solid #ffffff24;border-radius:19px;box-shadow:0 18px 48px #0004}.game-card{padding:13px}.game-top{display:flex;justify-content:space-between;padding:1px 4px 10px;font-size:.7rem;font-weight:900;letter-spacing:.1em;color:#b9c4df}.game-top>div:first-child{display:flex;gap:16px}.game-top b,.score b{color:var(--a)}canvas{display:block;width:100%;height:auto;border-radius:12px;background:#101831;touch-action:none;border:1px solid #ffffff20}#message{color:#cbd3e7;font-size:.82rem;min-height:26px;margin:10px 3px 0}aside{display:grid;gap:12px}.panel{padding:17px}.panel h2{font-size:.78rem;letter-spacing:.14em;color:var(--a);margin:0 0 9px}.panel p{font-size:.83rem;color:#cbd3e7;margin:0}.stats{margin-top:18px;padding-top:13px;border-top:1px solid #ffffff1e;display:flex;justify-content:space-between;font-size:.63rem;color:#8f9ab4;letter-spacing:.08em}.stats b{display:block;color:white;font-size:.85rem;margin-top:4px}.goal>span{font-size:.7rem;font-weight:900;color:var(--a);letter-spacing:.12em}.goal p{margin:8px 0 16px}button{font:inherit;font-weight:900;border:0;border-radius:11px;padding:12px 15px;background:linear-gradient(110deg,var(--a),var(--b));color:#12192c;cursor:pointer;touch-action:manipulation}button:hover{filter:brightness(1.1)}button:active{transform:translateY(1px)}.controls{display:flex;flex-wrap:wrap;gap:7px;padding:8px 1px 0}.controls button{flex:1;min-width:95px;padding:10px 12px;font-size:.75rem}footer{border-top:1px solid #ffffff22;margin-top:16px;padding:15px 0 30px;color:#94a1bd;font-size:.72rem}.theme-art{display:flex;gap:8px;margin:0 0 14px;overflow:auto}.theme-art figure{margin:0;min-width:76px;padding:7px 8px;border:1px solid #ffffff20;border-radius:13px;background:#ffffff09;text-align:center}.theme-art img{width:44px;height:44px;object-fit:contain}.theme-art figcaption{font-size:.54rem;color:#bfc8df;white-space:nowrap;max-width:70px;overflow:hidden;text-overflow:ellipsis}#sound{padding:5px 8px;margin-left:9px;font-size:.58rem}.progress{height:5px;margin-top:7px;border-radius:9px;background:#ffffff12;overflow:hidden}.progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--a),var(--b));transition:width .2s}@media(max-width:780px){.layout{grid-template-columns:1fr}aside{grid-template-columns:1fr 1fr}.goal{align-self:start}}@media(max-width:520px){.shell{width:min(100% - 18px,480px)}header{height:58px;font-size:.7rem}.badge{font-size:.55rem}.intro{padding:17px 0}.hero{width:64px;height:64px;font-size:2.7rem;border-radius:18px}.hero img{width:52px;height:52px}.intro p:last-child{font-size:.8rem;padding-right:8px}.layout{gap:9px}.game-card{padding:8px;border-radius:14px}aside{grid-template-columns:1fr}.panel{padding:13px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}