#rv-root { min-width: 0; }
#rv-root .table-scroll { max-width: 100%; overflow-x: auto; }
#rv-root .calc-table { min-width: 640px; }
#rv-root .rv-card { min-width: 0; }
.rv-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,210px),1fr)); gap: 1rem; }
.rv-grid > div { border: 1px solid var(--line); border-radius: 8px; padding: .8rem; min-width: 0; }
.rv-grid h3 { margin: 0; font-size: 1rem; }
.rv-grid p { margin: .5rem 0; }
.rv-links { display: flex; flex-wrap: wrap; gap: .8rem; margin: 1.5rem 0; }
.rv-figure { margin: 1rem 0; min-width: 0; }
.rv-chart { display: block; width: 100%; height: auto; }
.rv-line { fill: none; stroke: var(--brand); stroke-width: 2; }
.rv-dot { fill: var(--brand); }
.rv-bar { display: inline-block; width: 90px; height: 8px; background: var(--line); border-radius: 4px; overflow: hidden; }
.rv-bar > span { display: block; height: 100%; background: var(--brand); }
#rv-root .rv-table th, #rv-root .rv-table td { white-space: nowrap; }
#rv-order { box-sizing: border-box; width: 100%; max-width: 100%; margin: .5rem 0; }
