/* Sacado de templates/base.html el 14/08/2026: estaba DENTRO del HTML, o sea que el
   navegador se lo volvia a bajar en cada cambio de pantalla. Mismas
   reglas, mismo sitio en el orden de las hojas. */
        .swal2-popup { border-radius: 18px !important; }
        .swal2-title { color: #0f2730 !important; font-weight: 800 !important; }
        .swal2-html-container { color: #5b6b72 !important; }
        .swal2-actions button.swal2-styled {
            border-radius: 12px !important;
            font-weight: 700 !important;
            padding: 12px 26px !important;
            box-shadow: none !important;
        }
        /* Quita el movimiento raro del icono (el tick/la X "subían y bajaban"): quedan quietos y limpios. */
        .swal2-icon { animation: none !important; }
        .swal2-icon.swal2-success *,
        .swal2-icon.swal2-error * { animation: none !important; }
        /* Iconos de aviso SÓLIDOS y limpios. En algunos móviles los de SweetAlert (líneas
           finas animadas) salían ROTOS: un círculo con una rayita gris al lado del símbolo
           (p.ej. al cancelar una clase: la exclamación y luego el tick de "cancelada").
           Los dibujamos como círculos macizos con el símbolo en blanco, iguales SIEMPRE en
           cualquier móvil. Mismo criterio que el tick de "reserva confirmada". */

        /* Aviso (exclamación): círculo ámbar + "!" blanco. */
        .swal2-icon.swal2-warning {
            border-color: transparent !important;
            background: #f59e0b !important;
            color: #fff !important;
            box-shadow: 0 8px 24px rgba(245, 158, 11, .30);
        }
        .swal2-icon.swal2-warning::before,
        .swal2-icon.swal2-warning::after { display: none !important; }
        .swal2-icon.swal2-warning .swal2-icon-content {
            display: flex !important;
            align-items: center;
            justify-content: center;
            width: 100%;
            height: 100%;
            color: #fff !important;
            font-weight: 800;
        }

        /* Hecho (tick): círculo verde + tick blanco. Se ocultan las líneas finas de
           SweetAlert y el tick se dibuja limpio. Se excluyen los iconos ya personalizados
           (reserva confirmada / tándems) para no duplicar el tick. */
        .swal2-icon.swal2-success:not(.gb-success-ico):not(.tandem-success-ico) {
            border-color: transparent !important;
            background: #22c55e !important;
            box-shadow: 0 8px 24px rgba(34, 197, 94, .30);
            position: relative;
        }
        .swal2-icon.swal2-success:not(.gb-success-ico):not(.tandem-success-ico) .swal2-success-ring,
        .swal2-icon.swal2-success:not(.gb-success-ico):not(.tandem-success-ico) [class^="swal2-success-line"],
        .swal2-icon.swal2-success:not(.gb-success-ico):not(.tandem-success-ico) [class*=" swal2-success-line"],
        .swal2-icon.swal2-success:not(.gb-success-ico):not(.tandem-success-ico) .swal2-success-fix,
        .swal2-icon.swal2-success:not(.gb-success-ico):not(.tandem-success-ico) .swal2-success-circular-line-left,
        .swal2-icon.swal2-success:not(.gb-success-ico):not(.tandem-success-ico) .swal2-success-circular-line-right { display: none !important; }
        .swal2-icon.swal2-success:not(.gb-success-ico):not(.tandem-success-ico)::after {
            content: '';
            position: absolute;
            top: 0; right: 0; bottom: 0; left: 0;
            display: block !important;
            background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E") center / 55% no-repeat;
        }

        /* Error (X): círculo rojo + X blanca. */
        .swal2-icon.swal2-error {
            border-color: transparent !important;
            background: #ef4444 !important;
            box-shadow: 0 8px 24px rgba(239, 68, 68, .30);
            position: relative;
        }
        .swal2-icon.swal2-error .swal2-x-mark,
        .swal2-icon.swal2-error [class^="swal2-x-mark-line"],
        .swal2-icon.swal2-error [class*=" swal2-x-mark-line"] { display: none !important; }
        .swal2-icon.swal2-error::after {
            content: '';
            position: absolute;
            top: 0; right: 0; bottom: 0; left: 0;
            display: block !important;
            background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center / 52% no-repeat;
        }
