/* Keep the actual 3D character as the landing hero while its canvas starts. */
body.is-landing .mw-stage > .mio-poster {
  display: block;
  position: absolute;
  inset: 0;
  z-index: 0;
  width: auto;
  max-width: min(72vw, 420px);
  height: 86%;
  margin: auto;
  object-fit: contain;
  pointer-events: none;
  transition: opacity .35s ease;
}

html.mio-3d-wait body.is-landing .mw-stage > .mio-poster {
  opacity: 1;
  animation: none;
}

body.is-landing .mw-stage:has(> .mio-stage.is-live) > .mio-poster {
  opacity: 0;
}

body.is-landing .mw-stage::after {
  display: none;
}

/* A short mobile screen needs a scrollable stage so Mio cannot cover the copy. */
@media (max-width: 760px) and (max-height: 740px) {
  body.is-landing {
    overflow-x: hidden;
    overflow-y: auto;
  }

  body.is-landing .page[data-page="landing"],
  body.is-landing .mw-world {
    min-height: 740px;
  }

  body.is-landing .mw-world.is-room .mw-stage {
    position: absolute;
  }

  body.is-landing .mw-world.is-room::after {
    position: absolute;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.is-landing .mw-stage > .mio-poster {
    transition: none;
  }
}

/* Quiet, high-contrast actions; no moving light or RGB ornament. */
body.is-landing .mw-panel::before,
body.is-landing .mw-btn::before,
body.is-landing .mw-btn::after,
body.is-landing .mw-glow,
body.is-landing .mw-voice__bloom,
body.is-landing .mw-voice__ring { display: none; }
body.is-landing .mw-btn { min-height: 48px; border-radius: 14px; border: 1px solid #d3d8dd; font-weight: 750; animation: none; box-shadow: none; transition: background .18s ease, transform .18s ease; }
body.is-landing .mw-btn--solid { color: #fff; background: #182c3f; border-color: #182c3f; }
body.is-landing .mw-btn--ghost { color: #182c3f; background: #fff; }
body.is-landing .mw-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 10px #182c3f12; }
body.is-landing .mw-btn:focus-visible { outline: 3px solid #246b88; outline-offset: 3px; }
body.is-landing .mw-panel { background: #faf9f6; border: 1px solid #dfe2e4; box-shadow: 0 8px 28px #182c3f10; backdrop-filter: none; }
body.is-landing .mw-world.is-typing .mw-copy { display: grid; }
body.is-landing .mw-world.is-chatting .mw-actions { display: flex; }
body.is-landing .mw-reply { position: relative; z-index: 2; width: 100%; max-height: min(32dvh, 260px); overflow-y: auto; overscroll-behavior: contain; }
body.is-landing .mw-compose .mio-compose { border: 1px solid #b8c3cd; box-shadow: none; }
body.is-landing .mw-compose .mio-compose:focus-within { border-color: #246b88; box-shadow: 0 0 0 2px #246b8820; }
@media (prefers-reduced-motion: reduce) { body.is-landing .mw-btn { transition: none; } }
