.op-card { min-width: 0; }
.op-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 20px; }
.op-grid > * { min-width: 0; }
#op-root .table-scroll { max-width: 100%; overflow-x: auto; }
#op-root th, #op-root td { font-variant-numeric: tabular-nums; white-space: nowrap; }
#op-root .qr-field input { width: 100%; min-width: 0; max-width: 100%; padding: 10px; border: 1px solid var(--line); border-radius: 8px; font: inherit; }
.op-chart { border: 1px solid var(--line); border-radius: 10px; overflow: hidden; background: #fff; }
.op-chart svg { display: block; width: 100%; height: auto; }
.op-record-table { min-width: 800px; }
.op-record-table td, .op-record-table th { white-space: nowrap; }
#op-records { max-height: 650px; overflow: auto; }
#op-root p { overflow-wrap: anywhere; }
@media(max-width:600px) { .op-grid { grid-template-columns: minmax(0,1fr); } #op-root .calc-table { font-size: .92rem; } }
