/* A readable field guide, using the laboratory's current editorial palette. */
.learning-home{--l-ink:var(--ie-ink,#16181b);--l-dim:var(--ie-muted,#4b4f55);--l-line:var(--ie-rule,#d9d5cc);--l-blue:var(--ie-blue,#1f5fa8);--l-cold:var(--ie-accent,#c2410c);max-width:1160px;margin:auto;padding:28px 28px 64px;font:400 15px/1.7 var(--font-sans,'IBM Plex Sans',sans-serif);color:var(--l-ink)}
body{margin:0;background:var(--ie-bg,#f3f1ec)}
.learning-home *{box-sizing:border-box}.learning-home :is(section,article){scroll-margin-top:24px;min-width:0}
.learning-home :is(h1,h2,h3,h4,p,figure){margin-top:0}.learning-home :is(h1,h2){font-family:var(--font-display,'Instrument Serif',Georgia,serif);font-weight:400;letter-spacing:-.025em;line-height:1.14;text-wrap:balance}
.learning-home h1{font-size:clamp(40px,5.2vw,64px);margin-bottom:22px}.learning-home h2{font-size:clamp(28px,3vw,38px);margin-bottom:16px}.learning-home h3{font-size:16px;line-height:1.5;font-weight:600;margin-bottom:10px}.learning-home h4{font-size:15px;line-height:1.5;font-weight:600;margin-bottom:6px}
.learning-home p{max-width:75ch}.learning-kicker{font:500 11px/1.6 var(--font-mono,'IBM Plex Mono',monospace);letter-spacing:.06em;text-transform:uppercase;color:var(--l-dim);margin-bottom:12px}
.learning-back{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--l-line);padding-bottom:18px;color:var(--l-dim);font-size:13px}.learning-back a{color:inherit;text-decoration:none}.learning-back a:hover{color:var(--ie-accent)}
.learning-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.8fr);gap:56px;align-items:center;margin:50px 0 44px}.learning-hero>*{min-width:0}.learning-hero-text>p:not(.learning-kicker){font-size:17px;max-width:49ch;color:var(--l-dim)}
.learning-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px 24px;margin-top:26px}.learning-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 0;font-size:14px;font-weight:500;color:var(--l-blue);text-decoration:none;gap:8px}.learning-action:hover{text-decoration:underline;text-underline-offset:4px}.learning-primary,a.learning-action.learning-primary{border:1px solid var(--ie-ink);border-radius:3px;padding:12px 18px;text-decoration:none;white-space:normal}
.learning-hero-figure{margin:0}.learning-hero-art{width:100%;height:auto;display:block;background:var(--ie-surface);border:1px solid var(--l-line);border-radius:3px;padding:12px;color:var(--ie-accent)}.learning-hero-figure figcaption{font-size:12px;line-height:1.6;color:var(--l-dim);margin-top:12px}.hero-t text{font:500 12px var(--font-sans);fill:var(--l-dim)}.example-hot{fill:#c4653226}.example-wall{fill:#c4653245;stroke:#c4653266}.example-cold{fill:#25829724}
.hero-heat{stroke-dasharray:8 10;animation:l-flow 1.4s linear infinite}.hero-profile{stroke-dasharray:420;stroke-dashoffset:420;animation:l-draw 1.6s .2s ease-out forwards}
.learning-how{border-block:1px solid var(--l-line);padding:26px 0 30px}.learning-how>h2{font:500 15px var(--font-sans);margin-bottom:24px}.learning-how>ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;list-style:none;padding:0;margin:0}.learning-how li{display:flex;gap:14px}.learning-how li>span{font:500 12px var(--font-mono);color:var(--ie-accent);padding-top:3px}.learning-how li h3{font-size:15px;margin-bottom:5px}.learning-how li p{font-size:13px;color:var(--l-dim);margin:0}
.learning-example{margin-top:52px;padding:32px;background:var(--ie-surface);border:1px solid var(--l-line);border-radius:3px}.learning-section-intro{max-width:74ch}.learning-example-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:40px;margin-top:28px}.learning-example-inputs dl{margin:0}.learning-example-inputs dl>div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 16px;padding:12px 0;border-bottom:1px solid var(--l-line)}.learning-example-inputs dt{font-size:13px;color:var(--l-dim);font-weight:400}.learning-example-inputs dd{font:500 13px/1.7 var(--font-mono);margin:0;font-variant-numeric:tabular-nums}
.learning-predict{border-left:2px solid var(--ie-accent);padding:12px 16px;background:var(--ie-soft);margin:20px 0;font-size:14px}.learning-predict strong,.learning-goal strong,.learning-challenge strong{display:block;font-size:12px;font-weight:600;margin-bottom:6px;color:var(--l-ink)}.learning-worked{padding-left:22px;margin:0}.learning-worked>li{padding:0 0 20px 8px}.learning-worked>li::marker{color:var(--ie-accent);font-family:var(--font-mono)}.learning-worked p{font-size:14px;margin-bottom:12px}.learning-equation{font-family:var(--font-mono);font-size:14px;line-height:2;overflow-wrap:anywhere}.learning-equation strong{color:var(--ie-blue);font-weight:500}
.learning-table-scroll{overflow-x:auto}.learning-home table{border-collapse:collapse;width:100%;font-size:13px}.learning-home caption{text-align:left;color:var(--l-dim);font-size:12px;padding-bottom:8px;caption-side:top}.learning-home :is(th,td){border-bottom:1px solid var(--l-line);padding:10px 8px;text-align:left}.learning-home tbody th{font-weight:400}.learning-home td{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.learning-home :is(th,td):last-child{text-align:right;white-space:nowrap}
.learning-example-next{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px 28px;border-top:1px solid var(--l-line);padding-top:24px;margin-top:8px}.learning-example-next>div{flex:1 1 300px}.learning-example-next p{font-size:14px;margin-bottom:0}.learning-example-next>a{flex:0 1 auto}
.learning-choose{margin:60px 0 28px}.learning-choose>p:not(.learning-kicker){color:var(--l-dim)}.learning-topics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--l-line);margin-top:24px}.learning-topics a{display:flex;align-items:center;gap:10px;min-height:54px;padding:12px 10px;border-bottom:1px solid var(--l-line);color:var(--l-ink);text-decoration:none;font-size:13px}.learning-topics a span{font:400 11px var(--font-mono);color:var(--l-dim)}.learning-topics a:hover{background:var(--ie-surface);color:var(--ie-accent)}
.learning-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.learning-card{display:flex;flex-direction:column;min-width:0;padding:28px;background:var(--ie-surface);border:1px solid var(--l-line);border-radius:3px}.learning-card:target{border-color:var(--ie-accent)}.learning-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:12px}.learning-card-header>div{min-width:0}.learning-card h2{font-size:28px;margin-bottom:6px}.learning-card .learning-kicker{font-size:10px}.learning-card p{font-size:14px}.learning-goal{margin-bottom:0}.learning-route h3{font-size:14px;margin:4px 0 10px}.learning-route ol{padding-left:22px;margin:0}.learning-route li{font-size:14px;padding-left:4px;margin-bottom:10px}.learning-route li::marker{font:400 12px var(--font-mono);color:var(--l-dim)}.learning-challenge{padding-top:16px;border-top:1px solid var(--l-line);margin:18px 0}.learning-card-foot{margin-top:auto}.learning-card p:is(.learning-limit,.learning-before){font-size:12px;color:var(--l-dim);line-height:1.7;margin-bottom:10px}.learning-card-foot>.learning-action{justify-content:flex-start;width:100%;border-top:1px solid var(--l-line);margin-top:8px;padding-top:16px}
.learning-scene{flex:0 0 96px;width:96px;height:64px;display:block;background:var(--ie-bg);border-radius:3px}
.learning-scene .hot{fill:#f4d3bf;stroke:#c46532;stroke-width:1.3}.learning-scene .cold{fill:#cfe5ec;stroke:#4b96aa;stroke-width:1.3}.learning-scene .mid{fill:#f0dccf;stroke:#c9a28a;stroke-width:1.3}.learning-scene .fin{fill:#eec1a4;stroke:#c9a28a;stroke-width:.8}.learning-scene .line{fill:none;stroke:#225d91;stroke-width:2}
.learning-scene .flow{fill:none;stroke:#258297;stroke-width:1.8;stroke-linecap:round;stroke-dasharray:6 8}.learning-scene .plume{fill:#f2c9ae;opacity:.55}.learning-scene .film{fill:#9ccbd8}.learning-scene .water{fill:#dcecf1;stroke:#4b96aa;stroke-width:1.2}
.learning-scene .dot{fill:#d99a74}.learning-scene .bub{fill:#eef7fa;stroke:#258297;stroke-width:1.2}

.learning-card:hover .flow,.learning-card:focus-within .flow{animation:l-flow 1s linear infinite}.learning-card:hover :is(.dot,.bub),.learning-card:focus-within :is(.dot,.bub){animation:l-up 1.8s ease-in infinite}.learning-scene :is(.d2,.b2){animation-delay:.6s!important}.learning-scene :is(.d3,.b3){animation-delay:1.2s!important}
.learning-glossary{margin-top:52px;padding-top:30px;border-top:1px solid var(--l-line)}.learning-glossary dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:24px 0}.learning-glossary dt{font:500 14px var(--font-mono);margin-bottom:12px}.learning-glossary dd{margin:0;color:var(--l-dim);font-size:13px}.learning-glossary>p{font-size:13px;color:var(--l-dim)}.learning-home footer{border-top:1px solid var(--l-line);padding-top:24px;margin-top:36px;font-size:13px;color:var(--l-dim)}
.learning-home a:focus-visible,.learning-skip:focus-visible{outline:2px solid var(--ie-accent);outline-offset:4px}.learning-skip{position:absolute;left:16px;top:-100px;padding:12px 18px;z-index:10000;background:var(--ie-ink);color:var(--ie-bg)}.learning-skip:focus{top:12px}
@keyframes l-flow{to{stroke-dashoffset:-28}}@keyframes l-draw{to{stroke-dashoffset:0}}@keyframes l-up{0%{transform:translateY(8px);opacity:0}30%{opacity:1}100%{transform:translateY(-22px);opacity:0}}
@media(max-width:900px){.learning-hero{gap:28px}.learning-how>ol{gap:18px}.learning-example-grid{gap:24px}.learning-topics{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-card{padding:22px}.learning-card-header{display:block}.learning-scene{margin-top:16px}.learning-glossary dl{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.learning-home{padding:20px 18px 40px}.learning-back>span{display:none}.learning-hero{grid-template-columns:1fr;margin:30px 0;gap:28px}.learning-hero-text>p:not(.learning-kicker){font-size:16px}.learning-hero-figure{max-width:420px}.learning-how>ol{grid-template-columns:1fr;gap:20px}.learning-example{padding:20px;margin-top:36px}.learning-example-grid{grid-template-columns:1fr}.learning-example-next>a{width:100%}.learning-grid{grid-template-columns:1fr}.learning-card-header{display:flex}.learning-scene{flex-basis:72px;width:72px;height:50px;margin:0}.learning-card h2{font-size:26px}.learning-topics a{padding-inline:4px;gap:8px}.learning-glossary dl{gap:22px}.learning-glossary dt{font-size:12px}}
@media(prefers-reduced-motion:reduce){.learning-home *{animation:none!important;transition:none!important}.hero-profile{stroke-dashoffset:0}}

.learning-home .learning-hero-art .hero-t text{fill:var(--ie-ink)!important;stroke:none!important;font-family:var(--font-sans);font-size:12px}.learning-home .hero-profile{stroke:var(--ie-blue)}
