/* Theme palettes. Shared image and card dimensions live in layout.css. */
html[data-color-theme="clean"]{color-scheme:light;--bg:#f7f8f5;--bg-rgb:247,248,245;--panel:#fff;--line:#dde4dc;--text:#23392d;--muted:#66756a;--lime:#2f6549}
html[data-color-theme="clean"] body{background:var(--bg);color:var(--text)}
html[data-color-theme="clean"] :is(a,button,input,textarea,select):focus-visible{outline-color:#39764f}
html[data-color-theme="clean"] .nav{background:#fff;border-color:#e0e6df}
html[data-color-theme="clean"] .logo small{color:#6e7e70}
html[data-color-theme="clean"] .nav form{background:#f7f9f5;border-color:#dfe6dc}
html[data-color-theme="clean"] .nav input::placeholder{color:#728072}
html[data-color-theme="clean"] .profile{background:#eaf0e6;color:#356044;border-color:#dbe5d6}
html[data-color-theme="clean"] .hero-text p{color:#607163}
html[data-color-theme="clean"] .hero-meta{color:#61735e}
html[data-color-theme="clean"] .hero-meta b{background:#edf3e7;color:#40653f;border-color:#d8e4ce}
html[data-color-theme="clean"] .btn{background:#fff;border-color:#d4dfd1;color:#35543d}
html[data-color-theme="clean"] .btn.primary{background:#315f45;color:#fff;border-color:#315f45}
html[data-color-theme="clean"] .journey-strip{background:#fff;border-color:#dfe6db;box-shadow:0 4px 18px #243d2c05}
html[data-color-theme="clean"] .journey-strip .line{background:#e7ede2}
html[data-color-theme="clean"] .rail-kicker{color:#698060}
html[data-color-theme="clean"] .rail h2{font-weight:600}
html[data-color-theme="clean"] .rail h2 small{color:#73816c}
html[data-color-theme="clean"] .arrow{border-color:#d9e2d4;background:#fff;color:#426046}
html[data-color-theme="clean"] .rail-view{scrollbar-color:#c8d4c0 transparent}
html[data-color-theme="clean"] .poster{background:#fff;border-color:#dce3d7;box-shadow:0 4px 15px #233e2a09}
html[data-color-theme="clean"] .poster:hover{border-color:#91ac84;box-shadow:0 8px 22px #233e2a12}
html[data-color-theme="clean"] .poster-copy{background:#fff}
html[data-color-theme="clean"] .poster h3{color:#273d2e}
html[data-color-theme="clean"] .poster small{color:#74836e}
html[data-color-theme="clean"] .poster-top{background:#fff;color:#47633e}
html[data-color-theme="clean"] .poster .play{color:#315b40;background:#fff;border-color:#fff;box-shadow:0 3px 12px #18312020}
html[data-color-theme="clean"] .episode-caption{color:#6b7a64}
html[data-color-theme="clean"] .episode-caption b{color:#426042}
html[data-color-theme="clean"] .save-card{background:#fff;color:#43613e;border-color:#d6e0cf}
html[data-color-theme="clean"] .save-card.saved{background:#356249;color:#fff;border-color:#356249}
html[data-color-theme="clean"] .episode-bar{background:#e3eadd}
html[data-color-theme="clean"] .completed-tag{background:#edf4e5;color:#385934;border:1px solid #d0e1c1}
html[data-color-theme="clean"] :is(.trail-card,.lesson-hero){background:#fff;border-color:#dce4d7;box-shadow:0 4px 20px #253e2a05}
html[data-color-theme="clean"] :is(.trail-card .overline,.lesson-hero .overline){color:#56744c}
html[data-color-theme="clean"] :is(.trail-card p,.lesson-hero p,.trail-card small,.lesson-meta){color:#667b5e}
html[data-color-theme="clean"] .back{color:#5c7651}
html[data-color-theme="clean"] :is(.learning-panel,.lesson-outline,.notebook-card){background:#fff;border-color:#dfe6da}
html[data-color-theme="clean"] .step-tab{background:#edf1e8;color:#68805c}
html[data-color-theme="clean"] .step-tab span{border-color:#cbd8c0}
html[data-color-theme="clean"] .step-tab[aria-pressed=true]{background:#315f45;color:#fff}
html[data-color-theme="clean"] .step-tab[aria-pressed=true] span{border-color:#ffffff66}
html[data-color-theme="clean"] :is(.panel-intro,.learning-point p,.review-checks label,.notebook-card p){color:#556c4e}
html[data-color-theme="clean"] .learning-point span{color:#72915e}
html[data-color-theme="clean"] .source-ref{background:#f4f7ef;color:#64795a}
html[data-color-theme="clean"] .step-actions a{color:#476d3c}
html[data-color-theme="clean"] .outline-item{color:#64775a}
html[data-color-theme="clean"] .outline-item span{color:#79916a}
html[data-color-theme="clean"] .outline-item.active{background:#eaf1e2;color:#31512c}
html[data-color-theme="clean"] .source-toolbar select{background:#f7f9f3;color:#42613a;border-color:#d4dfca}
html[data-color-theme="clean"] :is(.source-caption,.lesson-note,.save-status,.mini-progress){color:#667c5b}
html[data-color-theme="clean"] .source-links a{color:#44683a;border-color:#d5e1cc;background:#f8faf5}
html[data-color-theme="clean"] .question{color:#334f2b}
html[data-color-theme="clean"] .answer{background:#fafbf8;color:#304a29;border-color:#d2dfc9}
html[data-color-theme="clean"] .answer::placeholder{color:#7b8b71}
html[data-color-theme="clean"] .reading-switch{background:#eef3e8;border-color:#d8e3ce}
html[data-color-theme="clean"] .reading-switch button{color:#607c51}
html[data-color-theme="clean"] .reading-switch button[aria-pressed=true]{background:#315f45;color:#fff}
html[data-color-theme="clean"] .html-reading{background:#fafbf8;color:#334a2d;border:1px solid #e1e8da}
html[data-color-theme="clean"] :is(details,details p){color:#668057}
html[data-color-theme="clean"] pre{background:#f7f9f3;color:#3b5532}
html[data-color-theme="clean"] .empty{border-color:#cfdcc4;background:#fff}
html[data-color-theme="clean"] footer{background:#fff;color:#667d5b}
html[data-color-theme="clean"] footer b{color:#49683b}
html[data-color-theme="clean"] footer small{color:#708463}
html[data-color-theme="clean"] dialog{background:#fff;color:#273b2d}
/* Classic: the same clean palette, keeping its original structure. */
html[data-color-theme="clean"]:has(.sidebar){--green:#315f45;--ink:#23392d;--muted:#66756a;--bg:#f7f8f5;--lime:#d8eab7}
html[data-color-theme="clean"] .hero{background:#fff;color:#23392d;border:1px solid #e0e7db;gap:20px;padding:12px}
html[data-color-theme="clean"] .hero-image:before,html[data-color-theme="clean"] .hero-image:after{display:none}
html[data-color-theme="clean"] .hero-image{border-radius:10px;overflow:hidden}
html[data-color-theme="clean"] .hero h2 em{color:#3a6a4a}
html[data-color-theme="clean"] .hero .eyebrow{color:#658158}
html[data-color-theme="clean"] .hero p{color:#66765f}
html[data-color-theme="clean"] .hero .text-link{color:#385b3a}
html[data-color-theme="clean"] .hero .image-caption{background:#fff;color:#47623b;padding:5px 8px;border-radius:4px}
