:root{color-scheme:light;--ink:#243d3b;--muted:#5f6e6d;--teal:#236d62;--line:#dce3dd;--paper:#f6f7f2;--white:#fff;--mint:#e7f0e9;font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:calc(15px * var(--ts, 1));line-height:1.5;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body{margin:0}a{color:inherit}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #ba622e;outline-offset:4px}button{border:1px solid #cdd8d1;background:white;padding:10px 17px;border-radius:7px;color:var(--ink);font-weight:600}button:hover:not(:disabled){background:#eaf1eb}.primary{background:var(--teal);color:white;border-color:var(--teal)}.primary:hover:not(:disabled){background:#18574e}h1,h2,h3,p{margin:0}h1{font-size:calc(40px * var(--ts, 1));letter-spacing:-1.5px;line-height:1.15;font-weight:650}h2{font-size:calc(24px * var(--ts, 1));letter-spacing:-.6px;font-weight:650}h3{font-size:calc(15.5px * var(--ts, 1));font-weight:650}p{color:var(--muted)}.site-header{height:80px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 max(32px,calc((100vw - 1440px)/2));gap:20px;background:#fafbf7}.brand{display:flex;align-items:center;gap:12px;font-size:calc(18px * var(--ts, 1));font-weight:700;letter-spacing:-.5px;text-decoration:none}.brand-icon{background:var(--teal);color:white;border-radius:9px;display:grid;place-items:center;width:33px;height:35px;font-size:calc(26px * var(--ts, 1))}.header-note,.back-link{font-size:calc(14px * var(--ts, 1));color:var(--muted)}.back-link{text-decoration:none}.eyebrow{font-size:calc(13px * var(--ts, 1));font-weight:750;letter-spacing:1.9px;color:var(--teal);margin-bottom:10px}.catalog{max-width:1280px;margin:auto;padding:76px 32px 60px}.catalog h1{font-size:calc(64px * var(--ts, 1));letter-spacing:-2.6px}.catalog h1 span{color:var(--teal)}.intro{font-size:calc(17.5px * var(--ts, 1));margin-top:22px;max-width:500px}.catalog-heading{display:flex;justify-content:space-between;align-items:center;margin:62px 0 20px;gap:15px}.catalog-heading h2{font-size:calc(18px * var(--ts, 1))}.catalog-heading>span{font-size:calc(13.5px * var(--ts, 1));color:var(--muted)}.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.module-card{border:1px solid var(--line);background:#fcfcf9;border-radius:12px;padding:23px;min-height:330px;text-decoration:none;display:flex;flex-direction:column}.module-card.available{background:#fff;border-color:#89afa0;box-shadow:0 5px 20px #254e3b07;transition:transform .15s}.module-card.available:hover{transform:translateY(-3px);border-color:var(--teal)}.card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.module-number{font:calc(14px * var(--ts, 1)) Consolas,monospace;color:var(--muted)}.badge{font-size:calc(13px * var(--ts, 1));font-weight:600;border-radius:5px;padding:4px 8px;background:var(--mint);color:#28634c;white-space:nowrap}.badge.muted{background:#edf0eb;color:#63706a}.module-art{font:italic calc(34px * var(--ts, 1)) Georgia,serif;color:var(--teal);height:105px;display:flex;align-items:center;gap:10px}.module-art span{color:#8ea79c}.muted-art{color:#65736b}.module-card h2{font-size:calc(19px * var(--ts, 1));margin-bottom:10px}.module-card p{font-size:calc(14px * var(--ts, 1));line-height:1.7}.card-link{border-top:1px solid var(--line);margin-top:22px;padding-top:14px;display:flex;justify-content:space-between;color:var(--teal);font-weight:650;font-size:calc(14px * var(--ts, 1))}.learning-loop{margin-top:46px;padding:25px 0;border-top:1px solid var(--line);display:flex;gap:28px;justify-content:center;color:#616f67;font-size:calc(14px * var(--ts, 1))}.learning-loop strong{color:var(--ink);margin-left:8px;font-weight:500}footer{max-width:1440px;margin:auto;border-top:1px solid var(--line);padding:23px 32px;display:flex;justify-content:space-between;gap:15px;font-size:calc(13.5px * var(--ts, 1));color:var(--muted)}.lab{max-width:1504px;margin:auto;padding:34px 32px}.lab-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;gap:20px}.lab-heading p:last-child{margin-top:9px}.lab-tag{font-size:calc(13.5px * var(--ts, 1));color:var(--teal);border:1px solid #cdded0;padding:7px 12px;border-radius:20px;white-space:nowrap}.lab-tag span{font-size:calc(11.5px * var(--ts, 1));margin-right:6px}.law-nav{display:flex;border-bottom:1px solid var(--line);gap:32px;margin-bottom:30px}.law-nav>a,.law-nav>span{display:flex;align-items:center;gap:10px;padding:13px 0;font-size:calc(14.5px * var(--ts, 1));white-space:nowrap}.law-nav>a{border-bottom:3px solid var(--teal);text-decoration:none;font-weight:650}.law-nav>span{color:#5f6e6d}.law-nav b{font-size:calc(13px * var(--ts, 1));font-family:Consolas,monospace;font-weight:400}.law-nav small{font-size:calc(12px * var(--ts, 1));border:1px solid var(--line);border-radius:4px;padding:2px 5px}.experiment-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.experiment-heading h2{font-size:calc(26px * var(--ts, 1))}.experiment-heading p:last-child{font-size:calc(14px * var(--ts, 1));margin-top:5px}.mode-switch{display:flex;background:#e7ece5;padding:4px;border-radius:8px}.mode-switch button{font-size:calc(13.5px * var(--ts, 1));background:transparent;border-color:transparent;padding:8px 15px}.mode-switch button[aria-pressed=true]{background:white;border-color:var(--line);box-shadow:0 1px 3px #1f3f3210}.workspace{display:grid;grid-template-columns:245px minmax(340px,1fr) 300px;gap:18px;align-items:stretch}.panel{background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:19px 20px;border-bottom:1px solid #edf0ec}.panel-heading>span{font-size:calc(12px * var(--ts, 1));letter-spacing:1px;color:var(--muted)}fieldset{border:0;margin:0;padding:0;min-width:0}.controls>fieldset{padding:22px 20px 4px}.control{margin-bottom:24px}.control label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:calc(14px * var(--ts, 1));font-weight:550}.control output{padding:3px 7px;border:1px solid #e1e8df;background:#f6f8f3;border-radius:5px;font-size:calc(14px * var(--ts, 1));color:var(--teal);font-variant-numeric:tabular-nums}.control input{width:100%;accent-color:var(--teal);margin:16px 0 8px;cursor:pointer;height:18px}.range-ends{display:flex;justify-content:space-between;font-size:calc(12px * var(--ts, 1));color:var(--muted)}.friction{display:flex;justify-content:space-between;align-items:center;margin:0 20px;font-size:calc(14px * var(--ts, 1));border-top:1px solid var(--line);padding-top:14px}.help{font-size:calc(13px * var(--ts, 1));line-height:1.65}.controls>.help{margin:8px 20px 17px}.equation{margin:20px;background:#edf3ed;padding:17px 10px;text-align:center;display:flex;flex-direction:column;gap:7px;border-radius:7px}.equation>span:first-child{font-size:calc(11.5px * var(--ts, 1));letter-spacing:1px;color:var(--muted)}.equation strong{font:italic calc(27px * var(--ts, 1)) Georgia,serif}.equation sub{font-size:calc(15.5px * var(--ts, 1))}.equation>span:last-child{font-size:calc(13px * var(--ts, 1));color:var(--teal)}.status{border:1px solid #d7e5d8;border-radius:10px;padding:3px 9px;letter-spacing:0!important;color:var(--teal)!important}.scene{background:linear-gradient(#fafcf9,#f4f7f0);border-bottom:1px solid #edf0ec;min-height:240px;display:flex;align-items:center;padding:5px 0}.scene svg{width:100%;display:block}.rail{stroke:#6d8175;stroke-width:3}.axis,.ticks path{stroke:#a7b3aa;stroke-width:1}.ticks text{font-size:13.5px;fill:#5f6e6d;text-anchor:middle}.origin{stroke:#cad7ca;stroke-dasharray:4 5}.limit{stroke:#839586;stroke-width:3}.scene-note{font-size:12.5px;letter-spacing:.8px;text-anchor:middle;fill:#5f6e6d}.cart-body{fill:#337a68}.cart-highlight{stroke:#82b8a0;stroke-width:2}.wheel{fill:#2b403b;stroke:#fff;stroke-width:2}.cart-mass{font-size:12.5px;fill:white;text-anchor:middle}.force-arrow{stroke:#c24c2a;stroke-width:3;fill:none}.force-label{font-size:14.5px;fill:#a83d20;text-anchor:middle;font-weight:600}.readouts{display:grid;grid-template-columns:repeat(4,1fr);padding:20px 10px;gap:8px}.readouts>div{text-align:center;border-right:1px solid var(--line)}.readouts>div:last-child{border:0}.readouts span{display:block;color:var(--muted);font-size:calc(13px * var(--ts, 1));margin-bottom:7px}.readouts strong{font-size:calc(20px * var(--ts, 1));font-weight:600;white-space:nowrap;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.readouts small{font-size:calc(13px * var(--ts, 1));font-weight:400;color:var(--muted)}.transport{display:flex;justify-content:center;gap:8px;padding:0 16px}.transport button{font-size:calc(13.5px * var(--ts, 1));padding:10px 13px}.run-message{font-size:calc(13.5px * var(--ts, 1));text-align:center;margin:13px 20px;min-height:34px}.track-note{border-top:1px solid var(--line);margin:14px 20px 20px;padding-top:13px;font-size:calc(13px * var(--ts, 1))}.track-note strong{font-weight:600}.track-note p{margin-top:4px;line-height:1.7}.graph-help{font-size:calc(13px * var(--ts, 1));margin:11px 18px 5px}.graphs svg{display:block;width:100%;height:auto}.graph-unit{font-size:16px;fill:#415c53;font-weight:600}.graph-tick{font-size:15px;fill:#67776c}.graph-grid{stroke:#e3e9e2;stroke-width:1;fill:none}.graph-zero{stroke:#adbdb0;stroke-width:1;stroke-dasharray:3 3;fill:none}.graph-footnote{margin:5px 18px 14px}.activity{display:grid;grid-template-columns:1fr 1.4fr;gap:20px 35px;padding:25px 28px;margin-top:20px}.activity h2{font-size:calc(22px * var(--ts, 1));margin-bottom:10px}.activity-intro>p:last-child{font-size:calc(14px * var(--ts, 1));line-height:1.75}.choices{display:flex;flex-direction:column;gap:8px;margin-bottom:15px}.choices label{border:1px solid var(--line);padding:9px 12px;display:flex;align-items:center;gap:8px;border-radius:6px;font-size:calc(14px * var(--ts, 1));cursor:pointer}.choices label:has(input:checked){border-color:var(--teal);background:#f0f6ef}.choices input{accent-color:var(--teal)}#prediction-form>button{font-size:calc(13.5px * var(--ts, 1))}#prediction-status{font-size:calc(13.5px * var(--ts, 1));display:inline;margin-left:12px}.numeric-prediction{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.numeric-prediction label{font-size:calc(14px * var(--ts, 1))}.numeric-prediction input{display:block;width:100%;margin-top:8px;border:1px solid #bfcfc4;padding:10px;border-radius:5px;min-width:0}.numeric-prediction p{font-size:calc(13px * var(--ts, 1));grid-column:1/-1}.feedback{grid-column:1/-1;padding:17px 20px;border-left:3px solid var(--teal);background:#edf4ec;font-size:calc(14px * var(--ts, 1));line-height:1.8;border-radius:4px}.lab-footnote{font-size:calc(13px * var(--ts, 1));text-align:center;margin:23px 20px 0}.skip{position:absolute;top:-60px;background:white;padding:10px;z-index:10}.skip:focus{top:5px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
@media(min-width:1500px){.scene{min-height:280px}.readouts{padding:25px 10px}.transport{margin-top:6px}}
@media(max-width:1200px){.workspace{grid-template-columns:240px minmax(0,1fr)}.graphs{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.graphs .panel-heading,.graph-help,.graph-footnote{grid-column:1/-1}.graphs svg{padding:4px}.lab-tag{display:none}.module-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.site-header{padding:0 20px;height:68px}.brand{font-size:calc(16px * var(--ts, 1));gap:8px}.header-note{display:none}.back-link{font-size:calc(13px * var(--ts, 1))}.catalog{padding:45px 20px 30px}.catalog h1{font-size:calc(47px * var(--ts, 1))}.intro{font-size:calc(16px * var(--ts, 1))}.catalog-heading{margin-top:38px;align-items:start;flex-direction:column}.module-grid{gap:12px}.module-card{padding:18px}.module-card h2{font-size:calc(17.5px * var(--ts, 1))}.learning-loop{flex-direction:column;gap:12px}.learning-loop>span:nth-child(even){display:none}.lab{padding:26px 16px}.lab h1{font-size:calc(32px * var(--ts, 1))}.law-nav{gap:16px;overflow:auto}.law-nav>a,.law-nav>span{font-size:calc(13.5px * var(--ts, 1))}.experiment-heading{align-items:start;flex-direction:column}.mode-switch{align-self:stretch}.mode-switch button{flex:1}.workspace{grid-template-columns:1fr;gap:14px}.controls>fieldset{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.control label{flex-direction:column;align-items:start}.controls .equation{margin:15px 20px;flex-direction:row;justify-content:space-between;align-items:center;gap:10px}.equation strong{font-size:calc(23px * var(--ts, 1))}.equation>span:first-child{max-width:70px;text-align:left}.graphs{display:block;grid-column:auto}.graphs svg{width:100%;max-height:230px}.activity{grid-template-columns:1fr;padding:23px 20px;gap:20px}.activity h2{font-size:calc(21px * var(--ts, 1))}.readouts strong{font-size:calc(21px * var(--ts, 1))}.scene{min-height:200px}.transport button{font-size:calc(14px * var(--ts, 1))}.lab-footnote{margin-left:0;margin-right:0}footer{padding:20px;flex-direction:column;gap:5px}#prediction-status{display:block;margin:10px 0 0}}
@media(max-width:440px){.module-grid{grid-template-columns:1fr}.module-card{min-height:280px}.module-art{height:85px}.brand{font-size:calc(14.5px * var(--ts, 1))}.brand-icon{width:27px;height:29px;font-size:calc(22px * var(--ts, 1))}.readouts strong{font-size:calc(18px * var(--ts, 1))}.readouts small{font-size:calc(12px * var(--ts, 1))}.range-ends{font-size:calc(11.5px * var(--ts, 1))}.numeric-prediction{grid-template-columns:1fr}.controls .equation{flex-wrap:wrap}.transport{gap:6px}.transport button{padding:9px 10px;font-size:calc(13.5px * var(--ts, 1))}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Guided activities extend the existing lab without changing free exploration. */
.experience-selector{width:fit-content;margin:0 0 20px}.guided-intro,.guided-results,.guided-feedback,.reflection{padding:24px;margin:0 0 20px}.guided-intro h2{margin:20px 0 12px}.guided-intro h3{margin:14px 0 5px}.guided-intro>label{display:block;font-weight:600;margin-bottom:7px}.guided-intro select{max-width:100%;font:inherit;color:var(--ink);background:white;border:1px solid var(--line);border-radius:6px;padding:10px}.guided-intro p{font-size:calc(14.5px * var(--ts, 1))}.guided-intro .help{margin:16px 0}.guided-intro form{border-top:1px solid var(--line);padding-top:18px;margin-top:18px;max-width:760px}.guided-intro legend{font-weight:600;margin-bottom:13px}.guided-intro form>p{margin-top:10px}.guided-results,.guided-feedback,.reflection{margin:20px 0 0}.guided-results h2,.reflection h2{margin-bottom:12px}.guided-feedback{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:#f0f6ef}.guided-feedback h3{margin-bottom:6px}.guided-feedback p,.guided-results p,.reflection p{font-size:calc(14.5px * var(--ts, 1));line-height:1.75}.reflection label{display:block;margin:14px 0 8px}.reflection textarea{display:block;resize:vertical;width:100%;font:inherit;padding:12px;border:1px solid #bfcfc4;border-radius:6px;color:var(--ink)}.reflection button{margin:14px 0}.reflection section{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.reflection textarea:focus-visible,.guided-intro select:focus-visible{outline:3px solid #ba622e;outline-offset:3px}.guided-results:focus{outline:none}@media(max-width:760px){.experience-selector{width:100%}.guided-feedback{grid-template-columns:1fr}.guided-intro,.guided-results,.guided-feedback,.reflection{padding:18px}}
.transport{flex-wrap:wrap}.comparison-table-panel{overflow-x:auto;margin-top:18px}.comparison-table-panel table{border-collapse:collapse;width:100%;font-size:calc(14.5px * var(--ts, 1));text-align:left}.comparison-table-panel caption{text-align:left;font-weight:600;margin-bottom:12px}.comparison-table-panel th,.comparison-table-panel td{border-bottom:1px solid var(--line);padding:10px 12px}.comparison-table-panel thead{background:#edf3ed}.comparison-table-panel td{font-variant-numeric:tabular-nums}.comparison-table-panel .help{margin-top:12px}
/* Optional friction controls and signed force diagnostics. */
.controls>.friction-settings{padding:12px 20px 4px;border-top:1px solid var(--line);margin:0 0 10px;display:block}.friction-toggle{display:flex;align-items:center;gap:9px;font-weight:600;font-size:calc(14px * var(--ts, 1));margin-bottom:14px}.friction-toggle input{accent-color:var(--teal);width:18px;height:18px}#coefficient-controls .control{margin-bottom:12px}#coefficient-controls input{margin:10px 0}.force-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:calc(13.5px * var(--ts, 1));padding:12px 18px;border-bottom:1px solid var(--line)}.force-legend p{width:100%;font-size:calc(13px * var(--ts, 1))}.applied-key{color:#a83d20}.friction-key{color:#7851a9}.net-key{color:#236d62}.friction-arrow,.net-arrow{fill:none;stroke-width:3}.friction-arrow{stroke:#7851a9}.net-arrow{stroke:#236d62}.friction-label,.net-label{font-size:13.5px;text-anchor:middle;font-weight:600}.friction-label{fill:#7851a9}.net-label{fill:#236d62}.force-readouts{padding:0 18px 15px;font-size:calc(13.5px * var(--ts, 1))}.force-readouts dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 12px}.force-readouts dl>div{background:#f5f8f3;padding:9px;border-radius:6px}.force-readouts dt{color:var(--muted);font-size:calc(13px * var(--ts, 1))}.force-readouts dd{margin:4px 0 0;font-weight:600;font-size:calc(15.5px * var(--ts, 1));font-variant-numeric:tabular-nums}.force-readouts>p{margin-top:5px}#motion-events{min-height:18px;color:var(--teal)}@media(max-width:760px){.controls>.friction-settings{display:block}.comparison-table-panel th,.comparison-table-panel td{padding:9px 7px}}

/* Keep law tabs contained at intermediate tablet widths. */
.law-nav{overflow-x:auto;max-width:100%}

.law-nav>a:not([aria-current="page"]){border-bottom:0;font-weight:400;color:var(--muted)}
/* Header text-size control (js/text-size.js) */
.site-header{height:auto;min-height:80px}
.header-tools{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:flex-end}
.text-size{display:flex;align-items:center;gap:4px;background:#e7ece5;padding:3px;border-radius:8px}
.text-size-caption{font-size:calc(12px * var(--ts, 1));color:#4b5958;padding:0 6px 0 4px}
.text-size button{background:transparent;border-color:transparent;padding:4px 9px;min-width:36px;min-height:32px;line-height:1;font-weight:700;color:var(--ink)}
.text-size .text-size-base{font-size:13px}.text-size .text-size-large{font-size:16px}.text-size .text-size-xlarge{font-size:19px}
.text-size button[aria-pressed=true]{background:white;border-color:var(--line);box-shadow:0 1px 3px #1f3f3210}
@media(max-width:760px){.site-header{min-height:68px;padding-top:8px;padding-bottom:8px;flex-wrap:wrap;row-gap:8px}.header-tools{gap:10px}}
@media(max-width:440px){.text-size-caption{display:none}.text-size button{min-width:40px;min-height:36px}}
/* Resizable motion-graph column (js/components/column-resizer.js) */
@media(min-width:1201px){.workspace.resizable-graphs{grid-template-columns:245px minmax(320px,1fr) var(--graph-col,360px)}}
.graphs{position:relative}
.column-resizer{position:absolute;left:0;top:0;bottom:0;width:16px;cursor:col-resize;touch-action:none;z-index:2;display:flex;align-items:center;justify-content:center}
.column-resizer span{width:5px;height:56px;border-radius:3px;background:#c3d1c6}
.column-resizer:hover span,.column-resizer:focus-visible span,.resizing .column-resizer span{background:var(--teal)}
.column-resizer:focus-visible{outline:3px solid #ba622e;outline-offset:-3px}
.resizing{cursor:col-resize;user-select:none}
.graph-size{display:flex;align-items:center;gap:4px;margin-left:auto}
.graph-size>span{font-size:calc(12px * var(--ts, 1));color:#4b5958;margin-right:2px}
.graph-size button{padding:2px 0;width:32px;height:30px;font-size:calc(18px * var(--ts, 1));line-height:1}
.graphs .panel-heading{flex-wrap:wrap}
@media(max-width:1200px){.column-resizer,.graph-size{display:none}}
@media(min-width:1201px){.graphs svg{padding-left:12px}}
/* Force display: arrows on the cart and free-body diagram (js/components/force-display.js) */
.forces-on #force-arrow,.forces-on #force-label,.forces-on #extra-forces{display:none!important}
.fd-arrow{stroke-width:3.5;fill:none;stroke-linecap:round}
.fd-label{font-size:16px;font-weight:700;font-style:italic;font-family:Georgia,"Times New Roman",serif;paint-order:stroke;stroke:#fbfcf8;stroke-width:4px;stroke-linejoin:round}
.forces-on-object .fd-label{font-size:18px}
.fbd-dot{fill:#243d3b}
.force-views{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px 24px;padding:14px 20px;border-bottom:1px solid var(--line)}
.force-options{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;flex:1 1 260px}
.force-options legend{float:left;font-size:calc(13.5px * var(--ts, 1));font-weight:650;margin-right:4px}
.force-options label{display:flex;align-items:center;gap:7px;font-size:calc(14px * var(--ts, 1));cursor:pointer;min-height:32px}
.force-options input{accent-color:var(--teal);width:18px;height:18px}
.force-options label:has(input:disabled){color:#8a9792;cursor:default}
.force-options .help{flex-basis:100%;margin:0}.force-options .help:empty{display:none}
.fbd-panel{margin:0;flex:0 1 340px;border:1px solid var(--line);border-radius:8px;background:#fbfcf8;padding:6px 10px 10px}
.fbd-panel svg{display:block;width:100%;max-width:360px;margin:auto}
.fbd-panel figcaption{font-size:calc(12.5px * var(--ts, 1));color:var(--muted);line-height:1.5}
.fd-backdrop{fill:#f7f9f4;fill-opacity:.9}
.graph-event{paint-order:stroke;stroke:#fff;stroke-width:4px;stroke-linejoin:round}
@media(max-width:440px){.catalog h1{font-size:calc(38px * var(--ts, 1))}}

/* Motion graphs are drawn 1 unit = 1 screen pixel, so their text follows the A / A+ / A++ control */
.motion-graph .graph-unit{font-size:calc(16px * var(--ts, 1))}.motion-graph .graph-tick{font-size:calc(15px * var(--ts, 1))}
/* Larger cart scene text and the position pointer under the cart's centre */
#cart-scene .ticks text{font-size:16px}#cart-scene .scene-note{font-size:14.5px}
.cart-pointer{fill:#236d62}
/* Demo mode switch and the predict-velocity / predict-acceleration choice */
.demo-toggle{display:flex;align-items:flex-start;gap:9px;margin:0 20px 18px;font-size:calc(13.5px * var(--ts, 1));line-height:1.45;cursor:pointer;color:var(--ink)}
.demo-toggle input{accent-color:var(--teal);width:18px;height:18px;margin:1px 0 0;flex:none}
.predict-target{display:inline-flex;margin-bottom:12px}
.predict-target button{font-size:calc(13.5px * var(--ts, 1))}
/* Solve it: the Run-it graph column can be resized too (no controls column on that page) */
@media(min-width:1201px){.workspace.solve-workspace.resizable-graphs{grid-template-columns:minmax(320px,1fr) var(--graph-col,360px)}}
