:root{--ink:#263a32;--green:#2b6754;--muted:#65756c;--line:#dce5de;--wash:#edf3ed;--paper:#fff;--amber:#8f692e;--amberwash:#fbf3e5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:#f5f7f3;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif}button,select,textarea{font:inherit}button,a,summary,input,select{touch-action:manipulation}button{border:1px solid var(--line);background:#fff;color:var(--ink);padding:9px 13px;border-radius:7px;font-size:13px;cursor:pointer}button:hover{border-color:#7d9b8a}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #98bca9;outline-offset:3px}a{color:var(--green);text-underline-offset:4px}button.primary{background:var(--green);color:#fff;border-color:var(--green);min-width:102px}.plain{border:0;background:transparent}.small{padding:6px 10px;font-size:12px;white-space:nowrap}.top{display:flex;align-items:center;gap:24px;min-height:62px;padding:9px 26px;border-bottom:1px solid var(--line);background:#fcfdfb;position:sticky;top:0;z-index:3}.brand{font-size:18px;font-weight:700;text-decoration:none;white-space:nowrap}.top nav{display:flex;gap:3px;flex:1}.top nav button{border:0;background:transparent;color:var(--muted);padding:8px 12px}.top nav button[aria-current=page]{color:var(--green);background:#e8f0e8;font-weight:650}main{max-width:1032px;margin:auto;padding:30px 40px 125px}.chapter-heading>span{font-size:12px;color:var(--muted)}h1{font-size:29px;line-height:1.5;margin:11px 0 12px;letter-spacing:0}#lead{font-size:19px;line-height:1.8;color:var(--green);margin:0 0 24px}figure{margin:0 0 27px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:21px 24px}.figure-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.figure-head figcaption{font-size:15px;font-weight:600;color:#52665a}.chain{display:grid;grid-template-columns:1.1fr 28px 1fr 28px 1.1fr;align-items:stretch}.node{background:#f2f5ef;padding:17px 20px;border-top:3px solid #bccfbe;transition:background .25s,border-color .25s}.node small{font-size:12px;color:#65776a;display:block}.node b{display:block;font-size:21px;font-weight:650;margin:8px 0}.node p{font-size:14px;line-height:1.7;margin:0}.arrow{display:flex;justify-content:center;align-items:center;color:#869b8c;font-size:21px}.node.hot,.highlight{border-color:var(--green)!important;background:#e8f1e5!important}.scope{font-size:13px;color:var(--muted);margin:0 0 14px}.task-line{display:flex;align-items:baseline;gap:13px;padding:0 0 17px;margin-bottom:17px;border-bottom:1px solid var(--line);font-size:15px;line-height:1.6}.task-line small{color:var(--muted);white-space:nowrap;font-size:12px}.execution{display:flex;align-items:center;gap:12px;font-size:14px;margin-top:17px;border-top:1px solid var(--line);padding-top:15px;color:var(--muted)}.execution b{font-weight:550;color:var(--ink)}.fig-bottom{display:flex;align-items:flex-start;gap:20px;min-height:43px;margin-top:20px;padding-top:15px;border-top:1px solid #e8eee8}.fig-bottom p{font-size:14px;line-height:1.7;margin:0;color:var(--green)}#figSteps{display:flex;gap:7px;padding-top:3px;flex-shrink:0}#figSteps button{padding:0;width:19px;height:19px;font-size:10px;border-radius:50%;color:#667d6f}#figSteps button[aria-pressed=true]{background:var(--green);color:#fff;border-color:var(--green)}.training{display:grid;grid-template-columns:1fr 1fr;gap:20px}.training section{padding:16px 19px;background:#f2f5ef;border-top:3px solid #bfd0bd}.training .row-label{font-size:12px;color:var(--muted);margin-bottom:12px}.training p{margin:7px 0;font-size:15px;line-height:1.7}.training b{font-size:19px}.training section.current{border-color:var(--green);background:#e9f1e6}.history-line{font-size:13px;line-height:1.8;color:var(--muted);padding-bottom:15px;margin-bottom:16px;border-bottom:1px solid var(--line)}.token-input{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.token-input select{max-width:100%;padding:9px 12px;border:1px solid #d0dbd1;border-radius:6px;background:#fff;color:var(--ink);font-size:15px;min-width:0}.token-input strong{font-size:14px;white-space:nowrap;color:var(--green)}.tokens{display:flex;gap:6px;flex-wrap:wrap;min-height:54px;align-items:center}.token{padding:10px 12px;border:1px solid #b7cdbb;border-radius:5px;font-size:20px;background:#edf4e7;white-space:pre-wrap}.token:nth-child(2n){background:#eaf1f4;border-color:#bed0d6}.token:nth-child(3n){background:#f8f0df;border-color:#dbcfb0}.token-id{display:block;font-size:10px;color:#617466;margin-top:4px}.token-steps{display:flex;gap:12px;align-items:center;margin-top:18px;font-size:14px;color:var(--muted)}.token-steps b{color:var(--green);font-weight:550}.token-note{font-size:12px;line-height:1.7;color:var(--muted);margin:13px 0 0}.figure-body{min-height:190px}.cache-control{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px}.cache-control button{font-size:12px;padding:7px 12px}.cache-control button[aria-pressed=true]{background:var(--wash);border-color:#8eac96;color:var(--green)}.request{display:grid;grid-template-columns:61px 1fr;gap:12px;align-items:center;margin:11px 0}.request>small{font-size:12px;color:var(--muted)}.bar{display:flex;min-height:46px;gap:4px}.prefix{flex:3.3;background:#e7eee5;padding:12px 13px;font-size:13px;border:1px solid #cbd9c7;transition:background .3s}.suffix{flex:2;background:#f0f3f0;font-size:12px;line-height:1.6;padding:10px 13px;border:1px solid #dce3dc}.prefix.reused{background:#dcebd8;border-color:#7ca174;color:#2e623c}.prefix.changed{background:#fbf1df;border-color:#d5b77b;color:#876128}.cache-output{font-size:13px;margin:14px 0 0;padding-left:73px;color:var(--muted)}#text{padding:0 3px}.block{border-top:1px solid var(--line);padding:21px 15px 19px 0;position:relative}.block:first-child{border-top:0;padding-top:3px}.block h2{font-size:19px;line-height:1.6;margin:0 0 9px;font-weight:650}.block p{font-size:18px;line-height:1.9;margin:0;letter-spacing:0;max-width:890px}.block.active:before{content:"";position:absolute;left:-17px;top:25px;bottom:20px;width:3px;border-radius:2px;background:#8eb39a}.block:first-child.active:before{top:6px}.block.active h2{color:var(--green)}details{border-top:1px solid var(--line);margin-top:14px}summary{cursor:pointer;list-style:none;color:var(--green);font-size:14px;padding:18px 0}summary::-webkit-details-marker{display:none}summary span{float:right;color:var(--muted)}details[open]>summary span{transform:rotate(45deg)}#deepBody{padding:0 0 12px}#deepBody section{margin:7px 0 22px}#deepBody h3{font-size:16px;line-height:1.7;margin:0 0 7px}#deepBody p{font-size:16px;line-height:1.85;color:#485d51;margin:0}.source-compact{border-top:1px solid var(--line);padding-top:18px;display:grid;gap:12px}.source-compact a{font-size:14px;line-height:1.7}.source-compact small{display:block;color:var(--muted);font-size:12px}.next-reading{margin-top:19px;display:flex;justify-content:flex-end;font-size:14px}.player{position:fixed;bottom:0;left:0;width:100%;background:#fcfdfb;border-top:1px solid var(--line);z-index:4}.player-row{display:flex;gap:9px;align-items:center;max-width:1032px;margin:auto;padding:10px 39px 13px}.track{max-width:1032px;margin:auto;padding:0 39px;height:11px;display:flex;align-items:center}#seek{width:100%;accent-color:var(--green);height:3px;cursor:pointer;margin:0}#time{font-size:12px;color:var(--muted);margin-left:auto;font-variant-numeric:tabular-nums;white-space:nowrap}.rate-label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);margin-left:9px}.rate-label select{font-size:12px;border:0;background:transparent;color:var(--ink);padding:4px}.player #all[aria-pressed=true]{background:var(--wash);border-color:#96b49d;color:var(--green)}#audioError{max-width:950px;margin:0 auto 10px;color:#875f2c;font-size:13px}dialog{width:min(820px,calc(100vw - 32px));max-height:85dvh;padding:25px 30px;border:1px solid #d5dfd3;border-radius:12px;background:#fcfdfb;color:var(--ink)}dialog::backdrop{background:#1f372967}.dialog-head{display:flex;justify-content:space-between;align-items:center;position:sticky;top:-25px;background:#fcfdfb;padding:6px 0 13px;z-index:1}.dialog-head h2{margin:0;font-size:22px}.dialog-head button{padding:3px 10px;font-size:24px;background:transparent;border:0}.intro{color:var(--muted);font-size:14px;line-height:1.8}#sourceList section{border-top:1px solid var(--line);padding:18px 0}#sourceList h3{font-size:17px;margin:0 0 9px;line-height:1.6}#sourceList small{color:var(--muted);font-size:12px}#sourceList p{font-size:14px;line-height:1.8;margin:9px 0 0}#sourceList .limit{font-size:12px;color:#7c745f}#reflection{margin-top:22px;padding:23px 24px;background:#edf3e9;border-radius:8px}#reflection h2{font-size:19px;margin:0 0 12px}#reflection p{font-size:16px;line-height:1.85;margin:0 0 15px}textarea{width:100%;resize:vertical;border:1px solid #c3d2bd;border-radius:6px;background:#fff;color:var(--ink);padding:12px;font-size:16px;line-height:1.8}#reflection summary{padding-bottom:0}.all-read{margin-top:12px;font-size:13px;color:var(--muted)}[hidden]{display:none!important}
@media(min-width:1500px){main{max-width:1100px;padding-top:36px}.player-row,.track{max-width:1100px}.block p{max-width:930px}}
@media(max-width:760px){.top{padding:10px 16px;gap:12px;flex-wrap:wrap}.brand{font-size:16px}.top nav{order:3;flex-basis:100%;gap:0}.top nav button{font-size:12px;flex:1;padding:7px 5px}.top>#readingList{margin-left:auto;font-size:12px;padding:4px}.top{position:static}main{padding:23px 21px 132px}h1{font-size:25px}#lead{font-size:17px;margin-bottom:20px}figure{padding:17px 16px;margin-bottom:24px}.figure-head{margin-bottom:15px;gap:10px}.figure-head figcaption{font-size:13px}.chain{grid-template-columns:1fr 18px 1fr 18px 1fr}.node{padding:12px 9px}.node b{font-size:17px}.node p{font-size:12px;line-height:1.65}.node small{font-size:10px}.arrow{font-size:16px}.task-line{display:block;font-size:14px}.task-line small{display:block;margin-bottom:5px}.execution{gap:8px;flex-wrap:wrap;font-size:12px}.fig-bottom{display:block;margin-top:16px;padding-top:12px}.fig-bottom p{font-size:13px;margin-top:10px}.block{padding:18px 0}.block p{font-size:17px;line-height:1.9}.block h2{font-size:18px}.block.active:before{left:-10px}.player-row{padding:9px 16px 14px;gap:6px;flex-wrap:wrap}.player-row button{font-size:12px;padding:9px 10px}.player button.primary{min-width:88px}.track{padding:0 17px}#time{order:5;margin-left:0;font-size:11px;flex:1}.rate-label{order:6;margin-left:auto;font-size:11px}.rate-label span{display:none}.player-row #all{padding-left:9px;padding-right:9px}.training{gap:10px}.training section{padding:12px 11px}.training b{font-size:16px}.training p{font-size:13px}.token-input{gap:9px;align-items:start;flex-direction:column}.token-input select{width:100%;font-size:14px}.token-input strong{font-size:12px}.token{font-size:17px;padding:8px 10px}.token-steps{gap:7px;font-size:12px;flex-wrap:wrap}.cache-control{gap:4px}.cache-control button{font-size:11px;padding:7px 8px}.request{grid-template-columns:39px 1fr;gap:7px}.request>small{font-size:10px}.bar{flex-wrap:wrap}.prefix,.suffix{font-size:12px;padding:10px;flex-basis:100%}.cache-output{padding-left:46px;font-size:12px}.history-line{font-size:12px}dialog{padding:18px 21px}.dialog-head{top:-18px}#reflection{padding:19px 17px}#reflection p{font-size:15px}.next-reading{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before{transition:none!important;animation:none!important}}
/* Keep the first explanation in view before the supporting figure. */
main{padding-top:23px}.chapter-heading #lead{margin-bottom:17px}#introText{padding:0 3px}#introText .block{padding-bottom:20px}figure{padding:16px 20px}.figure-head{margin-bottom:13px}.scope{margin-bottom:10px}.task-line{padding-bottom:10px;margin-bottom:13px}.node{padding:12px 16px}.node b{margin:5px 0;font-size:20px}.node p{font-size:13px;line-height:1.65}.execution{padding-top:11px;margin-top:13px;font-size:12px}.fig-bottom{min-height:0;margin-top:13px;padding-top:11px}.fig-bottom p{font-size:13px}.readingLead{margin-bottom:12px}
@media(min-width:1500px){main{padding-top:25px}}
@media(max-width:760px){#introText .block{padding-bottom:19px}.history-line span{display:block;float:none!important;margin-top:4px}figure{padding:15px}.node{padding:10px 8px}.node b{font-size:17px}.node p{font-size:12px}.scope{font-size:12px}.execution{font-size:12px}}
.top nav button{white-space:nowrap}
@media(max-width:380px){.top nav button{font-size:11px;padding:7px 3px}}
.course-picker{display:flex;align-items:center;gap:10px;flex:1;min-width:0;font-size:12px;color:var(--muted)}.course-picker select{border:1px solid var(--line);border-radius:6px;background:#fff;padding:8px 11px;color:var(--ink);font-size:13px;max-width:280px;min-width:190px}.scenario-tabs,.device-tabs{display:flex;gap:6px;flex-wrap:wrap}.scenario-tabs button[aria-pressed=true],.device-tabs button[aria-pressed=true]{background:var(--wash);border-color:#89aa96;color:var(--green)}.scenario-question{font-size:17px;line-height:1.8;margin:18px 0 14px}.decision-result{border-left:3px solid #87aa8c;padding:10px 15px;background:#f0f5ed}.decision-result b{font-size:19px;color:var(--green)}.decision-result p{font-size:15px;line-height:1.8;margin:6px 0}.mode-rows{display:grid;gap:0}.mode-rows section{display:grid;grid-template-columns:90px 1fr;gap:17px;padding:14px 16px;border-left:3px solid transparent;border-bottom:1px solid #e4ebe3}.mode-rows section:last-child{border-bottom:0}.mode-rows .current{border-left-color:var(--green);background:#eef4ea}.mode-rows b{font-size:18px;line-height:1.8;color:var(--green)}.mode-rows strong{font-size:16px;font-weight:600}.mode-rows p{font-size:14px;line-height:1.8;margin:5px 0 0}.tool-rows section{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:13px 15px;border-left:3px solid transparent;border-bottom:1px solid var(--line)}.tool-rows section.current{border-left-color:var(--green);background:#edf4e8}.tool-rows b{font-size:17px;line-height:1.8}.tool-rows p{font-size:14px;line-height:1.8;margin:0}.example-links,.kit-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:18px;font-size:14px}.example-links{border-top:1px solid var(--line);padding-top:15px}.practice-kit{border-top:1px solid var(--line);padding-top:20px;margin-top:15px}.practice-kit>h2{font-size:21px;margin:0 0 12px}.kit-links{margin-top:0;margin-bottom:20px}.prompt-card{margin:17px 0 19px}.prompt-card>div{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}.prompt-card h3{font-size:16px;margin:0}.prompt-card textarea{font-size:15px;background:#fcfdfb;line-height:1.85;min-height:152px}.copy-status{font-size:12px;color:var(--green);line-height:1.8;margin:6px 0 0}.copy-status:empty{display:none}.extra-details{margin-top:16px}.reference-shot{display:block;max-width:100%;height:auto;border:1px solid var(--line);border-radius:7px}.shortcut-list{margin:17px 0 0}.shortcut-list>div{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--line);font-size:15px}.shortcut-list dt{color:#546b5a}.shortcut-list dd{margin:0;font-weight:600;font-size:14px}.block,button,textarea,summary{scroll-margin-bottom:125px}
@media(max-width:760px){.course-picker{order:3;flex-basis:100%;gap:12px}.course-picker select{flex:1;max-width:100%;font-size:13px}.scenario-tabs button{font-size:12px;padding:7px 9px}.scenario-question{font-size:16px}.decision-result p{font-size:14px}.mode-rows section{grid-template-columns:62px 1fr;gap:10px;padding:13px 9px}.mode-rows b{font-size:16px}.mode-rows strong{font-size:15px}.mode-rows p{font-size:13px}.tool-rows section{grid-template-columns:82px 1fr;gap:9px;padding:12px 8px}.tool-rows b{font-size:15px}.tool-rows p{font-size:13px}.example-links,.kit-links{font-size:13px;gap:13px}.prompt-card textarea{font-size:15px}.practice-kit>h2{font-size:20px}}

/* First lesson: one familiar request before the terminology. */
.first-scene{max-width:790px;margin:0 auto}.first-app{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--line)}.first-app strong{font-size:23px}.first-app>span{font-size:13px;color:var(--muted)}.first-request{max-width:650px;margin:21px 0 0 auto;border:1px solid #d6e2d2;border-radius:12px 12px 3px 12px;background:#f0f5ed;padding:19px 22px}.first-file{font-size:13px;display:inline-block;padding:5px 9px;border:1px solid #d4dfd2;background:#fff;border-radius:5px;color:#526b58}.first-request p{font-size:20px;line-height:1.8;margin:13px 0 0}.first-takeaway{font-size:15px;line-height:1.8;color:var(--green);margin:19px 0 0}.first-context{font-size:14px;color:var(--muted);margin:18px 0}.first-model{border-left:3px solid var(--green);padding:17px 22px;background:#edf4e8}.first-model>div{display:flex;justify-content:space-between;align-items:baseline;gap:18px}.first-model span{font-size:13px;color:#5c745f}.first-model strong{font-size:21px}.first-model p{font-size:17px;line-height:1.8;margin:12px 0 0}.first-continuation{font-size:20px;line-height:1.8;margin:18px 0}.first-actions{display:flex;align-items:center;gap:18px;border-block:1px solid var(--line);padding:18px 0}.first-actions>span{flex:1;font-size:13px;color:var(--muted);line-height:1.8}.first-actions b{display:block;font-size:18px;color:var(--ink);margin-bottom:6px}.first-actions i{font-style:normal;color:#8aa38d}@media(max-width:650px){.first-app strong{font-size:21px}.first-app>span{font-size:12px}.first-request{padding:16px;margin-top:17px}.first-request p,.first-continuation{font-size:18px}.first-model{padding:15px 17px}.first-model>div{display:grid;gap:8px}.first-model strong{font-size:19px}.first-model p{font-size:15px}.first-actions{gap:9px}.first-actions b{font-size:16px}.first-actions>span{font-size:12px}.first-takeaway{font-size:14px}}

@media(max-width:650px){#title{text-wrap:balance}}

.title-phrase{display:inline-block}

/* Main reading: preserve the canonical wording, expose its structure. */
.block-body{font-size:18px;line-height:1.85}.block-body p{font-size:inherit;line-height:inherit;max-width:870px}.block-body p+p,.block-body ul+p{margin-top:12px}.block-body ul{padding-left:24px;margin:10px 0 12px;max-width:870px}.block-body li{padding-left:3px;font-size:inherit;line-height:inherit}.block-body li+li{margin-top:5px}.block-body li::marker{color:#738f78}.block-body strong{font-weight:750;color:#234e3a}.block-body strong .term{font-weight:inherit;color:inherit}.block-body .term{font-size:inherit}.block h2{font-size:20px;line-height:1.55;margin-bottom:12px}.block{padding-top:23px;padding-bottom:24px}.block.active:before{background:#8eb39a}.chapter-heading h1{max-width:900px}#lead{color:#486b56}
@media(max-width:760px){.block-body{font-size:17px;line-height:1.85}.block h2{font-size:18px}.block-body p+p,.block-body ul+p{margin-top:10px}.block-body ul{padding-left:21px}.block{padding-block:18px}}

.hands-on-link{display:inline-block;margin-top:12px;font-size:15px;color:var(--green);text-decoration:underline;text-underline-offset:4px}.guide-reading strong{font-weight:750}

#followReading{color:var(--green)}
@media(max-width:760px){.player-row #followReading{order:5;padding:2px 0;min-height:24px;font-size:12px}.player-row #time{min-height:24px;display:flex;align-items:center}}

.summary-shortcut{margin:0 0 20px;color:var(--muted);font-size:14px;line-height:1.7}.summary-shortcut a{margin-left:8px;font-weight:600}.course-summary{border-top:2px solid #a9c0af;padding-top:25px;margin-top:32px;scroll-margin-top:86px}.course-summary h2{font-size:25px;line-height:1.5;margin:0 0 10px}.course-summary h2:focus{outline:none}.summary-lead{font-size:16px;line-height:1.8;color:var(--muted);margin:0 0 16px}.course-summary dl{margin:0}.course-summary dl>div{display:grid;grid-template-columns:142px minmax(0,1fr);gap:16px;padding:15px 0;border-top:1px solid var(--line)}.course-summary dt{font-size:16px;font-weight:650;line-height:1.8}.course-summary dt a{text-decoration:none}.course-summary dt a:hover{text-decoration:underline}.course-summary dt span{font-weight:400;font-size:12px}.course-summary dd{margin:0;font-size:16px;line-height:1.85}.summary-takeaway{border-top:1px solid var(--line);padding-top:18px;margin:5px 0 10px;font-size:16px;line-height:1.85}.summary-takeaway strong{display:block;color:var(--green);margin-bottom:4px}.summary-practice{font-size:15px;line-height:1.8;color:var(--muted);margin:0 0 16px}.summary-links{display:flex;gap:24px;flex-wrap:wrap;font-size:14px}@media(max-width:760px){.course-summary{scroll-margin-top:18px;padding-top:20px;margin-top:24px}.course-summary h2{font-size:23px}.course-summary dl>div{grid-template-columns:1fr;gap:4px;padding:13px 0}.course-summary dd{font-size:15px}.summary-shortcut{margin-bottom:16px}}

.summary-view .player .track,.summary-view .player #play,.summary-view .player #all,.summary-view .player #followReading,.summary-view .player #time,.summary-view .player .rate-label{display:none!important}.summary-view .player-row{justify-content:space-between}

/* Reading and practice share a viewport; supplemental work keeps its own scroll. */
#main{max-width:1480px;padding:26px 32px 132px;display:grid;grid-template-columns:minmax(0,1fr) 352px;gap:38px;align-items:start}
#readingContent{min-width:0}
#studyRail{position:sticky;top:calc(var(--course-header-height,62px) + 20px);min-width:0;max-height:calc(100dvh - var(--course-header-height,62px) - var(--course-player-height,82px) - 40px);display:flex;flex-direction:column;background:#fff;border:1px solid var(--ui-line);border-radius:var(--ui-radius);overflow:hidden}
.study-rail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px 10px;flex-shrink:0}
#studyLesson{font-size:12px;line-height:1.6;color:var(--muted)}
#closeStudy{display:none!important}
.study-tabs{display:flex;gap:4px;padding:0 14px 10px;border-bottom:1px solid var(--line);flex-shrink:0}
.study-tabs [role=tab]{flex:1;border-color:transparent;background:transparent;color:var(--muted);font-size:14px;font-weight:600}
.study-tabs [aria-selected=true]{background:var(--ui-selected);color:var(--green)}
.study-tabs [aria-selected=true]:hover{background:var(--ui-selected)}
.study-panel{overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;padding:4px 18px 18px;scroll-padding:12px;outline-offset:-3px}
#studyRail details{margin:0;border-top:1px solid var(--line)}
#studyRail #extras>.extra-details:first-child,#studyRail #deepBody>.knowledge-topic:first-child{border-top:0}
#studyRail summary{font-size:15px;line-height:1.65;font-weight:650;display:flex;align-items:flex-start;gap:10px;padding:15px 0;color:var(--ink);scroll-margin:12px 0}
#studyRail summary .ui-disclosure-icon{margin-top:3px;flex-shrink:0;margin-left:auto}
#studyRail details[open]>summary{color:var(--green)}
#studyRail p,#studyRail li{font-size:14px;line-height:1.85;margin:0 0 14px;color:#455b4e}
#studyRail .compare-label{font-size:12px;line-height:1.7;color:var(--muted);gap:7px;margin:14px 0 6px}
#studyRail textarea{font-size:15px;line-height:1.75;padding:10px 12px;min-height:112px;max-height:260px;scroll-margin:12px 0;resize:vertical}
#studyRail .draft-status{font-size:11px;line-height:1.6;color:var(--muted);display:block;min-height:18px;margin-top:1px}
#studyRail .reference-answer{border-top:0;margin-bottom:14px}
#studyRail .reference-answer>summary{font-size:13px;font-weight:600;justify-content:flex-start;color:var(--green);padding:7px 0}
#studyRail .reference-answer>summary .ui-disclosure-icon{margin-left:0;width:15px;margin-top:1px}
#studyRail .reference-answer>p{border-left:2px solid #9fbaa4;padding:0 0 0 12px;margin:8px 0 14px;font-size:14px}
#studyRail #deepBody{padding:0}
#studyRail #deepBody p{font-size:14px;line-height:1.9;margin:0 0 14px}
#studyRail .source-compact{border-top:0;padding:0 0 8px;gap:16px}
#studyRail .source-compact a{font-size:14px}
#studyRail .source-compact small{margin-top:4px;font-size:11px}
#studyRail .practice-kit{padding:0;margin:0;border:0}
#studyRail .demo-launch{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:12px 0 15px}
#studyRail .demo-launch a,#studyRail .kit-links a{font-size:13px}
#studyRail .kit-links{gap:12px;margin:0 0 14px}
#studyRail .prompt-card{margin:0 0 20px}
#studyRail .prompt-card>div{gap:8px}
#studyRail .prompt-card h3{font-size:14px;line-height:1.7}
#studyRail .prompt-card textarea{font-size:14px;min-height:148px}
#studyRail .copy-status{font-size:12px;margin:6px 0 0}
#studyRail .token-note{font-size:12px;line-height:1.8;margin:12px 0}
#studyRail ol{padding-left:20px;margin:0 0 14px}
#studyRail li{margin-bottom:10px}
#studyRail .shortcut-list>div{font-size:13px;padding:9px 0;gap:12px}
#studyRail .shortcut-list dd{font-size:12px}
#openStudy{display:none}
#studyDrawer{padding:0;margin:0 0 0 auto;top:0;right:0;left:auto;bottom:0;width:min(420px,calc(100vw - 20px));height:100dvh;max-height:100dvh;border:0;border-left:1px solid var(--line);border-radius:0;background:#fff;overflow:hidden}
#studyDrawer::backdrop{background:#1b332b55}
#studyDrawer #studyRail{position:static;max-height:none;height:100%;border:0;border-radius:0}
#studyDrawer #closeStudy{display:inline-flex!important}
#studyDrawer .study-panel{flex:1;padding-bottom:max(24px,env(safe-area-inset-bottom))}
body.study-drawer-open{overflow:hidden}
.summary-view #main{display:block;max-width:1100px}
.summary-view #studyRail,.summary-view #openStudy{display:none!important}
@media(min-width:1101px){.player-row,.track{max-width:1480px;padding-left:32px;padding-right:422px}#readingContent h1{font-size:28px}#readingContent #lead{font-size:18px}}
@media(max-width:1100px){
 #main{display:block;max-width:1032px;padding:25px 32px 145px}
 #main>#studyRail{display:none}
 #openStudy{display:block;position:fixed;right:22px;bottom:calc(var(--course-player-height,82px) + 14px);z-index:4;border-color:#9eb9a7;box-shadow:var(--ui-shadow);color:var(--green);font-weight:600}
}
@media(max-width:760px){#main{padding:23px 21px 178px}#openStudy{right:16px;bottom:calc(var(--course-player-height,114px) + 12px);font-size:13px;padding:9px 12px}#studyDrawer .study-rail-head{padding-top:max(16px,env(safe-area-inset-top))}#studyDrawer .study-panel{padding-left:18px;padding-right:18px}#studyDrawer textarea{font-size:16px}}

#studyRail .draft-status:empty{display:none}

@media(min-width:1101px){.summary-view .player-row{max-width:1100px;padding-inline:40px}}

/* Give each short-answer exercise a submit, compare and revision cycle. */
#studyRail .exercise-actions{display:grid;justify-items:start;gap:8px;margin:12px 0 6px}
#studyRail .exercise-actions [data-submit-practice]{font-size:13px;min-height:34px;padding:7px 12px}
#studyRail .exercise-feedback{font-size:12px;line-height:1.75;color:var(--muted);margin:0}
#studyRail .exercise-feedback:empty{display:none}
#studyRail .exercise-feedback.is-error{color:#9c3c32}
#studyRail textarea[aria-invalid=true]{border-color:#b85a50}
#studyRail .review-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 8px}
#studyRail .reference-answer[open]{padding-top:5px}
#studyRail .reference-answer>summary{scroll-margin:12px 0}

/* Skill resource uses the existing lesson/sidebar controls. */
.skill-resource-links{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:16px 0 4px;font-size:15px}.skill-resource-links a{color:var(--accent,#286651);text-underline-offset:4px}.skill-install-steps{padding-left:21px;margin:14px 0}.skill-install-steps li{margin:12px 0}.knowledge-topic code{font:13px/1.6 ui-monospace,monospace;overflow-wrap:anywhere}.knowledge-topic .prompt-card{margin:16px 0}.knowledge-topic .prompt-card textarea{min-height:168px}
