/* Plumbing tool controls and results. Uses the modern-trade variables (--ink, --muted, --paper, --accent, --line, --soft). */
.ptool{max-width:820px;margin:0 auto 12px;padding:28px;background:#fff;border:1px solid var(--line);border-radius:3px}
.ptool-form{display:grid;gap:20px}
.ptool-field{border:0;margin:0;padding:0;min-width:0}
.ptool-field label,.ptool-field legend{display:block;padding:0;margin:0 0 8px;font-size:14px;font-weight:600;color:var(--ink);line-height:1.4}
.ptool-field select,.ptool-field input[type=text],.ptool-field input[type=number]{display:block;width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid #95a99d;border-radius:2px;background:#fafcf9;color:var(--ink);font-size:16px;line-height:1.4}
.ptool-hint{margin:6px 0 0;font-size:13px;line-height:1.5;color:var(--muted)}
.ptool-hint[hidden]{display:none}
.ptool-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:10px}
.ptool-field label.ptool-choice{display:flex;align-items:center;gap:12px;min-height:46px;margin:0;padding:10px 12px;border:1px solid var(--line);border-radius:2px;background:#fbfcfa;cursor:pointer;font-size:14px;font-weight:400;line-height:1.4;color:var(--ink)}
.ptool-choice input{flex:0 0 auto;width:20px;height:20px;margin:0;accent-color:var(--accent)}
.ptool-field label.ptool-choice:has(input:checked){border-color:var(--accent);background:var(--soft)}
.ptool-more{font-size:14px}
.ptool-more summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600;color:var(--accent)}
.ptool-more .ptool-field{margin-top:6px}
.ptool-linkbtn{padding:6px 0;border:0;background:none;color:var(--accent);font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.ptool-field select:focus-visible,.ptool-field input:focus-visible,.ptool-choice:focus-within,.ptool-more summary:focus-visible,.ptool-linkbtn:focus-visible{outline:3px solid #ca842d;outline-offset:3px}
.ptool-out{margin-top:26px;padding-top:24px;border-top:1px solid var(--line);overflow-wrap:anywhere}
.ptool-out:empty{display:none}
.ptool-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:12px;margin-bottom:16px}
.ptool-stat{padding:14px;border:1px solid var(--line);background:var(--soft);border-radius:2px;min-width:0}
.ptool-big{font:600 32px/1.1 Manrope,sans-serif;letter-spacing:-.03em;color:var(--accent)}
.ptool-unit{font-size:15px;letter-spacing:0}
.ptool-cap{margin-top:6px;font-size:13px;line-height:1.4;color:var(--muted)}
.ptool-badge{display:inline-block;padding:5px 12px;border-radius:999px;border:1px solid var(--accent);background:var(--soft);color:var(--accent);font-size:13px;font-weight:600;line-height:1.4}
.ptool-badge.ptool-good{border-color:var(--accent);color:var(--accent)}
.ptool-badge.ptool-warn{border-color:#ad6e23;background:#fff1dd;color:#6b4513}
.ptool-badge.ptool-bad{border-color:#a3392b;background:#fbe9e6;color:#7a2318}
.ptool-lead{margin:12px 0 0;font-size:17px;line-height:1.5;color:var(--ink)}
.ptool-sub{margin:10px 0 0;font-size:15px;line-height:1.6;color:var(--muted)}
.ptool-small{font-size:13px}
.ptool-label{margin:20px 0 4px;font-size:14px;font-weight:600;color:var(--ink)}
.ptool-block{margin-top:4px}
.ptool-list{margin:6px 0 0;padding-left:20px;font-size:15px;line-height:1.6;color:var(--muted)}
.ptool-list li{margin-bottom:8px}
.ptool-list strong{color:var(--ink)}
.ptool-note{margin:18px 0 0;padding:12px 14px;border-left:3px solid var(--accent);background:var(--soft);font-size:13px;line-height:1.6;color:var(--muted)}
@media(max-width:700px){.ptool{padding:20px 16px;margin-bottom:8px}.ptool-big{font-size:28px}.ptool-lead{font-size:16px}}
@media(max-width:360px){.ptool{padding:16px 12px}.ptool-choices{grid-template-columns:1fr}}
