:root{--color-green-950: #062d1e;--color-green-900: #0b3d28;--color-green-800: #0f5a35;--color-green-700: #137a42;--color-green-600: #1d944f;--color-green-100: #e8f6ea;--color-green-050: #f3fbf4;--color-yellow-500: #f7bf2c;--color-yellow-300: #ffd86b;--color-coral-500: #f2694b;--color-coral-100: #fff0ec;--color-cream-000: #fffdf6;--color-cream-100: #fff8e9;--color-card: rgba(255, 255, 255, .9);--color-text: #12231b;--color-muted: #627369;--color-line: rgba(14, 68, 40, .14);--shadow-card: 0 16px 40px rgba(24, 48, 35, .09);--shadow-soft: 0 8px 22px rgba(24, 48, 35, .08);--header-height: 78px;--radius-xl: 28px;--radius-lg: 18px;--radius-md: 12px;--page-max: 1380px;--page-readable-max: 980px;--page-gutter: 1.5rem;--page-gutter-mobile: 1rem;--page-padding-top: 4.1rem;--page-padding-bottom: 5rem;--page-padding-top-compact: 2rem;--page-header-title-max: 56rem;--page-header-copy-max: 48rem}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{margin:0;min-height:100vh;background:radial-gradient(circle at 6% 35%,rgba(29,148,79,.09),transparent 24rem),radial-gradient(circle at 96% 70%,rgba(242,105,75,.08),transparent 22rem),linear-gradient(180deg,var(--color-cream-000),var(--color-cream-100));color:var(--color-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.site-header{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:auto minmax(280px,1fr) auto;gap:2rem;align-items:center;min-height:var(--header-height);padding:0 2rem;background:linear-gradient(135deg,var(--color-green-950),var(--color-green-800));color:#fff;box-shadow:0 8px 28px #062d1e40}.brand{display:inline-flex;align-items:center;gap:.75rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.45rem,2vw,2rem);font-weight:800;letter-spacing:-.04em;white-space:nowrap}.brand-mark{position:relative;display:inline-grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:999px;background:#ffffff1f;box-shadow:inset 0 0 0 1px #ffffff2e}.brand-flower{content:"";position:relative;width:1.5rem;height:1.5rem;opacity:1;background-image:url(/assets/header/flower-icon.svg);background-repeat:no-repeat;background-position:center;background-size:contain}.header-progress{display:grid;grid-template-columns:auto minmax(160px,260px) auto;gap:.8rem;align-items:center;justify-self:start;min-width:min(100%,470px)}.level-label,.xp-text{font-size:.95rem;font-weight:800;white-space:nowrap}.xp-track{position:relative;height:1rem;overflow:hidden;border:2px solid rgba(255,255,255,.92);border-radius:999px;background:#0522168c;box-shadow:inset 0 1px 4px #00000038}.xp-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--color-yellow-300),var(--color-yellow-500));box-shadow:0 0 14px #f7bf2c66}.site-nav{display:flex;gap:.6rem;align-items:center;justify-content:flex-end;font-weight:750;white-space:nowrap}.site-nav a{padding:.75rem 1rem;border-radius:999px;color:#ffffffe6}.site-nav a:hover,.site-nav a.active{background:#ffffff1c;color:#fff}.page-shell,.lesson-page-shell{width:min(var(--page-shell-max, var(--page-max)),calc(100% - (var(--page-gutter) * 2)));margin:0 auto;padding:var(--page-shell-pad-top, var(--page-padding-top)) 0 var(--page-shell-pad-bottom, var(--page-padding-bottom))}.hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.62fr);gap:2rem;align-items:start;margin-bottom:2rem}.hero-copy{position:relative}.motif-copy{position:relative;padding-left:7.2rem}.motif-copy:before{content:"";position:absolute;top:-1.6rem;left:0;width:15rem;height:20rem;opacity:.45;background-image:url(/assets/title/title-plant.png);background-repeat:no-repeat;background-position:center;background-size:contain;transform:translate(-7.5rem);pointer-events:none}.eyebrow{margin:0 0 .6rem;color:var(--color-green-700);font-size:.85rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}.hero-copy h1{margin-bottom:1rem;color:var(--color-green-950);font-family:Georgia,Times New Roman,serif;font-size:clamp(3.2rem,7vw,5.2rem);line-height:.95;letter-spacing:-.025em}.hero-subtitle{max-width:33rem;margin-bottom:1.8rem;color:#40544a;font-size:1.18rem;line-height:1.55}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.button{display:inline-flex;gap:.65rem;align-items:center;justify-content:center;min-height:3.2rem;padding:0 1.4rem;border-radius:.85rem;font-weight:850}.button-primary{background:linear-gradient(135deg,var(--color-green-700),var(--color-green-600));color:#fff;box-shadow:0 12px 24px #137a4238}.button-secondary{color:var(--color-green-700)}.content-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.62fr);gap:2rem;align-items:start}.lesson-area{position:relative}.lesson-list:before{content:"";position:absolute;left:2.9rem;top:2.5rem;bottom:.3rem;width:6.5rem;background-image:url(/assets/tracker/tracker-stalk.svg);background-repeat:repeat-y;background-position:center top;background-size:100% auto;transform:translate(-50%);pointer-events:none;z-index:0}.lesson-list{position:relative;display:grid;gap:.7rem;padding-bottom:1.9rem}.lesson-row{position:relative;z-index:1;display:grid;grid-template-columns:5.8rem minmax(0,1fr);gap:.7rem;align-items:stretch;min-height:5rem}.lesson-image{display:block;width:min(100%,720px);height:auto;margin:1rem auto;border-radius:var(--radius-md);box-shadow:var(--shadow-soft)}.tracker-cell{position:relative;display:grid;place-items:center;min-height:5rem}.tracker-node-art{position:relative;z-index:2;display:block;width:4.4rem;height:4.4rem;object-fit:contain;filter:drop-shadow(0 .35rem .45rem rgba(6,45,30,.18));transform-origin:center bottom}.lesson-row.completed .tracker-node-art{width:4.8rem;height:4.8rem}.lesson-row.locked .tracker-node-art{width:3.35rem;height:3.35rem;opacity:1;filter:saturate(.25) drop-shadow(0 .25rem .35rem rgba(6,45,30,.14))}.lesson-row.active .tracker-node-art{animation:active-bud-idle 3.8s ease-in-out infinite;filter:drop-shadow(0 .35rem .45rem rgba(6,45,30,.2)) drop-shadow(0 0 .35rem rgba(247,191,44,.35))}.lesson-row.completed .tracker-node-art,.lesson-row.active .tracker-node-art{transition:transform .16s ease,filter .16s ease}.lesson-row.completed:hover .tracker-node-art,.lesson-row.active:hover .tracker-node-art{transform:scale(1.06);filter:drop-shadow(0 .4rem .55rem rgba(6,45,30,.2)) drop-shadow(0 0 .45rem rgba(247,191,44,.24))}.lesson-row.reward-pending .tracker-node-art{width:4.4rem;height:4.4rem}.lesson-row.reward-pending .lesson-mobile-icon img{width:2.65rem;height:2.65rem}.lesson-row.reward-blooming .tracker-node-art,.lesson-row.reward-blooming .lesson-mobile-icon img{animation:reward-flower-pop .56s ease-out}.reward-bloom-fx{position:absolute;left:50%;top:50%;z-index:5;width:8rem;height:8rem;pointer-events:none;transform:translate(-50%,-50%);overflow:visible}.bloom-particle{position:absolute;left:50%;top:50%;display:block;pointer-events:none;animation-delay:var(--delay, 0ms);animation-duration:var(--duration, 1.1s);animation-fill-mode:both;will-change:transform,opacity}.bloom-puff{width:1.8rem;height:1.8rem;background-image:url(/assets/fx/bloom-puff.png);background-repeat:no-repeat;background-position:center;opacity:.8;background-size:contain;filter:drop-shadow(0 0 .55rem rgba(255,221,126,.55)) drop-shadow(0 0 1rem rgba(255,244,189,.22));animation-name:bloom-puff-burst;animation-timing-function:ease-out}.bloom-spark{width:1.5rem;height:1.5rem;background-image:url(/assets/fx/bloom-spark.png);background-repeat:no-repeat;background-position:center;background-size:contain;filter:drop-shadow(0 0 .45rem rgba(247,191,44,.75)) drop-shadow(0 0 .95rem rgba(247,191,44,.35));animation-name:bloom-spark-burst;animation-timing-function:cubic-bezier(.2,.72,.18,1)}.xp-stream-layer{position:fixed;inset:0;z-index:100;pointer-events:none;overflow:visible}.xp-stream-particle{position:fixed;display:block;width:.55rem;height:.55rem;border-radius:999px;background:radial-gradient(circle at 35% 30%,#fff8c7 0 20%,var(--color-yellow-300) 21% 58%,var(--color-yellow-500) 59% 100%);box-shadow:0 0 .45rem #f7bf2cb3,0 0 1rem #f7bf2c4d;transform:translate(-50%,-50%);animation:xp-stream-fly 1.85s cubic-bezier(.18,.78,.25,1) var(--delay, 0ms) both}@keyframes reward-flower-pop{0%{transform:scale(.86) rotate(-3deg)}42%{transform:scale(1.13) rotate(2deg)}72%{transform:scale(.98) rotate(-1deg)}to{transform:scale(1) rotate(0)}}@keyframes bloom-puff-burst{0%{opacity:0;transform:translate(calc(-50% + var(--start-x, 0px)),calc(-50% + var(--start-y, 0px))) scale(calc(var(--scale, 1) * .2)) rotate(var(--rotation, 0deg))}16%{opacity:1}58%{opacity:.88}to{opacity:0;transform:translate(calc(-50% + var(--start-x, 0px) + var(--dx, 0px)),calc(-50% + var(--start-y, 0px) + var(--dy, 0px))) scale(calc(var(--scale, 1) * 1.8)) rotate(calc(var(--rotation, 0deg) + 18deg))}}@keyframes bloom-spark-burst{0%{opacity:0;transform:translate(calc(-50% + var(--start-x, 0px)),calc(-50% + var(--start-y, 0px))) scale(calc(var(--scale, 1) * .2)) rotate(var(--rotation, 0deg))}14%{opacity:1}62%{opacity:.96}to{opacity:0;transform:translate(calc(-50% + var(--start-x, 0px) + var(--dx, 0px)),calc(-50% + var(--start-y, 0px) + var(--dy, 0px))) scale(calc(var(--scale, 1) * .72)) rotate(calc(var(--rotation, 0deg) + 42deg))}}@keyframes xp-stream-fly{0%{opacity:0;transform:translate(-50%,-50%) scale(.25)}12%{opacity:1;transform:translate(-50%,-50%) scale(1)}78%{opacity:.92}85%{opacity:.25}to{opacity:0;transform:translate(calc(var(--tx, 0px) - 50%),calc(var(--ty, 0px) + var(--arc, -60px) - 50%)) scale(.45)}}.tracker-soil{position:absolute;left:2.9rem;bottom:-.9rem;z-index:-1;width:6.2rem;height:1.8rem;background-image:url(/assets/tracker/tracker-dirt.svg);background-repeat:no-repeat;background-position:center;background-size:contain;transform:translate(-50%);pointer-events:none}@keyframes active-bud-idle{0%,78%,to{transform:rotate(0) scale(1)}82%{transform:rotate(-2.5deg) scale(1.15)}86%{transform:rotate(2.5deg) scale(1.15)}90%{transform:rotate(-1.4deg) scale(1.05)}92%{transform:rotate(1.4deg) scale(1.025)}94%{transform:rotate(0) scale(1)}}.lesson-card,.card{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-card);box-shadow:var(--shadow-soft);backdrop-filter:blur(8px)}.lesson-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;min-height:5rem;padding:1rem 1.1rem;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.lesson-mobile-icon{position:relative;display:none;place-items:center;width:3rem;height:3rem}.lesson-mobile-icon img{display:block;width:2.65rem;height:2.65rem;object-fit:contain;filter:drop-shadow(0 .22rem .3rem rgba(6,45,30,.14));transform-origin:center bottom}.lesson-card.completed .lesson-mobile-icon img{width:3rem;height:3rem;filter:drop-shadow(0 .28rem .38rem rgba(6,45,30,.18))}.lesson-card.locked .lesson-mobile-icon img{width:2.15rem;height:2.15rem;filter:saturate(.25) drop-shadow(0 .2rem .28rem rgba(6,45,30,.12))}.lesson-card.active .lesson-mobile-icon img{animation:active-bud-idle 3.8s ease-in-out infinite;filter:drop-shadow(0 .25rem .35rem rgba(6,45,30,.17)) drop-shadow(0 0 .32rem rgba(247,191,44,.28))}.lesson-row.completed .lesson-card:hover,.lesson-row.active .lesson-card:hover{border-color:#137a42c7;box-shadow:0 0 0 1px #137a422e,0 18px 36px #1830231c;transform:translateY(-1px)}.lesson-card.active{border-color:#137a42bd;box-shadow:0 0 0 1px #137a4238,var(--shadow-soft)}.lesson-copy h2{margin-bottom:.25rem;font-size:1.1rem;line-height:1.2}.lesson-copy p{margin:0;color:var(--color-muted);font-size:.92rem;line-height:1.35}.lesson-status{display:grid;gap:.45rem;justify-items:end;min-width:10.2rem}.status-pill,.xp-reward{display:inline-flex;align-items:center;justify-content:center;min-height:1.95rem;padding:0 .78rem;border-radius:.65rem;font-size:.85rem;font-weight:850;white-space:nowrap}.status-pill.completed,.status-pill.active{background:var(--color-green-100);color:var(--color-green-800)}.status-pill.locked{background:#f0f1ef;color:#5f6863}.xp-reward{background:linear-gradient(180deg,var(--color-yellow-300),var(--color-yellow-500));color:#332400;box-shadow:0 0 0 2px #f7bf2c33}.mini-progress{display:grid;grid-template-columns:1fr auto;gap:.6rem;align-items:center;width:100%;color:var(--color-green-700);font-size:.8rem;font-weight:850}.mini-progress-track{height:.48rem;overflow:hidden;border-radius:999px;background:#dfe9e0}.mini-progress-fill{height:100%;border-radius:inherit;background:var(--color-green-600)}.lesson-complete-button{min-height:2rem;padding:0 .8rem;border:0;border-radius:.65rem;background:var(--color-green-700);color:#fff;font-size:.82rem;font-weight:900;cursor:pointer;box-shadow:0 .45rem .9rem #137a422e}.lesson-complete-button:hover{background:var(--color-green-800)}.lesson-complete-button:disabled{cursor:default;background:#dfe5df;color:#6b746d;box-shadow:none}.side-stack{display:grid;gap:1rem}.card{padding:1.35rem}.card h2{margin-bottom:1rem;color:var(--color-green-700);font-size:1.25rem}.code-preview-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(160px,.75fr);gap:1rem;align-items:stretch}.code-block{margin:0;max-height:15.5rem;padding:1rem;overflow:auto;border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fffdf6db;color:#13251c;font-family:Fira Code,Consolas,monospace;font-size:.82rem;line-height:1}.line{display:block;white-space:pre}.comment{color:var(--color-green-700)}.number{color:#1b66c9}.keyword{color:#d43b32;font-weight:850}.preview-copy{display:grid;gap:.9rem;align-content:start;min-width:0}.preview-copy p{margin:0;color:#2e4036;line-height:1.45}.motion-preview{position:relative;display:grid;place-items:center;height:5rem;border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fffdf6b3}.motion-line{position:absolute;left:1rem;right:1rem;height:.15rem;border-top:.18rem dashed var(--color-green-600)}.motion-line:before,.motion-line:after{position:absolute;top:-.62rem;color:var(--color-green-600);font-weight:900}.motion-line:before{content:"<";left:-.25rem}.motion-line:after{content:">";right:-.25rem}.motion-object{position:relative;width:2rem;height:2rem;border-radius:.4rem;background:linear-gradient(145deg,#55b766,var(--color-green-600));box-shadow:0 .35rem .7rem #137a4240}.run-button{min-height:2.8rem;border:0;border-radius:.75rem;background:var(--color-green-100);color:var(--color-green-700);font-weight:900;cursor:pointer}.progress-grid{display:grid;grid-template-columns:auto 1fr;gap:1.4rem;align-items:center;margin-bottom:1.2rem}.progress-ring{display:grid;place-items:center;align-content:center;width:9rem;height:9rem;border-radius:999px;background:radial-gradient(circle,white 0 57%,transparent 58%),conic-gradient(var(--color-green-600) 0 var(--progress-percent, 0%),#edf1e9 var(--progress-percent, 0%) 100%)}.progress-ring span{color:var(--color-green-950);font-size:2.15rem;font-weight:950;line-height:1}.progress-ring small{color:var(--color-text);font-weight:750}.progress-stats{display:grid;gap:1rem}.progress-stats div{display:grid;grid-template-columns:2rem 3rem 1fr;gap:.35rem;align-items:center}.progress-stats span{color:var(--color-yellow-500);font-size:1.3rem}.progress-stats strong{font-size:1.1rem}.progress-stats small{color:var(--color-muted)}.encouragement{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:stretch;padding:1rem;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--color-green-050),#eff8ea)}.encouragement h3{margin-bottom:.25rem;color:var(--color-green-800)}.encouragement p{margin:0;color:#31463a;line-height:1.35}.progress-pot-plant{display:block;align-self:end;margin-bottom:-1rem;width:6.8rem;height:6.8rem;object-fit:contain;filter:drop-shadow(0 .35rem .5rem rgba(24,48,35,.14));pointer-events:none;user-select:none}.help-card{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center}.help-card h2{color:var(--color-coral-500)}.help-card p{max-width:18rem;color:var(--color-muted);line-height:1.4}.help-button{display:inline-flex;gap:.5rem;align-items:center;justify-content:center;min-height:2.7rem;padding:0 1rem;border:1px solid var(--color-coral-500);border-radius:.7rem;color:var(--color-coral-500);font-weight:850}.trowel-mark{position:relative;width:5.5rem;height:5.5rem;border-radius:999px;background:radial-gradient(ellipse at 55% 42%,rgba(19,122,66,.22) 0 22%,transparent 23%),radial-gradient(ellipse at 30% 55%,rgba(19,122,66,.18) 0 22%,transparent 23%),linear-gradient(115deg,transparent 0 48%,#3d4b45 49% 55%,transparent 56%),linear-gradient(115deg,transparent 0 54%,#b87842 55% 62%,transparent 63%);opacity:.92}.lesson-page-shell{--page-shell-max: var(--page-readable-max);--page-shell-pad-bottom: 7rem}.lesson-breadcrumb{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;margin-bottom:1rem;color:var(--color-muted);font-size:.92rem;font-weight:750}.lesson-breadcrumb a{color:var(--color-green-700)}.lesson-page-card{border:1px solid var(--color-line);border-radius:var(--radius-xl);background:var(--color-card);box-shadow:var(--shadow-card);backdrop-filter:blur(8px);overflow:hidden}.lesson-page-header{position:relative;padding:2rem 2rem 1.4rem;border-bottom:1px solid var(--color-line);background:radial-gradient(circle at 90% 20%,rgba(247,191,44,.16),transparent 12rem),linear-gradient(135deg,#f3fbf4e6,#fffdf6e6);overflow:hidden}.lesson-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;align-items:start}.lesson-title-row h1{margin-bottom:.55rem;color:var(--color-green-950);font-family:Georgia,Times New Roman,serif;font-size:clamp(2.35rem,6vw,4.2rem);line-height:.98;letter-spacing:-.055em}.lesson-title-row p{margin:0;max-width:38rem;color:var(--color-muted);font-size:1.06rem;line-height:1.5}.lesson-page-status{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:0 .8rem;border-radius:.75rem;background:var(--color-green-100);color:var(--color-green-800);font-size:.85rem;font-weight:900;white-space:nowrap}.lesson-content{display:grid;gap:1rem;padding:2rem;font-size:1.04rem;line-height:1.68}.lesson-content h2{margin:1.2rem 0 0;color:var(--color-green-900);font-size:1.45rem;line-height:1.2}.lesson-content h2:first-child{margin-top:0}.lesson-content p,.lesson-content ul{margin-bottom:0;color:#34483c}.lesson-content ul{padding-left:1.35rem}.lesson-content li+li{margin-top:.35rem}.lesson-callout{display:grid;gap:.35rem;margin:.4rem 0;padding:1rem 1.1rem;border:1px solid rgba(19,122,66,.16);border-radius:var(--radius-md);background:var(--color-green-050);color:#30483a}.lesson-callout strong{color:var(--color-green-800)}.lesson-content pre{margin:.5rem 0 0;padding:1rem 1.1rem;overflow-x:auto;border:1px solid rgba(14,68,40,.18);border-radius:var(--radius-md);background:linear-gradient(180deg,#fbfff9,#f3f8ef);box-shadow:inset 0 0 0 1px #ffffff8c}.lesson-content pre code,.lesson-content pre code span{color:#183225}.lesson-content pre code{display:block;padding:0;background:transparent;font-family:Fira Code,Consolas,monospace;font-size:.96rem;line-height:.75;white-space:pre}.lesson-content code{padding:.1rem .32rem;border-radius:.35rem;background:#137a4217;color:var(--color-green-800);font-family:Fira Code,Consolas,monospace;font-size:.92em}.concept-chain{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;margin:.3rem 0}.concept-chain span{position:relative;display:inline-flex;align-items:center;min-height:2.15rem;padding:0 .75rem;border-radius:999px;background:#fff;border:1px solid var(--color-line);color:var(--color-green-800);font-size:.92rem;font-weight:850;box-shadow:0 .35rem .7rem #1830230f}.concept-chain span:not(:last-child):after{content:">";margin-left:.55rem;color:var(--color-yellow-500)}.lesson-page-footer{display:grid;gap:1rem;padding:1.35rem 2rem 2rem;border-top:1px solid var(--color-line)}.lesson-neighbor-links{display:grid;grid-template-columns:1fr 1fr;gap:1rem;font-size:.92rem;font-weight:800}.lesson-neighbor-links a{color:var(--color-green-700)}.lesson-neighbor-links a:last-child{text-align:right}.lesson-action-row{display:flex;flex-wrap:wrap;gap:.85rem;justify-content:flex-end;align-items:center}.lesson-action-row .button{border:0;cursor:pointer}.lesson-action-row .button:disabled{cursor:default;background:#dfe5df;color:#6b746d;box-shadow:none}.lesson-code-block{margin:0;padding:1rem;overflow:auto;border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fffdf6db;color:#13251c;font-family:Fira Code,Consolas,monospace;font-size:.95rem;line-height:1.45}.lesson-task-list{display:grid;gap:1rem;margin-top:.5rem}.lesson-task-card{display:grid;gap:1rem;padding:1.15rem;border:1px solid rgba(19,122,66,.18);border-radius:var(--radius-lg);background:radial-gradient(circle at 95% 5%,rgba(247,191,44,.14),transparent 8rem),var(--color-green-050);box-shadow:var(--shadow-soft)}.lesson-task-card.completed{border-color:#137a426b;background:radial-gradient(circle at 95% 5%,rgba(247,191,44,.18),transparent 8rem),linear-gradient(135deg,var(--color-green-050),#eff8ea)}.lesson-task-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:start}.lesson-task-header h2{margin:0 0 .3rem}.lesson-task-header p{margin:0}.lesson-task-status{display:inline-flex;align-items:center;justify-content:center;min-height:1.85rem;padding:0 .7rem;border-radius:.65rem;background:#fff;color:var(--color-muted);font-size:.8rem;font-weight:900;white-space:nowrap}.lesson-task-card.completed .lesson-task-status{background:var(--color-green-100);color:var(--color-green-800)}.lesson-task-label{color:var(--color-green-800);font-size:.9rem;font-weight:900}.lesson-task-input{width:100%;min-height:7rem;padding:.9rem;resize:vertical;border:1px solid rgba(19,122,66,.25);border-radius:var(--radius-md);background:#ffffffeb;color:var(--color-text);font-family:Fira Code,Consolas,monospace;font-size:.95rem;line-height:1.45}.lesson-task-input:focus{outline:3px solid rgba(247,191,44,.35);border-color:var(--color-green-600)}.lesson-task-feedback{margin:0;color:var(--color-muted);font-size:.92rem;line-height:1.4}.lesson-task-check-button{justify-self:start;min-height:2.5rem;padding:0 1rem;border:0;border-radius:.75rem;background:var(--color-green-700);color:#fff;font-size:.9rem;font-weight:900;cursor:pointer;box-shadow:0 .45rem .9rem #137a422e}.lesson-task-check-button:hover{background:var(--color-green-800)}.lesson-task-check-button:disabled{cursor:default;background:#dfe5df;color:#6b746d;box-shadow:none}.lesson-sticky-footer{position:sticky;bottom:1rem;z-index:10;margin-top:1rem}.lesson-sticky-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1rem;align-items:center;padding:.8rem;border:1px solid var(--color-line);border-radius:var(--radius-lg);background:#fffdf6f0;box-shadow:0 18px 40px #18302329;backdrop-filter:blur(10px)}.lesson-progress-summary{display:grid;grid-template-columns:auto minmax(5rem,1fr);gap:.65rem;align-items:center;min-width:0}.lesson-progress-label{color:var(--color-green-800);font-size:.9rem;font-weight:900;white-space:nowrap}.lesson-back-button:before,.lesson-complete-sticky-button:before,.lesson-progress-label:before{content:attr(data-label-full)}.lesson-progress-track{height:.62rem;overflow:hidden;border-radius:999px;background:#dfe9e0}.lesson-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--color-green-600),var(--color-yellow-500));transition:width .18s ease}.lesson-complete-sticky-button:disabled{cursor:default;background:#dfe5df;color:#6b746d;box-shadow:none}.landing-hero{margin-bottom:3rem}.landing-section,.landing-card-grid,.resource-group-list{margin-top:2rem}.section-heading,.section-heading-secondary{max-width:760px;margin-bottom:1.4rem}.section-heading-secondary h2{margin-bottom:.55rem;color:var(--color-green-900);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(2rem,4vw,3rem);line-height:1.05;letter-spacing:-.035em}.page-header{max-width:none;margin-bottom:3rem}.page-header--with-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;align-items:start;margin-bottom:4rem}.page-header-action{display:flex;justify-content:flex-end}.page-header h1{max-width:var(--page-header-title-max);margin-bottom:.65rem;color:var(--color-green-950);font-family:Georgia,Times New Roman,serif;font-size:clamp(3.2rem,7vw,5.2rem);line-height:.95;letter-spacing:-.025em}.section-heading p,.page-header p:not(.eyebrow){margin:0;color:var(--color-muted);font-size:1.06rem;line-height:1.5}.page-header p:not(.eyebrow){max-width:var(--page-header-copy-max)}.path-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.path-card,.landing-info-card,.resource-card{display:grid;gap:1rem;align-content:space-between;min-height:13rem;padding:1.35rem;border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-card);box-shadow:var(--shadow-soft);backdrop-filter:blur(8px)}.path-card h2,.landing-info-card h2,.resource-card h3{margin-bottom:.45rem;color:var(--color-green-800);font-size:1.3rem;line-height:1.15}.path-card p,.landing-info-card p,.resource-card p{margin:0;color:var(--color-muted);line-height:1.45}.path-card.coming-soon{opacity:.78}.path-card-disabled,.path-sidebar-badge{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:2rem;padding:0 .75rem;border-radius:.65rem;background:#f0f1ef;color:#5f6863;font-size:.82rem;font-weight:900}.landing-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.page-header .eyebrow,.lesson-page-header .eyebrow{margin:0 0 .6rem;color:var(--color-green-700);font-size:.85rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.path-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.45fr);gap:1.25rem;align-items:start}.path-drawer{position:fixed;inset:0 auto 0 0;z-index:30;pointer-events:none}.path-drawer-tab{position:fixed;left:0;top:calc(var(--header-height) + 6rem);z-index:32;display:grid;place-items:center;width:2.45rem;min-height:10.5rem;padding:.85rem .35rem;border:1px solid rgba(14,68,40,.22);border-left:0;border-radius:0 .85rem .85rem 0;background:linear-gradient(180deg,var(--color-green-700),var(--color-green-800));color:#fff;box-shadow:0 12px 28px #062d1e38;cursor:pointer;pointer-events:auto}.path-drawer-tab span{display:block;writing-mode:vertical-rl;text-orientation:mixed;font-size:.78rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase;transform:rotate(180deg)}.path-drawer-backdrop{position:fixed;inset:0;z-index:30;background:#062d1e00;opacity:0;pointer-events:none;transition:opacity .18s ease,background .18s ease}.path-drawer-panel{position:fixed;left:0;top:var(--header-height);bottom:0;z-index:31;width:min(21rem,calc(100vw - 2.5rem));padding:1.1rem;border-right:1px solid rgba(14,68,40,.18);background:radial-gradient(circle at 12% 34%,rgba(29,148,79,.1),transparent 12rem),linear-gradient(180deg,#fffdf6fa,#fff8e9fa);box-shadow:18px 0 42px #1830232e;transform:translate(-105%);transition:transform .22s ease;pointer-events:auto;overflow-y:auto}.path-drawer.open .path-drawer-backdrop{background:#062d1e2e;opacity:1;pointer-events:auto}.path-drawer.open .path-drawer-panel{transform:translate(0)}.path-drawer.open .path-drawer-tab{transform:translate(min(21rem,calc(100vw - 2.5rem)))}.path-drawer-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:start;margin-bottom:1rem}.path-drawer-header h2{margin:0;color:var(--color-green-950);font-family:Georgia,Times New Roman,serif;font-size:1.9rem;line-height:1;letter-spacing:-.045em}.path-drawer-close{display:grid;place-items:center;width:2.2rem;height:2.2rem;border:0;border-radius:999px;background:var(--color-green-100);color:var(--color-green-800);font-size:1.3rem;font-weight:900;line-height:1;cursor:pointer}.path-drawer-body{position:relative;min-height:18rem;padding-left:2rem}.path-drawer-vine{position:absolute;left:.45rem;top:.3rem;bottom:.8rem;width:1.8rem;border-left:.18rem solid rgba(15,90,53,.72);border-radius:60% 0 0 40%;pointer-events:none}.path-drawer-vine:before,.path-drawer-vine:after{content:"";position:absolute;left:-.05rem;width:1.5rem;height:3.2rem;border-bottom:.18rem solid rgba(15,90,53,.72);border-radius:0 0 0 999px}.path-drawer-vine:before{top:4.2rem;transform:rotate(-8deg)}.path-drawer-vine:after{top:11rem;transform:rotate(-5deg)}.path-drawer-list{display:grid;gap:1rem}.path-drawer-card{display:grid;gap:.45rem;padding:1rem;border:2px solid rgba(15,90,53,.34);border-radius:var(--radius-md);background:#fffdf6d1;box-shadow:0 8px 18px #18302314;transition:border-color .16s ease,background .16s ease,transform .16s ease}.path-drawer-card:hover{border-color:#137a42b8;background:var(--color-green-050);transform:translateY(-1px)}.path-drawer-card.active{border-color:var(--color-green-700);background:linear-gradient(135deg,var(--color-green-050),#eff8ea);box-shadow:0 0 0 1px #137a4229,0 12px 24px #1830231a}.path-drawer-card.locked{opacity:.78}.path-drawer-card.locked:hover{transform:none;background:#fffdf6d1;border-color:#0f5a3557}.path-drawer-card-title{color:var(--color-green-900);font-size:1.02rem;font-weight:950;line-height:1.2}.path-drawer-card-description{color:var(--color-muted);font-size:.9rem;line-height:1.38}.path-drawer-badge{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:1.9rem;padding:0 .7rem;border-radius:.65rem;background:#f0f1ef;color:#5f6863;font-size:.82rem;font-weight:900}.resource-group+.resource-group{margin-top:2rem}.resource-group h2{margin-bottom:1rem;color:var(--color-green-800);font-size:1.35rem}.resource-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.resource-card{min-height:10rem;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.resource-card:hover{border-color:#137a42a6;box-shadow:0 0 0 1px #137a4224,0 18px 36px #1830231c;transform:translateY(-1px)}@media(max-width:1000px){.site-header{grid-template-columns:1fr;gap:.9rem;padding:1rem}.header-progress,.site-nav{justify-self:stretch}.site-nav{justify-content:flex-start;overflow-x:auto}.page-shell,.lesson-page-shell{width:min(100% - (var(--page-gutter-mobile) * 2),var(--page-shell-max, var(--page-max)));--page-shell-pad-top: var(--page-padding-top-compact)}.hero-grid,.content-grid{grid-template-columns:1fr}.motif-copy{padding-left:0}.motif-copy:before{display:none}.hero-side{order:2}.path-layout{grid-template-columns:1fr}.path-drawer-tab{top:calc(var(--header-height) + 4.5rem)}.page-header--with-action{grid-template-columns:1fr}.page-header-action{justify-content:flex-start}.path-card-grid,.landing-card-grid,.resource-card-grid{grid-template-columns:1fr}.section-heading-secondary h2{font-size:2rem}}@media(max-width:680px){.header-progress{grid-template-columns:1fr}.lesson-list{gap:.75rem;padding-bottom:0}.lesson-row{display:block;min-height:0}.tracker-cell,.tracker-soil{display:none}.lesson-card{grid-template-columns:auto minmax(0,1fr);gap:.85rem;align-items:center;min-height:4.7rem;padding:.9rem}.lesson-mobile-icon{display:grid}.lesson-status{grid-column:2;justify-items:start;width:100%;min-width:0}.status-pill,.xp-reward{min-height:1.75rem;padding:0 .65rem;font-size:.78rem}.mini-progress{max-width:12rem}.lesson-copy h2{font-size:1rem}.lesson-copy p{font-size:.86rem}.code-preview-grid,.progress-grid,.help-card{grid-template-columns:1fr}.hero-copy h1{font-size:3rem}.lesson-page-shell{--page-shell-max: 880px}.lesson-page-header,.lesson-content,.lesson-page-footer{padding-left:1.1rem;padding-right:1.1rem}.lesson-title-row,.lesson-neighbor-links{grid-template-columns:1fr}.lesson-neighbor-links a:last-child{text-align:left}.lesson-action-row{justify-content:stretch}.lesson-action-row .button{width:100%}.lesson-sticky-footer{bottom:.65rem}.lesson-sticky-inner{grid-template-columns:auto minmax(0,1fr) auto;gap:.5rem;padding:.55rem;border-radius:.9rem}.lesson-progress-summary{grid-template-columns:auto minmax(3.8rem,1fr);gap:.45rem}.lesson-back-button:before,.lesson-complete-sticky-button:before,.lesson-progress-label:before{content:attr(data-label-short)}.lesson-sticky-inner .button{min-height:2.35rem;padding:0 .65rem;font-size:.78rem}.lesson-task-header{grid-template-columns:1fr}.lesson-task-status{justify-self:start}.xp-stream-particle{width:.42rem;height:.42rem}.path-drawer-panel{top:0;width:min(20rem,calc(100vw - 2.2rem))}.path-drawer-tab{top:9rem;min-height:9rem}.path-drawer.open .path-drawer-tab{transform:translate(min(20rem,calc(100vw - 2.2rem)))}.path-drawer-header h2{font-size:1.65rem}}
