
/* Ocean Echo bilingual, game and installable-app layer */
.oe-language-toggle{display:inline-flex;align-items:center;gap:.15rem;padding:.2rem;border:1px solid rgba(255,255,255,.34);border-radius:999px;background:rgba(7,58,60,.84);box-shadow:0 8px 24px rgba(0,0,0,.14);backdrop-filter:blur(12px);flex:none}
.oe-language-toggle--floating{position:fixed;top:1rem;right:1rem;z-index:1250}
.oe-language-toggle button{min-width:2rem;border:0;border-radius:999px;padding:.42rem .55rem;background:transparent;color:rgba(255,255,255,.75);font:600 .68rem/1 Outfit,system-ui,sans-serif;letter-spacing:.08em;cursor:pointer}
.oe-language-toggle button.is-active{background:#e2b85c;color:#073a3c;box-shadow:0 2px 8px rgba(0,0,0,.14)}
.oe-game-promo{position:relative;overflow:hidden;background:linear-gradient(135deg,#073a3c 0%,#0e3a4a 52%,#0a6870 100%);color:#fff;padding:5rem 1rem}
.oe-game-promo::before{content:"";position:absolute;inset:auto -8rem -12rem auto;width:32rem;height:32rem;border-radius:50%;background:rgba(226,184,92,.11)}
.oe-game-promo__inner{position:relative;width:min(76rem,100%);margin:auto;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);align-items:center;gap:3rem}
.oe-game-promo__copy{max-width:44rem}.oe-game-promo__eyebrow{display:inline-block;margin-bottom:.8rem;color:#f3c664;font:600 .76rem/1.2 Outfit,system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.oe-game-promo h2{margin:0;font:500 clamp(2.1rem,5vw,3.65rem)/1.06 Fraunces,Georgia,serif;letter-spacing:-.025em}.oe-game-promo p{max-width:42rem;margin:1.1rem 0 0;color:rgba(255,255,255,.82);font:400 1.02rem/1.7 Outfit,system-ui,sans-serif}
.oe-game-promo small{display:block;margin-top:1rem;color:rgba(255,255,255,.62)}.oe-game-promo__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.55rem}
.oe-game-button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.9rem 1.35rem;font:600 .9rem/1 Outfit,system-ui,sans-serif;text-decoration:none;transition:transform .2s ease,background .2s ease}.oe-game-button:hover{transform:translateY(-2px)}
.oe-game-button--primary{background:#e2b85c;color:#073a3c}.oe-game-button--secondary{border:1px solid rgba(255,255,255,.4);color:#fff;background:rgba(255,255,255,.05)}
.oe-game-promo__visual{position:relative;display:grid;place-items:center;min-height:19rem;border:1px solid rgba(255,255,255,.12);border-radius:2rem;background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.03));box-shadow:0 24px 60px rgba(0,0,0,.2);overflow:hidden}
.oe-game-promo__sun{position:absolute;top:2rem;right:2.25rem;width:5.5rem;height:5.5rem;border-radius:50%;background:#e2b85c;box-shadow:0 0 50px rgba(226,184,92,.55)}
.oe-game-promo__island{position:relative;font-size:7.2rem;filter:drop-shadow(0 20px 20px rgba(0,0,0,.32));transform:translateY(.5rem)}.oe-game-promo__badge{position:absolute;bottom:1.6rem;left:50%;transform:translateX(-50%);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:.55rem 1rem;background:rgba(7,58,60,.78);font:600 .75rem/1 Outfit,system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.oe-order-game-link{display:inline-block;margin:.6rem 0 0;color:#0a6870;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.oe-pwa-install,.oe-pwa-update{position:fixed;left:50%;bottom:calc(1rem + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:1200;width:min(94vw,610px);padding:1rem;border:1px solid rgba(255,255,255,.15);border-radius:1.5rem;background:rgba(7,58,60,.96);color:#fff;box-shadow:0 24px 70px rgba(0,0,0,.34);backdrop-filter:blur(14px)}
.oe-pwa-install{display:grid;grid-template-columns:8rem minmax(0,1fr);gap:.85rem 1rem;align-items:center}.oe-pwa-install>img{width:8rem;height:auto}.oe-pwa-install__copy strong,.oe-pwa-update strong{display:block;font:600 1rem/1.3 Outfit,system-ui,sans-serif}.oe-pwa-install__copy p,.oe-pwa-update p{margin:.25rem 0 0;color:rgba(255,255,255,.78);font:400 .92rem/1.45 Outfit,system-ui,sans-serif}
.oe-pwa-install__actions{grid-column:1/-1;display:flex;gap:.6rem;flex-wrap:wrap}.oe-pwa-primary,.oe-pwa-secondary{border-radius:999px;padding:.72rem 1.05rem;font:600 .82rem/1 Outfit,system-ui,sans-serif;cursor:pointer}.oe-pwa-primary{border:0;background:#e2b85c;color:#073a3c}.oe-pwa-secondary{border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff}.oe-pwa-install__close{position:absolute;top:.55rem;right:.7rem;border:0;background:transparent;color:rgba(255,255,255,.72);font-size:1.55rem;cursor:pointer}
.oe-pwa-update{display:flex;align-items:center;justify-content:space-between;gap:1rem}.oe-pwa-update>div:last-child{display:flex;gap:.55rem}.oe-pwa-toast{position:fixed;left:50%;bottom:7rem;transform:translate(-50%,1rem);z-index:1300;opacity:0;pointer-events:none;border-radius:999px;padding:.75rem 1rem;background:#073a3c;color:#fff;box-shadow:0 12px 35px rgba(0,0,0,.24);transition:.2s ease}.oe-pwa-toast.is-visible{opacity:1;transform:translate(-50%,0)}
.oe-play-page{min-height:100vh;margin:0;background:#073a3c;color:#fff;font-family:Outfit,system-ui,sans-serif}.oe-play-toolbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;background:rgba(7,58,60,.96);border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(12px)}.oe-play-toolbar__brand{display:flex;align-items:center;gap:.8rem;min-width:0}.oe-play-toolbar__brand img{width:9.5rem;height:auto}.oe-play-toolbar__brand span{color:rgba(255,255,255,.72);font-size:.8rem}.oe-play-toolbar__actions{display:flex;align-items:center;gap:.55rem}.oe-play-toolbar a{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.7rem 1rem;text-decoration:none;font-weight:600;font-size:.82rem}.oe-play-toolbar__order{background:#e2b85c;color:#073a3c}.oe-play-toolbar__back{border:1px solid rgba(255,255,255,.32);color:#fff}.oe-play-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#0e3a4a}.oe-play-intro h1{margin:0;font:500 clamp(1.45rem,3vw,2.25rem)/1.1 Fraunces,Georgia,serif}.oe-play-intro p{margin:.35rem 0 0;color:rgba(255,255,255,.75)}.oe-play-intro a{color:#f3c664;font-weight:600}.oe-game-frame{display:block;width:100%;height:calc(100vh - 9.3rem);min-height:620px;border:0;background:#051f29}
.oe-offline{min-height:100vh;display:grid;place-content:center;justify-items:start;gap:.8rem;padding:2rem;background:#073a3c;color:#fff}.oe-offline img{width:min(19rem,80vw)}.oe-offline h1{margin:1rem 0 0;font:500 clamp(2.1rem,8vw,4rem)/1.05 Fraunces,Georgia,serif}.oe-offline p{max-width:38rem;color:rgba(255,255,255,.78);line-height:1.65}.oe-offline__actions{display:flex;flex-wrap:wrap;gap:.65rem}.oe-offline__actions a{border-radius:999px;padding:.8rem 1.1rem;text-decoration:none;font-weight:600}.oe-offline__primary{background:#e2b85c;color:#073a3c}.oe-offline__secondary{border:1px solid rgba(255,255,255,.35);color:#fff}
@media(max-width:800px){.oe-game-promo__inner{grid-template-columns:1fr}.oe-game-promo__visual{min-height:15rem}.oe-game-promo__island{font-size:5.8rem}.oe-pwa-install,.oe-pwa-update{bottom:calc(5.4rem + env(safe-area-inset-bottom,0px))}.oe-play-toolbar__brand span{display:none}.oe-play-toolbar__brand img{width:7.5rem}.oe-play-intro{grid-template-columns:1fr}.oe-game-frame{height:calc(100vh - 11.7rem);min-height:540px}}
@media(max-width:560px){.oe-language-toggle--floating{position:fixed;top:1rem;right:1rem;z-index:1250}
.oe-language-toggle button{min-width:1.75rem;padding:.38rem .42rem}.oe-pwa-install{grid-template-columns:6.5rem minmax(0,1fr);width:calc(100vw - 1rem);border-radius:1.2rem}.oe-pwa-install>img{width:6.5rem}.oe-pwa-install__actions,.oe-pwa-update>div:last-child{flex-direction:column}.oe-pwa-install__actions button,.oe-pwa-update button{width:100%}.oe-pwa-update{display:grid;width:calc(100vw - 1rem)}.oe-play-toolbar{flex-wrap:wrap}.oe-play-toolbar__actions{width:100%;justify-content:flex-end}.oe-game-frame{height:calc(100vh - 14.5rem)}}

/* Share Ocean Echo app */
.oe-share-app-button{position:fixed;left:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:1110;display:inline-flex;align-items:center;gap:.55rem;border:1px solid rgba(255,255,255,.34);border-radius:999px;padding:.78rem 1rem;background:rgba(7,58,60,.94);color:#fff;box-shadow:0 14px 36px rgba(0,0,0,.24);backdrop-filter:blur(12px);font:600 .84rem/1 Outfit,system-ui,sans-serif;cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.oe-share-app-button:hover{transform:translateY(-2px);background:#0a6870;box-shadow:0 18px 42px rgba(0,0,0,.3)}.oe-share-app-button:focus-visible{outline:3px solid #f3c664;outline-offset:3px}.oe-share-app-button svg{width:1.1rem;height:1.1rem;flex:none}
.oe-share-sheet[hidden]{display:none}.oe-share-sheet{position:fixed;inset:0;z-index:1400;display:grid;align-items:end;justify-items:center;opacity:0;transition:opacity .18s ease}.oe-share-sheet.is-open{opacity:1}.oe-share-sheet__backdrop{position:absolute;inset:0;background:rgba(1,18,24,.66);backdrop-filter:blur(5px)}.oe-share-sheet__panel{position:relative;width:min(calc(100% - 1rem),32rem);margin:0 0 calc(1rem + env(safe-area-inset-bottom,0px));padding:1.25rem;border:1px solid rgba(255,255,255,.16);border-radius:1.75rem;background:#073a3c;color:#fff;box-shadow:0 28px 80px rgba(0,0,0,.42);transform:translateY(1rem);transition:transform .18s ease}.oe-share-sheet.is-open .oe-share-sheet__panel{transform:translateY(0)}.oe-share-sheet__panel>img{display:block;width:min(13rem,62vw);height:auto;margin:0 0 1rem}.oe-share-sheet__panel h2{margin:0;font:500 clamp(1.65rem,5vw,2.25rem)/1.08 Fraunces,Georgia,serif}.oe-share-sheet__panel p{margin:.65rem 0 0;color:rgba(255,255,255,.8);font:400 .98rem/1.55 Outfit,system-ui,sans-serif}.oe-share-sheet__panel small{display:block;overflow:hidden;margin-top:1rem;color:rgba(255,255,255,.54);font:400 .72rem/1.4 Outfit,system-ui,sans-serif;text-overflow:ellipsis;white-space:nowrap}.oe-share-sheet__close{position:absolute;top:.65rem;right:.75rem;width:2.25rem;height:2.25rem;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:1.45rem;line-height:1;cursor:pointer}.oe-share-sheet__actions{display:grid;gap:.65rem;margin-top:1.15rem}.oe-share-action{display:flex;align-items:center;justify-content:center;width:100%;border-radius:999px;padding:.88rem 1rem;font:600 .88rem/1 Outfit,system-ui,sans-serif;cursor:pointer}.oe-share-action--whatsapp{border:0;background:#25d366;color:#052f17}.oe-share-action--more{border:0;background:#e2b85c;color:#073a3c}.oe-share-action--copy{border:1px solid rgba(255,255,255,.36);background:transparent;color:#fff}.oe-share-action:focus-visible,.oe-share-sheet__close:focus-visible{outline:3px solid #f3c664;outline-offset:3px}.oe-share-open{overflow:hidden}
@media(min-width:680px){.oe-share-sheet{align-items:center}.oe-share-sheet__panel{margin:0}.oe-share-sheet__actions{grid-template-columns:1fr 1fr}.oe-share-action--copy{grid-column:1/-1}}
@media(max-width:800px){.oe-share-app-button{bottom:calc(5.55rem + env(safe-area-inset-bottom,0px))}}
@media(max-width:420px){.oe-share-app-button{left:.65rem;padding:.75rem}.oe-share-app-button__label{display:none}.oe-share-sheet__panel{border-radius:1.35rem;padding:1.05rem}}
@media(prefers-reduced-motion:reduce){.oe-share-app-button,.oe-share-sheet,.oe-share-sheet__panel{transition:none}}

/* Ocean Echo app header + final homepage polish */
.oe-share-app-button{display:none!important}
.oe-header-app-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.5rem;border:1px solid rgba(255,255,255,.26);border-radius:999px;padding:.68rem .9rem;background:#073a3c;color:#fff;box-shadow:0 8px 22px rgba(0,0,0,.16);font:600 .78rem/1 Outfit,system-ui,sans-serif;white-space:nowrap;cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.oe-header-app-button:hover{transform:translateY(-1px);background:#0a6870;box-shadow:0 12px 28px rgba(0,0,0,.2)}
.oe-header-app-button:focus-visible{outline:3px solid #f3c664;outline-offset:3px}
.oe-header-app-button svg{width:1rem;height:1rem;flex:none;color:#f3c664}

/* Keep Island Mogul as a lower-page Ocean Echo feature, never as the hero. */
.oe-game-promo{scroll-margin-top:5rem;background-image:linear-gradient(105deg,rgba(7,58,60,.96),rgba(14,58,74,.84) 55%,rgba(10,104,112,.72)),url('/meads-bay-wave-action-north-shore.webp');background-position:center;background-size:cover}
.oe-game-promo__visual{background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(7,58,60,.28));backdrop-filter:blur(4px)}

.oe-app-sheet[hidden]{display:none}
.oe-app-sheet{position:fixed;inset:0;z-index:1400;display:grid;align-items:end;justify-items:center;opacity:0;transition:opacity .18s ease}
.oe-app-sheet.is-open{opacity:1}
.oe-app-sheet__backdrop{position:absolute;inset:0;background:rgba(1,18,24,.68);backdrop-filter:blur(6px)}
.oe-app-sheet__panel{position:relative;width:min(calc(100% - 1rem),34rem);margin:0 0 calc(1rem + env(safe-area-inset-bottom,0px));padding:1.3rem;border:1px solid rgba(255,255,255,.17);border-radius:1.75rem;background:#073a3c;color:#fff;box-shadow:0 28px 80px rgba(0,0,0,.42);transform:translateY(1rem);transition:transform .18s ease}
.oe-app-sheet.is-open .oe-app-sheet__panel{transform:translateY(0)}
.oe-app-sheet__panel>img{display:block;width:min(13rem,62vw);height:auto;margin:0 0 1rem}
.oe-app-sheet__panel h2{margin:0;font:500 clamp(1.7rem,5vw,2.3rem)/1.08 Fraunces,Georgia,serif}
.oe-app-sheet__panel p{margin:.65rem 0 0;color:rgba(255,255,255,.8);font:400 .98rem/1.55 Outfit,system-ui,sans-serif}
.oe-app-sheet__panel small{display:block;overflow:hidden;margin-top:1rem;color:rgba(255,255,255,.54);font:400 .72rem/1.4 Outfit,system-ui,sans-serif;text-overflow:ellipsis;white-space:nowrap}
.oe-app-sheet__close{position:absolute;top:.65rem;right:.75rem;width:2.25rem;height:2.25rem;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:1.45rem;line-height:1;cursor:pointer}
.oe-app-sheet__actions{display:grid;gap:.65rem;margin-top:1.15rem}
.oe-app-action{display:flex;align-items:center;justify-content:center;width:100%;border-radius:999px;padding:.9rem 1rem;font:600 .88rem/1 Outfit,system-ui,sans-serif;cursor:pointer}
.oe-app-action--install{border:0;background:#e2b85c;color:#073a3c}
.oe-app-action--whatsapp{border:0;background:#25d366;color:#052f17}
.oe-app-action--more{border:1px solid rgba(255,255,255,.36);background:rgba(255,255,255,.08);color:#fff}
.oe-app-action--copy{border:1px solid rgba(255,255,255,.36);background:transparent;color:#fff}
.oe-app-action:focus-visible,.oe-app-sheet__close:focus-visible{outline:3px solid #f3c664;outline-offset:3px}
.oe-app-open{overflow:hidden}

@media(min-width:680px){.oe-app-sheet{align-items:center}.oe-app-sheet__panel{margin:0}.oe-app-sheet__actions{grid-template-columns:1fr 1fr}.oe-app-action--install,.oe-app-action--copy{grid-column:1/-1}}
@media(max-width:1199px){.oe-header-app-button{width:2.5rem;padding:0}.oe-header-app-button span{display:none}}
@media(max-width:560px){.oe-header-app-button{width:2.35rem;min-height:2.35rem}.oe-header-app-button svg{width:.95rem;height:.95rem}.oe-app-sheet__panel{border-radius:1.35rem;padding:1.05rem}}
@media(prefers-reduced-motion:reduce){.oe-header-app-button,.oe-app-sheet,.oe-app-sheet__panel{transition:none}}

/* Ocean Echo installed-app sharing and clean-start refinements */
.oe-app-action[hidden]{display:none!important}
.oe-standalone-share-button{position:fixed;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:1180;display:none;align-items:center;justify-content:center;gap:.55rem;min-height:2.8rem;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:.78rem 1rem;background:#073a3c;color:#fff;box-shadow:0 16px 40px rgba(0,0,0,.28);font:600 .84rem/1 Outfit,system-ui,sans-serif;cursor:pointer;backdrop-filter:blur(12px);transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
body.oe-standalone .oe-standalone-share-button{display:inline-flex}
.oe-standalone-share-button:hover{transform:translateY(-2px);background:#0a6870;box-shadow:0 20px 46px rgba(0,0,0,.34)}
.oe-standalone-share-button:focus-visible{outline:3px solid #f3c664;outline-offset:3px}
.oe-standalone-share-button svg{width:1.1rem;height:1.1rem;flex:none;color:#f3c664}
body.oe-standalone .oe-header-app-button{background:#0a6870;border-color:rgba(243,198,100,.62)}
body.oe-standalone .oe-header-app-button svg{color:#f3c664}
@media(max-width:800px){.oe-standalone-share-button{bottom:calc(5.65rem + env(safe-area-inset-bottom,0px))}}
@media(max-width:440px){.oe-standalone-share-button{right:.65rem;padding:.76rem}.oe-standalone-share-button span{display:none}}
.oe-play-page.oe-standalone .oe-standalone-share-button{bottom:calc(1rem + env(safe-area-inset-bottom,0px))}
@media(prefers-reduced-motion:reduce){.oe-standalone-share-button{transition:none}}


/* Ocean Echo installed-app mobile optimization — 2026-08-05 */
.oe-mobile-action-button{
  appearance:none;
  -webkit-appearance:none;
  border:0;
  margin:0;
  background:transparent;
  font-family:inherit;
  cursor:pointer;
}
.oe-mobile-action-button:focus-visible{
  outline:3px solid #e2b85c;
  outline-offset:-3px;
}
.oe-mobile-action--game .oe-mobile-action-icon,
.oe-mobile-action--share .oe-mobile-action-icon{
  color:#0a6870;
}
.oe-standalone-game-button{
  position:fixed;
  right:1rem;
  bottom:4.85rem;
  z-index:1175;
  display:none;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  min-height:2.8rem;
  border:1px solid rgba(255,255,255,.3);
  border-radius:999px;
  padding:.78rem 1rem;
  background:#073a3c;
  color:#fff;
  box-shadow:0 16px 40px rgba(0,0,0,.28);
  font:600 .84rem/1 Outfit,system-ui,sans-serif;
  text-decoration:none;
  backdrop-filter:blur(12px);
  transition:transform .2s ease,background .2s ease,box-shadow .2s ease;
}
body.oe-standalone .oe-standalone-game-button{display:inline-flex}
.oe-standalone-game-button:hover{transform:translateY(-2px);background:#0a6870;box-shadow:0 20px 46px rgba(0,0,0,.34)}
.oe-standalone-game-button:focus-visible{outline:3px solid #f3c664;outline-offset:3px}
.oe-standalone-game-button svg{width:1.12rem;height:1.12rem;flex:none;color:#f3c664}

/* Bottom sheets and prompts remain usable on short mobile screens. */
.oe-app-sheet__panel,
.oe-share-sheet__panel{
  max-height:calc(100dvh - 1rem - env(safe-area-inset-top,0px));
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
.oe-pwa-install,
.oe-pwa-update{
  max-height:calc(100dvh - 6.25rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}

@media(max-width:767px){
  body.oe-app-mobile-actions-ready{
    padding-bottom:calc(4.75rem + env(safe-area-inset-bottom,0px));
  }
  body.oe-app-mobile-actions-ready .oe-mobile-actions{
    grid-template-columns:repeat(5,minmax(0,1fr));
    z-index:1190;
  }
  body.oe-app-mobile-actions-ready .oe-mobile-action--app-hidden{
    display:none!important;
  }
  body.oe-app-mobile-actions-ready .oe-mobile-actions .oe-mobile-action{
    min-height:4.65rem;
    gap:.24rem;
    padding:.45rem .1rem;
    font-size:.6rem;
    line-height:1.05;
    text-align:center;
  }
  body.oe-app-mobile-actions-ready .oe-mobile-actions .oe-mobile-action span:last-child{
    display:block;
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  body.oe-app-mobile-actions-ready .oe-mobile-actions .oe-mobile-action.is-primary span:last-child{
    font-size:.61rem;
    white-space:nowrap;
  }
  body.oe-app-mobile-actions-ready .oe-standalone-share-button,
  body.oe-app-mobile-actions-ready .oe-standalone-game-button{
    display:none!important;
  }
  .oe-play-page.oe-standalone .oe-standalone-share-button{
    display:inline-flex!important;
    bottom:calc(1rem + env(safe-area-inset-bottom,0px));
  }
  .oe-game-promo{
    padding:3.75rem 1rem 4.5rem;
  }
  .oe-game-promo__inner{
    gap:2rem;
  }
  .oe-game-promo__actions{
    gap:.6rem;
  }
}

@media(max-width:560px){
  .oe-app-sheet__panel,
  .oe-share-sheet__panel{
    width:calc(100% - .6rem);
    margin-bottom:calc(.3rem + env(safe-area-inset-bottom,0px));
  }
  .oe-app-sheet__panel>img,
  .oe-share-sheet__panel>img{
    width:min(10.5rem,54vw);
  }
  .oe-pwa-install,
  .oe-pwa-update{
    width:calc(100vw - .6rem);
  }
  .oe-play-toolbar{
    padding:.7rem .7rem;
  }
  .oe-play-toolbar__actions{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);
    gap:.4rem;
    align-items:stretch;
  }
  .oe-play-toolbar__actions .oe-language-toggle{
    align-self:center;
  }
  .oe-play-toolbar a{
    min-width:0;
    padding:.65rem .55rem;
    font-size:.7rem;
    line-height:1.15;
    text-align:center;
  }
  .oe-play-intro{
    padding:.9rem .85rem;
  }
  .oe-game-frame{
    min-height:500px;
    height:calc(100dvh - 14.25rem);
  }
}

@media(max-width:420px){
  .oe-game-promo__actions .oe-game-button{
    width:100%;
  }
  .oe-game-promo__visual{
    min-height:13.5rem;
  }
  .oe-app-sheet__actions,
  .oe-share-sheet__actions{
    gap:.55rem;
  }
  .oe-app-action,
  .oe-share-action{
    padding:.82rem .8rem;
  }
}

@media(min-width:768px){
  body.oe-standalone .oe-standalone-share-button{display:inline-flex}
  body.oe-standalone .oe-standalone-game-button{display:inline-flex}
}

@media(prefers-reduced-motion:reduce){
  .oe-standalone-game-button{transition:none}
}

/* Mobile action-bar reliability fix — share and game are always visible on phones. */
@media(max-width:767px){
  .oe-mobile-actions.oe-mobile-actions--enhanced{grid-template-columns:repeat(5,minmax(0,1fr))!important;z-index:1190!important}
  .oe-mobile-action-button{appearance:none;-webkit-appearance:none;border:0;margin:0;background:transparent;font-family:inherit;cursor:pointer}
  .oe-mobile-action--share{color:#073a3c!important;background:rgba(226,184,92,.34)!important}
  .oe-mobile-action--share .oe-mobile-action-icon{color:#073a3c}
}


/* Ocean Echo permanent mobile app utilities — v7 */
.oe-pwa-update{display:none!important}
.oe-app-utility-bar{display:none}

@media(max-width:767px){
  body{padding-bottom:calc(8.2rem + env(safe-area-inset-bottom,0px))!important}
  .oe-app-utility-bar{
    position:fixed;
    left:.55rem;
    right:.55rem;
    bottom:calc(4.72rem + env(safe-area-inset-bottom,0px));
    z-index:1188;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:.5rem;
    padding:.42rem;
    border:1px solid rgba(7,58,60,.14);
    border-radius:1rem;
    background:rgba(255,253,248,.97);
    box-shadow:0 12px 32px rgba(7,58,60,.2);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }
  .oe-app-utility-action{
    min-width:0;
    min-height:2.8rem;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.48rem;
    border:0;
    border-radius:.72rem;
    padding:.65rem .55rem;
    font:600 .76rem/1 Outfit,system-ui,sans-serif;
    text-decoration:none;
    white-space:nowrap;
    cursor:pointer;
  }
  .oe-app-utility-action svg{width:1.05rem;height:1.05rem;flex:none}
  .oe-app-utility-action--game{background:#073a3c;color:#fff}
  .oe-app-utility-action--share{background:#e2b85c;color:#073a3c}
  .oe-app-utility-action:focus-visible{outline:3px solid #0a6870;outline-offset:2px}
  .oe-app-utility-bar + .oe-mobile-actions{z-index:1190}
}

@media(max-width:360px){
  .oe-app-utility-bar{left:.35rem;right:.35rem;gap:.35rem;padding:.35rem}
  .oe-app-utility-action{gap:.35rem;padding:.62rem .35rem;font-size:.69rem}
}

@media(min-width:768px){
  .oe-app-utility-bar{display:none!important}
}

@media(prefers-reduced-motion:reduce){
  .oe-app-utility-action{transition:none}
}


/* Share remains visible on the separate game page. */
.oe-play-toolbar__share{border:1px solid rgba(226,184,92,.6);background:#0a6870;color:#fff}
@media(max-width:560px){
  .oe-play-toolbar__actions{grid-template-columns:auto minmax(0,1fr) minmax(0,1fr)}
  .oe-play-toolbar__share{grid-column:2/-1}
}

/* Ocean Echo stable controls and scroll fix — v8 */
.oe-app-utility-bar,
.oe-standalone-share-button,
.oe-standalone-game-button,
.oe-mobile-action--share{display:none!important}

.oe-header-app-button{
  width:auto!important;
  min-width:auto!important;
  padding:.68rem .92rem!important;
  background:#073a3c;
}
.oe-header-app-button svg{display:none!important}
.oe-header-app-button span{
  display:inline!important;
  font-size:.76rem;
  line-height:1;
}

@media(max-width:767px){
  body{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom,0px))!important}
  .oe-header-app-button{
    min-height:2.35rem!important;
    padding:.58rem .72rem!important;
  }
  .oe-header-app-button span{font-size:.68rem}
  .oe-mobile-actions.oe-mobile-actions--with-game{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    z-index:90!important;
  }
  .oe-mobile-actions--with-game .oe-mobile-action{
    min-height:4.5rem;
    padding:.45rem .08rem;
    font-size:.59rem;
    text-align:center;
  }
  .oe-mobile-action--game{color:#174a4e;background:transparent}
  .oe-mobile-action--game .oe-mobile-action-icon{color:#0a6870}
}

@media(min-width:768px) and (max-width:1100px){
  .oe-header-app-button{padding:.6rem .72rem!important}
  .oe-header-app-button span{font-size:.68rem}
}

html,body{max-width:100%;overflow-x:clip}
body:not(.oe-app-open){overflow-y:auto}
