/* Tools pages (hub + two calculators). Shared tokens from base.css; classes prefixed tool-/tools-. */
.tools-head{padding-bottom:var(--s5)}
.tools-head h1{max-width:none;font-size:var(--fs-2xl)}
.tools-head .eyebrow a{color:var(--text-dim);text-decoration:none}
.tools-head .eyebrow a:hover{color:var(--text)}
.tools-body{padding-top:var(--s5)}
.tools-cards{list-style:none;margin:var(--s6) 0 var(--s5);padding:0;display:grid;gap:var(--s4)}
@media(min-width:760px){.tools-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tools-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s2);margin:0;min-width:0}
.tools-card h2{font-size:1.25rem;letter-spacing:-.02em;margin:0}
.tools-card h2 a{text-decoration:none;color:var(--text-strong)}
.tools-card p{color:var(--text-dim);font-size:var(--fs-sm)}
.tools-card .btn{margin-top:auto}
.tool{display:grid;gap:var(--s5);align-items:start}
@media(min-width:960px){.tool{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}
.tool-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4)}
.tool-field{min-width:0}
.tool-field label{font:500 var(--fs-xs)/1.3 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}
@media(max-width:420px){.tool-form{grid-template-columns:1fr}}
.tool-out{min-width:0}
.tool-read{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:var(--s4);margin:0 0 var(--s4);padding-bottom:var(--s4);border-bottom:1px solid var(--hairline)}
.tool-read div{display:flex;flex-direction:column;gap:var(--s1);min-width:0}
.tool-read dt{font:500 var(--fs-xs)/1.3 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}
.tool-read dd{margin:0;font:500 clamp(1.25rem,1.1rem + .8vw,1.625rem)/1.1 var(--font-mono);color:var(--text-strong);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.tool-note{font-size:var(--fs-sm);color:var(--text-dim)}
.tool-formula{font:400 var(--fs-xs)/1.5 var(--font-mono);color:var(--text-dim);margin:0}
.tool-table-box{border:1px solid var(--hairline);border-radius:var(--radius-ctl);overflow-x:auto}
.tool-table th,.tool-table td{padding:var(--s2) var(--s3);white-space:nowrap}
.tool-table td{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-strong)}
.tool-table th:not(:first-child),.tool-table td:not(:first-child){text-align:right}
.tool-table tr:last-child td{border-bottom:0}
.tool-disclaimer{margin:var(--s5) 0 0;padding:var(--s3) var(--s4);border:1px dashed var(--hairline-strong);border-radius:var(--radius-ctl);font-size:var(--fs-sm);color:var(--text-dim);max-width:none}
.tool-explain{margin-top:var(--s7);max-width:68ch}
.tool-explain h2{font-size:var(--fs-xl)}
.tool-explain p{color:var(--text-dim)}

/* v4 additions: units, hints, badge, assumptions */
.tool-unit{color:var(--text-dim);text-transform:none;letter-spacing:0;font-weight:400}
.tool-hint{margin:var(--s1) 0 0;font:400 .6875rem/1.4 var(--font-mono);color:var(--text-dim);max-width:none}
.tool-field input[aria-invalid="true"]{border-color:var(--red)}
.tool-badge{margin:0 0 var(--s3)}
.tool-assume{margin:var(--s3) 0 0;font-size:var(--fs-xs);color:var(--text-dim);max-width:none}
.tool-form{align-items:start}
.tool-unit{display:block;margin-top:2px}
