.learnstack-home .ls-premium-demo{max-width:74rem;margin:0 auto;padding:4rem 1.5rem;border-top:0;color:var(--ls-ink)}
.learnstack-home.learnstack-studio-home #philosophy{border-bottom:0!important}
.learnstack-home .ls-home-sticky-header{position:sticky;top:0;z-index:110;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4rem;padding:.5rem 6rem .5rem 1.5rem;background:var(--ls-paper)!important;border-bottom:1px solid var(--ls-line);color:var(--ls-ink)}.ls-home-sticky-header>a{font-size:1.1rem;font-weight:750;color:inherit;text-decoration:none}.ls-home-sticky-header .ls-studio-cta{min-height:2.5rem;padding:.6rem 1rem}.learnstack-home .ls-hero-audiences{list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:.4rem 1rem;max-width:52rem;margin:1rem auto 0;padding:0;color:var(--ls-muted);font-size:.8rem;line-height:1.5}.ls-hero-audiences li{white-space:normal}.ls-hero-audiences li::before{content:'\2022';margin-right:.4rem;color:var(--ls-cyan)}.learnstack-home #philosophy{overflow-anchor:none}.learnstack-home #sample-test,.learnstack-home #paid-workflows,.learnstack-home #teacher{scroll-margin-top:5rem}@media(max-width:540px){.learnstack-home .ls-home-sticky-header{padding-left:1rem;padding-right:4.5rem;min-height:3.6rem}.ls-home-sticky-header .ls-studio-cta{min-width:0;font-size:.78rem}.learnstack-home .ls-hero-audiences{font-size:.7rem;gap:.3rem .7rem}}
.learnstack-home .ls-studio-actions{flex-wrap:wrap;width:min(30rem,calc(100% - 2rem));min-width:0}.learnstack-home .ls-hero-trust{flex:0 0 100%;margin:0;text-align:center;color:var(--ls-muted);font-size:.75rem;line-height:1.4}.ls-demo-tabs button:hover{border-color:var(--ls-cyan);box-shadow:inset 0 -2px var(--ls-cyan)}.ls-demo-controls button:hover{background:var(--ls-line);border-color:var(--ls-cyan)}.learnstack-home .ls-studio-paid-tools:hover{text-decoration-thickness:2px;color:var(--ls-cyan)}
.ls-dark-mode .learnstack-home .ls-premium-demo .ls-demo-intro{background:transparent!important;box-shadow:none!important}
.learnstack-home.learnstack-studio-home{overflow:clip}
.learnstack-home .ls-home-sticky-header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;padding:.5rem 1.5rem;gap:1rem}.ls-home-sticky-header .ls-header-brand{display:block;width:180px;max-width:100%;line-height:0}.ls-home-sticky-header .ls-header-logo{display:block;width:180px;max-width:100%;height:32px;object-fit:cover;object-position:center 49%;border-radius:3px}.ls-home-sticky-header .ls-site-menu{position:relative;top:auto;right:auto;z-index:120}.ls-home-sticky-header .ls-site-menu-button{width:44px;height:44px;--ls-menu-line-thickness:3px;--ls-menu-line-gap:5px}.ls-home-sticky-header .ls-site-menu-line{width:24px;max-width:24px}.ls-home-sticky-header .ls-site-menu-panel{top:calc(100% + .5rem)}@media(max-width:540px){.learnstack-home .ls-home-sticky-header{padding:.5rem .75rem;gap:.5rem}.ls-home-sticky-header .ls-header-brand,.ls-home-sticky-header .ls-header-logo{width:136px}.ls-home-sticky-header .ls-header-logo{height:28px}}@media(max-width:360px){.ls-home-sticky-header .ls-header-brand,.ls-home-sticky-header .ls-header-logo{width:110px}.ls-home-sticky-header .ls-header-logo{height:24px}}
.learnstack-home .ls-hero-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem}.ls-hero-trust span{border:1px solid var(--ls-line);border-radius:4px;padding:.2rem .4rem;font-size:.68rem;line-height:1.4}
.learnstack-home .ls-studio-actions{align-items:center;gap:1rem;min-width:0}.learnstack-home .ls-studio-paid-tools{color:var(--ls-ink);font-size:.88rem;font-weight:650;text-underline-offset:5px;white-space:nowrap}.learnstack-home .ls-studio-paid-tools:focus-visible{outline:2px solid var(--ls-cyan);outline-offset:5px}
.ls-premium-demo .ls-demo-intro{max-width:43rem;margin-bottom:1.75rem}.ls-premium-demo h2{font-size:2rem;line-height:1.2;margin:.5rem 0 1rem}.ls-premium-demo p{color:var(--ls-muted);line-height:1.6;margin:.5rem 0 1rem}
.ls-demo-tabs{display:flex;gap:.5rem;flex-wrap:wrap;border-bottom:1px solid var(--ls-line);padding-bottom:1rem;margin-bottom:2rem}.ls-demo-tabs button{border:1px solid var(--ls-line);background:transparent;color:var(--ls-muted);border-radius:6px;padding:.65rem 1rem;font:inherit;font-weight:600;cursor:pointer}.ls-demo-tabs button[aria-selected=true]{background:var(--ls-ink);color:var(--ls-paper);border-color:var(--ls-ink)}
.ls-demo-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);gap:3rem;align-items:center}.ls-demo-description h3{font-size:1.65rem;line-height:1.25;margin:1rem 0}.ls-demo-plan{color:var(--ls-cyan);font-weight:700}.ls-demo-steps{padding-left:1.35rem;color:var(--ls-muted);margin:1.5rem 0;display:grid;gap:.7rem}.ls-demo-steps li::marker{color:var(--ls-cyan);font-weight:700}.ls-demo-plan-link{color:var(--ls-ink);font-weight:650;text-underline-offset:5px}
.ls-demo-frame{border:1px solid var(--ls-line);border-radius:8px;background:var(--ls-surface);overflow:hidden;box-shadow:0 12px 36px #1018270a}.ls-demo-bar{display:flex;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--ls-line);font-size:.85rem}.ls-demo-bar span{color:var(--ls-muted)}.ls-demo-stage{padding:1.5rem;min-height:31rem}.ls-demo-stage h4{font-size:1.1rem;line-height:1.45;margin:.65rem 0 1rem;font-weight:650}.ls-premium-demo .ls-demo-topic{font-size:.72rem;font-weight:700;margin:0;color:var(--ls-muted)}
.ls-demo-answer{display:flex;gap:.65rem;align-items:center;padding:.75rem;border:1px solid var(--ls-line);border-radius:5px;font-size:.9rem}.ls-demo-answer>span{display:grid;place-items:center;flex:0 0 1.7rem;height:1.7rem;border:1px solid var(--ls-line);border-radius:50%;font-size:.8rem}.ls-demo-answer b{margin-left:auto;font-size:.7rem;font-weight:600;white-space:nowrap}.ls-demo-answer.is-wrong{background:color-mix(in srgb,#d54f63 10%,var(--ls-surface));border-color:#bd647275}.ls-demo-answer.is-correct{background:color-mix(in srgb,#159174 12%,var(--ls-surface));border-color:#188e7075}.ls-demo-explanation{padding:.85rem 0 .15rem}.ls-demo-explanation strong{font-size:.88rem}.ls-premium-demo .ls-demo-explanation p{font-size:.85rem;margin:.4rem 0}.ls-demo-command{display:flex;align-items:center;gap:.7rem;margin:.7rem 0;padding:.65rem .9rem;border:1px solid var(--ls-line);border-radius:5px;width:fit-content;font-size:.85rem;font-weight:650}.ls-demo-command small{color:var(--ls-muted)}.ls-demo-command i{font-style:normal;color:var(--ls-cyan)}.ls-demo-new-question{border-top:1px solid var(--ls-line);padding-top:1rem;margin-top:1rem}.ls-demo-field{margin:1rem 0;padding:.8rem 0;border-top:1px solid var(--ls-line);border-bottom:1px solid var(--ls-line);font-size:.9rem}.ls-premium-demo .ls-demo-field p{font-size:.9rem;margin:.5rem 0}.ls-demo-settings{display:grid;gap:.7rem;font-size:.87rem}.ls-demo-settings i{font-style:normal;margin-right:.6rem;color:var(--ls-cyan)}.ls-demo-writing{min-height:3rem;border-bottom:1px solid var(--ls-line);color:var(--ls-muted);font-size:.85rem}.ls-demo-record{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem}.ls-demo-record strong{color:var(--ls-cyan)}.ls-demo-expiry{display:flex;gap:.4rem;flex-wrap:wrap;margin:.8rem 0}.ls-demo-expiry>*{padding:.4rem .65rem;border:1px solid var(--ls-line);border-radius:4px;font-size:.8rem}.ls-demo-expiry b{color:var(--ls-cyan);border-color:var(--ls-cyan)}.ls-demo-join{display:flex;gap:1.25rem;align-items:center;margin-top:1.5rem}.ls-demo-code{font-size:1.6rem;font-weight:700;flex-shrink:0}.ls-demo-join p{font-size:.9rem}.ls-demo-controls{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;margin-top:1rem}.ls-demo-controls>span{font-size:.85rem;color:var(--ls-muted);margin-right:.5rem}.ls-demo-controls button{border:1px solid var(--ls-line);background:transparent;color:var(--ls-ink);border-radius:5px;min-height:2.6rem;font:inherit;cursor:pointer}.ls-demo-icon{width:2.6rem;flex-shrink:0}.ls-demo-toggle{padding:.4rem .8rem;font-size:.85rem!important}.ls-premium-demo button:focus-visible,.ls-premium-demo a:focus-visible,.ls-demo-stage:focus-visible{outline:2px solid var(--ls-cyan);outline-offset:4px}
.ls-demo-frame[data-playing=true] .ls-demo-phase-one{animation:ls-demo-in .6s both}.ls-demo-frame[data-playing=true] .ls-demo-phase-two{animation:ls-demo-in .6s 1.6s both}.ls-demo-frame[data-playing=true] .ls-demo-phase-three{animation:ls-demo-in .6s 3.2s both}@keyframes ls-demo-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.ls-demo-frame .ls-demo-controls{padding:.8rem 1rem;margin:0;border-top:1px solid var(--ls-line)}.ls-premium-demo .ls-demo-scope{font-size:.8rem;margin-top:1rem;max-width:75ch}
@media(max-width:700px){.learnstack-home .ls-premium-demo{padding:2.5rem 1rem}.ls-demo-layout{grid-template-columns:minmax(0,1fr);gap:1.75rem}.ls-demo-frame{grid-row:1}.ls-demo-description{grid-row:2}.ls-premium-demo h2{font-size:1.7rem}.ls-demo-description h3{font-size:1.35rem}.ls-demo-stage{padding:1rem;min-height:29rem}.ls-demo-tabs button{font-size:.85rem;padding:.6rem .7rem}.ls-demo-answer{flex-wrap:wrap}.ls-demo-answer b{margin-left:2.35rem}.ls-demo-bar{font-size:.78rem;padding:.8rem 1rem}}
@media(prefers-reduced-motion:reduce){.ls-demo-frame .ls-demo-stage>*{animation:none!important;opacity:1;transform:none}}
.ls-demo-workflow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;list-style:decimal;padding:1.5rem 0 1.5rem 1.25rem;margin:0 0 2rem;border-block:1px solid var(--ls-line)}
.ls-demo-workflow li{padding-right:1rem;line-height:1.5}.ls-demo-workflow strong,.ls-demo-workflow span{display:block}.ls-demo-workflow span{font-size:.85rem;color:var(--ls-muted);margin-top:.35rem}
.ls-demo-evidence{margin-top:1.5rem;max-width:70ch}.ls-demo-evidence summary{cursor:pointer;min-height:44px;padding:.7rem 0;font-weight:600}.ls-plan-feedback{display:inline-block;color:var(--ls-ink);font-size:.9rem;margin-top:1rem;text-underline-offset:4px}
@media(max-width:700px){.ls-demo-workflow{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.ls-demo-workflow li{font-size:.9rem}}

/* The session is a single stage: four acts, one continuous learning thread. */
.learnstack-home .ls-premium-demo.ls-pro-walkthrough {
  --ls-stage-bg:oklch(94% .016 168); --ls-stage-ink:oklch(23% .026 171);
  --ls-stage-muted:oklch(43% .025 171); --ls-stage-line:oklch(75% .032 171);
  --ls-stage-accent:oklch(42% .105 171); --ls-flow-progress:25%;
  width:100%; max-width:none; margin:0; padding:0;
  height:calc(100svh - var(--ls-flow-header,64px)); min-height:550px;
  display:flex; flex-direction:column; overflow:hidden; overflow-anchor:none;
  background:var(--ls-stage-bg); color:var(--ls-stage-ink); border:0;
  transition:background-color .6s,color .6s;
  isolation:isolate;
}
.learnstack-home .ls-pro-walkthrough[data-chapter="2"] {
  --ls-stage-bg:oklch(90% .045 285); --ls-stage-ink:oklch(25% .035 285);
  --ls-stage-muted:oklch(43% .035 285); --ls-stage-line:oklch(71% .05 285);
  --ls-stage-accent:oklch(39% .08 285);
}
.learnstack-home .ls-pro-walkthrough[data-chapter="3"] {
  --ls-stage-bg:oklch(21% .015 180); --ls-stage-ink:oklch(96% .012 170);
  --ls-stage-muted:oklch(76% .022 170); --ls-stage-line:oklch(42% .025 170);
  --ls-stage-accent:oklch(80% .12 80);
}
.learnstack-home .ls-pro-walkthrough[data-chapter="4"] {
  --ls-stage-bg:oklch(84% .10 165); --ls-stage-ink:oklch(24% .04 166);
  --ls-stage-muted:oklch(40% .05 166); --ls-stage-line:oklch(64% .07 166);
  --ls-stage-accent:oklch(33% .08 166);
}
.learnstack-home .ls-pro-walkthrough .ls-demo-intro {
  flex:none; max-width:none; margin:0; padding:22px 40px 0;
  display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; column-gap:24px; row-gap:7px; color:var(--ls-stage-ink);
}
.ls-pro-walkthrough .ls-demo-intro h2 { grid-column:1; grid-row:1; font-family:inherit; font-size:40px; line-height:1.15; font-weight:650; margin:0; color:inherit; }
.ls-pro-walkthrough .ls-flow-skip { grid-column:2; grid-row:1; font-size:12px; color:inherit; text-decoration:underline; text-underline-offset:5px; }
.ls-pro-walkthrough .ls-demo-workflow {
  flex:none; position:relative; display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0; list-style:none; margin:18px 40px 0; padding:0; border:0;
  border-bottom:1px solid var(--ls-stage-line);
}
.ls-pro-walkthrough .ls-demo-workflow::after { content:''; position:absolute; bottom:-1px; left:0; width:var(--ls-flow-progress); height:2px; background:var(--ls-stage-accent); transition:width .65s cubic-bezier(.16,1,.3,1); pointer-events:none; }
.ls-pro-walkthrough .ls-demo-workflow li { padding:0; margin:0; min-width:0; }
.ls-pro-walkthrough .ls-demo-workflow button { width:100%; display:flex; align-items:center; gap:12px; min-height:66px; padding:12px 16px 12px 0; text-align:left; border:0; border-radius:0; background:none; color:var(--ls-stage-muted); font:inherit; cursor:pointer; transition:color .2s; }
.ls-pro-walkthrough .ls-demo-workflow button:hover,.ls-pro-walkthrough .ls-demo-workflow button[aria-current=step] { color:var(--ls-stage-ink); }
.ls-pro-walkthrough .ls-demo-workflow strong { font-size:22px; font-weight:550; line-height:1.25; }
.ls-pro-walkthrough .ls-demo-workflow button[aria-current=step] strong { font-weight:700; }
.ls-pro-walkthrough .ls-demo-workflow .ls-flow-step-number { font-size:15px; color:inherit; margin:0; font-variant-numeric:tabular-nums; }
.ls-pro-walkthrough button:focus-visible,.ls-pro-walkthrough a:focus-visible { outline:2px solid var(--ls-stage-accent); outline-offset:5px; }
.ls-flow-viewport { flex:1; min-height:0; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scrollbar-width:none; overscroll-behavior-x:contain; }
.ls-flow-viewport::-webkit-scrollbar { display:none; }
.ls-flow-track { display:flex; width:100%; height:100%; }
.ls-flow-panel { flex:0 0 100%; width:100%; height:100%; min-width:0; box-sizing:border-box; scroll-snap-align:start; scroll-snap-stop:always; overflow-y:auto; overflow-x:hidden; padding:22px 40px 28px; display:flex; flex-direction:column; gap:10px; }
.ls-flow-copy { display:grid; grid-template-columns:1.35fr 1fr; column-gap:50px; position:relative; z-index:2; flex:none; padding:0; }
.ls-flow-copy .ls-demo-plan { display:none; }
.ls-flow-copy h3 { grid-column:1; grid-row:1/3; font-family:inherit; font-size:28px; font-weight:550; line-height:1.2; margin:5px 0 8px; color:var(--ls-stage-ink); }
.ls-flow-copy p { grid-column:2; grid-row:1; font-size:14px; line-height:1.6; max-width:370px; margin:0 0 8px; color:var(--ls-stage-muted); }
.ls-flow-copy .ls-demo-plan-link { grid-column:2; grid-row:2; justify-self:start; align-self:start; font-size:14px; font-weight:650; color:var(--ls-stage-ink); text-decoration:underline; text-underline-offset:6px; text-decoration-thickness:1px; }
.ls-flow-copy .ls-demo-plan-link:hover { text-decoration-thickness:2px; }
.ls-flow-copy--brief .ls-demo-plan-link { grid-row:1/3; align-self:center; }
.ls-flow-screen { flex:1; min-height:0; width:100%; max-width:1600px; margin:0 auto; position:relative; line-height:1.5; overflow:clip; overflow-clip-margin:16px; }
.ls-flow-screen p { font:inherit; line-height:1.6; color:inherit; }
.ls-flow-screen h4 { font-family:inherit; color:inherit; margin:0; font-weight:600; line-height:1.15; }
.ls-flow-screen b,.ls-flow-screen strong { color:inherit; }
.ls-flow-screen small { font-size:9px; line-height:1.5; }
.ls-session-paper { position:relative; color:oklch(27% .027 167); background:oklch(99% .005 165); border:1px solid oklch(88% .015 165); border-radius:6px; box-sizing:border-box; box-shadow:0 24px 48px -26px oklch(25% .04 170 / .30),0 3px 5px oklch(25% .04 170 / .04); }
.ls-paper-topline,.ls-paper-bottom { display:flex; align-items:center; justify-content:space-between; gap:15px; font-size:10px; color:oklch(48% .025 166); }
.ls-paper-topline { padding-bottom:14px; border-bottom:1px solid oklch(90% .018 165); }
.ls-paper-bottom { padding-top:14px; margin-top:20px; border-top:1px solid oklch(88% .018 165); }
.ls-paper-bottom span:last-child { font-size:14px; }
.ls-stage-study { width:100%; height:100%; display:grid; grid-template-columns:1.4fr .9fr; align-items:center; gap:65px; padding:20px 30px 10px 0; box-sizing:border-box; }
.ls-study-diagram { position:relative; padding-bottom:20px; grid-column:2; grid-row:1; }
.ls-diagram-caption { display:block; font-size:10px; color:var(--ls-stage-muted); margin-bottom:42px; }
.ls-energy-route { display:grid; grid-template-columns:1fr 45px 1.05fr 45px 1fr; align-items:center; gap:5px; }
.ls-route-node { display:flex; flex-direction:column; align-items:center; gap:9px; text-align:center; }
.ls-route-symbol { display:flex; align-items:center; justify-content:center; height:90px; font-size:30px; font-weight:600; line-height:1; }
.ls-route-symbol sub { align-self:center; margin-top:15px; font-size:13px; }
.ls-route-atp .ls-route-symbol { font-size:48px; font-weight:650; color:var(--ls-stage-accent); }
.ls-route-node b { font-size:13px; font-weight:650; }
.ls-route-node small { color:var(--ls-stage-muted); font-size:10px; }
.ls-route-path { height:1px; background:var(--ls-stage-accent); position:relative; margin-top:-38px; }
.ls-route-path::after { content:''; width:6px; height:6px; position:absolute; right:0; top:-3px; border-top:1px solid var(--ls-stage-accent); border-right:1px solid var(--ls-stage-accent); transform:rotate(45deg); }
.ls-contracting-fibers { display:flex; align-items:center; gap:5px; height:90px; transform:rotate(-16deg); }
.ls-contracting-fibers i { display:block; width:12px; height:55px; border-radius:7px; background:oklch(59% .13 42); border:1px solid oklch(48% .11 42); box-shadow:inset 3px 0 0 oklch(78% .10 42); }
.ls-contracting-fibers i:nth-child(2n) { height:76px; background:oklch(66% .14 42); }
.ls-study-diagram>p { margin:28px 0 0; font-size:16px; line-height:1.5; color:var(--ls-stage-muted); }
.ls-study-paper { padding:30px 34px 24px; width:100%; max-width:760px; justify-self:start; grid-column:1; grid-row:1; }
.ls-study-paper h4 { font-size:42px; margin:22px 0 14px; }
.ls-study-paper>p { font-size:15px; margin:0 0 20px; max-width:48ch; }
.ls-study-paper mark { background:oklch(88% .09 164); color:oklch(30% .07 164); padding:1px 3px; }
.ls-paper-check { display:grid; gap:8px; padding-top:16px; border-top:1px solid oklch(88% .02 165); }
.ls-paper-check>small { color:oklch(48% .03 165); }
.ls-paper-check>b { font-size:16px; font-weight:600; }
.ls-paper-response { display:flex; align-items:center; gap:15px; font-size:14px; padding:14px; background:oklch(95% .03 165); border:1px solid oklch(80% .05 165); border-radius:4px; color:oklch(38% .08 165); }
.ls-paper-response i { margin-left:auto; font-style:normal; font-size:17px; }
.ls-stage-material { width:100%; height:100%; display:grid; grid-template-columns:.8fr .2fr 1.35fr; gap:30px; align-items:center; max-width:1250px; margin:auto; padding:22px 30px 12px; box-sizing:border-box; }
.ls-document-stack { position:relative; margin:0 25px 0 10px; }
.ls-document-back { position:absolute; inset:-7px -13px 42px 8px; transform:rotate(3deg); background:oklch(54% .035 158); border-radius:5px; color:oklch(90% .03 154); padding:24px; }
.ls-document-back span { display:block; font-size:9px; }
.ls-document-back b { font-size:28px; }
.ls-source-paper { transform:rotate(-2deg); padding:23px 27px 18px; background:oklch(96% .008 165); box-shadow:0 10px 22px -18px oklch(25% .04 170 / .25); }
.ls-source-paper h4 { font-size:25px; margin:23px 0 12px; }
.ls-source-paper>p { font-size:11px; color:oklch(46% .04 165); }
.ls-source-paper ol { padding-left:15px; display:grid; gap:13px; font-size:12px; line-height:1.6; margin:20px 0 28px; }
.ls-file-tag { display:block; margin:24px 0 0 15px; font-size:11px; color:var(--ls-stage-muted); }
.ls-material-transfer { display:flex; align-items:center; justify-content:center; gap:10px; font-size:35px; color:var(--ls-stage-accent); }
.ls-material-transfer i { display:block; width:30px; height:1px; background:var(--ls-stage-line); }
.ls-builder-paper { padding:26px 32px 22px; }
.ls-builder-paper h4 { font-size:36px; margin:18px 0; }
.ls-read-receipt { display:flex; justify-content:space-between; gap:10px; font-size:10px; padding:10px 0; border-block:1px solid oklch(88% .02 165); margin-bottom:14px; }
.ls-read-receipt b { color:oklch(43% .08 165); }
.ls-builder-paper>small { color:oklch(48% .03 165); font-size:8px; }
.ls-skill-lines { display:grid; gap:9px; margin:10px 0; }
.ls-skill-lines span { display:flex; align-items:center; gap:12px; font-size:12px; }
.ls-skill-lines i { font-style:normal; font-size:9px; color:oklch(54% .04 165); }
.ls-builder-paper .ls-reviewed { font-size:10px; color:oklch(43% .08 165); margin:13px 0; }
.ls-generated-preview { border-top:1px solid oklch(85% .03 165); padding-top:12px; display:grid; gap:7px; }
.ls-generated-preview small { font-size:8px; color:oklch(48% .03 165); }
.ls-generated-preview b { font-size:17px; font-weight:600; line-height:1.45; }
.ls-stage-review { display:grid; grid-template-columns:.45fr 1.9fr .5fr; gap:35px; height:100%; width:100%; align-items:center; padding:18px 0; box-sizing:border-box; }
.ls-missed-fragment { position:relative; align-self:center; transform:rotate(-4deg); padding:0 0 50px; color:oklch(77% .025 172); }
.ls-missed-fragment>span:first-child { font-size:10px; }
.ls-missed-fragment p { font-size:20px; line-height:1.3; margin:18px 0 25px; color:oklch(80% .06 31); text-decoration:line-through; text-decoration-color:oklch(64% .11 31); text-decoration-thickness:1px; }
.ls-missed-fragment small { font-size:11px; line-height:1.6; }
.ls-missed-line { display:block; position:absolute; right:-35px; top:58%; width:50px; height:1px; background:oklch(59% .045 170); transform:rotate(4deg); }
.ls-review-paper { padding:28px 34px; }
.ls-review-paper h4 { font-size:34px; line-height:1.2; margin:20px 0; max-width:32ch; }
.ls-review-choice { display:flex; align-items:center; gap:12px; padding:12px 0; border-top:1px solid oklch(88% .02 165); color:oklch(43% .03 165); font-size:15px; line-height:1.45; }
.ls-review-choice>span { display:grid; place-items:center; width:25px; height:25px; flex:none; border:1px solid oklch(80% .03 165); border-radius:50%; font-size:11px; }
.ls-review-choice small { display:block; font-size:9px; margin-top:5px; }
.ls-review-choice>i { margin-left:auto; font-size:19px; font-style:normal; }
.ls-review-choice.is-wrong { color:oklch(47% .10 22); }
.ls-review-choice.is-correct { color:oklch(39% .09 163); }
.ls-review-choice.is-correct>span { background:oklch(93% .05 165); border-color:oklch(70% .08 165); }
.ls-review-explanation { border-top:1px solid oklch(80% .04 165); padding-top:14px; }
.ls-review-explanation>small { font-size:8px; color:oklch(44% .04 165); }
.ls-review-explanation>p { font-size:14px; margin:7px 0 0; line-height:1.6; }
.ls-connection-note { color:oklch(86% .10 85); position:relative; }
.ls-connection-note>span { display:block; font-size:9px; color:oklch(77% .07 85); }
.ls-connection-note>b { display:block; font-size:20px; font-weight:550; line-height:1.3; margin:17px 0; }
.ls-connection-note p { font-size:12px; color:oklch(82% .035 85); }
.ls-connection-note i { position:absolute; left:-45px; bottom:-10px; width:65px; height:40px; border-bottom:1px solid oklch(73% .1 85); border-left:1px solid oklch(73% .1 85); }
.ls-stage-fresh { display:grid; grid-template-columns:.55fr 1.65fr; gap:70px; max-width:1250px; height:100%; width:100%; margin:auto; align-items:center; padding:15px 30px; position:relative; box-sizing:border-box; }
.ls-attempt-history { padding:0 0 22px; }
.ls-attempt-history>span { font-size:9px; color:var(--ls-stage-muted); }
.ls-attempt-history h4 { font-size:18px; margin:15px 0 10px; color:var(--ls-stage-muted); }
.ls-attempt-history p { font-size:11px; color:var(--ls-stage-muted); }
.ls-history-rule { width:1px; height:48px; background:var(--ls-stage-line); margin:22px 0 22px 5px; }
.ls-attempt-history>.ls-new-label { color:var(--ls-stage-ink); }
.ls-attempt-history>b { display:block; font-size:21px; font-weight:550; line-height:1.3; margin-top:12px; }
.ls-fresh-paper { padding:28px 34px 22px; }
.ls-fresh-kicker { display:block; margin:18px 0 10px; font-size:9px; color:oklch(46% .07 165); }
.ls-fresh-paper h4 { font-size:33px; line-height:1.2; margin-bottom:20px; }
.ls-fresh-paper .ls-fresh-reason { font-size:14px; margin:12px 0 0; }
.ls-flow-track[data-playing=true] .ls-flow-panel[data-active=true] .ls-flow-copy h3 { animation:ls-act-title .9s cubic-bezier(.16,1,.3,1) both; }
.ls-flow-track[data-playing=true] .ls-flow-panel[data-active=true] .ls-session-paper { animation:ls-paper-arrival 1.1s cubic-bezier(.16,1,.3,1) both; }
.ls-flow-track[data-playing=true] .ls-flow-panel[data-active=true] .ls-route-path { animation:ls-route-draw 1s .35s cubic-bezier(.16,1,.3,1) both; transform-origin:left; }
.ls-flow-track[data-playing=true] .ls-flow-panel[data-active=true] .ls-contracting-fibers { animation:ls-muscle-contract 1.8s .6s ease-in-out both; }
.ls-flow-track[data-playing=true] .ls-flow-panel[data-active=true] .ls-generated-preview,
.ls-flow-track[data-playing=true] .ls-flow-panel[data-active=true] .ls-paper-response,
.ls-flow-track[data-playing=true] .ls-flow-panel[data-active=true] .ls-connection-note { animation:ls-meaning-reveal .8s .45s cubic-bezier(.16,1,.3,1) both; }
.ls-flow-track[data-playing=true] .ls-flow-panel[data-active=true] .ls-skill-lines span { animation:ls-meaning-reveal .65s .2s cubic-bezier(.16,1,.3,1) both; }
.ls-flow-track[data-playing=true] .ls-flow-panel[data-active=true] .ls-skill-lines span:nth-child(2) { animation-delay:.35s; }
.ls-flow-track[data-playing=true] .ls-flow-panel[data-active=true] .ls-skill-lines span:nth-child(3) { animation-delay:.5s; }
@keyframes ls-act-title { from { opacity:0; translate:0 30px; } to { opacity:1; translate:0 0; } }
@keyframes ls-paper-arrival { from { opacity:0; translate:55px 30px; rotate:4deg; } to { opacity:1; translate:0 0; rotate:0deg; } }
@keyframes ls-route-draw { from { scale:0 1; } to { scale:1 1; } }
@keyframes ls-muscle-contract { 0%,100% { scale:1; } 35%,65% { scale:1.15 .78; } }
@keyframes ls-meaning-reveal { from { opacity:0; translate:0 12px; } to { opacity:1; translate:0 0; } }
@media(min-width:1700px) and (min-height:850px) {
  .ls-flow-panel { padding:26px 65px 40px; }
  .ls-flow-copy h3 { font-size:32px; }
  .ls-flow-copy p { font-size:17px; max-width:440px; }
  .ls-flow-copy .ls-demo-plan-link { font-size:14px; }
  .ls-session-paper { padding:32px 36px; }
  .ls-study-paper h4 { font-size:48px; }
  .ls-study-paper>p { font-size:16px; }
  .ls-review-paper h4,.ls-fresh-paper h4 { font-size:40px; }
  .ls-review-choice { font-size:16px; padding:17px 0; }
  .ls-review-explanation>p,.ls-fresh-paper .ls-fresh-reason { font-size:15px; }
  .ls-paper-topline,.ls-paper-bottom { font-size:12px; }
  .ls-paper-check>b { font-size:17px; }
  .ls-paper-response { font-size:14px; }
  .ls-builder-paper h4 { font-size:42px; }
  .ls-source-paper h4 { font-size:30px; }
  .ls-skill-lines span,.ls-source-paper ol { font-size:15px; }
  .ls-generated-preview b { font-size:16px; }
  .ls-route-atp .ls-route-symbol { font-size:58px; }
  .ls-study-diagram>p { font-size:18px; }
}
@media(max-height:780px) and (min-width:1001px) {
  .learnstack-home .ls-pro-walkthrough .ls-demo-intro { padding-top:13px; }
  .ls-pro-walkthrough .ls-demo-workflow { margin-top:10px; }
  .ls-pro-walkthrough .ls-demo-workflow button { min-height:56px; }
  .ls-flow-panel { padding-top:15px; padding-bottom:20px; }
  .ls-flow-copy h3 { font-size:26px; }
  .ls-flow-copy p { font-size:12px; }
  .ls-flow-copy .ls-demo-plan-link { font-size:13px; }
  .ls-stage-study,.ls-stage-material,.ls-stage-review,.ls-stage-fresh { padding-top:10px; padding-bottom:10px; }
  .ls-session-paper { padding:16px 22px; }
  .ls-paper-topline { padding-bottom:10px; }
  .ls-paper-bottom { padding-top:10px; margin-top:13px; }
  .ls-study-paper h4 { font-size:35px; margin:15px 0 10px; }
  .ls-study-paper>p { margin-bottom:12px; font-size:14px; }
  .ls-paper-check { padding-top:10px; gap:6px; }
  .ls-paper-check>b { font-size:14px; }
  .ls-paper-response { padding:11px; font-size:13px; }
  .ls-diagram-caption { margin-bottom:25px; }
  .ls-study-diagram>p { font-size:17px; margin-top:20px; }
  .ls-source-paper h4 { font-size:23px; margin:15px 0 10px; }
  .ls-builder-paper h4 { font-size:30px; margin:15px 0 10px; }
  .ls-source-paper ol { gap:7px; margin:13px 0 18px; font-size:11px; }
  .ls-skill-lines { gap:6px; }
  .ls-skill-lines span { font-size:11px; }
  .ls-builder-paper .ls-reviewed { margin:9px 0; }
  .ls-read-receipt { padding:7px 0; margin-bottom:10px; }
  .ls-file-tag { margin-top:16px; }
  .ls-review-paper h4 { font-size:28px; margin:14px 0; }
  .ls-review-choice { padding:10px 0; font-size:14px; }
  .ls-review-explanation { padding-top:10px; }
  .ls-review-explanation>p { font-size:13px; }
  .ls-fresh-paper h4 { font-size:28px; margin-bottom:13px; }
  .ls-fresh-kicker { margin-top:12px; }
  .ls-fresh-paper .ls-fresh-reason { font-size:13px; }
}
@media(max-width:1100px) {
  .ls-flow-copy h3 { font-size:26px; }
  .ls-pro-walkthrough .ls-demo-intro h2 { font-size:34px; }
  .ls-pro-walkthrough .ls-demo-workflow strong { font-size:18px; }
  .ls-flow-copy { column-gap:30px; }
  .ls-stage-study { gap:24px; padding-right:10px; }
  .ls-route-symbol { font-size:23px; }
  .ls-route-atp .ls-route-symbol { font-size:40px; }
  .ls-energy-route { grid-template-columns:1fr 20px 1fr 20px 1fr; }
  .ls-route-node b { font-size:11px; }
  .ls-route-node small { font-size:9px; }
  .ls-contracting-fibers { gap:3px; }
  .ls-contracting-fibers i { width:8px; }
  .ls-stage-material { gap:12px; padding-left:8px; padding-right:8px; grid-template-columns:.8fr 45px 1.35fr; }
  .ls-stage-review { grid-template-columns:.45fr 1.8fr; gap:28px; }
  .ls-connection-note { display:none; }
  .ls-stage-fresh { gap:35px; padding-left:5px; padding-right:20px; }
}
@media(max-width:1000px) and (min-width:701px) {
  .ls-flow-panel { padding:20px 28px 28px; }
  .ls-flow-copy h3 { font-size:26px; }
  .ls-flow-copy p { font-size:12px; }
  .ls-flow-copy .ls-demo-plan-link { font-size:13px; }
  .ls-stage-study { grid-template-columns:1.3fr .9fr; }
  .ls-study-paper { padding:18px 22px; }
  .ls-study-paper h4 { font-size:32px; }
  .ls-study-paper>p { font-size:14px; }
  .ls-paper-check>b { font-size:14px; }
  .ls-paper-response { font-size:13px; }
  .ls-study-diagram>p { font-size:15px; }
  .ls-source-paper,.ls-builder-paper { padding:17px 20px; }
  .ls-builder-paper h4 { font-size:30px; }
  .ls-source-paper h4 { font-size:23px; }
  .ls-source-paper ol { font-size:11px; }
  .ls-stage-fresh { grid-template-columns:.5fr 1.5fr; }
  .ls-fresh-paper { padding:20px 23px; }
  .ls-fresh-paper h4 { font-size:28px; }
}
@media(max-width:700px) {
  .learnstack-home .ls-premium-demo.ls-pro-walkthrough { min-height:530px; }
  .learnstack-home .ls-pro-walkthrough .ls-demo-intro { padding:17px 18px 0; column-gap:12px; row-gap:6px; }
  .ls-pro-walkthrough .ls-demo-intro h2 { font-size:28px; }
  .ls-pro-walkthrough .ls-flow-skip { font-size:10px; }
  .ls-pro-walkthrough .ls-demo-workflow { grid-template-columns:repeat(2,minmax(0,1fr)); margin:12px 18px 0; }
  .ls-pro-walkthrough .ls-demo-workflow button { display:flex; gap:8px; min-height:48px; padding:9px 8px 9px 0; }
  .ls-pro-walkthrough .ls-demo-workflow strong { font-size:15px; }
  .ls-pro-walkthrough .ls-demo-workflow .ls-flow-step-number { font-size:12px; display:block; margin:0; }
  .ls-flow-panel { padding:20px 20px 35px; gap:22px; }
  .ls-flow-copy { display:block; }
  .ls-flow-copy .ls-demo-plan { font-size:9px; }
  .ls-flow-copy h3 { font-size:22px; margin:7px 0 10px; }
  .ls-flow-copy p { font-size:12px; max-width:34ch; margin-bottom:12px; }
  .ls-flow-copy .ls-demo-plan-link { font-size:13px; display:inline-block; }
  .ls-flow-screen { flex:none; min-height:0; height:auto; }
  .ls-stage-study,.ls-stage-material,.ls-stage-review,.ls-stage-fresh { height:auto; padding:6px 5px 20px; grid-template-columns:minmax(0,1fr); gap:30px; }
  .ls-study-diagram { padding:0; grid-column:1; grid-row:2; }
  .ls-diagram-caption { margin-bottom:16px; font-size:9px; }
  .ls-study-diagram>p { font-size:14px; margin:19px 0 5px; }
  .ls-route-symbol { height:65px; }
  .ls-route-atp .ls-route-symbol { font-size:36px; }
  .ls-contracting-fibers { height:65px; }
  .ls-contracting-fibers i { height:39px; }
  .ls-contracting-fibers i:nth-child(2n) { height:53px; }
  .ls-study-paper { margin:0; padding:20px; }
  .ls-study-paper h4 { font-size:30px; }
  .ls-study-paper>p { font-size:14px; }
  .ls-paper-response { font-size:13px; }
  .ls-document-stack { margin:6px 24px 0 8px; }
  .ls-material-transfer { rotate:90deg; height:20px; font-size:25px; }
  .ls-source-paper,.ls-builder-paper { padding:20px; }
  .ls-source-paper h4 { font-size:24px; }
  .ls-builder-paper h4 { font-size:30px; }
  .ls-source-paper ol { font-size:12px; }
  .ls-missed-fragment { padding:0; transform:none; }
  .ls-missed-fragment p { font-size:18px; margin:10px 0; }
  .ls-missed-line { display:none; }
  .ls-review-paper { padding:20px; transform:none; }
  .ls-review-paper h4 { font-size:25px; }
  .ls-review-choice { font-size:14px; }
  .ls-review-explanation>p { font-size:14px; }
  .ls-connection-note { display:block; padding-top:5px; }
  .ls-connection-note>b { font-size:20px; }
  .ls-connection-note i { display:none; }
  .ls-attempt-history { padding:0; }
  .ls-attempt-history h4 { font-size:18px; margin-top:10px; }
  .ls-history-rule { height:22px; margin:14px 0; }
  .ls-attempt-history>b { font-size:20px; }
  .ls-fresh-paper { padding:20px; transform:none; }
  .ls-fresh-paper h4 { font-size:25px; }
}
@media(prefers-reduced-motion:reduce) {
  .ls-pro-walkthrough,.ls-pro-walkthrough * { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
