/* =========================================
   MSTAR MYSTERY VOICE QUIZ
   ========================================= */

.mstar-quiz {
    width: 100%;
    max-width: 500px;
    margin: 15px auto;
    padding: 0 10px 10px;
    box-sizing: border-box;
    background-image: url('../img/SuaraMisteri/bg.png');
    xbackground:
        radial-gradient(#8bdc86 1.2px, transparent 1.2px),
        linear-gradient(135deg, #b7f0a2, #d9f77e);

    xbackground-size: 10px 10px, 100% 100%;

    border: 1px solid #171717;

   font-family: 'Poppins', Arial, Helvetiva, Tahoma, sans-serif;
}


/* =========================================
   HEADER
   ========================================= */

.quiz-header {
    height: 30px;
    margin: 0 -10px 2px;
    padding: 0 10px;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    background: #171717;
    xborder-bottom: 4px solid #8ed044;

    color: #fff;
}

.quiz-header strong {
    font-size: 16px;
    line-height: 1;
}

/*.audio-icon {
    font-size: 16px;
    xtransform: rotate(90deg);
}*/

.mstar-logo {
    margin-left: 5px;

    font-size: 22px;
    font-weight: bold;
    font-style: italic;
}


/* =========================================
   AUDIO PLAYER
   ========================================= */

.audio-box {
    min-height: 40px;
    margin: 10px 5px 6px 5px;
    padding: 6px;
    display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
    border: 1px solid #222;
}

.play-btn {
    width: 32px;
    height: 28px;
    border: 0;
    background: #000;
    color: #fff;
    cursor: pointer;
}

.progress-area {
    flex: 1;
}

.progress-bar {
    width: 100%;
    height: 8px;
    background: #ddd;
}

.progress-fill {
    height: 100%;
    background: #777;
}

.time {
    font-size: 12px;
    white-space: nowrap;
}



/* =========================================
   ANSWERS
   ========================================= */

.answers {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4px;
    margin: 0 5px;
}

.answer {
    min-height: 30px;
    padding: 0 5px;

    display: flex;
    align-items: center;
    gap: 5px;

    background: rgba(245, 255, 207, 0.75);

    border: 1px solid rgba(255,255,255,0.6);

    box-sizing: border-box;
	line-height: 16px;
    font-size: 12px;
    cursor: pointer;
}


/* Hide original radio */

.answer input {
    display: none;
}


/* Custom radio */

.radio {
    width: 14px;
    height: 14px;

    flex: 0 0 14px;

    border: 1px solid #333;
    border-radius: 50%;

    background: transparent;
    box-sizing: border-box;
}


/* Checked radio */

.answer input:checked + .radio {
    box-shadow: inset 0 0 0 4px #eaffd8;
    background: #555;
}


/* Wrong */

.answer.wrong {
    background: rgba(245, 255, 207, 0.85);
}

.answer.wrong b {
    margin-left: auto;
    color: #ed1c24;
    font-size: 25px;
    font-weight: normal;
}


/* Correct */

.answer.correct b {
    margin-left: auto;
    color: #62a52c;
    font-size: 22px;
}



/* =========================================
   INTRO AREA
   ========================================= */

.intro {
    position: relative;

    xmin-height: 225px;

    xpadding: 20px 25px;

    display: grid;

    grid-template-columns: 38% 62%;

    align-items: start;

    box-sizing: border-box;

    overflow: hidden;

}

   /* SPEAKER */

    .speaker-image img {
       padding:10px 10px 0 0;
    }


   /* Title */

.intro-content h2 {
    display: inline-block;

    margin: 10px 0 5px;

    padding: 5px 20px;

    background: #171717;

    color: #fff;

    font-size: 20px;

    font-weight: 800;

    line-height: 1.2;
}


/* Description */

.intro-content p {
    max-width: 290px;

    margin: 5px 0 5px;

    color: #111;

    font-size: 14px;

    font-weight: 500;

    line-height: 1.4;
}






/* =========================================
   FOOTER
   ========================================= */

.quiz-footer {
    min-height: 30px;
    padding: 8px 0 0;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;

    box-sizing: border-box;
}

.quiz-footer em {
    font-size: 10px;
    color: #111;
	margin: 0 0 0 5px;
}


/* Teka button */

.guess-btn {
    padding: 6px 16px;
    margin: 0 5px 0 0;
    border: 0;
    background: #fff;
    border-radius: 6px;
    color: #111;

    font-size: 16px;
    font-weight: bold;

    box-shadow: 0 1px 3px rgba(0,0,0,0.6);

    cursor: pointer;
}

.guess-btn:hover {
    background: #E2E2E2;
}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 480px) {

    .quiz-header strong {
        font-size: 17px;
    }

    .mstar-logo {
        font-size: 19px;
    }

    .answer {
        font-size: 14px;
        padding: 0 7px;
    }

    .quiz-footer em {
        font-size: 13px;
    }

    .guess-btn {
        font-size: 14px;
        padding: 6px 12px;
    }

}
  /* Behavior / overrides not covered by designer CSS */
    #suara-misteri-widget.mstar-quiz {
        position: relative;
        transition: opacity 1s ease, transform 1s ease;
    }
    #suara-misteri-widget.mstar-quiz.sm-fade-out {
        opacity: 0;
        transform: translateY(-8px);
        pointer-events: none;
    }
    #suara-misteri-widget .audio-box .progress-fill {
        width: 0%;
        border-radius: 0;
        pointer-events: none;
    }
    #suara-misteri-widget .sm-audio-player {
        width: 100%;
        display: block;
        height: 36px;
    }
    #suara-misteri-widget .guess-btn:disabled,
    #suara-misteri-widget .guess-btn[disabled] {
        background: #e5e5e2;
        color: #9e9e9e;
        box-shadow: none;
        cursor: not-allowed;
    }
    #suara-misteri-widget a.guess-btn {
        text-decoration: none;
        display: inline-block;
    }
    #suara-misteri-widget.sm-submitted .answer {
        cursor: default;
    }
    #suara-misteri-widget .quiz-footer em:empty {
        display: none;
    }
    #suara-misteri-widget .sm-points-fly {
        position: absolute;
        left: 50%;
        top: 40%;
        transform: translate(-50%, 0);
        z-index: 5;
        padding: 4px 10px;
        border: 1px solid #f0c36d;
        border-radius: 6px;
        background: #fff;
        color: #d28c00;
        font-size: 16px;
        font-weight: 700;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
        animation: sm-points-fly 4.0s ease forwards;
        pointer-events: none;
    }
    @keyframes sm-points-fly {
        0% {
            opacity: 0;
            transform: translate(-50%, 10px);
        }
        20% {
            opacity: 1;
            transform: translate(-50%, 0); /* Quickly fades in and settles */
        }
        75% {
            opacity: 1;
            transform: translate(-50%, -10px); /* Holds on screen for ~2+ seconds */
        }
        100% {
            opacity: 0;
            transform: translate(-50%, -25px); /* Fades out at the very end */
        }
    }
    /* Keep TEKA button on the right even before feedback text appears */
    #suara-misteri-widget .quiz-footer {
        justify-content: flex-end;
    }
    #suara-misteri-widget .quiz-footer em:not(:empty) {
        margin-right: auto;
    }