/* Same warm palette; solid vs. outline encoding also works without color. */
#speed-visual{margin:48px 0 42px;min-width:0}
#speed-visual .sv-panel{border:1px solid rgba(172,128,86,.36);border-radius:28px;padding:34px;background:rgba(255,250,242,.52);min-width:0}
#speed-visual .sv-eyebrow{font-size:16px;line-height:1.7;color:#806349;display:block;margin-bottom:14px}
#speed-visual .sv-header h3{font-size:clamp(28px,3.4vw,38px);line-height:1.45;letter-spacing:-.025em;margin:0 0 16px;font-weight:500}
#speed-visual .sv-header p{font-size:18px;line-height:1.8;color:#705a46;margin:0}
#speed-visual .sv-controls{margin-top:28px}
#speed-visual .sv-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
#speed-visual .sv-tabs button{appearance:none;border:1px solid #d7b697;background:rgba(255,253,248,.55);border-radius:16px;padding:15px 12px;font:inherit;font-size:18px;line-height:1.5;color:#4c392a;text-align:left;cursor:pointer;transition:background .18s,border-color .18s}
#speed-visual .sv-tabs button span{display:block;font-size:15px;color:#8d6749;margin-bottom:4px;letter-spacing:.03em}
#speed-visual .sv-tabs button[aria-selected=true]{background:#efd0ad;border-color:#b47d4c;box-shadow:inset 0 -3px 0 #b47d4c}
#speed-visual .sv-tabs button:hover{border-color:#a87953}
#speed-visual button:focus-visible,#speed-visual a:focus-visible{outline:3px solid #ba7a48;outline-offset:4px}
#speed-visual .sv-legend{display:flex;gap:26px;align-items:center;flex-wrap:wrap;font-size:16px;line-height:1.6;color:#705943;margin:23px 0 0}
#speed-visual .sv-legend>span{display:flex;align-items:center;gap:9px}
#speed-visual .sv-key{display:inline-block;width:26px;height:14px;border-radius:4px;border:1px solid #b28863;flex:none}
#speed-visual .sv-key-before{background:#e3c4a3}
#speed-visual .sv-key-after{background:#a9663d;border-color:#a9663d}
#speed-visual .sv-chart{margin-top:30px}
#speed-visual .sv-chart-heading{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin-bottom:22px}
#speed-visual .sv-chart-heading h4{font-size:22px;line-height:1.6;font-weight:500;margin:0;color:#3e2e23}
#speed-visual #sv-unit{font-size:16px;line-height:1.6;color:#86664a;white-space:nowrap}
#speed-visual .sv-axis{padding-left:82px;padding-right:104px;height:30px}
#speed-visual .sv-axis-ticks{position:relative;height:100%;border-bottom:1px solid #d0b08d}
#speed-visual .sv-axis-ticks span{position:absolute;transform:translateX(-50%);font-size:16px;color:#8a6d51;top:0;line-height:1.5}
#speed-visual .sv-axis-ticks span:first-child{transform:none}
#speed-visual .sv-axis-ticks span:last-child{transform:translateX(-100%)}
#speed-visual .sv-page{padding:24px 0 27px;border-bottom:1px solid rgba(169,121,78,.22)}
#speed-visual .sv-page-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:14px}
#speed-visual .sv-page-heading h5{font-size:21px;line-height:1.5;margin:0;font-weight:500;color:#3c2d22}
#speed-visual .sv-delta{font-size:18px;line-height:1.5;color:#88512c;font-weight:500}
#speed-visual .sv-delta-flat{color:#786b5c}
#speed-visual .sv-pair{display:grid;gap:12px}
#speed-visual .sv-bar-row{display:grid;grid-template-columns:72px minmax(0,1fr) 94px;gap:10px;align-items:center;min-width:0}
#speed-visual .sv-series-name{font-size:16px;line-height:1.5;color:#80664e}
#speed-visual .sv-track{height:24px;position:relative;border-left:1px solid #cfaf8b;background:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--sv-grid-step) - 1px),rgba(161,121,83,.15) calc(var(--sv-grid-step) - 1px),rgba(161,121,83,.15) var(--sv-grid-step));min-width:0}
#speed-visual .sv-bar{height:100%;min-width:0;border-radius:0 5px 5px 0;transition:width .55s cubic-bezier(.22,.68,.24,1);box-sizing:border-box}
#speed-visual .sv-bar-before{background:#e3c4a3;border:1px solid #b58e68}
#speed-visual .sv-bar-after{background:#a9663d;border:1px solid #a9663d}
#speed-visual .sv-value{font-size:18px;font-weight:500;line-height:1.5;white-space:nowrap;text-align:right;color:#57402f;font-variant-numeric:tabular-nums}
#speed-visual .sv-value-after{color:#85512f}
#speed-visual .sv-reading{font-size:19px;line-height:1.85;color:#5b4432;margin:26px 0 0;padding-left:18px;border-left:3px solid #bd8b5a}
#speed-visual .sv-footnote{margin-top:28px;border-top:1px solid #d8bfa3;padding-top:18px}
#speed-visual .sv-footnote p{font-size:15px;line-height:1.8;color:#806c57;margin:8px 0}
#speed-visual .sv-footnote b{font-weight:500;color:#6d5139}
#speed-visual .sv-footnote a,#speed-visual .sv-error a{color:inherit;text-decoration:underline;text-underline-offset:4px;margin-left:7px}
#speed-visual .sv-loading,#speed-visual .sv-error{font-size:18px;line-height:1.8;color:#725b46;padding:25px 0}
#speed-visual .sv-error button{font:inherit;border:1px solid #b88d64;border-radius:20px;background:#f2d6b9;color:#5d422d;padding:10px 18px;cursor:pointer}
@media(max-width:700px){
 #speed-visual .sv-panel{padding:24px 18px;border-radius:22px}
 #speed-visual .sv-tabs{gap:7px}
 #speed-visual .sv-tabs button{font-size:16px;padding:13px 10px}
 #speed-visual .sv-chart-heading{display:block}
 #speed-visual #sv-unit{display:block;margin-top:8px}
 #speed-visual .sv-axis{padding-left:66px;padding-right:94px}
 #speed-visual .sv-bar-row{grid-template-columns:58px minmax(0,1fr) 86px;gap:8px}
 #speed-visual .sv-series-name{font-size:15px}
 #speed-visual .sv-value{font-size:17px}
 #speed-visual .sv-delta{font-size:17px}
 #speed-visual .sv-page-heading h5{font-size:20px}
 #speed-visual .sv-legend{gap:14px;font-size:15px}
 #speed-visual .sv-reading{font-size:18px;padding-left:14px}
}
@media(prefers-reduced-motion:reduce){#speed-visual .sv-bar,#speed-visual .sv-tabs button{transition:none}}
