/* Shared appearance, loaded after page styles. */
:root{color-scheme:light}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;flex:none;width:38px;height:38px;padding:8px;border:1px solid #dfe7df;border-radius:50%;background:#f0f5ee;color:#285f49;cursor:pointer;line-height:1}
.theme-toggle svg{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body>header>nav{flex-shrink:0}
.theme-toggle:hover{background:#e2ecdf}
.theme-toggle:focus-visible{outline:3px solid #86b785;outline-offset:3px}
.theme-toggle-admin{position:fixed;right:20px;top:18px;z-index:110}
#studio main>header{padding-right:55px}
html[data-theme=dark]{color-scheme:dark;--ink:#e0ebe4;--green:#76c9a8;--line:#35463d;--muted:#a6b9ad}
html[data-theme=dark] body{background:#131c18;color:var(--ink)}
html[data-theme=dark] :is(header,aside,.controls,.practice,.library-filters,.course-card,dialog,.panel,.stats article,.sidebar,#authForm){background:#1d2922;color:var(--ink);border-color:var(--line)}
html[data-theme=dark] .theme-toggle{background:#2b3e32;color:#f1d48b;border-color:#465d4c}
html[data-theme=dark] .theme-toggle:hover{background:#3a5141}
html[data-theme=dark] :is(input:not([type=range]):not([type=checkbox]):not([type=radio]),textarea,select,kbd){background:#15221b;color:#e0ebe4;border-color:#435448}
html[data-theme=dark] :is(input,textarea)::placeholder{color:#93a397}
html[data-theme=dark] :is(.filter-option,.toggles button,.toggles #sentencePrev,.toggles #sentenceNext,.bottom button,.secondary){background:#25372c;color:#c0d4c5;border-color:#435a49}
html[data-theme=dark] :is(.filter-option[aria-pressed=true],.toggles button[aria-pressed=true],.primary,.actions .primary,.dictionary-done,.segment-publish){background:#286b51;color:#f1fff7;border-color:#397e61}
html[data-theme=dark] .sentence:hover{background:#26382c}
html[data-theme=dark] :is(#sentences .sentence.active,#desktopSubtitles){background:#2a4031;border-color:#435d46}
html[data-theme=dark] :is(#sentences .en,#english,#desktopEnglish){color:#e3ede2}
html[data-theme=dark] :is(#sentences .zh,#chinese,#desktopChinese){color:#b3c5b1}
html[data-theme=dark] :is(.sentence .spoken-word.word-current,#english .spoken-word.word-current,#desktopEnglish .spoken-word.word-current){background:#345f42;color:#f1fff3}
html[data-theme=dark] :is(.spoken-word:hover,.spoken-word:focus-visible){background:#3a5440;color:#f1fff3}
html[data-theme=dark] :is(.aside-tabs>button[role=tab],.desktop-transport .desktop-action,#mobilePlayerDock .desktop-action){color:#c1d6c6}
html[data-theme=dark] .aside-tabs>button[aria-selected=true]{color:#a5e0b7}
html[data-theme=dark] :is(.desktop-action[aria-pressed=true],#mobilePlayerDock .desktop-action[aria-pressed=true]){background:#2d4938;color:#bcf0ce;border-color:#46654d}
html[data-theme=dark] #mobilePlayerDock{background:#1d2922f5;border-color:#3b5141}
html[data-theme=dark] :is(.dictionary-translation,#dictionaryTranslation){color:#c2e8ce}
html[data-theme=dark] .dictionary-entry .dictionary-audio{background:#304b38;color:#ace1be}
html[data-theme=dark] :is(dialog p,.course-card p,.heading p,.record-info,.dictionary-meta){color:#a7baab}
html[data-theme=dark] :is(.course-card small,.course-card b,.heading small){color:#91c7a1}
html[data-theme=dark] :is(.filter-row+.filter-row,.segment,td,.record-info){border-color:var(--line)}
html[data-theme=dark] th{background:#24352a;color:#b9ccbc}
html[data-theme=dark] .sidebar .nav.active{background:#2f4635;color:#bfe4cb}
html[data-theme=dark] :is(.badge,.admin-pill,.tags span){background:#344435;color:#c5d8b7}
html[data-theme=dark] .badge.published{background:#294e36;color:#afe1bb}
html[data-theme=dark] .brand i{background:#286b51;color:#fff}
html[data-theme=dark] .aside-tabs .toggles :is(#loop,#translate)[aria-pressed=true]{background:#dceee1;color:#1c4933;border-color:#b9d8c2}
@media(min-width:851px){html[data-theme=dark] #sentences .sentence .spoken-word.word-current{background:#345f42;color:#f1fff3;box-shadow:0 0 0 2px #61be83}}
@media(max-width:850px){html[data-theme=dark] .video-box>.controls:has(#seek){background:transparent;color:white}}
@media(max-width:850px){body>header>.theme-toggle{margin-left:auto;width:34px;height:34px;padding:7px}body>header{gap:clamp(8px,3vw,24px);padding-left:16px;padding-right:16px}body>header nav{gap:12px}.theme-toggle-admin{top:8px;right:12px}}
@media(max-width:360px){body>header .brand{font-size:27px;gap:6px}body>header nav{font-size:12px;gap:8px}body>header .brand i{width:29px;height:29px;line-height:28px;font-size:29px}}
