/* Product proof stays in the first screen after the brand introduction. */
html:root .learnstack-home .ls-home-sticky-header { grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); }
.ls-home-sticky-header > .ls-studio-cta { justify-self:end; }
.ls-header-links { display:flex; align-items:center; gap:28px; }
.ls-header-links a { color:#111714; font-size:14px; font-weight:600; text-decoration:none; padding:12px 0; white-space:nowrap; }
.ls-header-links a:hover { color:#26765b; text-decoration:underline; text-underline-offset:5px; }
.ls-header-links a:focus-visible { outline:2px solid #26765b; outline-offset:4px; }
html:root .learnstack-home .ls-home-sticky-header .ls-site-menu { display:none; }
html:root .ls-footer-brand .ls-footer-about { max-width:65ch; font-size:14px; font-weight:400; margin-top:12px; color:#52675a; }
.ls-footer-faq { margin-top:32px; max-width:65ch; color:#34473e; }
.ls-footer-faq h3 { font-size:14px; color:#26765b; margin-bottom:12px; }
.ls-footer-faq details { border-bottom:1px solid #e6eee9; padding:10px 0; font-size:13px; }
.ls-footer-faq summary { cursor:pointer; }
.ls-footer-faq p { line-height:1.6; margin:10px 0; }
#about,#faq { scroll-margin-top:90px; }
@media(max-width:900px) { .ls-header-links { display:none; } html:root .learnstack-home .ls-home-sticky-header .ls-site-menu { display:block; } html:root .learnstack-home .ls-home-sticky-header { grid-template-columns:minmax(0,1fr) auto auto; } }
body.ls-menu-open { overflow:hidden; }
html:root .learnstack-home .ls-home-sticky-header .ls-site-menu-panel { position:fixed; inset:0; margin:0; width:100%; max-width:none; height:100dvh; max-height:100dvh; box-sizing:border-box; padding:80px 24px 24px; border:0; border-radius:0; background:#fff; color:#15271e; box-shadow:none; overflow:auto; }
.ls-site-menu-panel::backdrop { background:#fff; }
.ls-menu-brand { position:absolute; top:24px; left:24px; display:block; }
.ls-menu-logo { display:block; width:180px; height:32px; object-fit:cover; object-position:center 49%; }
html:root .ls-site-menu-panel .ls-site-menu-item { width:100%; display:block; margin:0; padding:18px 0; min-height:72px; background:transparent; border:0; border-bottom:1px solid #e1e5e2; border-radius:0; font-size:26px; line-height:1.4; font-weight:650; color:#111714; text-align:left; }
html:root .ls-site-menu-panel .ls-menu-close { position:absolute; top:20px; right:28px; width:48px; height:48px; border:0; background:transparent; color:#15271e; font-size:36px; line-height:1; cursor:pointer; }
.ls-site-menu-panel button:focus-visible { outline:2px solid #26765b; outline-offset:6px; }
html:root .learnstack-home .ls-privacy-footer { display:block; width:100%; box-sizing:border-box; padding:64px 32px 28px; margin:0; background:#fff; color:#273a31; text-align:left; border:0; }
html:root .learnstack-home .ls-privacy-footer { position:relative; z-index:2; opacity:1 !important; visibility:visible !important; transform:none !important; background:#fff !important; }
.ls-footer-brand { margin-bottom:30px; }
.ls-footer-logo { display:block; width:210px; height:38px; object-fit:cover; object-position:center 49%; }
.ls-footer-brand p { margin:16px 0 0; font-size:20px; font-weight:600; line-height:1.5; color:#245e47; }
.ls-footer-tagline-lead { color:#111714; }
.ls-footer-tagline-end { display:inline-block; white-space:nowrap; max-width:100%; }
@media(max-width:400px) { .ls-footer-brand p { font-size:17px; } }
.ls-footer-columns { display:grid; grid-template-columns:1fr 1.2fr 1.3fr 1.5fr; gap:32px; }
.ls-footer-column { min-width:0; }
.ls-footer-column h3 { margin:0 0 14px; color:#26765b; font-size:14px; font-weight:700; }
html:root .learnstack-home .ls-footer-column a,html:root .learnstack-home .ls-footer-column button { display:block; width:fit-content; max-width:100%; margin:0 0 14px; padding:0; border:0; background:none; color:#34473e; font:inherit; font-size:15px; line-height:1.6; text-decoration:none; text-align:left; cursor:pointer; overflow-wrap:anywhere; }
html:root .learnstack-home .ls-footer-column :is(a,button):hover { color:#26765b; text-decoration:underline; text-underline-offset:4px; }
.ls-footer-column :is(a,button):focus-visible { outline:2px solid #26765b; outline-offset:5px; }
html:root .learnstack-home .ls-footer-column a,html:root .learnstack-home .ls-footer-column button { font-size:13px; line-height:1.5; margin-bottom:8px; }
html:root .learnstack-home .ls-privacy-footer { padding-top:40px; padding-bottom:32px; }
@media(max-width:700px) { .ls-footer-columns { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 24px; } html:root .learnstack-home .ls-privacy-footer { padding:40px 20px 24px; } }
@media(max-width:360px) { .ls-footer-columns { grid-template-columns:1fr; } }
html:not(.ls-dark-mode) .learnstack-home.learnstack-studio-home { --ls-studio-paper: color-mix(in srgb, #f7f6f2 70%, #f5f5f5 30%); }
html:root .ls-intro-loader { --ls-intro-paper: #f4f7f8; --ls-intro-logo-width: min(82vw, 41.36rem); --ls-intro-wordmark-h: calc(var(--ls-intro-logo-width) * .16923077); --ls-intro-final-top: calc(50svh - var(--ls-intro-wordmark-h) / 2); --ls-intro-start-y: calc(50svh - var(--ls-intro-wordmark-h) * .4 - max(20px, env(safe-area-inset-bottom))); background: #080a0b; pointer-events: auto; animation: lsIntroCinemaFade 5.05s linear both; }
html:root .ls-intro-loader::before { background: #080a0b; opacity: 1; animation: none; }
html:root .ls-intro-loader::after { display: none; }
html:root .ls-intro-loader .ls-intro-letter { color: #f4f7f8; animation-name: lsLetterStackDrop; animation-delay: var(--letter-delay); }
html:root .ls-intro-loader .ls-intro-wordmark { width: var(--ls-intro-logo-width); height: var(--ls-intro-wordmark-h); animation: lsIntroStackGlide 880ms cubic-bezier(.16,1,.3,1) 2.6s forwards, lsIntroStackFade 160ms ease-in 3.5s forwards; }
.ls-intro-art-letter { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; animation: lsIntroGravityDrop 660ms cubic-bezier(.55,.05,.9,.6) var(--letter-delay) forwards, lsIntroArtworkAssemble 380ms cubic-bezier(.22,1,.36,1) 2.18s forwards; }
.ls-intro-logo-slice { display: block; width: 100%; height: 100%; }
@keyframes lsIntroGravityDrop { 0% { opacity: 0; transform: translate3d(var(--stack-x), -110svh, 0); } 76% { opacity: 1; transform: translate3d(var(--stack-x), var(--stack-y), 0); } 88% { opacity: 1; transform: translate3d(var(--stack-x), calc(var(--stack-y) - 6px), 0); } 100% { opacity: 1; transform: translate3d(var(--stack-x), var(--stack-y), 0); } }
@keyframes lsIntroArtworkAssemble { from { opacity: 1; transform: translate3d(var(--stack-x), var(--stack-y), 0); } to { opacity: 1; transform: translate3d(0, 0, 0); } }
html.ls-intro-running:not(.ls-intro-revealing) .learnstack-home { visibility: hidden; }
.ls-intro-resolved-logo { position: absolute; z-index: 3; left: 50%; top: var(--ls-intro-final-top); width: var(--ls-intro-logo-width); height: var(--ls-intro-wordmark-h); object-fit: contain; transform: translateX(-50%); opacity: 0; content: url('./learnstack-wordmark-traced-dark.svg'); animation: lsIntroLogoResolve 260ms ease-out 3.7s forwards, lsIntroLogoDissolve 800ms cubic-bezier(.22,1,.36,1) 4.25s forwards; }
@keyframes lsIntroLogoResolve { to { opacity: 1; } }
@keyframes lsIntroLogoDissolve { from { opacity: 1; filter: blur(0); transform: translateX(-50%) scale(1); } to { opacity: 0; filter: blur(8px); transform: translateX(-50%) scale(1.045); } }
@keyframes lsIntroCinemaFade { 0%, 84% { opacity: 1; } 100% { opacity: 0; visibility: hidden; } }
html:root .learnstack-home.learnstack-studio-home #philosophy { height: auto !important; min-height: 0 !important; padding-top: 0 !important; }
html:root .learnstack-home .ls-product-first-hero { --ls-hero-headline-size: 2.25rem; --ls-hero-subheadline-size: 1.0625rem; display: flex !important; flex-direction: column; align-items: center; gap: 22px; padding: 0 24px 48px !important; height: auto !important; min-height: 0 !important; opacity: 1 !important; animation: none !important; position:relative !important; isolation:isolate; overflow:clip !important; background:var(--ls-studio-paper,var(--ls-paper)) !important; }
html:root .learnstack-home .ls-product-first-hero::before {
  content:''; position:absolute; inset:-32%; z-index:-1; pointer-events:none;
  --ls-ambient-white:#fff8eb;
  --ls-ambient-cream:#fff5e4;
  --ls-ambient-gray:#faf9f6;
  --ls-ambient-depth:#f0efed;
  background:
    radial-gradient(circle farthest-corner at 51.22% 36.58%,var(--ls-ambient-white) 0%,var(--ls-ambient-cream) 14%,var(--ls-ambient-gray) 42%,var(--ls-ambient-depth) 78%,var(--ls-ambient-depth) 100%);
  mask-image:linear-gradient(to right,transparent,rgba(255,255,255,1) 18%,rgba(255,255,255,1) 82%,transparent),linear-gradient(to bottom,transparent,rgba(255,255,255,1) 18%,rgba(255,255,255,1) 82%,transparent);
  mask-composite:intersect;
  animation:lsHeroAmbientDrift 150s linear infinite;
  animation-play-state:paused;
}
html:root .learnstack-home .ls-product-first-hero[data-light-playing=true]::before { animation-play-state:running; }
html.ls-dark-mode .learnstack-home .ls-product-first-hero::before {
  --ls-ambient-white:rgba(69,73,72,.24);
  --ls-ambient-cream:rgba(110,87,55,.14);
  --ls-ambient-gray:rgba(6,9,10,.28);
  --ls-ambient-depth:rgba(4,6,8,.36);
}
@keyframes lsHeroAmbientDrift {
  0% { transform:translate3d(0,0,0); opacity:1; }
  68% { transform:translate3d(23%,21%,0); opacity:1; }
  88% { transform:translate3d(35%,33%,0); opacity:0; }
  89% { transform:translate3d(0,0,0); opacity:0; }
  100% { transform:translate3d(0,0,0); opacity:1; }
}
@media(prefers-reduced-motion:reduce) {
  html:root .learnstack-home .ls-product-first-hero::before { animation:none; transform:none; opacity:1; }
}
html:root .learnstack-home .ls-product-first-hero > :is(.ls-studio-wordmark,.ls-studio-copy,.ls-studio-actions,.ls-studio-product-proof) { position: static !important; inset: auto !important; transform: none !important; opacity: 1 !important; animation: none !important; margin: 0 !important; width: 100% !important; max-width: 860px !important; }
html:root .learnstack-home .ls-product-first-hero > :is(.ls-studio-background,.ls-studio-light,.ls-studio-wordmark) { display: none !important; }
html:root .learnstack-home .ls-product-first-hero .ls-studio-copy { text-align: center; padding-top:6px; }
html:root .learnstack-home .ls-product-first-hero .ls-studio-copy h1 { margin: 0 !important; line-height: 1.16 !important; }
.ls-product-first-hero .ls-studio-headline-line { position:relative; }
.ls-product-first-hero .ls-headline-shine {
  position:absolute; inset:0; color:#fff; font:inherit; line-height:inherit;
  pointer-events:none; user-select:none; opacity:0;
  mask-image:linear-gradient(105deg,transparent 32%,rgba(255,255,255,.3) 41%,rgba(255,255,255,1) 50%,rgba(255,255,255,.3) 59%,transparent 68%),linear-gradient(to bottom,transparent 8%,rgba(255,255,255,.15) 30%,rgba(255,255,255,.65) 60%,white 85%);
  mask-composite:intersect;
  mask-size:280% 100%,100% 100%; mask-repeat:no-repeat; mask-position:160% 0,0 0;
  animation:lsHeadlineShine 10s linear infinite; animation-play-state:paused;
}
.ls-product-first-hero[data-light-playing=true] .ls-headline-shine { animation-play-state:running; }
@keyframes lsHeadlineShine {
  0%,58% { mask-position:77.7778% 0,0 0; opacity:0; }
  60% { mask-position:77.7778% 0,0 0; opacity:.9; }
  80% { mask-position:22.2222% 0,0 0; opacity:.9; }
  82%,100% { mask-position:22.2222% 0,0 0; opacity:0; }
}
@media(prefers-reduced-motion:reduce) {
  .ls-product-first-hero .ls-headline-shine { display:none; animation:none; }
}
html:root .learnstack-home .ls-product-first-hero .ls-studio-copy > p { margin: 14px 0 0 !important; }
html:root .learnstack-home .ls-product-first-hero .ls-hero-audiences { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px 24px; padding: 0; margin: 18px 0 0; list-style: none; }
html:root .learnstack-home .ls-product-first-hero .ls-hero-audiences li { display: grid; gap: 2px; padding: 0; border: 0; background: none; border-radius: 0; font-size: .8125rem; line-height: 1.4; }
html:root .learnstack-home .ls-product-first-hero .ls-hero-audiences li strong { font-weight: 650; }
html:root .learnstack-home .ls-product-first-hero .ls-hero-audiences li span { opacity: .8; }
html:root .learnstack-home .ls-product-first-hero .ls-hero-audiences li::before { content: none; }
html:root .learnstack-home .ls-product-first-hero .ls-hero-audiences .ls-audience-tag { display: inline-block; padding: 5px 10px; border: 1px solid var(--ls-line); border-radius: 4px; color: var(--ls-muted); }
html:root .learnstack-home .ls-product-first-hero .ls-hero-trust span { border: 0; padding: 0; background: none; font-size: .8125rem; }
html:root .learnstack-home .ls-product-first-hero .ls-studio-actions { display: flex !important; flex-wrap: wrap; justify-content: center; align-items: center; gap: 12px 24px; isolation:isolate; }
html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools) { position:relative !important; display:inline-flex; align-items:center; justify-content:center; min-width:9.4rem; text-decoration:none; cursor:pointer; --ls-start-teal:#3fc7bf; gap:12px; min-height:48px; padding:10px 16px 12px !important; font-size:1.0625rem !important; font-weight:750; line-height:1.1; border:0; border-radius:0; background:transparent; color:#111714; text-shadow:none; box-shadow:none; transform:none; transition:color 160ms ease-out; }
html.ls-dark-mode .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools) { color:#f5f7f6; }
html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools):is(:hover,:focus-visible) { color:var(--ls-start-teal); }
html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools)::before { content:''; position:absolute; z-index:0; left:-46px; right:-46px; bottom:-21px; height:96px; background:var(--ls-cta-bloom,radial-gradient(ellipse 46% 48% at 50% 70%,rgba(55,211,200,.29) 0%,rgba(70,219,207,.17) 22%,rgba(83,224,211,.065) 48%,rgba(83,224,211,.012) 72%,transparent 100%)); mask-image:linear-gradient(to bottom,transparent,rgba(255,255,255,1) 26%,rgba(255,255,255,1) 67%,transparent); filter:blur(10px); opacity:.55; transform:scale(1); transform-origin:50% 70%; pointer-events:none; transition:opacity 220ms ease-out,transform 220ms ease-out; }
html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools)::after { content:''; position:absolute; z-index:1; left:14px; right:14px; bottom:7px; height:2px; border-radius:2px; background:var(--ls-cta-line,linear-gradient(90deg,#86e8de 0%,#3fc7bf 50%,#acf3e9 100%)); box-shadow:0 0 3px rgba(var(--ls-cta-core-rgb,113,235,224),.42),0 -3px 9px rgba(var(--ls-cta-glow-rgb,68,218,205),.18); pointer-events:none; transform-origin:left; transform:scaleX(1); transition:box-shadow 180ms ease-out,transform 240ms ease-out; }
html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools):is(:hover,:focus-visible)::before { opacity:.65; transform:scale(1.04); }
html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools):is(:hover,:focus-visible)::after { transform:scaleX(1); animation:lsStartHoverFill 850ms cubic-bezier(.2,.65,.3,1) both; box-shadow:0 0 5px rgba(var(--ls-cta-core-rgb,113,235,224),.55),0 -3px 10px rgba(var(--ls-cta-glow-rgb,68,218,205),.25); }
:is(.ls-product-first-hero,.ls-home-sticky-header) .ls-start-label,:is(.ls-product-first-hero,.ls-home-sticky-header) .ls-start-arrow { position:relative; z-index:2; }
html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) .ls-studio-cta {
  --ls-start-teal:#26765b;
  --ls-cta-line:linear-gradient(90deg,#a2e7cd 0%,#87debc 50%,#b3edd7 100%);
  --ls-cta-glow-rgb:135,222,188;
  --ls-cta-core-rgb:135,222,188;
  --ls-cta-bloom:radial-gradient(ellipse 46% 48% at 50% 70%,rgba(135,222,188,.29) 0%,rgba(162,231,205,.17) 22%,rgba(179,237,215,.065) 48%,rgba(179,237,215,.012) 72%,transparent 100%);
}
html.ls-dark-mode .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) .ls-studio-cta { --ls-start-teal:#87debc; }
@keyframes lsStartHoverFill {
  from { transform:scaleX(.04); opacity:.65; }
  to { transform:scaleX(1); opacity:1; }
}
:is(.ls-product-first-hero,.ls-home-sticky-header) .ls-start-arrow { display:inline-flex; align-self:center; justify-content:center; align-items:center; width:20px; height:20px; top:-1px; flex:none; font-size:20px; font-weight:450; line-height:1; transition:transform 180ms ease-out; }
:is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools):hover .ls-start-arrow { transform:translateX(2px); }
html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools)[data-charging=true]::after { animation:lsStartRecharge 320ms cubic-bezier(.16,1,.3,1) both; }
html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools)[data-charging=true]::before { animation:lsStartBloom 320ms cubic-bezier(.16,1,.3,1) both; }
@keyframes lsStartBloom {
  0% { transform:scale(.85,.9); opacity:.26; }
  65% { transform:scale(1.06); opacity:.65; }
  100% { transform:scale(1.04); opacity:.585; }
}
@keyframes lsStartRecharge {
  0% { transform:scaleX(.04); opacity:.65; box-shadow:0 -2px 8px rgba(var(--ls-cta-glow-rgb,68,218,205),.26); }
  65% { transform:scaleX(1); opacity:1; box-shadow:0 0 7px rgba(var(--ls-cta-core-rgb,113,235,224),.62),0 -4px 12px rgba(var(--ls-cta-glow-rgb,68,218,205),.29); }
  100% { transform:scaleX(1); opacity:1; box-shadow:0 0 5px rgba(var(--ls-cta-core-rgb,113,235,224),.55),0 -3px 10px rgba(var(--ls-cta-glow-rgb,68,218,205),.25); }
}
html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools):focus-visible { outline:2px solid #168d84; outline-offset:4px; }
@media(prefers-reduced-motion:reduce) {
  html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools) { transition:none; }
  html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools)::after,
  html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools):is(:hover,:focus-visible,[data-charging=true])::after { transition:none; animation:none; }
  html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools)::before,
  html:root .learnstack-home :is(.ls-product-first-hero,.ls-home-sticky-header) :is(.ls-studio-cta,.ls-studio-paid-tools):is(:hover,:focus-visible,[data-charging=true])::before { transition:none; animation:none; }
  :is(.ls-product-first-hero,.ls-home-sticky-header) .ls-start-arrow { transition:none; }
}
html:root .learnstack-home .ls-product-first-hero .ls-hero-trust { flex-basis: 100%; margin: 0; font-size: .8125rem; }
html:root .learnstack-home .ls-home-test-compact { padding: 20px !important; gap: 14px !important; text-align: left; }
html:root .learnstack-home .ls-product-first-hero .ls-studio-product-proof { border-color:color-mix(in srgb,var(--ls-line) 70%,var(--ls-studio-paper,var(--ls-paper))) !important; box-shadow:0 20px 50px -24px rgba(38,34,25,.18) !important; }
html:root .learnstack-home .ls-home-test-compact .ls-home-test-heading { gap: 12px; }
html:root .learnstack-home .ls-home-test-compact .ls-home-test-number { width: 34px; height: 34px; flex-basis: 34px; font-size: .875rem; }
html:root .learnstack-home .ls-home-test-compact .ls-home-test-topic { font-size: .75rem; margin-bottom: 5px; }
html:root .learnstack-home .ls-home-test-compact .ls-home-test-question { font-size: 1.0625rem !important; line-height: 1.4 !important; }
html:root .learnstack-home .ls-home-test-compact .ls-home-test-choices { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
html:root .learnstack-home .ls-home-test-compact .ls-home-test-choice { min-height: 52px; padding: 8px 12px; font-size: .875rem; }
html:root .learnstack-home .ls-home-test-compact .ls-home-test-letter { width: 28px; height: 28px; flex-basis: 28px; font-size: .8125rem; }
html:root .learnstack-home .ls-home-example-details { border-top: 1px solid #85939c40; padding-top: 12px; }
html:root .learnstack-home .ls-home-example-details > summary { cursor: pointer; font-weight: 650; font-size: .9375rem; min-height: 28px; }
html:root .learnstack-home .ls-home-example-details .ls-home-test-feedback { margin: 12px 0 0; }
html:root .learnstack-home .ls-home-test-compact .ls-home-test-similar { min-height: 36px; padding: 8px 12px; font-size: .8125rem; }

/* Invitations occupy space instead of covering study controls. */
html:root body .ls-account-reminder { position: static !important; inset: auto !important; transform: none !important; width: 100% !important; max-width: none !important; margin: 32px 0 0 !important; padding: 16px !important; box-shadow: none !important; }
html:root body.ls-learn-practice-shell .ls-practice-entry-routes:not([hidden]) { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 12px; }
html:root body.ls-learn-practice-shell .ls-practice-entry-routes button { min-height: 44px; padding: 12px 16px; border: 1px solid var(--wb-line); border-radius: 5px; color: var(--wb-ink); background: var(--wb-panel); cursor: pointer; }
html:root body.ls-learn-practice-shell .ls-practice-entry-routes button:hover { border-color: var(--wb-accent); background: var(--wb-surface); }
html:root body.ls-learn-practice-shell .ls-practice-entry-routes button:focus-visible { outline: 3px solid var(--wb-focus); outline-offset: 3px; }
html:root body.ls-learn-practice-shell .ls-practice-next-session:has(.ls-practice-entry-routes:not([hidden])) { padding-block: 28px; min-height: 0; }
html:root body.ls-learn-practice-shell .ls-practice-next-copy:has(.ls-practice-entry-routes:not([hidden])) { display: flex; flex-wrap: wrap; gap: 12px; max-width: none; }
html:root body.ls-learn-practice-shell .ls-practice-next-copy:has(.ls-practice-entry-routes:not([hidden])) > :is(h2,p) { flex-basis: 100%; max-width: none; margin: 0; }
html:root body.ls-learn-practice-shell .ls-practice-next-copy:has(.ls-practice-entry-routes:not([hidden])) > :is(.ls-practice-session-actions,.ls-practice-entry-routes) { margin-top: 12px; }
html:root body.ls-learn-practice-shell .ls-account-avatar-logo { width: 24px !important; height: 24px !important; object-fit: contain; }
html.ls-dark-mode body.ls-learn-practice-shell .ls-account-avatar-logo { filter: brightness(0) invert(.9) !important; }
html:root .ls-settings-dialog .ls-settings-preferences { display: grid; gap: 14px; padding-block: 8px; }
html:root .ls-settings-dialog .ls-settings-preferences h3 { margin: 0 0 8px; font-size: 1rem; }
html:root .ls-settings-dialog .ls-settings-preferences .ls-settings-nav-button { min-height: 48px; font-size: .9375rem; }
html:root .ls-settings-dialog .ls-settings-preferences[hidden] { display: none !important; }
html:root .ls-settings-dialog .ls-settings-nav-button[aria-pressed="true"] { border-color: var(--wb-accent, #087c70); }
html:root body.ls-learn-practice-shell .ls-activity-card { min-width: 0; scroll-snap-align: start; display: flex; flex-direction: column; gap: 0; }
html:root body.ls-learn-practice-shell .ls-activity-card > :is(.ls-learn-interactive-cover,.ls-practice-game-card) { width: 100%; box-shadow: none; border-radius: 6px; }
html:root body.ls-learn-practice-shell .ls-activity-caption { padding: 14px 0 0; display: grid; gap: 7px; }
html:root body.ls-learn-practice-shell .ls-activity-caption h3 { margin: 0; min-height: 2.8em; font-size: 1rem; line-height: 1.4; font-weight: 650; color: var(--wb-ink); }
html:root body.ls-learn-practice-shell .ls-activity-caption p { margin: 0; min-height: 3em; font-size: .8125rem; line-height: 1.5; color: var(--wb-muted); }
html:root body.ls-learn-practice-shell .ls-activity-caption a { justify-self: start; display: inline-flex; align-items: center; min-height: 44px; color: var(--wb-accent); text-underline-offset: 4px; font-size: .875rem; font-weight: 600; }
html:root body.ls-learn-practice-shell .ls-practice-interactive .ls-activity-card { max-width: 17.5rem; }
html:root body.ls-learn-practice-shell .ls-practice-game-carousel { display: grid; grid-auto-flow: column; grid-auto-columns: min(80vw, 17.5rem); justify-content: start; gap: 1.5rem; overflow-x: auto; padding: 4px 4px 18px; scroll-snap-type: x proximity; }
@media (max-width: 600px) {
  html:root .learnstack-home .ls-product-first-hero { --ls-hero-headline-size: 1.75rem; --ls-hero-subheadline-size: 1rem; padding: 0 16px 32px !important; gap: 16px; }
  html:root .learnstack-home .ls-product-first-hero .ls-hero-audiences { order: 5; margin: 4px 0 0; text-align: center; }
  html:root .learnstack-home .ls-home-test-compact { padding: 14px !important; }
  html:root .learnstack-home .ls-home-test-compact .ls-home-test-choices { grid-template-columns: 1fr; }
  html:root .learnstack-home .ls-home-test-compact .ls-home-test-topic { font-size: .6875rem; }
  html:root .ls-settings-dialog .ls-settings-sidebar { display: flex; flex-wrap: wrap; gap: 6px; }
  html:root .ls-settings-dialog .ls-settings-sidebar > button { width: auto; flex: 1 0 auto; }
  html:root body .ls-account-reminder { flex-direction: column; align-items: stretch; }
}
@media (prefers-reduced-motion: reduce) { html:root .ls-activity-card * { transition: none !important; } }
