/* OrbitDoku v17.44.3 · Portrait-first para la aplicación móvil. */
.orbit-portrait-guard{display:none!important}

/* Solo teléfonos y dispositivos táctiles en horizontal. El escritorio no queda bloqueado. */
@media (orientation:landscape) and (pointer:coarse){
  html,body{overflow:hidden!important;overscroll-behavior:none!important;height:100%!important;max-height:100%!important}
  .orbit-portrait-guard{
    box-sizing:border-box!important;position:fixed!important;inset:0!important;
    z-index:2147483647!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    padding:calc(14px + env(safe-area-inset-top,0px)) calc(20px + env(safe-area-inset-right,0px))
            calc(14px + env(safe-area-inset-bottom,0px)) calc(20px + env(safe-area-inset-left,0px));
    background:radial-gradient(ellipse at 35% 10%,#59388c 0%,#241941 50%,#100c25 100%)!important;
    color:#fff4fb!important;text-align:center!important;
    font-family:system-ui,-apple-system,'Segoe UI',sans-serif!important;
    overflow-y:auto!important;overscroll-behavior:contain!important;
  }
  .orbit-portrait-message{box-sizing:border-box;max-width:min(500px,100%);margin:auto;display:flex;align-items:center;gap:18px;
    border:1px solid #edd9ffa6;border-radius:22px;padding:14px 22px;background:#ffffff0c;box-shadow:0 14px 40px #0b061fa8}
  .orbit-portrait-phone{flex:0 0 auto;width:43px;height:75px;border:3px solid #ffe5af;border-radius:11px;
    transform:rotate(-18deg);box-shadow:0 0 20px #d9aaff88,inset 0 0 18px #aa79d94d;position:relative}
  .orbit-portrait-phone::before{content:'✦';position:absolute;inset:0;display:grid;place-items:center;font-size:24px;color:#ffe5af}
  .orbit-portrait-copy{display:block;text-align:left}
  .orbit-portrait-copy strong{display:block;font-size:clamp(17px,3.4vw,23px);line-height:1.18;font-weight:900;color:#fff2c8}
  .orbit-portrait-copy span{display:block;margin-top:7px;font-size:clamp(12px,2.2vw,15px);line-height:1.35;color:#e8d9ff}
}

/* En el tutorial los teléfonos compactos pueden desplazar el contenido verticalmente,
   en lugar de perder el botón inferior al recortarse el tablero. */
@media (orientation:portrait) and (max-width:600px){
  body.orbit-tutorial-portrait .app{
    height:100svh!important;max-height:100svh!important;min-height:0!important;
    overflow-y:auto!important;overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;
    padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))!important;
  }
  body.orbit-tutorial-portrait .app>.panel{flex-shrink:0}
}

/* Diálogos que pueden ser más altos que el espacio útil en teléfonos pequeños. */
@media (orientation:portrait) and (max-width:600px) and (max-height:680px){
  .level-intro-card,.victory-card,.defeat-card,.orbit-audio-card{
    max-height:calc(100svh - 22px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));
    overflow-y:auto!important;overscroll-behavior:contain;
  }
}
