/* =========================================================
   COSTA DEL ROCK · ASISTENTE / CHAT
   ========================================================= */

/* ---------- VENTANA ---------- */

.cdr-chat {
    position: fixed !important;
    right: 20px !important;
    bottom: 125px !important;
width: 300px !important;
    max-width: calc(100vw - 40px) !important;

    margin: 0 !important;
    padding: 0 !important;

    display: none !important;
    overflow: hidden !important;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(224, 0, 0, 0.14),
            transparent 42%
        ),
        linear-gradient(
            145deg,
            #151515 0%,
            #0b0b0b 65%,
            #070707 100%
        ) !important;

    color: #ffffff !important;

    border: 1px solid #303030 !important;
    border-radius: 16px !important;

    box-shadow:
        0 18px 45px rgba(0,0,0,.55),
        0 0 30px rgba(0,0,0,.25) !important;

    z-index: 99998 !important;

    box-sizing: border-box !important;
}

.cdr-chat.cdr-chat-activo {
    display: block !important;
}


/* ---------- CABECERA ---------- */

.cdr-chat .cdr-chat-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    width: 100% !important;
    min-height: 48px !important;
    height: 48px !important;

    margin: 0 !important;
    padding: 0 13px !important;

    box-sizing: border-box !important;

    background:
        linear-gradient(
            90deg,
            #151515,
            #101010
        ) !important;

    border: 0 !important;
    border-bottom: 1px solid rgba(224,0,0,.55) !important;
    border-radius: 0 !important;

    color: #ffffff !important;

    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    letter-spacing: .2px !important;
}

.cdr-chat .cdr-chat-header > span:first-child {
    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #ffffff !important;

    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 800 !important;

    white-space: nowrap !important;
}


/* ---------- CERRAR ---------- */

.cdr-chat .cdr-cerrar {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    flex: 0 0 26px !important;

    width: 26px !important;
    height: 26px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    color: #777777 !important;

    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 700 !important;

    cursor: pointer !important;

    border-radius: 50% !important;

    transition:
        color .2s ease,
        background .2s ease !important;
}

.cdr-chat .cdr-cerrar:hover {
    color: #ffffff !important;
    background: rgba(255,255,255,.08) !important;
}


/* ---------- CUERPO ---------- */

.cdr-chat .cdr-chat-body {
    display: block !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 14px 15px 12px !important;

    box-sizing: border-box !important;

    background: transparent !important;

    color: #ffffff !important;

    font-size: 14px !important;
}


/* ---------- TÍTULO ---------- */

.cdr-chat .cdr-chat-title {
    display: block !important;

    margin: 0 0 11px !important;
    padding: 0 !important;

    color: #d0d0d0 !important;

    font-size: 12px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;

    letter-spacing: .2px !important;
}


/* =========================================================
   BOTONES
   ========================================================= */

.cdr-chat .cdr-chat-grid {
    display: grid !important;

    grid-template-columns:
        repeat(2, minmax(0, 1fr)) !important;

    grid-auto-flow: row !important;

    gap: 7px !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    box-sizing: border-box !important;
}


/* ---------- BOTÓN ---------- */

.cdr-chat .cdr-chat-option {
    position: relative !important;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;

    margin: 0 !important;
    padding: 7px 9px !important;

    box-sizing: border-box !important;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.035),
            rgba(255,255,255,.015)
        ) !important;

    border: 1px solid #292929 !important;
    border-radius: 8px !important;

    color: #aaaaaa !important;

    text-decoration: none !important;

    transition:
        background .2s ease,
        border-color .2s ease,
        color .2s ease,
        transform .2s ease !important;
}


/* Texto del botón */

.cdr-chat .cdr-chat-option span {
    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #aaaaaa !important;

    font-size: 8.5px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;

    letter-spacing: 1px !important;

    text-align: left !important;
}


/* Flecha / + */

.cdr-chat .cdr-chat-option strong {
    display: block !important;

    flex: 0 0 auto !important;

    margin: 0 0 0 6px !important;
    padding: 0 !important;

    color: #555555 !important;

    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 500 !important;

    transition: color .2s ease !important;
}


/* ---------- HOVER ---------- */

.cdr-chat .cdr-chat-option:hover {
    background:
        linear-gradient(
            145deg,
            rgba(224,0,0,.10),
            rgba(255,255,255,.025)
        ) !important;

    border-color: rgba(224,0,0,.55) !important;

    color: #ffffff !important;

    text-decoration: none !important;

    transform: translateY(-1px) !important;
}

.cdr-chat .cdr-chat-option:hover span {
    color: #ffffff !important;
}

.cdr-chat .cdr-chat-option:hover strong {
    color: #e00000 !important;
}


/* =========================================================
   PARTE INFERIOR
   ========================================================= */

.cdr-chat .cdr-chat-bottom {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    gap: 9px !important;

    width: 100% !important;

    margin: 13px 0 0 !important;
    padding: 12px 0 0 !important;

    box-sizing: border-box !important;

    border-top: 1px solid #222222 !important;

    text-align: center !important;
}

.cdr-chat .cdr-chat-bottom a {
    display: inline-block !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    color: #777777 !important;

    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 800 !important;

    letter-spacing: 1.5px !important;

    text-decoration: none !important;
}

.cdr-chat .cdr-chat-bottom a:hover {
    color: #ffffff !important;
}

.cdr-chat .cdr-chat-bottom span {
    margin: 0 !important;
    padding: 0 !important;

    color: #444444 !important;

    font-size: 10px !important;
    line-height: 1 !important;
}


/* =========================================================
   MÓVIL
   ========================================================= */

@media (max-width: 600px) {

    .cdr-chat {
        right: 14px !important;
        bottom: 92px !important;

        width: 290px !important;
        max-width: calc(100vw - 28px) !important;
    }

}


/* ---------- MÓVILES PEQUEÑOS ---------- */

@media (max-width: 380px) {

    .cdr-chat {
        right: 10px !important;
        bottom: 88px !important;

        width: 275px !important;
        max-width: calc(100vw - 20px) !important;
    }

    .cdr-chat .cdr-chat-body {
        padding: 15px 13px 13px !important;
    }

    .cdr-chat .cdr-chat-option {
        min-height: 45px !important;
        padding: 7px 8px !important;
    }

}