/* KORA'S TRIBE QUIZ - ESTILO PREMIUM TARJETA */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* RESET ESPECÍFICO */
body #kora-quiz-wrapper * {
    box-sizing: border-box !important;
    font-family: 'Inter', sans-serif; /* Fallback general */
}

/* CONTENEDOR PRINCIPAL */
body #kora-quiz-wrapper {
    max-width: 700px !important;
    margin: 40px auto !important;
    color: #443e39 !important;
    background-color: #ffffff !important;
    padding: 40px !important;
    border-radius: 40px !important;
    box-shadow: 0 20px 60px rgba(194, 92, 64, 0.08) !important;
    border: 1px solid #fde2c6 !important;
    position: relative !important;
}

/* TÍTULOS */
body #kora-quiz-wrapper h2,
body #kora-quiz-wrapper h3 {
    font-family: "Cooper B", "Cooper Black", serif !important; /* FUENTE PERSONALIZADA */
    color: #c25c40 !important;
}

body #kora-quiz-wrapper h2 {
    font-size: 32px !important;
    text-align: center !important;
    margin-bottom: 30px !important;
}

/* BARRA DE PROGRESO */
body #kora-quiz-wrapper #kora-quiz-progress-container {
    background-color: #fff4e6 !important;
    height: 12px !important;
    border-radius: 20px !important;
    margin-bottom: 50px !important;
    overflow: hidden !important;
}

body #kora-quiz-wrapper #kora-quiz-progress {
    background-color: #c25c40 !important;
    height: 100% !important;
    width: 0%;
    transition: width 0.6s cubic-bezier(0.25, 1, 0.5, 1) !important;
    border-radius: 20px !important;
}

/* PREGUNTAS Y OPCIONES */
body #kora-quiz-wrapper .quiz-step {
    display: none; /* JS maneja la visibilidad */
}
body #kora-quiz-wrapper .quiz-step.active {
    display: block;
    animation: koraSlideUp 0.5s ease forwards;
}

@keyframes koraSlideUp {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

body #kora-quiz-wrapper h3 {
    font-size: 24px !important;
    margin-bottom: 30px !important;
    line-height: 1.4 !important;
}

body #kora-quiz-wrapper label {
    display: block !important;
    background-color: #fff9f2 !important; /* Crema muy suave */
    color: #5a544f !important;
    padding: 18px 25px !important;
    margin-bottom: 15px !important;
    border-radius: 15px !important;
    cursor: pointer !important;
    border: 2px solid #fde2c6 !important;
    transition: all 0.2s ease !important;
    font-weight: 600 !important;
    font-size: 16px !important;
}

body #kora-quiz-wrapper label:hover {
    background-color: #fde2c6 !important;
    border-color: #f6ae72 !important;
    transform: translateX(5px);
}

body #kora-quiz-wrapper input[type="radio"]:checked + label {
    background-color: #c25c40 !important;
    color: #ffffff !important;
    border-color: #c25c40 !important;
    box-shadow: 0 5px 15px rgba(194, 92, 64, 0.3) !important;
}

body #kora-quiz-wrapper input[type="radio"] {
    display: none !important;
}

/* BOTONES */
body #kora-quiz-wrapper .quiz-nav-btns {
    display: flex !important;
    gap: 15px !important;
    margin-top: 50px !important;
}

body #kora-quiz-wrapper button {
    font-family: 'Inter', sans-serif !important;
    background-color: #c25c40 !important;
    color: white !important;
    border: none !important;
    border-radius: 50px !important;
    padding: 16px 32px !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
}

body #kora-quiz-wrapper button:hover {
    background-color: #a64429 !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

body #kora-quiz-wrapper .quiz-prev-btn {
    background-color: #e0e0e0 !important;
    color: #666 !important;
    flex: 0 0 auto !important;
}
body #kora-quiz-wrapper .quiz-prev-btn:hover {
    background-color: #ccc !important;
}
body #kora-quiz-wrapper .quiz-next-btn,
body #kora-quiz-wrapper #submit-quiz-btn {
    flex: 1 !important;
}

/* === RESULTADO: DISEÑO DE TARJETA MEJORADO === */
body #kora-quiz-wrapper .result-card {
    text-align: center !important;
    background: #fff !important;
    padding: 10px !important;
    animation: koraPopIn 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

@keyframes koraPopIn {
    0% { opacity: 0; transform: scale(0.9); }
    100% { opacity: 1; transform: scale(1); }
}

/* Imagen Pequeña y Elegante */
body #kora-quiz-wrapper .result-char-img {
    width: 140px !important; /* TAMAÑO PEQUEÑO */
    height: 140px !important;
    object-fit: cover !important;
    border-radius: 50% !important; /* Circular */
    margin: 0 auto 20px auto !important;
    display: block !important;
    border: 6px solid #fff !important;
    box-shadow: 0 8px 25px rgba(0,0,0,0.15) !important;
}

/* Badge del Título */
body #kora-quiz-wrapper .result-badge {
    display: inline-block !important;
    padding: 6px 18px !important;
    border-radius: 20px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: #fff !important;
    margin-bottom: 15px !important;
}

/* Nombre del Personaje */
body #kora-quiz-wrapper .result-card h3 {
    font-family: "Cooper B", "Cooper Black", serif !important; /* FUENTE CLAVE */
    font-size: 38px !important;
    margin-bottom: 25px !important;
    line-height: 1.1 !important;
}

/* Descripción Rica */
body #kora-quiz-wrapper .char-desc {
    font-size: 16px !important;
    line-height: 1.7 !important;
    color: #555 !important;
    margin-bottom: 35px !important;
    text-align: left !important; /* Mejor legibilidad */
    background: #fdfdfd !important;
    padding: 25px !important;
    border-radius: 15px !important;
    border: 1px solid #eee !important;
}

body #kora-quiz-wrapper .char-desc strong {
    color: #c25c40 !important;
    font-weight: 800 !important;
}

/* Loader */
body #kora-quiz-wrapper .kora-loader {
    width: 40px !important;
    height: 40px !important;
    border: 4px solid #fde2c6 !important;
    border-top: 4px solid #c25c40 !important;
    border-radius: 50% !important;
    animation: koraSpin 1s linear infinite !important;
    margin: 0 auto 20px !important;
}

@keyframes koraSpin { to { transform: rotate(360deg); } }

/* === GATE DE EMAIL === */
body #kora-quiz-wrapper #kora-quiz-gate {
    animation: koraPopIn 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

body #kora-quiz-wrapper .kora-gate-inner {
    text-align: center !important;
    max-width: 460px !important;
    margin: 0 auto !important;
    padding: 10px 0 !important;
}

body #kora-quiz-wrapper .kora-gate-inner h3 {
    font-size: 28px !important;
    margin: 0 0 12px !important;
}

body #kora-quiz-wrapper .kora-gate-text {
    font-size: 16px !important;
    line-height: 1.6 !important;
    color: #6b625b !important;
    margin: 0 0 28px !important;
}

body #kora-quiz-wrapper .kora-gate-label {
    display: block !important;
    text-align: left !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #6b625b !important;
    margin-bottom: 6px !important;
}

body #kora-quiz-wrapper #kora-gate-form input[type="email"],
body #kora-quiz-wrapper #kora-gate-form input[type="text"] {
    width: 100% !important;
    padding: 15px 18px !important;
    margin-bottom: 18px !important;
    font-size: 16px !important; /* 16px evita el zoom automático en iOS */
    font-family: 'Inter', sans-serif !important;
    color: #443e39 !important;
    background: #fffaf4 !important;
    border: 2px solid #fde2c6 !important;
    border-radius: 14px !important;
    outline: none !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

body #kora-quiz-wrapper #kora-gate-form input[type="email"]:focus,
body #kora-quiz-wrapper #kora-gate-form input[type="text"]:focus {
    border-color: #c25c40 !important;
    box-shadow: 0 0 0 4px rgba(194, 92, 64, 0.12) !important;
}

/* Honeypot: fuera de pantalla, nunca visible ni enfocable con tabulador */
body #kora-quiz-wrapper .kora-hp {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

body #kora-quiz-wrapper .kora-gate-consent {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    text-align: left !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: #6b625b !important;
    margin-bottom: 20px !important;
    cursor: pointer !important;
}

body #kora-quiz-wrapper .kora-gate-consent input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    margin: 2px 0 0 !important;
    accent-color: #c25c40 !important;
    flex: 0 0 auto !important;
}

body #kora-quiz-wrapper #kora-gate-error {
    color: #b32d2e !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    margin: 0 0 14px !important;
}

body #kora-quiz-wrapper #kora-gate-submit {
    width: 100% !important;
}

body #kora-quiz-wrapper #kora-gate-submit:disabled {
    opacity: 0.6 !important;
    cursor: wait !important;
    transform: none !important;
}

body #kora-quiz-wrapper .kora-gate-privacy {
    font-size: 12.5px !important;
    color: #9a8f86 !important;
    margin: 16px 0 0 !important;
    line-height: 1.5 !important;
}

/* === PANTALLA DE CARGA CON PERSONAJES === */
body #kora-quiz-wrapper #kora-quiz-loading {
    text-align: center !important;
    padding: 40px 0 50px !important;
}

body #kora-quiz-wrapper .kora-loading-stage {
    position: relative !important;
    width: 190px !important;
    height: 190px !important;
    margin: 0 auto 28px !important;
}

body #kora-quiz-wrapper .kora-loading-img {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 130px !important;
    height: 130px !important;
    object-fit: contain !important;
    opacity: 0 !important;
    transform: translate(-50%, -50%) scale(0.82) !important;
    transition: opacity 0.4s ease, transform 0.4s ease !important;
}

body #kora-quiz-wrapper .kora-loading-img.is-active {
    opacity: 1 !important;
    transform: translate(-50%, -50%) scale(1) !important;
}

body #kora-quiz-wrapper .kora-loading-ring {
    position: absolute !important;
    inset: 0 !important;
    border: 4px solid #fde2c6 !important;
    border-top-color: #c25c40 !important;
    border-radius: 50% !important;
    animation: koraSpin 1.4s linear infinite !important;
}

body #kora-quiz-wrapper .kora-loading-phrase {
    font-family: 'Inter', sans-serif !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #c25c40 !important;
    margin: 0 !important;
    min-height: 26px !important;
}

/* === DESCUENTO EN EL RESULTADO === */
body #kora-quiz-wrapper .kora-discount {
    background: linear-gradient(160deg, #fff6ec 0%, #fde2c6 100%) !important;
    border: 1px dashed #c25c40 !important;
    border-radius: 18px !important;
    padding: 24px 20px !important;
    margin: 0 0 30px !important;
    text-align: center !important;
}

body #kora-quiz-wrapper .kora-discount-heading {
    display: block !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: #c25c40 !important;
    margin-bottom: 8px !important;
}

body #kora-quiz-wrapper .kora-discount-text {
    font-size: 15px !important;
    line-height: 1.6 !important;
    color: #6b625b !important;
    margin: 0 0 16px !important;
}

body #kora-quiz-wrapper .kora-discount-text strong {
    color: #c25c40 !important;
    font-weight: 800 !important;
}

body #kora-quiz-wrapper button.kora-discount-code {
    position: relative !important;
    display: inline-block !important;
    width: auto !important;
    background: #fff !important;
    color: #c25c40 !important;
    border: 2px dashed #c25c40 !important;
    border-radius: 12px !important;
    padding: 14px 30px !important;
    font-size: 21px !important;
    font-weight: 800 !important;
    letter-spacing: 0.16em !important;
    cursor: pointer !important;
    overflow: hidden !important;
}

body #kora-quiz-wrapper button.kora-discount-code:hover {
    background: #fff !important;
    transform: translateY(-2px) !important;
}

body #kora-quiz-wrapper .kora-discount-copied {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #c25c40 !important;
    color: #fff !important;
    font-size: 15px !important;
    letter-spacing: 0.06em !important;
    opacity: 0 !important;
    transition: opacity 0.2s ease !important;
    pointer-events: none !important;
}

body #kora-quiz-wrapper button.kora-discount-code.is-copied .kora-discount-copied {
    opacity: 1 !important;
}

/* === RESPONSIVE === */
@media (max-width: 640px) {
    body #kora-quiz-wrapper {
        padding: 26px 20px !important;
        border-radius: 26px !important;
        margin: 20px auto !important;
    }
    body #kora-quiz-wrapper .kora-gate-inner h3 { font-size: 23px !important; }
    body #kora-quiz-wrapper .kora-loading-stage { width: 150px !important; height: 150px !important; }
    body #kora-quiz-wrapper .kora-loading-img { width: 100px !important; height: 100px !important; }
    body #kora-quiz-wrapper .result-card h3 { font-size: 29px !important; }
    body #kora-quiz-wrapper button.kora-discount-code { font-size: 18px !important; padding: 13px 22px !important; }
}

@media (prefers-reduced-motion: reduce) {
    body #kora-quiz-wrapper .kora-loading-ring { animation-duration: 3s !important; }
    body #kora-quiz-wrapper .kora-loading-img { transition-duration: 1ms !important; }
}