/* Self-hosted webfonts.
 *
 * These used to come from fonts.googleapis.com, which put a render-blocking
 * stylesheet on a third-party origin ahead of our own CSS: first paint waited
 * on a DNS lookup, a TLS handshake and a round trip before it could even
 * discover the font files. Serving them from this origin removes that entirely.
 *
 * The `* Fallback` faces exist to kill layout shift. `font-display:swap` paints
 * text in a fallback immediately and swaps when the webfont arrives; if the two
 * have different metrics, every line re-flows at that moment and the page
 * jumps. Overriding the fallback's ascent, descent and advance width to match
 * the real face makes the swap invisible. Values are measured from the actual
 * font binaries, divided by size-adjust per the CSS spec — do not hand-edit
 * them; recompute if a font is ever replaced.
 */
@font-face{font-family:"Manrope";src:url("/static/fonts/manrope-variable.woff2") format("woff2-variations");font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:"DM Mono";src:url("/static/fonts/dm-mono-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"DM Mono";src:url("/static/fonts/dm-mono-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Manrope Fallback";src:local("Arial"),local("Helvetica"),local("Liberation Sans");ascent-override:103.80%;descent-override:29.21%;line-gap-override:0%;size-adjust:102.70%}
@font-face{font-family:"DM Mono Fallback";src:local("Courier New"),local("Liberation Mono"),local("DejaVu Sans Mono");ascent-override:99.22%;descent-override:31.01%;line-gap-override:0%;size-adjust:99.98%}
:root{--paper:#f6f3ea;--paper-2:#ece8dc;--ink:#172022;--muted:#5d6665;--line:#d9d4c7;--red:#e8493f;--red-dark:#bf322c;--blue:#2c6fbb;--yellow:#f2c744;--green:#3b8c6e;--white:#fffdf7;--shadow:0 18px 50px rgba(23,32,34,.10);--font:"Manrope","Manrope Fallback",system-ui,sans-serif;--mono:"DM Mono","DM Mono Fallback",ui-monospace,monospace}
[data-theme=dark]{--paper:#172022;--paper-2:#202a2c;--ink:#f6f3ea;--muted:#adb6b4;--line:#3a4647;--white:#222d2f;--shadow:0 18px 50px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img,svg{display:block;max-width:100%}mjx-container svg{display:inline;max-width:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.05;letter-spacing:-.045em}h1{font-size:clamp(3rem,7vw,6.5rem)}h2{font-size:clamp(2rem,4vw,4rem)}h3{font-size:1.25rem}.skip{position:fixed;left:16px;top:-80px;z-index:100;background:var(--ink);color:var(--paper);padding:10px 16px}.skip:focus{top:16px}.site-header{height:76px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(20px,4vw,64px);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(18px);position:sticky;top:0;z-index:50}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.15rem;letter-spacing:-.04em}.brand-mark{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--red);color:#fff;font-family:Georgia,serif;font-weight:700;font-size:1.35rem}.brand-dot{color:var(--red)}.primary-nav{display:flex;gap:28px;font-size:.89rem;font-weight:600}.primary-nav>a{position:relative}.primary-nav>a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--red);transition:.2s}.primary-nav>a:hover:after,.primary-nav>a[aria-current=page]:after{right:0}.header-actions{display:flex;justify-content:flex-end;gap:10px}.icon-btn,.menu-button{border:1px solid var(--line);background:transparent;color:var(--ink);height:42px;padding:0 14px;border-radius:4px}.menu-button{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;padding:0}.menu-button span{display:block;width:20px;height:2px;background:var(--ink);transition:transform .2s,opacity .2s}.site-header.menu-open .menu-button span:nth-child(1){transform:translateY(7px) rotate(45deg)}.site-header.menu-open .menu-button span:nth-child(2){opacity:0}.site-header.menu-open .menu-button span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-nav-actions{display:none}body.menu-locked{overflow:hidden}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:46px;padding:0 22px;border:1px solid var(--ink);background:transparent;color:var(--ink);font-weight:700;border-radius:3px;transition:transform .18s,background .18s}.button:hover{transform:translateY(-2px)}.button span{font-size:1.25em}.button-dark{background:var(--ink);color:var(--paper)}.button-red{background:var(--red);border-color:var(--red);color:#fff}.button-red:hover{background:var(--red-dark)}.button-light{background:var(--paper);border-color:var(--paper);color:#172022}.button-large{min-height:58px;padding:0 30px}.button-outline{background:transparent}.grid-paper{background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:34px 34px}.hero{min-height:calc(100vh - 76px);display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:5vw;padding:80px clamp(20px,5vw,80px);overflow:hidden}.hero-copy{max-width:710px;position:relative;z-index:2}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.14em;font:500 .73rem var(--mono);color:var(--muted)}.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:28px}.eyebrow span{width:28px;height:2px;background:var(--red)}.hero h1{margin:0 0 28px;font-size:clamp(2.9rem,5.4vw,6rem);text-wrap:balance}.hero h1 em{color:var(--red);font-family:Georgia,serif;font-weight:400}.hero-copy>p{font-size:clamp(1.08rem,1.6vw,1.35rem);max-width:620px;color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:28px;margin:34px 0}.text-link{font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:2px}.trust-row{display:flex;flex-wrap:wrap;gap:20px;font:500 .72rem var(--mono);text-transform:uppercase}.trust-row span:before{content:"✓";color:var(--green);margin-right:7px}.math-stage{position:relative;background:var(--white);border:1px solid var(--ink);box-shadow:16px 16px 0 var(--yellow);transform:rotate(1.5deg);min-width:0}.stage-top{height:48px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 18px;font:500 .72rem var(--mono)}.traffic{color:var(--red);word-spacing:4px}.math-stage svg{color:var(--ink);width:100%}.axis{stroke:currentColor;opacity:.36;stroke-width:1.4}.curve{fill:none;stroke:var(--red);stroke-width:6;stroke-linecap:round}.curve.shadow{stroke:var(--yellow);stroke-width:15;opacity:.28}.point{fill:var(--red);stroke:var(--white);stroke-width:3}.tangent{stroke:var(--blue);stroke-width:2;stroke-dasharray:8 7}.equation-card{position:absolute;right:-25px;bottom:22px;background:var(--ink);color:var(--paper);padding:16px 20px;display:flex;flex-direction:column;box-shadow:8px 8px 0 var(--red);font-family:var(--mono)}.equation-card small,.equation-card span{opacity:.7;font-size:.7rem}.quick-solve{padding:0 clamp(20px,5vw,80px);transform:translateY(-28px);position:relative;z-index:4}.quick-form{max-width:1050px;margin:auto;background:var(--white);border:1px solid var(--ink);padding:18px;box-shadow:8px 8px 0 var(--ink)}.quick-form label{display:block;font:500 .7rem var(--mono);text-transform:uppercase;letter-spacing:.1em;margin:0 0 10px}.quick-form>div{display:flex;gap:12px}.quick-form input{flex:1;min-width:0;padding:12px 4px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);outline:0}
/* ===== END CRITICAL ===== Everything above this line is inlined into the
   document head by scripts/build_critical_css.py, so the first paint is
   styled even when this file has not arrived yet. It covers the reset,
   design tokens, @font-face, header, navigation and hero — the whole
   above-the-fold surface. Add above the line only if it is needed for
   the first screen, and re-run the build script after moving the line. */
.section{padding:clamp(48px,5.5vw,88px) clamp(20px,5vw,80px)}.section-intro{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:36px}.section-intro>div{max-width:760px}.section-intro h2{margin:12px 0 0}.section-intro>p{max-width:460px;color:var(--muted);margin:0}.tool-rail{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--ink)}.tool-feature{padding:30px;min-height:420px;display:flex;flex-direction:column;border-right:1px solid rgba(23,32,34,.3);transition:transform .2s}.tool-feature:last-child{border:0}.tool-feature:hover{transform:translateY(-7px)}.tool-feature.red{background:#e85a50}.tool-feature.blue{background:#5b8fd0}.tool-feature.yellow{background:#efcd61}.tool-feature.green{background:#6da58c}.tool-number{font:500 .7rem var(--mono);margin-bottom:auto}.tool-symbol{font:500 4rem Georgia;margin:35px 0}.tool-feature h3{margin:0 0 10px;font-size:1.6rem}.tool-feature p{margin:0;color:#172022;opacity:.77}.tool-feature b{margin-top:30px;font-size:.87rem}.mini-graph{height:100px;margin:35px 0;position:relative;background-image:linear-gradient(rgba(23,32,34,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(23,32,34,.14) 1px,transparent 52%);background-size:20px 20px}.mini-graph i{position:absolute;inset:10px 0;background:linear-gradient(165deg,transparent 47%,#172022 48%,#172022 51%,transparent 52%);transform:skewY(-8deg)}.understand{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:center;background:var(--paper-2)}.understand-visual{position:relative}.understand-visual img{aspect-ratio:4/3;object-fit:cover;border:1px solid var(--ink);filter:saturate(.86)}.understand-visual span{position:absolute;bottom:-18px;right:-18px;background:var(--yellow);color:#172022;padding:14px 20px;font:500 .72rem var(--mono);text-transform:uppercase}.understand-copy h2{margin:16px 0 24px}.understand-copy>p{color:var(--muted);font-size:1.15rem}.understand-copy ol{list-style:none;padding:0;margin:35px 0}.understand-copy li{display:grid;grid-template-columns:1fr 1.5fr;gap:20px;padding:18px 0;border-top:1px solid var(--line)}.understand-copy li span{color:var(--muted)}.topic-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.topic-grid a{padding:26px;min-height:270px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);display:flex;flex-direction:column}.topic-grid a>span{font:500 2rem Georgia;color:var(--red)}.topic-grid h3{font-size:1.45rem;margin:28px 0 10px}.topic-grid p{color:var(--muted);font-size:.9rem}.topic-grid b{margin-top:auto;font-size:.8rem}.final-cta{background:var(--red);color:#fff;display:flex;justify-content:space-between;align-items:end;gap:30px;padding:clamp(65px,8vw,110px) clamp(20px,5vw,80px)}.final-cta .kicker{color:rgba(255,255,255,.7)}.final-cta h2{font-size:clamp(2.5rem,6vw,6rem);margin:15px 0 0}.page-hero,.solver-hero{padding:clamp(80px,10vw,150px) clamp(20px,11vw,180px);text-align:center;border-bottom:1px solid var(--ink)}.page-hero h1,.solver-hero h1{max-width:1050px;margin:20px auto;font-size:clamp(3rem,7vw,7rem)}.page-hero p,.solver-hero p{max-width:760px;margin:auto;color:var(--muted);font-size:1.2rem}.listing{max-width:1500px;margin:auto}.filter-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px;font:500 .72rem var(--mono);text-transform:uppercase}.filter-row input{width:min(380px,50%);background:transparent;border:0;border-bottom:1px solid var(--ink);padding:10px;color:var(--ink)}.page-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--ink);border-top:1px solid var(--ink)}.page-card{min-height:330px;padding:28px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);display:flex;flex-direction:column;transition:background .2s}.page-card:hover{background:var(--white)}.page-icon{width:54px;height:54px;border:1px solid var(--ink);display:grid;place-items:center;font:500 1.35rem Georgia;background:var(--yellow);color:#172022}.page-category{font:500 .67rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-top:35px}.page-card h2{font-size:1.55rem;margin:9px 0 14px}.page-card p{font-size:.92rem;color:var(--muted)}.page-card b{font-size:.8rem;margin-top:auto}.detail-hero{min-height:580px;padding:80px clamp(20px,8vw,140px);display:grid;grid-template-columns:1fr auto;align-items:center;gap:70px;border-bottom:1px solid var(--ink)}.detail-hero>div:first-child{max-width:900px}.detail-hero h1{font-size:clamp(3rem,7vw,7rem);margin:18px 0}.detail-hero p{font-size:1.2rem;color:var(--muted);max-width:700px}.breadcrumb{display:block;font:500 .72rem var(--mono);margin-bottom:60px}.detail-symbol{width:230px;height:230px;background:var(--yellow);border:1px solid var(--ink);box-shadow:15px 15px 0 var(--red);display:grid;place-items:center;font:500 5rem Georgia;color:#172022;transform:rotate(3deg)}.inline-solver{display:flex;gap:60px;justify-content:space-between;align-items:center;padding:45px clamp(20px,8vw,140px);background:var(--ink);color:var(--paper)}.inline-solver h2{font-size:1.8rem;margin:8px 0}.inline-solver form{display:flex;gap:10px;flex:1;max-width:760px}.inline-solver input{flex:1;min-width:0;padding:0 18px;background:#fff;color:#172022;border:0}.article-layout{max-width:1280px;margin:auto;padding:100px 30px;display:grid;grid-template-columns:220px minmax(0,760px);gap:90px;justify-content:center}.toc{position:sticky;top:110px;align-self:start;display:flex;flex-direction:column;gap:10px;font-size:.8rem}.toc b{font:500 .68rem var(--mono);text-transform:uppercase;margin-bottom:10px}.toc a{color:var(--muted)}.prose{font-size:1.08rem;line-height:1.85}.prose h2{font-size:clamp(1.8rem,3vw,2.8rem);margin:2.2em 0 .7em}.prose h3{margin-top:2em}.prose p,.prose li{color:color-mix(in srgb,var(--ink) 78%,var(--muted))}.prose a{text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}.prose blockquote{font:400 1.8rem/1.45 Georgia,serif;border-left:5px solid var(--red);margin:45px 0;padding:10px 0 10px 28px}.prose table{width:100%;border-collapse:collapse;margin:35px 0;font-size:.9rem}.prose th,.prose td{text-align:left;padding:14px;border:1px solid var(--line)}.prose details{border-top:1px solid var(--line);padding:17px 0}.prose summary{font-weight:700;cursor:pointer}.formula-card{background:var(--ink);color:var(--paper);padding:30px;margin:40px 0}.formula-card small{font:500 .68rem var(--mono);text-transform:uppercase;opacity:.65}.formula-card div{font:400 1.25rem var(--mono);margin-top:14px}.related{max-width:1400px;margin:auto;border-top:1px solid var(--ink)}.related h2{margin:14px 0 40px}.related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.related-grid a{padding:24px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.related-grid span{font:500 1.4rem Georgia;color:var(--red)}.related-grid p{color:var(--muted);font-size:.85rem}.editorial-head{padding:110px max(20px,calc((100vw - 1100px)/2));border-bottom:1px solid var(--ink)}.editorial-head h1{font-size:clamp(3rem,7vw,7rem);margin:22px 0 28px}.editorial-head>p{font-size:1.3rem;color:var(--muted);max-width:780px}.byline{display:flex;align-items:center;gap:13px;margin-top:35px}.byline span:last-child{display:flex;flex-direction:column;font-size:.82rem}.byline small{color:var(--muted)}.editorial-image{max-width:1400px;margin:70px auto;padding:0 20px}.editorial-image img{width:100%;max-height:700px;object-fit:cover;border:1px solid var(--ink)}.editorial-image figcaption{font:400 .7rem var(--mono);margin-top:8px;color:var(--muted)}.editorial-body{max-width:760px;margin:80px auto 140px;padding:0 20px}.dropcap:first-letter{float:left;font:400 5rem/.8 Georgia;color:var(--red);padding:8px 9px 0 0}.callout{background:var(--yellow);color:#172022;padding:30px;margin:45px -30px}.callout p{color:#172022;margin:8px 0 0}.simple-content{max-width:800px;margin:90px auto 140px;padding:0 20px}.solver-shell{max-width:1380px;margin:0 auto;padding:70px 30px 110px;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:35px}.solver-panel{background:var(--white);border:1px solid var(--ink);box-shadow:12px 12px 0 var(--yellow)}.solver-tabs{display:flex;border-bottom:1px solid var(--line)}.solver-tabs button{flex:1;padding:16px;background:transparent;border:0;color:var(--muted);font-weight:700}.solver-tabs button.active{background:var(--ink);color:var(--paper)}.solver-panel textarea{width:100%;min-height:280px;border:0;padding:28px;resize:vertical;background:transparent;color:var(--ink);outline:0;font:400 1.1rem/1.7 var(--mono)}.upload-zone{padding:0 28px 24px}.upload-zone input{position:absolute;opacity:0;pointer-events:none}.upload-zone label{min-height:220px;border:2px dashed var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center}.upload-zone label span{font-size:2rem;color:var(--red)}.upload-zone label small{color:var(--muted)}.upload-zone img{max-height:300px;margin:auto}.solver-bottom{border-top:1px solid var(--line);padding:18px;display:flex;justify-content:space-between;align-items:center;gap:20px}.example-chips{display:flex;gap:7px;flex-wrap:wrap}.example-chips button,.workspace-help button{border:1px solid var(--line);background:transparent;color:var(--muted);font-size:.72rem;padding:7px 10px}.form-note{text-align:center;color:var(--muted);font-size:.72rem;margin:0 0 15px}.solver-aside{border-top:5px solid var(--red);padding:25px;background:var(--paper-2)}.solver-aside ul{list-style:none;padding:0;margin-top:20px}.solver-aside li{display:flex;align-items:center;gap:12px;padding:15px 0;border-top:1px solid var(--line);font-size:.9rem}.solver-aside li b{font:500 .7rem var(--mono);color:var(--red)}.solution{max-width:1050px;margin:0 auto 120px;padding:45px;background:var(--white);border:1px solid var(--ink)}.solution-head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--line);margin-bottom:30px}.solution-head h2{font-size:2.2rem;margin:10px 0 25px}.loading-lines{display:grid;gap:14px}.loading-lines i{height:16px;background:var(--paper-2);animation:pulse 1.2s infinite}.loading-lines i:nth-child(2){width:80%}.loading-lines i:nth-child(3){width:55%}@keyframes pulse{50%{opacity:.35}}.workspace{height:calc(100vh - 76px);min-height:620px;display:grid;grid-template-columns:390px 1fr;border-bottom:1px solid var(--ink)}.expression-panel{background:var(--white);border-right:1px solid var(--ink);padding:24px;display:flex;flex-direction:column}.workspace-title{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding-bottom:20px}.workspace-title>div:last-child{display:flex;flex-direction:column}.workspace-title small{font-size:.7rem;color:var(--muted)}.expression-list{margin:25px -24px}.expression-list label{display:grid;grid-template-columns:45px 1fr;align-items:center;border-top:1px solid var(--line);min-height:70px}.expression-list label:last-child{border-bottom:1px solid var(--line)}.expression-list span{text-align:center;font:500 .75rem var(--mono);color:var(--muted)}.expression-list input{height:70px;border:0;border-left:4px solid var(--red);padding:0 14px;background:transparent;color:var(--ink);font:400 1rem var(--mono);outline:0}.workspace-help{display:flex;gap:7px;flex-wrap:wrap;color:var(--muted);font-size:.75rem}.expression-panel>.button{margin-top:auto}.canvas-wrap{position:relative;overflow:hidden;background:var(--paper)}#graph-canvas{width:100%;height:100%;touch-action:none}.graph-controls{position:absolute;right:18px;top:18px;display:flex;flex-direction:column}.graph-controls button{width:42px;height:42px;border:1px solid var(--line);background:var(--white);color:var(--ink)}.graph-label{position:absolute;bottom:15px;right:15px;background:var(--white);border:1px solid var(--line);padding:7px 10px;font:400 .65rem var(--mono)}.tool-about{padding:80px max(20px,calc((100vw - 1000px)/2));text-align:center}.tool-about h1{font-size:clamp(3rem,6vw,6rem);margin:15px 0}.tool-about p{font-size:1.2rem;color:var(--muted)}.tool-about>div{display:flex;justify-content:center;gap:30px;margin-top:30px}.tool-about a{font-weight:700;border-bottom:1px solid var(--ink)}.not-found{text-align:center;padding:120px 20px;min-height:70vh}.not-found>span{font:500 1rem var(--mono);color:var(--red)}.not-found h1{max-width:900px;margin:20px auto}.not-found p{color:var(--muted)}.not-found>div{display:flex;justify-content:center;gap:10px}footer{border-top:1px solid var(--ink);padding:65px clamp(20px,5vw,80px) 25px}.footer-top{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:50px}.footer-top>div{display:flex;flex-direction:column;align-items:flex-start}.footer-top p{color:var(--muted);font-size:.9rem;margin-top:20px}.footer-top h3{font:500 .7rem var(--mono);text-transform:uppercase;letter-spacing:.1em;margin-bottom:18px}.footer-top a:not(.brand){font-size:.85rem;color:var(--muted);margin-bottom:8px}.footer-bottom{border-top:1px solid var(--line);margin-top:55px;padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;font:400 .67rem var(--mono);color:var(--muted)}.footer-bottom>span{display:inline-flex;align-items:center}.theme-switch{display:inline-flex;align-items:center;gap:9px;margin-left:auto;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;transition:color .18s,border-color .18s,background .18s}.theme-switch:hover{color:var(--ink);border-color:var(--ink);background:var(--paper-2)}.theme-switch:focus-visible{outline:2px solid var(--red);outline-offset:2px}.theme-switch-icon{width:15px;height:15px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.theme-switch-icon .theme-moon{display:none}[data-theme=dark] .theme-switch-icon .theme-sun,[data-theme=dark] .theme-switch-icon .theme-rays{display:none}[data-theme=dark] .theme-switch-icon .theme-moon{display:block}
@media(max-width:1050px){.site-header{grid-template-columns:1fr auto auto;gap:8px}.primary-nav{position:fixed;inset:76px 0 auto;height:calc(100vh - 76px);height:calc(100dvh - 76px);z-index:60;background:var(--paper);padding:10px 22px 30px;flex-direction:column;gap:0;overflow-y:auto;overscroll-behavior:contain;display:none}.site-header.menu-open .primary-nav{display:flex;animation:nav-in .22s ease}@keyframes nav-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}.primary-nav>a,.nav-tools>button{font-size:1.08rem;padding:16px 2px;border-bottom:1px solid var(--line);width:100%;text-align:left}.primary-nav>a:after{display:none}.primary-nav>a[aria-current=page],.primary-nav>a:active{color:var(--red)}.nav-tools{width:100%}.mobile-nav-actions{display:grid;gap:10px;margin-top:26px}.mobile-nav-actions .button{width:100%}.header-actions{display:flex}.header-actions .auth-google,.header-actions .header-solve,.header-actions .auth-user,.header-actions form{display:none}.menu-button{display:inline-flex}.hero{grid-template-columns:1fr;padding-top:60px}.math-stage{max-width:720px}.tool-rail{grid-template-columns:repeat(2,1fr)}.tool-feature{border-bottom:1px solid rgba(23,32,34,.3)}.understand{grid-template-columns:1fr}.topic-grid{grid-template-columns:repeat(2,1fr)}.page-grid{grid-template-columns:repeat(2,1fr)}.detail-symbol{display:none}.detail-hero{grid-template-columns:1fr}.solver-shell{grid-template-columns:1fr}.workspace{grid-template-columns:330px 1fr}.footer-top{grid-template-columns:repeat(3,1fr)}.footer-top>div:first-child{grid-column:1/-1}}
@media(max-width:680px){body{font-size:16px}.site-header{height:66px;padding:0 14px}.brand{font-size:1rem}.brand-mark{width:30px;height:30px}.menu-button{height:40px;width:40px}.icon-btn{height:40px}.search-trigger{width:40px}.primary-nav{inset:66px 0 auto;height:calc(100vh - 66px);height:calc(100dvh - 66px);padding:6px 18px 26px}.hero{min-height:auto;padding:70px 20px 90px}.hero h1{font-size:2.85rem}.hero-actions,.section-intro,.final-cta,.inline-solver{align-items:flex-start;flex-direction:column}.math-stage{box-shadow:8px 8px 0 var(--yellow)}.equation-card{right:-4px;bottom:-35px}.quick-solve{padding:0 20px}.quick-form>div,.inline-solver form{flex-direction:column}.section{padding:52px 20px}.tool-rail,.topic-grid,.page-grid,.related-grid{grid-template-columns:1fr}.tool-feature{min-height:330px}.understand{padding-top:60px}.page-hero,.solver-hero{padding:80px 20px}.page-hero h1,.solver-hero h1{font-size:3.5rem}.filter-row{align-items:flex-start;gap:20px;flex-direction:column}.filter-row input{width:100%}.page-card{min-height:280px}.detail-hero{min-height:auto;padding:70px 20px}.detail-hero h1{font-size:3.5rem}.breadcrumb{margin-bottom:40px}.article-layout{display:block;padding:70px 20px}.toc{display:none}.inline-solver{padding:35px 20px}.related{padding:70px 20px}.editorial-head{padding:80px 20px}.editorial-head h1{font-size:3.5rem}.callout{margin:40px 0}.solver-shell{padding:35px 14px 80px}.solver-panel{box-shadow:7px 7px 0 var(--yellow)}.solver-bottom{align-items:stretch;flex-direction:column}.solver-bottom .button{width:100%}.example-chips{display:none}.solution{margin:0 14px 80px;padding:25px}.solution-head{flex-direction:column}.workspace{height:auto;grid-template-columns:1fr}.expression-panel{min-height:430px;border-right:0;border-bottom:1px solid var(--ink)}.canvas-wrap{height:500px}.tool-about>div{flex-direction:column;align-items:center}.footer-top{grid-template-columns:repeat(2,1fr);gap:35px}.footer-bottom{gap:15px;flex-direction:column;align-items:flex-start}.theme-switch{margin-left:0}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important}}
.simple-related>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--ink)}
.simple-related a{display:flex;flex-direction:column;gap:8px;padding:20px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);text-decoration:none}
.simple-related span{font-size:.84rem;color:var(--muted)}
.solver-route-switch{display:flex;justify-content:center;gap:10px;margin-top:30px}
.solver-route-switch a{padding:11px 16px;border:1px solid var(--ink);font-weight:700;background:var(--paper)}
.solver-route-switch a[aria-current=page]{background:var(--ink);color:var(--paper)}
.solver-access-gate{max-width:1180px;margin:70px auto 110px;padding:48px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:60px;border:1px solid var(--ink);background:var(--white);box-shadow:12px 12px 0 var(--blue)}.solver-access-gate h2{max-width:720px;margin:0 0 18px;font-size:clamp(2rem,4vw,4rem)}.solver-access-gate p{max-width:760px;margin:0;color:var(--muted);font-size:1.05rem}.solver-access-actions{display:flex;min-width:270px;flex-direction:column;gap:10px}
.solver-access-gate .solver-saved-question{margin-top:24px;padding:14px 18px;border-left:4px solid var(--blue);background:var(--paper);color:var(--ink);overflow-wrap:anywhere}
@media(max-width:680px){.simple-related>div{grid-template-columns:1fr}.solver-route-switch{flex-direction:column}.solver-access-gate{margin:35px 14px 80px;padding:28px 20px;grid-template-columns:1fr;gap:30px;box-shadow:7px 7px 0 var(--blue)}.solver-access-actions{min-width:0}}

/* Interactive graphing workspace */
.workspace{grid-template-columns:minmax(440px,33vw) 1fr}
.expression-panel{padding:0;min-width:0;overflow:hidden}
.workspace-title{min-height:68px;padding:10px 14px;border-bottom:1px solid var(--line);flex:none}
.workspace-title .page-icon{width:40px;height:40px;font-size:1rem}.workspace-title h1{font-size:.95rem;letter-spacing:-.02em;margin:0;line-height:1.2}
.footer-heading{font:500 .7rem var(--mono);text-transform:uppercase;letter-spacing:.1em;margin-bottom:18px}
.math-model-icon{width:72%;height:72%;overflow:visible;fill:var(--ink)}.math-model-icon path{fill:none;stroke:var(--ink);stroke-linecap:round;stroke-linejoin:round}.math-model-grid{stroke-width:1;opacity:.18}.math-model-axis{stroke-width:2}.math-model-curve{stroke:var(--red)!important;stroke-width:3.5}.course-emblem .math-model-icon,.detail-symbol .math-model-icon{width:70%;height:70%}.course-emblem .math-model-grid,.detail-symbol .math-model-grid{opacity:.22}
.history-controls{display:flex!important;flex-direction:row!important;margin-left:auto}
.history-controls button,.graph-toolbar button,.workspace-footer button{border:0;background:transparent;color:var(--ink);padding:7px 9px;font-weight:700}
.history-controls button:disabled{opacity:.25}.history-controls button:hover,.graph-toolbar button:hover,.workspace-footer button:hover{background:var(--paper-2)}
.workspace-title>div:nth-child(2){min-width:0}.workspace-title>div:nth-child(2)>b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.9rem}.workspace-title>div:nth-child(2)>small{white-space:nowrap}
.history-controls .save-graph-button{min-width:62px;margin-right:3px;padding:7px 11px;background:var(--blue);color:#fff;border-radius:3px}.history-controls .save-graph-button:hover{background:color-mix(in srgb,var(--blue) 82%,#000);color:#fff}
.graph-toolbar{display:grid;grid-template-columns:repeat(4,1fr);min-height:49px;border-bottom:1px solid var(--line);flex:none}
.graph-toolbar button{border-right:1px solid var(--line);font-size:.7rem;padding:9px 4px}.graph-toolbar button:last-child{border-right:0}
.graph-settings{padding:14px;border-bottom:1px solid var(--line);background:var(--paper-2);font-size:.72rem}.graph-settings>label{display:inline-flex;align-items:center;gap:5px;margin:0 12px 10px 0}
.bounds-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.bounds-fields label{font:400 .62rem var(--mono);color:var(--muted)}.bounds-fields input{width:100%;height:auto!important;margin-top:4px;padding:6px!important;border:1px solid var(--line)!important;background:var(--white)!important;color:var(--ink)}
.expression-list{margin:0;overflow:auto;flex:1;min-height:145px}.expression-row{border-bottom:1px solid var(--line);background:var(--white)}.expression-row:focus-within{background:color-mix(in srgb,var(--white) 88%,var(--paper-2))}
.expression-main{min-height:65px;display:grid;grid-template-columns:37px 24px minmax(0,1fr) 38px 35px;align-items:center}
.visibility-dot,.row-menu,.row-delete{border:0;background:transparent;color:var(--muted);height:100%;display:grid;place-items:center}.visibility-dot i{width:20px;height:20px;border-radius:50%;box-shadow:inset 0 0 0 2px rgba(255,255,255,.75)}
.expression-number{font:400 .68rem var(--mono);color:var(--muted)}.expression-input{width:100%;height:64px!important;border:0!important;background:transparent!important;color:var(--ink);outline:0;font:500 1.12rem var(--mono)!important;letter-spacing:-.03em;padding:0!important}
.row-delete{font-size:1.65rem;opacity:0}.expression-row:hover .row-delete,.expression-row:focus-within .row-delete{opacity:1}.row-menu{font-size:.75rem;letter-spacing:1px}.row-menu:hover,.row-delete:hover{background:var(--paper-2);color:var(--ink)}
.expression-options{display:flex;align-items:center;gap:10px;padding:8px 13px;border-top:1px solid var(--line);font-size:.7rem;background:var(--paper-2)}.expression-options label{display:flex!important;min-height:auto!important;grid-template-columns:none!important;border:0!important;align-items:center;gap:6px}.expression-options input[type=color]{width:27px!important;height:24px!important;border:0!important;padding:0!important;background:transparent}.expression-options button{border:1px solid var(--line);background:var(--white);color:var(--ink);padding:5px 8px}
.expression-result{padding:0 40px 7px 61px;color:var(--muted);font:400 .66rem var(--mono)}.expression-row.has-error .expression-result{color:var(--red)}
.slider-suggestions{padding:0 20px 12px 61px;color:var(--muted);font:400 .7rem var(--mono)}.slider-suggestions button{min-width:34px;border:1px solid var(--blue);background:color-mix(in srgb,var(--blue) 10%,var(--white));color:var(--blue);border-radius:3px;padding:5px 9px;margin-left:5px;font-weight:700}
.slider-row{display:grid;grid-template-columns:32px 1fr auto auto;align-items:center;gap:8px;padding:0 12px 12px 25px}.slider-row>button{width:30px;height:30px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--muted);font-size:.65rem}.slider-row>input[type=range]{width:100%;height:auto!important;border:0!important;padding:0!important;accent-color:var(--blue)}.slider-row label{display:flex!important;min-height:auto!important;grid-template-columns:none!important;border:0!important;align-items:center;gap:3px;font:400 .6rem var(--mono);color:var(--muted)}.slider-row label input{width:48px;height:auto!important;border:0!important;border-bottom:1px solid var(--line)!important;background:transparent!important;color:var(--ink);font:400 .65rem var(--mono)!important;padding:3px!important}
.add-row{width:100%;min-height:42px;text-align:left;border:0;border-bottom:1px solid var(--line);background:var(--white);color:var(--muted);padding:0 20px;font-size:.75rem;flex:none}.add-row:hover{background:var(--paper-2);color:var(--ink)}
.math-keypad{border-top:1px solid var(--line);background:var(--paper-2);padding:8px;flex:none}.keypad-tabs{display:flex;margin-bottom:7px}.keypad-tabs button{min-width:45px;border:0;background:transparent;color:var(--muted);padding:5px 10px;font-size:.7rem}.keypad-tabs button.active{background:var(--white);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.08)}.keypad-tabs button:last-child{margin-left:auto}
.key-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.key-grid button{height:35px;border:1px solid var(--line);background:var(--white);color:var(--ink);border-radius:3px;font:500 .78rem var(--mono);box-shadow:0 1px 1px rgba(0,0,0,.05)}.key-grid button:hover{border-color:var(--blue);background:color-mix(in srgb,var(--blue) 7%,var(--white))}
.key-grid[hidden],.math-keypad[hidden],.graph-settings[hidden]{display:none!important}
.workspace-footer{height:37px;display:flex;align-items:center;border-top:1px solid var(--line);font:400 .61rem var(--mono);color:var(--muted);flex:none}.workspace-footer span{margin-left:5px}.workspace-footer a{margin-left:auto;background:var(--red);color:#fff;align-self:stretch;display:flex;align-items:center;padding:0 12px;font-weight:700}
.canvas-wrap{cursor:crosshair}.canvas-wrap:active{cursor:grabbing}.graph-controls{gap:5px}.graph-controls button{border-radius:4px;font-size:1.2rem;box-shadow:0 2px 7px rgba(0,0,0,.09)}
.graph-readout{position:absolute;left:14px;bottom:14px;background:color-mix(in srgb,var(--white) 92%,transparent);border:1px solid var(--line);padding:6px 9px;font:400 .62rem var(--mono);color:var(--muted)}
.graph-crosshair{position:absolute;pointer-events:none;width:0;height:0}.graph-crosshair i{position:absolute;width:12px;height:12px;border:3px solid var(--white);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px rgba(0,0,0,.25)}.graph-crosshair b:before,.graph-crosshair b:after{content:"";position:absolute;background:var(--muted);opacity:.3}.graph-crosshair b:before{width:1px;height:100vh;top:-50vh}.graph-crosshair b:after{height:1px;width:100vw;left:-50vw}.graph-crosshair span{position:absolute;left:11px;top:10px;white-space:nowrap;background:var(--ink);color:var(--paper);padding:5px 8px;font:400 .65rem var(--mono);border-radius:3px}

@media(max-width:1050px){.workspace{grid-template-columns:minmax(390px,44vw) 1fr}.graph-toolbar button{font-size:0}.graph-toolbar button:first-letter{font-size:.9rem}.workspace-title>div:nth-child(2)>small{display:none}}
@media(max-width:680px){.workspace{height:auto;grid-template-columns:1fr}.expression-panel{height:560px;min-height:560px}.canvas-wrap{height:540px}.math-keypad{display:none}.graph-toolbar button{font-size:.65rem}.graph-toolbar button:first-letter{font-size:inherit}.bounds-fields{grid-template-columns:repeat(2,1fr)}}

/* Large selectable parameter rows */
.expression-row{position:relative;transition:box-shadow .12s,background .12s}
.expression-row.is-selected{box-shadow:inset 0 0 0 2px #3478dd;z-index:2;background:linear-gradient(90deg,#3478dd 61px,var(--white) 61px)}
.expression-row.is-selected .expression-number{color:#fff}.expression-row.is-selected .visibility-dot{color:#fff}
.expression-row.is-selected .visibility-dot i{box-shadow:0 0 0 2px rgba(255,255,255,.9),inset 0 0 0 2px rgba(255,255,255,.35)}
.expression-main{min-height:78px}.expression-input{height:77px!important;font-size:1.32rem!important}
.slider-row{grid-template-columns:48px 55px minmax(110px,1fr) 55px;gap:10px;min-height:64px;padding:0 20px 13px 9px}
.slider-actions{display:flex;flex-direction:column;align-items:center;gap:3px}
.slider-actions button{border:0;background:transparent;color:var(--muted);font-weight:700}
.slider-actions button:first-child{width:39px;height:39px;border:3px solid currentColor;border-radius:50%;display:grid;place-items:center;padding-left:4px;font-size:.75rem}
.expression-row.is-selected .slider-actions button{color:#fff}.expression-row.is-selected .slider-actions button:last-child{font-size:1.25rem}
.slider-limit{display:flex!important;flex-direction:column;gap:0!important;text-align:center}.slider-limit span{font:400 .52rem var(--mono);text-transform:uppercase;color:var(--muted)}
.slider-limit input{width:55px!important;text-align:center;font-size:.82rem!important;border:0!important}
.slider-row>input[type=range]{height:28px!important;cursor:ew-resize}
.workspace.panel-collapsed{grid-template-columns:58px 1fr}
.workspace.panel-collapsed .expression-panel>*:not(.workspace-title){display:none}
.workspace.panel-collapsed .workspace-title{height:100%;min-height:100%;padding:10px 7px;display:flex;align-items:flex-start;justify-content:center}
.workspace.panel-collapsed .workspace-title>.page-icon,.workspace.panel-collapsed .workspace-title>div:not(.history-controls),.workspace.panel-collapsed .history-controls>button:not([data-panel-toggle]){display:none!important}
.workspace.panel-collapsed .history-controls{margin:0}.workspace.panel-collapsed [data-panel-toggle]{font-size:1.25rem;padding:8px}
@media(max-width:680px){.workspace.panel-collapsed{grid-template-columns:1fr}.workspace.panel-collapsed .expression-panel{height:58px;min-height:58px}.slider-row{grid-template-columns:45px 48px 1fr 48px;padding-right:10px}.slider-limit input{width:48px!important}}

.save-graph-dialog{width:min(520px,calc(100vw - 30px));padding:0;border:1px solid var(--ink);background:var(--white);color:var(--ink);box-shadow:12px 12px 0 var(--yellow)}.save-graph-dialog::backdrop{background:rgba(23,32,34,.55);backdrop-filter:blur(3px)}.save-graph-dialog form{position:relative;padding:34px}.save-graph-dialog h2{font-size:2rem;margin:0 0 12px}.save-graph-dialog p{color:var(--muted);font-size:.9rem}.save-graph-dialog label{display:block;font-weight:700;font-size:.78rem;margin:25px 0}.save-graph-dialog input{display:block;width:100%;margin-top:7px;padding:13px;border:1px solid var(--ink);background:var(--paper);color:var(--ink)}.save-graph-dialog form>div{display:flex;justify-content:flex-end;gap:9px}.save-graph-dialog small{display:block;margin-top:18px;color:var(--muted);font-size:.66rem}.dialog-close{position:absolute;right:13px;top:10px;border:0;background:transparent;color:var(--muted);font-size:1.5rem}

/* Full-width docked math keyboard */
.workspace{position:relative;grid-template-rows:minmax(0,1fr) auto}
.workspace>.expression-panel,.workspace>.canvas-wrap{min-height:0;overflow:hidden}.workspace .expression-list{min-height:0}
.dock-keypad{position:relative;z-index:35;grid-column:1/-1;grid-row:2;left:auto;right:auto;bottom:auto;padding:10px clamp(16px,3vw,54px) 13px;background:#efede7;border-top:1px solid #c8c5bd;box-shadow:0 -5px 18px rgba(23,32,34,.12)}
.dock-keypad .keypad-tabs{max-width:1650px;margin:0 auto 9px;align-items:center}
.dock-keypad .keypad-tabs>span{margin-left:auto;color:var(--muted);font:400 .62rem var(--mono);text-transform:uppercase;letter-spacing:.08em}
.dock-keypad .keypad-tabs button:last-child{margin-left:12px;font-size:1rem}
.dock-main{max-width:1650px;margin:auto;display:grid;grid-template-columns:1.25fr 1fr .52fr;gap:clamp(18px,3vw,52px)}
.key-group{display:grid;gap:7px}.symbol-keys,.number-keys{grid-template-columns:repeat(4,minmax(48px,1fr))}.action-keys{grid-template-columns:repeat(2,minmax(64px,1fr))}
.key-group button,.dock-alt button{height:50px;border:1px solid #d2cfc8;background:#fffdf8;color:var(--ink);border-radius:3px;font:500 1.06rem var(--mono);box-shadow:0 2px 2px rgba(23,32,34,.09);transition:background .12s,border-color .12s,transform .08s}
.number-keys button{background:linear-gradient(#e4e4e4,#d2d2d2);font-family:Georgia,serif;font-size:1.25rem}
.key-group button:hover,.dock-alt button:hover{border-color:var(--blue);background:#fff;transform:translateY(-1px)}
.key-group button:active,.dock-alt button:active{transform:translateY(1px);box-shadow:none}
.key-group button:disabled{opacity:.42;cursor:not-allowed}.wide-key{grid-column:1/-1}.enter-key{background:#3478dd!important;border-color:#3478dd!important;color:#fff!important;font-size:1.35rem!important}
.dock-alt{max-width:1250px;margin:auto;grid-template-columns:repeat(8,minmax(70px,1fr));gap:7px}
.keypad-launcher{position:absolute;z-index:34;left:12px;bottom:12px;min-height:48px;padding:0 15px;border:1px solid var(--line);border-radius:4px;background:var(--white);color:var(--ink);box-shadow:0 2px 9px rgba(23,32,34,.14);display:flex;align-items:center;gap:10px;font-size:.75rem;font-weight:700}
.keypad-launcher[hidden]{display:none!important}
@media(max-width:900px){.dock-main{grid-template-columns:1.2fr 1fr}.action-keys{grid-column:1/-1;grid-template-columns:repeat(6,1fr)}.action-keys .wide-key{grid-column:auto}.dock-alt{grid-template-columns:repeat(6,minmax(50px,1fr))}}
@media(max-width:680px){.workspace>.dock-keypad{display:block;position:fixed;max-height:62vh;overflow:auto;padding:8px;z-index:70}.dock-main{grid-template-columns:1fr;gap:10px}.symbol-keys,.number-keys{grid-template-columns:repeat(4,1fr)}.action-keys{grid-column:auto;grid-template-columns:repeat(5,1fr)}.action-keys .wide-key{grid-column:auto}.key-group button,.dock-alt button{height:45px;font-size:.85rem}.dock-alt{grid-template-columns:repeat(5,1fr)}.keypad-launcher{position:fixed;z-index:69}.dock-keypad .keypad-tabs>span{display:none}}

/* Student programs and curriculum */
.pathway-strip{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--ink)}.pathway-strip a{padding:45px clamp(20px,4vw,65px);border-right:1px solid var(--ink)}.pathway-strip a:last-child{border:0}.pathway-strip span,.course-index{font:500 .7rem var(--mono);color:var(--red)}.pathway-strip h2{font-size:2rem;margin:22px 0 10px}.pathway-strip p{color:var(--muted);margin:0}.curriculum-section.alt,.alt{background:var(--paper-2)}
.course-rail{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--ink)}.course-rail a{padding:24px;min-height:180px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);display:flex;flex-direction:column}.course-rail a:nth-child(4n){border-right:0}.course-rail span{font:500 .7rem var(--mono);color:var(--red)}.course-rail b{font-size:1.15rem;margin-top:auto}.course-rail small{color:var(--muted)}
.compact-course-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--ink);border-top:1px solid var(--ink)}.compact-course-grid a{min-height:190px;padding:24px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);display:flex;flex-direction:column}.compact-course-grid a>span{font:500 .75rem var(--mono);color:var(--red)}.compact-course-grid b{font-size:1.1rem;margin:24px 0 8px}.compact-course-grid small{color:var(--muted);line-height:1.5}
.program-layout{display:grid;grid-template-columns:250px 1fr;gap:65px;max-width:1450px;margin:auto}.program-layout>aside{position:sticky;top:110px;align-self:start;display:flex;flex-direction:column;border-top:4px solid var(--red)}.program-layout>aside h2{font-size:1rem;padding:20px 0 12px;margin:0}.program-layout>aside a{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:13px 0;font-size:.85rem}.program-courses{border-top:1px solid var(--ink)}.program-courses>a{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding:35px 10px;border-bottom:1px solid var(--ink)}.program-courses h2{font-size:2rem;margin:8px 0}.program-courses p{color:var(--muted);margin-bottom:14px}.unit-preview{display:flex;flex-wrap:wrap;gap:7px}.unit-preview span{border:1px solid var(--line);padding:5px 8px;font:400 .65rem var(--mono);color:var(--muted)}.program-courses>a>b{font-size:.8rem}
.course-hero{min-height:620px;padding:90px clamp(20px,8vw,140px);display:grid;grid-template-columns:1fr auto;align-items:center;gap:70px;border-bottom:1px solid var(--ink)}.course-hero>div:first-child{max-width:900px}.course-hero h1{margin:18px 0}.course-hero p{font-size:1.2rem;color:var(--muted);max-width:700px}.course-emblem{width:220px;height:220px;border:1px solid var(--ink);background:var(--yellow);box-shadow:14px 14px 0 var(--red);display:grid;place-items:center;font:500 5rem Georgia;color:#172022;transform:rotate(3deg)}
.course-dashboard{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}.course-dashboard>div{padding:30px;text-align:center;border-right:1px solid color-mix(in srgb,var(--paper) 25%,transparent)}.course-dashboard b{display:block;font:500 2rem var(--mono);color:var(--yellow)}.course-dashboard span{font-size:.75rem;color:var(--muted)}
.syllabus{max-width:1300px;margin:auto}.syllabus-list{border-top:1px solid var(--ink)}.syllabus-list article{display:grid;grid-template-columns:1fr auto;gap:25px;align-items:center;padding:30px 10px;border-bottom:1px solid var(--ink)}.syllabus-list h3{font-size:1.35rem;margin:0 0 6px}.syllabus-list p{color:var(--muted);font-size:.88rem;margin:0}.syllabus-list article>div:last-child{display:flex;gap:7px}.syllabus-list a{border:1px solid var(--ink);padding:8px 12px;font-size:.75rem;font-weight:700}.study-tools{display:grid;grid-template-columns:repeat(3,1fr);background:var(--red);color:#fff}.study-tools a{padding:50px;border-right:1px solid rgba(255,255,255,.35)}.study-tools span{font:500 .68rem var(--mono);text-transform:uppercase}.study-tools h3{font-size:1.8rem;margin:20px 0 40px}.study-tools b{font-size:.8rem}

/* Practice and exam modes */
.practice-app{min-height:calc(100vh - 76px);background:var(--paper-2)}.practice-top{height:64px;padding:0 24px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;background:var(--ink);color:var(--paper);font:500 .72rem var(--mono)}.practice-top>div{text-align:center}.practice-top>button{justify-self:end;border:1px solid rgba(255,255,255,.25);background:transparent;color:var(--paper);padding:8px 12px}.practice-top>button span{margin-right:10px;color:var(--yellow)}.progress-track{height:4px;margin-top:6px;background:rgba(255,255,255,.16)}.progress-track i{display:block;width:10%;height:100%;background:var(--red);transition:width .25s}
.practice-body{max-width:1500px;margin:auto;display:grid;grid-template-columns:270px minmax(0,760px) 230px;gap:35px;padding:55px 30px}.practice-config{border-top:5px solid var(--red)}.practice-config .page-icon{margin:25px 0}.practice-config h1{font-size:2rem;margin:12px 0}.practice-config>p{color:var(--muted);font-size:.88rem}.practice-config fieldset{border:0;padding:0;margin:25px 0}.practice-config legend{font:500 .65rem var(--mono);text-transform:uppercase;margin-bottom:8px}.practice-config fieldset button{display:block;width:100%;text-align:left;border:1px solid var(--line);border-bottom:0;background:var(--white);color:var(--ink);padding:10px}.practice-config fieldset button:last-child{border-bottom:1px solid var(--line)}.practice-config fieldset button.active{background:var(--ink);color:var(--paper)}.exam-switch{display:grid;grid-template-columns:auto 1fr;gap:0 8px;font-weight:700}.exam-switch small{grid-column:2;color:var(--muted);font-weight:400}.session-score{display:grid;grid-template-columns:1fr 1fr;margin-top:25px;border:1px solid var(--ink)}.session-score span{padding:12px;font-size:.65rem;text-transform:uppercase}.session-score span:first-child{border-right:1px solid var(--ink)}.session-score b{display:block;font:500 1.5rem var(--mono);margin-top:4px}
.question-card{background:var(--white);border:1px solid var(--ink);box-shadow:10px 10px 0 var(--yellow);padding:clamp(25px,4vw,55px);align-self:start}.question-meta{display:flex;justify-content:space-between;font:500 .65rem var(--mono);text-transform:uppercase;color:var(--muted)}.question-card>h2{font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.35;margin:45px 0}.answer-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.answer-options button{min-height:58px;text-align:left;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:12px 16px;font-weight:600}.answer-options button:hover,.answer-options button.selected{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}.answer-options button.correct{background:#e0f4e9;border-color:var(--green)}.answer-options button.incorrect{background:#fbe1df;border-color:var(--red)}.free-answer span{display:block;font:500 .65rem var(--mono);text-transform:uppercase}.free-answer input{width:100%;padding:16px;border:1px solid var(--ink);background:var(--paper);color:var(--ink);font:500 1.2rem var(--mono)}.question-actions{display:flex;justify-content:space-between;gap:15px;margin-top:35px}.hint-box,.feedback-box{margin-top:25px;padding:20px;border-left:4px solid var(--blue);background:var(--paper-2)}.feedback-box.correct{border-color:var(--green);background:#e8f5ed}.feedback-box.incorrect,.feedback-box.error{border-color:var(--red);background:#fbe9e7}.feedback-box p,.hint-box p{margin:7px 0}.feedback-box small{font-weight:700}.practice-tools{display:flex;flex-direction:column;align-self:start;border-top:5px solid var(--blue)}.practice-tools>.kicker{padding:20px 0 10px}.practice-tools>a,.practice-tools>button{display:flex;justify-content:space-between;padding:12px 0;border:0;border-top:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;font-size:.82rem}.practice-tip{margin-top:25px;padding:18px;background:var(--yellow);color:#172022}.practice-tip p{font-size:.78rem;margin:7px 0 0}
.exam-method-intro{padding-bottom:45px}.exam-method{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.exam-method article{padding:40px;border-right:1px solid var(--ink)}.exam-method span{font:500 .7rem var(--mono);color:var(--red)}.exam-method h3{font-size:1.7rem;margin:25px 0 10px}.exam-method p{color:var(--muted);font-size:.9rem}

/* Formula library, planner, progress */
.formula-library{max-width:1500px;margin:auto;padding:70px 30px 130px}.formula-search{position:sticky;top:76px;z-index:10;background:var(--paper);padding:18px 0;border-bottom:1px solid var(--ink)}.formula-search>input{width:100%;border:0;background:transparent;color:var(--ink);font-size:1.35rem;padding:12px;outline:0}.formula-search>div{display:flex;gap:7px;flex-wrap:wrap}.formula-search button{border:1px solid var(--line);background:var(--white);color:var(--ink);padding:6px 10px;font-size:.7rem}.formula-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--ink);border-top:1px solid var(--ink);margin-top:35px}.formula-grid article{min-height:310px;padding:26px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);display:flex;flex-direction:column}.formula-grid article>span{font:500 .65rem var(--mono);color:var(--red);text-transform:uppercase}.formula-grid h3{font-size:1.4rem;margin:20px 0}.formula-grid article>div{min-height:70px;display:grid;place-items:center;background:var(--paper-2);padding:15px;font-size:1.15rem;overflow:auto}.formula-grid p{font-size:.84rem;color:var(--muted);margin-top:18px}.formula-grid a{font-size:.76rem;font-weight:700;margin-top:auto}
.planner-shell{max-width:1250px;margin:80px auto 140px;padding:0 25px;display:grid;grid-template-columns:420px 1fr;gap:55px}.planner-form{background:var(--white);border:1px solid var(--ink);padding:28px;align-self:start}.planner-form>label{display:block;font-size:.78rem;font-weight:700;margin-bottom:18px}.planner-form input:not([type=checkbox]),.planner-form select{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}.planner-form fieldset{border:0;padding:0;margin:25px 0}.planner-form legend{font-weight:700;font-size:.78rem;margin-bottom:10px}.planner-form fieldset label{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);padding:6px 8px;margin:3px;font-size:.7rem}.planner-result{border-top:5px solid var(--red);padding-top:25px}.planner-result h2{font-size:2.4rem;margin:12px 0}.planner-result>p{color:var(--muted)}.plan-list{list-style:none;padding:0;border-top:1px solid var(--ink);max-height:600px;overflow:auto}.plan-list li{display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:15px;padding:14px 5px;border-bottom:1px solid var(--line)}.plan-list li>span{font:500 .65rem var(--mono);color:var(--red)}.plan-list li div{display:flex;flex-direction:column}.plan-list small{color:var(--muted)}.plan-list label{font-size:.7rem}
.progress-dashboard{max-width:1350px;margin:70px auto 140px;padding:0 25px;display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.metric-card{background:var(--ink);color:var(--paper);padding:24px}.metric-card span{font-size:.72rem;color:var(--muted)}.metric-card b{display:block;font:500 2.5rem var(--mono);color:var(--yellow);margin-top:14px}.progress-topics{grid-column:1/4;border:1px solid var(--ink);padding:30px}.progress-topics h2{font-size:2rem}.progress-topics>div{display:grid;grid-template-columns:150px 1fr 60px;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line);text-transform:capitalize;font-size:.8rem}.progress-topics i{height:8px;background:var(--paper-2)}.progress-topics i b{display:block;height:100%;background:var(--green)}.progress-dashboard>aside{border-top:5px solid var(--red);padding:25px;background:var(--paper-2)}.progress-dashboard>aside h2{font-size:1.5rem}.progress-dashboard>aside p{font-size:.85rem;color:var(--muted)}.progress-dashboard>aside button{border:0;background:transparent;color:var(--muted);margin-top:20px;font-size:.7rem;text-decoration:underline}

@media(max-width:1050px){.course-rail{grid-template-columns:repeat(2,1fr)}.course-rail a:nth-child(2n){border-right:0}.compact-course-grid,.formula-grid{grid-template-columns:repeat(2,1fr)}.program-layout{grid-template-columns:1fr}.program-layout>aside{position:static;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--ink)}.program-layout>aside .kicker{display:none}.program-layout>aside a{padding:10px;border-right:1px solid var(--line)}.course-emblem{display:none}.course-hero{grid-template-columns:1fr}.practice-body{grid-template-columns:220px 1fr}.practice-tools{grid-column:2}.exam-method{grid-template-columns:repeat(2,1fr)}.planner-shell{grid-template-columns:350px 1fr}.progress-dashboard{grid-template-columns:repeat(2,1fr)}.progress-topics{grid-column:1/3}}
@media(max-width:680px){.pathway-strip,.course-dashboard,.study-tools,.exam-method{grid-template-columns:1fr}.pathway-strip a,.study-tools a,.exam-method article{border-right:0;border-bottom:1px solid var(--ink)}.course-rail,.compact-course-grid,.formula-grid{grid-template-columns:1fr}.course-rail a{border-right:0}.program-layout{padding:60px 18px}.program-layout>aside{grid-template-columns:1fr 1fr}.program-courses>a{grid-template-columns:35px 1fr}.program-courses>a>b{grid-column:2}.course-hero{padding:70px 20px}.course-hero h1{font-size:3.5rem}.course-dashboard{grid-template-columns:1fr 1fr}.syllabus-list article{grid-template-columns:35px 1fr}.syllabus-list article>div:last-child{grid-column:2}.practice-top{grid-template-columns:auto 1fr auto;padding:0 10px}.practice-body{display:block;padding:25px 14px}.practice-config{margin-bottom:25px}.practice-config .page-icon{display:none}.practice-config fieldset{display:flex}.practice-config fieldset button{text-align:center;border:1px solid var(--line)}.practice-tools{margin-top:35px}.question-card{padding:25px 18px}.answer-options{grid-template-columns:1fr}.question-actions{flex-direction:column-reverse}.formula-library{padding:40px 14px 90px}.formula-search{top:66px}.planner-shell{grid-template-columns:1fr;margin:45px auto 90px;padding:0 14px}.progress-dashboard{grid-template-columns:1fr;margin-top:40px}.progress-topics{grid-column:1}.progress-topics>div{grid-template-columns:100px 1fr 45px}}

.home-programs{padding-top:85px}.home-programs>.section-intro{display:block;margin-bottom:48px}.home-programs>.section-intro>div{max-width:850px}.home-programs>.section-intro p{max-width:720px;margin:24px 0 16px;color:var(--muted);font-size:1.02rem}.home-programs>.section-intro .text-link{display:inline-block;font-size:.84rem}.pathway-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0 clamp(20px,5vw,80px) 24px;border:0}.home-programs>.pathway-strip{padding:0}.pathway-strip>a{position:relative;isolation:isolate;min-height:340px;padding:30px;border:1px solid #172022!important;color:#172022;display:flex;flex-direction:column;overflow:hidden;box-shadow:6px 6px 0 var(--path-shadow);background:var(--path-bg);transition:transform .18s ease,box-shadow .18s ease}.pathway-strip>a:nth-of-type(1){--path-bg:#c9e5d3;--path-shadow:#3b8c6e}.pathway-strip>a:nth-of-type(2){--path-bg:#f2aaa4;--path-shadow:#e8493f}.pathway-strip>a:nth-of-type(3){--path-bg:#b9d5ef;--path-shadow:#2c6fbb}.pathway-strip>a:before{content:"";position:absolute;width:190px;height:190px;border:1px solid rgba(23,32,34,.16);border-radius:50%;right:-70px;top:-75px;z-index:-1}.pathway-strip>a:hover,.pathway-strip>a:focus-visible{transform:translate(-3px,-3px);box-shadow:10px 10px 0 var(--path-shadow);outline:0}.pathway-symbol{width:62px;height:62px;display:grid;place-items:center;border:1px solid #172022;background:rgba(255,253,247,.65);font:600 1.4rem Georgia,serif}.pathway-strip h2,.pathway-strip h3{font-size:clamp(1.75rem,2.5vw,2.6rem);margin:34px 0 13px}.pathway-strip p{color:rgba(23,32,34,.75);font-size:.94rem;line-height:1.65;margin:0}.pathway-strip>a>b{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:auto;padding-top:28px;font-size:.78rem}.pathway-strip>a>b span{font:600 1.3rem var(--font);color:inherit;transition:transform .18s}.pathway-strip>a:hover>b span{transform:translateX(5px)}.pathway-strip-wide{padding-top:70px;padding-bottom:70px;background:var(--paper-2);border-bottom:1px solid var(--line)}
.home-study-links{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.home-study-links a{position:relative;min-height:112px;padding:22px 22px 19px;border:1px solid var(--line);background:var(--white);display:flex;flex-direction:column;transition:transform .18s,border-color .18s}.home-study-links a:before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:5px;background:var(--study-color)}.home-study-links a:nth-child(1){--study-color:var(--green)}.home-study-links a:nth-child(2){--study-color:var(--blue)}.home-study-links a:nth-child(3){--study-color:var(--yellow)}.home-study-links a:nth-child(4){--study-color:var(--red)}.home-study-links a:hover,.home-study-links a:focus-visible{transform:translateY(-3px);border-color:var(--ink);outline:0}.home-study-links span{font-size:.75rem;color:var(--muted);margin-top:6px}.exam-inline-actions{display:flex;gap:10px}.inline-solver .button-outline{border-color:var(--paper);color:var(--paper)}
.tools-section>.section-intro{display:block;margin-bottom:48px}.tools-section>.section-intro>div{max-width:800px}.tools-section>.section-intro h2{margin-top:0}.tools-section>.section-intro p{max-width:680px;margin:24px 0 0;color:var(--muted);font-size:1.02rem}.tools-section .tool-feature>b{margin-top:auto;padding-top:32px}.tools-section .tool-symbol,.tools-section .mini-graph{margin-top:0}
.understand-visual picture,.editorial-image picture{display:block}.understand-visual picture img,.editorial-image picture img{width:100%}
@media(max-width:900px){.pathway-strip{grid-template-columns:1fr}.pathway-strip>a{min-height:270px}.home-study-links{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.pathway-strip{padding:0 20px 24px}.home-programs>.pathway-strip{padding:0}.pathway-strip>a{min-height:250px;border:1px solid #172022}.pathway-strip-wide{padding-top:50px;padding-bottom:50px}.home-study-links{grid-template-columns:1fr;margin-top:14px}.home-study-links a{border:1px solid var(--line);min-height:105px}.exam-inline-actions{flex-direction:column;width:100%}}
.footer-top{grid-template-columns:2fr repeat(5,1fr)}
@media(max-width:1050px){.footer-top{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.footer-top{grid-template-columns:repeat(2,1fr)}}

/* Remove decorative eyebrow labels site-wide. */
.eyebrow,.kicker{display:none!important}

/* Structured AI solution presentation */
.solution-usage{display:block;color:var(--muted);font:400 .67rem var(--mono);margin:-18px 0 22px}.solution-body{font-size:1.04rem;line-height:1.72}.solution-body>h2{font-size:1.55rem;letter-spacing:-.025em;margin:38px 0 15px;padding-top:28px;border-top:1px solid var(--line)}.solution-body>h2:first-child{margin-top:0;padding-top:0;border-top:0}.solution-body>h2[data-solution-section="final-answer"]{background:color-mix(in srgb,var(--yellow) 34%,var(--white));border:1px solid var(--ink);padding:20px 24px;margin-bottom:0}.solution-body>h2[data-solution-section="final-answer"]+p,.solution-body>h2[data-solution-section="final-answer"]+.solution-equation{background:color-mix(in srgb,var(--yellow) 20%,var(--white));border:1px solid var(--ink);border-top:0;margin-top:0;padding:22px 24px}.solution-body h3{font-size:1.12rem;letter-spacing:-.01em;margin:25px 0 9px}.solution-body p{margin:0 0 17px}.solution-body ol,.solution-body ul{padding-left:28px;margin:12px 0 22px}.solution-body li{padding:4px 0 4px 7px}.solution-equation{margin:16px 0 23px;padding:18px 22px;background:var(--paper-2);border-left:4px solid var(--blue);overflow-x:auto;text-align:center}.solution-equation mjx-container{margin:0!important;min-width:max-content}.solution-body code{font:400 .88em var(--mono);background:var(--paper-2);padding:2px 5px}.solution-body blockquote{font-size:1.15rem;margin:20px 0;padding:14px 20px}
@media(max-width:680px){.solution-body>h2{font-size:1.35rem}.solution-equation{margin-left:-8px;margin-right:-8px;padding:15px 10px}.solution-body>h2[data-solution-section="final-answer"]{padding:17px}}

/* Local student profile */
.profile-hero{padding-bottom:90px}.profile-shell{max-width:1350px;margin:0 auto;padding:75px 28px 130px}.profile-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}.profile-heading h2{font-size:clamp(2rem,4vw,3.5rem);margin:0 0 9px}.profile-heading p{margin:0;color:var(--muted)}.saved-graph-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--ink);border-top:1px solid var(--ink)}.saved-graph-card,.profile-empty{min-height:300px;padding:25px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);background:var(--white);display:flex;flex-direction:column}.saved-graph-card>div:first-child{display:flex;justify-content:space-between;gap:15px;align-items:start}.saved-graph-card h3,.profile-empty h3{font-size:1.35rem;margin:0}.saved-graph-card time{max-width:135px;text-align:right;color:var(--muted);font:400 .6rem/1.5 var(--mono)}.saved-graph-preview{display:grid;gap:6px;margin:25px 0;padding:15px;background:var(--paper-2);min-height:100px}.saved-graph-preview code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:400 .78rem var(--mono)}.saved-graph-card>p{color:var(--muted);font-size:.75rem}.saved-graph-card>div:last-child{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}.saved-graph-card>div:last-child button{border:0;background:transparent;color:var(--muted);font-size:.72rem;text-decoration:underline}.profile-empty{grid-column:1/-1;align-items:center;justify-content:center;text-align:center}.profile-empty p{color:var(--muted)}.profile-empty a{font-weight:700;border-bottom:1px solid var(--ink)}.progress-heading{margin-top:90px}.profile-metrics{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}.profile-metrics article{padding:27px;border-right:1px solid rgba(255,255,255,.2)}.profile-metrics span{font-size:.72rem;color:#a6b1b2}.profile-metrics b{display:block;margin-top:12px;color:var(--yellow);font:500 2.25rem var(--mono)}.profile-storage-note{color:var(--muted);font-size:.72rem;margin-top:18px}
@media(max-width:900px){.saved-graph-grid{grid-template-columns:repeat(2,1fr)}.profile-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.profile-shell{padding:50px 14px 90px}.profile-heading{align-items:stretch;flex-direction:column}.saved-graph-grid{grid-template-columns:1fr}.saved-graph-card{min-height:270px}.profile-metrics{grid-template-columns:1fr 1fr}.save-graph-dialog form{padding:28px 20px}.save-graph-dialog form>div{align-items:stretch;flex-direction:column}}

/* Complete AP preparation suite */
.ap-hero{min-height:650px;padding:90px clamp(24px,7vw,120px);display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:7vw;align-items:center;border-bottom:1px solid var(--ink)}.ap-hero>div{max-width:900px}.ap-hero h1{font-size:clamp(3.3rem,7vw,7rem);margin:0 0 28px}.ap-hero>div>p{max-width:750px;font-size:1.2rem;color:var(--muted)}.ap-hero aside{padding:28px;border:1px solid var(--ink);background:var(--yellow);color:#172022;box-shadow:9px 9px 0 var(--red)}.ap-hero aside b{font-size:1.2rem}.ap-hero aside p{font-size:.88rem;margin:15px 0}.ap-hero aside a{font-size:.74rem;font-weight:700;border-bottom:1px solid #172022}
.ap-start-grid{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}.ap-start-grid article{min-height:245px;padding:34px;border-right:1px solid rgba(255,255,255,.22)}.ap-start-grid span{font:500 .7rem var(--mono);color:var(--yellow)}.ap-start-grid h2{font-size:1.65rem;margin:45px 0 12px}.ap-start-grid p{color:#aab3b4;font-size:.88rem}
.ap-course-search{display:flex;align-items:center;gap:20px;padding:16px 0;margin-bottom:50px;border-bottom:1px solid var(--ink);font-size:.78rem;font-weight:700}.ap-course-search input{flex:1;border:0;background:transparent;color:var(--ink);font-size:1.05rem;outline:0}.ap-track{margin-bottom:65px}.ap-track>header{display:flex;justify-content:space-between;align-items:end;border-bottom:4px solid var(--ink);padding-bottom:12px}.ap-track>header h3{font-size:1.7rem;margin:0}.ap-track>header span{color:var(--muted);font-size:.72rem}.ap-track>div{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--ink)}.ap-track>div>a{min-height:365px;padding:27px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);display:flex;flex-direction:column;background:var(--white)}.ap-track>div>a[hidden]{display:none}.ap-badge{width:47px;height:47px;display:grid;place-items:center;background:var(--red);color:#fff;font:700 .82rem var(--mono)}.ap-track h3{font-size:1.55rem;margin:32px 0 12px}.ap-track p{color:var(--muted);font-size:.86rem}.ap-track ul{padding:0;list-style:none;margin:15px 0}.ap-track li{padding:5px 0;border-top:1px solid var(--line);font-size:.72rem}.ap-track a>b{margin-top:auto;font-size:.78rem}
.ap-time-plans{display:grid;grid-template-columns:1.35fr repeat(3,1fr);background:var(--red);color:#fff}.ap-time-plans>div,.ap-time-plans article{padding:45px;border-right:1px solid rgba(255,255,255,.3)}.ap-time-plans h2{font-size:2.4rem}.ap-time-plans p{font-size:.87rem;color:rgba(255,255,255,.78)}.ap-time-plans article>b{display:block;font-size:1.4rem;margin-bottom:35px}.ap-method-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--ink);border-top:1px solid var(--ink)}.ap-method-grid article{min-height:210px;padding:27px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.ap-method-grid h3{font-size:1.35rem}.ap-method-grid p{color:var(--muted);font-size:.87rem}
.ap-course-hero{min-height:620px;padding:80px clamp(24px,8vw,135px);display:grid;grid-template-columns:1fr auto;align-items:center;gap:70px;border-bottom:1px solid var(--ink)}.ap-course-hero>div:first-child{max-width:920px}.ap-course-hero h1{margin:0 0 25px}.ap-course-hero p{max-width:760px;color:var(--muted);font-size:1.17rem}.ap-course-mark{width:210px;height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--yellow);border:1px solid var(--ink);box-shadow:13px 13px 0 var(--red);font:700 4rem var(--mono);transform:rotate(2deg)}.ap-course-mark span{font-size:1.5rem}.ap-course-mark small{font-size:.62rem;text-transform:uppercase}.ap-subnav{position:sticky;top:76px;z-index:30;display:flex;justify-content:center;gap:0;background:var(--white);border-bottom:1px solid var(--ink)}.ap-subnav a{padding:15px 20px;border-right:1px solid var(--line);font-size:.74rem;font-weight:700}.ap-subnav a:hover{background:var(--yellow)}
.ap-exam-snapshot{display:grid;grid-template-columns:1.5fr repeat(2,1fr);background:var(--ink);color:var(--paper)}.ap-exam-snapshot>div,.ap-exam-snapshot article{padding:42px;border-right:1px solid rgba(255,255,255,.2)}.ap-exam-snapshot h2{font-size:2.2rem}.ap-exam-snapshot p{color:#abb5b5;font-size:.88rem}.ap-exam-snapshot a{font-size:.72rem;color:var(--yellow);border-bottom:1px solid var(--yellow)}.ap-exam-snapshot article span{font:500 .65rem var(--mono);color:var(--yellow)}.ap-exam-snapshot article h3{font-size:1.45rem;margin:32px 0 10px}
.ap-unit-list{border-top:1px solid var(--ink);margin-bottom:30px}.ap-unit-list article{display:grid;grid-template-columns:45px minmax(0,1fr) 100px auto;gap:23px;align-items:center;padding:25px 8px;border-bottom:1px solid var(--ink)}.ap-unit-list article>span{font:500 .68rem var(--mono);color:var(--red)}.ap-unit-list h3,.ap-unit-list h2{font-size:1.25rem;margin:0 0 5px}.ap-unit-list p{margin:0;color:var(--muted);font-size:.83rem}.ap-unit-list article>b{text-align:right;font:500 .7rem var(--mono)}.unit-actions{display:flex;gap:6px}.unit-actions a{padding:7px 11px;border:1px solid var(--ink);font-size:.68rem;font-weight:700;white-space:nowrap}.ap-unit-list.detailed article{align-items:start;padding:38px 8px}.ap-unit-list.detailed ul{font-size:.8rem;color:var(--muted)}
.ap-diagnostic-section{padding:90px clamp(24px,8vw,135px);display:grid;grid-template-columns:330px minmax(0,780px);justify-content:center;gap:80px;background:var(--paper-2);border-block:1px solid var(--ink)}.ap-diagnostic-section>div:first-child h2{font-size:2.8rem}.ap-diagnostic-section>div:first-child p,.ap-diagnostic-section>div:first-child li{color:var(--muted);font-size:.86rem}.ap-quiz{background:var(--white);border:1px solid var(--ink);box-shadow:10px 10px 0 var(--yellow);padding:35px}.ap-quiz.large{max-width:850px;margin:auto}.ap-quiz-progress{display:flex;align-items:center;gap:18px;font:500 .66rem var(--mono);color:var(--muted)}.ap-quiz-progress i{height:5px;background:var(--paper-2);flex:1}.ap-quiz-progress i b{display:block;height:100%;background:var(--red);transition:width .25s}.ap-quiz [data-ap-question]>h3{font-size:1.45rem;line-height:1.35;margin:40px 0 25px}.ap-answer-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.ap-answer-options label{min-height:57px;padding:12px;border:1px solid var(--line);display:flex;align-items:center;gap:10px;background:var(--paper)}.ap-answer-options label:has(input:checked){border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}.ap-answer-options label.correct{background:#e1f2e7;border-color:var(--green)}.ap-answer-options label.incorrect{background:#f8e1df;border-color:var(--red)}.ap-quiz-feedback{margin-top:20px;padding:18px;border-left:4px solid var(--blue);background:var(--paper-2)}.ap-quiz-feedback.correct{border-color:var(--green)}.ap-quiz-feedback.incorrect{border-color:var(--red)}.ap-quiz-feedback p{margin:6px 0 0}.ap-quiz-actions{display:flex;justify-content:flex-end;margin-top:22px}.ap-quiz-result{text-align:center;padding:45px 10px}.ap-quiz-result strong{display:block;font:500 4rem var(--mono);color:var(--red)}.ap-quiz-result h3{margin:10px!important}.ap-quiz-result p{color:var(--muted)}
.ap-skill-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--ink);border-top:1px solid var(--ink)}.ap-skill-grid article{min-height:150px;padding:25px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.ap-skill-grid span{font:500 .65rem var(--mono);color:var(--red)}.ap-skill-grid p{font-weight:700;margin:25px 0 0}.ap-priority-box{margin:36px 0 0;padding:28px 32px;background:var(--yellow);color:#172022;border:1px solid var(--ink)}.ap-priority-box h3{font-size:1.7rem}.ap-priority-box ol{columns:2;gap:50px}.ap-priority-box li{padding:8px 20px 8px 5px;break-inside:avoid}.ap-resource-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--ink);border-top:1px solid var(--ink)}.ap-resource-grid a{min-height:300px;padding:26px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);display:flex;flex-direction:column}.ap-resource-grid span{font:500 .67rem var(--mono);color:var(--red)}.ap-resource-grid h3{font-size:1.4rem;margin:35px 0 12px}.ap-resource-grid p{font-size:.85rem;color:var(--muted)}.ap-resource-grid b{font-size:.75rem;margin-top:auto}.ap-integrity{padding:65px clamp(24px,8vw,135px);display:flex;justify-content:space-between;align-items:center;gap:50px;background:var(--red);color:#fff}.ap-integrity div{max-width:770px}.ap-integrity h2{font-size:2.4rem}.ap-integrity p{color:rgba(255,255,255,.8)}.ap-related>div{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--ink)}.ap-related a{padding:25px;border-right:1px solid var(--ink)}.ap-related a:last-child{border:0}.ap-related p{font-size:.83rem;color:var(--muted)}
.ap-resource-hero{padding:85px max(24px,calc((100vw - 1100px)/2));border-bottom:1px solid var(--ink)}.ap-resource-hero h1{margin:25px 0}.ap-resource-hero p{max-width:800px;color:var(--muted);font-size:1.15rem}.ap-practice-page{max-width:1100px;margin:auto}.ap-after-practice{margin:80px auto 0;max-width:800px;border-top:4px solid var(--red);padding-top:30px}.ap-after-practice li{padding:7px}.ap-strategy-grid{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--ink)}.ap-strategy-grid article{min-height:300px;padding:35px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.ap-strategy-grid span{font:500 .68rem var(--mono);color:var(--red)}.ap-strategy-grid h2{font-size:2rem;margin:45px 0 14px}.ap-strategy-grid p{color:var(--muted)}.ap-section-table{margin-top:70px}.ap-section-table>div{display:grid;grid-template-columns:180px 280px 1fr;gap:30px;padding:25px 0;border-top:1px solid var(--ink)}.ap-section-table span{font:400 .75rem var(--mono)}.ap-section-table p{color:var(--muted);font-size:.83rem}.ap-week-plan{max-width:1250px;margin:auto;display:grid;grid-template-columns:1fr 260px;gap:50px}.week-grid{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid var(--ink);border-top:1px solid var(--ink)}.week-grid article{min-height:260px;padding:27px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);display:flex;flex-direction:column}.week-grid span{font:500 .67rem var(--mono);color:var(--red)}.week-grid h2{font-size:1.45rem;margin:30px 0 10px}.week-grid p{font-size:.85rem;color:var(--muted)}.week-grid label{margin-top:auto;font-size:.72rem}.ap-week-plan>aside{align-self:start;position:sticky;top:145px;padding:25px;background:var(--yellow);color:#172022}.ap-week-plan li{padding:6px}.ap-reference-grid{display:grid;grid-template-columns:repeat(2,1fr);border-left:1px solid var(--ink);border-top:1px solid var(--ink);margin-top:55px}.ap-reference-grid article{padding:32px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.ap-reference-grid>article>span{font:500 .65rem var(--mono);color:var(--red)}.ap-reference-grid h2{font-size:1.5rem;margin:25px 0 10px}.ap-reference-grid p,.ap-reference-grid li{font-size:.83rem;color:var(--muted)}.ap-official-note{padding:35px clamp(24px,8vw,135px);display:flex;justify-content:space-between;gap:40px;background:var(--paper-2);border-top:1px solid var(--ink);font-size:.74rem}.ap-official-note p{margin:0;color:var(--muted)}.ap-official-note a{font-weight:700}
@media(max-width:1050px){.ap-hero{grid-template-columns:1fr}.ap-hero aside{max-width:650px}.ap-track>div{grid-template-columns:repeat(2,1fr)}.ap-time-plans{grid-template-columns:1fr 1fr}.ap-method-grid,.ap-skill-grid{grid-template-columns:repeat(2,1fr)}.ap-course-mark{display:none}.ap-course-hero{grid-template-columns:1fr}.ap-exam-snapshot{grid-template-columns:1fr 1fr}.ap-exam-snapshot>div{grid-column:1/-1}.ap-unit-list article{grid-template-columns:40px 1fr 90px}.unit-actions{grid-column:2}.ap-diagnostic-section{grid-template-columns:1fr}.ap-resource-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.ap-hero,.ap-course-hero{min-height:auto;padding:65px 20px}.ap-hero h1,.ap-course-hero h1{font-size:3.35rem}.ap-start-grid,.ap-track>div,.ap-time-plans,.ap-method-grid,.ap-exam-snapshot,.ap-skill-grid,.ap-resource-grid,.ap-related>div,.ap-strategy-grid,.week-grid,.ap-reference-grid{grid-template-columns:1fr}.ap-start-grid article{min-height:200px}.ap-track>div>a{min-height:310px}.ap-subnav{top:66px;justify-content:flex-start;overflow:auto}.ap-subnav a{white-space:nowrap}.ap-exam-snapshot>div{grid-column:auto}.ap-unit-list article{grid-template-columns:28px 1fr}.ap-unit-list article>b,.unit-actions{grid-column:2;text-align:left}.ap-diagnostic-section{padding:60px 14px;gap:35px}.ap-quiz{padding:22px 16px}.ap-answer-options{grid-template-columns:1fr}.ap-priority-box ol{columns:1}.ap-integrity{align-items:flex-start;flex-direction:column}.ap-section-table>div{grid-template-columns:1fr;gap:7px}.ap-week-plan{grid-template-columns:1fr}.ap-week-plan>aside{position:static}.ap-official-note{flex-direction:column}.ap-resource-hero{padding:65px 20px}.ap-resource-hero h1{font-size:3.2rem}}

.ap-course-final-cta{align-items:center}.ap-course-final-cta>div{max-width:820px}.ap-course-final-cta h2{font-size:clamp(2.4rem,5vw,5.4rem);margin:0 0 18px}.ap-course-final-cta p{max-width:700px;margin:0;color:rgba(255,255,255,.82);font-size:1.03rem}.ap-course-final-cta .button{flex:0 0 auto;text-align:center}
@media(max-width:680px){.ap-course-final-cta{align-items:stretch;flex-direction:column}.ap-course-final-cta .button{width:100%}}

/* Google-only account controls */
.header-actions form{display:flex;margin:0}.auth-google{min-height:42px;padding:0 16px;font-size:.78rem}.profile-hero a{text-decoration:underline;text-underline-offset:3px}.auth-error-page .button{margin-top:30px}
.account-menu{position:relative;align-self:center}.account-trigger{height:46px;max-width:190px;padding:4px 11px 4px 5px;display:grid;grid-template-columns:36px minmax(0,1fr) 15px;align-items:center;gap:9px;border:1px solid var(--line);border-radius:4px;background:var(--white);color:var(--ink);text-align:left;transition:border-color .18s,background .18s,box-shadow .18s}.account-trigger:hover,.account-trigger:focus-visible,.account-menu.open .account-trigger{border-color:var(--ink);background:var(--paper-2);outline:0}.account-menu.open .account-trigger{box-shadow:0 3px 0 var(--yellow)}.account-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:var(--red);color:#fff;font:500 .92rem var(--mono)}.account-avatar img{width:100%;height:100%;object-fit:cover}.account-copy{min-width:0;display:flex;flex-direction:column;line-height:1.1}.account-copy small{margin-bottom:3px;color:var(--muted);font:500 .57rem var(--mono);text-transform:uppercase;letter-spacing:.04em}.account-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem}.account-chevron{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;transition:transform .18s}.account-menu.open .account-chevron{transform:rotate(180deg)}
.account-menu-panel{position:absolute;z-index:95;right:0;top:calc(100% + 10px);width:290px;padding:8px;display:none;background:var(--white);border:1px solid var(--ink);box-shadow:9px 9px 0 var(--yellow)}.account-menu.open .account-menu-panel{display:block;animation:account-menu-in .16s ease-out}@keyframes account-menu-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}.account-identity{padding:12px 12px 14px;border-bottom:1px solid var(--line);line-height:1.35}.account-identity b,.account-identity span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-identity b{font-size:.78rem}.account-identity span{margin-top:2px;color:var(--muted);font-size:.64rem}.account-menu-panel>a,.account-menu-panel form button{width:100%;min-height:61px;padding:8px;display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left}.account-menu-panel>a:hover,.account-menu-panel>a[aria-current=page],.account-menu-panel form button:hover,.account-menu-panel>a:focus-visible,.account-menu-panel form button:focus-visible{background:var(--paper-2);outline:0}.account-menu-panel i{width:38px;height:38px;display:grid;place-items:center;background:var(--ink);color:var(--paper);font:500 .61rem var(--mono);font-style:normal}.account-menu-panel a:nth-of-type(2) i{background:var(--red);color:#fff}.account-menu-panel form button{border-bottom:0}.account-menu-panel form button i{background:var(--paper-2);color:var(--muted)}.account-menu-panel b,.account-menu-panel small{display:block}.account-menu-panel b{font-size:.74rem}.account-menu-panel small{margin-top:1px;color:var(--muted);font-size:.58rem;font-weight:400}.mobile-account-logout{margin:0}.mobile-account-logout .button{background:transparent;color:var(--muted);border-color:var(--line)}
@media(max-width:1260px){.account-trigger{width:46px;padding:4px;display:flex}.account-copy,.account-chevron{display:none}.header-actions{gap:7px}.header-solve{padding-inline:17px}}
@media(max-width:1050px){.auth-google,.account-menu{display:none}.mobile-account-logout{display:block!important}}

/* Course-specific practice and test workspaces */
.course-study-tools{grid-template-columns:repeat(4,1fr)}.ap-resource-grid{grid-template-columns:repeat(5,1fr)}
.assessment-page{min-height:calc(100vh - 76px);background:var(--paper-2)}.assessment-header{height:62px;position:sticky;top:76px;z-index:35;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(18px,4vw,55px);background:var(--ink);color:var(--paper);border-bottom:1px solid var(--ink);font-size:.75rem;font-weight:700}.assessment-header>a{justify-self:start}.assessment-header>span{justify-self:end;font:500 .76rem var(--mono);color:var(--yellow)}.assessment-mode-switch{display:flex;gap:0}.assessment-mode-switch a,.assessment-mode-switch button{padding:8px 18px;border:1px solid rgba(255,255,255,.3);background:none;color:inherit;font:inherit;font-weight:700;cursor:pointer}.assessment-mode-switch a[aria-current=page],.assessment-mode-switch button[aria-pressed=true]{background:var(--yellow);border-color:var(--yellow);color:#172022}
.assessment-layout{max-width:1550px;margin:auto;display:grid;grid-template-columns:360px minmax(0,1fr);gap:0;min-height:780px}.assessment-config{padding:55px 34px 80px;background:var(--paper);border-right:1px solid var(--ink)}.assessment-icon{width:64px;height:64px;display:grid;place-items:center;background:var(--yellow);color:#172022;border:1px solid var(--ink);font:700 1.15rem var(--mono)}.assessment-config>p:first-of-type{margin:27px 0 7px;color:var(--red);font:500 .68rem var(--mono);text-transform:uppercase}.assessment-config h1{font-size:2.2rem;margin:0 0 14px}.assessment-config>p{color:var(--muted);font-size:.82rem}.assessment-config fieldset{border:0;padding:0;margin:32px 0}.assessment-config legend,.assessment-select{display:block;margin-bottom:10px;font:500 .68rem var(--mono);text-transform:uppercase;color:var(--muted)}.assessment-config fieldset button{width:100%;display:block;padding:10px 12px;border:1px solid var(--line);border-bottom:0;background:var(--white);color:var(--ink);text-align:left;font-size:.73rem}.assessment-config fieldset button:last-child{border-bottom:1px solid var(--line)}.assessment-config fieldset button.active{background:var(--ink);color:var(--paper)}.assessment-config [data-unit-picker]{max-height:285px;overflow:auto;border-bottom:1px solid var(--line)}.assessment-config [data-unit-picker] legend{position:sticky;top:0;background:var(--paper);padding-bottom:8px;z-index:2}.assessment-select{margin:35px 0 25px}.assessment-select select{width:100%;display:block;margin-top:9px;padding:13px;background:var(--white);color:var(--ink);border:1px solid var(--ink);font:600 .82rem var(--font)}.assessment-rules{padding:21px;background:var(--yellow);color:#172022;margin:25px 0}.assessment-rules b{font-size:.82rem}.assessment-rules ul{padding-left:20px;margin:11px 0 0}.assessment-rules li{font-size:.73rem;padding:3px}.assessment-config>.button{width:100%;margin-top:15px}
.assessment-workspace{min-width:0;padding:clamp(45px,7vw,100px);background:var(--white);border-right:1px solid var(--ink)}.assessment-welcome{max-width:820px}.assessment-welcome>span,.assessment-results>span{font:500 .68rem var(--mono);text-transform:uppercase;color:var(--red)}.assessment-welcome h2{font-size:clamp(2.8rem,5vw,5.3rem);margin:25px 0}.assessment-welcome p{max-width:650px;color:var(--muted);font-size:1.05rem}.assessment-loading,.assessment-error{text-align:center;max-width:700px;margin:80px auto}.assessment-loading i{width:58px;height:58px;border:5px solid var(--line);border-top-color:var(--red);border-radius:50%;display:block;margin:0 auto 30px;animation:assessment-spin .8s linear infinite}.assessment-loading h2,.assessment-error h2{font-size:2.2rem}.assessment-loading p,.assessment-error p{color:var(--muted)}@keyframes assessment-spin{to{transform:rotate(360deg)}}
.assessment-question{max-width:900px;margin:auto}.assessment-progress{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;color:var(--muted);font:500 .66rem var(--mono)}.assessment-progress i{height:5px;background:var(--paper-2)}.assessment-progress i b{display:block;width:0;height:100%;background:var(--red);transition:width .25s}.assessment-question>h2{font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.35;letter-spacing:-.025em;margin:55px 0 35px}.assessment-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.assessment-options button{min-height:76px;padding:16px 20px;border:1px solid var(--line);background:var(--paper);color:var(--ink);text-align:left;font-weight:600}.assessment-options button:hover,.assessment-options button.selected{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}.assessment-options button.correct{background:#dff1e5;border-color:var(--green)}.assessment-options button.incorrect{background:#f8dfdc;border-color:var(--red)}.assessment-hint-trigger{margin-top:22px;border:0;background:transparent;color:var(--muted);font-size:.77rem;text-decoration:underline}.assessment-hint,.assessment-feedback{margin-top:22px;padding:18px 22px;background:var(--paper-2);border-left:4px solid var(--blue)}.assessment-feedback.correct{border-color:var(--green)}.assessment-feedback.incorrect{border-color:var(--red)}.assessment-hint p,.assessment-feedback p{margin:7px 0 0}.assessment-actions{display:flex;justify-content:flex-end;margin-top:32px}
.assessment-options button mjx-container{display:inline-block!important;margin:0!important;font-size:1.12em!important;vertical-align:middle}.assessment-feedback mjx-container,.assessment-review mjx-container{margin:.15em 0!important}.assessment-review b mjx-container{display:inline-block!important;margin:0 .08em!important}
.assessment-results{max-width:900px;margin:auto}.assessment-results>strong{display:block;margin:20px 0 5px;color:var(--red);font:600 clamp(3.5rem,7vw,7rem)/1 var(--mono)}.assessment-results>h2{font-size:2.5rem;margin:25px 0 12px}.assessment-results>p{color:var(--muted)}.assessment-results [data-result-units]{display:grid;grid-template-columns:repeat(2,1fr);margin:35px 0;border-left:1px solid var(--ink);border-top:1px solid var(--ink)}.assessment-results [data-result-units]>div{display:flex;justify-content:space-between;padding:14px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);font-size:.78rem}.assessment-review{border-top:4px solid var(--ink);margin-top:45px}.assessment-review details{padding:20px 4px;border-bottom:1px solid var(--line)}.assessment-review summary{cursor:pointer;font-weight:700}.assessment-review p{font-size:.86rem;color:var(--muted)}.assessment-review b{font-size:.84rem}.assessment-result-actions{display:flex;gap:10px;margin-top:35px}
@media(max-width:1050px){.course-study-tools{grid-template-columns:repeat(2,1fr)}.ap-resource-grid{grid-template-columns:repeat(3,1fr)}.assessment-layout{grid-template-columns:290px 1fr}.assessment-config{padding:40px 24px}.assessment-workspace{padding:55px 35px}}
@media(max-width:760px){.course-study-tools{grid-template-columns:1fr}.study-tools a{padding:36px 24px}.assessment-header{top:66px;grid-template-columns:1fr auto;padding:0 12px}.assessment-header>a{display:none}.assessment-header>span{font-size:.65rem}.assessment-mode-switch{justify-self:start}.assessment-mode-switch a,.assessment-mode-switch button{padding:7px 13px}.assessment-layout{display:block}.assessment-config{border-right:0;border-bottom:1px solid var(--ink);padding:35px 18px}.assessment-config [data-unit-picker]{max-height:230px}.assessment-workspace{padding:48px 16px;min-height:600px;border-right:0}.assessment-welcome h2{font-size:2.8rem}.assessment-options{grid-template-columns:1fr}.assessment-progress{grid-template-columns:auto 1fr}.assessment-progress>span:last-child{grid-column:1/-1}.assessment-actions .button,.assessment-result-actions .button{width:100%}.assessment-result-actions{flex-direction:column}.assessment-results [data-result-units]{grid-template-columns:1fr}.ap-resource-grid{grid-template-columns:1fr}}

/* Flat exam and practice panels: no decorative yellow offset border. */
.ap-quiz,.question-card{box-shadow:none}

[hidden]{display:none!important}
.ap-answer-review{margin-top:45px;text-align:left;border-top:4px solid var(--ink)}.ap-answer-review>h3{font-size:1.6rem;margin:28px 0 18px}.ap-answer-review details{padding:18px 4px;border-top:1px solid var(--line)}.ap-answer-review summary{cursor:pointer;font-weight:700}.ap-answer-review p{margin:12px 0 0;font-size:.86rem;text-align:left}.ap-answer-review .ap-review-prompt{color:var(--ink);font-weight:700}.ap-answer-review .ap-review-correct{color:var(--green);font-weight:700}
.ap-quiz code{display:inline-block;padding:2px 6px;background:var(--paper-2);border:1px solid var(--line);font:500 .86em var(--mono);letter-spacing:0}
.ap-resource-nav{display:flex;align-items:stretch;overflow-x:auto;border-bottom:1px solid var(--ink);background:var(--white)}.ap-resource-nav a{flex:1;min-width:max-content;padding:14px 20px;text-align:center;border-right:1px solid var(--line);font-size:.76rem;font-weight:700}.ap-resource-nav a:hover,.ap-resource-nav a[aria-current=page]{background:var(--ink);color:var(--paper)}

/* Dedicated scientific calculator */
.scientific-page{min-height:calc(100vh - 76px);padding:clamp(34px,5vw,72px) clamp(16px,4vw,64px) 100px;background:var(--paper-2)}
.scientific-intro{max-width:1500px;margin:0 auto 32px;display:flex;align-items:end;justify-content:space-between;gap:35px}
.scientific-intro h1{font-size:clamp(2.7rem,5vw,5.5rem);margin:0 0 15px}.scientific-intro p{max-width:820px;margin:0;color:var(--muted);font-size:1.05rem}.scientific-intro .button{flex:none}
.scientific-intro-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.calculator-model-picker{max-width:1500px;margin:0 auto 22px;display:grid;grid-template-columns:repeat(5,1fr);background:var(--white);border:1px solid var(--ink)}
.calculator-model-picker button{min-width:0;padding:17px 18px;text-align:left;border:0;border-right:1px solid var(--line);background:transparent;color:var(--ink)}.calculator-model-picker button:last-child{border-right:0}
.calculator-model-picker b,.calculator-model-picker span{display:block}.calculator-model-picker b{font-size:.78rem}.calculator-model-picker span{margin-top:3px;color:var(--muted);font-size:.63rem}
.calculator-model-picker button:hover{background:var(--paper)}.calculator-model-picker button.active{background:var(--ink);color:var(--paper)}.calculator-model-picker button.active span{color:color-mix(in srgb,var(--paper) 65%,transparent)}
.scientific-workbench{max-width:1500px;margin:auto;display:grid;grid-template-columns:minmax(600px,1fr) 330px;gap:30px;align-items:start}
.calculator-device{--calculator-columns:6;--calc-shell:#f8f7f2;--calc-edge:#172022;--calc-screen:#fff;--calc-screen-ink:#172022;--calc-key:#fff;--calc-key-ink:#172022;--calc-key-border:#cbc8c0;--calc-function:#e9eef4;--calc-accent:#2c6fbb;--calc-enter:#e8493f;overflow:hidden;border:1px solid var(--calc-edge);background:var(--calc-shell);color:var(--calc-key-ink);box-shadow:0 22px 60px rgba(23,32,34,.16)}
.calculator-device-head{min-height:62px;padding:11px 16px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid color-mix(in srgb,var(--calc-edge) 30%,transparent)}
.calculator-device-head strong,.calculator-device-head small{display:block}.calculator-device-head strong{font-size:.94rem;letter-spacing:-.02em}.calculator-device-head small{font-size:.61rem;opacity:.66}.calculator-status{display:flex;align-items:center;gap:7px;font:500 .65rem var(--mono)}
.calculator-status>span{display:grid;place-items:center;width:26px;height:26px;border:1px solid currentColor}.calculator-status button{min-height:32px;padding:0 11px;border:1px solid currentColor;background:transparent;color:inherit;font:inherit}
.scientific-screen{height:330px;display:flex;flex-direction:column;padding:0 18px 16px;background:var(--calc-screen);color:var(--calc-screen-ink);border-bottom:3px solid var(--calc-accent)}
.screen-toolbar{min-height:42px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid color-mix(in srgb,var(--calc-screen-ink) 15%,transparent);font:500 .61rem var(--mono);text-transform:uppercase;letter-spacing:.08em;opacity:.72}.screen-toolbar button{border:0;background:transparent;color:inherit;font:inherit;text-transform:uppercase}
.calculation-history{flex:1;min-height:0;overflow:auto;list-style:none;margin:0;padding:8px 0}.calculation-history:empty:before{content:"Your calculations will appear here";display:block;padding-top:22px;text-align:center;opacity:.38;font:400 .7rem var(--mono)}
.calculation-history li button{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:7px 4px;border:0;background:transparent;color:inherit;text-align:left}.calculation-history li button:hover{background:color-mix(in srgb,var(--calc-screen-ink) 7%,transparent)}
.calculation-history span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:400 .82rem var(--mono);opacity:.68}.calculation-history b{font:500 .92rem var(--mono)}
.calculator-entry{min-height:88px;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;border-top:1px solid color-mix(in srgb,var(--calc-screen-ink) 15%,transparent)}
.entry-expression{width:100%;overflow-x:auto;white-space:nowrap;text-align:right;font:500 clamp(1.25rem,2.7vw,2.05rem)/1.35 var(--mono)}.entry-expression.is-empty{opacity:.4}.entry-result{min-height:27px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 clamp(1rem,2.2vw,1.45rem) var(--mono);color:var(--calc-accent)}.entry-result.is-error{font-size:.78rem;color:#c2322b}
.calculator-caret{display:inline-block;width:2px;height:1.16em;vertical-align:-.16em;background:currentColor;animation:calculator-blink 1s step-end infinite}@keyframes calculator-blink{50%{opacity:0}}
.calculator-keypad{display:grid;grid-template-columns:repeat(var(--calculator-columns),minmax(48px,1fr));gap:7px;padding:14px;background:var(--calc-shell)}
.calculator-keypad button,.calculator-soft-menu button{min-width:0;height:48px;padding:3px;border:1px solid var(--calc-key-border);border-radius:3px;background:var(--calc-key);color:var(--calc-key-ink);font:600 .78rem var(--font);box-shadow:0 2px 0 color-mix(in srgb,var(--calc-edge) 24%,transparent);transition:transform .08s,filter .12s}
.calculator-keypad button:hover,.calculator-soft-menu button:hover{filter:brightness(.96);transform:translateY(-1px)}.calculator-keypad button:active,.calculator-soft-menu button:active{transform:translateY(2px);box-shadow:none}
.calculator-keypad button[data-tone=function]{background:var(--calc-function)}.calculator-keypad button[data-tone=operator]{font-size:1.05rem}.calculator-keypad button[data-tone=shift]{background:#f2c744;color:#172022}.calculator-keypad button[data-tone=alpha]{background:#78a68e;color:#fff}.calculator-keypad button[data-tone=clear]{background:#cf4a42;color:#fff}.calculator-keypad button[data-tone=delete]{background:#656d70;color:#fff}
.calculator-keypad button[data-tone=enter]{background:var(--calc-enter);border-color:var(--calc-enter);color:#fff}.calculator-keypad button[data-tone=nav],.calculator-keypad button[data-tone=soft]{background:var(--calc-accent);border-color:color-mix(in srgb,var(--calc-accent) 80%,#000);color:#fff}.calculator-keypad button.is-active{outline:3px solid color-mix(in srgb,#f2c744 70%,transparent)}
.calculator-soft-menu{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;padding:12px 14px;background:color-mix(in srgb,var(--calc-shell) 92%,#000);border-bottom:1px solid var(--calc-key-border)}.calculator-soft-menu button{height:38px;font-size:.68rem}
.calculator-device-foot{min-height:36px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid color-mix(in srgb,var(--calc-edge) 24%,transparent);font:400 .56rem var(--mono);opacity:.68}
.calculator-guide{background:var(--white);border-top:5px solid var(--red);padding:26px}.calculator-guide h2{font-size:1.75rem;margin:4px 0 13px}.calculator-guide>div>p{font-size:.83rem;color:var(--muted)}
.calculator-guide dl{margin:28px 0}.calculator-guide dl>div{padding:13px 0;border-top:1px solid var(--line)}.calculator-guide dt{font-weight:800;font-size:.78rem}.calculator-guide dd{margin:3px 0 0;color:var(--muted);font-size:.72rem;line-height:1.5}
.calculator-example-list{display:flex;flex-direction:column}.calculator-example-list>b{font:500 .65rem var(--mono);text-transform:uppercase;margin-bottom:7px}.calculator-example-list button{padding:9px 0;border:0;border-top:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;font:400 .72rem var(--mono)}.calculator-example-list button:hover{color:var(--red)}
.calculator-trademark-note{margin:25px 0 0!important;padding-top:15px;border-top:1px solid var(--line);color:var(--muted);font-size:.57rem!important;line-height:1.55}

/* The named presets borrow interaction conventions without copying branded artwork. */
.calculator-device[data-model=ti84]{--calc-shell:#20252c;--calc-edge:#0b0f13;--calc-screen:#c9d3bd;--calc-screen-ink:#172019;--calc-key:#4d535a;--calc-key-ink:#fff;--calc-key-border:#666e76;--calc-function:#30363d;--calc-accent:#3465a4;--calc-enter:#356a9f;max-width:720px;margin-inline:auto;border-radius:19px 19px 30px 30px;padding:13px}.calculator-device[data-model=ti84] .calculator-device-head{color:#fff}.calculator-device[data-model=ti84] .scientific-screen{border:7px solid #111820;border-radius:5px;height:285px}.calculator-device[data-model=ti84] .calculator-keypad button{height:43px;border-radius:7px;font-size:.7rem}.calculator-device[data-model=ti84] .calculator-device-foot{color:#fff}
.calculator-device[data-model=prime]{--calc-shell:#171b20;--calc-edge:#050708;--calc-screen:#f4f7f9;--calc-screen-ink:#15212b;--calc-key:#30363d;--calc-key-ink:#fff;--calc-key-border:#49515a;--calc-function:#20262c;--calc-accent:#3c86c8;--calc-enter:#e47b2b;max-width:780px;margin-inline:auto;border-radius:18px;padding:12px}.calculator-device[data-model=prime] .calculator-device-head,.calculator-device[data-model=prime] .calculator-device-foot{color:#fff}.calculator-device[data-model=prime] .scientific-screen{height:315px;border-radius:4px;border:5px solid #07090b}.calculator-device[data-model=prime] .calculator-keypad button{height:45px;border-radius:8px}
.calculator-device[data-model=cgc50]{--calc-shell:#f0f1f2;--calc-edge:#151719;--calc-screen:#f9fbff;--calc-screen-ink:#151c26;--calc-key:#33373b;--calc-key-ink:#fff;--calc-key-border:#4c5156;--calc-function:#1d2227;--calc-accent:#2c6fae;--calc-enter:#2f78b9;max-width:760px;margin-inline:auto;border-radius:12px 12px 25px 25px;padding:12px}.calculator-device[data-model=cgc50] .scientific-screen{height:300px;border:7px solid #24282c;border-radius:4px}.calculator-device[data-model=cgc50] .calculator-keypad button{height:44px;border-radius:8px}.calculator-device[data-model=cgc50] .calculator-device-foot{color:#172022}
.calculator-device[data-model=fx9860]{--calc-shell:#e7e7e3;--calc-edge:#303335;--calc-screen:#b9c4af;--calc-screen-ink:#172019;--calc-key:#3d4144;--calc-key-ink:#fff;--calc-key-border:#555a5e;--calc-function:#2d3134;--calc-accent:#59685d;--calc-enter:#476f94;max-width:750px;margin-inline:auto;border-radius:10px 10px 28px 28px;padding:12px}.calculator-device[data-model=fx9860] .scientific-screen{height:270px;border:8px solid #363a3c;border-radius:3px}.calculator-device[data-model=fx9860] .calculator-keypad button{height:43px;border-radius:6px}.calculator-device[data-model=fx9860] .calculator-device-head{color:#172022}

@media(max-width:1050px){.scientific-workbench{grid-template-columns:1fr}.calculator-guide{display:grid;grid-template-columns:1fr 1fr;gap:25px}.calculator-guide dl{margin:0}.calculator-trademark-note{grid-column:1/-1}.calculator-model-picker{overflow-x:auto;grid-template-columns:repeat(5,minmax(190px,1fr))}}
@media(max-width:700px){.scientific-page{padding-inline:10px}.scientific-intro{display:block;padding:0 8px}.scientific-intro .button{margin-top:22px}.scientific-screen{height:265px;padding-inline:10px}.calculator-keypad{gap:5px;padding:8px}.calculator-keypad button{height:43px;font-size:.65rem}.calculator-soft-menu{grid-template-columns:repeat(3,1fr);padding:8px}.calculator-guide{display:block}.calculator-model-picker{margin-inline:0}.calculator-device[data-model]{padding:6px;border-radius:9px}.calculator-device[data-model] .scientific-screen{height:245px}.calculator-device-foot{display:none}.calculator-device-head{padding-inline:9px}.calculator-device-head small{display:none}}

/* Remaining interactive calculator suite */
.utility-tool{min-height:calc(100vh - 76px);background:var(--paper-2);padding-bottom:90px}.utility-tool-header{padding:34px clamp(16px,4vw,64px) 0;background:var(--white);border-bottom:1px solid var(--ink)}.utility-tool-header>div{max-width:1450px;margin:auto;display:flex;align-items:end;justify-content:space-between;gap:30px}.utility-tool-header h1{font-size:clamp(2.4rem,4vw,4.6rem);margin:0}.utility-tool-header p{max-width:620px;margin:0 0 8px;color:var(--muted);text-align:right;font-size:.9rem}.tool-suite-nav{max-width:1450px;margin:30px auto 0;display:flex;gap:0;overflow:auto}.tool-suite-nav a{flex:none;padding:12px 18px;border:1px solid var(--line);border-bottom:0;border-right:0;font-size:.72rem;font-weight:700}.tool-suite-nav a:last-child{border-right:1px solid var(--line)}.tool-suite-nav a:after{display:none}.tool-suite-nav a[aria-current=page]{background:var(--ink);border-color:var(--ink);color:var(--paper)}

.four-calculator{width:min(610px,calc(100% - 28px));margin:55px auto;background:#22292c;border:1px solid #0d1112;border-radius:18px 18px 28px 28px;padding:18px;box-shadow:0 28px 70px rgba(23,32,34,.22);color:#fff}.four-screen{height:250px;padding:15px 18px;background:#d7dfcf;color:#172019;border:7px solid #101617;border-radius:7px;display:flex;flex-direction:column}.four-screen ol{flex:1;min-height:0;overflow:auto;margin:0;padding:0;list-style:none;font:400 .73rem/1.65 var(--mono);opacity:.65}.four-screen ol:empty:before{content:"Calculation history";opacity:.55}.four-screen>div{border-top:1px solid rgba(23,32,25,.18);min-height:80px;display:flex;flex-direction:column;align-items:flex-end;justify-content:center}.four-screen span{font:400 1rem var(--mono)}.four-screen strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;font:500 clamp(1.5rem,5vw,2.45rem) var(--mono)}.four-screen strong.error{font-size:.76rem;color:#b52c25}
.four-keypad{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding-top:18px}.four-keypad button{height:60px;border:1px solid #596164;border-radius:8px;background:#454d50;color:#fff;box-shadow:0 3px 0 #111719;font-weight:700}.four-keypad button[data-tone=number]{background:#f2f2ed;color:#172022}.four-keypad button[data-tone=operator]{background:#2c6fbb;border-color:#2c6fbb;font-size:1.25rem}.four-keypad button[data-tone=clear]{background:#e8493f;border-color:#e8493f}.four-keypad button[data-tone=enter]{background:#f2c744;border-color:#f2c744;color:#172022;font-size:1.3rem}.four-keypad button:active{transform:translateY(3px);box-shadow:none}.four-calculator>footer{height:34px;display:flex;align-items:end;justify-content:space-between;font:400 .59rem var(--mono);opacity:.65}.four-calculator>footer [data-four-memory]{display:grid;place-items:center;width:22px;height:22px;border:1px solid currentColor}.four-calculator>footer [data-four-memory][hidden]{display:none}

.notebook-app{max-width:1200px;margin:45px auto;padding:0 20px}.notebook-toolbar{min-height:58px;position:sticky;top:76px;z-index:20;display:flex;align-items:center;gap:7px;padding:8px;background:var(--ink);color:var(--paper)}.notebook-toolbar button{padding:9px 12px;border:1px solid rgba(255,255,255,.26);background:transparent;color:inherit;font-size:.7rem;font-weight:700}.notebook-toolbar button:first-child{background:var(--red);border-color:var(--red)}.notebook-toolbar span{margin-left:auto;padding-right:9px;font:400 .62rem var(--mono);color:#b7c0c0}.notebook-paper{min-height:680px;background-color:var(--white);background-image:linear-gradient(var(--line) 1px,transparent 1px);background-size:100% 35px;border:1px solid var(--ink);border-top:0;padding:45px clamp(16px,5vw,60px)}.notebook-empty{max-width:500px;margin:180px auto;text-align:center}.notebook-empty b{font-size:2rem}.notebook-empty p{color:var(--muted)}
.notebook-block{display:grid;grid-template-columns:55px 1fr;gap:15px;margin:0 0 24px;background:color-mix(in srgb,var(--white) 94%,transparent);border:1px solid var(--line)}.notebook-block-rail{display:flex;flex-direction:column;align-items:center;background:var(--paper-2);border-right:1px solid var(--line)}.notebook-block-rail span{padding:10px 0;font:500 .62rem var(--mono);color:var(--red)}.notebook-block-rail button{width:100%;height:30px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--muted);font-size:.67rem}.notebook-block>div:last-child{padding:14px}.notebook-block input,.notebook-block textarea{width:100%;border:0;background:transparent;color:var(--ink);outline:0}.notebook-block input{height:45px;font:500 1.1rem var(--mono)}.notebook-block textarea{min-height:110px;resize:vertical;line-height:1.75}.notebook-block output{display:block;min-height:42px;padding:10px 3px 0;border-top:1px solid var(--line);font:500 1.25rem var(--mono);color:var(--blue)}.notebook-block output.error{font-size:.72rem;color:var(--red)}.notebook-block.math{border-left:4px solid var(--blue)}.notebook-block.note{border-left:4px solid var(--yellow)}

.matrix-workspace{max-width:1280px;margin:45px auto;padding:0 20px}.matrix-inputs{display:grid;grid-template-columns:1fr 1fr;gap:20px}.matrix-card{background:var(--white);border:1px solid var(--ink);padding:25px}.matrix-card header{display:flex;align-items:center;gap:13px;margin-bottom:24px}.matrix-card h2{font-size:1.5rem;margin:0 auto 0 0}.matrix-card label{font-size:.64rem;font-weight:700}.matrix-card select{display:block;min-width:55px;margin-top:3px;padding:5px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}.matrix-grid{--matrix-columns:2;display:grid;grid-template-columns:repeat(var(--matrix-columns),minmax(55px,1fr));gap:8px;padding:13px;border-left:3px solid var(--ink);border-right:3px solid var(--ink)}.matrix-grid input{width:100%;min-width:0;height:50px;border:1px solid var(--line);background:var(--paper);color:var(--ink);text-align:center;font:500 .9rem var(--mono)}.matrix-grid input:focus{outline:2px solid var(--blue);border-color:var(--blue)}
.matrix-operations{display:flex;flex-wrap:wrap;gap:7px;margin:17px 0;align-items:end}.matrix-operations button{padding:10px 15px;border:1px solid var(--ink);background:var(--white);color:var(--ink);font-weight:700;font-size:.74rem}.matrix-operations button:hover,.matrix-operations button.active{background:var(--ink);color:var(--paper)}.matrix-parameter{display:grid;gap:4px;margin-left:auto;font-size:.68rem;font-weight:700}.matrix-parameter input{width:125px;min-height:37px;border:1px solid var(--ink);background:var(--white);padding:7px 10px;font:600 .78rem var(--mono)}.matrix-output{min-height:220px;display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px 35px;align-items:center;padding:30px;background:var(--ink);color:var(--paper)}.matrix-output h2{font-size:2rem;margin:0 0 8px}.matrix-output>div:first-child p,.matrix-output>p{font-size:.72rem;color:#aeb8b8}.matrix-output>[data-matrix-result]{min-width:0;max-width:100%;overflow-x:auto;padding-bottom:4px}.matrix-output>p{grid-column:2;margin:0}.matrix-output>p.error{color:#ff8d84}.matrix-output [data-matrix-result]>strong{font:500 3rem var(--mono);color:var(--yellow)}.matrix-result-set{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start}.matrix-result-item{display:grid;gap:8px}.matrix-result-item>strong{font:700 .75rem var(--mono);color:var(--yellow)}.matrix-result-grid{--matrix-columns:2;display:grid;grid-template-columns:repeat(var(--matrix-columns),minmax(128px,max-content));gap:8px;width:max-content;min-width:min-content;padding:10px 14px;border-left:3px solid var(--yellow);border-right:3px solid var(--yellow)}.matrix-result-grid span{min-width:0;padding:9px 12px;text-align:right;white-space:nowrap;background:rgba(255,255,255,.08);font:500 .8rem var(--mono);font-variant-numeric:tabular-nums}

.geometry-workspace{height:760px;max-width:1500px;margin:35px auto 0;padding:0 20px;display:grid;grid-template-columns:1fr 260px;grid-template-rows:auto 1fr}.visual-tool-bar{grid-column:1/-1;display:flex;gap:0;overflow:auto;background:var(--ink)}.visual-tool-bar button{flex:none;padding:12px 18px;border:0;border-right:1px solid rgba(255,255,255,.2);background:transparent;color:var(--paper);font-size:.72rem;font-weight:700}.visual-tool-bar button.active{background:var(--yellow);color:#172022}.visual-tool-bar button[data-geometry-delete]:not(:disabled){background:var(--red);color:#fff}.visual-tool-bar button:disabled{cursor:not-allowed;opacity:.38}.geometry-stage{position:relative;min-width:0;background:var(--white);border:1px solid var(--ink);border-top:0}.geometry-stage canvas{width:100%;height:100%;display:block;touch-action:none;outline:none}.geometry-stage canvas:focus-visible{box-shadow:inset 0 0 0 3px var(--blue)}.visual-zoom-controls{position:absolute;right:12px;top:12px;display:flex;flex-direction:column}.visual-zoom-controls button{width:40px;height:40px;border:1px solid var(--line);background:var(--white);color:var(--ink)}.geometry-inspector{padding:25px;background:var(--white);border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.geometry-inspector h2{font-size:1.6rem}.geometry-inspector>p{color:var(--muted);font-size:.78rem}.geometry-inspector dl>div{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-top:1px solid var(--line)}.geometry-inspector dt{font-size:.7rem;color:var(--muted)}.geometry-inspector dd{margin:0;text-align:right;font:500 .72rem var(--mono)}.geometry-inspector small{display:block;margin-top:25px;color:var(--muted);font-size:.62rem}

.surface-workspace{height:820px;max-width:1500px;margin:35px auto 0;padding:0 20px;display:grid;grid-template-columns:370px minmax(0,1fr)}.surface-panel{min-width:0;overflow-y:auto;padding:24px;background:var(--white);border:1px solid var(--ink)}.surface-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.surface-panel h2{font-size:1.8rem;margin:0}.surface-panel-heading button,.surface-add{padding:8px 11px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-size:.66rem;font-weight:700}.surface-expression-list{display:grid;gap:7px;margin:18px 0 10px}.surface-expression-row{display:grid;grid-template-columns:auto minmax(0,1fr) 32px 32px;align-items:center;border:1px solid var(--line);background:var(--paper)}.surface-expression-row.active{border-color:var(--blue);box-shadow:inset 3px 0 0 var(--blue)}.surface-expression-row>label{display:grid;place-items:center;align-self:stretch;padding:0 8px;font:500 .68rem var(--mono)}.surface-expression-row>label input{position:absolute;opacity:0;pointer-events:none}.surface-expression-row>label span{color:var(--ink)}.surface-expression-row>label input:not(:checked)+span{text-decoration:line-through;opacity:.45}.surface-expression-row input[type=text]{width:100%;min-width:0;padding:11px 6px;border:0;background:transparent;color:var(--ink);font:400 .7rem var(--mono);outline:0}.surface-expression-row input[type=color]{width:25px;height:25px;padding:0;border:1px solid var(--line);background:transparent}.surface-expression-row>button{align-self:stretch;border:0;border-left:1px solid var(--line);background:transparent;color:var(--muted);font-size:1rem}.surface-expression-row>button:hover:not(:disabled){background:var(--red);color:#fff}.surface-expression-row>button:disabled{opacity:.25}.surface-panel>label{display:block;margin:18px 0;font-size:.7rem;font-weight:700}.surface-panel input[type=range]{display:block;width:100%;margin:8px 0}.surface-panel label>span{display:block;margin-top:4px;color:var(--muted);font:400 .6rem var(--mono)}.surface-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:12px}.surface-presets button{padding:8px 4px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:.63rem}.surface-presets button:hover{border-color:var(--ink)}.surface-selects{display:grid;grid-template-columns:1fr 1fr;gap:8px}.surface-selects label{font-size:.66rem;font-weight:700}.surface-selects select{display:block;width:100%;margin-top:5px;padding:8px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}.surface-options{display:flex;flex-wrap:wrap;gap:8px 13px;margin-top:18px}.surface-options label{font-size:.64rem;font-weight:700}.surface-panel>p{margin-top:20px;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font:400 .59rem/1.6 var(--mono)}.surface-panel>p.error{color:var(--red)}.surface-stage{position:relative;min-width:0;border:1px solid var(--ink);border-left:0;background:var(--white);overflow:hidden}.surface-stage canvas{display:block;width:100%;height:100%;touch-action:none;outline:0;cursor:grab}.surface-stage canvas:active{cursor:grabbing}.surface-stage canvas:focus-visible{box-shadow:inset 0 0 0 3px var(--blue)}.surface-stage-actions{position:absolute;z-index:2;right:12px;top:12px;display:flex;flex-wrap:wrap;justify-content:flex-end;max-width:520px}.surface-stage-actions button{padding:8px 10px;border:1px solid var(--line);border-right:0;background:rgba(255,253,247,.92);color:var(--ink);font-size:.61rem;font-weight:700}.surface-stage-actions button:last-child{border-right:1px solid var(--line)}.surface-axis-key{position:absolute;left:15px;bottom:15px;display:flex;gap:5px}.surface-axis-key span{width:28px;height:28px;display:grid;place-items:center;color:#fff;font:500 .7rem var(--mono)}.surface-axis-key .x{background:#e8493f}.surface-axis-key .y{background:#3b8c6e}.surface-axis-key .z{background:#2c6fbb}.surface-hud{position:absolute;right:14px;bottom:15px;padding:6px 9px;background:rgba(255,253,247,.86);color:var(--muted);font:400 .58rem var(--mono)}
.surface-panel-heading button:disabled{cursor:not-allowed;opacity:.35}

@media(max-width:850px){.utility-tool-header>div{display:block}.utility-tool-header p{text-align:left;margin-top:12px}.matrix-inputs{grid-template-columns:1fr}.geometry-workspace{height:auto;grid-template-columns:1fr;grid-template-rows:auto 560px auto}.visual-tool-bar{grid-column:auto}.geometry-inspector{border-left:1px solid var(--ink)}.surface-workspace{height:auto;grid-template-columns:1fr}.surface-panel{border-bottom:0}.surface-stage{height:600px;border-left:1px solid var(--ink)}.matrix-output{grid-template-columns:1fr}.matrix-output>p{grid-column:1}.notebook-toolbar{top:66px;overflow:auto}.notebook-toolbar span{display:none}}
@media(max-width:560px){.utility-tool-header{padding-inline:12px}.tool-suite-nav a{padding:10px 13px}.four-calculator{padding:9px}.four-screen{height:210px}.four-keypad{gap:6px}.four-keypad button{height:52px}.notebook-app,.matrix-workspace,.geometry-workspace,.surface-workspace{padding-inline:8px}.notebook-paper{padding:25px 8px}.notebook-block{grid-template-columns:42px 1fr}.matrix-card{padding:16px 10px}.matrix-grid{gap:5px}.matrix-output{padding:23px 16px}.geometry-workspace{grid-template-rows:auto 480px auto}.surface-stage{height:500px}}

/* Site-wide search */
.search-trigger{width:42px;padding:0;display:grid;place-items:center}.search-trigger svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.mobile-search-link{display:none}.site-search-dialog{width:min(850px,calc(100vw - 32px));padding:0;border:1px solid var(--ink);background:var(--paper);color:var(--ink);box-shadow:14px 14px 0 var(--yellow)}.site-search-dialog::backdrop{background:rgba(13,20,22,.72);backdrop-filter:blur(5px)}.site-search-dialog-head{display:flex;justify-content:space-between;gap:30px;padding:34px 38px 25px;border-bottom:1px solid var(--line)}.site-search-dialog-head span{font:500 .68rem var(--mono);text-transform:uppercase;letter-spacing:.11em;color:var(--muted)}.site-search-dialog-head h2{font-size:clamp(1.7rem,4vw,3rem);margin:8px 0 0}.site-search-dialog-head button{align-self:flex-start;width:40px;height:40px;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:1.6rem;line-height:1}.site-search-dialog form{padding:28px 38px}.site-search-dialog label,.search-page-form label{display:block;margin-bottom:9px;font:600 .7rem var(--mono);letter-spacing:.05em}.site-search-dialog form>div,.search-page-form>div{display:flex;gap:10px}.site-search-dialog input,.search-page-form input{flex:1;min-width:0;border:1px solid var(--ink);background:var(--white);color:var(--ink);padding:16px 18px;outline:0}.site-search-dialog input:focus,.search-page-form input:focus{box-shadow:inset 0 0 0 2px var(--blue)}.site-search-quick{display:flex;flex-wrap:wrap;gap:10px 20px;padding:20px 38px 30px;border-top:1px solid var(--line);font-size:.78rem}.site-search-quick>span{width:100%;font:500 .65rem var(--mono);text-transform:uppercase;color:var(--muted)}.site-search-quick a{font-weight:700;border-bottom:1px solid var(--ink)}
.search-page{min-height:70vh;padding:clamp(60px,8vw,120px) clamp(20px,5vw,80px)}.search-page-head{max-width:1180px;margin:auto}.search-page-head>p{font:500 .72rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.search-page-head h1{max-width:950px;margin:10px 0 42px}.search-page-form{max-width:920px}.search-page-form input{font-size:1.02rem}.search-suggestions{display:flex;flex-wrap:wrap;gap:9px 20px;margin-top:20px;font-size:.76rem}.search-suggestions span{color:var(--muted)}.search-suggestions a{border-bottom:1px solid var(--line)}.search-results-head{max-width:1180px;margin:80px auto 25px;padding-bottom:20px;border-bottom:1px solid var(--ink);display:flex;justify-content:space-between;align-items:end;gap:30px}.search-results-head h2{font-size:clamp(1.8rem,3.2vw,3rem);margin:0}.search-results-head p{max-width:420px;margin:0;color:var(--muted);font-size:.82rem}.search-results{max-width:1180px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.search-result{min-height:285px;padding:27px;display:flex;flex-direction:column;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);background:var(--white)}.search-result:hover{background:var(--paper-2)}.search-result>span{font:500 .65rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--red)}.search-result h3{font-size:1.45rem;margin:26px 0 12px}.search-result p{color:var(--muted);font-size:.82rem}.search-result b{margin-top:auto;font-size:.76rem}.search-empty,.search-start{max-width:1180px;margin:75px auto 0;padding:45px;border:1px solid var(--ink);background:var(--white)}.search-empty h2,.search-start h2{font-size:clamp(2rem,4vw,4rem)}.search-empty p{max-width:780px;color:var(--muted)}.search-empty>div{display:flex;gap:10px}.search-start>div{display:grid;grid-template-columns:repeat(3,1fr);margin-top:40px;border-top:1px solid var(--line)}.search-start article{padding:25px 25px 0 0}.search-start article+article{padding-left:25px;border-left:1px solid var(--line)}.search-start p{color:var(--muted);font-size:.83rem}
@media(max-width:1050px){.mobile-search-link{display:block}.search-results{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.site-search-dialog{box-shadow:7px 7px 0 var(--yellow)}.site-search-dialog-head,.site-search-dialog form,.site-search-quick{padding-left:20px;padding-right:20px}.site-search-dialog form>div,.search-page-form>div{flex-direction:column}.search-page{padding:60px 18px}.search-page-head h1{font-size:3.2rem}.search-results-head{margin-top:55px;display:block}.search-results-head p{margin-top:12px}.search-results{grid-template-columns:1fr}.search-result{min-height:230px}.search-empty,.search-start{padding:28px 20px}.search-empty>div{flex-direction:column}.search-start>div{grid-template-columns:1fr}.search-start article+article{padding-left:0;border-left:0;border-top:1px solid var(--line)}}

/* Detailed formula reference */
.formula-hero .kicker{margin:0}.formula-library{max-width:1520px;padding-top:80px}.formula-intro{max-width:940px;margin-bottom:65px}.formula-intro h2{font-size:clamp(2.5rem,5vw,5.5rem);margin-bottom:25px}.formula-intro p{max-width:820px;color:var(--muted);font-size:1.12rem}.formula-use{margin-bottom:75px}.formula-use>h2{font-size:clamp(2rem,3.5vw,3.6rem);max-width:850px}.formula-use>div{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--ink)}.formula-use article{min-height:270px;padding:25px;border-right:1px solid var(--ink);background:var(--white)}.formula-use article:last-child{border-right:0}.formula-use article>span{width:45px;height:45px;display:grid;place-items:center;background:var(--yellow);color:#172022;font:600 1.3rem Georgia}.formula-use h3{margin:32px 0 12px;font-size:1.3rem}.formula-use p{color:var(--muted);font-size:.83rem}.formula-search{top:76px;padding:16px 0 13px;border-top:1px solid var(--ink);box-shadow:0 10px 18px color-mix(in srgb,var(--paper) 90%,transparent)}.formula-search-main{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label label" "field action";align-items:center;gap:10px 12px}.formula-search-main label{grid-area:label;font:600 .74rem/1.3 var(--mono);text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin:0}.formula-search-main input{grid-area:field;min-width:0;width:100%;height:52px;border:1px solid var(--ink);background:var(--white);color:var(--ink);padding:0 16px;font-size:1rem;line-height:normal}.formula-search-main button{grid-area:action;height:52px;padding:0 22px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-size:.9rem;font-weight:700;white-space:nowrap}.formula-filter-row{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-top:14px}.formula-category-filters{display:flex;gap:6px;overflow:auto;padding-bottom:2px}.formula-search .formula-category-filters button{flex:none;padding:9px 14px;font-size:.82rem;min-height:38px}.formula-category-filters button.active{background:var(--red);border-color:var(--red);color:#fff}.formula-category-filters small{opacity:.7;margin-left:3px}.formula-filter-row>label{font:600 .74rem/1.3 var(--mono);text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.formula-filter-row select{display:block;min-width:160px;margin-top:6px;height:38px;padding:0 10px;border:1px solid var(--ink);background:var(--white);color:var(--ink);font-size:.9rem}.formula-result-count{margin:12px 0 0;color:var(--muted);font-size:.82rem}.formula-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:35px}.formula-grid article{min-height:560px;padding:30px;background:var(--white)}.formula-grid article[hidden]{display:none}.formula-grid article>header{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:12px}.formula-grid article>header span{font:600 clamp(.85rem,1.25vw,1.1rem)/1.2 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--red)}.formula-grid article>header small{color:var(--muted);text-align:right;font-size:.68rem}.formula-grid h3{font-size:clamp(1.7rem,2.5vw,2.2rem);line-height:1.15;margin:26px 0 20px}.formula-grid .formula-equation{min-height:105px;background:var(--paper-2);font-size:1.05rem;padding:18px;overflow:auto}.formula-meaning{font-size:.9rem;color:var(--muted);margin:22px 0}.formula-grid details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:24px}.formula-grid summary{display:flex;justify-content:space-between;gap:15px;padding:13px 0;cursor:pointer;font-weight:700;font-size:.78rem}.formula-grid summary::marker{content:""}.formula-grid details[open] summary span{transform:rotate(45deg)}.formula-grid summary span{font-size:1.1rem;transition:transform .15s}.formula-details{padding:5px 0 15px}.formula-details h4{margin:15px 0 4px;font:600 .66rem var(--mono);text-transform:uppercase;letter-spacing:.06em}.formula-details p{margin:0;font-size:.8rem;color:var(--muted)}.formula-card-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:auto}.formula-card-actions button,.formula-card-actions a{border:0;border-bottom:1px solid var(--ink);padding:4px 0;background:transparent;color:var(--ink);font-size:.72rem;font-weight:700}.formula-card-actions button{border:1px solid var(--ink);padding:6px 10px}.formula-empty{margin-top:35px;padding:50px;background:var(--white);border:1px solid var(--ink)}.formula-empty h2{font-size:2.5rem}.formula-coverage{padding:100px clamp(20px,5vw,80px);background:var(--ink);color:var(--paper)}.formula-coverage>div:first-child{max-width:900px;margin-bottom:50px}.formula-coverage h2{font-size:clamp(2.5rem,5vw,5rem)}.formula-coverage>div:first-child p{max-width:800px;color:color-mix(in srgb,var(--paper) 70%,transparent)}.formula-coverage-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid rgba(255,255,255,.25);border-top:1px solid rgba(255,255,255,.25)}.formula-coverage-grid article{min-height:260px;padding:25px;border-right:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25)}.formula-coverage-grid article>span{font:500 .65rem var(--mono);color:var(--yellow);text-transform:uppercase}.formula-coverage-grid h3{font-size:1.5rem;margin:28px 0 10px}.formula-coverage-grid p{color:color-mix(in srgb,var(--paper) 65%,transparent);font-size:.8rem}.formula-coverage-grid article>div{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px}.formula-coverage-grid a{font-size:.7rem;font-weight:700;border-bottom:1px solid currentColor}.formula-study-guide{padding:100px clamp(20px,8vw,140px);display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}.formula-study-guide>div:first-child{position:sticky;top:120px}.formula-study-guide h2{font-size:clamp(2.5rem,5vw,5.5rem)}.formula-study-guide p{color:var(--muted);font-size:1.05rem}.formula-checklist{border-top:5px solid var(--red);background:var(--white);padding:35px}.formula-checklist h3{font-size:1.55rem}.formula-checklist ul{list-style:none;padding:0;margin:25px 0 0}.formula-checklist li{padding:15px 0;border-top:1px solid var(--line);font-size:.85rem}.formula-faq{max-width:1050px;margin:0 auto;padding:40px 20px 130px}.formula-faq h2{font-size:clamp(2.5rem,5vw,5rem)}.formula-faq details{border-top:1px solid var(--ink);padding:18px 0}.formula-faq details:last-child{border-bottom:1px solid var(--ink)}.formula-faq summary{cursor:pointer;font-weight:800;font-size:1.05rem}.formula-faq p{max-width:850px;color:var(--muted);margin:15px 0 0}
@media(max-width:1000px){.formula-use>div{grid-template-columns:repeat(2,1fr)}.formula-use article:nth-child(2){border-right:0}.formula-use article:nth-child(-n+2){border-bottom:1px solid var(--ink)}.formula-coverage-grid{grid-template-columns:repeat(2,1fr)}.formula-study-guide{grid-template-columns:1fr}.formula-study-guide>div:first-child{position:static}}
@media(max-width:680px){.formula-use>div,.formula-grid,.formula-coverage-grid{grid-template-columns:minmax(0,1fr)}.formula-grid article{min-width:0}.formula-use article{border-right:0;border-bottom:1px solid var(--ink)}.formula-use article:last-child{border-bottom:0}.formula-search{top:66px}.formula-filter-row{display:block}.formula-filter-row>label{display:block;margin-top:10px}.formula-filter-row select{width:100%}.formula-grid article{min-height:0;padding:22px 18px}.formula-grid article>header{display:block}.formula-grid article>header small{display:block;text-align:left;margin-top:5px}.formula-grid .formula-equation{font-size:.9rem}.formula-coverage,.formula-study-guide{padding-top:70px;padding-bottom:70px}.formula-coverage-grid article{min-height:220px}.formula-checklist{padding:27px 20px}}
.formula-grid .formula-card-actions{display:flex;align-items:center;place-items:initial;gap:12px;flex-wrap:wrap;margin-top:auto;min-height:0;padding:0;background:transparent;overflow:visible}
.site-search-dialog-title{font-size:clamp(1.7rem,4vw,3rem);font-weight:700;line-height:1.05;letter-spacing:-.045em;margin:8px 0 0}
@media(max-width:560px){.surface-stage-actions{left:8px;right:8px;top:8px;max-width:none}.surface-stage-actions button{flex:1;padding-inline:5px}.surface-hud{right:8px;bottom:8px}}

/* Advanced four-function, notebook, and geometry workspaces */
.four-workspace{width:min(1400px,calc(100% - 36px));margin:40px auto;display:grid;grid-template-columns:minmax(480px,620px) minmax(360px,1fr);gap:24px;align-items:start}.four-workspace>.four-calculator{width:100%;margin:0}.four-device-head{display:flex;justify-content:space-between;align-items:center;padding:2px 3px 14px;font:500 .68rem var(--mono);text-transform:uppercase;letter-spacing:.08em}.four-device-head>div{display:flex;gap:6px}.four-device-head span{min-width:28px;padding:4px 6px;border:1px solid #7d8587;text-align:center}.four-device-head span[hidden]{display:none}.four-workspace .four-screen{height:190px}.four-screen-meta{display:flex;justify-content:space-between;border-bottom:1px solid rgba(23,32,25,.16);padding-bottom:7px;font:500 .56rem var(--mono);text-transform:uppercase}.four-screen input{width:100%;margin-top:auto;border:0;background:transparent;color:#172019;text-align:right;outline:0;font:400 1.08rem var(--mono)}.four-screen strong{display:block;min-height:55px;text-align:right}.four-workspace .four-keypad{grid-template-columns:repeat(5,1fr)}.four-workspace .four-keypad button{height:54px}.four-workspace .four-calculator>footer{align-items:center}.four-workspace .four-calculator>footer label{display:flex;align-items:center;gap:7px}.four-workspace .four-calculator>footer select{padding:3px;border:1px solid #727a7d;background:#353d40;color:#fff}
.four-side-panel{min-height:720px;border:1px solid var(--ink);background:var(--white)}.four-tabs{display:grid;grid-template-columns:repeat(3,1fr);background:var(--ink)}.four-tabs button{padding:15px 8px;border:0;border-right:1px solid rgba(255,255,255,.2);background:transparent;color:var(--paper);font-weight:800}.four-tabs button.active{background:var(--yellow);color:#172022}.four-side-panel>section{padding:25px}.four-side-panel h2{font-size:1.65rem;margin:0 0 20px}.four-panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.four-panel-head>div{display:flex}.four-panel-head button{padding:6px 8px;border:1px solid var(--line);border-right:0;background:var(--paper);color:var(--ink);font-size:.56rem}.four-panel-head button:last-child{border-right:1px solid var(--line)}.four-tape{height:540px;overflow:auto;margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.four-tape li{display:grid;grid-template-columns:1fr 34px;border-bottom:1px solid var(--line)}.four-tape li>button:first-child{min-width:0;padding:13px;border:0;background:transparent;color:var(--ink);text-align:left}.four-tape li>button:first-child:hover{background:var(--paper-2)}.four-tape span,.four-tape strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.four-tape span{font:400 .62rem var(--mono);color:var(--muted)}.four-tape strong{margin-top:3px;font:600 .82rem var(--mono)}.four-tape [data-four-remove-history]{border:0;border-left:1px solid var(--line);background:transparent;color:var(--muted)}.four-tape [data-four-remove-history]:hover{background:var(--red);color:#fff}.four-empty-tape{margin-top:100px;color:var(--muted);text-align:center;font-size:.72rem}.four-side-panel>section>label,.four-utility-fields label{display:block;margin:12px 0;font-size:.67rem;font-weight:800}.four-side-panel select,.four-utility-fields input,.four-utility-fields select{display:block;width:100%;margin-top:5px;padding:10px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}.four-utility-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.four-side-panel>section>.button{width:100%;margin-top:14px}.four-side-panel output{display:block;margin-top:18px;padding:18px;background:var(--ink);color:var(--yellow);font:600 .76rem/1.6 var(--mono)}.four-money-result{margin-top:20px}.four-money-result>div{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--line)}.four-money-result dt{color:var(--muted)}.four-money-result dd{margin:0;font:600 .72rem var(--mono)}

.notebook-filebar{display:grid;grid-template-columns:minmax(210px,1fr) minmax(180px,1fr) repeat(5,auto);gap:7px;align-items:end;padding:12px;background:var(--white);border:1px solid var(--ink);border-top:0}.notebook-filebar label{font-size:.6rem;font-weight:800}.notebook-filebar input{display:block;width:100%;margin-top:4px;padding:8px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}.notebook-filebar button{height:36px;padding:0 10px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:.6rem;font-weight:700}.notebook-document-head{padding:45px clamp(18px,5vw,60px) 25px;background:var(--white);border:1px solid var(--ink);border-top:0;border-bottom:1px solid var(--line)}.notebook-document-head>input{width:100%;padding:0;border:0;background:transparent;color:var(--ink);outline:0;font:800 clamp(2rem,4vw,4rem)/1.15 var(--sans)}.notebook-document-head p{display:flex;flex-wrap:wrap;gap:16px;margin:15px 0 0;color:var(--muted);font:400 .58rem var(--mono)}.notebook-paper{border-top:0}.notebook-block-rail small{padding:2px 0 7px;color:var(--muted);font:500 .48rem var(--mono);text-transform:uppercase;writing-mode:vertical-rl}.notebook-block.heading{border-left:4px solid var(--red)}.notebook-block.heading input{height:64px;font:800 1.7rem var(--sans)}.notebook-block.checklist{border-left:4px solid #3b8c6e}.notebook-block.graph{border-left:4px solid #8b5cc7}.notebook-block.data{border-left:4px solid #d28b22}.notebook-block.collapsed>div:last-child{padding:10px 14px}.notebook-collapsed-preview{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.67rem}.notebook-checklist-preview{display:grid;gap:7px;padding-top:12px;border-top:1px solid var(--line)}.notebook-checklist-preview label{display:flex;align-items:flex-start;gap:8px;font-size:.7rem}.notebook-checklist-preview input:checked+*{opacity:.5}.notebook-graph-controls{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-size:.62rem}.notebook-graph-controls label{display:flex;align-items:center;gap:8px}.notebook-graph-controls input{width:34px;height:26px;padding:0}.notebook-graph-controls a{color:var(--blue);font-weight:800}.notebook-block canvas{display:block;width:100%;height:280px;border:1px solid var(--line);background:#fffdf7}.notebook-block.data output{font-size:.75rem;line-height:1.6}.notebook-toolbar{flex-wrap:wrap}.notebook-toolbar [data-notebook-more]{margin-left:auto}.notebook-toolbar span{margin-left:0}

.geometry-workspace{height:900px;grid-template-columns:minmax(0,1fr) 340px}.visual-tool-bar{flex-wrap:wrap;overflow:visible}.visual-tool-bar button{padding:11px 14px}.geometry-inspector{min-width:0;overflow-y:auto}.geometry-view-options{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;margin:18px 0}.geometry-view-options label{font-size:.63rem;font-weight:700}.geometry-view-options label:last-child{grid-column:1/-1}.geometry-view-options input[type=number]{width:70px;margin-left:8px;padding:4px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}.geometry-properties{margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}.geometry-properties h3,.geometry-object-list h3{font-size:.9rem;margin:0 0 12px}.geometry-properties>label{display:block;margin:10px 0;font-size:.62rem;font-weight:700}.geometry-properties>label input{display:block;width:100%;margin-top:4px}.geometry-properties input[type=text]{padding:8px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}.geometry-properties input[type=color]{height:34px;padding:2px;border:1px solid var(--line);background:var(--paper)}.geometry-transform-actions{display:grid;grid-template-columns:1fr 1fr;gap:5px}.geometry-transform-actions button,.geometry-export-actions button{padding:8px 5px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:.58rem;font-weight:700}.geometry-transform-actions button:hover,.geometry-export-actions button:hover{border-color:var(--ink)}.geometry-object-list{margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}.geometry-object-list>div{max-height:220px;overflow:auto;border-top:1px solid var(--line)}.geometry-object-list button{width:100%;display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;padding:8px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left}.geometry-object-list button.active{background:var(--ink);color:var(--paper)}.geometry-object-list i{width:10px;height:10px;border-radius:50%}.geometry-object-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;font-weight:700}.geometry-object-list small{font:400 .5rem var(--mono)}.geometry-export-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:18px}.geometry-hud{position:absolute;left:12px;bottom:12px;padding:6px 9px;border:1px solid var(--line);background:rgba(255,253,247,.91);color:var(--muted);font:400 .56rem var(--mono)}

@media(max-width:1000px){.four-workspace{grid-template-columns:1fr}.four-workspace>.four-calculator{max-width:none}.four-side-panel{min-height:620px}.notebook-filebar{grid-template-columns:1fr 1fr repeat(3,auto)}}
@media(max-width:850px){.geometry-workspace{height:auto;grid-template-columns:1fr;grid-template-rows:auto 600px auto}.geometry-inspector{max-height:none}.notebook-filebar{grid-template-columns:1fr 1fr}.notebook-filebar button{width:100%}}
@media(max-width:560px){.four-workspace{width:calc(100% - 16px);margin:20px auto}.four-workspace .four-keypad{gap:5px}.four-workspace .four-keypad button{height:48px;font-size:.62rem}.four-utility-fields{grid-template-columns:1fr}.four-side-panel>section{padding:18px}.notebook-document-head{padding:30px 16px 18px}.notebook-toolbar [data-add-block]{flex:1}.notebook-block canvas{height:220px}.geometry-workspace{grid-template-rows:auto 520px auto}.geometry-view-options{grid-template-columns:1fr 1fr}}

/* Subject learning loops and focused calculators */
.detail-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.subject-loop{display:grid;grid-template-columns:1.35fr repeat(3,1fr);border-bottom:1px solid var(--ink);background:var(--white)}.subject-loop>div,.subject-loop>a{min-height:190px;padding:30px clamp(20px,3vw,45px);border-right:1px solid var(--ink)}.subject-loop>a:last-child{border-right:0}.subject-loop h2{font-size:2rem;margin:0 0 12px}.subject-loop p{color:var(--muted);font-size:.86rem}.subject-loop a{display:flex;flex-direction:column}.subject-loop a b{font:500 .7rem var(--mono);color:var(--red)}.subject-loop a span{font-size:1.35rem;font-weight:800;margin-top:auto}.subject-loop a small{color:var(--muted);font-size:.7rem}.subject-tools{max-width:1500px;margin:auto;border-bottom:1px solid var(--ink)}.subject-tool-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--ink);border-top:1px solid var(--ink)}.subject-tool-grid a{min-height:270px;padding:25px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);display:flex;flex-direction:column}.subject-tool-grid a:hover{background:var(--white)}.subject-tool-grid a>span{width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--ink);background:var(--yellow);color:#172022;font:500 1.05rem Georgia}.subject-tool-grid h3{font-size:1.25rem;margin:28px 0 10px}.subject-tool-grid p{color:var(--muted);font-size:.78rem}.subject-tool-grid b{margin-top:auto;font-size:.72rem}.subject-practice-cta{margin-top:35px;padding:30px;display:flex;align-items:center;justify-content:space-between;gap:35px;background:var(--ink);color:var(--paper)}.subject-practice-cta h3{font-size:1.6rem;margin:0 0 7px}.subject-practice-cta p{margin:0;color:color-mix(in srgb,var(--paper) 70%,transparent);font-size:.82rem}

.calculus-hero{min-height:470px;padding:70px clamp(20px,7vw,110px);display:flex;align-items:end;justify-content:space-between;gap:60px;border-bottom:1px solid var(--ink)}.calculus-hero>div:first-child{max-width:900px}.calculus-hero h1{font-size:clamp(3.4rem,7vw,7rem);margin:20px 0}.calculus-hero p{max-width:760px;color:var(--muted);font-size:1.12rem}.calculus-hero-actions{display:flex;flex-direction:column;flex:none;gap:9px}.calculus-lab{height:840px;max-width:1540px;margin:45px auto;display:grid;grid-template-columns:390px minmax(0,1fr);border:1px solid var(--ink);background:var(--white)}.calculus-controls{min-width:0;overflow-y:auto;padding:27px;border-right:1px solid var(--ink)}.calculus-controls h2{font-size:1.75rem;margin:0 0 20px}.calculus-modes{display:grid;grid-template-columns:repeat(2,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.calculus-modes button{min-height:43px;padding:7px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:.68rem;font-weight:700}.calculus-modes button.active{background:var(--ink);color:var(--paper)}.calculus-controls form{margin-top:24px}.calculus-controls label{display:block;margin:14px 0 0;font-size:.68rem;font-weight:800}.calculus-controls input,.calculus-controls select{display:block;width:100%;margin-top:5px;padding:10px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}.calculus-controls .calculus-expression{font:500 .88rem var(--mono)}.calculus-controls .calculus-expression input{font:500 .78rem var(--mono)}.calculus-parameters{display:grid;grid-template-columns:1fr 1fr;gap:0 9px}.calculus-parameters label:only-child{grid-column:1/-1}.calculus-parameters label[hidden]{display:none}.calculus-controls form>.button{width:100%;margin-top:20px}.calculus-examples{margin-top:28px;display:flex;flex-direction:column}.calculus-examples>b{margin-bottom:8px;font-size:.73rem}.calculus-examples button{padding:9px 2px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--muted);text-align:left;font:400 .63rem var(--mono)}.calculus-examples button:hover{color:var(--red)}.calculus-output{min-width:0;display:grid;grid-template-rows:minmax(380px,1fr) auto}.calculus-graph{position:relative;min-width:0;overflow:hidden;background:#fffdf7;border-bottom:1px solid var(--ink)}.calculus-graph canvas{width:100%;height:100%;display:block;touch-action:none;outline:0;cursor:crosshair}.calculus-graph canvas:active{cursor:grabbing}.calculus-graph canvas:focus-visible{box-shadow:inset 0 0 0 3px var(--blue)}.calculus-graph-actions{position:absolute;right:12px;top:12px;display:flex}.calculus-graph-actions button{height:38px;padding:0 12px;border:1px solid var(--line);border-right:0;background:rgba(255,253,247,.93);color:#172022;font-size:.65rem;font-weight:700}.calculus-graph-actions button:last-child{border-right:1px solid var(--line)}.calculus-graph>output{position:absolute;left:12px;bottom:12px;padding:6px 9px;background:rgba(255,253,247,.91);border:1px solid #d9d4c7;color:#5d6665;font:400 .6rem var(--mono)}.calculus-result{display:grid;grid-template-columns:minmax(230px,.75fr) minmax(300px,1.25fr);gap:25px;padding:28px;background:var(--ink);color:var(--paper)}.calculus-result>div{min-width:0;display:flex;flex-direction:column}.calculus-result span{font:500 .63rem var(--mono);color:#aeb8b8}.calculus-result strong{overflow-wrap:anywhere;font:500 clamp(1.5rem,3vw,2.5rem)/1.2 var(--mono);color:var(--yellow);margin:12px 0}.calculus-result strong.error{font-size:.85rem;color:#ff8d84}.calculus-result small{color:#aeb8b8;font-size:.62rem}.calculus-result ol{margin:0;padding-left:22px;color:#d3d9d8;font-size:.7rem}.calculus-result li{margin-bottom:6px}.calculus-result>a{grid-column:2;color:var(--paper);font-size:.7rem;font-weight:800;text-decoration:underline;text-underline-offset:4px}.calculus-guide{max-width:1400px;margin:auto}.calculus-guide-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--ink);border-top:1px solid var(--ink)}.calculus-guide-grid article{min-height:200px;padding:25px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.calculus-guide-grid h3{font-size:1.2rem}.calculus-guide-grid p{color:var(--muted);font-size:.78rem}.calculus-method-note{max-width:900px;margin:35px 0 0;color:var(--muted);font-size:.75rem}.calculus-next{display:flex;justify-content:space-between;gap:60px;background:var(--yellow);color:#172022}.calculus-next h2{font-size:2.7rem;margin:0 0 10px}.calculus-next>div:last-child{display:grid;min-width:330px}.calculus-next a{padding:10px 0;border-bottom:1px solid rgba(23,32,34,.4);font-weight:800;font-size:.8rem}

@media(max-width:1000px){.subject-loop{grid-template-columns:1fr 1fr}.subject-loop>div,.subject-loop>a{border-bottom:1px solid var(--ink)}.subject-tool-grid{grid-template-columns:repeat(2,1fr)}.calculus-hero{align-items:flex-start;flex-direction:column}.calculus-hero-actions{flex-direction:row}.calculus-lab{height:auto;grid-template-columns:1fr;margin-inline:14px}.calculus-controls{border-right:0;border-bottom:1px solid var(--ink)}.calculus-output{grid-template-rows:560px auto}}
@media(max-width:680px){.detail-actions,.calculus-hero-actions,.subject-practice-cta,.calculus-next{align-items:stretch;flex-direction:column}.detail-actions .button,.calculus-hero-actions .button{width:100%}.subject-loop,.subject-tool-grid,.calculus-guide-grid{grid-template-columns:1fr}.subject-loop>div,.subject-loop>a{border-right:0}.subject-tools{padding-inline:14px}.subject-practice-cta{align-items:flex-start}.calculus-hero{min-height:auto;padding:65px 20px}.calculus-hero h1{font-size:3.5rem}.calculus-controls{padding:20px 15px}.calculus-output{grid-template-rows:440px auto}.calculus-result{grid-template-columns:1fr}.calculus-result>a{grid-column:1}.calculus-parameters{grid-template-columns:1fr}.calculus-next>div:last-child{min-width:0}}

/* Dedicated calculators for every Learn subject */
.subject-calculator-hero h1{max-width:1100px}.subject-calculator{width:min(1540px,calc(100% - 36px));min-height:850px;margin:45px auto;display:grid;grid-template-columns:390px minmax(0,1fr);border:1px solid var(--ink);background:var(--white)}
.subject-calculator-controls{min-width:0;padding:27px;border-right:1px solid var(--ink);overflow:auto}.subject-calculator-controls h2{margin:0 0 20px;font-size:1.75rem}.subject-calculator-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.subject-calculator-modes button{min-height:46px;padding:8px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:.66rem;font-weight:750}.subject-calculator-modes button:hover{background:var(--paper-2)}.subject-calculator-modes button.active{background:var(--ink);color:var(--paper)}
.subject-calculator-controls form{margin-top:24px}.subject-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.subject-fields label{min-width:0;margin-top:13px;font-size:.64rem;font-weight:800}.subject-fields input,.subject-fields select{display:block;width:100%;height:43px;margin-top:5px;padding:8px 10px;border:1px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);font:500 .68rem var(--mono)}.subject-fields input[type=text]{grid-column:1/-1}.subject-fields label:has(input[type=text]){grid-column:1/-1}.subject-fields input:focus,.subject-fields select:focus{outline:2px solid var(--blue);outline-offset:-1px}.subject-calculator-controls form>.button{width:100%;margin-top:20px}
.subject-examples{margin-top:28px}.subject-examples>b{display:block;margin-bottom:7px;font-size:.72rem}.subject-examples>div{display:flex;flex-direction:column}.subject-examples button{padding:9px 2px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--muted);text-align:left;font:400 .61rem/1.45 var(--mono)}.subject-examples button:hover{color:var(--red)}
.subject-calculator-output{min-width:0;display:grid;grid-template-rows:minmax(420px,1fr) auto}.subject-visual{position:relative;min-height:480px;overflow:hidden;border-bottom:1px solid var(--ink);background:#fffdf7}.subject-visual canvas{display:block;width:100%;height:100%}.subject-visual p{position:absolute;left:12px;bottom:12px;margin:0;padding:6px 9px;border:1px solid #d9d4c7;background:rgba(255,253,247,.91);color:#5d6665;font:400 .59rem var(--mono)}
.subject-result{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(320px,1.3fr);gap:22px;padding:28px;background:var(--ink);color:var(--paper)}.subject-answer{min-width:0;display:flex;flex-direction:column}.subject-answer>span{font:500 .62rem var(--mono);color:#aeb8b8}.subject-answer>strong{margin:11px 0;overflow-wrap:anywhere;color:var(--yellow);font:500 clamp(1.35rem,2.5vw,2.3rem)/1.25 var(--mono)}.subject-answer>strong.error{color:#ff8d84;font-size:.86rem}.subject-answer>small{color:#aeb8b8;font-size:.61rem}.subject-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#354040}.subject-metrics>div{min-width:0;padding:10px 12px;background:#202a2c}.subject-metrics span,.subject-metrics b{display:block;overflow-wrap:anywhere}.subject-metrics span{color:#9faaaa;font:500 .54rem var(--mono)}.subject-metrics b{margin-top:4px;color:var(--paper);font:600 .67rem/1.45 var(--mono)}.subject-result ol{grid-column:1/-1;margin:0;padding:18px 0 0 21px;border-top:1px solid #354040;color:#d3d9d8;font-size:.69rem}.subject-result li{margin:0 0 6px}.subject-result>a{grid-column:1/-1;color:var(--paper);font-size:.69rem;font-weight:800;text-decoration:underline;text-underline-offset:4px}.subject-calculator-guide{max-width:1400px;margin:auto}.subject-method-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--ink);border-top:1px solid var(--ink)}.subject-method-grid article{min-height:220px;padding:25px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.subject-method-grid article>b{color:var(--red);font:500 .65rem var(--mono)}.subject-method-grid h3{margin:55px 0 10px;font-size:1.2rem}.subject-method-grid p{color:var(--muted);font-size:.75rem}
@media(max-width:1000px){.subject-calculator{min-height:0;grid-template-columns:1fr}.subject-calculator-controls{border-right:0;border-bottom:1px solid var(--ink)}.subject-fields{grid-template-columns:repeat(3,1fr)}.subject-calculator-output{grid-template-rows:560px auto}.subject-method-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.subject-calculator{width:calc(100% - 24px);margin:25px auto}.subject-calculator-controls{padding:20px 15px}.subject-fields{grid-template-columns:1fr 1fr}.subject-calculator-modes{grid-template-columns:1fr 1fr}.subject-calculator-output{grid-template-rows:440px auto}.subject-result{grid-template-columns:1fr;padding:22px 18px}.subject-metrics{grid-template-columns:1fr}.subject-result ol,.subject-result>a{grid-column:1}.subject-method-grid{grid-template-columns:1fr}.subject-method-grid article{min-height:180px}.subject-method-grid h3{margin-top:30px}}

/* Global tool-suite dropdown */
.nav-tools{position:relative}.nav-tools>button{height:auto;padding:0;border:0;background:transparent;color:var(--ink);font-weight:600}.nav-tools>button span{display:inline-block;margin-left:3px;font-size:.72rem;transition:transform .15s}.nav-tools.current>button{color:var(--red)}.nav-tools.open>button span{transform:rotate(180deg)}
.nav-tools-menu{position:absolute;z-index:90;left:50%;top:calc(100% + 21px);width:370px;padding:8px;display:none;background:var(--white);border:1px solid var(--ink);box-shadow:10px 10px 0 var(--yellow)}.nav-tools.open .nav-tools-menu,.nav-tools:focus-within .nav-tools-menu{display:grid}

/* Human-readable sitemap */
.sitemap-hero{min-height:360px;padding:clamp(55px,8vw,115px) clamp(24px,5vw,76px);display:grid;grid-template-columns:minmax(0,1.7fr) minmax(240px,.7fr);align-items:end;gap:50px;border-bottom:1px solid var(--ink)}.sitemap-hero h1{max-width:900px;margin:0;font-size:clamp(3rem,7vw,7.5rem);line-height:.9}.sitemap-hero p{max-width:760px;margin:30px 0 0;color:var(--muted);font-size:1.08rem}.sitemap-hero dl{display:grid;grid-template-columns:1fr 1fr;margin:0;border:1px solid var(--ink);background:var(--paper)}.sitemap-hero dl div{padding:25px;border-right:1px solid var(--ink)}.sitemap-hero dl div:last-child{border:0}.sitemap-hero dt{font:700 2.1rem var(--mono)}.sitemap-hero dd{margin:5px 0 0;color:var(--muted);font-size:.68rem}.sitemap-intro{max-width:1180px}.sitemap-intro h2{margin-bottom:12px}.sitemap-intro p{max-width:800px;color:var(--muted)}.sitemap-intro label{display:block;margin:30px 0 8px;font-weight:700}.sitemap-intro input{width:100%;padding:18px 20px;border:1px solid var(--ink);background:var(--white);color:var(--ink);font-size:.9rem}.sitemap-directory{padding:0 clamp(20px,4vw,65px) 70px}.sitemap-group{margin:0 auto 38px;max-width:1500px;border:1px solid var(--ink);background:var(--white)}.sitemap-group>header{padding:27px 30px;display:flex;justify-content:space-between;gap:30px;align-items:start;border-bottom:1px solid var(--ink);background:var(--paper)}.sitemap-group>header h2{margin:0;font-size:1.65rem}.sitemap-group>header p{max-width:760px;margin:7px 0 0;color:var(--muted);font-size:.78rem}.sitemap-group>header span{white-space:nowrap;font:500 .65rem var(--mono)}.sitemap-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.sitemap-link-grid a{min-width:0;padding:17px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink)}.sitemap-link-grid a:nth-child(3n){border-right:0}.sitemap-link-grid a:hover{background:var(--yellow)}.sitemap-link-grid span{display:block;font-size:.76rem;font-weight:700}.sitemap-link-grid small{display:block;margin-top:6px;overflow:hidden;text-overflow:ellipsis;color:var(--muted);font:400 .55rem var(--mono);white-space:nowrap}.sitemap-help{display:flex;justify-content:space-between;gap:40px;align-items:center;background:var(--yellow)}.sitemap-help h2{margin:0}.sitemap-help p{max-width:740px}.sitemap-help>div:last-child{display:flex;gap:10px;flex-wrap:wrap}@media(max-width:800px){.sitemap-hero{grid-template-columns:1fr}.sitemap-link-grid{grid-template-columns:1fr}.sitemap-link-grid a{border-right:0}.sitemap-group>header,.sitemap-help{display:block}.sitemap-group>header span{display:block;margin-top:15px}.sitemap-help>div:last-child{margin-top:25px}}
.nav-tools-menu a{min-height:58px;padding:8px;display:grid;grid-template-columns:42px 1fr;gap:11px;align-items:center;border-bottom:1px solid var(--line)}.nav-tools-menu a:last-child{border-bottom:0}.nav-tools-menu a:hover,.nav-tools-menu a[aria-current=page]{background:var(--paper-2)}.nav-tools-menu a:after{display:none}.nav-tools-menu i{width:42px;height:42px;display:grid;place-items:center;background:var(--ink);color:var(--paper);font:500 .78rem var(--mono);font-style:normal}.nav-tools-menu a:nth-child(2) i{background:#0aaf83}.nav-tools-menu a:nth-child(3) i{background:#168ca0}.nav-tools-menu a:nth-child(4) i{background:#3478dd}.nav-tools-menu a:nth-child(5) i{background:#6d48d7}.nav-tools-menu a:nth-child(6) i{background:#b336c6}.nav-tools-menu a:nth-child(7) i{background:#d12b94}.nav-tools-menu b,.nav-tools-menu small{display:block}.nav-tools-menu b{font-size:.76rem}.nav-tools-menu small{color:var(--muted);font-size:.58rem;font-weight:400}.nav-tools-menu .nav-tools-all i{background:var(--red)}
.mini-graph{background-image:linear-gradient(rgba(23,32,34,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(23,32,34,.14) 1px,transparent 1px)}
@media(max-width:1050px){.nav-tools>button{font-size:1rem}.nav-tools-menu{position:static;width:100%;margin-top:12px;box-shadow:none}.nav-tools-menu a{min-height:52px}.nav-tools:not(.open) .nav-tools-menu{display:none}.nav-tools.open .nav-tools-menu{display:grid}}
.nav-tools:not(.open) .nav-tools-menu{display:none}

/* Editorial guidance below interactive tools and practice workspaces */
.utility-tool-guide,.practice-information,.solver-information,.scientific-reference,.planner-guide{max-width:1500px;margin-inline:auto}
.utility-guide-grid,.practice-skill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--ink)}
.practice-skill-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.utility-guide-grid article,.practice-skill-grid article{min-height:220px;padding:25px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.utility-guide-grid article>span,.practice-skill-grid article>span{color:var(--red);font:500 .65rem var(--mono)}
.utility-guide-grid h3,.practice-skill-grid h3{margin:52px 0 10px;font-size:1.2rem}
.utility-guide-grid p,.practice-skill-grid p{margin:0;color:var(--muted);font-size:.75rem;line-height:1.65}
.practice-method{max-width:920px;margin:65px auto 0}.practice-method h2{margin-top:42px}
.utility-tool-guide .subject-practice-cta{margin-top:45px}
@media(max-width:1000px){.utility-guide-grid,.practice-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.utility-guide-grid,.practice-skill-grid{grid-template-columns:1fr}.utility-guide-grid article,.practice-skill-grid article{min-height:170px}.utility-guide-grid h3,.practice-skill-grid h3{margin-top:30px}}

/* Readable semantic content patterns */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.global-breadcrumb{min-height:38px;padding:7px clamp(20px,4vw,64px);display:flex;align-items:center;overflow-x:auto;border-bottom:1px solid var(--line);background:var(--paper-2);font:500 .64rem/1.4 var(--mono);color:var(--muted);white-space:nowrap}.global-breadcrumb ol{display:flex;align-items:center;gap:0;margin:0;padding:0;list-style:none}.global-breadcrumb li+li:before{content:"/";padding:0 9px;color:color-mix(in srgb,var(--muted) 55%,transparent)}.global-breadcrumb a{text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px}.global-breadcrumb a:hover{text-decoration-color:var(--red);color:var(--ink)}.global-breadcrumb [aria-current=page]{color:var(--ink)}.breadcrumb{display:none}.global-breadcrumb+.workspace{height:calc(100vh - 114px)}
.faq-section{max-width:960px;margin-inline:auto}.faq-section details{padding:20px 0}.faq-section details p{margin:12px 0 0}.faq-section summary{font-size:1.05rem}
.page-card h3{font-size:1.55rem;margin:9px 0 14px}
.program-courses h3{font-size:1.55rem;margin:10px 0}
.simple-checklist{margin:42px 0;padding:28px;background:var(--paper-2);border-left:4px solid var(--blue)}.simple-checklist h2{margin-top:0}.simple-checklist li{margin:0 0 12px;padding-left:6px}.simple-related h3{margin:0 0 7px;font-size:1.05rem;letter-spacing:-.02em}
.level-learning-path .subject-method-grid{list-style:none;padding:0;margin:0}.subject-method-grid>li{min-height:180px;padding:25px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.subject-method-grid>li h3{margin:10px 0;font-size:1.2rem}.subject-method-grid>li p{color:var(--muted);font-size:.75rem}
.graph-method-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0!important;margin:45px 0!important;text-align:left;border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.graph-method-grid article{min-height:210px;padding:25px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.graph-method-grid h3{margin:0 0 14px;font-size:1.25rem}.graph-method-grid p{margin:0;font-size:.9rem;line-height:1.7}.graph-method-grid a{text-decoration:underline;text-underline-offset:3px}.tool-about .tool-about-links{display:flex;justify-content:center;gap:30px;margin-top:30px}
.notebook-study-method{max-width:1500px;margin-inline:auto}.notebook-method-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;padding:0;margin:0;border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.notebook-method-list li{min-height:190px;padding:28px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.notebook-method-list h3{margin:0 0 14px}.notebook-method-list p{margin:0;color:var(--muted);font-size:.85rem}
@media(max-width:680px){.graph-method-grid,.notebook-method-list{grid-template-columns:1fr}.tool-about .tool-about-links{align-items:center;flex-direction:column}.subject-method-grid>li{min-height:180px}.subject-method-grid>li h3{margin-top:30px}.global-breadcrumb{padding-inline:16px}.global-breadcrumb+.workspace{height:auto}}

/* Account-free deterministic workbench used by focused calculator articles. */
.focused-workbench{max-width:1500px;margin:55px auto;padding:0 24px}.focused-workbench-head{display:flex;justify-content:space-between;align-items:end;gap:40px;padding:34px;background:var(--blue);color:#fff;border:1px solid var(--ink)}.focused-workbench-head h2{margin:0 0 10px;font-size:clamp(2rem,4vw,3.6rem)}.focused-workbench-head p{max-width:760px;margin:0;color:rgba(255,255,255,.86)}.focused-angle{display:flex;flex:none}.focused-angle button{min-width:64px;height:44px;border:1px solid rgba(255,255,255,.65);background:transparent;color:#fff;font-weight:800}.focused-angle button+button{border-left:0}.focused-angle button.active{background:#fff;color:#172022}.focused-workbench-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);border:1px solid var(--ink);border-top:0;background:var(--white)}.focused-workbench form{padding:38px;border-right:1px solid var(--ink)}.focused-workbench label{display:block;margin-bottom:22px;font-size:.76rem;font-weight:800}.focused-workbench label small{float:right;color:var(--muted);font-weight:500}.focused-workbench input,.focused-workbench textarea{display:block;width:100%;margin-top:8px;padding:15px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font:500 .88rem/1.5 var(--mono);resize:vertical}.focused-presets{display:flex;flex-wrap:wrap;gap:7px;margin:4px 0 24px}.focused-presets button{padding:8px 11px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:.69rem}.focused-presets button:hover{border-color:var(--blue);color:var(--blue)}.focused-form-actions{display:flex;gap:9px}.focused-result{min-width:0;padding:38px;background:var(--ink);color:var(--paper)}.focused-result>span{font:500 .66rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:#aeb8b8}.focused-result>strong{display:block;margin:14px 0;overflow-wrap:anywhere;color:var(--yellow);font:500 clamp(2rem,5vw,4.8rem)/1.1 var(--mono)}.focused-result>strong.error{font-size:1rem;color:#ff8d84}.focused-result>p,.focused-result>ol{color:#c8d0cf;font-size:.78rem}.focused-history{margin-top:32px;padding-top:24px;border-top:1px solid #394546}.focused-history h3{font-size:.9rem;letter-spacing:0}.focused-history>div{display:grid;gap:6px}.focused-history button{display:flex;justify-content:space-between;gap:20px;width:100%;padding:9px 0;border:0;border-bottom:1px solid #394546;background:transparent;color:#dce1e0;text-align:left;font:.65rem var(--mono)}.focused-history button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.focused-history button b{color:var(--yellow)}.focused-history p{color:#aeb8b8;font-size:.72rem}
@media(max-width:900px){.focused-workbench-grid{grid-template-columns:1fr}.focused-workbench form{border-right:0;border-bottom:1px solid var(--ink)}}
@media(max-width:680px){.focused-workbench{margin:30px auto;padding:0 14px}.focused-workbench-head{padding:26px 20px;align-items:flex-start;flex-direction:column}.focused-workbench form,.focused-result{padding:25px 20px}.focused-workbench label small{display:block;float:none}.focused-form-actions{align-items:stretch;flex-direction:column}}

/* Calculator design system: shared containment, readable results, and clear focus. */
.calculus-guide>.section-intro{display:block;margin-bottom:24px}.calculus-guide-lead{max-width:820px;margin:0 0 38px;color:var(--muted);font-size:1.02rem;line-height:1.75}
[data-calculus-calculator],[data-subject-calculator],[data-focused-calculator],[data-scientific-app],[data-four-calculator],[data-matrix-calculator],[data-geometry-tool],[data-surface-tool],[data-notebook]{scroll-margin-top:110px}
.calculator-information{display:grid;gap:34px}.calculator-information-head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.75fr);gap:50px;align-items:end;padding-bottom:24px;border-bottom:1px solid var(--ink)}.calculator-information-head span,.calculator-sample-panel span{font:700 .72rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--red)}.calculator-information-head h2{max-width:760px;margin:9px 0 0;font-size:clamp(2.2rem,4.3vw,4.8rem);line-height:.98}.calculator-information-head p{margin:0;color:var(--muted);font-size:1.05rem;line-height:1.7}.calculator-information-lead{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--ink)}.calculator-information-lead article{min-height:190px;padding:30px}.calculator-information-lead article+article{border-left:1px solid var(--ink)}.calculator-information-lead h3,.calculator-check-grid h3{font-size:1.3rem;margin:0 0 14px}.calculator-information-lead p{font-size:1rem;line-height:1.7;margin:0}.calculator-relationship{background:var(--ink);color:var(--paper)}.calculator-relationship p{font:500 1.05rem var(--mono);color:var(--yellow)}.calculator-information-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:54px}.calculator-information-grid h2,.calculator-check-grid h2,.calculator-faq>h2{font-size:1.8rem;margin:0 0 20px}.calculator-input-table{border:1px solid var(--line)}.calculator-input-table>div{display:grid;grid-template-columns:minmax(130px,.42fr) 1fr}.calculator-input-table>div+div{border-top:1px solid var(--line)}.calculator-input-table span,.calculator-input-table strong{padding:15px 18px}.calculator-input-table strong{border-right:1px solid var(--line)}.calculator-input-table-head{background:var(--ink);color:var(--paper);font:700 .72rem var(--mono);text-transform:uppercase;letter-spacing:.06em}.calculator-procedure{margin:0;padding:0;counter-reset:calculator-step;display:grid;gap:15px}.calculator-procedure li{list-style:none;display:grid;grid-template-columns:38px 1fr;gap:13px;line-height:1.6}.calculator-procedure li:before{counter-increment:calculator-step;content:counter(calculator-step);display:grid;place-items:center;width:34px;height:34px;background:var(--yellow);border:1px solid var(--ink);font:700 .72rem var(--mono)}.calculator-sample-panel{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:30px;background:var(--blue);color:#fff}.calculator-sample-panel h2{margin:7px 0;font:600 clamp(1.35rem,2.5vw,2.2rem) var(--mono)}.calculator-sample-panel p{margin:0;color:rgba(255,255,255,.82)}.calculator-sample-panel .button{flex:0 0 auto}.calculator-check-grid{display:grid;grid-template-columns:1fr minmax(280px,.48fr);gap:45px}.calculator-checklist{display:grid;gap:12px;padding:0;margin:0}.calculator-checklist li{list-style:none;display:grid;grid-template-columns:28px 1fr;gap:10px;line-height:1.55}.calculator-checklist li span{color:var(--green);font-weight:900}.calculator-check-grid aside{padding:26px;border-left:5px solid var(--red);background:var(--white)}.calculator-check-grid aside p{margin:0;line-height:1.65}.calculator-faq{max-width:1000px}.calculator-faq details{border-top:1px solid var(--line);padding:18px 0}.calculator-faq details:last-child{border-bottom:1px solid var(--line)}.calculator-faq summary{cursor:pointer;font-weight:750}.calculator-faq details p{max-width:780px;color:var(--muted);line-height:1.65}.calculator-quick-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}.calculator-quick-actions .button{flex:1 1 120px}.utility-sample-actions{margin:0 0 12px}.matrix-workspace>.utility-sample-actions{justify-content:flex-end}.matrix-workspace>.utility-sample-actions .button{flex:0 0 auto}
.calculator-information-head{display:block}
.calculator-information{padding-bottom:clamp(34px,4vw,60px)}.calculator-information+.section{padding-top:clamp(34px,4vw,60px)}.calculator-information+.article-layout{padding-top:clamp(34px,4vw,60px)}
.calculation-work{min-width:0;margin:0;border-top:1px solid color-mix(in srgb,currentColor 24%,transparent);padding-top:14px;align-self:start}.calculation-work summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none;color:inherit;font-size:.78rem;font-weight:800}.calculation-work summary::-webkit-details-marker{display:none}.calculation-work summary:after{content:"+";width:25px;height:25px;display:grid;place-items:center;margin-left:auto;border:1px solid color-mix(in srgb,currentColor 36%,transparent);font:700 .8rem var(--mono)}.calculation-work[open] summary:after{content:"−"}.calculation-work summary span{color:#aeb8b8;font:500 .58rem var(--mono);letter-spacing:.04em;text-transform:uppercase}.calculation-work ol{margin:16px 0 0;padding-left:22px;color:#d3d9d8;font-size:.72rem;line-height:1.65}.calculation-work li+li{margin-top:8px}.calculation-work ol.error{color:#ff8d84}.calculation-work-light{padding:16px 0;border-color:var(--line);color:var(--ink)}.calculation-work-light summary span{color:var(--muted)}.calculation-work-light ol{color:var(--muted)}.calculator-guide>.calculation-work{margin-top:18px}.four-side-panel .calculation-work{margin:12px 0 18px}.matrix-output>.calculation-work{grid-column:2;width:100%}.focused-result>.calculation-work{margin:22px 0}.subject-result>.calculation-work,.calculus-result>.calculation-work{width:100%}
.calculator-next{width:min(1560px,calc(100% - 40px));margin:72px auto; padding:0;display:grid;grid-template-columns:minmax(330px,.72fr) minmax(0,1.28fr);border:1px solid var(--ink);background:var(--white);box-shadow:14px 14px 0 color-mix(in srgb,var(--blue) 30%,var(--paper-2))}.calculator-next-intro{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(36px,4vw,64px);background:var(--ink);color:var(--paper)}.calculator-next-intro>span,.calculator-next-tools-head span{font:700 .68rem var(--mono);letter-spacing:.1em;text-transform:uppercase}.calculator-next-intro>span{color:var(--yellow)}.calculator-next-intro h2{max-width:620px;margin:18px 0;font-size:clamp(2.35rem,4.3vw,4.7rem);line-height:.98}.calculator-next-intro>p{max-width:570px;margin:0;color:color-mix(in srgb,var(--paper) 72%,transparent);font-size:.98rem;line-height:1.75}.calculator-next-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:38px}.calculator-next-actions a{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;padding:0 17px;border:1px solid color-mix(in srgb,var(--paper) 45%,transparent);font-size:.76rem;font-weight:800}.calculator-next-actions a:first-child{background:var(--yellow);border-color:var(--yellow);color:#172022}.calculator-next-actions a:hover{background:var(--paper);color:#172022}.calculator-next-tools{min-width:0;padding:clamp(30px,3.5vw,54px);background:color-mix(in srgb,var(--green) 11%,var(--paper))}.calculator-next-tools-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:26px}.calculator-next-tools-head span{color:var(--green)}.calculator-next-tools-head h3{max-width:620px;margin:7px 0 0;font-size:clamp(1.45rem,2.2vw,2.35rem)}.calculator-next-tools-head>a{flex:none;border-bottom:1px solid currentColor;font-size:.74rem;font-weight:800}.calculator-recommendation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.calculator-recommendation-grid>a{min-width:0;min-height:245px;padding:24px;display:flex;flex-direction:column;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);background:var(--white);transition:background .18s,transform .18s}.calculator-recommendation-grid>a:hover{position:relative;background:var(--yellow);transform:translateY(-4px)}.calculator-recommendation-icon{width:48px;height:48px;display:grid;place-items:center;margin-bottom:30px;background:var(--blue);color:#fff;font:700 .85rem var(--mono)}.calculator-recommendation-grid>a:nth-child(2) .calculator-recommendation-icon{background:var(--green)}.calculator-recommendation-grid>a:nth-child(3) .calculator-recommendation-icon{background:var(--red)}.calculator-recommendation-grid h3{margin:0 0 10px;font-size:1.05rem}.calculator-recommendation-grid p{margin:0 0 22px;color:var(--muted);font-size:.72rem;line-height:1.6}.calculator-recommendation-grid b{margin-top:auto;font-size:.7rem}.calculator-recommendation-grid>a:hover p{color:#172022}
.calculus-lab,.subject-calculator,.focused-workbench-grid,.calculator-device,.four-calculator,.four-side-panel,.matrix-card,.matrix-output,.geometry-workspace,.surface-workspace,.notebook-paper{box-shadow:0 18px 50px rgba(23,32,34,.08)}
.calculus-controls input:focus,.calculus-controls select:focus,.focused-workbench input:focus,.focused-workbench textarea:focus,.matrix-grid input:focus,.four-screen input:focus{outline:3px solid color-mix(in srgb,var(--blue) 52%,transparent);outline-offset:-2px;border-color:var(--blue)}

/* Calculus and Taylor workspaces grow with their results instead of overlapping content below. */
.calculus-lab{height:auto;min-height:760px;width:min(1540px,calc(100% - 36px));align-items:stretch}
.calculus-output{grid-template-rows:minmax(440px,560px) auto;align-content:start}
.calculus-controls{background:var(--white)}
.calculus-graph{min-height:440px}
.calculus-legend{position:absolute;left:12px;top:12px;display:flex;gap:8px;padding:7px 9px;border:1px solid #d9d4c7;background:rgba(255,253,247,.92);color:#5d6665;font:500 .56rem var(--mono)}.calculus-legend span{display:flex;align-items:center;gap:5px}.calculus-legend i{width:18px;height:3px;background:var(--blue)}.calculus-legend span:last-child i{height:0;border-top:2px dashed var(--red);background:transparent}.calculus-lab:not([data-active-mode=taylor]) .calculus-legend span:last-child{display:none}
.calculus-result{min-width:0;grid-template-columns:minmax(0,.9fr) minmax(280px,1.1fr);align-content:start;gap:20px 32px;padding:30px 34px}
.calculus-result>div{min-width:0;align-self:start}.calculus-result strong{max-width:100%;margin:10px 0 12px;overflow-wrap:anywhere;font-size:clamp(1.25rem,1.7vw,1.75rem);line-height:1.45;letter-spacing:-.025em}.calculus-result ol{align-self:start;padding-top:2px;font-size:.73rem;line-height:1.65}.calculus-result>a{align-self:end;padding-top:14px;border-top:1px solid #354040;text-decoration:none}.calculus-result>a:hover{text-decoration:underline}

/* Subject calculators use the same visual hierarchy and never let metrics force overflow. */
.subject-calculator{min-height:760px}.subject-calculator-output{grid-template-rows:minmax(420px,540px) auto;align-content:start}.subject-visual{min-height:420px}.subject-result{min-width:0;grid-template-columns:minmax(0,.85fr) minmax(280px,1.15fr);align-content:start;padding:30px 34px}.subject-answer>strong{font-size:clamp(1.2rem,1.65vw,1.7rem);line-height:1.45}.subject-metrics{align-self:start}.subject-result>a{padding-top:12px;border-top:1px solid #354040;text-decoration:none}.subject-result>a:hover{text-decoration:underline}
.subject-calculator[data-subject-calculator="geometry"] .subject-calculator-output{grid-template-rows:440px auto}
.subject-calculator[data-subject-calculator="geometry"] .subject-visual{min-height:0}
.subject-calculator[data-subject-calculator="geometry"] .subject-calculator-modes button:last-child:nth-child(odd){grid-column:1/-1}

/* Focused article calculators retain a strong result panel without billboard-sized numbers. */
.focused-workbench{margin-block:48px}.focused-workbench-head{background:linear-gradient(135deg,#2c6fbb,#3f8b78)}.focused-workbench-grid{overflow:hidden}.focused-workbench form{background:var(--white)}.focused-result>strong{font-size:clamp(1.65rem,3vw,2.8rem);line-height:1.25}.focused-result>p{overflow-wrap:anywhere}.focused-history button:focus-visible,.focused-presets button:focus-visible,.focused-angle button:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}

/* Main calculator suite shares balanced widths and readable controls. */
.scientific-workbench,.four-workspace,.matrix-workspace,.geometry-workspace,.surface-workspace,.notebook-app{width:min(1500px,calc(100% - 36px));max-width:1500px}
.scientific-workbench{grid-template-columns:minmax(560px,1fr) minmax(300px,350px)}.scientific-screen{height:300px}.calculator-device{box-shadow:0 18px 50px rgba(23,32,34,.11)}.calculator-guide{border-top-color:var(--blue)}
.four-workspace{grid-template-columns:minmax(440px,610px) minmax(340px,1fr)}.four-side-panel{min-height:0}.four-tape{height:490px}.four-screen strong{overflow-wrap:anywhere;white-space:normal;line-height:1.2}
.matrix-workspace{max-width:1400px}.matrix-output{grid-template-columns:minmax(190px,240px) minmax(0,1fr);overflow:hidden}.matrix-output [data-matrix-result]>strong{font-size:clamp(1.6rem,3vw,2.5rem)}.matrix-result-grid{grid-template-columns:repeat(var(--matrix-columns),minmax(96px,max-content))}.matrix-result-grid span{font-size:.72rem}
.geometry-workspace{height:clamp(680px,72vh,900px);min-height:680px}.geometry-inspector{background:var(--white)}
.surface-workspace{height:clamp(680px,72vh,900px);min-height:680px}.surface-panel{background:var(--white)}
.notebook-app{max-width:1250px}.notebook-toolbar{top:114px;overflow-x:auto}.notebook-toolbar button{flex:none}.notebook-block output{overflow-wrap:anywhere;font-size:clamp(.95rem,2vw,1.2rem)}
.utility-tool-header p{text-align:left}.utility-tool-header>div{align-items:center}.tool-suite-nav a{min-width:110px;text-align:center}

@media(max-width:1000px){.calculus-lab,.subject-calculator{min-height:0}.calculus-output,.subject-calculator-output{grid-template-rows:500px auto}.calculus-result,.subject-result{grid-template-columns:1fr 1fr}.scientific-workbench,.four-workspace{grid-template-columns:1fr}.four-calculator{max-width:650px}.four-tape{height:360px}.matrix-inputs{grid-template-columns:1fr}.geometry-workspace,.surface-workspace{height:760px}.utility-tool-header>div{align-items:flex-start;flex-direction:column}.utility-tool-header p{max-width:760px}}
@media(max-width:680px){[data-calculus-calculator],[data-subject-calculator],[data-focused-calculator],[data-scientific-app],[data-four-calculator],[data-matrix-calculator],[data-geometry-tool],[data-surface-tool],[data-notebook]{scroll-margin-top:86px}.calculus-lab{width:calc(100% - 20px);margin-block:20px}.calculus-output,.subject-calculator-output{grid-template-rows:390px auto}.calculus-graph,.subject-visual{min-height:390px}.calculus-result,.subject-result{grid-template-columns:1fr;padding:24px 20px}.calculus-result>a,.subject-result>a{grid-column:1}.calculus-result strong,.subject-answer>strong{font-size:1.2rem}.calculus-legend{max-width:calc(100% - 100px);flex-wrap:wrap}.scientific-workbench,.four-workspace,.matrix-workspace,.geometry-workspace,.surface-workspace,.notebook-app{width:calc(100% - 20px)}.matrix-workspace{padding:0}.matrix-output{grid-template-columns:1fr;padding:24px 18px}.matrix-output>p{grid-column:1}.matrix-result-grid{grid-template-columns:repeat(var(--matrix-columns),minmax(76px,max-content))}.geometry-workspace,.surface-workspace{height:auto;min-height:0}.geometry-workspace{grid-template-columns:1fr;grid-template-rows:auto 520px auto}.geometry-inspector{max-height:none}.surface-workspace{grid-template-columns:1fr;grid-template-rows:auto 520px}.surface-panel{border-right:1px solid var(--ink);border-bottom:0}.notebook-toolbar{top:104px}.focused-workbench-head h2{font-size:2rem}.focused-result>strong{font-size:1.75rem}}
@media(max-width:680px){.subject-calculator[data-subject-calculator="geometry"] .subject-calculator-output{grid-template-rows:340px auto}.subject-calculator[data-subject-calculator="geometry"] .subject-visual{min-height:340px}}
@media(max-width:680px){.calculator-information-head,.calculator-information-lead,.calculator-information-grid,.calculator-check-grid{grid-template-columns:1fr}.calculator-information-head{gap:20px}.calculator-information-lead article+article{border-left:0;border-top:1px solid var(--ink)}.calculator-sample-panel{align-items:flex-start;flex-direction:column}.calculator-input-table>div{grid-template-columns:110px 1fr}.calculator-input-table span,.calculator-input-table strong{padding:12px}.calculator-check-grid{gap:22px}}
@media(max-width:1100px){.calculator-next{grid-template-columns:1fr}.calculator-next-intro h2{max-width:760px}.calculator-next-actions{margin-top:0}.calculator-recommendation-grid>a{min-height:220px}}
@media(max-width:680px){.calculator-next{width:calc(100% - 20px);margin:40px auto;box-shadow:7px 7px 0 color-mix(in srgb,var(--blue) 30%,var(--paper-2))}.calculator-next-intro,.calculator-next-tools{padding:28px 20px}.calculator-next-intro h2{font-size:2.4rem}.calculator-next-actions{width:100%;display:grid}.calculator-next-actions a{width:100%}.calculator-next-tools-head{align-items:flex-start;flex-direction:column;gap:14px}.calculator-recommendation-grid{grid-template-columns:1fr}.calculator-recommendation-grid>a{min-height:190px}.calculator-recommendation-icon{margin-bottom:22px}}
@media(max-width:680px){.matrix-output>.calculation-work{grid-column:1}.calculation-work summary{align-items:flex-start;flex-wrap:wrap}.calculation-work summary:after{position:absolute;right:0}.calculation-work summary{position:relative;padding-right:36px}}

/* Dedicated learning library */
.learn-hub-hero{min-height:680px;padding:clamp(70px,9vw,135px) clamp(22px,7vw,110px);display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);align-items:center;gap:clamp(45px,8vw,130px);border-bottom:1px solid var(--ink)}
.learn-hub-copy{max-width:900px}.learn-hub-copy h1{margin:0 0 28px;font-size:clamp(3.3rem,6.5vw,7.2rem)}.learn-hub-copy>p{max-width:760px;margin:0;color:var(--muted);font-size:clamp(1.05rem,1.5vw,1.3rem)}.learn-hub-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:38px}
.page-hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:11px;margin-top:34px}.calculator-learning-bridge{width:min(1500px,calc(100% - 40px));margin:56px auto 0;display:grid;grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr);border:1px solid var(--ink);box-shadow:10px 10px 0 color-mix(in srgb,var(--blue) 30%,var(--paper-2))}.calculator-learning-intro{padding:clamp(32px,4vw,58px);background:var(--ink);color:var(--paper)}.calculator-learning-intro h2{max-width:590px;margin:0 0 22px;font-size:clamp(2.2rem,4vw,4.3rem)}.calculator-learning-intro p{max-width:650px;margin:0 0 31px;color:color-mix(in srgb,var(--paper) 74%,transparent);font-size:.95rem}.calculator-learning-links{display:grid;grid-template-columns:1fr 1fr;background:var(--paper)}.calculator-learning-links a{min-height:135px;padding:24px 26px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .18s}.calculator-learning-links a:nth-child(2n){border-right:0}.calculator-learning-links a:nth-last-child(-n+2){border-bottom:0}.calculator-learning-links a:hover{background:var(--white)}.calculator-learning-links strong{font-size:1rem}.calculator-learning-links span{margin-top:7px;color:var(--muted);font-size:.72rem}.calculator-learning-links a:after{content:"Learn this subject →";margin-top:12px;color:var(--red);font-size:.68rem;font-weight:750}
.learn-hub-facts{display:grid;grid-template-columns:1fr 1fr;margin:0;border:1px solid var(--ink);background:var(--paper)}.learn-hub-facts>div{min-height:165px;padding:25px;display:flex;flex-direction:column;justify-content:flex-end;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.learn-hub-facts>div:nth-child(2n){border-right:0}.learn-hub-facts>div:nth-last-child(-n+2){border-bottom:0}.learn-hub-facts dt{font:600 clamp(2.1rem,4vw,3.8rem)/1 var(--mono);color:var(--red)}.learn-hub-facts dd{margin:13px 0 0;color:var(--muted);font-size:.78rem;line-height:1.45}
.learn-section-head{max-width:900px;margin-bottom:50px}.learn-section-head h2{margin:0 0 18px}.learn-section-head p{max-width:780px;margin:0;color:var(--muted);font-size:1.04rem}.learn-subjects{max-width:1540px;margin:auto}
.learn-subject-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.learn-subject-grid>a{min-height:335px;padding:28px;display:flex;flex-direction:column;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);transition:background .18s,transform .18s}.learn-subject-grid>a:hover{background:var(--white);transform:translateY(-3px)}.learn-subject-icon{width:58px;height:58px;display:grid;place-items:center;background:var(--yellow);border:1px solid var(--ink);font:500 1.45rem Georgia;color:#172022}.learn-subject-grid small{margin-top:28px;color:var(--muted);font:500 .63rem var(--mono);text-transform:uppercase;letter-spacing:.08em}.learn-subject-grid h3{margin:8px 0 12px;font-size:1.65rem}.learn-subject-grid p{color:var(--muted);font-size:.84rem}.learn-subject-grid b{margin-top:auto;font-size:.76rem}
.learn-pathways{padding:clamp(80px,10vw,145px) clamp(22px,5vw,80px);background:var(--paper-2);border-block:1px solid var(--ink)}.learn-pathways>.learn-section-head{max-width:900px}.learn-pathway-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1480px;margin:auto;border:1px solid var(--ink)}.learn-pathway-grid article{min-height:510px;padding:clamp(28px,3vw,45px);display:flex;flex-direction:column;border-right:1px solid var(--ink)}.learn-pathway-grid article:last-child{border-right:0}.learn-pathway-grid .foundation{background:#efcd61}.learn-pathway-grid .bridge{background:#72a992}.learn-pathway-grid .advanced{background:#648fca}.learn-pathway-grid article>span{font:600 .72rem var(--mono)}.learn-pathway-grid h3{max-width:390px;margin:65px 0 20px;font-size:clamp(1.8rem,2.8vw,3rem)}.learn-pathway-grid p{max-width:460px;color:rgba(23,32,34,.76);font-size:.9rem}.learn-pathway-grid article>div{display:flex;flex-wrap:wrap;gap:7px;margin:24px 0}.learn-pathway-grid article>div a{padding:7px 11px;border:1px solid rgba(23,32,34,.55);font-size:.7rem;font-weight:700}.learn-pathway-cta{margin-top:auto;padding-top:18px;border-top:1px solid rgba(23,32,34,.45);font-size:.78rem;font-weight:800}
.learn-cycle{padding:clamp(80px,10vw,145px) clamp(22px,5vw,80px);background:var(--ink);color:var(--paper)}.learn-cycle>.learn-section-head p{color:#aeb7b7}.learn-cycle-grid{display:grid;grid-template-columns:repeat(4,1fr);max-width:1480px;margin:auto;border-top:1px solid #4a5556;border-left:1px solid #4a5556}.learn-cycle-grid article{min-height:360px;padding:30px;display:flex;flex-direction:column;border-right:1px solid #4a5556;border-bottom:1px solid #4a5556}.learn-cycle-grid article>span{color:var(--yellow);font:400 2rem Georgia}.learn-cycle-grid h3{margin:52px 0 14px;font-size:1.45rem}.learn-cycle-grid p{color:#aeb7b7;font-size:.82rem}.learn-cycle-grid a{margin-top:auto;color:var(--yellow);font-size:.73rem;font-weight:700}
.learn-levels{max-width:1540px;margin:auto}.learn-level-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--ink)}.learn-level-grid>a{min-height:360px;padding:35px;display:flex;flex-direction:column;border-right:1px solid var(--ink);transition:background .18s}.learn-level-grid>a:last-child{border-right:0}.learn-level-grid>a:hover{background:var(--white)}.learn-level-grid span{color:var(--red);font:500 .67rem var(--mono)}.learn-level-grid h3{margin:55px 0 15px;font-size:2rem}.learn-level-grid p{color:var(--muted);font-size:.88rem}.learn-level-grid b{margin-top:auto;font-size:.77rem}
.learn-resource-map{display:grid;grid-template-columns:minmax(300px,.68fr) minmax(0,1.32fr);border-block:1px solid var(--ink);background:var(--paper-2)}.learn-resource-intro{padding:clamp(50px,7vw,105px);border-right:1px solid var(--ink)}.learn-resource-intro{align-self:start;position:sticky;top:110px}.learn-resource-intro h2{font-size:clamp(2.4rem,4.5vw,5rem)}.learn-resource-intro p{max-width:530px;color:var(--muted)}.learn-resource-grid{display:grid;grid-template-columns:1fr 1fr}.learn-resource-grid>a{min-height:315px;padding:34px;display:flex;flex-direction:column;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.learn-resource-grid>a:nth-child(2n){border-right:0}.learn-resource-grid>a:nth-last-child(-n+2){border-bottom:0}.learn-resource-grid>a:hover{background:var(--white)}.learn-resource-grid span{color:var(--muted);font:500 .63rem/1.45 var(--mono)}.learn-resource-grid h3{margin:45px 0 13px;font-size:1.55rem}.learn-resource-grid p{color:var(--muted);font-size:.82rem}.learn-resource-grid b{margin-top:auto;font-size:.75rem}
.learn-start-check{max-width:1540px;margin:auto;display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:clamp(55px,8vw,125px)}.learn-start-check>div{align-self:start;position:sticky;top:120px}.learn-start-check>div p{max-width:570px;color:var(--muted);font-size:1rem}.learn-start-check .button{margin-top:20px}.learn-start-check ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}.learn-start-check li{display:grid;grid-template-columns:220px 1fr;gap:35px;padding:25px 5px;border-bottom:1px solid var(--ink)}.learn-start-check li strong{font-size:.88rem}.learn-start-check li span{color:var(--muted);font-size:.84rem}
.learn-faq{max-width:1180px;margin:auto;padding-top:50px}.learn-faq>div{border-top:1px solid var(--ink)}.learn-faq details{border-bottom:1px solid var(--ink);padding:0}.learn-faq summary{cursor:pointer;list-style:none;padding:25px 45px 25px 4px;position:relative;font-size:1rem;font-weight:800}.learn-faq summary::-webkit-details-marker{display:none}.learn-faq summary:after{content:"+";position:absolute;right:5px;font:400 1.4rem var(--mono)}.learn-faq details[open] summary:after{content:"−"}.learn-faq details p{max-width:830px;margin:0;padding:0 35px 25px 4px;color:var(--muted);font-size:.9rem}
@media(max-width:1100px){.learn-hub-hero{grid-template-columns:1fr}.learn-hub-facts{max-width:700px}.learn-subject-grid,.learn-cycle-grid{grid-template-columns:repeat(2,1fr)}.learn-pathway-grid{grid-template-columns:1fr}.learn-pathway-grid article{min-height:390px;border-right:0;border-bottom:1px solid var(--ink)}.learn-pathway-grid article:last-child{border-bottom:0}.learn-pathway-grid h3{margin-top:38px}.learn-level-grid{grid-template-columns:1fr}.learn-level-grid>a{min-height:280px;border-right:0;border-bottom:1px solid var(--ink)}.learn-level-grid>a:last-child{border-bottom:0}.learn-level-grid h3{margin-top:35px}.learn-resource-map{grid-template-columns:1fr}.learn-resource-intro{position:static;border-right:0;border-bottom:1px solid var(--ink)}.learn-start-check{grid-template-columns:1fr}.learn-start-check>div{position:static}}
@media(max-width:900px){.calculator-learning-bridge{grid-template-columns:1fr}.calculator-learning-links a{min-height:125px}}
@media(max-width:680px){.learn-hub-hero{min-height:0;padding:60px 18px}.learn-hub-copy h1{font-size:3.35rem}.learn-hub-actions{display:grid}.learn-hub-actions .button{width:100%}.learn-hub-facts>div{min-height:130px;padding:18px}.learn-hub-facts dd{font-size:.68rem}.learn-subjects,.learn-levels,.learn-start-check,.learn-faq{padding-inline:14px}.learn-section-head{margin-bottom:35px}.learn-subject-grid,.learn-cycle-grid,.learn-resource-grid{grid-template-columns:1fr}.learn-subject-grid>a{min-height:285px}.learn-pathways,.learn-cycle{padding-inline:14px}.learn-pathway-grid article{min-height:420px;padding:28px 22px}.learn-cycle-grid article{min-height:280px}.learn-cycle-grid h3{margin-top:35px}.learn-resource-grid>a,.learn-resource-grid>a:nth-child(2n),.learn-resource-grid>a:nth-last-child(-n+2){min-height:255px;border-right:0;border-bottom:1px solid var(--ink)}.learn-resource-grid>a:last-child{border-bottom:0}.learn-start-check li{grid-template-columns:1fr;gap:6px}.learn-faq summary{font-size:.9rem}}
@media(max-width:680px){.page-hero-actions{display:grid}.page-hero-actions .button{width:100%}.calculator-learning-bridge{width:calc(100% - 20px);margin-top:30px;box-shadow:6px 6px 0 color-mix(in srgb,var(--blue) 30%,var(--paper-2))}.calculator-learning-intro{padding:30px 22px}.calculator-learning-links{grid-template-columns:1fr}.calculator-learning-links a,.calculator-learning-links a:nth-child(2n),.calculator-learning-links a:nth-last-child(-n+2){min-height:118px;border-right:0;border-bottom:1px solid var(--line)}.calculator-learning-links a:last-child{border-bottom:0}}

/* Lesson enrichment: summary box, glossary, worked steps, reference tables */
.tldr{background:var(--paper-2);border-left:4px solid var(--red);padding:22px 26px;margin:0 0 34px}
.tldr h2{font-size:1.05rem!important;letter-spacing:.04em;text-transform:uppercase;margin:0 0 12px!important;padding:0!important;border:0!important;font-family:var(--mono);font-weight:500}
.tldr ul{margin:0;padding-left:20px}
.tldr li{padding:4px 0;font-weight:600}
.lesson-glossary{margin:14px 0 26px;padding:0}
.lesson-glossary dt{font-weight:800;margin-top:14px}
.lesson-glossary dd{margin:3px 0 0;padding-left:0;color:var(--muted)}
.worked-steps{list-style:none;counter-reset:step;padding-left:0;margin:16px 0 26px}
.worked-steps li{counter-increment:step;display:grid;grid-template-columns:34px 1fr;gap:4px 14px;padding:12px 0;border-top:1px solid var(--line)}
.worked-steps li:before{content:counter(step);grid-row:1/3;width:28px;height:28px;display:grid;place-items:center;background:var(--ink);color:var(--paper);font:500 .78rem var(--mono);border-radius:50%}
.worked-steps li b{font-size:.93rem}
.worked-steps li span{font-family:var(--mono);font-size:.95rem;background:var(--paper-2);padding:7px 11px;display:block;overflow-x:auto}
.table-scroll{overflow-x:auto;margin:16px 0 28px;-webkit-overflow-scrolling:touch}
.lesson-table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:min(100%,520px)}
.lesson-table th,.lesson-table td{text-align:left;padding:11px 14px;border:1px solid var(--line);vertical-align:top}
.lesson-table thead th{background:var(--ink);color:var(--paper);font:500 .72rem var(--mono);text-transform:uppercase;letter-spacing:.06em;border-color:var(--ink)}
.lesson-table tbody th{background:var(--paper-2);font-weight:700;white-space:nowrap}
.lesson-table tbody tr:hover td{background:var(--paper-2)}
.lesson-links{margin:14px 0 26px;padding-left:20px}
.lesson-links li{padding:6px 0}
.lesson-links a{font-weight:700;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}
.transfer-answer{border:1px solid var(--line);border-left:4px solid var(--green);padding:14px 18px;margin:14px 0 22px}
.transfer-answer summary{font-weight:700;cursor:pointer}
.transfer-answer p{margin:12px 0 0}
@media(max-width:680px){
  .tldr{padding:18px;margin-bottom:26px}
  .worked-steps li{grid-template-columns:26px 1fr;gap:3px 10px}
  .worked-steps li:before{width:22px;height:22px;font-size:.68rem}
  .worked-steps li span{font-size:.86rem}
  .lesson-table{font-size:.82rem}
  .lesson-table th,.lesson-table td{padding:9px 10px}
}

/* Contextual cluster links on calculator and tool pages */
.calculator-cluster{padding-top:0}
.cluster-links{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--ink)}
.cluster-links a{padding:26px;border-right:1px solid var(--ink);display:flex;flex-direction:column;gap:7px;transition:background .2s}
.cluster-links a:last-child{border-right:0}
.cluster-links a:hover{background:var(--paper-2)}
.cluster-links span{font:500 .66rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--red)}
.cluster-links b{font-size:1.08rem;letter-spacing:-.02em}
.cluster-links small{color:var(--muted);font-size:.84rem}
@media(max-width:760px){.cluster-links{grid-template-columns:1fr}.cluster-links a{border-right:0;border-bottom:1px solid var(--ink);padding:20px}.cluster-links a:last-child{border-bottom:0}}
.lesson-table caption{text-align:left;caption-side:top;color:var(--muted);font-size:.84rem;padding:0 0 10px}

/* Display equations can be wider than a phone. Let them scroll inside their own
   container instead of widening the page (inline math stays unconstrained so it
   flows with the sentence). */
mjx-container[display="true"]{max-width:100%;overflow-x:auto;overflow-y:hidden;padding-bottom:2px}
.formula-equation,.worked-steps li span{max-width:100%;overflow-x:auto}
/* Inline math stays plain inline so it flows with the sentence. It must NOT get
   overflow-x:auto here: that paints a scrollbar gutter after every formula. Page
   width is protected by the html/body clip below, and long expressions inside
   worked steps scroll via their own container. */
/* Reference cards hold display equations that can exceed a phone's width. */
@media(max-width:760px){.ap-reference-grid{grid-template-columns:1fr}.ap-reference-grid article{padding:24px 18px;min-width:0}}
.ap-reference-grid article{min-width:0}

/* Grid and flex children default to min-width:auto, so a wide table inside one
   forces the whole container past the viewport instead of scrolling internally. */
.ap-week-plan,.ap-week-plan>div,.ap-strategy-tables,.ap-strategy-tables>div{min-width:0}
.section>div,.section-intro>div{min-width:0}
.table-scroll{min-width:0;max-width:100%}

/* Safety net: on narrow screens any table scrolls within its own box rather than
   widening the document, even if a template forgot the .table-scroll wrapper. */
@media(max-width:900px){
  table{display:block;overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}
  table thead,table tbody,table tr{width:max-content;min-width:100%}
}
/* The callout bleeds into the column gutter, which only fits once the viewport is
   wider than the prose column plus both gutters. */
.callout{margin-left:0;margin-right:0;max-width:100%}
@media(min-width:860px){.callout{margin-left:-30px;margin-right:-30px}}

/* Final guard against horizontal page scroll. `clip` rather than `hidden` because
   it does not create a scroll container, so the sticky header keeps working.
   Genuine wide content (tables, equations) scrolls in its own box above. */
html,body{overflow-x:clip}

/* Subject-hub glossary, styled to match the lesson glossary. */
.hub-glossary{margin:14px 0 26px;padding:0}
.hub-glossary dt{font-weight:800;margin-top:14px}
.hub-glossary dd{margin:3px 0 0;padding-left:0;color:var(--muted)}

/* Reciprocal link between a lesson and the calculator that applies it */
.calculator-lesson-link{padding-top:0;padding-bottom:0}
.paired-lesson{max-width:70ch;margin:0 auto;padding:18px 22px;border-left:3px solid var(--blue);background:var(--paper-2);font-size:1rem}
.paired-lesson a{font-weight:700;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}

/* --- Formula hierarchy: /formula-library/<subject> and /formula-library/<formula> ---
   215 formulas used to share one URL. These styles cover the 11 subject pages and
   the 215 individual formula pages added when that index was split. Wide content
   (rendered equations) sits in .table-scroll so the page itself never scrolls
   sideways on a phone. */
.formula-subject-nav{border-top:1px solid var(--ink);padding-top:40px;margin-top:60px}
.formula-subject-nav h2{font-size:clamp(1.6rem,2.6vw,2.2rem)}
.formula-subject-nav>p{max-width:70ch;color:var(--muted);font-size:.95rem}
.formula-subject-nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 0;padding:0}
.formula-subject-nav a{display:flex;align-items:baseline;gap:8px;border:1px solid var(--ink);padding:9px 15px;font-size:.85rem;font-weight:700}
.formula-subject-nav a:hover{background:var(--ink);color:var(--paper)}
.formula-subject-nav small{font:500 .7rem var(--mono);color:var(--red)}
.formula-subject-nav a:hover small{color:var(--yellow)}

.formula-subject-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.formula-topic-block{margin-top:70px}
.formula-topic-block h2{font-size:clamp(1.7rem,3vw,2.6rem)}
.formula-topic-count{font:500 .72rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--red);margin:10px 0 0}
.formula-topic-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:26px}
.formula-topic-list article{min-width:0;border:1px solid var(--ink);padding:24px;display:flex;flex-direction:column}
.formula-topic-list h3{font-size:1.5rem;margin:0 0 16px;line-height:1.25}
.formula-topic-list h3 a{display:inline-block;padding:6px 0;min-height:44px;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:4px}
.formula-topic-list p{font-size:.86rem;color:var(--muted);margin:16px 0 0}
.formula-topic-list small{margin-top:auto;padding-top:14px;font:500 .68rem var(--mono);color:var(--muted)}
.formula-topic-list .formula-equation{background:var(--paper-2);padding:16px;min-height:76px;display:grid;place-items:center;font-size:1rem}

.formula-detail-tags{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 0;padding:0}
.formula-detail-tags li{border:1px solid var(--ink);padding:6px 13px;font:600 .7rem var(--mono);text-transform:uppercase;letter-spacing:.06em}
.formula-detail-tags a{text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}
.formula-detail-statement{border:1px solid var(--ink);padding:26px;margin-bottom:44px}
.formula-detail-statement small{display:block;font:600 .68rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--red);margin-bottom:16px}
.formula-detail-statement .formula-equation{background:var(--paper-2);padding:22px;font-size:1.15rem;display:grid;place-items:center;min-height:92px}
.share-slot{min-height:62px}
.share-slot .share-result{margin-top:18px}
.share-result{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:18px}
.share-result-button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border:1px solid var(--ink);background:var(--white);color:var(--ink);font:700 .84rem var(--font);cursor:pointer}
.share-result-button:hover{background:var(--yellow)}
.share-result-button span{font-size:1rem}
.share-result-status{font-size:.82rem;color:var(--green);font-weight:600}
.share-result-note{margin:0 0 14px;padding:10px 14px;border-left:4px solid var(--blue);background:var(--paper-2);font-size:.84rem;color:var(--muted)}
.home-calculators-note,.home-compare-note{max-width:760px;color:var(--muted);font-size:1.02rem;line-height:1.7;margin:0 0 28px}
.calculator-link-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--ink)}
.calculator-link-grid a{display:grid;gap:7px;align-content:start;padding:22px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);background:var(--white);min-height:150px}
.calculator-link-grid i{font:600 1.1rem/1 var(--mono);font-style:normal;display:grid;place-items:center;width:38px;height:38px;background:var(--yellow);border:1px solid var(--ink);color:#172022}
.calculator-link-grid b{font-size:1.08rem;line-height:1.25}
.calculator-link-grid small{color:var(--muted);font-size:.84rem;line-height:1.55}
.calculator-link-grid a:hover{background:var(--paper-2)}
.compare-table{width:100%;border-collapse:collapse;background:var(--white);min-width:520px}
.compare-table th,.compare-table td{border:1px solid var(--line);padding:13px 16px;text-align:left;font-size:.94rem}
.compare-table thead th{background:var(--ink);color:var(--paper);font:700 .74rem var(--mono);text-transform:uppercase;letter-spacing:.06em}
.compare-table tbody th{font-weight:600;max-width:340px}
.compare-table td{text-align:center;font-weight:700;width:22%}
.formula-mistake{border-left:5px solid var(--red);background:var(--white);padding:22px 26px;margin:18px 0 8px;display:grid;gap:12px}
.formula-mistake p{margin:0}
.formula-mistake b{font:700 .72rem var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--red);display:block;margin-bottom:3px}

@media(max-width:860px){
  .formula-topic-list{grid-template-columns:minmax(0,1fr)}
  .formula-detail-statement{padding:20px}
  .formula-detail-statement .formula-equation{font-size:.95rem;padding:16px}
}

/* Wrapper that gives the 215 formula cards a parent heading. Without styling the
   heading collided with the sticky search bar above it and the grid below. */
.formula-browse{margin-top:44px}
.formula-browse>h2{font-size:clamp(1.6rem,2.6vw,2.2rem);letter-spacing:-.02em;margin:0;text-wrap:balance}
.formula-browse>h2+.formula-grid{margin-top:28px}
@media(max-width:680px){.formula-browse{margin-top:30px}}

/* Term lists (lesson vocabulary fallback, author subject areas) had no rules and
   rendered as a default bullet list mid-prose. */
.lesson-term-list{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 24px;padding:0}
.lesson-term-list li{border:1px solid var(--line);padding:6px 12px;font:500 .8rem var(--mono);background:var(--surface,var(--white));color:var(--ink)}

/* Formula name links are the main action on a card, so give them a real tap
   target rather than a bare line of text (44px is the accessibility minimum). */
.formula-grid h3 a{display:inline-block;padding:4px 0;min-height:44px;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:4px}
.formula-grid h3 a:hover{color:var(--red)}
.formula-topic-list h3 a:hover{color:var(--red)}
@media(max-width:680px){
  .formula-topic-list h3{font-size:1.35rem}
}

/* The homepage solver is the primary action on the site: give the field a clear
   focus state and the submit button real presence next to it. */
.quick-form input:focus{border-bottom-color:var(--red)}
.quick-form input::placeholder{color:var(--muted);opacity:.75}
.quick-form .button{min-height:60px;padding:0 30px;font-size:1.05rem}
.quick-form-hint{margin:14px 0 0;font-size:.88rem;color:var(--muted)}
.quick-form-hint a{font-weight:700;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}
@media(max-width:680px){
  .quick-form{padding:22px 20px 20px;box-shadow:7px 7px 0 var(--ink)}
  .quick-form input{font-size:1.1rem}
  .quick-form .button{min-height:54px;width:100%}
}

/* Contextual route into the solver from library pages */
.solver-cta{padding-top:0}
.solver-cta-inner{max-width:1400px;margin:auto;display:grid;grid-template-columns:minmax(0,1.4fr) auto;gap:40px;align-items:center;background:var(--ink);color:var(--paper);padding:38px 42px}
.solver-cta-inner>div{min-width:0}
.solver-cta .kicker{color:var(--yellow)}
.solver-cta h2{margin:12px 0 10px;font-size:clamp(1.6rem,2.6vw,2.3rem);color:var(--paper);text-wrap:balance}
.solver-cta p{margin:0;color:color-mix(in srgb,var(--paper) 78%,transparent);max-width:60ch;font-size:1rem}
.solver-cta-actions{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.solver-cta-actions .text-link{color:var(--paper);border-bottom-color:color-mix(in srgb,var(--paper) 50%,transparent)}
@media(max-width:900px){
  .solver-cta-inner{grid-template-columns:minmax(0,1fr);gap:24px;padding:28px 22px}
  .solver-cta-actions{align-items:stretch}
  .solver-cta-actions .button{width:100%}
  .solver-cta-actions .text-link{text-align:center}
}

/* Saved solver history (/history and /history/<id>). The list reuses the profile
   card grid; the thread only needs the reading column and the two speaker
   treatments. `.history-answer-raw` keeps the stored Markdown legible before
   site.js replaces it with rendered HTML, and is removed once it has. */
.history-card h3 a{border-bottom:1px solid var(--line)}
.history-card h3 a:hover{border-bottom-color:var(--red)}
.history-card>p{margin-top:22px}
.history-open{font-size:.8rem;font-weight:700;border-bottom:1px solid var(--ink)}
.history-thread{max-width:900px;margin:0 auto;padding:70px 20px 130px}
.history-message{padding:30px 0;border-top:1px solid var(--line)}
.history-message:first-child{border-top:0}
.history-message .kicker{display:block;margin-bottom:14px}
.history-user{border-left:4px solid var(--red);padding-left:26px}
.history-question{margin:0;font:400 1.1rem/1.7 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere}
.history-answer-raw{white-space:pre-wrap;overflow-wrap:anywhere;font:400 .95rem/1.7 var(--mono)}
.history-thread-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:50px;padding-top:35px;border-top:1px solid var(--ink)}
.history-thread-actions form{margin:0}
@media(max-width:680px){
  .history-thread{padding:40px 14px 90px}
  .history-user{padding-left:16px}
  .history-thread-actions{display:grid}
  .history-thread-actions .button{width:100%}
}
.auth-history{align-self:center;font-size:.78rem;font-weight:700;color:var(--muted);white-space:nowrap}
.auth-history:hover{color:var(--ink)}
.footer-account a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1050px){.auth-history{display:none}}

/* History pagination */
.history-pager{display:flex;align-items:center;gap:16px;margin:34px 0 0;flex-wrap:wrap}
.history-pager span{font:500 .78rem var(--mono);color:var(--muted)}

/* Direct routes from a level hub into each course's practice set */
.level-practice-jump{padding-top:0}
.jump-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0;margin:0;padding:0;border-top:1px solid var(--ink);border-left:1px solid var(--ink)}
.jump-list li{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.jump-list a{display:block;padding:16px 20px;font-weight:600;font-size:.95rem}
.jump-list a:hover{background:var(--paper-2);color:var(--red)}

/* Magazine cross-link on subject hubs */
.hub-article{padding-top:0}
.hub-article-card{display:block;max-width:1400px;margin:auto;border:1px solid var(--ink);padding:26px 30px;background:var(--white);transition:background .2s}
.hub-article-card:hover{background:var(--paper-2)}
.hub-article-card h3{font-size:1.4rem;margin:0 0 8px;letter-spacing:-.02em}
.hub-article-card p{margin:0 0 12px;color:var(--muted);max-width:70ch}
.hub-article-card b{font-size:.85rem}

/* Brand asset and current homepage solver dimensions. Kept outside the legacy
   minified foundation so small identity changes cannot disturb core layout. */
.brand-mark{width:38px;height:38px;flex:0 0 auto;border-radius:50%;object-fit:contain}
.quick-solve{transform:translateY(-40px)}
.quick-form{max-width:1120px;padding:30px 32px 26px;border-width:2px;box-shadow:12px 12px 0 var(--ink)}
.quick-form label{font:600 .82rem var(--mono);letter-spacing:.11em;color:var(--muted);margin-bottom:14px}
.quick-form>div{gap:16px;align-items:stretch}
.quick-form input{padding:14px 6px;border-bottom-width:2px;font-size:1.3rem}
@media(max-width:680px){
  .brand-mark{width:30px;height:30px}
  .quick-form{padding:22px 20px 20px;box-shadow:7px 7px 0 var(--ink)}
  .quick-form input{font-size:1.1rem}
}
