/* Heating wiring tool. Uses the site tokens from site.css. */
.wtool{max-width:52em}
.seg{display:inline-flex;border:1.5px solid var(--pine);border-radius:10px;overflow:hidden;margin:0 0 14px}
.seg button{font:inherit;font-weight:600;font-size:16px;min-height:48px;padding:0 22px;border:0;background:transparent;color:var(--pine);cursor:pointer}
.seg button+button{border-left:1.5px solid var(--pine)}
.seg button[aria-pressed="true"]{background:var(--pine);color:#fff}
.seg button:focus-visible,.chip:focus-visible,.cell:focus-visible{outline:3px solid var(--spark);outline-offset:2px}
.wtitle{font-weight:600;margin:0 0 12px;color:var(--ink)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.chip{font:inherit;font-size:14px;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--body);cursor:pointer}
.chip:hover{border-color:var(--pine)}
.chip[aria-pressed="true"]{background:var(--pine-tint);border-color:var(--pine);color:var(--pine-dark);font-weight:600}
.strip{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:10px;margin:0 0 18px;background:#d9d4c7;border-radius:10px;border:1px solid var(--line)}
@media (min-width:640px){.strip{grid-template-columns:repeat(10,1fr)}}
.cell{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 2px 10px;min-height:76px;background:#f7f5ef;border:1px solid #c9c3b4;border-radius:7px;text-decoration:none;color:var(--ink)}
.cell .tn{font-family:var(--mono);font-weight:700;font-size:15px}
.cell .dots{display:flex;flex-wrap:wrap;justify-content:center;gap:3px;max-width:44px}
.cell.off{opacity:.6}
.sw{display:inline-block;flex:none;width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.35);vertical-align:middle}
.sw.gy{background:repeating-linear-gradient(135deg,#2e9b3a 0 4px,#f0d020 4px 8px)}
.sw.plain{background:var(--body);border-color:var(--body);width:10px;height:10px;margin:2px}
.cell .sw{width:11px;height:11px}
.cell .sw.plain{width:8px;height:8px;margin:1.5px}
.terms{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.term{padding:14px 16px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-card);scroll-margin-top:16px}
.term.off{box-shadow:none;background:transparent}
.term.hl,.term:target{border-color:var(--pine);outline:2px solid var(--pine-pale)}
.term:focus{outline:none}
.term:focus-visible{outline:3px solid var(--spark);outline-offset:2px}
.term .th{display:flex;align-items:baseline;gap:12px}
.term .tn{flex:none;font-family:var(--mono);font-weight:700;font-size:18px;color:var(--pine);min-width:1.6em}
.term .fn{font-weight:600;color:var(--ink);line-height:1.35}
.term .none{margin:6px 0 0;color:var(--muted);font-size:15px}
.wires{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:6px}
.wires li{display:flex;align-items:flex-start;gap:10px;font-size:15.5px;line-height:1.45;color:var(--body)}
.wires .sw{margin-top:4px}
.wires .sw.plain{margin:7px 2px 0}
.wires strong{color:var(--ink);font-weight:600}
.ovr{display:flex;align-items:center;gap:10px;min-height:44px;margin:-6px 0 16px;font-size:15px;color:var(--ink);cursor:pointer}
.ovr input{flex:none;width:22px;height:22px;margin:0;accent-color:var(--pine)}
.legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 18px;padding:0;list-style:none;font-size:14px;color:var(--muted)}
.legend li{display:flex;align-items:center;gap:6px}
.wfaults details{border:1px solid var(--line);border-radius:10px;background:var(--card);padding:0 16px;margin:0 0 8px}
.wfaults summary{min-height:48px;display:flex;align-items:center;font-weight:600;cursor:pointer}
.wfaults p{margin:0 0 14px}
.srcs{font-size:14.5px;color:var(--body)}
.srcs li{margin:0 0 6px}
.wsum{margin:0 0 14px;padding:12px 14px;background:var(--pine-tint);border:1px solid var(--pine-pale);border-radius:10px;color:var(--ink)}
.wsum p{margin:0 0 6px;font-weight:600}
.wsum ul{margin:0;padding:0;list-style:none;display:grid;gap:4px}
.wsum li{display:flex;align-items:center;gap:8px;font-size:15.5px}
.wsum .to{font-family:var(--mono);font-weight:700;color:var(--pine-dark);margin-left:auto;white-space:nowrap}
.wh{margin-top:32px}
