.explainer{margin:40px 0;padding:26px;border:1px solid var(--rule);border-radius:14px;background:var(--card)}
.explainer .ex-kicker{font:10px/1.5 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin:0 0 10px}
.explainer h2{font-size:29px;margin:0 0 16px}.explainer .ex-note,.explainer .ex-source,.explainer .ex-formula{font-size:16px;line-height:1.6}.explainer .ex-source{border-top:1px solid var(--rule);padding-top:16px;margin:20px 0 0;color:var(--muted)}
.ex-inputs{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}.ex-inputs label{display:block;font:11px/1.7 'DM Mono',monospace}.ex-inputs output{display:block;font-size:20px;color:var(--accent)}.ex-inputs input{display:block;width:100%;accent-color:var(--accent);margin:10px 0;min-height:24px}.ex-result{font-size:23px;line-height:1.45;padding:16px;background:var(--bg);border-radius:9px;min-height:90px}.ex-chart{display:block;width:100%;height:auto;margin:22px 0;color:var(--ink)}.ex-chart text{fill:currentColor;font:12px 'DM Mono',monospace}.ex-chart .series{stroke:var(--accent);fill:none;stroke-width:3}.ex-chart .axis{stroke:var(--rule)}.ex-chart .price{stroke:var(--muted);stroke-dasharray:6 4}.ex-chart circle{fill:var(--accent)}
@media(max-width:520px){.explainer{padding:18px}.ex-inputs{grid-template-columns:1fr}.explainer h2{font-size:26px}}
@media print{.ex-inputs{display:none}.explainer{break-inside:avoid}}
.delivery-controls{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.delivery-controls[hidden]{display:none}.delivery-controls button[aria-pressed=true]{background:var(--accent);color:var(--bg)}
.delivery-map{display:block;width:100%;height:auto;margin:20px 0}.delivery-map text{font:13px 'DM Mono',monospace;fill:var(--ink)}.cell-boundary{fill:var(--bg);stroke:var(--accent);stroke-width:3}.endosome{fill:var(--card);stroke:var(--muted);stroke-width:4}.annotation{stroke:var(--muted);fill:none}.rna-strand{stroke:#ba6541;stroke-width:4;fill:none}.rna-cargo{transition:transform .7s ease}.translation-site ellipse{fill:var(--accent);opacity:.35}.escape-route{stroke:var(--accent);stroke-width:2;stroke-dasharray:5 5;opacity:0}.delivery-diagram[data-state=escaped] .rna-cargo{transform:translateX(258px)}.delivery-diagram[data-state=escaped] .escape-route{opacity:1}.delivery-diagram[data-state=escaped] .translation-site ellipse{opacity:.8}.delivery-caption{font-size:19px;line-height:1.6}
@media(prefers-reduced-motion:reduce){.rna-cargo{transition:none}}@media print{.delivery-controls{display:none}}
