/* DFD WEB 12.47.0 — extends the existing telemetry working surface. */
.ride-analysis{margin-top:24px;padding-top:20px;border-top:1px solid var(--border);font-size:16px;color:var(--text)}
.ride-analysis[hidden]{display:none!important}
.ra-heading,.ra-toolbar,.ra-range,.ra-legend,.ra-cursor{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ra-heading{justify-content:space-between;margin-bottom:12px}
.ra-heading h4{font-size:18px;letter-spacing:.04em}
.ra-badge{padding:5px 10px;border:1px solid var(--border);border-radius:5px;font-size:14px}
.ra-note{color:var(--text3);font-size:14px;line-height:1.5;margin:10px 0}
.ra-warning{color:var(--amber)}
.ra-toolbar{margin:16px 0;align-items:flex-end}
.ra-toolbar label,.ra-range label{display:flex;flex-direction:column;gap:5px;font-size:14px;color:var(--text2)}
.ride-analysis button,.ride-analysis select,.ride-analysis input[type=number]{font:inherit;min-height:40px;padding:8px 12px;background:var(--bg3);border:1px solid var(--border);border-radius:6px;color:var(--text)}
.ride-analysis button{cursor:pointer;font-size:14px;font-weight:700}
.ride-analysis button:disabled{opacity:.45;cursor:default}
.ride-analysis button:hover:not(:disabled){border-color:var(--red)}
.ride-analysis :focus-visible{outline:2px solid #2FB6F6;outline-offset:3px}
.ra-range input{width:110px}
.ra-legend{margin:16px 0 8px;font-size:15px}
.ra-line-key{width:28px;border-top:3px solid var(--red);display:inline-block;margin-right:6px;vertical-align:middle}
.ra-line-key.b{border-color:#2FB6F6;border-top-style:dashed}
.ra-chart{overflow-x:auto;background:var(--bg);border:1px solid var(--border);border-radius:8px}
.ra-chart svg{display:block;width:100%;min-width:620px;height:auto}
.ra-chart text{font-family:Arial,sans-serif;font-size:16px;fill:var(--text3)}
.ra-chart .ra-axis{stroke:var(--border);stroke-width:1}
.ra-chart .ra-path-a{stroke:var(--red);fill:none;stroke-width:2;vector-effect:non-scaling-stroke}
.ra-chart .ra-path-b{stroke:#2FB6F6;fill:none;stroke-width:2;stroke-dasharray:7 4;vector-effect:non-scaling-stroke}
.ra-cursor{margin-top:12px}
.ra-cursor input{flex:1;min-width:140px;accent-color:var(--red)}
.ra-cursor output{font-variant-numeric:tabular-nums;font-size:15px;min-width:85px}
.ra-table-wrap{overflow-x:auto;margin-top:18px}
.ra-table{width:100%;border-collapse:collapse;font-size:15px}
.ra-table th,.ra-table td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:right;vertical-align:top;font-variant-numeric:tabular-nums}
.ra-table th:first-child,.ra-table td:first-child{text-align:left}
.ra-table thead{color:var(--text2);background:var(--bg3)}
.ride-analysis .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}
.ra-empty{padding:22px 0;color:var(--text3)}
.ra-toolbar .ra-export-a{border-color:var(--red)}
.ra-toolbar .ra-export-b{border-color:#2FB6F6}
@media(max-width:600px){.ra-toolbar{align-items:stretch}.ra-toolbar>label{width:100%}.ra-toolbar>button{flex:1}.ra-range{gap:8px}.ra-range input{width:95px}.ra-table th,.ra-table td{padding:8px}.ra-heading h4{font-size:17px}}
