.chart-layout{display:grid;grid-template-columns:minmax(265px, .8fr) minmax(0,1.8fr);gap:20px;align-items:start}
.chart-layout .tool-card,.chart-table,.chart-info .tool-card{display:block}
.chart-layout h3{margin:1rem 0 0;font-size:1rem}
.chart-scroll{overflow-x:auto}
.chart-scroll:focus-visible,.chart-table-scroll:focus-visible{outline:3px solid #375f9b;outline-offset:2px}
.chart-output svg{display:block;width:100%;min-width:650px;height:auto;background:#fff;border:1px solid #dce7f3;border-radius:8px}
.chart-grid-line{stroke:#d6e1ec;stroke-width:1}
.chart-frame{fill:none;stroke:#304c70;stroke-width:1.5}
.chart-curve{fill:none;stroke:#5c8fb8;stroke-width:1.5}
.chart-saturation{stroke:#154f87;stroke-width:2.4}
.chart-tick,.chart-axis-label{font-size:15px;fill:#273e57}
.chart-rh-label{font-size:12px;fill:#225d87}
.chart-point{stroke:#fff;stroke-width:2}
.chart-point-a{fill:#e7473b}.chart-point-b{fill:#0968d5}
.chart-point-label{font-size:18px;font-weight:700;fill:#18344f}
.chart-warning{color:#8a4311;font-weight:600}
.chart-table,.chart-info{margin-top:20px}
.chart-table-scroll{overflow-x:auto}
.chart-table table{border-collapse:collapse;width:100%;min-width:360px}
.chart-table th,.chart-table td{padding:.65rem;text-align:left;border-bottom:1px solid #dce7f3}
.chart-table output{font-variant-numeric:tabular-nums}
@media(max-width:900px){.chart-layout{grid-template-columns:1fr}}
