/* Circle depth without changing the original river, temples or node layout. */
.nodePartBadge{position:absolute;bottom:-2px;right:-5px;z-index:3;min-width:34px;min-height:23px;padding:3px 6px;display:grid;place-items:center;border-radius:9px;background:#1a424b;border:1px solid #51847f;color:#d5eee4;font:750 11px/1.4 'DM Sans',sans-serif;letter-spacing:.2px;white-space:nowrap;pointer-events:none}.trailNode.hasNodeLessons:after{content:'';position:absolute;inset:-7px;border-radius:50%;background:conic-gradient(#56d6b7 var(--node-progress),#4e747d45 0);mask:radial-gradient(transparent 66%,#000 68%);-webkit-mask:radial-gradient(transparent 66%,#000 68%);pointer-events:none}.nodePartSegments{display:flex;gap:7px;justify-content:center;margin:18px 0}.nodePartSegments>span{height:7px;border-radius:6px;background:#335962;flex:1;max-width:85px}.nodePartSegments>span.done{background:#56d6b7}.nodePartSegments>span.current{background:#719b98}.nodePeekLessons{list-style:none;padding:0;margin:17px 0;display:grid;gap:12px;text-align:left}.nodePeekLessons li{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:13px;line-height:1.5}.nodePeekLessons li>span{flex:none;width:23px;height:23px;border-radius:8px;display:grid;place-items:center;background:var(--surface2);border:1px solid var(--border);font-size:11px}.nodePeekLessons li>span svg{width:14px;height:14px}.nodePeekLessons .done{color:var(--green)}.nodePeekLessons .current{color:var(--text);font-weight:750}.pathPeek #viewNodeLessons{font-size:12px;display:block;margin:0 auto 12px;color:var(--blue)}.nodeLessonIntro{display:flex;align-items:center;justify-content:space-between;gap:13px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface);margin:0 0 23px;font-size:12px;line-height:1.5}.nodeLessonIntro strong{color:var(--green);flex:none}.nodeLessonIntro span{color:var(--muted);text-align:right}.nodeIntroBuddy{width:115px;height:105px;margin:7px auto 19px}.nodeIntroBuddy svg{width:100%;height:100%}.nodeKnownModels{margin:20px 0;color:var(--muted);font-size:13px;line-height:1.7}.nodeKnownModels summary,.nodeOptionalModel summary{padding:10px 0;color:var(--blue);cursor:pointer;font-size:13px;line-height:1.6}.nodeKnownModels>div{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--border);background:var(--surface);padding:14px;border-radius:16px;margin-top:10px}.nodeKnownModels>div>span{display:grid;gap:7px;min-width:0}.nodeKnownModels strong{font-size:19px;color:#d8bee7;line-height:1.5}.nodeKnownModels .thai{color:var(--text);font-size:23px;line-height:1.7}.nodeKnownModels small{font-size:13px;color:var(--muted)}.nodeKnownModels button{width:40px;height:43px;flex:none;display:grid;place-items:center;background:var(--surface2);border:1px solid var(--border);border-radius:12px;color:var(--green)}.nodeKnownModels svg{width:20px;height:20px}.nodeOptionalModel{font-size:14px;line-height:1.7;margin:12px 0}.nodePartResult>p{line-height:1.7;font-size:14px}.nodePartResult>button{display:block;width:100%;margin:12px 0}.nodePartComplete{text-align:center;margin:14px 0;padding:15px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.nodePartComplete strong{font-size:15px;color:var(--green)}.nodePartComplete small{display:block;font-size:12px;line-height:1.7;color:var(--muted)}.nodePartComplete .nodePartSegments{margin-bottom:2px}.nodeChangCall{display:flex;align-items:center;gap:14px;margin:15px 0 20px}.nodeChangCall>div{width:105px;height:105px;flex:none}.nodeChangCall svg{width:100%;height:100%}.nodeChangCall>span{border:1px solid var(--border);background:var(--surface);padding:14px 17px;border-radius:19px 19px 19px 3px;font-size:16px;line-height:1.5;color:var(--text)}.nodeChangReply{display:grid;gap:6px;background:#254b50;border:1px solid #44766e;color:#c9eddf;padding:12px 15px;border-radius:16px;margin-top:10px;font-size:13px;line-height:1.6}.nodeChangReply strong{font-size:11px;color:#6ce0be}.nodeGameChang{position:absolute;left:16px;bottom:12px;width:116px;height:128px}.nodeGameChang svg{width:100%;height:100%}.nodeGameSituation{position:absolute;left:135px;right:15px;top:20px;margin:0;padding:13px;border-radius:18px 18px 18px 3px;background:#28505a;color:#d2e9e0;font-size:14px;line-height:1.6}.nodeGamePrompt{font-size:18px!important;line-height:1.6!important;color:var(--text)!important;margin:15px 0}.miniAnswerBadge{width:33px;height:33px;border-radius:10px;display:grid;place-items:center;background:#315e64;color:#8bd9c3}.miniAnswerBadge svg{width:20px;height:20px}.miniScene.module+.nodeGamePrompt{margin-top:10px}.miniMemoryFront{font-size:15px;line-height:1.5}.miniMemoryCard{min-height:112px;height:auto}.miniMemoryBack{min-height:84px}.nodeLessonsSheet{padding:24px!important;max-height:calc(100dvh - 38px);overflow:auto;scrollbar-width:none}.nodeLessonsSheet .sheetHeader{display:flex;justify-content:space-between;align-items:center;gap:15px}.nodeLessonsSheet h2{font-size:26px;line-height:1.2;margin:0}.nodeLessonsSheet .close{width:38px;height:38px;flex:none;display:grid;place-items:center;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--muted)}.nodeLessonsSheet .close svg{width:18px;height:18px}.nodeLessonsSheet>p{color:var(--muted);line-height:1.7;font-size:14px}.nodeLessonList{display:grid;gap:11px}.nodeLessonList>button{display:flex;align-items:center;gap:13px;text-align:left;padding:15px;border:1px solid var(--border);border-bottom-width:3px;border-radius:17px;background:var(--surface);color:var(--text);min-height:86px}.nodeLessonList>button>span{display:grid;place-items:center;width:30px;height:30px;flex:none;border-radius:10px;background:var(--surface2);color:var(--green);font-size:13px}.nodeLessonList>button>span svg{width:19px;height:19px}.nodeLessonList>button>div{flex:1;min-width:0}.nodeLessonList strong{display:block;font-size:15px;line-height:1.5}.nodeLessonList small{display:block;color:var(--muted);font-size:12px;line-height:1.6;margin-top:5px}.nodeLessonList>button>svg{width:17px;height:17px;flex:none}.nodeLessonList>button:disabled{opacity:.5}.nodeLessonList>button:focus-visible{outline:2px solid var(--green);outline-offset:3px}@media(max-width:380px){.nodeLessonIntro{font-size:11px}.nodeChangCall>div{width:82px;height:90px}.nodeChangCall>span{font-size:14px}.nodePeekLessons{gap:9px}.nodePeekLessons li{font-size:12px}}html[data-theme="light"] .nodeKnownModels strong{color:var(--reading)}
.focusLesson:has(.nodeChangCall) .audioBtn.playing{background:#245d51!important;border-color:#59d6b7!important;color:#c5f5df!important}.focusLesson:has(.nodeChangCall) .audioBtn.playing span{color:inherit!important;-webkit-text-fill-color:inherit!important}.nodeChangTranscript{min-height:62px!important;height:70px!important;font-size:23px!important;margin:12px 0!important;line-height:1.6!important}.nodeChangTranscript::placeholder{font-size:13px;line-height:2.3;color:var(--muted);opacity:1}

.miniCelebrate .nodeGameChang{animation:nodeChangCheer .55s ease both}.miniOops .nodeGameChang{animation:nodeChangOops .35s ease both}@keyframes nodeChangCheer{35%{transform:translateY(-10px) rotate(-4deg)}70%{transform:translateY(-3px) rotate(4deg)}}@keyframes nodeChangOops{30%{transform:rotate(-5deg)}65%{transform:rotate(5deg)}}@media(prefers-reduced-motion:reduce){.miniCelebrate .nodeGameChang,.miniOops .nodeGameChang{animation:none}}
/* Compact lesson launch: one topic, one action. The full syllabus stays behind View steps. */
html[data-design="2026"] .pathPopover #pathPeek.nodeStartCard{padding:23px 22px 14px;background:#43d5b1;color:#103d3e;border:1px solid #6de6c6;border-bottom:5px solid #279c87;border-radius:20px;box-shadow:0 18px 44px #031e3345}
html[data-design="2026"] .pathPopover .nodeStartCard .peekClose{top:10px;right:10px;background:transparent;color:#164f4a;opacity:1;width:36px;height:36px;padding:9px}
html[data-design="2026"] .pathPopover .nodeStartCard>small.nodeStartMeta{font-size:12px;line-height:1.5;color:#1f5d53;font-weight:700}
html[data-design="2026"] .pathPopover .nodeStartCard>h2{font-size:24px;line-height:1.17;font-weight:750;letter-spacing:-.45px;margin:9px 0 8px;color:#103d3e}
html[data-design="2026"] .pathPopover .nodeStartCard>p.nodeStartTopic{font-size:14px;line-height:1.45;margin:0 0 17px;color:#205b53}
.nodeStartCard .nodePartSegments{margin:0 0 20px;gap:6px;justify-content:flex-start}.nodeStartCard .nodePartSegments>span{max-width:none;height:6px;background:#1b7b6b36}.nodeStartCard .nodePartSegments>span.done{background:#155d54}.nodeStartCard .nodePartSegments>span.current{background:#f3fff5}
html[data-design="2026"] .pathPopover .nodeStartCard>.primary{min-height:49px;border-radius:13px;background:#f4fff9;color:#166354;box-shadow:0 4px 0 #209f87;font-size:14px;font-weight:800;letter-spacing:.15px}
html[data-design="2026"] .pathPopover .nodeStartCard>#viewNodeLessons{display:flex;justify-content:center;align-items:center;gap:5px;margin:15px auto 0;padding:5px 10px;min-height:36px;color:#15574e;font-weight:700;font-size:12px}
.nodeStartCard #viewNodeLessons .uiIcon{width:15px;height:15px}.nodeStartCard button:focus-visible{outline:3px solid #103d3e!important;outline-offset:3px}
html[data-design="2026"] .pathPopover .nodeStartLocked{filter:saturate(.25)}
@media(max-width:360px){html[data-design="2026"] .pathPopover #pathPeek.nodeStartCard{padding:21px 18px 12px}html[data-design="2026"] .pathPopover .nodeStartCard>h2{font-size:22px}}

/* Locked steps use the same compact, anchored invitation as lesson cards. */
html[data-design] .pathPopover .nodeLockedCard .nodeStartTopic{font-size:14px;line-height:1.5;margin:10px 0 16px}
