/* ========== 共通ユーティリティ ========== */

.exam-rounded-lg {
    overflow: hidden;
}

.exam-rounded-xl {
    overflow: hidden;
}

.exam-close {
    cursor: pointer;
}

.exam-progress {
    height: 10px;
    background-color: #fff;
    margin-bottom: 0px;
}

.exam-collect-collor {
    color: #3dc4aa;
}

.exam-incollect-collor {
    color: #ff6e63;
}

.exam-collect-bgcollor {
    background-color: #3dc4aa;
}

.exam-incollect-bgcollor {
    background-color: #ff6e63;
}

.exam-collect-button {
    /*color: #fff !important;
    background-color: #3DC4AA !important;
    border-color: #3DC4AA;*/
    border: 2px solid #3dc4aa !important;
}

.exam-incollect-button {
    /*color: #fff !important;
    background-color: #FF6E63 !important;
    border-color: #FF6E63;*/
    border: 2px solid #ff6e63 !important;
}


.modal-footer {
    border-top: none;
}

/* ========== 開始 / 質問モーダル (#js-exam-modal) ========== */

.exam-modal,
.exam-result-modal,
.category-master-modal {
    background-color: #eee;
}
.exam-modal .modal-content,
.exam-result-modal .modal-content,
.category-master-modal .modal-content {
    background-color: #eee;
}
.exam-modal .modal-dialog,
.exam-result-modal .modal-dialog,
.category-master-modal .modal-dialog {
    height: 100vh;
    max-width: 450px;
    margin: 0rem auto;
}
.exam-modal .modal-content,
.exam-result-modal .modal-content {
    border: none;
}

/* 開始画像 */
.exam-start-image {
    width: 40%;
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}

/* 情報カード幅 */
.exam-info-card {
    max-width: 520px;
    width: 100%;
}

#js-exam-modal #js-exam-question {
    font-weight: 700;
}

.exam-choice {
    font-weight: 700;
    font-size: 0.8rem;
    border-radius: 8px !important;
    padding: 1.25rem 1.25rem;
    border: 2px solid #fff;
    background-color: #fff;
}

#js-exam-modal #js-exam-choices .exam-choice.btn-outline-secondary:hover {
    /*border-color: #FF6E63 !important;
    color: #FF6E63 !important;
    background-color: rgba(0, 123, 255, 0.04) !important;*/
    border-color: #f5f5f5 !important;
    color: inherit;
    background-color: #f5f5f5 !important;
}
#js-exam-modal #js-exam-choices .exam-choice:disabled {
    pointer-events: none;
}

#js-exam-modal #js-exam-countdown {
    font-weight: 700;
    font-size: 5rem;
    line-height: 1;
}

#js-exam-modal #js-exam-feedback {
    border-radius: 8px;
}

/* 結果アイコン（回答直後に script で利用） */
#js-exam-modal .exam-result-icon {
    font-size: 28px;
    flex-shrink: 0;
}

#js-exam-modal .exam-result-icon.success {
    color: #3dc4aa;
}

#js-exam-modal .exam-result-icon.fail {
    color: #ff6e63;
}

/* ========== 結果モーダル (#js-exam-result) ========== */

#js-exam-result.model-passed #js-exam-result-msg {
    /* 合格*/
    color: #3dc4aa;
}
#js-exam-result.model-failed #js-exam-result-msg {
    /* 不合格*/
    color: #ff6e63;
}

#js-exam-result .exam-result-image {
    width: 40%;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

#js-exam-result #js-exam-result-stats {
    display: flex;
    gap: 10px;
    margin-bottom: 15px;
}
#js-exam-result #js-exam-result-stats > div {
    text-align: center;
    padding: 1rem;
    background-color: #fff;
    border-radius: 8px;
    width: 50%;
}
#js-exam-result #js-exam-result-stats > div span {
    font-size: 1.4rem;
    font-weight: bold;
}

#js-exam-result #js-exam-review > div {
    background-color: #e1e1e1;
    border-radius: 8px;
}
#js-exam-result #js-exam-review .exam-choice {
    pointer-events: none;
}

/* ========== カテゴリーマスター達成 (#js-category-master-modal) ========== */
.category-master-modal .modal-content {
    border: none;
}

.category-master-image {
    width: 280;
    height: auto;
    margin: 0 auto;
}

.category-master-modal .modal-content h2 {
    color: #3dc4aa;
}

.category-master-modal #js-category-master-name {
    padding: 0.5rem 1rem;
    display: inline-block;
    background: #3dc4aa;
    border-radius: 8px;
    margin-bottom: 10px;
    color: #fff !important;
}

.category-master-modal .modal-content p {
    font-weight: bold;
    font-size: 1.1rem;
}
/* ========== キャンセル確認 (#js-exam-cancel-modal) ========== */
#js-exam-cancel-modal.show .modal-dialog {
    display: flex;
    align-items: center;
    min-height: 100vh;
    margin: 0 auto;
}
