.learning-studio{--mint:#b7dfcd;margin:32px 0 48px;border:1px solid #3b4145;border-radius:14px;background:linear-gradient(130deg,#1b2423 0%,#17191e 50%,#1b1823 100%);overflow:hidden}.studio-intro{display:flex;gap:32px;justify-content:space-between;padding:32px}.studio-kicker{font:10px ui-monospace,SFMono-Regular,monospace;letter-spacing:1.6px;color:var(--mint,#b7dfcd)}.studio-intro h2{font-size:clamp(23px,2.4vw,34px);line-height:1.3;letter-spacing:-1px;font-weight:500;max-width:760px;margin:14px 0}.studio-intro p{color:#b9bfc3;max-width:700px;font-size:14px;margin-bottom:0}.studio-badge{flex:0 0 125px;color:#b9bfc3;font:10px/1.8 ui-monospace,monospace;text-align:center;align-self:center}.studio-badge>span{display:block;color:var(--mint);font-size:54px;line-height:1.4}.studio-tabs{display:flex;border-top:1px solid #343c3e;border-bottom:1px solid #343c3e;background:#10141666}.studio-tabs button{flex:1;text-align:left;padding:18px 24px;color:#a8afb6;font:10px ui-monospace,monospace;border-right:1px solid #343c3e}.studio-tabs button span{font:13px Inter,ui-sans-serif,sans-serif;margin-left:10px}.studio-tabs button[aria-selected=true]{color:var(--mint);background:#b7dfcd0b;box-shadow:inset 0 -2px var(--mint)}.learning-studio [role=tabpanel]{padding:26px 32px}.learning-studio [hidden],.term-card[hidden]{display:none!important}.flow-header{display:flex;align-items:center;justify-content:space-between;gap:15px;color:#a8afb6;font:9px ui-monospace,monospace;letter-spacing:1px;margin-bottom:24px}.flow-play{border-color:#53665e;color:var(--mint)}.flow-track{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;position:relative;margin-bottom:28px}.flow-track:before{content:'';position:absolute;top:23px;left:20px;right:20px;height:1px;background:#46514e}.flow-node{position:relative;text-align:left;display:flex;flex-direction:column;gap:14px;border:1px solid #3b4446;padding:14px 12px;border-radius:8px;background:#191e22;min-height:135px;transition:border-color .25s,transform .25s,background .25s}.flow-index{display:inline-grid;place-items:center;border:1px solid #495952;border-radius:50%;width:28px;height:28px;color:#b0b8b4;background:#1c2322;font:10px ui-monospace,monospace;z-index:1}.flow-node strong{font-size:12px;line-height:1.6;font-weight:500;color:#bec4c8}.flow-node.is-current{border-color:var(--mint);background:#23332d;transform:translateY(-4px);box-shadow:0 7px 24px #0002}.flow-node.is-current strong{color:#e2f5eb}.flow-node.is-current .flow-index{background:var(--mint);color:#17231d;border-color:var(--mint)}.flow-node.is-past .flow-index{border-color:var(--mint);color:var(--mint)}.flow-dot{width:5px;height:5px;background:#58655f;border-radius:50%;margin-top:auto}.is-current .flow-dot{background:var(--mint)}.is-playing .is-current .flow-dot{animation:request-pulse 1.8s ease-in-out infinite}.step-explanation{display:grid;grid-template-columns:65px minmax(0,1.5fr) minmax(0,1fr);gap:22px;border:1px solid #3b4446;border-radius:9px;padding:25px;background:#10141666;min-height:240px}.step-number{font:42px/1 ui-monospace,monospace;letter-spacing:-3px;color:var(--mint)}.step-number small{display:block;font-size:9px;letter-spacing:1px;color:#a8afb6;margin-top:12px}.step-explanation h3{font-size:21px;font-weight:500;line-height:1.4;margin:10px 0}.step-explanation p{font-size:13px;color:#bbc2c7;line-height:1.8}.decision-note{border-left:1px solid #38413e;padding-left:24px}.decision-note .studio-kicker{color:#d9c2a1}.decision-note p{font-size:12px}.learn-term{color:var(--mint,#b7dfcd);border:1px solid #53685d;background:#b7dfcd08;border-radius:5px;padding:5px 9px;font-size:11px;display:inline-flex;gap:14px;text-align:left;align-items:center}.learn-term:hover{background:#b7dfcd18}.flow-footer{display:flex;align-items:center;justify-content:space-between;margin:16px 0 24px}.step-count{color:#a8afb6;font:10px ui-monospace,monospace}.recall-card{border-top:1px solid #3b4446;padding-top:20px}.recall-card summary{cursor:pointer;color:#d9c9f4;font-size:13px;list-style:none}.recall-card>summary{display:flex;justify-content:space-between}.recall-card p{color:#bbc2c7;font-size:13px}.recall-card details{padding:16px;border:1px solid #3b4446;border-radius:5px}.studio-note{border-top:1px solid #3b4446;padding:14px 32px;color:#a8afb6;font-size:10px}.map-intro{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:25px}.map-intro h3{font-size:23px;letter-spacing:-.6px;font-weight:500;margin:0 0 6px}.map-intro p{color:#bbc2c7;font-size:13px;margin:0;max-width:600px}.map-progress,.dictionary-count{color:var(--mint);font:10px/1.7 ui-monospace,monospace;white-space:nowrap}.concept-map{display:grid;grid-template-columns:1fr 2fr;gap:45px;align-items:center;margin:32px 0}.map-root{border:1px solid #748e7f;border-radius:10px;background:#25362d;padding:25px;color:#e2f5eb;font-size:23px;position:relative}.map-root small{display:block;font-size:12px;color:#bbc2c7;margin-top:12px}.map-root:after{content:'';position:absolute;left:100%;width:24px;top:50%;height:1px;background:#53685d}.map-branches{border-left:1px solid #53685d;display:grid;gap:10px;padding-left:22px}.map-branch{position:relative;border:1px solid #3b4446;border-radius:7px;padding:13px 16px;background:#181e22;display:flex;gap:12px;justify-content:space-between;align-items:center}.map-line{position:absolute;right:100%;width:23px;height:1px;background:#53685d}.map-branch label{display:flex;gap:12px;align-items:center;cursor:pointer;font-size:12px}.map-branch input{accent-color:#b7dfcd;width:16px;height:16px;flex-shrink:0}.map-branch small{display:block;color:#a8afb6;font-size:10px;margin-top:3px}.map-branch.is-known{border-color:#6d947f;background:#203129}.map-source{border-top:1px solid #3b4446;padding-top:20px}.map-source h3{font-size:16px;font-weight:500}.map-source p{font-size:11px;color:#a8afb6}.map-source nav{display:grid;grid-template-columns:1fr 1fr;gap:8px}.map-source a{border:1px solid #3b4446;border-radius:5px;padding:10px 12px;font-size:11px;color:#bbc2c7;display:flex;justify-content:space-between;gap:10px}.map-source a:hover{color:var(--mint);border-color:#748e7f}.chapter-terms{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.dictionary-label{display:block;font-size:11px;color:#bbc2c7}.learning-studio .resource-filter{margin:10px 0 22px;max-width:none;width:100%}.dictionary-results{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-height:520px;overflow:auto;padding:4px}.dictionary-entry{padding:15px;border:1px solid #3b4446;border-radius:7px;background:#10141666}.dictionary-entry p{font-size:12px;line-height:1.8;color:#bbc2c7;margin-bottom:0}.inline-term{display:inline;color:inherit;font:inherit;padding:0;border-bottom:1px dotted #98bfae;border-radius:0;line-height:inherit;text-align:inherit}.inline-term:hover,.inline-term:focus-visible{color:#b7dfcd;background:#b7dfcd12}.term-card{position:fixed;z-index:60;width:min(360px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;padding:22px;border:1px solid #759184;border-radius:10px;background:#1c2524;box-shadow:0 18px 60px #0009;color:#eef4f1}.term-card-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.term-card-top button{font-size:23px;line-height:1}.term-card h3{font-size:22px;font-weight:500;margin:14px 0 10px;line-height:1.3}.term-card p{font-size:13px;color:#c7d1cb;line-height:1.8;margin:8px 0}.term-analogy{border-top:1px solid #41524a;margin-top:17px;padding-top:15px}.term-analogy>span{font:9px ui-monospace,monospace;letter-spacing:1px;color:#d9c2a1}.hero-diagram svg{overflow:visible}.hero-diagram svg>circle{animation:request-pulse 3s ease-in-out infinite}.hero-diagram svg>circle:last-of-type{animation-delay:1.5s}.chapter-card{transition:transform .2s,border-color .2s}.chapter-card:hover{transform:translateY(-4px)}@keyframes request-pulse{0%,100%{opacity:.4}50%{opacity:1;filter:drop-shadow(0 0 5px #b7dfcd)}}@media(min-width:1400px){.flow-track{grid-template-columns:repeat(6,minmax(0,1fr))}}@media(max-width:1200px){.flow-track{grid-template-columns:repeat(3,minmax(0,1fr))}.flow-node{min-height:125px}.step-explanation{grid-template-columns:45px 1fr}.decision-note{grid-column:2;border-left:0;border-top:1px solid #38413e;padding:15px 0 0}.concept-map{grid-template-columns:1fr 2fr;gap:25px}.map-branch{flex-direction:column;align-items:flex-start}}@media(max-width:700px){.studio-intro{padding:22px;gap:15px}.studio-badge{display:none}.studio-tabs button{padding:15px 10px;font-size:9px}.studio-tabs button span{display:block;margin:5px 0 0;font-size:11px}.learning-studio [role=tabpanel]{padding:22px 16px}.flow-header{font-size:8px;letter-spacing:0;align-items:flex-start}.flow-play{font-size:10px;flex-shrink:0}.flow-track{gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.flow-node{min-height:128px}.flow-node strong{font-size:12px}.step-explanation{padding:18px;gap:13px;grid-template-columns:32px 1fr}.step-number{font-size:29px}.step-explanation h3{font-size:19px}.studio-note{padding:14px 20px}.map-intro{display:block}.map-progress,.dictionary-count{display:block;margin-top:12px}.concept-map{grid-template-columns:1fr;gap:22px}.map-root:after{left:20px;top:100%;height:23px;width:1px}.map-branches{margin-left:20px}.map-branch{flex-direction:row;flex-wrap:wrap}.map-source nav,.dictionary-results{grid-template-columns:1fr}.flow-footer .small-button{font-size:10px}}@media(prefers-reduced-motion:reduce){.hero-diagram svg>circle,.is-playing .flow-dot{animation:none}.flow-node,.chapter-card{transition:none}.chapter-card:hover,.flow-node.is-current{transform:none}}
.learning-path{margin:0 0 38px;padding:26px;border:1px solid #3b4145;border-radius:10px;background:linear-gradient(115deg,#1b2423,#17191e);display:grid;grid-template-columns:1fr 1.3fr;gap:30px}.learning-path h2{font-size:25px;font-weight:500;letter-spacing:-.7px;margin:10px 0}.learning-path p{font-size:12px;color:#bbc2c7;max-width:330px}.learning-path nav{display:grid;grid-template-columns:1fr 1fr;gap:7px}.learning-path nav a{border:1px solid #3b4446;border-radius:4px;padding:8px 10px;display:flex;gap:10px;align-items:center;font-size:10px}.learning-path nav a:hover{border-color:#b7dfcd;color:#b7dfcd}.learning-path nav a span:first-child{color:#b7dfcd;font:9px ui-monospace,monospace}.learning-path nav a span:last-child{margin-left:auto;color:#a8afb6}@media(max-width:1000px){.learning-path{grid-template-columns:1fr;gap:12px}.learning-path p{max-width:none}}@media(max-width:500px){.learning-path{padding:20px}.learning-path nav{grid-template-columns:1fr}}
