/**
 * Communio — protección común de orientación en teléfonos.
 * La detección exacta vive en mobile-portrait-guard.js para excluir tabletas
 * amplias y cualquier modo de edición.
 */

.communio-mobile-portrait-guard[hidden] {
  display: none !important;
}

.communio-mobile-portrait-guard {
  position: fixed !important;
  z-index: 2147483646 !important;
  inset: 0 !important;
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  height: 100vh !important;
  height: 100dvh !important;
  margin: 0 !important;
  padding:
    max(24px, env(safe-area-inset-top))
    max(28px, env(safe-area-inset-right))
    max(24px, env(safe-area-inset-bottom))
    max(28px, env(safe-area-inset-left)) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  touch-action: none !important;
  overscroll-behavior: none !important;
  color: #f5f0e6 !important;
  background: #123f35 !important;
  text-align: center !important;
}

.communio-mobile-portrait-guard__panel {
  display: grid !important;
  justify-items: center !important;
  gap: 12px !important;
  width: min(100%, 430px) !important;
  margin: 0 !important;
  padding: 0 !important;
}

.communio-mobile-portrait-guard__icon {
  position: relative !important;
  display: block !important;
  width: 42px !important;
  height: 68px !important;
  margin: 0 0 8px !important;
  border: 3px solid #d7bc80 !important;
  border-radius: 9px !important;
  box-sizing: border-box !important;
  transform: rotate(-8deg) !important;
}

.communio-mobile-portrait-guard__icon::before {
  content: "";
  position: absolute;
  bottom: 4px;
  left: 50%;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  transform: translateX(-50%);
  background: #d7bc80;
}

.communio-mobile-portrait-guard__icon::after {
  content: "↻";
  position: absolute;
  top: 5px;
  left: calc(100% + 11px);
  color: #d7bc80;
  font-family: system-ui, sans-serif;
  font-size: 34px;
  font-weight: 300;
  line-height: 1;
  transform: rotate(8deg);
}

.communio-mobile-portrait-guard__title {
  margin: 0 !important;
  color: inherit !important;
  font-family: "Iowan Old Style", Baskerville, Georgia, serif !important;
  font-size: clamp(26px, 7vh, 38px) !important;
  font-weight: 500 !important;
  line-height: 1.05 !important;
  letter-spacing: -0.02em !important;
}

.communio-mobile-portrait-guard__message {
  max-width: 38ch !important;
  margin: 0 !important;
  color: rgba(245, 240, 230, 0.86) !important;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: clamp(14px, 3.5vh, 18px) !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
}

body.communio-mobile-portrait-guard-active {
  overflow: hidden !important;
  touch-action: none !important;
  overscroll-behavior: none !important;
}
