/* Calculator-only presentation. Form keys, formula and shared tool styles stay intact. */
body:has([data-tihq-calculator]) main.tihq-tool-page {
	width: min(calc(100% - 2rem), 1136px);
	max-width: 1136px;
}
body:has([data-tihq-calculator]) main.tihq-tool-page > h1 { max-width: 24ch; }
body:has([data-tihq-calculator]) .entry-content > p:first-child { max-width: 82ch; }
.tihq-calculator { --tihq-calculator-pad: clamp(1rem, 3vw, 2rem); }
.tihq-calculator [hidden] { display: none !important; }
.tihq-calculator .tihq-calculator-grid { display: block; }
.tihq-calculator-controls {
	padding: var(--tihq-calculator-pad);
	border: 1px solid var(--wp--preset--color--divider);
	border-radius: 16px;
	background: var(--wp--preset--color--surface);
	box-shadow: 0 8px 30px rgb(20 19 50 / 3%);
}
.tihq-calculator h2 { font-size: clamp(1.3rem, 2.2vw, 1.6rem); line-height: 1.25; }
.tihq-calculator h3 { font-size: 1rem; line-height: 1.4; }
.tihq-calculator-settings { display: grid; gap: 1rem; padding-block-end: 1.5rem; border-block-end: 1px solid var(--wp--preset--color--divider); }
.tihq-calculator-settings h2 { margin: .35rem 0 .6rem; }
.tihq-calculator-settings p { margin-block: 0; }
.tihq-calculator-settings .tihq-kicker { font-size: .7rem; }
.tihq-calculator-settings > div > p:last-child,
.tihq-calculator-help,
.tihq-quote-description,
.tihq-labour-panel p,
.tihq-calculator-notes p,
.tihq-calculator-action p { font-size: .875rem; line-height: 1.6; color: var(--wp--preset--color--muted); }
.tihq-calculator .tihq-tool-fields { gap: 1rem; }
.tihq-calculator .tihq-tool-field { min-width: 0; margin-block: .5rem; }
.tihq-calculator .tihq-tool-field label { font-size: .875rem; line-height: 1.45; margin-block-end: .45rem; }
.tihq-calculator .tihq-tool-field :is(input,select,textarea) { min-height: 48px; padding: .7rem .8rem; border-radius: 8px; font-size: 1rem; }
.tihq-calculator .tihq-tool-field input { font-variant-numeric: tabular-nums; }
.tihq-calculator .tihq-tool-field :is(input,select,textarea):focus-visible { outline: 2px solid var(--wp--preset--color--brand); outline-offset: 3px; }
.tihq-calculator-help { margin-block: 1.25rem; }
.tihq-calculator-options, .tihq-calculator-extras { display: grid; gap: 1.25rem; }
.tihq-calculator .tihq-quote-panel { margin: 0; padding: 1.25rem; border-radius: 12px; background: var(--wp--preset--color--surface); border-block-start: 3px solid var(--wp--preset--color--brand); }
.tihq-calculator .tihq-quote-panel legend { padding-inline: .4rem; font-size: 1.15rem; }
.tihq-quote-description { min-height: 2.8em; margin-block-end: 1rem; }
.tihq-calculator-extras { margin-block: 1.5rem; align-items: start; }
.tihq-calculator .tihq-labour-panel { margin: 0; padding: 1rem 1.25rem; background: var(--wp--preset--color--subtle); }
.tihq-calculator-notes { padding: .5rem 0; }
.tihq-calculator-notes textarea { min-height: 112px; resize: vertical; }
.tihq-calculator-notes p { margin-block: .5rem 0; }
.tihq-calculator-action { display: flex; gap: 1.25rem; align-items: center; flex-wrap: wrap; border-block-start: 1px solid var(--wp--preset--color--divider); padding-block-start: 1.5rem; }
.tihq-calculator-action p { flex: 1 1 260px; margin: 0; }
.tihq-calculator :is([data-tihq-calculate],[data-tihq-print]) { min-height: 48px; padding: .8rem 1.25rem; border-radius: 8px; font-weight: 650; }
.tihq-calculator .tihq-tool-error { display: block; margin-block-start: .4rem; font-size: .875rem; }
.tihq-calculator .tihq-tool-result { margin-block-start: 1.5rem; padding: var(--tihq-calculator-pad); border-radius: 16px; border-block-start: 3px solid var(--wp--preset--color--brand); }
.tihq-result-intro h2 { margin: .35rem 0 .6rem; }
.tihq-result-intro p { margin-block: 0; }
.tihq-result-intro > p:last-child { color: var(--wp--preset--color--muted); font-size: .875rem; max-width: 75ch; }
.tihq-calculator-status:not(:empty) { margin-block: 1.25rem 0; padding: 1rem; background: var(--wp--preset--color--surface); border: 1px dashed var(--wp--preset--color--control); border-radius: 8px; }
.tihq-calculator-status:empty { display: none; }
.tihq-result-overview { display: grid; gap: 1.5rem; margin-block-start: 1.5rem; }
.tihq-cash-difference h3 { margin-block: 0 .5rem; }
.tihq-cash-difference > p:last-child { margin-block: .65rem 0; font-size: .875rem; }
.tihq-calculator .tihq-result-number { font-size: clamp(1.9rem, 4.2vw, 3.4rem); color: var(--wp--preset--color--brand); letter-spacing: -.04em; overflow-wrap: anywhere; }
.tihq-calculator .tihq-cost-totals { display: grid; gap: .75rem; margin: 0; }
.tihq-calculator .tihq-cost-totals > div { padding: 1rem; border: 1px solid var(--wp--preset--color--divider); border-radius: 10px; background: var(--wp--preset--color--surface); }
.tihq-calculator .tihq-cost-totals dt { font-size: .875rem; }
.tihq-calculator .tihq-cost-totals dd { margin-block-start: .4rem; font-size: 1.25rem; font-variant-numeric: tabular-nums; }
.tihq-result-detail { margin-block-start: 1.5rem; padding-block-start: 1.25rem; border-block-start: 1px solid var(--wp--preset--color--divider); }
.tihq-result-detail h3 { margin-block: 0 .65rem; }
.tihq-result-detail ul { padding-inline-start: 1.25rem; font-size: .875rem; }
.tihq-result-detail li { margin-block: .4rem; }
.tihq-result-actions { display: flex; justify-content: space-between; gap: 1rem; align-items: center; flex-wrap: wrap; margin-block-start: 1.5rem; }
.tihq-result-actions p { margin: 0; font-size: .8rem; }
.tihq-calculator .tihq-tool-warning:not([hidden]) { padding: 1rem; border: 1px solid currentColor; border-radius: 8px; }
.tihq-calculator [data-tihq-result="difference-label"] { scroll-margin-block-start: 4rem; }
.tihq-calculator [data-tihq-result="difference-label"]:focus-visible { outline: 2px solid var(--wp--preset--color--brand); outline-offset: 6px; }
.tihq-calculator .tihq-calculator-example { max-width: none; padding: 1.5rem var(--tihq-calculator-pad); border: 1px solid var(--wp--preset--color--divider); border-radius: 12px; background: var(--wp--preset--color--surface); }
.tihq-calculator-example p { max-width: 90ch; font-size: .875rem; }
.tihq-calculator-example h2 { margin-block-start: 0; }
@media (min-width: 48rem) {
	.tihq-calculator-settings { grid-template-columns: minmax(0,1fr) minmax(0,1.2fr); gap: 2rem; align-items: center; }
	.tihq-calculator-options, .tihq-calculator-extras { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.tihq-calculator .tihq-quote-panel .tihq-tool-fields { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
	.tihq-result-overview { grid-template-columns: minmax(0,1fr) minmax(0,1.4fr); align-items: center; }
	.tihq-calculator .tihq-cost-totals { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.tihq-calculator [data-tihq-labour-row] { grid-column: 1 / -1; }
}
@media (max-width: 47.99rem) {
	.tihq-calculator .tihq-tool-fields { grid-template-columns: minmax(0,1fr); }
	.tihq-calculator .tihq-quote-panel { padding: 1rem; }
	.tihq-quote-description { min-height: 0; }
	.tihq-calculator-action { gap: .75rem; }
	.tihq-calculator :is([data-tihq-calculate],[data-tihq-print]) { width: 100%; }
	.tihq-result-actions { display: block; }
	.tihq-result-actions button { margin-block-start: .75rem; }
}
@media print {
	body:has([data-tihq-calculator]) main.tihq-tool-page { width: 100%; max-width: none; }
	.tihq-calculator .tihq-tool-result { margin: 0; padding: 0; border: 0; border-radius: 0; background: #fff; color: #000; }
	.tihq-calculator :is(.tihq-result-number,.tihq-result-intro > p:last-child) { color: #000; }
	.tihq-result-overview { display: block; }
	.tihq-calculator .tihq-cost-totals { display: block; margin-block-start: 1rem; }
	.tihq-calculator .tihq-cost-totals > div { padding: .5rem 0; border: 0; border-block-start: 1px solid #666; border-radius: 0; background: #fff; break-inside: avoid; }
	.tihq-result-detail { border-color: #666; }
	.tihq-calculator .tihq-calculator-example { border: 0; padding: 0; }
	.tihq-result-actions { display: block; }
	.tihq-calculator h2, .tihq-calculator h3 { break-after: avoid; }
}
