:root[data-koa-theme="dark"]{--koa-raised-edge:#8e739e}
/* Application dark theme: presentation only; answer colours remain unchanged. */

:root[data-koa-theme="dark"] body.koa-v2 {--journey-bg:#211827!important;--bg:#211827;--paper:#34283f;--ink:#fff4ec;--text:#fff4ec;--muted:#cebdd9;--line:#756184;--koa-ink:#fff4ec;--koa-purple:#ccb2ed;--retro-ink:#fff4ec;--retro-paper:#34283f;background:#211827!important;color:#fff4ec!important;color-scheme:dark}

:root[data-koa-theme="dark"] body.koa-v2 .app,
:root[data-koa-theme="dark"] body.koa-v2 .screen,
:root[data-koa-theme="dark"] body.koa-v2 .app>header.top,
:root[data-koa-theme="dark"] body.koa-v2 nav.koa-mobile-bottom-nav{background:#211827!important;color:#fff4ec!important;border-color:#51405e!important}

:root[data-koa-theme="dark"] body.koa-v2 .app>header.top,
:root[data-koa-theme="dark"] body.koa-v2 nav.koa-mobile-bottom-nav{box-shadow:0 3px 0 #17101f!important}

:root[data-koa-theme="dark"] body.koa-v2 :is(h1,h2,h3,h4,.question,.answer,.roman-sub,.shop-panel h2,.shop-panel h3,.collection-heading,.sb-prompt,.dialogue-instruction,.koa-game-instruction,.match-instruction,.koa-profile-pill,.koa-account-level,.top b,.top small){color:#fff4ec!important;text-shadow:none!important}

:root[data-koa-theme="dark"] body.koa-v2 :is(.muted,.thai-main,.tag,.studyhead,.studyhint,.sb-instruction,.vocab-intro p,.help-page p,.shop-hero p,.collection-heading p,.progress-hero p,.koa-mobile-hub p,.koa-mobile-hub small,.koa-game-head,.desktop-card-shortcuts){color:#cebdd9!important}

:root[data-koa-theme="dark"] body.koa-v2 :is(.panel,.complete,.hard-card,.koa-learn-card,.koa-feature-card,.quick-lesson-card,.progress-hero,.progress-chapters article,.shop-item,.koa-skin-card,.help-hero,.help-tip,.help-grid article,.vocab-group,.vocab-card,.koa-mobile-hub-grid button,.koa-mobile-profile-list button){background:#34283f!important;color:#fff4ec!important;border-color:#927da1!important;box-shadow:0 4px 0 var(--koa-raised-edge, #8e739e)!important}

:root[data-koa-theme="dark"] body.koa-v2 :is(.btn,.sb-validate,#koaRewardNext,#koaExerciseContinue,#koaStreakContinue,.arena-main-btn){border-color:#927da1!important;box-shadow:0 4px 0 var(--koa-raised-edge, #8e739e)!important}

:root[data-koa-theme="dark"] body.koa-v2 :is(.btn.primary,.btn.blue,.btn.yellow,.sb-validate,#koaRewardNext,#koaExerciseContinue,#koaStreakContinue,.arena-main-btn){background:#c8afea!important;color:#302344!important}

:root[data-koa-theme="dark"] body.koa-v2 :is(.btn.ghost,.home.btn,.compact-invert){background:#44334f!important;color:#fff4ec!important}

:root[data-koa-theme="dark"] body.koa-v2 :is(input,select,textarea){background:#2b2033!important;color:#fff4ec!important;border-color:#927da1!important;accent-color:#c8afea}

:root[data-koa-theme="dark"] body.koa-v2 :is(input,textarea)::placeholder{color:#c6b5cf!important;opacity:1}

:root[data-koa-theme="dark"] body.koa-v2 :is(button,a,input,select,textarea):focus-visible{outline-color:#e6b8ff!important}

:root[data-koa-theme="dark"] body.koa-v2 :is(#study,#match,#quiz,#sentenceBuilder,#dialogueFill,#lesson).active .koa-game-head .koa-game-close,
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay #arenaClose{color:#dcc8eb!important;text-shadow:1px 1px 0 #17101f!important}

:root[data-koa-theme="dark"] body.koa-v2 :is(#study,#match,#quiz,#sentenceBuilder,#dialogueFill,#lesson).active .koa-game-head .koa-game-progress,
:root[data-koa-theme="dark"] body.koa-v2 .sb-progress-track,
:root[data-koa-theme="dark"] body.koa-v2 .studybar,
:root[data-koa-theme="dark"] body.koa-v2 .arena-progress{background:#382b43!important;border-color:#927da1!important;box-shadow:0 2px 0 var(--koa-raised-edge, #8e739e)!important}

:root[data-koa-theme="dark"] body.koa-v2 #study.active #flashcard.card,
:root[data-koa-theme="dark"] body.koa-v2 #study.active #flashcardUnder.flashcard-under,
:root[data-koa-theme="dark"] body.koa-v2 #study.active #koaAudioPrep{background:#3d2e49!important;color:#fff4ec!important;border-color:#927da1!important;box-shadow:0 6px 0 var(--koa-raised-edge, #8e739e)!important}

:root[data-koa-theme="dark"] body.koa-v2 #study.active #flashcard.card.swipe-feedback{border-color:var(--retro-swipe-color)!important;box-shadow:0 6px 0 var(--retro-swipe-color)!important}

:root[data-koa-theme="dark"] body.koa-v2 #study.active :is(.question,.answer,.roman-sub){color:#fff4ec!important}

:root[data-koa-theme="dark"] body.koa-v2 #study.active :is(.thai-main,.hint,.small,.studyhint),
:root[data-koa-theme="dark"] body.koa-v2 #koaAudioPrep :is(p,small){color:#d7c7e0!important}

:root[data-koa-theme="dark"] body.koa-v2 #study.active :is(#audio,#star){background:transparent!important;border:0!important;box-shadow:none!important;color:#dfcfea!important}

:root[data-koa-theme="dark"] body.koa-v2 #study.active #star.active,
:root[data-koa-theme="dark"] body.koa-v2 #study.active #star.on{color:#f4bf24!important}

:root[data-koa-theme="dark"] body.koa-v2 #study.active #audio svg{stroke:currentColor!important}

:root[data-koa-theme="dark"] body.koa-v2 #study.active #star svg{fill:currentColor!important;stroke:none!important}

:root[data-koa-theme="dark"] body.koa-v2 #quiz.active #quizPrompt,
:root[data-koa-theme="dark"] body.koa-v2 #sentenceBuilder.active .sb-prompt-card,
:root[data-koa-theme="dark"] body.koa-v2 #dialogueFill.active .dialogue-turn .dialogue-roman:not(.good):not(.bad),
:root[data-koa-theme="dark"] body.koa-v2 #dialogueFill.active .dialogue-roman:not(.good):not(.bad){background:#443351!important;color:#fff4ec!important;border-color:#9c80b4!important;box-shadow:0 4px 0 var(--koa-raised-edge, #8e739e)!important}

:root[data-koa-theme="dark"] body.koa-v2 #quiz.active #choices .choice:not(.good):not(.bad),
:root[data-koa-theme="dark"] body.koa-v2 #match.active #matchGrid .match-tile:not(.wrong):not(.matched):not(.selected),
:root[data-koa-theme="dark"] body.koa-v2 #sentenceBuilder.active .sb-token:not(.sb-correct-token):not(.sb-incorrect-token),
:root[data-koa-theme="dark"] body.koa-v2 #dialogueFill.active .dialogue-choice:not(.good):not(.bad):not(.correct):not(.wrong):not(.selected),
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay .arena-choice:not(.good):not(.bad){background:#3d2e49!important;color:#fff4ec!important;border-color:#927da1!important;box-shadow:0 4px 0 var(--koa-raised-edge, #8e739e)!important}

:root[data-koa-theme="dark"] body.koa-v2 #match.active .match-card,
:root[data-koa-theme="dark"] body.koa-v2 #sentenceBuilder.active .sb-bank{background:transparent!important}

:root[data-koa-theme="dark"] body.koa-v2 #match.active #matchGrid .match-tile.selected,
:root[data-koa-theme="dark"] body.koa-v2 #dialogueFill.active .dialogue-choice.selected:not(.good):not(.bad){background:#64496a!important;color:#fff4ec!important;border-color:#e0a0c5!important;box-shadow:0 2px 0 #a46e91!important}

:root[data-koa-theme="dark"] body.koa-v2 #sentenceBuilder.active .sb-zone:not(.is-correction):not(.is-incorrect){background:#2b2033!important;border-color:#927da1!important;box-shadow:0 3px 0 var(--koa-raised-edge, #8e739e)!important}

:root[data-koa-theme="dark"] body.koa-v2 #sentenceBuilder.active .sb-zone.is-empty::after{color:#cbb8d6!important}

:root[data-koa-theme="dark"] body.koa-v2 #sentenceBuilder.active .sb-zone .sb-token:not(.sb-correct-token):not(.sb-incorrect-token),
:root[data-koa-theme="dark"] body.koa-v2 #dialogueFill.active .dialogue-blank{background:#594162!important;color:#fff4ec!important;border-color:#c8afea!important}

:root[data-koa-theme="dark"] body.koa-v2 #dialogueFill.active .speaker-right .dialogue-roman:not(.good):not(.bad){background:#493652!important}

:root[data-koa-theme="dark"] body.koa-v2 #dialogueFill.active .dialogue-actions .btn:disabled,
:root[data-koa-theme="dark"] body.koa-v2 #sentenceBuilder.active .sb-validate:disabled{background:#51425d!important;color:#d7c7e0!important}

:root[data-koa-theme="dark"] body.koa-v2 #quiz.active #choices .choice.good,
:root[data-koa-theme="dark"] body.koa-v2 #match.active #matchGrid .match-tile.matched,
:root[data-koa-theme="dark"] body.koa-v2 #sentenceBuilder.active .sb-correct-token,
:root[data-koa-theme="dark"] body.koa-v2 #dialogueFill.active .dialogue-choice.good,
:root[data-koa-theme="dark"] body.koa-v2 #dialogueFill.active .dialogue-choice.correct,
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay .arena-choice.good{color:#245b3c!important}

:root[data-koa-theme="dark"] body.koa-v2 #quiz.active #choices .choice.bad,
:root[data-koa-theme="dark"] body.koa-v2 #match.active #matchGrid .match-tile.wrong,
:root[data-koa-theme="dark"] body.koa-v2 #sentenceBuilder.active .sb-incorrect-token,
:root[data-koa-theme="dark"] body.koa-v2 #dialogueFill.active .dialogue-choice.bad,
:root[data-koa-theme="dark"] body.koa-v2 #dialogueFill.active .dialogue-choice.wrong,
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay .arena-choice.bad{color:#812c42!important}

:root[data-koa-theme="dark"] body.koa-v2 #match.active #matchGrid .match-tile.matched{opacity:.65!important}

:root[data-koa-theme="dark"] body.koa-v2 :is(.feedback,.sb-feedback,.dialogue-feedback,.arena-feedback){color:#d9c8e5!important}

:root[data-koa-theme="dark"] body.koa-v2 :is(.feedback.good,.sb-feedback.good,.dialogue-feedback.good){color:#82d6a5!important}

:root[data-koa-theme="dark"] body.koa-v2 :is(.feedback.bad,.sb-feedback.bad,.dialogue-feedback.bad,.sb-correction,.koa-login-error){color:#ffa0b5!important}

:root[data-koa-theme="dark"] body.koa-v2 .feedback-rule,
:root[data-koa-theme="dark"] body.koa-v2 .mistake,
:root[data-koa-theme="dark"] body.koa-v2 .mistakes>div{background:#453344!important;color:#ffe3ea!important;border-color:#bc536e!important}

:root[data-koa-theme="dark"] body.koa-v2 .shop-panel,
:root[data-koa-theme="dark"] body.koa-v2 .shop-hero,
:root[data-koa-theme="dark"] body.koa-v2 .progress-summary article,
:root[data-koa-theme="dark"] body.koa-v2 .help-grid article,
:root[data-koa-theme="dark"] body.koa-v2 .vocab-grid article,
:root[data-koa-theme="dark"] body.koa-v2 .hard-grid article,
:root[data-koa-theme="dark"] body.koa-v2 .quick-structure,
:root[data-koa-theme="dark"] body.koa-v2 .lessonbox,
:root[data-koa-theme="dark"] body.koa-v2 .lesson-card,
:root[data-koa-theme="dark"] body.koa-v2 .lesson-section{background:#34283f!important;color:#fff4ec!important;border-color:#927da1!important}

:root[data-koa-theme="dark"] body.koa-v2 #shop .shop-item,
:root[data-koa-theme="dark"] body.koa-v2 #shop .koa-skin-card{background:#3d2e49!important;border-color:#927da1!important;box-shadow:0 4px 0 var(--koa-raised-edge, #8e739e)!important}

:root[data-koa-theme="dark"] body.koa-v2 #shop .shop-item.equipped,
:root[data-koa-theme="dark"] body.koa-v2 #shop .koa-skin-card.equipped{background:#51405e!important;border-color:#d99fbe!important}

:root[data-koa-theme="dark"] body.koa-v2 #shop :is(h2,h3,.shop-group-title,.shop-item p,.shop-item small,.shop-balance,.shop-balance span){color:#fff4ec!important}

:root[data-koa-theme="dark"] body.koa-v2 #shop .shop-balance{background:#34483e!important;border-color:#79ae8c!important;box-shadow:0 3px 0 var(--koa-raised-edge, #8e739e)!important}

:root[data-koa-theme="dark"] body.koa-v2 #shop button:not(.btn),
:root[data-koa-theme="dark"] body.koa-v2 .koa-mobile-hub :is(b,h2){color:#fff4ec!important}

:root[data-koa-theme="dark"] body.koa-v2 :is(.vocab-intro,.help-page,.progress-page,.quick-lesson-card) :is(p,small),
:root[data-koa-theme="dark"] body.koa-v2 .progress-summary span{color:#cebdd9!important}

:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay .arena-shell,
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay .arena-panel,
:root[data-koa-theme="dark"] body.koa-v2 .koa-leaderboard-panel,
:root[data-koa-theme="dark"] body.koa-v2 .koa-presence-panel,
:root[data-koa-theme="dark"] body.koa-v2 #koaActivityReward,
:root[data-koa-theme="dark"] body.koa-v2 .koa-password-card{background:#34283f!important;color:#fff4ec!important;border-color:#927da1!important}

:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay :is(.arena-fighter,.arena-matchup span,.arena-scoreboard div,.arena-head strong,.arena-rewards),
:root[data-koa-theme="dark"] body.koa-v2 .koa-leaderboard-list>div,
:root[data-koa-theme="dark"] body.koa-v2 .koa-presence-list>div{background:#44334f!important;border-color:#927da1!important;color:#fff4ec!important}

:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay :is(h2,b,#arenaPrompt,.arena-head strong),
:root[data-koa-theme="dark"] body.koa-v2 .koa-leaderboard-panel :is(header b,.koa-leaderboard-list span,.koa-leaderboard-list b){color:#fff4ec!important}

:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay :is(p,small,.arena-eyebrow,.arena-format,.arena-format b,#arenaCounter,#arenaDirection,#arenaPoolNote,.arena-opponent-name,#arenaResultLabel){color:#d7c7e0!important}

:root[data-koa-theme="dark"] body.koa-v2 .koa-leaderboard-panel header,
:root[data-koa-theme="dark"] body.koa-v2 .koa-presence-panel header{background:#34283f!important;border-color:#927da1!important}

:root[data-koa-theme="dark"] body.koa-v2 .koa-leaderboard-list>div.me{background:#624663!important;box-shadow:inset 0 0 0 1px #d99fbe!important}

:root[data-koa-theme="dark"] body.koa-v2 .koa-leaderboard-panel header button,
:root[data-koa-theme="dark"] body.koa-v2 .koa-presence-panel header button{background:#534060!important;color:#fff4ec!important}

:root[data-koa-theme="dark"] body.koa-v2 #koaStreakCelebration{background:#211827!important;color:#fff4ec!important}

:root[data-koa-theme="dark"] body.koa-v2 #koaStreakCelebration :is(h2,.koa-streak-new,.koa-streak-old){color:#fff4ec!important;text-shadow:0 2px 0 #17101f!important}

:root[data-koa-theme="dark"] body.koa-v2 #koaStreakCelebration p,
:root[data-koa-theme="dark"] body.koa-v2 #koaExerciseTransition p,
:root[data-koa-theme="dark"] body.koa-v2 #koaExerciseExit,
:root[data-koa-theme="dark"] body.koa-v2 #koaActivityReward p{color:#d7c7e0!important}

:root[data-koa-theme="dark"] body.koa-v2 .koa-reward-row{background:#493652!important;border-color:#927da1!important;color:#fff4ec!important;box-shadow:0 4px 0 var(--koa-raised-edge, #8e739e)!important}

:root[data-koa-theme="dark"] body.koa-v2 #koaActivityReward :is(h2,h3,b,strong){color:#fff4ec!important}

:root[data-koa-theme="dark"] body.koa-v2 .koa-login,
:root[data-koa-theme="dark"] body.koa-v2 .koa-login .koa-login-card,
:root[data-koa-theme="dark"] body.koa-v2 .koa-login .koa-login-minimal{background:#211827!important;color:#fff4ec!important;border-color:#927da1!important;box-shadow:0 5px 0 var(--koa-raised-edge, #8e739e)!important}

:root[data-koa-theme="dark"] body.koa-v2 .koa-login .koa-login-minimal{background:#34283f!important}

:root[data-koa-theme="dark"] body.koa-v2 .koa-login .koa-login-minimal::before{background:#594162!important;color:#fff4ec!important;border-color:#927da1!important}

:root[data-koa-theme="dark"] body.koa-v2 .koa-login .koa-login-minimal input:not([type="checkbox"]),
:root[data-koa-theme="dark"] body.koa-v2 .koa-password-card input{background:#2b2033!important;color:#fff4ec!important;border-color:#927da1!important}

:root[data-koa-theme="dark"] body.koa-v2 .koa-login .koa-login-minimal .koa-remember,
:root[data-koa-theme="dark"] body.koa-v2 .koa-login .koa-remember span,
:root[data-koa-theme="dark"] body.koa-v2 .koa-password-card :is(h2,label,p){color:#e4d4ed!important}

:root[data-koa-theme="dark"] body.koa-v2 .koa-login .koa-remember input[type="checkbox"]{background:#44334f!important;border-color:#c8afea!important}

:root[data-koa-theme="dark"] body.koa-v2 .koa-login .koa-remember input[type="checkbox"]:checked{background:#c8afea!important}

/* Visual checks: nested panels and lesson tables. */
:root[data-koa-theme="dark"] body.koa-v2 #shop .shop-hero,:root[data-koa-theme="dark"] body.koa-v2 #shop .collection-heading,:root[data-koa-theme="dark"] body.koa-v2 #shop .owned-items,:root[data-koa-theme="dark"] body.koa-v2 #shop .available-items,:root[data-koa-theme="dark"] body.koa-v2 #lesson .lesson-body,:root[data-koa-theme="dark"] body.koa-v2 #lesson .quick-manual-table,:root[data-koa-theme="dark"] body.koa-v2 .koa-mobile-hub .koa-mobile-hub-head{background:#34283f!important;color:#fff4ec!important;border-color:#927da1!important;box-shadow:0 4px 0 var(--koa-raised-edge, #8e739e)!important}
:root[data-koa-theme="dark"] body.koa-v2 #shop .collection-heading :is(h3,p,.tag),:root[data-koa-theme="dark"] body.koa-v2 #shop .shop-hero :is(h2,p,.tag),:root[data-koa-theme="dark"] body.koa-v2 #sentenceBuilder.active .sb-prompt{color:#fff4ec!important}
:root[data-koa-theme="dark"] body.koa-v2 #shop .koa-skin-frame-preview{background:linear-gradient(#493652 75%,#372a40 75%)!important;border-color:#927da1!important}
:root[data-koa-theme="dark"] body.koa-v2 .tag{background:#594162!important;color:#fff4ec!important}
:root[data-koa-theme="dark"] body.koa-v2 #shop .koa-equipped-button{background:#c8afea!important;color:#302344!important;border-color:#927da1!important;box-shadow:0 3px 0 var(--koa-raised-edge, #8e739e)!important}
:root[data-koa-theme="dark"] body.koa-v2 #lesson .quick-structure-head,:root[data-koa-theme="dark"] body.koa-v2 #lesson .quick-table-row.thai-label,:root[data-koa-theme="dark"] body.koa-v2 #lesson .quick-table-row.roman{background:#493652!important;color:#e8d9f0!important;border-color:#927da1!important}
:root[data-koa-theme="dark"] body.koa-v2 #lesson .quick-structure-head :is(h2,h3,b,span),:root[data-koa-theme="dark"] body.koa-v2 #lesson .quick-table-row.english{background:#34283f!important;color:#fff4ec!important;border-color:#927da1!important}
:root[data-koa-theme="dark"] body.koa-v2 #lesson .quick-table-cell{border-color:#927da1!important}
:root[data-koa-theme="dark"] body.koa-v2 #sentenceBuilder.active #sbValidate:disabled{background:#51425d!important;color:#d7c7e0!important}
:root[data-koa-theme="dark"] body.koa-v2 #study.active .studyhint,:root[data-koa-theme="dark"] body.koa-v2 #study.active .hint,:root[data-koa-theme="dark"] body.koa-v2 #study.active .card-hint,:root[data-koa-theme="dark"] body.koa-v2 #sentenceBuilder.active .sb-instruction{color:#d7c7e0!important}
:root[data-koa-theme="dark"] body.koa-v2 .progress-chapter button,:root[data-koa-theme="dark"] body.koa-v2 .progress-stage-list span,:root[data-koa-theme="dark"] body.koa-v2 .empty,:root[data-koa-theme="dark"] body.koa-v2 .vocab-cat{background:#34283f!important;color:#fff4ec!important;border-color:#927da1!important}
:root[data-koa-theme="dark"] body.koa-v2 .progress-chapter :is(b,em,small,strong),:root[data-koa-theme="dark"] body.koa-v2 .progress-stage-list span{color:#dfcfea!important}

/* Dialog surfaces. */
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay .arena-head,:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay #arenaPrompt,:root[data-koa-theme="dark"] body.koa-v2 #koaActivityReward .koa-reward-console{background:#443351!important;color:#fff4ec!important;border-color:#927da1!important;box-shadow:0 4px 0 var(--koa-raised-edge, #8e739e)!important}
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay .arena-head{box-shadow:none!important}
:root[data-koa-theme="dark"] body.koa-v2 #koaActivityReward .koa-loot-progress{background:#2b2033!important;border-color:#927da1!important;box-shadow:inset 0 2px 0 #17101f!important}
:root[data-koa-theme="dark"] body.koa-v2 #koaActivityReward .koa-reward-row strong{color:#302344!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-leaderboard-panel :is(p,small,.muted),:root[data-koa-theme="dark"] body.koa-v2 .koa-presence-panel :is(p,small){color:#d7c7e0!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-login .koa-login-card::before{background:#594162!important;color:#fff4ec!important;border-color:#927da1!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-login .koa-password-actions button{background:#c8afea!important;color:#302344!important;border-color:#927da1!important;box-shadow:0 3px 0 var(--koa-raised-edge, #8e739e)!important}
:root[data-koa-theme="dark"] body.koa-v2 #dialogueFill.active .dialogue-feedback:not(.good):not(.bad){color:#d7c7e0!important}
:root[data-koa-theme="dark"] body.koa-v2 #dialogueFill.active .dialogue-actions .btn:disabled{background:#51425d!important;color:#d7c7e0!important}

/* Explicit contrast for instructions and disabled controls. */
:root[data-koa-theme="dark"] body.koa-v2 :is(#match,#quiz,#study,#sentenceBuilder,#dialogueFill,#lesson).active .koa-game-instruction{color:#d7c7e0!important}
:root[data-koa-theme="dark"] body.koa-v2 #dialogueFill.active #dialogueValidate:disabled{background:#51425d!important;color:#e4d4ed!important}
:root[data-koa-theme="dark"] body.koa-v2 #shop .koa-skin-card .koa-equipped-button{background:#c8afea!important;color:#302344!important}
:root[data-koa-theme="dark"] body.koa-v2 :is(.bonus-shell,.bonus-game-card,.bonus-result,.coach-pair i){background:#34283f!important;color:#fff4ec!important;border-color:#927da1!important}
:root[data-koa-theme="dark"] body.koa-v2 .bonus-choice:not(.good):not(.bad){background:#3d2e49!important;color:#fff4ec!important;border-color:#927da1!important;box-shadow:0 3px 0 var(--koa-raised-edge, #8e739e)!important}
:root[data-koa-theme="dark"] body.koa-v2 :is(.bonus-direction,.bonus-top span,.bonus-result p,.koa-feature-card p){color:#d7c7e0!important}
:root[data-koa-theme="dark"] body.koa-v2 .bonus-close{background:#534060!important;color:#fff4ec!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-mobile-hub-head>span{color:#d7c7e0!important}
:root[data-koa-theme="dark"] body.koa-v2 #hard .hard-roman{color:#fff4ec!important}

/* Exercise refinements: clear progress, unframed icon controls and NEXT. */
:root[data-koa-theme="dark"] body.koa-v2 :is(#study,#match,#quiz,#sentenceBuilder,#dialogueFill,#lesson).active .koa-game-head .koa-game-progress>i,
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay .arena-progress>i{background:#79d5b0!important;box-shadow:none!important}
:root body.koa-v2 #study.active #flashcard :is(#audio,#star){background:transparent!important;border:0!important;box-shadow:none!important;color:#78658c!important}
:root[data-koa-theme="dark"] body.koa-v2 #study.active #flashcard :is(#audio,#star){color:#dfcfea!important}
:root body.koa-v2 #study.active #flashcard #star svg{fill:currentColor!important;stroke:none!important}
:root body.koa-v2 #study.active #flashcard #star.on{color:#f4bf24!important}
:root body.koa-v2 #study.active #flashcard :is(#audio,#star):focus:not(:focus-visible){outline:none!important}
:root[data-koa-theme="dark"] body.koa-v2 #koaExerciseTransition{background:transparent!important;border:0!important;box-shadow:none!important}
:root body.koa-v2 #koaExerciseTransition #koaExerciseContinue{background:linear-gradient(#c9f0d4 0 7%,#83c79e 7% 88%,#62a980 88%)!important;color:#fff8fc!important;box-shadow:0 5px 0 #4e8a68!important}
:root body.koa-v2 #koaExerciseTransition #koaExerciseContinue:active{box-shadow:0 1px 0 #4e8a68!important}
:root[data-koa-theme="dark"] body.koa-v2 #koaStreakCelebration.koa-streak-j1,
:root[data-koa-theme="dark"] body.koa-v2 #koaStreakCelebration::backdrop{background:#211827!important}
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay :is(.arena-avatar,.arena-rewards span){background:#493652!important;border-color:#927da1!important;box-shadow:0 3px 0 var(--koa-raised-edge, #8e739e)!important;color:#fff4ec!important}
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay :is(#arenaRpGain,#arenaLeafGain,#arenaLeafGain b,.arena-scoreboard small){color:#fff4ec!important}
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay .arena-choice.good .arena-answer{color:#245b3c!important}
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay .arena-choice.bad .arena-answer{color:#812c42!important}
/* The exercise track itself paints progress; its hidden child only supplies the value. */
:root[data-koa-theme="dark"] body.koa-v2 :is(#study,#match,#quiz,#sentenceBuilder,#dialogueFill,#lesson).active .koa-game-head .koa-game-progress{background:linear-gradient(to right,#79d5b0 0%,#79d5b0 var(--koa-fill,0%),#382b43 var(--koa-fill,0%),#382b43 100%)!important}

/* Journey entry windows: weekly streak and Kolizeum lobby. */
:root[data-koa-theme="dark"] body.koa-v2 .koa-streak-overlay{background:#100b18b3!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-streak-card{background:#34283f!important;color:#fff4ec!important;border-color:#927da1!important;box-shadow:0 7px 0 var(--koa-raised-edge, #8e739e),0 16px 38px #100b184d!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-streak-card::before{background:#594162!important;color:#fff4ec!important;border-color:#927da1!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-streak-card :is(h2,.koa-streak-close){color:#fff4ec!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-streak-card :is(p,small){color:#d7c7e0!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-streak-card h2 b{color:#80d3ff!important;text-shadow:0 2px 0 #17101f!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-streak-day i{background:#44334f!important;color:#dfcfea!important;border-color:#927da1!important;box-shadow:0 3px 0 var(--koa-raised-edge, #8e739e)!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-streak-day.done i{background:#304c60!important;border-color:#80d3ff!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-streak-day.today i{background:#63415b!important;color:#fff4ec!important;border-color:#e49cc5!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-streak-best{background:#44334f!important;color:#fff4ec!important;border-color:#927da1!important;box-shadow:0 3px 0 var(--koa-raised-edge, #8e739e)!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-streak-best :is(b,i){color:#fff4ec!important}
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay .arena-format,
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay .arena-fighter>small{background:#493652!important;color:#dfcfea!important;border-color:#927da1!important}
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay .arena-format span+span{border-color:#927da1!important}
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay .arena-fighter.mystery .arena-avatar span{color:#d7c7e0!important;text-shadow:2px 3px 0 #17101f!important}
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay :is(.arena-eyebrow,#arenaPoolNote){background:#493652!important;color:#dfcfea!important;border-color:#927da1!important}
:root[data-koa-theme="dark"] body.koa-v2 #arenaOverlay #arenaFind:disabled{background:#51425d!important;color:#dfcfea!important;opacity:1!important;box-shadow:none!important}

:root[data-koa-theme="dark"] body.koa-v2 .koa-leaderboard-panel>header>button{border:0!important;box-shadow:none!important;background:transparent!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-leaderboard-panel>header>button:focus-visible{outline:2px solid #b8def8;outline-offset:2px}
/* Podium: retain the list layout and rank numbers in both themes. */
:root body.koa-v2 .koa-leaderboard-panel .koa-leaderboard-list>div:is(.rank-1,.rank-2,.rank-3){
 --podium-bg:#fff0bc;--podium-edge:#b78223;--podium-medal:#f4c747;--podium-ink:#503608;
 min-height:78px!important;grid-template-columns:52px minmax(0,1fr) auto!important;
 border:2px solid var(--podium-edge)!important;background:var(--podium-bg)!important;
 box-shadow:0 4px 0 var(--podium-edge)!important;margin-bottom:5px;
}
:root body.koa-v2 .koa-leaderboard-panel .koa-leaderboard-list>div.rank-1{min-height:90px!important}
:root body.koa-v2 .koa-leaderboard-panel .koa-leaderboard-list>div.rank-2{--podium-bg:#edf2fa;--podium-edge:#8496b0;--podium-medal:#d0dae8;--podium-ink:#283b55}
:root body.koa-v2 .koa-leaderboard-panel .koa-leaderboard-list>div.rank-3{--podium-bg:#ffe7d5;--podium-edge:#b7754f;--podium-medal:#e5ab83;--podium-ink:#582f1c}
:root body.koa-v2 .koa-leaderboard-panel .koa-leaderboard-list>div:is(.rank-1,.rank-2,.rank-3) strong{
 position:relative;width:44px!important;height:44px!important;border-radius:50%!important;
 border:2px solid var(--podium-edge)!important;background:var(--podium-medal)!important;color:var(--podium-ink)!important;
 box-shadow:inset 0 0 0 3px #ffffff65,0 3px 0 var(--podium-edge);isolation:isolate;
}

:root body.koa-v2 .koa-leaderboard-panel .koa-leaderboard-list>div:is(.rank-1,.rank-2,.rank-3) strong::before{
 content:"";position:absolute;top:-14px;left:8px;width:24px;height:15px;background:var(--podium-edge);
 clip-path:polygon(0 10%,27% 45%,50% 0,73% 45%,100% 10%,87% 100%,13% 100%);
}
:root body.koa-v2 .koa-leaderboard-panel .koa-leaderboard-list>div:is(.rank-1,.rank-2,.rank-3)+div:not(.rank-1,.rank-2,.rank-3){margin-top:17px}
:root[data-koa-theme="dark"] body.koa-v2 .koa-leaderboard-panel .koa-leaderboard-list>div.rank-1{--podium-bg:#51422d;--podium-edge:#dbb456}
:root[data-koa-theme="dark"] body.koa-v2 .koa-leaderboard-panel .koa-leaderboard-list>div.rank-2{--podium-bg:#374151;--podium-edge:#a5b8d1}
:root[data-koa-theme="dark"] body.koa-v2 .koa-leaderboard-panel .koa-leaderboard-list>div.rank-3{--podium-bg:#503931;--podium-edge:#d59b77}
@media(max-width:370px){
 :root body.koa-v2 .koa-leaderboard-panel .koa-leaderboard-list>div:is(.rank-1,.rank-2,.rank-3){grid-template-columns:46px minmax(0,1fr) auto!important;gap:8px!important;padding-inline:9px!important}
}

/* Match the dark-theme panel edges to the Journey's raised frames. */
:root[data-koa-theme="dark"] body.koa-v2 .koa-presence-panel{box-shadow:0 7px 0 var(--koa-raised-edge, #8e739e),0 20px 50px #100b184d!important}
:root[data-koa-theme="dark"] body.koa-v2 .koa-leaderboard-panel{box-shadow:0 7px 0 var(--koa-raised-edge, #8e739e),0 0 0 100vmax #241d3a70!important}
