.ohms-page { letter-spacing: 0; }
.ohms-heading { padding-bottom: 2rem; border-bottom: 1px solid #dbe4ee; margin-bottom: 1.5rem; }
.ohms-eyebrow, .ohms-tool-kicker { margin: 0 0 0.65rem; color: #0c8273; font-size: 0.84rem; font-weight: 900; letter-spacing: 0; }
.ohms-heading h1 { margin: 0 0 1rem; color: #111827; font-size: clamp(2rem, 5vw, 3.25rem); line-height: 1.18; letter-spacing: 0; }
.ohms-heading > p:last-child, .ohms-guide > header > p:last-child { margin: 0; color: #61708a; font-size: 1.05rem; line-height: 1.8; }
.ohms-tool { padding: 1.5rem; border: 1px solid #d6e1ec; border-radius: 8px; background: #fff; box-shadow: 0 18px 45px rgba(31,48,68,.06); }
.ohms-tool-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.25rem; }
.ohms-tool-head h2, .ohms-results-head h2, .ohms-guide h2, .ohms-tool h3, .ohms-guide h3 { color: #172033; letter-spacing: 0; }
.ohms-tool-head h2 { margin: 0; font-size: 1.45rem; }
.ohms-tool-kicker { margin-bottom: .25rem; }
.ohms-reset, .ohms-presets button, .ohms-calculate { min-height: 2.85rem; padding: 0 1rem; border: 1px solid #cad8e6; border-radius: 7px; background: #fff !important; color: #25344d !important; font: inherit; font-weight: 800; letter-spacing: 0; cursor: pointer; }
.ohms-mode-fieldset { min-width: 0; margin: 0; padding: 1rem; border: 1px solid #dce5ee; border-radius: 7px; background: #f7f9fc; }
.ohms-mode-fieldset legend { padding: 0 .4rem; color: #172033; font-weight: 900; }
.ohms-mode-fieldset > p { margin: 0 0 .8rem; color: #748198; font-size: .88rem; }
.ohms-modes { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .55rem; }
.ohms-modes label { position: relative; margin: 0; cursor: pointer; }
.ohms-modes input[type="radio"] { position: absolute !important; width: 1px !important; height: 1px !important; min-width: 0 !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; overflow: hidden; clip: rect(0,0,0,0); clip-path: inset(50%); opacity: 0 !important; appearance: none !important; }
.ohms-modes span { display: flex; min-height: 3rem; align-items: center; justify-content: center; padding: .5rem; border: 1px solid #cfdae6; border-radius: 7px; background: #fff; color: #40516a; font-weight: 800; text-align: center; }
.ohms-modes input:checked + span { border-color: #0f8979; background: #e6f5f1; color: #08796b; box-shadow: 0 0 0 1px #0f8979 inset; }
.ohms-modes input:focus-visible + span { outline: 3px solid rgba(15,137,121,.2); }
.ohms-inputs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .9rem; margin-top: 1rem; }
.ohms-field { padding: 1rem; border: 1px solid #dce5ee; border-radius: 7px; background: #fff; }
.ohms-field > label { display: flex; align-items: center; gap: .7rem; margin-bottom: .75rem; color: #172033; }
.ohms-symbol { display: grid; place-items: center; width: 2.2rem; height: 2.2rem; border-radius: 7px; background: #e2f4f0; color: #087c6d; font-size: 1.05rem; font-weight: 900; }
.ohms-field label strong, .ohms-field label small { display: block; }
.ohms-field label small { margin-top: .05rem; color: #8190a4; font-size: .74rem; font-weight: 500; }
.ohms-input-row { display: grid; grid-template-columns: minmax(0,1fr) 5.25rem; gap: .5rem; }
.ohms-input-row input, .ohms-input-row select { width: 100%; min-width: 0; height: 3.35rem; margin: 0; padding: 0 .85rem; border: 1px solid #cfdbe7; border-radius: 7px; background: #fff; color: #152033; font: inherit; font-weight: 800; letter-spacing: 0; }
.ohms-input-row input:focus, .ohms-input-row select:focus { border-color: #0f8979; box-shadow: 0 0 0 3px rgba(15,137,121,.12); outline: none; }
.ohms-presets { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-top: 1rem; }
.ohms-presets > span { color: #607089; font-size: .85rem; font-weight: 900; }
.ohms-presets button { min-height: 2.5rem; padding: 0 .75rem; font-size: .82rem; }
.ohms-presets button:hover { border-color: #0f8979; color: #087c6d; }
.ohms-calculate { width: 100%; min-height: 3.5rem; margin-top: 1rem; border-color: #0f8979; background: #0f8979 !important; color: #fff !important; font-size: 1rem; }
.ohms-status { margin: .7rem 0 0; color: #708098; font-size: .88rem; }
.ohms-status.is-error { color: #b33b34; font-weight: 700; }
.ohms-results { margin-top: 1.2rem; padding: 1.2rem; border-radius: 8px; background: #eef7f5; }
.ohms-results-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.ohms-results-head span { color: #0c8273; font-size: .78rem; font-weight: 900; }
.ohms-results-head h2 { margin: .15rem 0 0; font-size: 1.25rem; }
.ohms-results-head > strong { padding: .55rem .75rem; border-radius: 7px; background: #fff; color: #087c6d; font-size: .85rem; }
.ohms-result-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .65rem; }
.ohms-result-grid > div { min-width: 0; padding: .9rem; border: 1px solid #d6e6e2; border-radius: 7px; background: #fff; }
.ohms-result-grid span, .ohms-result-grid strong, .ohms-result-grid small { display: block; }
.ohms-result-grid span { color: #708098; font-size: .78rem; }
.ohms-result-grid strong { overflow: hidden; margin: .3rem 0; color: #172033; font-size: 1.15rem; text-overflow: ellipsis; white-space: nowrap; }
.ohms-result-grid small { color: #8290a3; font-size: .73rem; }
.ohms-result-grid > div.is-input { border-color: #8ccdc2; box-shadow: 0 0 0 1px #8ccdc2 inset; }
.ohms-formula-used { display: flex; justify-content: space-between; gap: 1rem; margin-top: .75rem; padding: .8rem .9rem; border-radius: 7px; background: #dfeeea; color: #476157; font-size: .86rem; }
.ohms-formula-used strong { color: #173e37; text-align: right; }
.ohms-guide { margin-top: 2.5rem; }
.ohms-guide > header { margin-bottom: 1.2rem; }
.ohms-guide > header h2 { margin: 0 0 .55rem; font-size: 1.8rem; }
.ohms-formula-grid, .ohms-info-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .8rem; }
.ohms-formula-grid section { display: flex; align-items: flex-start; gap: 1rem; padding: 1.1rem; border: 1px solid #dce5ee; border-radius: 7px; background: #fff; }
.ohms-formula-grid section > span { display: grid; flex: 0 0 auto; place-items: center; width: 2.5rem; height: 2.5rem; border-radius: 7px; background: #e2f4f0; color: #087c6d; font-weight: 900; }
.ohms-formula-grid h3, .ohms-info-grid h3 { margin: 0 0 .4rem; font-size: 1rem; }
.ohms-formula-grid p, .ohms-info-grid p, .ohms-example p, .ohms-faq p { margin: 0; color: #64748a; font-size: .9rem; line-height: 1.75; }
.ohms-info-grid { margin-top: .8rem; }
.ohms-info-grid section { padding: 1.1rem; border: 1px solid #dce5ee; border-radius: 7px; background: #f8fafc; }
.ohms-example { margin-top: 1rem; padding: 1.2rem; border-left: 4px solid #0f8979; background: #f0f7f5; }
.ohms-example h3 { margin: 0 0 .5rem; font-size: 1.05rem; }
.ohms-faq { margin-top: 1.5rem; padding-top: 1.5rem; border-top: 1px solid #dce5ee; }
.ohms-faq h2 { margin: 0 0 1rem; font-size: 1.35rem; }
.ohms-faq details { border-bottom: 1px solid #dce5ee; }
.ohms-faq summary { padding: 1rem 0; color: #25344d; font-weight: 800; cursor: pointer; }
.ohms-faq details p { padding-bottom: 1rem; }
@media screen and (max-width: 980px) { .ohms-result-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media screen and (max-width: 736px) {
	.ohms-heading h1 { font-size: 2.15rem; }
	.ohms-tool { padding: 1rem; }
	.ohms-modes { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.ohms-inputs, .ohms-formula-grid, .ohms-info-grid { grid-template-columns: 1fr; }
	.ohms-results-head, .ohms-formula-used { align-items: flex-start; flex-direction: column; }
	.ohms-formula-used strong { text-align: left; }
}
@media screen and (max-width: 420px) {
	.ohms-tool-head { align-items: stretch; flex-direction: column; }
	.ohms-reset { width: 100%; }
	.ohms-modes { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.ohms-result-grid { grid-template-columns: 1fr; }
}
