/* TiKi learning surfaces: green structure, blue explanation/audio, purple practice. */
#vocabularyLab.tiki-ui{--tiki-accent:var(--tiki-brand);--tiki-accent-soft:var(--tiki-brand-soft);--vl-soft:#EAF7F0;background:#F3F8F5;border-color:#B9DDCB}
#vocabularyLab.tiki-ui .vl-tile{border:1px solid #B9DDCB;border-top:4px solid var(--tiki-brand)}
#vocabularyLab.tiki-ui .vl-card{border:1px solid #B9DDCB;background:#FCFFFD}
#vocabularyLab.tiki-ui .vl-box{background:#EFF6FF;border:1px solid #B8D2F5}
#vocabularyLab.tiki-ui .vl-study-header{display:flex;justify-content:space-between;align-items:start;gap:16px;margin:0 auto 16px;max-width:760px}
#vocabularyLab.tiki-ui .vl-topic-title{font-weight:700;margin:0 0 4px;color:#087B51}
#vocabularyLab.tiki-ui .vl-study-position{font-size:14px;color:#526477;margin:0 0 12px}
#vocabularyLab.tiki-ui .vl-progress-segments{display:flex;gap:6px;max-width:300px}
#vocabularyLab.tiki-ui .vl-progress-segments span{height:5px;flex:1;background:#D4E8DD;border-radius:8px}
#vocabularyLab.tiki-ui .vl-progress-segments .visited{background:#087B51}
#vocabularyLab.tiki-ui .vl-progress-segments .current{background:#7C3ABD}
#vocabularyLab.tiki-ui .vl-close{font-size:24px;min-width:46px;padding:4px;background:transparent;border-color:transparent}
#vocabularyLab.tiki-ui .vl-study-options,#vocabularyLab.tiki-ui .vl-extra-help{max-width:760px;margin:12px auto;color:#526477;font-size:14px}
#vocabularyLab.tiki-ui summary{cursor:pointer;padding:12px 0;font-weight:600}
#vocabularyLab.tiki-ui .vl-options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:12px}
#vocabularyLab.tiki-ui .vl-options-grid label{display:grid;gap:6px}
#vocabularyLab.tiki-ui select{width:100%;padding:10px;min-width:0}
#vocabularyLab.tiki-ui .vl-guide-card{max-width:760px;margin:16px auto;padding:32px;min-height:330px}
#vocabularyLab.tiki-ui .vl-word-intro{text-align:center;padding:12px 0}
#vocabularyLab.tiki-ui .vl-eyebrow{font-size:12px;letter-spacing:.12em;color:#087B51;font-weight:700}
#vocabularyLab.tiki-ui .vl-word{font-size:clamp(30px,5vw,48px);line-height:1.25;overflow-wrap:anywhere;margin:20px 0}
#vocabularyLab.tiki-ui .vl-intro-meaning{font-size:20px;color:#192A3A}
#vocabularyLab.tiki-ui .vl-ipa{color:#526477}
#vocabularyLab.tiki-ui button.vl-speaker{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;padding:15px;border-radius:50%;background:#EFF6FF;color:#1D4ED8;border:1px solid #B8D2F5}
#vocabularyLab.tiki-ui .vl-speaker svg{width:26px;height:26px}
#vocabularyLab.tiki-ui .vl-intro-purpose{font-size:14px;color:#1D4ED8;margin-top:20px}
#vocabularyLab.tiki-ui .vl-explanation{padding:18px;background:#EFF6FF;border:1px solid #B8D2F5;border-radius:16px;margin:20px 0;color:#192A3A;line-height:1.7}
#vocabularyLab.tiki-ui .vl-study-footer{max-width:760px;margin:auto}
#vocabularyLab.tiki-ui .vl-guide-navigation{display:flex;gap:12px}
#vocabularyLab.tiki-ui .vl-guide-next{flex:1}
#vocabularyLab.tiki-ui .vl-word-navigation{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:16px;font-size:13px}
#vocabularyLab.tiki-ui .vl-word-navigation button{font-size:13px;background:transparent;border-color:transparent;padding:8px}
#vocabularyLab.tiki-ui .vl-task-help{font-size:14px;color:#526477}
#vocabularyLab.tiki-ui button[data-act=choice]{border-color:#D5C6EB;background:#FCFAFF}
#vocabularyLab.tiki-ui button[data-act=listen]:not(.vl-speaker){background:#EFF6FF;color:#1D4ED8;border-color:#B8D2F5}
body.tiki-ui:has(#rlApp[data-skill=listening]){background:#F3F8F5}
#rlApp[data-skill=listening] :where(.card,.player,.panel){border-color:#B9DDCB}
#rlApp[data-skill=listening] .card{border-top-color:#087B51}
#rlApp[data-skill=listening] .card .art{background:#EAF7F0}
#rlApp[data-skill=listening] :where(#rlModel,#rlPatternListen,#rlReplay,[data-vocab]){background:#EFF6FF;color:#1D4ED8;border-color:#B8D2F5}
#rlApp[data-skill=listening] .vocab article{background:#EFF6FF;border:1px solid #B8D2F5}
#rlApp[data-skill=listening] .vocab h3{color:#1D4ED8}
#rlApp[data-skill=listening] .practice-grid button{border:1px solid #D5C6EB;background:#FCFAFF}
#rlApp[data-skill=listening] .practice-grid strong{color:#6540A0}
#rlApp[data-skill=listening] .panel:has(#rlExercise){border:1px solid #D5C6EB}
#rlApp[data-skill=listening] .shadow-pattern{background:#F8F5FC;border-color:#D5C6EB}
@media(max-width:600px){#vocabularyLab.tiki-ui .vl-guide-card{padding:22px 16px}#vocabularyLab.tiki-ui .vl-word-navigation button{padding:8px 4px}#vocabularyLab.tiki-ui .vl-word-navigation{gap:4px}#vocabularyLab.tiki-ui .vl-guide-navigation{flex-wrap:wrap}}
#vocabularyLab.tiki-ui .vl-listen-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
#vocabularyLab.tiki-ui .vl-speaker svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

#rlApp[data-skill=listening] #rlTabs button[data-tab=practice]{border-color:#D5C6EB;color:#6540A0}
#rlApp[data-skill=listening] #rlTabs button[data-tab=practice].active-tab{background:#F6F0FF;border-color:#7C3ABD;box-shadow:inset 0 -3px #7C3ABD}
/* Full-screen Vocabulary uses the same green/blue/purple meanings. */
@media(max-width:760px){
#tiki961Vocab{background:#F3F8F5;color:#192A3A}
#tiki961Vocab .tiki961-top{border-color:#B9DDCB;height:auto;min-height:64px}
#tiki961Vocab .tiki961-top small{color:#087B51;white-space:normal}
#tiki961Vocab .tiki961-main h1{color:#192A3A;overflow-wrap:anywhere}
#tiki961Vocab .tiki961-footer{background:linear-gradient(180deg,transparent,#F3F8F5 22%)}
#tiki961Vocab .tiki961-footer .primary{background:#087B51;box-shadow:none}
#tiki961Vocab .tiki961-sound,#tiki961Vocab [data-vo=hearexample],#tiki961Vocab [data-vo=hearword]{background:#EFF6FF;border-color:#B8D2F5;color:#1D4ED8;min-height:46px}
#tiki961Vocab .tiki961-card{background:#EFF6FF;border-color:#B8D2F5}
#tiki961Vocab .tiki961-card.improve{background:#EAF7F0;border-color:#B9DDCB}
#tiki961Vocab .tiki961-options button{border-color:#B9DDCB;min-height:64px;justify-content:space-between}
#tiki961Vocab .vocab-meaning{display:block;font-size:14px;color:#526477;margin-top:6px}
#tiki961Vocab .tiki961-mic{background:#087B51;box-shadow:0 0 0 15px #EAF7F0,0 0 0 30px #F3F8F5}
#tiki961Vocab .tiki961-transcript,#tiki961Vocab .tiki961-input{border-color:#D5C6EB}
#tiki961VocabRecording button{min-height:46px;border:1px solid #B8D2F5;background:#EFF6FF;color:#1D4ED8;border-radius:12px;padding:10px;margin:5px 0}
#tiki961VocabRecording audio{max-width:100%;width:100%}
#tiki961VocabRecording textarea{width:100%;box-sizing:border-box}
#tiki961VocabRecording [data-act=stop]{background:#B42318;color:white;border-color:#B42318}
#tiki961Vocab .tiki961-wordHero small{color:#087B51}
}

#tiki961Vocab .vo-icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}#tiki961Vocab .tiki961-mic .vo-icon{width:42px;height:42px}
/* Vocabulary is a dedicated feature page. Keep the original bank header for its legacy view. */
body:has(#vocabularyView:not(.hidden)) .ch-promo-wrap{display:none!important}
#vocabularyView.vl-active:not(.vl-legacy)>.section-head,#vocabularyView.vl-active:not(.vl-legacy)>.view-intro{display:none}
#vocabularyLab .vl-sync-help{font-size:13px;max-width:380px}
#vocabularyLab .vl-sync-help summary{padding:8px 0}
#tiki961VocabRecording textarea{font:inherit;border:1px solid #D5C6EB;border-radius:14px;padding:12px;min-height:90px}
/* V10.1.112: Listening navigation and practice cards use TiKi green. */
#rlApp[data-skill=listening] #rlTabs button[data-tab]{color:#087B51;background:#EAF7F0;border:1px solid #066340;box-shadow:none}
#rlApp[data-skill=listening] #rlTabs button[data-tab]:hover{background:#DCF1E4;border-color:#066340}
#rlApp[data-skill=listening] #rlTabs button[data-tab].active-tab{color:#066340;background:#DCF1E4;border-color:#066340;box-shadow:inset 0 -3px #066340}
#rlApp[data-skill=listening] .practice-grid strong{color:#087B51}
#rlApp[data-skill=listening] .practice-grid button{background:#F4FBF6;border-color:#B9DDCB}
#rlApp[data-skill=listening] .practice-grid button:hover{background:#EAF7F0;border-color:#066340}
