*{box-sizing:border-box}body{margin:0;font-family:ui-rounded,"Trebuchet MS",Arial,sans-serif;color:#193d61;background:#fffdf8}a{color:inherit}header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 6%;background:#fff}header a{text-decoration:none;font-weight:800}nav{display:flex;gap:18px;flex-wrap:wrap;font-size:14px}.brand{font-size:22px;color:#148ba8}.wrap{max-width:1050px;margin:auto;padding:42px 22px}.hero{background:linear-gradient(120deg,#e5faff,#fff0f7,#fff7df);border-radius:30px;padding:35px;display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:center}.hero img{width:100%;border-radius:22px}h1{font-size:clamp(32px,5vw,54px);line-height:1.08;margin:12px 0}p{line-height:1.65}.muted{color:#536d7f}.tag{color:#0c849d;font-size:12px;letter-spacing:1px;font-weight:800}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:25px 0}.card{padding:25px;border-radius:22px;background:#eef9fc}.card:nth-child(2){background:#fff0f6}.card:nth-child(3){background:#fff7df}.card:nth-child(4){background:#f2efff}.btn{display:inline-block;padding:13px 22px;background:#188fb0;color:white;border-radius:28px;text-decoration:none;font-weight:800;margin-top:8px}.btn.secondary{background:#fff;color:#126b85;border:2px solid #c4e7ec}.note{padding:20px;background:#f6f3fc;border-radius:18px;margin:25px 0}footer{padding:25px 6%;background:#193d61;color:#fff;font-size:13px}@media(max-width:680px){.hero{grid-template-columns:1fr;padding:24px}.grid{grid-template-columns:1fr}header{align-items:flex-start;flex-direction:column}}
.game-wrap{background:#e8f9ff;padding:12px;border-radius:25px;max-width:900px}#play{display:block;width:100%;height:min(62vh,520px);min-height:320px;border-radius:18px;touch-action:none;background:#bdefff none center/cover no-repeat;cursor:pointer}.controls{display:flex;justify-content:space-between;gap:12px;margin-top:12px;flex-wrap:wrap}button{border:0;border-radius:22px;background:white;color:#174866;padding:12px 18px;font-weight:800;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #e77ba5;outline-offset:3px}#exit-fullscreen{display:none;position:absolute;right:14px;top:14px;z-index:10;background:rgba(255,255,255,.94);box-shadow:0 2px 12px #173a5266;min-width:110px;min-height:48px}.game-wrap.immersive{position:fixed;inset:0;z-index:1000;max-width:none;width:100vw;height:100dvh;padding:0;border-radius:0;background:#172f42}.game-wrap.immersive #play{width:100%;height:100%;min-height:0;border-radius:0}.game-wrap.immersive .controls{position:absolute;bottom:16px;left:16px;right:16px;margin:0;justify-content:flex-start}.game-wrap.immersive #fullscreen{display:none}.game-wrap.immersive #exit-fullscreen{display:block}.game-wrap:fullscreen{position:relative;max-width:none;width:100vw;height:100dvh;padding:0;border-radius:0;background:#172f42}.game-wrap:fullscreen #play{width:100%;height:100%;min-height:0;border-radius:0}.game-wrap:fullscreen .controls{position:absolute;bottom:16px;left:16px;right:16px;margin:0;justify-content:flex-start}.game-wrap:fullscreen #fullscreen{display:none}.game-wrap:fullscreen #exit-fullscreen{display:block}.game-wrap:fullscreen button{background:rgba(255,255,255,.92);min-height:48px}.game-wrap:fullscreen #play{touch-action:none}@media(max-width:600px){.game-wrap:fullscreen .controls{bottom:10px;left:10px;right:10px}.game-wrap:fullscreen button{padding:10px 12px}}


.game-wrap.immersive{position:fixed!important;inset:0!important;z-index:99999!important;width:100vw!important;height:100dvh!important;max-width:none!important;border-radius:0!important;display:flex;flex-direction:column;padding:0!important;background:#e8f9ff!important}.game-wrap.immersive #play{flex:1!important;height:auto!important;min-height:0!important;border-radius:0!important}.game-wrap.immersive .controls{position:absolute;bottom:14px;left:14px;right:14px;pointer-events:none}.game-wrap.immersive .controls button{pointer-events:auto}.game-wrap.immersive #exit-fullscreen{display:block!important;position:absolute;top:15px;right:15px;z-index:10000}@media(max-width:600px){.game-wrap.immersive .controls{bottom:8px;left:8px;right:8px;gap:4px}.game-wrap.immersive .controls button{padding:10px;font-size:12px}}

/* v2.5.13: keep the canvas within its frame and fullscreen controls reachable. */
.game-wrap{overflow:hidden;position:relative}
.game-wrap #play{display:block;width:100%;max-width:100%;overflow:hidden}
.game-wrap.immersive,.game-wrap:fullscreen{overflow:hidden;box-sizing:border-box}
.game-wrap.immersive #play,.game-wrap:fullscreen #play{width:100%!important;height:100%!important;min-height:0!important;flex:1 1 auto!important}
.game-wrap.immersive .controls,.game-wrap:fullscreen .controls{z-index:12;pointer-events:none}
.game-wrap.immersive .controls button,.game-wrap:fullscreen .controls button{pointer-events:auto}
.game-wrap.immersive #exit-fullscreen,.game-wrap:fullscreen #exit-fullscreen{z-index:13}
@media(max-width:600px){.game-wrap.immersive .controls,.game-wrap:fullscreen .controls{bottom:max(10px,env(safe-area-inset-bottom));left:10px;right:10px}}

/* v2.5.14: prevent browser tap/press highlighting over the game surface. */
#play,.game-wrap,.game-wrap *{
  -webkit-tap-highlight-color:transparent;
}
#play{
  -webkit-user-select:none;
  user-select:none;
  outline:none;
}
#play:active,#play:focus{
  opacity:1!important;
  filter:none!important;
  background-color:transparent;
}

/* v2.5.15 portrait layout: compact embedded game; no blurred letterboxing. */
@media(max-width:600px){
 .wrap{padding:20px 14px}
 .game-wrap{padding:8px;border-radius:18px}
 .game-wrap:not(.immersive):not(:fullscreen) #play{
   height:min(52dvh,420px);min-height:300px;
 }
 .game-wrap:not(.immersive):not(:fullscreen) .controls{margin-top:8px;gap:7px}
 .game-wrap:not(.immersive):not(:fullscreen) .controls button{padding:10px 12px}
}
