html.mv-touch {
  -webkit-tap-highlight-color: transparent;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
html.mv-touch .se-header,
html.mv-touch .se-header *,
html.mv-touch .se-btn,
html.mv-touch button,
html.mv-touch summary,
html.mv-touch [role="button"],
html.mv-touch [role="menuitem"],
html.mv-touch [role="tab"],
html.mv-touch .se-menu,
html.mv-touch .se-menu *,
html.mv-touch .se-lang__menu,
html.mv-touch .se-lang__menu * {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  touch-action: manipulation;
}
html.mv-touch .se-header { -webkit-tap-highlight-color: transparent; }

html.mv-touch .se-nav a,
html.mv-touch .se-nav button { min-height: 44px; min-width: 44px; }
html.mv-touch .se-account__btn,
html.mv-touch .se-lang__btn { height: 44px; min-height: 44px; }
html.mv-touch .se-account__btn { padding-right: 12px; }
html.mv-touch .se-icon-btn,
html.mv-touch #ps-audio-toggle.ps-audio--slot { width: 44px; height: 44px; border-radius: 12px; }
html.mv-touch .se-avatar { width: 32px; height: 32px; }
html.mv-touch .se-btn-sm { min-height: 44px; }
html.mv-touch .se-menu a,
html.mv-touch .se-menu button { min-height: 48px; }
html.mv-touch .se-lang__opt { min-height: 46px; }
html.mv-touch .se-nav a:active,
html.mv-touch .se-nav button:active { background: rgba(255, 255, 255, 0.2); transform: scale(0.96); }
html.mv-touch .se-lang__btn:active,
html.mv-touch .se-account__btn:active,
html.mv-touch .se-icon-btn:active,
html.mv-touch #ps-audio-toggle.ps-audio--slot:active { background: rgba(255, 255, 255, 0.26); transform: scale(0.95); }
html.mv-touch .se-menu a:active,
html.mv-touch .se-menu button:active,
html.mv-touch .se-lang__opt:active { background: rgba(255, 255, 255, 0.18); }
html.mv-touch .se-nav a,
html.mv-touch .se-nav button,
html.mv-touch .se-lang__btn,
html.mv-touch .se-account__btn,
html.mv-touch .se-icon-btn { transition: background-color 0.12s ease, transform 0.12s ease; }

.mv-fs[aria-pressed="true"] { background: var(--oro); border-color: var(--oro-borde); color: var(--tinta); }
.mv-fs svg { width: 22px; height: 22px; }
.mv-handle { display: none; }

html.mv-touch,
html.mv-touch body[data-page="game"] { overscroll-behavior: none; }

html.mv-touch body[data-page="game"],
html.mv-touch body[data-page="game"] * {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}
html.mv-touch body[data-page="game"] input,
html.mv-touch body[data-page="game"] textarea,
html.mv-touch body[data-page="game"] [contenteditable="true"],
html.mv-touch body[data-page="game"] .gc,
html.mv-touch body[data-page="game"] .gc *,
html.mv-touch body[data-page="game"] .mv-allow,
html.mv-touch body[data-page="game"] .mv-allow *,
html.mv-touch body[data-page="game"] dialog,
html.mv-touch body[data-page="game"] dialog * {
  -webkit-user-select: text;
  user-select: text;
}
html.mv-touch body[data-page="game"] dialog button,
html.mv-touch body[data-page="game"] dialog [role="button"],
html.mv-touch body[data-page="game"] dialog summary {
  -webkit-user-select: none;
  user-select: none;
}
html.mv-touch body[data-page="game"] #game,
html.mv-touch body[data-page="game"] #game canvas {
  touch-action: none;
  -webkit-tap-highlight-color: transparent;
  outline: none;
}

html.mv-phone.mv-portrait body[data-page="game"] {
  background: radial-gradient(ellipse at 50% 0%, #4a2e1a 0%, #2a170b 55%, #1a0e06 100%);
}
html.mv-phone.mv-portrait body[data-page="game"] #game {
  flex: 0 0 auto !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 760 / 600;
  max-height: calc(100dvh - var(--hdr-h, 96px));
  box-shadow: 0 6px 0 rgba(0, 0, 0, 0.35), 0 14px 26px rgba(0, 0, 0, 0.4);
}
html.mv-phone.mv-portrait body[data-page="game"] #ps-loader { inset: var(--hdr-h, var(--header-h)) 0 0 0; }

html.mv-phone.mv-landscape body[data-page="game"] .se-header {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  transform: translateY(calc(-100% - 8px));
  transition: transform 0.22s ease;
  z-index: 70;
}
html.mv-phone.mv-landscape body[data-page="game"].mv-bar-open .se-header { transform: none; }
html.mv-phone.mv-landscape body[data-page="game"] {
  background: radial-gradient(ellipse at 50% 50%, #4a2e1a 0%, #2a170b 60%, #1a0e06 100%);
}
html.mv-phone.mv-landscape body[data-page="game"] #game {
  flex: 0 0 auto !important;
  height: 100% !important;
  width: auto !important;
  max-width: 100%;
  aspect-ratio: 760 / 600;
  margin: 0 auto;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.35), 0 0 30px rgba(0, 0, 0, 0.45);
}
html.mv-phone.mv-landscape body[data-page="game"] #ps-loader,
html.mv-phone.mv-landscape body[data-page="game"] #ps-welcome { inset: 0 !important; top: 0 !important; }
html.mv-phone.mv-landscape body[data-page="game"] .mv-handle {
  position: fixed;
  left: max(8px, env(safe-area-inset-left, 0px));
  top: max(8px, env(safe-area-inset-top, 0px));
  z-index: 69;
  width: 44px;
  height: 44px;
  padding: 0;
  display: inline-grid;
  place-items: center;
  border-radius: 14px;
  border: 2px solid var(--oro);
  background: rgba(58, 35, 20, 0.82);
  color: var(--claro);
  box-shadow: 0 3px 0 var(--oro-borde), 0 8px 16px rgba(0, 0, 0, 0.35);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
}
html.mv-phone.mv-landscape body[data-page="game"] .mv-handle:active { transform: translateY(2px); box-shadow: 0 1px 0 var(--oro-borde); }
html.mv-phone.mv-landscape body[data-page="game"] .mv-handle svg { width: 22px; height: 22px; }
html.mv-phone.mv-landscape body[data-page="game"].mv-bar-open .mv-handle { display: none; }
html.mv-phone.mv-landscape body[data-page="game"].ps-notice-open .mv-handle { display: none; }

html.mv-phone.mv-portrait .se-header--game .se-header__in {
  flex-wrap: wrap;
  min-height: 0;
  gap: 2px 6px;
  padding: 4px 8px;
}
html.mv-phone.mv-portrait .se-header--game .se-header__in::before { content: ""; order: 3; flex: 0 0 100%; height: 0; }
html.mv-phone.mv-portrait .se-header--game .se-brand { order: 0; }
html.mv-phone.mv-portrait .se-header--game .se-brand img { height: 38px; }
html.mv-phone.mv-portrait .se-header--game .se-hud {
  order: 1;
  position: static;
  flex: 1 1 0;
  width: auto;
  height: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow: visible;
  clip: auto;
  border: 0;
  justify-content: flex-start;
  gap: 6px;
  white-space: nowrap;
  overflow: hidden;
}
html.mv-phone.mv-portrait .se-header--game .se-hud .se-level { display: flex; gap: 4px; }
html.mv-phone.mv-portrait .se-header--game .se-hud .se-level__star { width: 32px; height: 32px; }
html.mv-phone.mv-portrait .se-header--game .se-hud .se-level__n { font-size: 13px; }
html.mv-phone.mv-portrait .se-header--game .se-hud .se-level__meta { position: static; width: 0; min-width: 0; }
html.mv-phone.mv-portrait .se-header--game .se-hud .se-level__bar { position: absolute; left: 2px; right: 2px; bottom: 0; height: 3px; border: 0; }
html.mv-phone.mv-portrait .se-header--game .se-hud .se-level__xp { display: none; }
html.mv-phone.mv-portrait .se-header--game .se-hud .se-res { gap: 4px; }
html.mv-phone.mv-portrait .se-header--game .se-hud .se-res li { height: 32px; gap: 4px; padding: 0 8px 0 3px; font-size: 13px; }
html.mv-phone.mv-portrait .se-header--game .se-hud .se-res li svg { width: 20px; height: 20px; }
html.mv-phone.mv-portrait .se-header--game .se-account { order: 2; }
html.mv-phone.mv-portrait .se-header--game .se-nav {
  order: 4;
  flex: 0 1 auto;
  min-width: 0;
  margin: 0 auto 0 0;
  padding: 0;
  gap: 0;
  border: 0;
  justify-content: flex-start;
}
html.mv-phone.mv-portrait .se-header--game .se-nav a,
html.mv-phone.mv-portrait .se-header--game .se-nav button { flex: 0 0 44px; width: 44px; }
html.mv-phone.mv-portrait .se-header--game #ps-audio-slot,
html.mv-phone.mv-portrait .se-header--game .mv-fs { order: 2; margin-left: 0; }
html.mv-phone.mv-portrait .se-header--game [data-lang-switch] { order: 5; margin-left: 0; }
html.mv-phone.mv-portrait .se-header--game .se-lang__btn { padding: 0 8px; }

html.mv-phone.mv-landscape .se-header--game .se-header__in {
  flex-wrap: nowrap;
  min-height: 0;
  gap: 6px;
  padding: 4px 8px;
}
html.mv-phone.mv-landscape .se-header--game .se-brand { order: 0; }
html.mv-phone.mv-landscape .se-header--game .se-brand img { height: 38px; }
html.mv-phone.mv-landscape .se-header--game .se-nav {
  order: 1;
  flex: 0 0 auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  gap: 0;
  border: 0;
  justify-content: flex-start;
}
html.mv-phone.mv-landscape .se-header--game .se-nav a,
html.mv-phone.mv-landscape .se-header--game .se-nav button { flex: 0 0 44px; width: 44px; }
html.mv-phone.mv-landscape .se-header--game .se-hud {
  order: 2;
  position: static;
  flex: 1 1 0;
  width: auto;
  height: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  clip: auto;
  border: 0;
  justify-content: flex-end;
  gap: 6px;
  white-space: nowrap;
}
html.mv-phone.mv-landscape .se-header--game .se-hud .se-level { display: flex; gap: 4px; }
html.mv-phone.mv-landscape .se-header--game .se-hud .se-level__star { width: 32px; height: 32px; }
html.mv-phone.mv-landscape .se-header--game .se-hud .se-level__n { font-size: 13px; }
html.mv-phone.mv-landscape .se-header--game .se-hud .se-level__meta { position: static; width: 0; min-width: 0; }
html.mv-phone.mv-landscape .se-header--game .se-hud .se-level__bar { position: absolute; left: 2px; right: 2px; bottom: 0; height: 3px; border: 0; }
html.mv-phone.mv-landscape .se-header--game .se-hud .se-level__xp { display: none; }
html.mv-phone.mv-landscape .se-header--game .se-hud .se-res { gap: 4px; }
html.mv-phone.mv-landscape .se-header--game .se-hud .se-res li { height: 32px; gap: 4px; padding: 0 8px 0 3px; font-size: 13px; }
html.mv-phone.mv-landscape .se-header--game .se-hud .se-res li svg { width: 20px; height: 20px; }
html.mv-phone.mv-landscape .se-header--game #ps-audio-slot { order: 3; margin-left: 0; }
html.mv-phone.mv-landscape .se-header--game .mv-fs { order: 4; margin-left: 0; }
html.mv-phone.mv-landscape .se-header--game [data-lang-switch] { order: 5; margin-left: 0; }
html.mv-phone.mv-landscape .se-header--game .se-account { order: 6; }

@media (prefers-reduced-motion: reduce) {
  html.mv-phone.mv-landscape body[data-page="game"] .se-header { transition: none; }
  html.mv-touch .se-nav a,
  html.mv-touch .se-nav button,
  html.mv-touch .se-lang__btn,
  html.mv-touch .se-account__btn,
  html.mv-touch .se-icon-btn { transition: none; }
  html.mv-touch .se-nav a:active,
  html.mv-touch .se-nav button:active,
  html.mv-touch .se-lang__btn:active,
  html.mv-touch .se-account__btn:active,
  html.mv-touch .se-icon-btn:active { transform: none; }
}
