/* menu */
.interactive-teaching-menu .owl-carousel {
    width: calc(100% - 80px);
}
.interactive-teaching-menu .owl-nav .owl-prev,
.interactive-teaching-menu .owl-nav .owl-next {
    position: absolute;
    top: -43px;
    transform: translateY(-50%);
    width: 35px;
    height: 35px;
    border: none;
    border-radius: 50%;
    background-color: transparent;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s ease;
}
.interactive-teaching-menu .owl-nav .owl-prev {
    left: -40px;
}
.interactive-teaching-menu .owl-nav .owl-next {
    right: -40px;
}
.interactive-teaching-menu .owl-nav .owl-prev::before,
.interactive-teaching-menu .owl-nav .owl-next::before {
    content: "";
    display: block;
    position: absolute;
    top: 12px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #533520;
    border-right: 2px solid #533520;
    transition: border-color 0.2s ease;
}
.interactive-teaching-menu .owl-nav .owl-prev::before {
    left: 15px;
    transform: rotate(-135deg);
}
.interactive-teaching-menu .owl-nav .owl-next::before {
    left: 10px;
    transform: rotate(45deg);
}
.interactive-teaching-menu .owl-nav .owl-prev:hover,
.interactive-teaching-menu .owl-nav .owl-next:hover {
    background-color: #533520;
}
.interactive-teaching-menu .owl-nav .owl-prev:hover::before,
.interactive-teaching-menu .owl-nav .owl-next:hover::before {
    border-color: #ffffff;
}
.interactive-teaching-menu .owl-item .item {
    background-color: #f5f5f5;
    color: #6f6f6f;
    transition: background-color 0.3s ease, color 0.3s ease;
}
.interactive-teaching-menu .owl-item .item:hover {
    background-color: #e8e4e0;
}
.interactive-teaching-menu .owl-item .item.selected {
    background-color: #dcd6d2;
    color: #533520;
}

/* reactable */
.reactable .answer-area .hint {
    color: #CCC;
}
.reactable .answer-area:has(.label) .hint {
    display: none;
}
.reactable .answer-area-outer button.reset,
.reactable .answer-area-outer button.done {
    display: none;
}
.reactable .answer-area-outer:has(.answer-area .label) button.reset,
.reactable .answer-area-outer:has(.answer-area .label) button.done {
    display: block;
}
.reactable .question .answer-area-outer {
    background-color: #FFFBF8;
    border-color: #DCA05E;
    border-width: 2px;
    border-style: dashed;
}
.reactable .question .answer-area-outer:has(.label) {
    border-style: solid;
}
.reactable .question .answer-area-outer:has(.bg-success) {
    background-color: #F3FFF0;
    border-color: #2F9A09;
}
.reactable .question .answer-area-outer:has(.bg-danger) {
    background-color: #FFF0F0;
    border-color: #F04F4F;
}
.reactable .question .answer-area-outer .fa-check,
.reactable .question .answer-area-outer .fa-xmark,
.reactable .question .answer-area-outer:has(.bg-success):has(.bg-danger) .fa-check {
    display: none;
}
.reactable .question .answer-area-outer:has(.bg-success) .fa-check,
.reactable .question .answer-area-outer:has(.bg-danger) .fa-xmark {
    display: block;
}
.reactable .label {
    background-color: #FFFFFF;
    border-style: solid;
    border-color: #C9C9C9;
    border-width: 1px 4px 4px 1px;
}

/* carousel */
.carousel .carousel-inner .carousel-item .carousel-caption {
    right: 0.5rem;
    bottom: 0;
}
.carousel .carousel-control-prev-icon,
.carousel .carousel-control-next-icon {
    background-image: none;
    width: 36px;
    height: 36px;
    background-color: #ccc;
    border-radius: 50%;
    position: relative;
}
.carousel .carousel-control-prev-icon::before,
.carousel .carousel-control-prev-icon::after,
.carousel .carousel-control-next-icon::before,
.carousel .carousel-control-next-icon::after {
    content: '';
    position: absolute;
    width: 12px;
    height: 2px;
    background-color: white;
    top: 50%;
    left: 50%;
    transform-origin: left center;
}
.carousel .carousel-control-prev-icon::before {
    transform: translate(-40%, -40%) rotate(45deg);
}
.carousel .carousel-control-prev-icon::after {
    transform: translate(-40%, -40%) rotate(-45deg);
}
.carousel .carousel-control-next-icon::before {
    transform: translate(40%, 40%) rotate(135deg);
}
.carousel .carousel-control-next-icon::after {
    transform: translate(40%, 40%) rotate(-135deg);
}

/* audio player */
[data-sound-src][onclick="playSound(this)"] .icon-play,
[data-sound-src][onclick="playSound(this)"].is-playing .icon-pause,
.btn-play-sentence[data-audio-list] .icon-play,
.btn-play-sentence[data-audio-list].is-playing .icon-pause {
    display: block;
}
[data-sound-src][onclick="playSound(this)"] .icon-pause,
[data-sound-src][onclick="playSound(this)"].is-playing .icon-play,
.btn-play-sentence[data-audio-list] .icon-pause,
.btn-play-sentence[data-audio-list].is-playing .icon-play {
    display: none;
}

/* recorder */
.recorder[data-recorder-no]:has(.btn-start-play:not(.d-none)) .img-start-record,
.recorder[data-recorder-no]:has(.btn-start-play.d-none) .img-re-record {
    display: none;
}

.page-loading-screen {
    z-index: 1500;
    position: fixed;
    background-color: rgba(0, 0, 0, .75);
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

#btn-continue-without-mic {
    border: 4px solid #c1272d !important;
}

.itm .background-image {
    width: 800px;
    height: auto;
}

/* 注音樣式 */
.itm .chinese-word .chinese {
    font-size: 1.6rem;
}
.itm .chinese-word .pinyin .char {
    font-size: .6rem;
    height: .5rem;
}
.itm .chinese-word .pinyin .char-symbol {
    font-size: .7rem;
    top: 40%;
    left: .5rem;
}
.itm .chinese-word .pinyin .char-symbol-center {
    font-size: .9rem;
    height: .5rem;
    top: 5%;
    left: -25%;
}

/* 顯示模式：投影片／一頁式 */
.itm .mode-controller {
    background-color: #52331E;
}
.itm .mode-controller img {
    background-color: transparent;
    width: 40px;
    height: 40px;
}
.itm .mode-controller img.active {
    background-color: #DCA05E;
}

/* 互動式模組： 1 課文 */
.itm[data-module-type="1"] .module-body {
    background-color: #ffffff;
    padding: 16px 8px;
    margin: 8px;
    border: 1px solid #ffeedb;
    border-radius: 24px;
    box-shadow: 0 6px 16px rgba(80, 55, 32, 0.05);
}
.itm[data-module-type="1"] .btn-play-all {
    color: #8a4b00;
    border: 1px solid #d9b883;
    background-color: #fff7e8;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    box-shadow: 0 6px 16px rgba(80, 55, 32, 0.1);
}
.itm[data-module-type="1"] .btn-play-all:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 16px rgba(80, 55, 32, 0.2);
}
.itm[data-module-type="1"] .btn-play-all .icon-play,
.itm[data-module-type="1"] .btn-play-all .icon-pause {
    width: 40px;
}
.itm[data-module-type="1"] .btn-play-all:not(.is-playing-all) .btn-pause {
    display: none;
}
.itm[data-module-type="1"] .btn-play-all.is-playing-all .btn-play {
    display: none;
}
.itm[data-module-type="1"] .lv1-item {
    border: 1px solid transparent;
    transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}
.itm[data-module-type="1"] .lv1-item:has(.fa-circle-play.d-none) {
    border-color: #e5b567;
    background-color: #fffaf0;
    box-shadow: 0 6px 16px rgba(80, 55, 32, 0.08);
}

/* 互動式模組： 3 問答題（無作答區） */
.itm[data-module-type="3"] .lv1-item .option:has(.option-audio) .option-image {
    margin-bottom: -16px;
}

/* 互動式模組： 4 問答題 (有作答區) */
.itm[data-module-type="4"] .lv1-item .toggle-hint-outer {
    margin-top: -60px;
}
.itm[data-module-type="4"]:has(.question-no.d-none) .lv1-item .toggle-hint-outer {
    margin-top: 8px;
}
.itm[data-module-type="4"] .lv1-item .hint .hint-text {
    white-space: pre-line;
}
.itm[data-module-type="4"] .lv1-item .warning-text {
    color: #ff3993;
}
.itm[data-module-type="4"] .lv1-item .option {
    min-height: 100px;
}
.itm[data-module-type="4"] .lv1-item .option.selected {
    background: #fff4e6;
}
.itm[data-module-type="4"] .lv1-item .option.correct {
    background: #f8ffef;
}
.itm[data-module-type="4"] .lv1-item .option.wrong {
    background: #ffe9e9;
}
.itm[data-module-type="4"] .lv1-item .option .icon-check-box {
    min-width: 32px;
    min-height: 32px;
    background: #d9d9d9;
}
.itm[data-module-type="4"] .lv1-item .option.selected .icon-check-box {
    background: #52331e;
}
.itm[data-module-type="4"] .lv1-item .option.correct .icon-check-box {
    background: #2f9a09;
}
.itm[data-module-type="4"] .lv1-item .option.wrong .icon-check-box {
    background: #ff725a;
}
.itm[data-module-type="4"] .lv1-item .option .icon-check-box .fa-check,
.itm[data-module-type="4"] .lv1-item .option .icon-check-box .fa-xmark {
    display: none;
}
.itm[data-module-type="4"] .lv1-item .option.selected:not(.wrong) .icon-check-box .fa-check,
.itm[data-module-type="4"] .lv1-item .option.correct .icon-check-box .fa-check {
    display: block;
}
.itm[data-module-type="4"] .lv1-item .option.wrong .icon-check-box .fa-xmark {
    display: block;
}
.itm[data-module-type="4"] .lv1-item .result-message .result-message-correct {
    color: #2f9a09;
    background: #dcffac;
}
.itm[data-module-type="4"] .lv1-item .result-message .result-message-wrong {
    color: #ff3d1b;
    background: #ffacac;
}

/* 互動式模組： 1 課文 */
/* 互動式模組：21 指定閱讀 */
.itm[data-module-type="1"] .text,
.itm[data-module-type="21"] .text {
    user-select: text !important;
}
.itm[data-module-type="1"] .word-search-trigger,
.itm[data-module-type="21"] .word-search-trigger {
    color: #6ea1c1;
    cursor: pointer;
}

/* 互動式模組：7 句型（順序填充） */
.itm[data-module-type="7"] .reactable .q-img {
    max-height: 50vh;
    max-width: 100%;
}
.itm[data-module-type="7"] .reactable .question-area,
.itm[data-module-type="7"] .reactable .labels-info {
    color: #593B27;
}
.itm[data-module-type="7"] .reactable .question {
    min-height: 100px;
}
.itm[data-module-type="7"] .reactable .article-mode {
    max-height: 60vh;
    overflow-y: auto;
}
.itm[data-module-type="7"] .reactable .article-mode .question {
    min-height: unset;
}
.itm[data-module-type="7"] .reactable .result-text .text-success,
.itm[data-module-type="7"] .reactable .result-text .text-danger,
.itm[data-module-type="7"] .reactable:has(.bg-success):has(.bg-danger) .result-text .text-success {
    display: none;
}
.itm[data-module-type="7"] .reactable:has(.bg-success) .result-text .text-success,
.itm[data-module-type="7"] .reactable:has(.bg-danger) .result-text .text-danger {
    display: block;
}

/* 互動式模組： 2 生詞 */
[data-game-theme="teaching_material_package"] .itm[data-module-type="2"] .item .hakka-content {
    background-color: #f3ca9c;
}
.itm[data-module-type="2"] .item .hakka-content .hakka-text,
.itm[data-module-type="2"] .item .hakka-content .hakka-pinyin-space,
.itm[data-module-type="2"] .item .hakka-content .bopomo-space {
    letter-spacing: 2rem;
}
.itm[data-module-type="2"] .item .hakka-content .hakka-text {
    padding-left: 2rem;
}
.itm[data-module-type="2"] .item .hakka-content .hakka-pinyin-symbol,
.itm[data-module-type="2"] .item .hakka-content .bopomo-symbol {
    margin-left: -.4rem;
    margin-right: -.5rem;
}
.itm[data-module-type="2"] .item .hakka-content .hakka-pinyin {
    color: #F15D27;
}
.itm[data-module-type="2"] .item .hakka-content .bopomo {
    color: #ff3993;
}
.itm[data-module-type="2"] .item .analysis .analysis-content {
    background-color: #ffe9f4;
}

/* 互動式模組：9 組織思考圖 */
/* 互動式模組：19 獨立配對圖 */
.itm[data-module-type="9"] .reactable .question-text,
.itm[data-module-type="19"] .reactable .question-text {
    color: #DCA05E;
}
.itm[data-module-type="9"] .reactable .warning-text,
.itm[data-module-type="19"] .reactable .warning-text {
    margin-top: -5px;
}
.itm[data-module-type="9"] .reactable .card,
.itm[data-module-type="19"] .reactable .card {
    border: 1px solid #DCA05E;
}

/* 互動式模組：11 賓果連線遊戲 */
.itm[data-module-type="11"] .chinese {
    color: #000000 !important;
}
.itm[data-module-type="11"] .labels .label .label-inner {
    background-color: #ffffff;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
.itm[data-module-type="11"] .labels .label.active .label-inner {
    background-color: #dd9b54;
}
.itm[data-module-type="11"] .labels .label.active.bingo-win {
    background-color: #ffff7e;
}
.itm[data-module-type="11"] .custom-area input {
    box-shadow: inset 0 4px 8px rgba(0, 0, 0, 0.2);
    border: 2px solid transparent;
}
.itm[data-module-type="11"] .custom-area input:focus {
    border: 2px solid #d9b883;
}

/* 互動式模組：14 句型學習 */
.itm[data-module-type="14"] .hakka {
    color: #5C4033;
}
.itm[data-module-type="14"] .sentence {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    transition: box-shadow 0.3s ease;
}
.itm[data-module-type="14"] .sentence:hover {
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175);
}
.itm[data-module-type="14"] .sentence .audio-player:hover {
    filter: brightness(0.9);
}
.itm[data-module-type="14"] .sentence .audio-player.is-playing {
    border-radius: 50%;
    box-shadow: 0 0 12px rgba(249, 115, 22, 0.6);
}

/* 互動式模組：15 曼陀羅思考法 */
.itm[data-module-type="15"] .mandara .mandara-inner .card {
    border: 1.5px solid #dcd0b8;
    transition: border-color .15s, box-shadow .15s;
}
.itm[data-module-type="15"] .mandara .mandara-inner .card:focus-within {
    border-color: #e79a2c;
    box-shadow: 0 0 0 3px rgba(231, 154, 44, .14);
}
.itm[data-module-type="15"] .mandara .mandara-inner .card .card-header {
    background: #f1e8d6;
    color: #5C4033;
    border-bottom: 1px solid #dcd0b8;
}
.itm[data-module-type="15"] .mandara .mandara-inner .card textarea {
    resize: vertical;
    outline: none;
}

/* 互動式模組：16 圖片分享 */
.itm[data-module-type="16"] .img-txt {
    color: #5C4033;
}

/* 互動式模組：22 互動遊戲（重新排列詞卡位置） */
.itm[data-module-type="22"] .phrases .phrase:first-child .fa-arrows-left-right,
.itm[data-module-type="22"] .phrases .phrase.ui-sortable-helper .fa-arrows-left-right {
    display: none;
}
.itm[data-module-type="22"] .phrases .phrase {
    top: 0 !important; /* 覆蓋 jQuery UI Sortable 注入的 top inline style */
}
.itm[data-module-type="22"] .phrases .phrase .item {
    background-color: #f3ca9c;
    border: #9C581A solid 1px;
}
.itm[data-module-type="22"] .phrases .phrase.judge-correct .item {
    background-color: #8cff96;
}
.itm[data-module-type="22"] .phrases .phrase.judge-wrong .item {
    background-color: #dbdbdb;
}
.itm[data-module-type="22"] .phrases .phrase .btn-change {
    color: #F15D27;
}
.itm[data-module-type="22"] .phrases .phrase:first-child .btn-change {
    display: none !important;
}

/* 互動式模組：23 依序選擇 */
.itm[data-module-type="23"] .border-transparent {
    border-color: rgba(0, 0, 0, 0);
}
.itm[data-module-type="23"] .border-solid {
    border-style: solid;
}
.itm[data-module-type="23"] .text-item[data-audio-src] {
  display: inline-block;
  transition: transform 0.5s ease-in-out;
}
.itm[data-module-type="23"] .text-item[data-audio-src]:hover {
  transform: scale(1.15);
}

/* 互動式模組：24 自由填空 */
.itm[data-module-type="24"] .blank {
    opacity: 0.9;
}
.itm[data-module-type="24"] .blank:hover,
.itm[data-module-type="24"] .blank:focus {
    opacity: 1;
}

/* 互動式模組：25 情境對話 */
.itm[data-module-type="25"] .chat-popup-list .chat-popup {
    position: absolute;
}

/* 互動式模組：26 對話練習 */
.itm[data-module-type="26"] .q-img {
    max-height: 50vh;
    max-width: 100%;
}
.itm[data-module-type="26"] .hakka-sentence .pinyin {
    color: #F15D27;
}
.itm[data-module-type="26"] .hakka-sentence .pinyin:has(.char) {
    margin-left: .2rem;
}
.itm[data-module-type="26"] .hakka-sentence .pinyin .char {
    position: absolute;
    margin-left: -.3rem;
}
.itm[data-module-type="26"] .hakka-sentence .pinyin .char.char-upper {
    margin-left: 0rem;
    top: -4px;
}
.itm[data-module-type="26"] .lv2-item > .question {
    background-color: #f3ca9c;
}
.itm[data-module-type="26"] .question .dialog-angle {
    width: 40px;
    height: 20px;
    background-color: #f3ca9c;
    clip-path: polygon(30% 0, 100% 0%, 0 100%);
    left: 4%;
    bottom: -20px;
}
.itm[data-module-type="26"] .hint-text {
    color: #ff3993;
    background-color: #ffe9f4;
    display: inline-flex;
}
.itm[data-module-type="26"] .lv2-item.recorder .recorder-space:has(.btn-start-play.d-none) {
    min-width: 250px;
    min-height: 60px;
    background-color: #FCDFBE;
}
.itm[data-module-type="26"] .lv2-item.recorder .underline {
    border-top: #9C581A dashed 2px;
}
.itm[data-module-type="26"] .lv2-item:has(.btn-start-play.d-none) .btn-continue {
    display: none;
}
.itm[data-module-type="26"] .lv2-item .sentence-image {
    max-height: 100px;
}
.itm[data-module-type="26"] .lv2-item:has(.btn-play-sentence:not(.d-none)) .btn-play-all {
    display: inline;
}
.itm[data-module-type="26"] .lv2-item .btn-play-all,
.itm[data-module-type="26"] .lv2-item:has(.btn-start-play:not(.d-none)) .img-start-record,
.itm[data-module-type="26"] .lv2-item:has(.btn-start-play.d-none) .img-re-record {
    display: none;
}
.itm[data-module-type="26"] .btn-toggle-chinese:not(.active) .inactive,
.itm[data-module-type="26"] .btn-toggle-pinyin:not(.active) .inactive,
.itm[data-module-type="26"] .btn-toggle-chinese.active .active,
.itm[data-module-type="26"] .btn-toggle-pinyin.active .active {
    display: none;
}

/* 互動式模組：27 圈圈看（文字） */
.itm[data-module-type="27"] .question img {
    max-height: 50vh;
    max-width: 100%;
}
.itm[data-module-type="27"] .options-in-question-text .option {
    transition: transform 0.3s ease;
}
.itm[data-module-type="27"] .options-in-question-text .option .fa-circle.text-primary,
.itm[data-module-type="27"] .options-in-question-text .option .fa-circle.text-danger,
.itm[data-module-type="27"] .options-in-question-text .option .fa-xmark.text-danger {
    display: none;
}
.itm[data-module-type="27"] .options-in-question-text .option.selected .fa-circle.text-primary {
    display: inline;
}
.itm[data-module-type="27"] .options-in-question-text .option.judge-correct .fa-circle.text-danger {
    display: inline;
}
.itm[data-module-type="27"] .options-in-question-text .option.judge-wrong .fa-xmark.text-danger {
    display: inline;
}
.itm[data-module-type="27"] .options-in-question-text .option:hover {
    transform: scale(1.15);
}
.itm[data-module-type="27"] .options-in-question-text .option img {
    max-height: 3rem;
    max-width: 6rem;
    object-fit: contain;
}
.itm[data-module-type="27"] .options .option {
    border: solid 3px #C9C9C9;
    background-color: #FFFBF8;
    cursor: pointer;
}
.itm[data-module-type="27"] .options .option.selected,
.itm[data-module-type="27"] .options .option:hover {
    border-color:  #DCA05E;
}
.itm[data-module-type="27"] .options .option:hover {
    cursor: url('../img/teaching_material_package/front-sight.png') 64 64, pointer;
}
.itm[data-module-type="27"] .options .option.judge-correct {
    border-color: #2F9A09;
    background-color: #F3FFF0;
}
.itm[data-module-type="27"] .options .option.judge-correct img {
    border-color: #2F9A09;
}
.itm[data-module-type="27"] .options .option.judge-wrong {
    border-color: #F04F4F;
    background-color: #FFF0F0;
}
.itm[data-module-type="27"] .options .option img {
    border: dashed 3px transparent;
    aspect-ratio: 1 / 1;
    object-fit: contain;
}
.itm[data-module-type="27"] .options .option:hover img {
    border-color:#DCA05E;
}
.itm[data-module-type="27"] .options .option.selected img {
    border-color:#DCA05E;
}
.itm[data-module-type="27"] .options .option.selected img,
.itm[data-module-type="27"] .options .option.judge-correct img,
.itm[data-module-type="27"] .options .option.judge-wrong img {
    border-style:solid;
}
.itm[data-module-type="27"] .options .option.judge-wrong img {
    border-color: #F04F4F;
}
.itm[data-module-type="27"] .options .option .fa-check,
.itm[data-module-type="27"] .options .option .fa-xmark {
    display: none;
}
.itm[data-module-type="27"] .options .option.judge-correct .fa-check {
    display: inline;
}
.itm[data-module-type="27"] .options .option.judge-wrong .fa-xmark {
    display: inline;
}
.itm[data-module-type="27"] .question-text,
.itm[data-module-type="27"] .option-text {
    color: #52331E;
}
.itm[data-module-type="27"] .question .result-text .text-success,
.itm[data-module-type="27"] .question .result-text .text-danger,
.itm[data-module-type="27"] .question:has(.judge-correct):has(.judge-wrong) .result-text .text-success {
    display: none;
}
.itm[data-module-type="27"] .question:has(.judge-correct) .result-text .text-success,
.itm[data-module-type="27"] .question:has(.judge-wrong) .result-text .text-danger {
    display: block;
}

/* 互動式模組：28 圈圈看（圖片） */
.itm[data-module-type="28"] .option {
    aspect-ratio: 1 / 1;
}
.itm[data-module-type="28"] .option .fa-regular.fa-circle {
    font-size: 5rem;
}
.itm[data-module-type="28"] .option .fa-solid.fa-xmark {
    font-size: 7rem;
}

/* 互動式模組：29 聽音選擇 */
.itm[data-module-type="29"] .question .is-horizontal .option {
    aspect-ratio: 1 / 1;
}
.itm[data-module-type="29"] .question .option {
    background-color: #FFFFFF;
    border-style: solid;
    border-color: #C9C9C9;
    border-width: 3px 5px 5px 3px;
}
.itm[data-module-type="29"] .question .options .option.selected {
    background-color: #FFFBF8;
    border-color: #DCA05E;
}
.itm[data-module-type="29"] .question .options .option.judge-correct {
    background-color: #F3FFF0;
    border-color: #2F9A09;
}
.itm[data-module-type="29"] .question .options .option.judge-wrong {
    background-color: #FFF0F0;
    border-color: #F04F4F;
}
.itm[data-module-type="29"] .question .options .option .fa-check,
.itm[data-module-type="29"] .question .options .option .fa-xmark {
    display: none;
}
.itm[data-module-type="29"] .question .options .option.judge-correct .fa-check {
    display: inline;
}
.itm[data-module-type="29"] .question .options .option.judge-wrong .fa-xmark {
    display: inline;
}
.itm[data-module-type="29"] .question .reset-game {
    background-color: #F3F3F3;
    color: #52331E;
}
.itm[data-module-type="29"] .question .btn-submit {
    background-color: #52331E;
    color: #DDCDC3;
}
.itm[data-module-type="29"] .question .finish-area .text {
    font-size: 4rem !important;
}
.itm[data-module-type="29"] .question .finish-area .pinyin {
    font-size: 1.7rem !important;
}
.itm[data-module-type="29"] .question .option-img {
    max-width: 100%;
    max-height: 300px;
}

/* 互動式模組：30 看題選句 */
.itm[data-module-type="30"] .option.border-transparent {
    border-color: rgba(0, 0, 0, 0) !important;
}
.itm[data-module-type="30"] .option {
    transition: transform 0.3s ease;
}
.itm[data-module-type="30"] .option:hover {
    transform: scale(1.1);
}

/* 互動式模組：31 音標練習 */
.itm[data-module-type="31"] .sound-text {
    color: #f2ab00;
}
.itm[data-module-type="31"] .sound-main-btn {
    border-radius: 50%;
    transition: .2s;
}
.itm[data-module-type="31"] .sound-main-btn:hover {
    transform: scale(1.05);
}
.itm[data-module-type="31"] .sound-main-btn:active {
    transform: scale(.95);
}
.itm[data-module-type="31"] .learn-box {
    border: 1px solid rgba(92, 64, 51, .2);
    background: #f7f3f1;
}
.itm[data-module-type="31"] .learn-title {
    color: #5c4033;
}
.itm[data-module-type="31"] .learn-sub {
    color: #7b6a62;
}
.itm[data-module-type="31"] .toggle-btn {
    flex-shrink: 0;
    border: 1px solid #d6c5be;
    background-color: #fff;
}
.itm[data-module-type="31"] .toggle-text {
    color: #5c4033;
}
.itm[data-module-type="31"] .toggle-btn.open .chev {
    transform: rotate(225deg);
    margin-top: 3px;
}
.itm[data-module-type="31"] .chev {
    width: 8px;
    height: 8px;
    border-right: 2px solid #5c4033;
    border-bottom: 2px solid #5c4033;
    transform: rotate(45deg);
    transition: .2s;
    margin-top: -3px;
}
.itm[data-module-type="31"] .reveal-btn {
    width: 100%;
    height: 56px;
    border: 1px dashed #d6c5be;
    background: rgba(255, 255, 255, .8);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #5c4033;
    font-size: 15px;
    font-weight: 800;
}
.itm[data-module-type="31"] .word-grid {
    display: none;
}
.itm[data-module-type="31"] .word-btn {
    height: 56px;
    border: 1px solid #d6c5be;
    background: #fff;
    color: #5c4033;
    transition: .18s;
}
.itm[data-module-type="31"] .word-btn:hover {
    background: #faf7f5;
}
.itm[data-module-type="31"] .word-btn.active {
    background: #f3e7e2;
    border-color: #e5c89e;
    color: #8f4b0d;
    box-shadow: 0 2px 6px rgba(90, 64, 51, .08);
}
.itm[data-module-type="31"] .practice-word {
    margin-top: 8px;
    font-size: 56px;
    line-height: 1;
    font-weight: 900;
    color: #f2ab00;
}
.itm[data-module-type="31"] .word-audio {
    transition: .18s;
}
.itm[data-module-type="31"] .word-audio:hover {
    transform: scale(1.05);
}
.itm[data-module-type="31"] .phonetic {
    letter-spacing: .04em;
}

#modules[data-game-theme] .media-manager-wrapper button .icon-area {
    width: 58px;
    height: 58px;
}

#modules[data-game-theme="teaching_material_package"] .module-content {
    background-color: #ffffff;
    background-image: url('../img/teaching_material_package/lattice.svg');
    background-repeat: repeat-y;
    border-radius: 0 0 30px 30px;
    position: relative;
    top: -15px;
}

#modules[data-game-theme="teaching_material_package"] .module-switch-bar {
    background-color: #ddcdc3;
    color: #52331e;
    width: 100%;
    height: 100px;
    border-radius: 20px;
    z-index: 2;
}
