:root{--ink:#17202a;--muted:#667085;--line:#d9dee7;--soft:#f6f7f9;--paper:#fff;--yellow:#f4cf36;--teal:#147d78;--blue:#2166c2;--red:#b83b3b;--green:#247a47;--orange:#a85b12}*{box-sizing:border-box;letter-spacing:0}body{margin:0;min-width:1180px;background:#eef1f4;color:var(--ink);font:15px/1.6 system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif}button,select,input{font:inherit;color:inherit}button,select,input{border:1px solid #c9d0da;background:#fff;border-radius:6px}button{min-height:38px;padding:7px 12px;cursor:pointer}button:hover{border-color:#8d99a8;background:#f7f9fb}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #9fc4ee;outline-offset:2px}.app-header{height:68px;background:#202832;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:5px solid var(--yellow)}.brand{display:flex;align-items:baseline;gap:14px}.brand strong{font-family:Georgia,"Times New Roman",serif;font-size:25px}.brand span{color:#d8dee8;font-size:14px}.header-progress{display:flex;gap:22px;color:#dce3eb}.header-progress b{color:#fff}.toolbar{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:155px minmax(430px,1fr) 310px auto;gap:12px;align-items:center;padding:12px 28px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 4px 14px #17202a12}.unit-select{
  appearance:none;
  height:40px;
  width:100%;
  padding:0 36px 0 12px;
  text-overflow:ellipsis;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m3 6 5 5 5-5' fill='none' stroke='%237b8797' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 12px center;
}.module-tabs{display:flex;gap:4px;background:#eef1f4;padding:4px;border-radius:7px}.module-tabs button{flex:1;border:0;background:transparent;white-space:nowrap}.module-tabs button.active{background:#202832;color:#fff}.search-box{position:relative}.search-box input{width:100%;height:40px;padding:0 12px}.search-results{display:none;position:absolute;top:45px;left:0;right:0;max-height:440px;overflow:auto;background:#fff;border:1px solid var(--line);box-shadow:0 12px 30px #17202a26;z-index:50;border-radius:6px;padding:5px}.search-results.open{display:block}.search-result{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid #edf0f3;border-radius:0;padding:9px}.search-result:last-child{border-bottom:0}.search-result strong{display:block}.search-result span{display:block;font-size:13px;color:var(--muted)}.custom-button{white-space:nowrap}.app-shell{max-width:1320px;margin:0 auto;background:#fff;min-height:calc(100vh - 125px)}.module-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:28px 34px 22px;border-bottom:1px solid var(--line)}.eyebrow{font-weight:750;color:var(--teal);font-size:13px}.module-head h1{font:700 32px/1.2 Georgia,"Times New Roman",serif;margin:4px 0 8px}.module-head p{margin:0;color:var(--muted)}.book-link{display:inline-flex;align-items:center;text-decoration:none;color:var(--blue);border:1px solid #b8c9dd;border-radius:6px;padding:8px 11px;white-space:nowrap}.audio-band{display:flex;align-items:center;gap:12px;padding:12px 34px;background:#f5f8fb;border-bottom:1px solid var(--line)}.audio-band audio{width:430px;height:38px}.segmented{display:flex;border:1px solid #c9d0da;border-radius:6px;overflow:hidden}.segmented button{border:0;border-right:1px solid #c9d0da;border-radius:0;min-height:34px;padding:5px 9px}.segmented button:last-child{border-right:0}.segmented button.active{background:#202832;color:#fff}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 360px}.content-column{min-width:0;padding:28px 34px 50px;border-right:1px solid var(--line)}.side-column{padding:24px;background:#fafbfc}.section-title{font-size:20px;margin:34px 0 13px;padding-bottom:8px;border-bottom:3px solid var(--yellow)}.section-title:first-child{margin-top:0}.goal-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.goal{border-left:4px solid var(--teal);background:#f3f8f7;padding:11px 13px}.preview{border:1px solid #e2c35a;background:#fffbea;padding:13px 15px;margin:15px 0}.reading-controls{display:flex;gap:10px;justify-content:flex-end;margin:0 0 12px}.reading-controls button.active{background:#202832;color:#fff}.paragraph{padding:18px 0;border-top:1px solid var(--line);scroll-margin-top:90px}.paragraph:first-of-type{border-top:0}.paragraph-head{display:flex;gap:10px;align-items:center;margin-bottom:8px}.para-label{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#202832;color:#fff;font-weight:750}.para-role{font-weight:750;color:var(--teal)}.english{font:18px/1.9 Georgia,"Times New Roman",serif;margin:0}.translation{margin:10px 0 0;padding:11px 13px;background:#f5f7fa;border-left:3px solid var(--blue)}.translation[hidden],.student-line[hidden]{display:none}.student-line{margin:10px 0 0;color:#344054}.student-line b{color:var(--orange)}.term-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}.term-chip{min-height:29px;padding:3px 8px;border-color:#d8c46f;background:#fffbea;color:#634e00}.term-chip.collocation{border-color:#98c5bd;background:#eff8f6;color:#0d5f59}.term-chip.recognition{border-color:#cfd4da;background:#f5f6f7;color:#5d6670}.sentence-note{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:18px;padding:14px 0;border-top:1px solid var(--line)}.sentence-note .quote{font:17px/1.7 Georgia,"Times New Roman",serif}.sentence-note .analysis{color:#344054}.sentence-note .analysis b{color:var(--red)}.skill-box{border-left:5px solid var(--teal);padding:3px 0 3px 17px}.skill-box h3{margin:0 0 8px}.skill-steps{margin:8px 0;padding-left:22px}.skill-demo{margin-top:12px;background:#f3f8f7;padding:13px 15px}.structure-map{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.structure-map div{border-top:4px solid var(--teal);background:#f4f7f8;padding:10px}.summary-box{display:grid;grid-template-columns:1fr 1fr;gap:22px}.summary-box section{border-top:3px solid var(--yellow);padding-top:10px}.summary-box h3{margin:0 0 8px}.summary-box p,.summary-box ol{margin-top:0}.student-notes h2,.vocab-view h2{font-size:18px;margin:0 0 12px}.student-block{border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:16px}.student-block:last-child{border-bottom:0}.student-block h3{font-size:14px;margin:0 0 7px;color:var(--teal)}.student-block ul{margin:0;padding-left:20px}.student-block li{margin:5px 0}.vocab-summary{display:flex;gap:8px;margin-bottom:12px}.count-pill{border-radius:4px;padding:4px 7px;font-size:12px;font-weight:700}.count-master{background:#fff1cc;color:#725100}.count-collocation{background:#dff3ef;color:#0d5f59}.count-recognition{background:#e9edf1;color:#4b5563}.vocab-filters{display:flex;gap:5px;margin-bottom:10px}.vocab-filters button{min-height:31px;padding:4px 8px;font-size:12px}.vocab-filters button.active{background:#202832;color:#fff}.vocab-list{max-height:560px;overflow:auto;border-top:1px solid var(--line)}.vocab-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;width:100%;text-align:left;border:0;border-bottom:1px solid #e6e9ed;border-radius:0;padding:9px 4px;background:transparent}.vocab-item strong{display:block}.vocab-item span{display:block;color:var(--muted);font-size:12px}.level-dot{width:9px;height:9px;border-radius:50%;margin-top:7px;background:var(--yellow)}.level-dot.collocation{background:var(--teal)}.level-dot.recognition{background:#8b95a1}.word-detail{margin-top:14px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:6px}.word-detail h3{font-size:20px;margin:0 0 2px}.word-detail .zh{color:var(--blue);font-weight:700}.word-detail dl{margin:10px 0}.word-detail dt{font-size:12px;color:var(--muted);margin-top:8px}.word-detail dd{margin:1px 0}.word-actions{display:flex;gap:7px;margin-top:10px}.word-actions .active{background:var(--yellow);border-color:#d1ab16}.quiz-view{padding:30px 34px 54px;border-top:10px solid #eef1f4}.quiz-view[hidden]{display:none}.quiz-view>h2{font-size:22px;margin:0 0 5px}.quiz-intro{color:var(--muted);margin:0 0 18px}.quiz-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.question-card{border:1px solid var(--line);border-radius:6px;padding:15px}.question-card h3{font-size:15px;margin:0 0 10px}.question-type{color:var(--teal);font-size:12px;font-weight:750}.option-list{display:grid;gap:7px}.option{width:100%;text-align:left;min-height:34px}.option.correct{background:#e4f4e9;border-color:#72ac84;color:#145b2e}.option.wrong{background:#fbe8e8;border-color:#ce8585;color:#802525}.explanation{display:none;margin-top:10px;padding:10px;background:#f5f7f9;border-left:3px solid var(--blue)}.explanation.show{display:block}.explanation b{display:block}.video-layout{
  display:grid;
  grid-template-columns:minmax(0,2fr) minmax(0,1fr);
  align-items:start;
  gap:20px;
}
.video-player-panel{min-width:0}
.video-frame{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:auto 16/9;
  background:#111;
  border-radius:8px;
}
.video-overview-heading{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:8px;
}
.video-overview-heading h2{margin:0}

#video-background{margin-top:20px}.transcript-segment{padding:14px 0;border-bottom:1px solid var(--line);scroll-margin-top:90px}.transcript-segment .english{font-size:16px}.review-view{padding:28px 34px 50px}.review-view[hidden],.reading-view[hidden],.video-view[hidden],.audio-band[hidden]{display:none}.review-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0 22px}.review-stat{border-top:4px solid var(--yellow);background:#f7f8fa;padding:12px}.review-stat b{display:block;font-size:24px}.practice-modes{display:flex;gap:7px}.practice-modes button.active{background:#202832;color:#fff}.practice-area{margin-top:14px;border:1px solid var(--line);min-height:300px;padding:24px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.practice-term{font:700 30px/1.3 Georgia,"Times New Roman",serif}.practice-zh{font-size:22px;color:var(--blue);margin-top:14px}.practice-actions{display:flex;gap:8px;margin-top:18px}.practice-area input{height:44px;width:440px;padding:0 12px;font-size:18px;margin-top:16px}.practice-feedback{min-height:30px;margin-top:10px;font-weight:700}.custom-dialog{width:720px;max-height:75vh;border:0;border-radius:8px;padding:0;box-shadow:0 22px 70px #0005}.custom-dialog::backdrop{background:#17202a99}.dialog-head{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line)}.dialog-head h2{margin:0;font-size:20px}.dialog-body{padding:14px 20px;max-height:60vh;overflow:auto}.dialog-empty{padding:30px;text-align:center;color:var(--muted)}.source-note{color:var(--muted);font-size:13px}.hidden{display:none!important}
.toolbar{grid-template-columns:220px minmax(330px,1fr) minmax(180px,260px) auto auto auto;gap:8px}
.vocab-view h2{font-size:21px;margin-bottom:14px}.vocab-view .count-pill{font-size:14px;padding:5px 8px}.vocab-view .vocab-filters button{min-height:34px;padding:5px 9px;font-size:14px}.vocab-view .vocab-item{padding:12px 5px}.vocab-view .vocab-item strong{font-size:17px;line-height:1.45}.vocab-view .vocab-item>span>span{font-size:14px;line-height:1.5}
.inline-term{display:inline;min-height:0;margin:0;padding:0 2px;border:0;border-radius:2px;background:transparent;color:inherit;font:inherit;line-height:inherit;vertical-align:baseline}.inline-term:hover{border:0;background:#fff4bd}.inline-master{font-weight:700;text-decoration-line:underline;text-decoration-color:#d5a900;text-decoration-thickness:3px;text-underline-offset:3px}.inline-collocation{background:#dff3ef;box-shadow:inset 0 -2px var(--teal)}.inline-recognition{border-bottom:2px dashed #8b95a1}.inline-recognition:hover{border-bottom:2px dashed #66717e}
.source-note-list{display:grid;gap:6px;margin:10px 0 0;padding:9px 12px;border-left:3px solid #8b95a1;background:#f6f7f9}.source-note-entry{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:8px;align-items:baseline;color:#344054;font-size:14px}.source-note-label{color:var(--muted);font-size:12px;font-weight:750}.source-note-entry b{color:var(--ink)}
.side-column{position:sticky;top:65px;align-self:start;max-height:calc(100vh - 65px);overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth}.vocab-item.active{background:#e5f3f0;box-shadow:inset 4px 0 var(--teal)}.vocab-list>.word-detail{margin:0 0 8px;border-radius:0 0 6px 6px;border-color:#8fc4be;background:#f9fdfc}.vocab-list>.word-detail h3{overflow-wrap:anywhere}

.importance-badge{display:inline-block!important;width:max-content;margin:3px 4px 0 0;padding:2px 6px;border:1px solid #c8a719;border-radius:3px;background:#fff6cf;color:#6d5200;font-size:11px!important;font-style:normal;font-weight:750;line-height:1.35}.importance-badge.student{border-color:#72aaa2;background:#e6f5f2;color:#0d625b}.detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.extension-sections{margin:12px 0;border-top:2px solid var(--yellow)}.extension-section{padding:10px 0;border-bottom:1px solid var(--line)}.extension-section h4{margin:0 0 6px;color:#344054;font-size:13px}.extension-pills{display:flex;flex-wrap:wrap;gap:5px}.extension-pills span{display:inline-flex;gap:5px;align-items:baseline;padding:3px 6px;border-radius:3px;background:#eef3f7;font-size:12px}.extension-rows{display:grid;gap:6px}.extension-row{display:grid;gap:1px;font-size:13px}.extension-row b{color:#145f5a}.extension-row i{font-weight:400;color:var(--muted)}.extension-list{margin:0;padding-left:19px;font-size:13px}.extension-list li{margin:3px 0}.word-actions{flex-wrap:wrap}.word-building-review{margin-top:28px;border-top:4px solid var(--yellow);padding-top:15px}.word-building-review h2{margin:0;font-size:20px}.word-building-review>p{margin:3px 0 12px;color:var(--muted)}.word-building-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.word-building-grid details{border-bottom:1px solid var(--line);padding:7px 0}.word-building-grid summary{cursor:pointer;display:flex;justify-content:space-between;gap:10px}.word-building-grid summary span{color:var(--teal);font-size:13px}.word-building-answer{margin:7px 0 2px;padding-left:11px;border-left:3px solid var(--teal);font-size:14px}

/* ── Dark mode ── */
:root[data-theme="dark"]{--ink:#e0e4ea;--muted:#9aa3b0;--line:#2d3540;--soft:#1e242d;--paper:#1a1f27;--yellow:#f4cf36;--teal:#2db5ac;--blue:#5b9bd5;--red:#e06060;--green:#4caf6e;--orange:#d4915a}
:root[data-theme="dark"] body{background:#12161c;color:var(--ink)}
:root[data-theme="dark"] .toolbar,:root[data-theme="dark"] .app-shell,:root[data-theme="dark"] .search-results,:root[data-theme="dark"] .word-detail,:root[data-theme="dark"] .custom-dialog{background:var(--paper)}
:root[data-theme="dark"] button,:root[data-theme="dark"] select,:root[data-theme="dark"] input{background-color:#232a35;border-color:#3a4350;color:var(--ink)}
:root[data-theme="dark"] button:hover{background:#2a3340;border-color:#5a6575}
:root[data-theme="dark"] .module-tabs button.active,:root[data-theme="dark"] .segmented button.active,:root[data-theme="dark"] .vocab-filters button.active,:root[data-theme="dark"] .practice-modes button.active,:root[data-theme="dark"] .reading-controls button.active{background:#2db5ac;color:#111}
:root[data-theme="dark"] .translation{background:#1e2a35;border-left-color:var(--blue)}
:root[data-theme="dark"] .goal{background:#1a2e2b}
:root[data-theme="dark"] .preview{background:#2a2510;border-color:#8a7530}
:root[data-theme="dark"] .skill-demo,:root[data-theme="dark"] .structure-map div{background:#1a2e2b}
:root[data-theme="dark"] .side-column{background:#1e242d}
:root[data-theme="dark"] .audio-band{background:#1e242d}
:root[data-theme="dark"] .explanation{background:#1e2a35}
:root[data-theme="dark"] .option.correct{background:#1a3025;border-color:#4caf6e;color:#8fd5a8}
:root[data-theme="dark"] .option.wrong{background:#301a1a;border-color:#e06060;color:#f0a0a0}
:root[data-theme="dark"] .count-master{background:#3a3010;color:#f4cf36}
:root[data-theme="dark"] .count-collocation{background:#1a302b;color:#2db5ac}
:root[data-theme="dark"] .count-recognition{background:#252a32;color:#9aa3b0}
:root[data-theme="dark"] .importance-badge{background:#3a3010;border-color:#8a7530;color:#f4cf36}
:root[data-theme="dark"] .importance-badge.student{background:#1a302b;border-color:#2db5ac;color:#2db5ac}
:root[data-theme="dark"] .extension-pills span{background:#252a32}
:root[data-theme="dark"] .review-stat{background:#1e242d}
:root[data-theme="dark"] .dialog-head{border-bottom-color:var(--line)}
:root[data-theme="dark"] .vocab-item.active{background:#1a302b;box-shadow:inset 4px 0 var(--teal)}
:root[data-theme="dark"] .vocab-list>.word-detail{background:#1a2e2b;border-color:#2a4a45}
:root[data-theme="dark"] .term-chip{background:#2a2510;border-color:#8a7530;color:#f4cf36}
:root[data-theme="dark"] .term-chip.collocation{background:#1a302b;border-color:#2db5ac;color:#2db5ac}
:root[data-theme="dark"] .term-chip.recognition{background:#252a32;border-color:#5a6575;color:#9aa3b0}
:root[data-theme="dark"] .inline-master{text-decoration-color:#f4cf36}
:root[data-theme="dark"] .inline-collocation{background:#1a302b;box-shadow:inset 0 -2px var(--teal)}
:root[data-theme="dark"] .inline-recognition:hover{background:#2a3340}
:root[data-theme="dark"] .inline-term:hover{background:#3a3010}
:root[data-theme="dark"] .practice-area{background:var(--paper);border-color:var(--line)}
:root[data-theme="dark"] .custom-dialog::backdrop{background:#000c}
.theme-toggle{background:none;border:1px solid #555;border-radius:6px;min-width:74px;height:38px;cursor:pointer;display:flex;gap:6px;align-items:center;justify-content:center;padding:0 10px;white-space:nowrap}.theme-icon{font-size:18px;line-height:1}.theme-label{font-size:13px}
.theme-toggle:hover{background:#333;border-color:#888}

/* ── Responsive ── */
@media(max-width:1100px){
  body{min-width:0!important}
  .toolbar{grid-template-columns:1fr!important;display:flex!important;flex-wrap:wrap;gap:8px}
  .app-header{height:auto;min-height:68px;flex-wrap:wrap;padding:10px 28px;gap:8px 16px}
  .brand{flex-wrap:wrap;gap:4px 12px}
  .brand strong{font-size:clamp(19px,3vw,23px);white-space:nowrap}
  .header-progress{flex-wrap:wrap;gap:6px 14px}
  .header-progress span{white-space:nowrap}
  .unit-select{order:1;flex:1 1 0;width:auto;min-width:0}
  .palette-button{order:2;flex:0 0 auto;white-space:nowrap}
  .module-tabs{order:3;width:100%}
  .search-box{order:4;flex:1;min-width:200px}
  .custom-button{order:5}
  .theme-toggle{order:6}
  .workspace{grid-template-columns:1fr!important}
  .side-column{position:static!important;max-height:none!important;border-top:1px solid var(--line)}
  .content-column{border-right:0!important}
  .video-layout{grid-template-columns:1fr!important}
  .audio-band audio{width:100%!important}
  .audio-band{flex-wrap:wrap}
  .quiz-grid{grid-template-columns:1fr!important}
  .summary-box{grid-template-columns:1fr!important}
  .goal-list{grid-template-columns:1fr!important}
  .structure-map{grid-template-columns:1fr 1fr!important}
  .practice-area input{width:100%!important}
  .practice-area{padding:16px!important}
  .word-building-grid{grid-template-columns:1fr!important}
  .sentence-note{grid-template-columns:1fr!important}
  .custom-dialog{width:95vw!important}
  .review-stats{grid-template-columns:1fr 1fr!important}
}
@media(max-width:600px){
  .app-header{flex-direction:column;align-items:flex-start;padding:12px 16px}
  .brand{flex-direction:column}
  .module-head{flex-direction:column;padding:16px}
  .content-column{padding:16px!important}
  .side-column{padding:16px!important}
  .review-stats{grid-template-columns:1fr!important}
  .structure-map{grid-template-columns:1fr!important}
}

/* ── Progress tracking ── */
.progress-bar-container{margin:12px 0;height:8px;background:var(--soft);border-radius:4px;overflow:hidden;display:flex}
.progress-bar-segment{height:100%;transition:width .3s}
.progress-segment-mastered{background:var(--green)}
.progress-segment-learning{background:var(--yellow)}
.progress-segment-unseen{background:var(--line)}
.vocab-view .vocab-item .vocab-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
  margin-top: 6px;
}
.vocab-meta .importance-badge,
.vocab-meta .mastery-btn {
  margin: 0;
  white-space: nowrap;
}
.mastery-btn{font-size:11px;padding:2px 6px;border-radius:3px;cursor:pointer;border:1px solid var(--line);background:transparent}
.mastery-btn.mastery-2{background:#e4f4e9;border-color:#72ac84;color:#145b2e}
.mastery-btn.mastery-1{background:#fff8e0;border-color:#d4b830;color:#6d5200}
:root[data-theme="dark"] .mastery-btn.mastery-2{background:#1a3025;border-color:#4caf6e;color:#8fd5a8}
:root[data-theme="dark"] .mastery-btn.mastery-1{background:#3a3010;border-color:#f4cf36;color:#f4cf36}
.vocab-filters button[data-filter="learning"]{margin-left:4px}

:root[data-palette="ocean"]{--yellow:#42c7c0;--teal:#116b87;--blue:#255fb4;--orange:#a14e13}
:root[data-palette="berry"]{--yellow:#e9a6c2;--teal:#8b3f68;--blue:#6453a6;--orange:#a04c3d}
:root[data-palette="forest"]{--yellow:#b7ce63;--teal:#2f7354;--blue:#37755f;--orange:#8a5b19}
.background-box{margin:18px 0;padding:16px 18px;border:1px solid #c9d8e5;border-left:5px solid var(--blue);background:#f4f8fc;border-radius:6px}.background-box h3{margin:0 0 7px;font-size:17px}.background-box p{margin:0}.background-box small{display:block;color:var(--muted);margin-top:7px}.palette-button{white-space:nowrap}
:root[data-theme="dark"] .background-box{background:#202936;border-color:#34475a}
@media(max-width:700px){.module-tabs{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.module-tabs button{min-width:0}}
/* 鲜艳彩色主题 */
:root{--yellow:#ffd83d;--teal:#00a99d;--blue:#3578e5;--red:#e84665;--green:#20a35a;--orange:#ff7a21;background:#fff7e8}
body{background:linear-gradient(135deg,#fff1b8 0,#dff8ff 34%,#f6e5ff 68%,#dfffe8 100%) fixed}.app-header{background:linear-gradient(105deg,#5936b4,#146ed0 45%,#00a78f);border-bottom-color:#ffd83d}.toolbar{border-bottom:3px solid #ffd83d;background:#fffdf8}.module-tabs{background:linear-gradient(90deg,#e8ddff,#d8f4ff)}.module-tabs button.active{background:linear-gradient(135deg,#6d42d8,#167bd8);box-shadow:0 4px 12px #5936b455}.app-shell{box-shadow:0 12px 40px #563b9124}.goal:nth-child(3n+1){border-left-color:#00a99d;background:#e6fbf8}.goal:nth-child(3n+2){border-left-color:#7a4cdb;background:#f0e9ff}.goal:nth-child(3n){border-left-color:#ff7a21;background:#fff0df}.section-title{border-image:linear-gradient(90deg,#ffd83d,#ff7a21,#e84665,#7a4cdb,#167bd8,#00a99d) 1}.background-box{background:linear-gradient(135deg,#e9f7ff,#f7ecff 52%,#fff3da);border:2px solid #7a4cdb;border-left-width:7px;box-shadow:0 8px 22px #6e45b51c}.background-box h3{color:#6235bd}.background-en{margin-top:10px!important;padding-top:10px;border-top:1px dashed #9f86d4;color:#2e4771;font:16px/1.7 Georgia,"Times New Roman",serif}.term-chip:nth-child(4n+1){background:#fff2b8;border-color:#e5b900}.term-chip:nth-child(4n+2){background:#dff8f4;border-color:#38ac9d}.term-chip:nth-child(4n+3){background:#eee7ff;border-color:#8f6ad5}.term-chip:nth-child(4n){background:#ffe4ec;border-color:#dc6f8d}.question-card:nth-child(4n+1){border-top:5px solid #ffb000}.question-card:nth-child(4n+2){border-top:5px solid #00a99d}.question-card:nth-child(4n+3){border-top:5px solid #7a4cdb}.question-card:nth-child(4n){border-top:5px solid #e84665}
.mind-map{margin:28px 0;padding:20px;border-radius:14px;background:linear-gradient(135deg,#fff8d5,#ebfaff 48%,#f6eaff);border:2px solid #7754cc;box-shadow:0 10px 26px #54359a22}.mind-map>h2{margin:0 0 18px;color:#5b35ae}.mind-root{display:flex;justify-content:center;margin-bottom:22px}.mind-root span{padding:12px 20px;border-radius:999px;background:linear-gradient(135deg,#6d42d8,#167bd8);color:#fff;font-weight:800;box-shadow:0 6px 15px #5941aa44}.mind-branches{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.mind-branch{position:relative;padding:14px;border-radius:11px;background:#fff;border-top:6px solid var(--branch);box-shadow:0 5px 14px #24324b17}.mind-branch:before{content:"↓";position:absolute;top:-31px;left:50%;color:var(--branch);font-size:22px;font-weight:900}.mind-branch h3{margin:0 0 8px;color:var(--branch);font-size:16px}.mind-branch ul{margin:0;padding-left:18px}.mind-branch li{margin:4px 0}.mind-branch:nth-child(6n+1){--branch:#ec3f64}.mind-branch:nth-child(6n+2){--branch:#ff861c}.mind-branch:nth-child(6n+3){--branch:#00a88f}.mind-branch:nth-child(6n+4){--branch:#2578dc}.mind-branch:nth-child(6n+5){--branch:#7448ce}.mind-branch:nth-child(6n){--branch:#d33caa}
:root[data-theme="dark"] .mind-map{background:linear-gradient(135deg,#302c18,#1c3040,#302443)}:root[data-theme="dark"] .mind-branch{background:#232a35}:root[data-theme="dark"] .background-en{color:#c9dbff}
@media(max-width:700px){.mind-map{padding:14px}.mind-branches{grid-template-columns:1fr 1fr}.mind-branch:before{display:none}}@media(max-width:440px){.mind-branches{grid-template-columns:1fr}}

.header-progress{align-items:center}
.dialog-head,.custom-dialog-actions{display:flex;flex-wrap:wrap;gap:8px}
#clear-custom:disabled{opacity:.55;cursor:default}

.header-progress #clear-known,
:root[data-theme="dark"] .header-progress #clear-known {
  background: transparent;
  border: 0;
  padding: 0;
  min-height: 0;
  color: inherit;
  font: inherit;
  white-space: nowrap;
}
#clear-known:enabled:hover{text-decoration:underline}
#clear-known:disabled{cursor:default}
.quiz-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}
.quiz-heading h2{margin:0}
#reset-exercises{white-space:nowrap}

.audio-player-panel{flex:0 1 560px;min-width:0}
.media-controls{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px 8px;
  padding:6px 8px;
  color:var(--ink);
  background:var(--soft);
  border:1px solid var(--line);
  border-radius:8px;
}
.video-player-panel .media-controls{margin-top:6px}
.media-controls button{min-height:34px;padding:4px 8px;white-space:nowrap}
.media-time{font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}
.media-controls [data-media-seek]{flex:1 1 96px;width:96px;min-width:60px}
.media-controls [data-media-volume]{width:58px}
.media-controls input{padding:0;margin:0;accent-color:var(--teal)}
.media-error{flex-basis:100%;color:var(--muted);font-size:13px}
.video-player-panel:fullscreen{
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:#000;
}
.video-player-panel:fullscreen video{flex:1;min-height:0;object-fit:contain}
.video-player-panel:fullscreen .media-controls{flex-shrink:0}

.media-controls button:not([hidden]){
  display:inline-grid;
  place-items:center;
  flex:0 0 36px;
  width:36px;
  height:36px;
  padding:6px;
}
.media-controls button svg{width:20px;height:20px}
.media-controls [data-media-captions][aria-pressed="true"]{
  background:var(--teal);
  border-color:var(--teal);
  color:#fff;
}
