/**
 * ============================================
 * ENCUESTA SATISFACCION - COMPONENT STYLES
 * ============================================
 * Componente de encuesta de satisfaccion con botones SI/NO
 * y boton de compartir pagina
 *
 * Especificaciones de diseño:
 *   - min-width: 767px (desktop), 100% (mobile)
 *   - background: var(--Primario-90) #D3E2FD
 *   - border-radius: 12px
 *   - padding: 20px top, 24px right/bottom/left
 *   - gap: 16px entre elementos
 */

/* ============================================
   BASE CONTAINER
   ============================================ */
.encuesta-satisfaccion {
    width: 100%;
}

.encuesta-satisfaccion__wrapper {
    display: flex;
    flex-direction: column;
    gap: 16px;
    background-color: var(--Primario-90, #D3E2FD);
    border-radius: 12px;
    padding: 20px 24px 24px 24px;
    min-width: 100%;
    margin-top: 15px;
}

@media (min-width: 768px) {
    .encuesta-satisfaccion__wrapper {
        min-width: 767px;
        max-width: 100%;
    }
}

/* ============================================
   HEADER ROW: Title + Buttons + Share Button
   ============================================ */
.encuesta-satisfaccion__header {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

/* Titulo/Pregunta: Nunito Sans Black (900), 20px, line-height 24px */
.encuesta-satisfaccion__title {
    font-family: var(--nunito-font, "Nunito Sans", sans-serif);
    font-weight: 900;
    font-size: 20px;
    line-height: 24px;
    color: var(--Neutral-20);
    margin: 0;
    flex-shrink: 0;
}

/* Boton Compartir: Nunito Sans Black (900), 13px, line-height 120% */
.encuesta-satisfaccion__share-btn {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: none;
    border: none;
    color: var(--Primario-40, #0A3FA7);
    font-family: var(--nunito-font, "Nunito Sans", sans-serif);
    font-weight: 900;
    font-size: 13px;
    line-height: 120%;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    transition: background-color 0.2s ease, color 0.2s ease;
    flex-shrink: 0;
    margin-left: auto;
}

.encuesta-satisfaccion__share-btn:hover,
.encuesta-satisfaccion__share-btn:focus {
    background-color: rgba(var(--Primario-40-rgb, 10, 63, 167), 0.1);
}

.encuesta-satisfaccion__share-btn .material-symbols-outlined {
    font-size: 18px;
}

/* ============================================
   BUTTONS ROW: SI / NO
   ============================================ */
.encuesta-satisfaccion__buttons {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

/* Botones SI/NO: 56x28px aprox, padding 6px 10px, border-radius 8px */
.encuesta-satisfaccion__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-width: 56px;
    min-height: 28px;
    padding: 6px 10px;
    border: 1px solid var(--Primario-40, #0A3FA7);
    border-radius: 8px;
    background-color: transparent;
    color: var(--Primario-40, #0A3FA7);
    font-family: var(--nunito-font, "Nunito Sans", sans-serif);
    font-weight: 700;
    font-size: 12px;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.encuesta-satisfaccion__btn:hover,
.encuesta-satisfaccion__btn:focus {
    background-color: var(--Primario-40, #0A3FA7);
    color: var(--Neutral-100, #FFFFFF);
    text-decoration: none;
}


.encuesta-satisfaccion__btn .material-symbols-outlined {
    font-size: 14px;
}

/* Boton SI - icono check a la derecha */
.encuesta-satisfaccion__btn--si {
    /* Estilos especificos si se necesitan */
}

/* Boton NO - icono close a la derecha */
.encuesta-satisfaccion__btn--no {
    /* Estilos especificos si se necesitan */
}

/* ============================================
   ADDITIONAL TEXT (RTE)
   ============================================ */
.encuesta-satisfaccion__text {
    font-family: var(--paragraph-font-family, "Verdana", sans-serif);
    font-size: var(--paragraph-font-size, 13px);
    line-height: var(--paragraph-line-height, 1.6);
    color: var(--Neutral-30, #383838);
}

.encuesta-satisfaccion__text p {
    margin: 0;
}

.encuesta-satisfaccion__text p + p {
    margin-top: 0.5rem;
}

.encuesta-satisfaccion__text a {
    color: var(--Primario-40, #0A3FA7);
    text-decoration: underline;
}

.encuesta-satisfaccion__text a:hover,
.encuesta-satisfaccion__text a:focus {
    color: var(--Primario-30, #042871);
}

/* ============================================
   RESPONSIVE STYLES
   ============================================ */
@media (max-width: 767.98px) {
    .encuesta-satisfaccion__wrapper {
        min-width: 100%;
        padding: 16px;
        gap: 12px;
    }

    .encuesta-satisfaccion__header {
        flex-wrap: wrap;
        gap: 12px;
    }

    .encuesta-satisfaccion__title {
        width: 100%;
        order: 1;
    }

    .encuesta-satisfaccion__buttons {
        order: 2;
        flex: 1;
    }

    .encuesta-satisfaccion__share-btn {
        order: 3;
        margin-left: 0;
    }

    .encuesta-satisfaccion__btn {
        flex: 1;
        justify-content: center;
    }
}

/* ============================================
   HIGH CONTRAST MODE
   ============================================ */
@media (prefers-contrast: high) {
    .encuesta-satisfaccion__wrapper {
        border: 2px solid var(--Neutral-20, #222222);
    }

    .encuesta-satisfaccion__btn {
        border-width: 2px;
    }
}

/* ============================================
   REDUCED MOTION
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .encuesta-satisfaccion__share-btn,
    .encuesta-satisfaccion__btn {
        transition: none;
    }
}
