/* Topic-specific geometry; shared-theme owns the appearance palette. */
.brand{white-space:nowrap}.home-intro h1{font-size:clamp(46px,5vw,68px);line-height:1.08}.home-mark{max-width:390px;margin:auto}.home-mark .diagram{max-height:430px}
.claim-ref{font:11px/1.6 var(--sans);color:var(--quiet);white-space:normal}.article p{overflow-wrap:break-word}
.diagram .node{fill:var(--paper);stroke:var(--diagram-flow);stroke-width:1.5}.diagram .arrowhead{stroke-width:1.7}.visual .diagram.wide{max-width:510px;margin:auto}.visual .diagram.compact{max-width:290px;margin:auto}.diagram .small{font-size:15px}
.data-scroll{overflow:auto;max-width:100%;margin:25px 0;scrollbar-gutter:stable}.data-scroll table{border-collapse:collapse;width:100%;font:14px/1.6 var(--sans)}.data-scroll caption{text-align:left;font:13px/1.6 var(--sans);color:var(--quiet);margin-bottom:12px}.data-scroll th,.data-scroll td{text-align:left;border-bottom:1px solid var(--line);padding:10px 9px;vertical-align:top}.data-scroll th{font-weight:600}.data-scroll td{font-variant-numeric:tabular-nums}
.data-scroll:focus-visible,.math-display:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.bp-controls{display:grid;grid-template-columns:1.6fr 1fr;gap:20px;font:14px/1.5 var(--sans)}.bp-controls select{display:block;width:100%;min-height:46px;margin-top:8px;font:14px var(--sans);background:var(--paper);color:var(--ink);padding:8px;border:1px solid var(--control-border)}
.lab-buttons{display:flex;gap:9px;flex-wrap:wrap;margin:22px 0}.lab-buttons button{min-height:44px;font:13px var(--sans);padding:10px 12px;cursor:pointer;background:var(--paper);color:var(--ink);border:1px solid var(--control-border)}button:disabled{opacity:.48;cursor:default}
#lab-status{font:14px/1.7 var(--sans);padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:4.6em}.state-title{font:16px var(--sans)}.state-values{display:flex;gap:22px;flex-wrap:wrap}.state-values p{font:13px/1.5 var(--sans);margin:8px 0}.state-values strong{display:block;font:26px/1.3 var(--serif);font-variant-numeric:tabular-nums}.path-summary{font:13px/1.7 var(--sans);margin-top:20px}.proposal{border-left:3px solid var(--accent);padding:0 0 0 16px;margin:30px 0}.proposal p{font:14px/1.7 var(--sans)}.proposal h4{font:22px var(--serif)}
.history{margin-top:30px}.history-chart{max-width:580px;margin:auto}.diagram .loss-line{stroke:var(--accent);stroke-width:2.3}.diagram .loss-dot{stroke:var(--paper);stroke-width:1.5;fill:var(--accent)}.diagram .tick-max{font-size:12px}.history .data-scroll{margin-top:8px}
.fallback{border-top:1px solid var(--line);margin-top:28px;padding-top:8px}.js .fallback{display:none}.print-edition .fallback{display:block!important}.print-edition .interactive-only{display:none!important}
[hidden]{display:none!important}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.7 monospace;background:var(--wash);padding:18px;max-width:100%}.answer summary{cursor:pointer;min-height:44px}.answer{padding:14px 0!important}.math-display{padding:4px 1px}
@media(max-width:650px){.bp-controls{grid-template-columns:1fr}.lab-buttons{display:grid;grid-template-columns:1fr 1fr}.lab-buttons button{padding:10px 7px;font-size:12px}.data-scroll table{font-size:12px}.data-scroll td,.data-scroll th{padding:9px 5px}.visual .diagram.compact .small{font-size:14px}.visual .diagram.compact text{font-size:16px}.visual .diagram.compact .small{font-size:13px}.lab{margin:30px -6px}.home-intro h1{font-size:48px}.diagram.history-chart text{font-size:18px}.diagram.history-chart .tick-max{font-size:13px}.state-values{gap:16px}.state-values strong{font-size:23px}.brand{font-size:22px}.math-display{font-size:15px}}
@media(max-width:350px){.site-header{gap:6px}.brand{font-size:19px}.book-menu summary{padding:9px 6px}.header-right{gap:6px}.home{padding-left:22px;padding-right:22px}h1{font-size:42px}.home-intro h1{font-size:44px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.lab .interactive-only{display:none!important}.lab .fallback{display:block!important}.data-scroll{overflow:visible}.data-scroll table{font-size:9pt}.visual .diagram.wide{max-height:330px;width:auto;max-width:100%}.visual .diagram.compact{display:none!important}.math-display{font-size:10pt;overflow:visible}.proposal{border-color:black}.print-section>h1{font-size:27pt}.data-scroll tr{break-inside:avoid}.source-list li{break-inside:avoid}h2,h3{break-after:avoid}.home-intro{display:block}}
@media(max-width:650px){.diagram.history-chart.compact text,.diagram.history-chart.compact .small{font-size:14px}.history-chart.compact{max-width:300px}}
@media print{.data-scroll,.lab{break-inside:avoid}.visual .diagram.wide{max-height:400px}.print-section{padding-top:20px;padding-bottom:18px}.article .answer{break-inside:avoid}.print-edition .footer{break-inside:avoid}}
@media print{body{line-height:1.55}.article p{margin-top:12px;margin-bottom:12px}.print-edition .footer{display:none}}
@media print{pre,#three-sums,#what-autograd-does{break-inside:avoid}.article p{orphans:3;widows:3}}
