
    #moto-game-root, #moto-game-root *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
    #moto-game-root, #moto-game-root{margin:0;width:100%;height:100%;overflow:hidden;background:#050505;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;color:#fff}
    #moto-game-root button{font:inherit;color:inherit}
    #moto-game-root #app{position:relative;width:100%;height:100%;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#05233a,#020202 70%)}
    #moto-game-root #gamePoster{position:absolute;inset:0;z-index:40;width:100%;height:100%;padding:0;border:0;overflow:hidden;background:#031423;cursor:pointer}
    #moto-game-root #gamePoster>img{display:block;width:100%;height:100%;object-fit:cover}
    #moto-game-root .poster-play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#fff;background:linear-gradient(180deg,transparent 20%,rgba(0,20,38,.34),rgba(0,20,38,.62));text-shadow:0 4px 15px #000}
    #moto-game-root .poster-play>span{display:grid;place-items:center;width:clamp(62px,9vw,112px);aspect-ratio:1;padding-left:.08em;border:4px solid #fff;border-radius:50%;background:linear-gradient(145deg,#0f86d9,#00b4d8);box-shadow:0 12px 35px #001a2fcc;font-size:clamp(27px,4.3vw,55px);transition:transform .18s ease,filter .18s ease}
    #moto-game-root .poster-play strong{padding:9px 17px;border-radius:999px;background:rgba(0,31,55,.82);font:900 clamp(13px,2vw,25px) Inter,Arial,sans-serif;letter-spacing:.08em}
    #moto-game-root #gamePoster:hover .poster-play>span,#moto-game-root #gamePoster:focus-visible .poster-play>span{transform:scale(1.07);filter:brightness(1.12)}
    #moto-game-root .screen{position:absolute;inset:0;display:grid;place-items:center}
    #moto-game-root .hidden{display:none!important}
    #moto-game-root #menuCard{position:relative;width:min(100vw,calc(100vh * 1.2715));aspect-ratio:16/9;background:#063b60 url("../img/menu-pool-party.svg") center/cover no-repeat;box-shadow:0 0 0 3px #111,0 20px 70px #000;overflow:hidden}
    #moto-game-root .hotspot{position:absolute;right:4.3%;width:31%;height:12%;border:3px solid rgba(255,255,255,.92);background:linear-gradient(135deg,rgba(0,120,182,.96),rgba(0,180,216,.93));cursor:pointer;border-radius:16px;outline-offset:3px;display:flex;align-items:center;justify-content:flex-start;gap:clamp(8px,1.4vw,20px);padding:0 clamp(12px,2.2vw,28px);font-size:clamp(16px,3vw,42px);letter-spacing:1px;text-shadow:2px 3px rgba(0,30,55,.75);box-shadow:0 9px 0 rgba(0,53,88,.9),0 14px 30px rgba(0,25,48,.35);transition:transform .12s ease,filter .12s ease,box-shadow .12s ease}
    #moto-game-root .hotspot:hover,#moto-game-root .hotspot:focus-visible{filter:brightness(1.12);transform:translateY(-2px);box-shadow:0 11px 0 rgba(0,53,88,.9),0 18px 34px rgba(0,25,48,.42)}
    #moto-game-root .hotspot:active{transform:translateY(5px);box-shadow:0 4px 0 rgba(0,53,88,.9)}
    #moto-game-root .hotspot .menu-icon{width:1.2em;text-align:center;color:#ffe66d}
    #moto-game-root #playHot{top:37%;height:14%;background:linear-gradient(135deg,rgba(0,144,224,.98),rgba(72,202,228,.96));box-shadow:0 9px 0 rgba(0,58,92,.92),0 14px 30px rgba(0,25,48,.35)}
    #moto-game-root #levelsHot{top:54%}
    #moto-game-root #settingsHot{top:69%}
    #moto-game-root #gameWrap{position:relative;width:min(100vw,calc(100vh * 1.7778));aspect-ratio:16/9;background:#000;overflow:hidden;box-shadow:0 0 0 2px #222,0 20px 80px #000}
    #moto-game-root canvas{display:block;width:100%;height:100%;touch-action:none}
    #moto-game-root #topControls{position:absolute;right:1.1%;top:1.7%;display:flex;gap:10px;z-index:4}
    #moto-game-root .squareBtn{width:clamp(42px,5vw,66px);aspect-ratio:1;border:2px solid rgba(255,255,255,.72);border-radius:8px;background:#080808d9;box-shadow:inset 0 0 0 4px #0008,0 3px 10px #000b;font-size:clamp(20px,3vw,36px);cursor:pointer}
    #moto-game-root .squareBtn:active{transform:scale(.94)}
    #moto-game-root #touchControls{position:absolute;inset:0;pointer-events:none;z-index:3}
    #moto-game-root .cluster{position:absolute;bottom:3.4%;display:flex;gap:clamp(10px,2vw,26px);pointer-events:auto}
    #moto-game-root #tiltCluster{left:2.5%}#moto-game-root #driveCluster{right:2.5%}
    #moto-game-root .roundBtn{width:clamp(62px,8vw,104px);aspect-ratio:1;border:3px solid #ddd;border-radius:50%;background:radial-gradient(circle at 35% 30%,#3d3d3dd9,#080808e8 62%);box-shadow:inset 0 0 0 6px #0008,0 5px 16px #000b;color:#fff;text-shadow:2px 3px #000;font-size:clamp(18px,2.2vw,31px);cursor:pointer;user-select:none}
    #moto-game-root .jumpBtn{font-size:clamp(11px,1.5vw,20px);border-color:#ffe66d}
    #moto-game-root .roundBtn:active, #moto-game-root .roundBtn.active{transform:scale(.94);background:radial-gradient(circle at 35% 30%,#ff9b19,#9b3100 66%)}
    #moto-game-root #overlay{position:absolute;inset:0;display:grid;place-items:center;background:#000a;z-index:8;padding:20px}
    #moto-game-root .panel{width:min(760px,94%);max-height:92%;overflow:auto;background:linear-gradient(#06304d,#031423);border:3px solid #36cbe8;box-shadow:0 14px 60px #000;padding:22px}
    #moto-game-root .panel h2{margin:0 0 18px;color:#7ee8fa;font-size:clamp(28px,5vw,54px);letter-spacing:2px;text-shadow:3px 3px #000}
    #moto-game-root .levelGrid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
    #moto-game-root .levelBtn, #moto-game-root .actionBtn{border:2px solid #eee;background:#111;padding:14px 8px;cursor:pointer;box-shadow:inset 0 0 0 4px #0008}
    #moto-game-root .levelBtn{font-size:24px}#moto-game-root .levelBtn.locked{opacity:.35;cursor:not-allowed}#moto-game-root .levelBtn.done{border-color:#35b6ff;color:#35b6ff}
    #moto-game-root .actionRow{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:18px}
    #moto-game-root .actionBtn{min-width:150px;background:#0f86d9;font-size:22px}
    #moto-game-root .actionBtn.dark{background:#111}
    #moto-game-root .settingRow{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #ffffff22;font-family:Arial,sans-serif;font-weight:700}
    #moto-game-root input[type=range]{width:min(320px,55vw);accent-color:#00b4d8}
    #moto-game-root #rotateNotice{display:none;position:absolute;inset:0;background:#080808;z-index:30;place-items:center;text-align:center;padding:32px;font-family:Arial,sans-serif}
    @media (orientation:portrait) and (max-width:900px){#moto-game-root #rotateNotice{display:grid}}
    @media (pointer:fine) and (min-width:900px){#moto-game-root .roundBtn{opacity:.88}}

    /* Refined game controls: visual-only polish, no framework dependencies */
    #moto-game-root #gameWrap::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:2;
      background:linear-gradient(180deg,rgba(0,0,0,.12),transparent 18%,transparent 76%,rgba(0,0,0,.18));
      box-shadow:inset 0 0 55px rgba(0,0,0,.28)}
    #moto-game-root .squareBtn, #moto-game-root .roundBtn{transition:transform .08s ease,filter .12s ease,box-shadow .12s ease;backdrop-filter:blur(3px)}
    #moto-game-root .squareBtn:hover, #moto-game-root .roundBtn:hover{filter:brightness(1.12)}
    #moto-game-root .squareBtn:focus-visible, #moto-game-root .roundBtn:focus-visible{outline:3px solid #35b6ff;outline-offset:3px}
    #moto-game-root .roundBtn{border-color:rgba(255,255,255,.88);box-shadow:inset 0 0 0 5px #0009,0 5px 18px #000c,0 0 0 1px #35b6ff33}
    #moto-game-root .roundBtn:active, #moto-game-root .roundBtn.active{box-shadow:inset 0 0 0 5px #003a5caa,0 3px 12px #000c,0 0 18px #00b4d866}
    @media (max-height:520px){#moto-game-root .cluster{bottom:2%}#moto-game-root .roundBtn{width:clamp(54px,7.4vw,86px)}#moto-game-root #topControls{top:1%}}

  

/* Homepage integration overrides */
#moto-game-root{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  min-height:420px;
  max-height:760px;
  overflow:hidden;
  border-radius:18px;
  isolation:isolate;
  background:#050505;
}
#moto-game-root #app{position:absolute;inset:0;width:100%;height:100%;}
#moto-game-root #gameWrap{width:100%;height:100%;max-width:none;aspect-ratio:16/9;box-shadow:none;}
#moto-game-root #menuCard{height:100%;width:auto;max-width:100%;max-height:100%;}
#moto-game-root canvas{width:100%;height:100%;}
#moto-game-root:fullscreen{width:100vw!important;height:100vh!important;max-width:none!important;max-height:none!important;border-radius:0!important;background:#000}
#moto-game-root:fullscreen #app{display:grid;place-items:center}
#moto-game-root:fullscreen #gameWrap,#moto-game-root:fullscreen #menuCard{width:min(100vw,calc(100vh * 1.7778));height:min(100vh,calc(100vw * .5625));max-width:100vw;max-height:100vh}
@media (max-width:720px){
  #moto-game-root{min-height:260px;border-radius:12px;}
}

@media (hover:hover) and (pointer:fine) and (min-width:900px){
  #moto-game-root #touchControls{display:none}
}
@media (max-width:900px),(pointer:coarse){
  #moto-game-root .cluster{bottom:2%;gap:clamp(5px,1.2vw,12px)}
  #moto-game-root .roundBtn{width:clamp(45px,9.5vw,78px);border-width:2px}
  #moto-game-root #tiltCluster{left:1.6%}
  #moto-game-root #driveCluster{right:1.6%}
  #moto-game-root #topControls{right:1%;top:1%;gap:5px}
  #moto-game-root .squareBtn{width:clamp(34px,7vw,52px)}
}

/* Final responsive integration adjustment */
#moto-game-root{min-height:0!important;max-height:none!important;aspect-ratio:16/9!important}
@media (max-width:720px){#moto-game-root{min-height:0!important}}

/* Moto X3M Pool Party menu */
#moto-game-root .menu-title{position:absolute;left:4.5%;top:5%;width:48%;padding:clamp(12px,2vw,24px);border-radius:22px;background:linear-gradient(135deg,rgba(0,39,72,.92),rgba(0,91,142,.82));border:3px solid rgba(255,255,255,.82);box-shadow:0 16px 40px rgba(0,35,63,.35);text-align:center;text-shadow:3px 4px rgba(0,20,38,.75)}
#moto-game-root .menu-title span{display:block;font-size:clamp(30px,6vw,78px);line-height:.9;color:#fff}
#moto-game-root .menu-title strong{display:block;font-size:clamp(22px,4.5vw,58px);line-height:1.05;color:#ffe66d;letter-spacing:2px}
#moto-game-root .menu-title small{display:inline-block;margin-top:9px;padding:5px 12px;border-radius:999px;background:#0f86d9;color:#fff;font:800 clamp(10px,1.25vw,17px) Inter,Arial,sans-serif;letter-spacing:1px}
#moto-game-root .menu-free-badge{position:absolute;left:4.5%;bottom:5%;padding:clamp(9px,1.6vw,18px);min-width:20%;border-radius:18px;background:rgba(0,52,85,.88);border:3px solid #70e1f5;text-align:center;box-shadow:0 12px 28px rgba(0,25,48,.32)}
#moto-game-root .menu-free-badge strong,#moto-game-root .menu-free-badge span{display:block}
#moto-game-root .menu-free-badge strong{font-size:clamp(18px,3vw,38px);color:#fff}
#moto-game-root .menu-free-badge span{font:900 clamp(11px,1.5vw,20px) Inter,Arial,sans-serif;color:#ffe66d;letter-spacing:1px}
#moto-game-root .panel{background:linear-gradient(155deg,#063b60,#051c2d);border-color:#36cbe8}
#moto-game-root .panel h2{color:#7ee8fa}
#moto-game-root .actionBtn{background:#0f86d9}
#moto-game-root .levelBtn.done{border-color:#7ee8fa;color:#7ee8fa}
#moto-game-root input[type=range]{accent-color:#00b4d8}
#moto-game-root .roundBtn:active,#moto-game-root .roundBtn.active{background:radial-gradient(circle at 35% 30%,#52d6ee,#006fa6 66%)}
@media (max-width:720px){
  #moto-game-root .hotspot{right:3%;width:35%;border-width:2px;border-radius:10px;padding:0 10px;box-shadow:0 5px 0 rgba(0,53,88,.9);font-size:clamp(12px,3.4vw,24px)}
  #moto-game-root .menu-title{left:3%;top:4%;width:54%;padding:9px;border-width:2px;border-radius:12px}
  #moto-game-root .menu-free-badge{left:3%;bottom:4%;border-width:2px;border-radius:10px;padding:7px}
}
