/* Avisos del sitio público (SweetAlert2) con el estilo del diálogo de salir de un pedido. */
.swal2-container.arje-swal-container,
.swal2-container.arje-swal-container.swal2-backdrop-show {
    background: rgba(12, 11, 9, 0.62);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
}

.swal2-popup.arje-swal {
    width: min(92vw, 430px);
    padding: 0;
    overflow: hidden;
    color: #242019;
    font-family: 'Lato', sans-serif;
    background: linear-gradient(180deg, #fffdf8 0%, #f7efdf 100%);
    border: 1px solid rgba(203, 165, 69, 0.72);
    border-radius: 22px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.56), 0 1px 0 rgba(255, 255, 255, 0.9) inset;
}

.arje-swal .swal2-icon {
    width: 62px;
    height: 62px;
    margin: 1.6rem auto 0.4rem;
    border-width: 3px;
}

.arje-swal .swal2-icon .swal2-icon-content {
    font-size: 2.2rem;
}

.arje-swal .swal2-icon.swal2-warning,
.arje-swal .swal2-icon.swal2-question,
.arje-swal .swal2-icon.swal2-info {
    color: #c99a2e;
    border-color: rgba(201, 154, 46, 0.55);
}

.arje-swal .swal2-icon.swal2-error {
    color: #b94a3a;
    border-color: rgba(185, 74, 58, 0.5);
}

.arje-swal .swal2-icon.swal2-error [class^='swal2-x-mark-line'] {
    background-color: #b94a3a;
}

.arje-swal .swal2-icon.swal2-success {
    color: #3f8f5f;
    border-color: rgba(63, 143, 95, 0.4);
}

.arje-swal .swal2-icon.swal2-success [class^='swal2-success-line'] {
    background-color: #3f8f5f;
}

.arje-swal .swal2-icon.swal2-success .swal2-success-ring {
    border-color: rgba(63, 143, 95, 0.3);
}

/* Variante con ícono de marca, igual al del diálogo de pedido. */
.arje-swal .swal2-icon.arje-swal-icon--brand {
    width: 52px;
    height: 52px;
    margin: 1.4rem auto 0.2rem;
    color: #211c12;
    background: linear-gradient(145deg, #f3d778, #d0a23a);
    border: 1px solid rgba(116, 83, 13, 0.18);
    border-radius: 16px;
    box-shadow: 0 8px 18px rgba(176, 131, 28, 0.2);
}

.arje-swal .swal2-icon.arje-swal-icon--brand .swal2-icon-content {
    font-size: 1.25rem;
}

.arje-swal .swal2-title {
    margin: 0;
    padding: 0.5rem 1.25rem 0;
    color: #201c15;
    font-family: 'Playfair Display', serif;
    font-size: clamp(1.2rem, 4.4vw, 1.45rem);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.arje-swal-kicker {
    display: block;
    margin-bottom: 0.25rem;
    color: #8c6b20;
    font-family: 'Lato', sans-serif;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.arje-swal .swal2-html-container {
    margin: 0.6rem 1.25rem 1.1rem;
    padding: 0;
    color: #665f54;
    font-size: 0.92rem;
    line-height: 1.45;
}

.arje-swal .swal2-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: center;
    gap: 0.55rem;
    width: 100%;
    margin: 0;
    padding: 0.75rem 1.25rem max(1rem, env(safe-area-inset-bottom));
    background: rgba(245, 236, 218, 0.72);
    border-top: 1px solid rgba(123, 94, 30, 0.1);
}

.arje-swal .swal2-actions .arje-swal-btn {
    flex: 1 1 130px;
    min-height: 46px;
    margin: 0;
    padding: 0.65rem 0.8rem;
    font-family: 'Lato', sans-serif;
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.03em;
    border-radius: 12px;
    cursor: pointer;
}

.arje-swal .arje-swal-btn--primary {
    order: 1;
    color: #17140d;
    background: linear-gradient(135deg, #efd065, #d0a43d);
    border: 1px solid #c69a34;
    box-shadow: 0 7px 18px rgba(170, 126, 22, 0.18);
}

.arje-swal .arje-swal-btn--ghost {
    order: 2;
    color: #6f5518;
    background: #fffaf0;
    border: 1px solid rgba(181, 139, 37, 0.42);
}

.arje-swal .arje-swal-btn--danger {
    order: 2;
    color: #963f32;
    background: #fffaf4;
    border: 1px solid rgba(169, 67, 52, 0.42);
}

.arje-swal .swal2-actions .arje-swal-btn:focus-visible {
    outline: 3px solid rgba(246, 220, 121, 0.55);
    outline-offset: 3px;
    box-shadow: none;
}

.arje-swal .swal2-validation-message {
    margin: 0;
    color: #963f32;
    background: rgba(169, 67, 52, 0.08);
}

@media (max-width: 575.98px) {
    .swal2-container.arje-swal-container {
        align-items: flex-end;
        padding: 0;
    }

    .swal2-container.arje-swal-container > .swal2-popup.arje-swal {
        grid-column: 1 / -1;
        grid-row: 3;
        align-self: end;
        justify-self: stretch;
        width: 100%;
        max-width: none;
        margin: 0;
        border-right: 0;
        border-bottom: 0;
        border-left: 0;
        border-radius: 22px 22px 0 0;
    }

    .arje-swal .swal2-actions .arje-swal-btn {
        flex-basis: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .swal2-popup.arje-swal,
    .swal2-container.arje-swal-container {
        animation: none !important;
        transition: none !important;
    }
}
