.pump-calc{--pump-ink:var(--ink,#163945);--pump-muted:var(--muted,#526f79);--pump-line:var(--line,#d8e4e7);--pump-accent:var(--accent,#176f83);color:var(--pump-ink);font:400 1rem/1.65 Inter,system-ui,sans-serif;max-width:1200px;margin-inline:auto;overflow-wrap:anywhere}
.pump-calc *{box-sizing:border-box}
.pump-calc [hidden]{display:none!important}
.pump-calc h2,.pump-calc h3,.pump-calc p,.pump-calc figure{margin:0}
.pump-calc h2{font-size:clamp(1.35rem,2.8vw,1.9rem);font-weight:550;letter-spacing:-.035em;line-height:1.2}
.pump-calc h3{font-size:1.12rem;font-weight:600;line-height:1.4}
.pump-calc p{max-width:76ch}
.pump-calc a{color:var(--pump-accent);text-underline-offset:.2em}
.pump-calc__intro{display:grid;gap:14px;margin-block:20px 30px}
.pump-calc__intro>p{color:var(--pump-muted)}
.pump-calc .pump-calc__formula{color:var(--pump-ink);padding:15px 18px;border-left:3px solid var(--pump-accent);background:#edf5f5;font-size:1.05rem;font-variant-numeric:tabular-nums;white-space:pre-wrap}
.pump-calc__workspace{display:grid;gap:28px;align-items:start}
.pump-calc form,.pump-calc fieldset{min-width:0;margin:0;padding:0;border:0}
.pump-calc legend{font-size:1.12rem;font-weight:600;margin-bottom:12px;padding:0}
.pump-calc fieldset:disabled{opacity:.72}
.pump-calc__fields{display:grid;grid-template-columns:minmax(0,1fr);gap:19px;margin-block:20px}
.pump-calc__field{display:flex;flex-direction:column;gap:6px;min-width:0}
.pump-calc__field label{font-size:.9rem;font-weight:600;line-height:1.45}
.pump-calc__unit{display:block;font-size:.79rem;color:var(--pump-muted);font-weight:400}
.pump-calc__field input{display:block;width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid #a8bfc5;border-radius:5px;background:#fff;color:var(--pump-ink);font:inherit;font-variant-numeric:tabular-nums}
.pump-calc__field input[aria-invalid=true]{border:2px solid #a12b25}
.pump-calc__field small,.pump-calc__field-error{font-size:.76rem;line-height:1.5}
.pump-calc__field small{color:var(--pump-muted)}
.pump-calc__field-error{color:#91261f}
.pump-calc__field-error:empty{display:none}
.pump-calc__help{font-size:.82rem;color:var(--pump-muted);margin-block:10px!important}
.pump-calc__actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.pump-calc button{min-height:44px;max-width:100%;padding:10px 14px;border:1px solid #a8bfc5;border-radius:5px;background:#fff;color:var(--pump-ink);font:500 .84rem/1.45 Inter,system-ui,sans-serif;text-align:center;cursor:pointer;touch-action:manipulation}
.pump-calc button.pump-calc__primary{background:var(--pump-accent);border-color:var(--pump-accent);color:white}
.pump-calc button:hover:not(:disabled){border-color:var(--pump-accent);box-shadow:0 0 0 1px var(--pump-accent)}
.pump-calc button:disabled{opacity:.5;cursor:default}
.pump-calc :is(input,button,a):focus-visible{outline:3px solid #287e99;outline-offset:3px}
.pump-calc__results{min-width:0;padding:20px 16px;background:#f1f6f6;border:1px solid var(--pump-line);border-radius:8px}
.pump-calc [data-pump-status]{margin-top:12px;font-size:.88rem;line-height:1.55}
.pump-calc [data-pump-errors]{color:#91261f;font-size:.84rem}
.pump-calc [data-pump-errors]:empty{display:none}
.pump-calc [data-pump-csv]{margin-top:16px}
.pump-calc__table-wrap{max-width:100%;overflow-x:auto;margin-block:18px}
.pump-calc table{width:100%;border-collapse:collapse;font-size:.8rem;line-height:1.5;text-align:left;font-variant-numeric:tabular-nums}
.pump-calc caption{text-align:left;font-size:.78rem;color:var(--pump-muted);padding-bottom:10px}
.pump-calc th,.pump-calc td{padding:10px 8px;border-bottom:1px solid #cbdcde;vertical-align:top}
.pump-calc th{font-weight:550}
.pump-calc th:first-child,.pump-calc td:first-child{padding-left:0}
.pump-calc td:not(:first-child){white-space:nowrap}
.pump-calc thead{color:var(--pump-muted)}
.pump-calc .pump-calc__warnings{font-size:.8rem;margin:12px 0;padding-left:18px}
.pump-calc__chart{margin-top:24px!important}
.pump-calc__chart svg{display:block;width:100%;height:auto;background:#fff;border:1px solid var(--pump-line);border-radius:5px;overflow:visible}
.pump-calc__chart svg text{font:12px Inter,system-ui,sans-serif;fill:var(--pump-ink)}
.pump-calc__chart svg path{fill:none;vector-effect:non-scaling-stroke}
.pump-calc__grid{stroke:#e2ebec;stroke-width:1}
.pump-calc__axis{stroke:#6d858d;stroke-width:1}
.pump-calc__curve-pump{stroke:#176f83;stroke-width:2.5}
.pump-calc__curve-system{stroke:#9b551f;stroke-width:2.5;stroke-dasharray:7 5}
.pump-calc__marker-guide{stroke:#71818a;stroke-width:1;stroke-dasharray:3 4}
.pump-calc__marker{fill:#173a45;stroke:white;stroke-width:2;vector-effect:non-scaling-stroke}
.pump-calc__chart figcaption{font-size:.74rem;line-height:1.6;color:var(--pump-muted);margin-top:10px}
.pump-calc__chart figcaption>span{display:block}
.pump-calc .pump-calc__legend{display:flex;flex-wrap:wrap;gap:9px 16px;margin-bottom:7px;color:var(--pump-ink)}
.pump-calc__legend>span{display:inline-flex;align-items:center;gap:5px}
.pump-calc__key-pump:before,.pump-calc__key-system:before{content:'';width:22px;border-top:2px solid #176f83}
.pump-calc__key-system:before{border-color:#9b551f;border-top-style:dashed}
.pump-calc__key-point:before{content:'';width:7px;height:7px;border-radius:50%;background:#173a45}
.pump-calc__privacy,.pump-calc__notice{font-size:.78rem;color:var(--pump-muted);margin-top:18px!important}
.pump-calc__notice{padding:14px;border:1px solid var(--pump-line)}
.pump-calc__reading{max-width:78ch;margin-top:44px}
.pump-calc__reading section{padding-block:26px;border-top:1px solid var(--pump-line)}
.pump-calc__reading h2{margin-bottom:18px}
.pump-calc__reading p,.pump-calc__reading li{font-size:.94rem;line-height:1.8}
.pump-calc__reading p+p{margin-top:16px}
.pump-calc__reading :is(ul,ol){padding-left:22px;margin-block:16px 0}
.pump-calc__reading li+li{margin-top:10px}
.pump-calc__reading li a{display:inline-block;min-height:32px;padding-block:3px}
.pump-calc__limits{border-left:3px solid #b07939;padding-left:20px}
@media(min-width:520px){.pump-calc__fields{grid-template-columns:repeat(2,minmax(0,1fr))}.pump-calc__results{padding:24px}}
@media(min-width:1000px){.pump-calc__workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:34px}}
@media print{.pump-calc form,.pump-calc button,.pump-calc__privacy{display:none}.pump-calc__workspace{display:block}.pump-calc__results{border:0;background:none;padding:0}.pump-calc__reading section{break-inside:avoid}.pump-calc a{color:inherit}}
