/**
 * Contenedor centrado responsive para vistas públicas (formularios, mensajes).
 * Usar junto con min-h-dvh / flex en body cuando aplique.
 */
.orsan-shell-page {
    width: 100%;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: safe center;
    padding-left: max(1rem, env(safe-area-inset-left));
    padding-right: max(1rem, env(safe-area-inset-right));
    padding-top: max(1rem, env(safe-area-inset-top));
    padding-bottom: max(1rem, env(safe-area-inset-bottom));
    box-sizing: border-box;
}

.orsan-shell-inner {
    width: 100%;
    max-width: min(36rem, calc(100vw - 2rem));
    margin-left: auto;
    margin-right: auto;
}

/* Paso 2 / pantallas con más ancho útil */
.orsan-shell-inner-lg {
    width: 100%;
    max-width: min(72rem, calc(100vw - 2rem));
    margin-left: auto;
    margin-right: auto;
}
