.learn-layout{display:grid;grid-template-columns:minmax(0,640px) 270px;gap:54px;justify-content:center}.path-intro{margin:0 0 25px}.path-intro h1{font-size:35px;margin:12px 0;word-break:keep-all}.path-intro p{color:var(--muted);font-size:13px}.chapter-banner{padding:23px 25px;border-radius:14px;background:#e7eedc;display:grid;gap:7px}.chapter-banner>span{font-size:10px;letter-spacing:2px;color:#788b61}.chapter-banner strong{font-size:19px}.chapter-banner small{font-size:11px;color:#7b866f}.today-lesson{background:#fff;border:1px solid #d9e2ce;box-shadow:0 6px 0 #e5eada;border-radius:16px;padding:24px;margin:21px 0 34px}.today-lesson h2{font-size:23px;margin:15px 0 7px}.today-lesson p{color:var(--muted);font-size:13px}.today-lesson>.btn{width:100%;margin-top:20px;font-size:14px;box-shadow:0 4px 0 #214531}.quest-path{list-style:none;padding:0 0 24px;margin:0 auto;width:min(400px,100%)}.path-stop{position:relative;display:flex;align-items:center;gap:20px;min-height:111px;padding-left:35px}.path-stop:nth-child(3n+2){padding-left:80px}.path-stop:nth-child(3n){padding-left:56px}.path-stop:after{content:'';position:absolute;top:84px;left:65px;border-left:5px dotted #d9e1d1;height:27px}.path-stop:nth-child(3n+2):after{left:108px;transform:rotate(20deg)}.path-stop:nth-child(3n):after{left:84px;transform:rotate(25deg)}.path-stop:last-child:after{display:none}.path-node{border:3px solid #dce4d3;background:#edf1e7;color:#a5afa0;box-shadow:0 5px 0 #dce4d3;border-radius:50%;width:68px;height:65px;flex:none;font-size:28px}.path-stop.current .path-node{background:#658b4b;border-color:#7d9e62;color:white;box-shadow:0 6px 0 #456b31;outline:6px solid #e6eddd;outline-offset:5px}.path-stop.done .path-node{background:#e4d29c;border-color:#d7c38a;color:#706136;box-shadow:0 5px 0 #cdb77b}.path-stop>div{display:grid;gap:7px;max-width:230px}.path-stop>div span,.path-stop small{font-size:10px;color:#8b9480}.path-stop strong{font-size:14px;font-weight:600}.path-stop.locked strong{color:#969e8e}.journey-side{padding-top:15px}.companion-card{text-align:center;background:#f0f4e9;border:1px solid var(--line);border-radius:18px;padding:27px 18px}.companion-card>.eyebrow{display:block}.companion-card .mascot{width:190px;max-width:90%;margin:15px 0 4px}.companion-card h2{font-size:22px;overflow-wrap:anywhere}.companion-card p{font-size:12px;color:#7a866f;margin:12px 0}.companion-card .btn{font-size:11px}.field-note{padding:22px 10px;border-bottom:1px solid var(--line);margin-top:13px}.field-note h3{font-size:14px;line-height:1.8;margin-top:13px}.field-note p{font-size:12px;color:var(--muted);margin-top:10px}.guided-session{max-width:680px;margin:auto}.session-top{display:flex;gap:18px;align-items:center;color:var(--muted);font-size:12px}.session-top .iconbtn{font-size:27px}.session-meter{height:12px;flex:1;background:#e4eadd;border-radius:10px;overflow:hidden}.session-meter span{display:block;height:100%;border-radius:10px;background:#8da96b;transition:width .3s}.session-labels{display:flex;justify-content:space-around;font-size:11px;color:#a0a896;margin:8px 0 28px}.session-labels .active{color:#426534;font-weight:700}.lesson-paper{background:white;border:1px solid var(--line);border-radius:20px;padding:35px}.lesson-paper h1{font-size:29px;word-break:keep-all;margin:13px 0 18px}.lesson-scene{display:flex;align-items:center;gap:10px;margin-bottom:20px}.lesson-scene .mascot{width:130px;max-width:32%}.speech{font-size:16px;line-height:1.8;background:#f0f4e9;border-radius:18px 18px 18px 0;padding:21px;word-break:keep-all}.concept-copy{color:#73816b;font-size:14px;line-height:1.95;margin:12px 0 24px}.takeaway{border-left:3px solid #b3c395;background:#f7f8f2;padding:17px 20px;margin:23px 0;display:grid;gap:8px;font-size:13px}.takeaway span{font-size:11px;color:#8b947b}.lesson-controls{margin-top:23px}.lesson-controls .btn{width:100%;font-size:14px;padding:15px}.lesson-hint{color:#6e825d;font-size:12px;margin:18px 0}.lesson-hint p{padding:12px;background:#f3f6ec}.answer-feedback{padding:20px;border-radius:12px;background:#eff5e7;margin-top:22px;font-size:13px}.answer-feedback.retry{background:#fbf1e4}.answer-feedback p{margin:9px 0}.answer-feedback small{color:#7d886f;font-size:11px}.application-example{background:#f3f5ee;border-radius:10px;padding:18px;font-size:13px}.application-example span{color:#8b957f;font-size:10px}.application-example p{margin-top:8px}.lesson-finish{text-align:center}.finish-seal{display:block;margin:0 auto 23px;width:83px;height:83px;border-radius:50%;background:#e5edce;border:7px solid #f1f5e7;color:#73954b;font-size:42px;line-height:68px;animation:finish-pop .45s ease-out}.lesson-finish>.eyebrow{display:block}.lesson-finish>p{font-size:13px;color:var(--muted)}.saved-artifact{text-align:left;border:1px solid #dce4d2;border-radius:12px;padding:22px;margin:26px 0;background:#fafbf6}.saved-artifact>span{font-size:11px;color:#8c997a}.saved-artifact blockquote,.field-mission blockquote{margin:12px 0;font-size:17px;line-height:1.8;overflow-wrap:anywhere}.saved-artifact small{color:#87927d;font-size:11px}.field-invitation{border-top:1px solid var(--line);margin:25px 0 8px;padding-top:24px}.field-invitation>span{font-size:11px;color:#8d997e}.field-invitation h3{line-height:1.8;margin:10px 0 16px}.field-invitation p{font-size:12px;color:var(--muted);margin:10px 0}.field-mission h2{margin-top:25px}.field-mission .hint-box{margin:18px 0}.field-mission .panel>.btn{margin-top:22px;width:100%}.lesson-paper form>.wide{margin-top:18px}.guided-session .choice{font-size:13px;padding:15px}.reduce-motion .session-meter span,.reduce-motion .finish-seal{animation:none;transition:none}@keyframes finish-pop{from{transform:scale(.6);opacity:.2}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.session-meter span,.finish-seal{animation:none;transition:none}}@media(max-width:1100px){.learn-layout{grid-template-columns:minmax(0,1fr) 230px;gap:25px}}@media(max-width:820px){.learn-layout{grid-template-columns:1fr;max-width:600px;margin:auto}.journey-side{padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:16px}.companion-card .mascot{width:110px}.path-intro h1{font-size:29px}.quest-path{width:360px;max-width:100%}.lesson-paper{padding:26px}}@media(max-width:600px){.lesson-paper{padding:23px 18px}.lesson-paper h1{font-size:24px}.speech{font-size:13px;padding:15px}.lesson-scene .mascot{width:90px}.journey-side{grid-template-columns:1fr}.companion-card .mascot{width:100px;margin:0}.companion-card{padding:20px}.path-stop:nth-child(3n+2){padding-left:65px}.path-stop strong{font-size:13px}.today-lesson{padding:21px}.path-intro h1{font-size:28px}.today-lesson h2{font-size:21px}.chapter-banner{padding:21px}.chapter-banner strong{font-size:17px}.guided-session .choice{font-size:12px}.path-node{width:61px;height:59px}.path-stop{min-height:105px}.guided-session .lesson-paper .eyebrow{letter-spacing:1px}}
main h1[tabindex="-1"]{outline:none}.answer-feedback[tabindex="-1"]:focus{outline:2px solid #b5c69a;outline-offset:4px}
.learning-path,.journey-side{min-width:0}@media(max-width:360px){.learn-layout{grid-template-columns:minmax(0,1fr)}.path-stop{gap:12px;padding-left:18px}.path-stop:nth-child(3n+2){padding-left:35px}.path-stop:nth-child(3n){padding-left:25px}.path-stop:after{left:46px}.path-stop:nth-child(3n+2):after{left:63px}.path-stop:nth-child(3n):after{left:53px}.path-stop>div{min-width:0}}

/* SPEC-005 r0.3 AC-L07: 잠긴 학습 안내 + 지금 단계 강조 */
.path-stop.locked .path-node,.path-stop.locked>div{cursor:pointer}.path-stop.locked .path-node:hover{border-color:#c9d4bd}
.path-stop.current.is-nudge .path-node{outline-color:#f0c75e;animation:path-nudge .6s ease-in-out 3}
.path-stop.current.is-nudge>div{position:relative}
.path-stop.current.is-nudge>div:before{content:'여기부터 시작해요';justify-self:start;font-size:12px;font-weight:800;color:#1f3b2b;background:#f0c75e;border-radius:999px;padding:4px 10px;animation:path-tag .3s ease-out}
@keyframes path-nudge{0%,100%{transform:scale(1)}50%{transform:scale(1.12)}}
@keyframes path-tag{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.reduce-motion .path-stop.current.is-nudge .path-node,.reduce-motion .path-stop.current.is-nudge>div:before{animation:none}
@media(prefers-reduced-motion:reduce){.path-stop.current.is-nudge .path-node,.path-stop.current.is-nudge>div:before{animation:none}}

/* SPEC-012 r0.2: 나의 성장 ‘작은 배움’ — 오늘의 학습 레이아웃 재사용 */
.review-session .review-next{margin-top:12px}.review-session .review-next .btn{width:100%;min-height:48px}
.review-session .review-extra{margin-top:8px;text-align:center}.review-session .review-extra .btn{min-height:44px}
