/* Calm default learning flow. The full mathematical material remains reachable. */
.topbar{padding-top:14px;padding-bottom:14px}.topbar nav{margin-left:auto}.topbar nav a{font-size:.87rem}.school-tag{display:none}.brand small{letter-spacing:.1em}.footer-links{display:flex;gap:20px}.text-button{background:none;border:0;color:var(--teal);font-size:.84rem;padding:10px 4px;min-height:44px;text-align:left}.text-button:hover,.text-link:hover{text-decoration:underline}.text-link{color:var(--teal);font-size:.85rem;text-underline-offset:4px}.catalog-heading{max-width:860px;padding:35px 0 20px}.catalog-heading .eyebrow{color:var(--teal);margin-bottom:14px}.catalog-heading h1{font-size:clamp(2rem,4vw,3.4rem);max-width:820px;line-height:1.15;margin-bottom:14px}.catalog-heading p{color:var(--muted);margin-bottom:22px}.catalog-search{max-width:680px;width:100%}.catalog-search input{font-size:.9rem;padding:15px 0}.phase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:18px 0 25px}.phase-card{display:block;text-decoration:none;background:white;border:1px solid var(--line);border-radius:19px;overflow:hidden;transition:transform .18s,box-shadow .18s;min-width:0}.phase-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.phase-image{aspect-ratio:650/310;overflow:hidden;background:var(--phase-tint)}.phase-image img{display:block;width:100%;height:100%;object-fit:cover}.phase-card>div:last-child{padding:20px;position:relative}.phase-label{font-size:.74rem;font-weight:750;color:var(--teal)}.phase-card h2{font-size:1.2rem;margin:9px 0}.phase-card p{font-size:.82rem;margin:0 25px 0 0;color:var(--muted)}.phase-arrow{position:absolute;right:20px;bottom:22px;font-size:1.3rem;color:var(--teal)}.catalog-secondary{display:flex;gap:24px;justify-content:center;font-size:.83rem;color:var(--muted);padding:10px}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:12px 0 20px}.catalog-toolbar>span{font-size:.8rem;color:var(--muted)}.show-more{display:flex;margin:25px auto}.topic-card .card-art{height:auto;aspect-ratio:650/340;padding:0;background:#edf3f3}.topic-card .card-art img{display:block;width:100%;height:100%;object-fit:cover}.topic-card .card-content{padding:19px}.topic-card .card-meta{font-size:.7rem;letter-spacing:0;margin-bottom:11px}.topic-card h3{font-size:1.15rem;line-height:1.3}.topic-card p{font-size:.83rem}.topic-card .card-bottom{color:var(--teal);font-weight:650}.resume-banner{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:19px 23px;border:1px solid #c9ddd7;border-radius:15px;background:#edf5f2;text-decoration:none;margin:5px 0 27px}.resume-banner small,.resume-banner strong{display:block}.resume-banner small{color:var(--muted);font-size:.72rem;margin-bottom:5px}.resume-banner strong{font-size:1rem}.resume-banner .btn{flex-shrink:0}.path-page>section{margin-top:30px}.path-page h2{font-size:1.4rem}.all-topics-link{margin:24px 0}.path-details,.storage-settings{border:1px solid var(--line);background:white;border-radius:13px;padding:7px 20px;margin-top:18px}.path-details>summary,.storage-settings>summary{font-weight:650;color:var(--ink)}.path-details details{margin:12px 0}.path-details p,.storage-settings p{font-size:.86rem}.settings-actions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.compact-path{list-style:none;padding:0}.compact-path li{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line);font-size:.85rem}.compact-path span{color:var(--muted);font-size:.74rem}.review-reminder{background:#fff2df;border:1px solid #ebd4af;border-radius:14px;padding:22px}.review-reminder a{display:block;margin:12px 0;color:#75450d}
/* Compact topic header and one visible learning card. */
.flow-page{padding-top:17px;padding-bottom:130px;max-width:1280px}.flow-topline{display:flex;align-items:center;justify-content:space-between;font-size:.76rem;color:var(--muted);margin-bottom:15px}.flow-topline a{text-decoration:none;color:var(--teal)}.flow-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.flow-heading h1{font-size:clamp(1.65rem,3.2vw,2.5rem);line-height:1.14;letter-spacing:-.04em;margin:0 0 8px}.flow-heading>div>p{font-size:.78rem;color:var(--muted);margin-bottom:0}.flow-menus{display:flex;gap:9px;flex-shrink:0}.flow-menu{position:relative;border:1px solid var(--line);border-radius:9px;background:white;margin:0;padding:0}.flow-menu>summary{font-size:.78rem;list-style:none;padding:12px 15px;min-height:44px;cursor:pointer;color:var(--ink)}.flow-menu>summary::-webkit-details-marker{display:none}.flow-menu>summary:after{content:'⌄';margin-left:9px}.flow-menu[open]>summary{background:#edf4f2;border-radius:9px}.menu-panel{position:absolute;right:0;top:calc(100% + 8px);width:360px;max-height:72vh;overflow:auto;background:white;border:1px solid var(--line);border-radius:13px;box-shadow:0 15px 45px #173c3526;padding:22px;z-index:50}.menu-panel h2{font-size:1.1rem}.menu-panel h3{font-size:.92rem}.menu-panel p,.menu-goal{font-size:.82rem;line-height:1.7}.menu-panel .menu-goal{margin-bottom:8px}.menu-panel nav ol{list-style:none;padding:0;margin:0}.menu-panel nav a{display:flex;align-items:center;gap:10px;padding:10px;border-radius:8px;font-size:.83rem;text-decoration:none}.menu-panel nav a:hover,.menu-panel nav [aria-current="step"]{background:#e9f3ef;color:var(--teal)}.menu-panel nav a span{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#edf2ef;font-size:.7rem}.menu-panel hr{border:0;border-top:1px solid var(--line);margin:17px 0}.menu-panel .text-button{display:block}.foundation-link{display:block;color:var(--teal);font-size:.81rem;margin:12px 0}.warmup-box{padding:8px 0;border-top:1px solid var(--line)}.warmup-box summary{font-size:.85rem}.flow-progress{height:4px;background:#e1eae6;border-radius:8px;margin:19px 0 27px;overflow:hidden}.flow-progress i{display:block;height:100%;background:var(--teal);border-radius:8px}.stage-intro{max-width:850px;margin:6px 0 20px}.stage-intro h2{font-size:1.25rem;margin:0 0 9px}.mission{font-size:1rem;line-height:1.65;margin:0;max-width:820px}.experiment-context{font-size:.8rem;color:var(--muted);margin:8px 0 0}.flow-experiment-grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;align-items:start}.flow-experiment-grid>#visual{min-width:0;border-right:1px solid var(--line)}.focused-experiment{box-shadow:none;border-radius:17px}.flow-experiment-grid .controls{padding:23px;display:flex;flex-direction:column;gap:24px;min-width:0;border:0}.flow-experiment-grid .control{width:100%;min-width:0}.flow-experiment-grid .control label{font-size:.82rem}.flow-experiment-grid .control select{width:100%;font-size:.84rem}.flow-experiment-grid .plot-wrap{padding:13px 6px 0;display:grid;place-items:center}.flow-experiment-grid svg{max-height:360px;width:100%;height:auto}.flow-experiment-grid .readouts{border-bottom:0}.flow-experiment-grid .readout{padding:12px 14px}.flow-experiment-grid .readout small{font-size:.68rem}.flow-experiment-grid .readout strong{font-size:1rem}.diagram-reading{border-top:1px solid var(--line);padding:3px 18px;margin:0;font-size:.82rem}.diagram-reading summary{color:var(--muted);font-size:.75rem}.diagram-reading p{font-size:.82rem;line-height:1.7}.diagram-reading .formula{font-size:.9rem}.diagram-reading .data-table{margin:0 -10px}.experiment-utilities{display:flex;align-items:center;flex-wrap:wrap;gap:10px 23px;padding:5px 18px;border-top:1px solid var(--line)}.experiment-utilities .text-button,.experiment-utilities a{font-size:.76rem}.free-investigations{margin-top:20px;background:white;border:1px solid var(--line);border-radius:12px;padding:8px 20px;font-size:.87rem}.free-investigations li{padding:7px 0;line-height:1.6}.learning-card{max-width:850px;margin:0 auto;background:white;border:1px solid var(--line);border-radius:18px;padding:32px 36px;min-width:0}.learning-card .step-kicker{font-size:.67rem;color:var(--teal);font-weight:750;letter-spacing:.12em;text-transform:uppercase;display:block;margin-bottom:13px}.learning-card h2{font-size:1.55rem;line-height:1.25;margin-bottom:22px}.learning-card .question{font-size:1.04rem;line-height:1.85;margin-bottom:25px}.learning-card label:not(.criterion){font-size:.84rem;display:block;margin-bottom:9px}.learning-card textarea{display:block;width:100%;min-height:125px;border:1px solid #b8c9c3;border-radius:10px;padding:14px;resize:vertical;line-height:1.7;color:var(--ink);background:#fff}.core-insight{font-size:1.08rem;line-height:1.9}.learning-card>.formula{margin:25px 0;font-size:1.1rem}.secondary-reading{padding:5px 0;border-top:1px solid var(--line);font-size:.9rem;margin:0}.secondary-reading>summary{font-size:.84rem;font-weight:600;color:var(--teal)}.secondary-reading p{font-size:.91rem;line-height:1.9;margin:12px 0 17px}.secondary-reading .vocabulary{margin:12px 0 20px}.comparison{margin-top:25px;padding:21px;background:#eaf4ef;border-radius:12px}.comparison h3{font-size:1rem}.comparison p{margin:0;line-height:1.9}.comparison-visual{max-width:850px;margin:20px auto}.flow-worked{padding:22px;background:#f3f7f4;border-radius:12px;margin-bottom:25px;font-size:1rem;line-height:2.2}.flow-number-form input{display:block;width:min(100%,440px);padding:14px;border:1px solid #a8bfb8;border-radius:10px;font-size:1rem;color:var(--ink);min-height:50px}.flow-number-form .input-note{font-size:.75rem;color:var(--muted);margin:9px 0 0;line-height:1.6}.exercise .options{gap:10px}.exercise .option{padding:15px 18px;font-size:.94rem;line-height:1.8;border-radius:11px}.exercise .option.selected{box-shadow:inset 0 0 0 2px var(--teal);background:#e8f3ef}.task-context{font-size:.85rem;color:var(--muted)}.task-help-area{border-top:1px solid var(--line);margin-top:25px;padding-top:6px;display:flex;flex-wrap:wrap;gap:8px 25px;align-items:start}.task-help-area>div{width:100%;border-radius:11px;margin:13px 0 0;padding:18px 20px}.hint-shown{background:#fff5e5}.hint-shown span{font-size:.7rem;color:#8a5a1f;font-weight:700}.hint-shown p,.solution-shown p{line-height:1.85;font-size:.9rem;margin:10px 0 0}.solution-shown{background:#edf5f1}.solution-shown h3{font-size:.95rem}.task-help-area .text-button{font-size:.8rem}.learning-card .feedback{margin-top:22px;border-radius:12px;padding:18px 20px;font-size:.9rem}.learning-card .feedback p{line-height:1.85;margin:9px 0 0}.learning-card .feedback small{display:block;margin-top:12px;font-size:.72rem}.learning-card .feedback.wrong{background:#fff4e5;border-color:#ead1a8;color:#734c1a}.completion-status{list-style:none;margin:24px 0;padding:0}.completion-status li{display:flex;justify-content:space-between;gap:25px;padding:15px 0;border-bottom:1px solid var(--line);font-size:.85rem}.completion-status b{font-size:.76rem;font-weight:550;text-align:right;color:var(--muted)}.completion-note{font-size:.83rem;color:var(--muted);margin:22px 0}.topic-extras{max-width:850px;margin:20px auto}.topic-extras>details{background:white;border:1px solid var(--line);border-radius:13px;padding:8px 22px;margin:14px 0}.topic-extras>details>summary{font-size:.88rem;font-weight:650}.topic-extras p,.topic-extras li{font-size:.89rem;line-height:1.9}.topic-extras>.text-link{display:inline-block;margin:15px 0}.flow-dock{position:fixed;bottom:0;left:0;right:0;background:#fffffff5;border-top:1px solid var(--line);box-shadow:0 -6px 20px #153b3410;z-index:30;padding:13px 4% max(13px,env(safe-area-inset-bottom))}.flow-dock>div{max-width:1140px;margin:auto;display:flex;gap:20px;align-items:center;justify-content:space-between}.flow-dock .btn{min-height:46px}.flow-dock #flow-next{min-width:210px}.flow-dock #dock-caption{font-size:.78rem;color:var(--muted)}.flow-page.wide-mode .flow-experiment-grid{grid-template-columns:1fr}.flow-page.wide-mode .flow-experiment-grid>#visual{border-right:0}.flow-page.wide-mode .controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}.flow-page.wide-mode svg{max-height:60vh}.flow-page #flow-stage:focus{outline:none}
@media(max-width:1000px){.phase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.flow-experiment-grid{grid-template-columns:minmax(0,1fr) 210px}.flow-experiment-grid .controls{padding:19px}.learning-card{max-width:800px}}
@media(max-width:760px){.topbar{padding:13px 5%;flex-wrap:nowrap}.topbar nav{order:initial;width:auto;margin-left:auto;gap:18px;justify-content:flex-end}.brand small{display:none}.catalog-heading{padding:22px 0 13px}.catalog-heading h1{font-size:2rem}.catalog-heading p{font-size:.9rem}.catalog-search input{font-size:.83rem;padding:13px 0}.phase-card>div:last-child{padding:17px}.phase-card h2{font-size:1.05rem}.phase-card p{font-size:.78rem}.phase-grid{gap:13px}.resume-banner{padding:17px;gap:10px}.resume-banner strong{font-size:.88rem}.resume-banner .btn{font-size:.76rem;padding:10px 13px}.flow-page{padding-top:15px;padding-bottom:110px}.flow-heading{align-items:flex-start;flex-direction:column;gap:15px}.flow-heading h1{font-size:1.85rem}.flow-menus{gap:8px}.flow-menu>summary{padding:9px 13px;min-height:40px}.menu-panel{left:0;right:auto;max-width:calc(100vw - 42px);width:340px}.flow-menu:last-child .menu-panel{left:auto;right:0}.flow-progress{margin:18px 0 23px}.stage-intro h2{font-size:1.1rem}.mission{font-size:.93rem;line-height:1.75}.experiment-context{font-size:.73rem}.flow-experiment-grid{grid-template-columns:1fr}.flow-experiment-grid .controls{order:-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:16px 18px;gap:15px;border-bottom:1px solid var(--line)}.flow-experiment-grid .controls:has(.control:not([hidden]):only-child){grid-template-columns:1fr}.flow-experiment-grid>#visual{border-right:0}.flow-experiment-grid .plot-wrap{padding:5px 0 0}.flow-experiment-grid svg{max-height:310px}.flow-experiment-grid .readouts{grid-template-columns:repeat(3,minmax(0,1fr))}.flow-experiment-grid .readout{display:block;padding:11px 9px}.flow-experiment-grid .readout strong{font-size:.88rem}.flow-experiment-grid .readout small{font-size:.61rem;line-height:1.6;margin-bottom:5px}.experiment-utilities{padding:3px 12px;gap:3px 16px}.experiment-utilities .text-button,.experiment-utilities .text-link{font-size:.69rem}.diagram-reading{padding:1px 12px}.diagram-reading summary{min-height:37px;font-size:.7rem}.learning-card{padding:25px 21px;border-radius:15px}.learning-card h2{font-size:1.4rem;margin-bottom:19px}.learning-card .question{font-size:.98rem;line-height:1.85}.core-insight{font-size:1rem}.flow-worked{padding:17px;font-size:.93rem}.flow-dock{padding:11px 4% max(11px,env(safe-area-inset-bottom))}.flow-dock>div{gap:10px}.flow-dock .btn{font-size:.78rem;padding:11px 13px}.flow-dock #flow-next{min-width:0;max-width:75%;flex:0 1 auto}.flow-dock #dock-caption{display:none}.completion-status li{gap:15px}.topic-extras>details{padding:7px 18px}.compact-path li{flex-direction:column;gap:6px}.flow-page.wide-mode .controls{grid-template-columns:repeat(2,minmax(0,1fr))}.flow-menu:last-child .menu-panel{left:-110px;right:auto}}
@media(max-width:440px){.phase-grid{grid-template-columns:1fr}.phase-card{display:grid;grid-template-columns:115px minmax(0,1fr);align-items:stretch;min-height:130px}.phase-image{aspect-ratio:auto;height:100%}.phase-image img{object-fit:cover}.phase-card>div:last-child{padding:16px}.phase-card h2{font-size:1.03rem}.phase-card p{font-size:.74rem;margin-right:5px}.phase-arrow{display:none}.flow-heading h1{font-size:1.65rem}.flow-experiment-grid .controls{grid-template-columns:1fr}.flow-page.wide-mode .controls{grid-template-columns:1fr}.footer-links{gap:17px}.catalog-secondary{justify-content:flex-start}.topbar nav{gap:13px}.topbar nav a{font-size:.74rem}.brand{font-size:1.05rem}.brand-icon{width:33px;height:33px;font-size:1.6rem}.flow-menu:last-child .menu-panel{left:-110px;max-width:calc(100vw - 37px)}.completion-status li{flex-direction:column;gap:5px}.completion-status b{text-align:left}.resume-banner small{font-size:.67rem}.resume-banner strong{line-height:1.5}}
@media(prefers-reduced-motion:reduce){.phase-card{transition:none}.phase-card:hover{transform:none}}
@media print{.flow-topline,.flow-menus,.flow-progress,.flow-dock,.experiment-utilities,.task-help-area,.flow-number-form,.catalog-search,.catalog-toolbar,.topbar,footer{display:none!important}.flow-page{padding:0}.flow-heading{margin-bottom:22px}.learning-card{max-width:none;padding:15px;border:1px solid #999}.flow-experiment-grid{display:block}.flow-experiment-grid .controls{display:none!important}.flow-experiment-grid svg{max-height:340px}.phase-card,.topic-card{break-inside:avoid}.flow-worked{background:white}.comparison{background:white;border:1px solid #aaa}.flow-page #flow-stage{padding-bottom:0}}
/* Keep long vector answers inside their own card on very narrow screens. */
.flow-page .options{grid-template-columns:minmax(0,1fr);min-width:0}.flow-page .option{min-width:0;max-width:100%;overflow-x:auto}.flow-page .option math{max-width:100%;overflow-x:auto}
@media(max-width:760px){.flow-menus{position:relative}.flow-menu{position:static}.flow-menu .menu-panel,.flow-menu:last-child .menu-panel{left:0;right:auto;max-width:calc(100vw - 40px);width:340px}}
.in-lab{padding-bottom:85px}@media print{body.in-lab{padding-bottom:0}}
