.vlas-library-intro{padding-block:clamp(5rem,9vw,8rem) 3rem;max-width:980px}.vlas-library-intro .lead{margin-top:1.5rem;max-width:58ch}.vlas-library-intro .mute{margin-top:1rem;max-width:70ch}.vlas-library-links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.vlas-library-collections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;padding-block:1rem 4rem}.vlas-library-collection{scroll-margin-top:6rem;border-top:1px solid var(--rule-strong);padding-top:1.5rem;min-width:0}.vlas-library-collection-heading h2{font-size:clamp(1.5rem,3vw,2.2rem);margin-block:.75rem}.vlas-library-collection-heading .body{max-width:55ch}.vlas-library-panel{margin-top:1.5rem;--font-reading:var(--sans);--font-body:var(--sans);--font-display:var(--serif)}.vlas-library-panel :is(h1,h2,h3,h4){font-size:1.3rem;line-height:1.3}.vlas-library-next{border-top:1px solid var(--rule);padding-block:3rem 5rem}.vlas-library-next h2{margin-block:1rem;font-size:clamp(2rem,4vw,3rem)}.journey-stages{display:grid;grid-template-columns:repeat(5,1fr);border-block:1px solid var(--rule)}.journey-stages button{text-align:left;padding:1rem;font-family:var(--sans);color:var(--ink);background:transparent;border:0;border-right:1px solid var(--rule);cursor:pointer}.journey-stages .anno{display:block;margin-bottom:.5rem}.journey-stages button[aria-current]{background:var(--slate);color:var(--paper)}.journey-stages button[aria-current] .anno{color:inherit}.journey-workspace{display:grid;grid-template-columns:1.15fr 1fr;gap:3rem;padding-block:3rem;align-items:center}.journey-visual{min-width:0}.journey-scene{height:410px;perspective:1000px;overflow:hidden;background:var(--paper-soft);border:1px solid var(--rule);display:grid;place-items:center}.journey-world{position:relative;top:65px;width:250px;height:250px;transform-style:preserve-3d}.journey-ground{position:absolute;inset:0;background:var(--cap-n);border:8px solid var(--slate-deep);box-shadow:12px 12px 0 var(--ink-soft);overflow:hidden}.journey-river{position:absolute;inset:-10% 39%;width:24%;background:var(--cap-m);transform:rotate(28deg)}.journey-field{position:absolute;left:10%;top:12%;width:24%;height:30%;background:repeating-linear-gradient(90deg,var(--gold) 0 4px,var(--cap-n) 4px 9px)}.journey-grove{position:absolute;left:8%;bottom:15%;width:28%;height:28%;background:var(--ok);border-radius:50%;border:5px dotted var(--slate-deep)}.journey-settlement{position:absolute;right:12%;bottom:15%;width:20%;height:24%;background:var(--paper);border:5px double var(--ink-soft)}.journey-ground-label{position:absolute;bottom:5px;right:8px;font:12px var(--mono);color:var(--paper)}.journey-layer{position:absolute;inset:8px;background:var(--slate-14);border:2px solid var(--slate-light);opacity:0;pointer-events:none;transition:opacity .2s;display:flex;align-items:center;justify-content:space-around}.journey-layer.is-visible{opacity:1}.journey-layer span{position:absolute;top:12px;left:12px;font:15px var(--mono);color:var(--ink);background:var(--paper);padding:5px 9px}.journey-layer i{width:18px;height:18px;border-radius:50%;background:var(--gold);border:2px solid var(--ink)}.journey-rotation{display:flex;align-items:center;gap:1rem;margin-top:1rem;font:13px var(--mono)}.journey-rotation input{min-width:0;flex:1;accent-color:var(--slate)}.journey-reading h2{font-size:clamp(2rem,4vw,3.3rem);margin-block:1rem}.journey-artifact{padding:1.2rem;margin-top:1.5rem;border-left:3px solid var(--gold);background:var(--paper-soft)}.journey-artifact p{margin-top:.5rem}.journey-decisions{display:grid;grid-template-columns:1fr 1fr;gap:3rem;padding-block:3rem 5rem;border-top:1px solid var(--rule)}.journey-decisions h2{font-size:clamp(2rem,4vw,3rem);margin-block:1rem}.journey-control{display:flex;align-items:flex-start;gap:1rem;padding-block:1rem;border-bottom:1px solid var(--rule);cursor:pointer}.journey-control input{margin-top:.3rem;width:20px;height:20px;accent-color:var(--slate)}.journey-control small{display:block;color:var(--ink-mute);margin-top:.4rem}.journey-decisions button{margin-top:1.5rem}.journey-record{padding:2rem;border:1px solid var(--rule-strong);background:var(--paper-soft);align-self:start}.journey-record h3{font-size:1.8rem;margin-block:1rem}.journey-record dl div{padding-block:1rem;border-bottom:1px solid var(--rule)}.journey-record dt{font:12px var(--mono);color:var(--ink-mute)}.journey-record dd{margin:.5rem 0 0}.journey-record ul{padding-left:1.5rem;margin-block:1rem}.journey-record .mute{margin-top:1.5rem}@media(max-width:1000px){.journey-workspace{grid-template-columns:1fr}}@media(max-width:760px){.journey-decisions,.journey-workspace,.vlas-library-collections{grid-template-columns:1fr;gap:2rem}.journey-stages{grid-template-columns:repeat(3,1fr)}.journey-stages button{min-height:76px}.journey-scene{height:360px}.journey-world{width:220px;height:220px}}@media(prefers-reduced-motion:reduce){.journey-layer{transition:none}}.journey-expanded .journey-stages{grid-template-columns:repeat(10,minmax(0,1fr))}.journey-expanded .journey-stages button{padding:.8rem .5rem;font-size:.78rem}.journey-studio{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:3rem;padding-block:3rem}.journey-studio .journey-visual{position:sticky;top:6rem;align-self:start}.journey-land{height:480px;position:relative;background:var(--slate-deep);overflow:hidden}.journey-land-canvas{height:100%;width:100%}.journey-land-canvas canvas{display:block;width:100%;height:100%}.journey-land-caption{position:absolute;inset:auto 1rem 1rem;display:flex;justify-content:space-between;gap:1rem;font:.72rem var(--mono);color:var(--paper);pointer-events:none}.journey-render-message{position:absolute;inset:25% 2rem auto;padding:1.5rem;background:var(--paper);color:var(--ink)}.journey-camera{display:flex;gap:1rem;justify-content:space-between;margin-top:1rem;align-items:center}.journey-camera label{display:grid;gap:.6rem;flex:1;font:.8rem var(--mono)}.journey-camera input{width:100%;accent-color:var(--gold)}.journey-observations{border-top:1px solid var(--rule);margin-top:2rem;padding-top:1.5rem}.journey-observations h3{font:1.7rem var(--serif);margin-block:.7rem}.journey-observations svg{width:100%;height:auto;margin-block:1rem;overflow:visible}.journey-chart-grid{stroke:var(--rule);fill:none}.journey-chart-line{stroke:var(--cap-n);stroke-width:3;fill:none}.journey-observations circle{fill:var(--slate)}.journey-observations circle.is-selected{fill:var(--gold)}.journey-observations text{font:12px var(--mono);fill:var(--ink)}.journey-years{display:flex;gap:.4rem}.journey-years button{flex:1;background:var(--paper);border:1px solid var(--rule);padding:.65rem .2rem;font:.75rem var(--mono);cursor:pointer;color:var(--ink)}.journey-years button[aria-pressed=true]{background:var(--slate);color:var(--paper)}.journey-reading-strip{display:flex;gap:1rem;justify-content:space-between;margin-top:1rem;font:.8rem var(--sans)}.journey-reading-strip strong{display:block;margin-top:.5rem;font-size:1.1rem}.journey-lesson h2{font:clamp(2rem,3.5vw,3.1rem)/1.08 var(--serif);margin-block:1rem}.journey-equation{background:var(--slate);color:var(--paper);padding:1.4rem;margin-top:1.7rem}.journey-equation p,.journey-trail [role=math],.journey-working p{font:1.1rem/1.7 var(--mono);overflow-wrap:anywhere;margin-block:1rem}.journey-equation a{color:var(--paper);font-size:.75rem}.journey-working{padding:1.4rem;border:1px solid var(--rule);border-top:0}.journey-working .body{font:.8rem/1.6 var(--sans)}.journey-parameters{border-top:1px solid var(--rule);padding-top:1.5rem;margin-top:2rem}.journey-parameters h3{font:1.7rem var(--serif)}.journey-parameters label{display:grid;grid-template-columns:1fr auto;gap:.7rem;margin-top:1.2rem;font:.85rem var(--sans)}.journey-parameters input,.journey-parameters select{grid-column:1/-1;width:100%;accent-color:var(--slate)}.journey-parameters select{color:var(--ink);background:var(--paper);border:1px solid var(--rule);padding:.6rem}.journey-trail{padding-block:2rem 5rem;border-top:1px solid var(--rule)}.journey-trail h2{font:2.5rem var(--serif);margin-block:1rem 2rem}.journey-trail details{border-top:1px solid var(--rule);padding-block:1rem}.journey-trail summary{cursor:pointer;font:1rem var(--sans)}.journey-trail a{display:inline-block;margin-top:.7rem;font:.8rem var(--mono)}@media(max-width:1000px){.journey-studio{grid-template-columns:1fr}.journey-studio .journey-visual{position:relative;top:auto}.journey-expanded .journey-stages{grid-template-columns:repeat(5,1fr)}}@media(max-width:600px){.journey-land{height:350px}.journey-land-caption{flex-direction:column;gap:.4rem}.journey-expanded .journey-stages{grid-template-columns:repeat(3,1fr)}.journey-camera{display:block}.journey-camera .anno{display:block;margin-top:.6rem}.journey-studio{gap:2rem}}