<style>
    /* ========================================= */
    /* ESTILOS GENERALES                         */
    /* ========================================= */
    .cooloff-calendar-wrapper {
        max-width: 1080px;
        margin: 0 auto;
        padding: 2rem 1rem;
        font-family: 'Outfit', 'Quicksand', system-ui, -apple-system, sans-serif;
        color: #33475b;
    }
    /* ========================================= */
    /* ESTILOS ESCRITORIO (TABLA TIPO TARJETA)   */
    /* ========================================= */
    .cooloff-calendar-wrapper .table-card {
        background: white;
        border-radius: 16px;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
        overflow: hidden;
        border: 1px solid rgba(0, 0, 0, 0.03);
    }
    .cooloff-calendar-wrapper .cooloff-calendar__table {
        width: 100%;
        border-collapse: collapse;
        border-spacing: 0;
        margin: 0;
        /* Reset margin */
    }
    /* Cabecera - Forzamos estilos con !important para evitar conflictos */
    .cooloff-calendar-wrapper .cooloff-calendar__table thead th {
        background-color: #65bfbd !important;
        /* Azul vibrante */
        color: #ffffff !important;
        font-weight: 700 !important;
        text-transform: uppercase;
        letter-spacing: 1px;
        padding: 1.25rem 1rem;
        font-size: 0.9rem;
        border: none !important;
    }
    /* Cuerpo */
    .cooloff-calendar-wrapper .cooloff-calendar__table tbody tr {
        border-bottom: 1px solid #f0f4f8;
        transition: background-color 0.2s ease;
        background-color: #ffffff;
        /* Asegurar fondo blanco */
    }
    .cooloff-calendar-wrapper .cooloff-calendar__table tbody tr:last-child {
        border-bottom: none;
    }
    .cooloff-calendar-wrapper .cooloff-calendar__table tbody tr:hover {
        background-color: #E6F6F9 !important;
        /* Efecto hover suave */
    }
    .cooloff-calendar-wrapper .cooloff-calendar__table th,
    .cooloff-calendar-wrapper .cooloff-calendar__table td {
        padding: 1.25rem 1rem;
        text-align: center;
        vertical-align: middle;
        border: none;
        /* Quitamos bordes por defecto */
    }
    .cooloff-calendar-wrapper .cooloff-calendar__table tbody th {
        text-align: left;
        font-weight: 600;
        color: #33475b;
        font-size: 1rem;
        padding-left: 2rem;
    }
    /* Badges (Píldoras de estado) */
    .cooloff-calendar-wrapper .status-badge {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0.5rem 1.25rem;
        padding-bottom: 12px;
        border-radius: 999px;
        font-size: 0.85rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        min-width: 120px;
        line-height: 1.2;
    }
    /* Disponible: Fondo verde claro, Texto verde oscuro */
    .cooloff-calendar-wrapper .status-badge.is-available {
        background-color: #EC87A7 !important;
        color: #ffffff !important;
        box-shadow: 0 2px 5px rgba(0, 208, 132, 0.15);
    }
    /* Completo/No disponible: Fondo gris, Texto gris */
    .cooloff-calendar-wrapper .status-badge.is-unavailable {
        background-color: #F5F8FA !important;
        color: #99ACC2 !important;
        text-decoration: line-through;
    }
    .cooloff-calendar-wrapper .status-empty {
        color: #CBD6E2;
        font-weight: bold;
    }
    /* ========================================= */
    /* ESTILOS MÓVIL (TARJETAS APILADAS)         */
    /* ========================================= */
    .cooloff-calendar-wrapper .mobile-view {
        display: none;
        flex-direction: column;
        gap: 2.5rem;
    }
    .cooloff-calendar-wrapper .mobile-house-card {
        background: #fff;
        border-radius: 16px;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
        overflow: hidden;
        border: 1px solid rgba(0, 0, 0, 0.05);
    }
    .cooloff-calendar-wrapper .mobile-house-title {
        background-color: #65bfbd !important;
        /* Mismo azul que escritorio */
        color: white !important;
        margin: 0;
        padding: 1rem 1.5rem;
        font-size: 1.1rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }
    .cooloff-calendar-wrapper .mobile-turns-list {
        padding: 0.5rem 0;
    }
    .cooloff-calendar-wrapper .mobile-turn-item {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 1rem 1rem;
        border-bottom: 1px solid #f0f4f8;
        gap: 10px !important;
    }
    .cooloff-calendar-wrapper .mobile-turn-item:last-child {
        border-bottom: none;
    }
    .cooloff-calendar-wrapper .mobile-turn-date {
        font-weight: 600;
        color: #33475b;
        font-size: 20px;
    }
    /* Ajuste badge móvil */
    .cooloff-calendar-wrapper .mobile-turn-item .status-badge {
        min-width: auto;
        padding: 0.35rem 0.85rem;
        padding-bottom: 5px;
        font-size: 0.75rem;
    }
    /* ========================================= */
    /* MEDIA QUERIES                             */
    /* ========================================= */
    @media (max-width: 768px) {
        .cooloff-calendar-wrapper .desktop-view {
            display: none !important;
        }
        .cooloff-calendar-wrapper .mobile-view {
            display: flex !important;
        }
    }
    @media (min-width: 769px) {
        .cooloff-calendar-wrapper .desktop-view {
            display: block !important;
        }
        .cooloff-calendar-wrapper .mobile-view {
            display: none !important;
        }
    }
</style>