.battery-calc { max-width:72ch; padding:1.4rem; margin:1.4rem 0; background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); }
.battery-calc__fields { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1rem 1.3rem; }
.battery-calc label { display:flex; flex-direction:column; gap:.5rem; font-size:.95rem; font-weight:700; line-height:1.45; min-width:0; }
.battery-calc input { width:100%; min-width:0; box-sizing:border-box; padding:.75rem; border:1px solid var(--line); border-radius:.5rem; background:#fff; color:var(--ink); font:inherit; font-weight:400; }
.battery-calc input:focus-visible, .battery-calc button:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.battery-calc .battery-calc__help { font-size:.9rem; line-height:1.5; }
.battery-calc__actions { display:flex; flex-wrap:wrap; gap:.8rem; margin:1.2rem 0; }
.battery-calc button { cursor:pointer; font:inherit; }
.battery-calc__reset { padding:.8rem 1rem; border:1px solid var(--line); border-radius:.6rem; background:var(--surface); color:var(--ink); }
.battery-calc__result { padding-top:1rem; border-top:1px solid var(--line); }
.battery-calc__result dl { margin:0; }
.battery-calc__result dl div { display:flex; justify-content:space-between; gap:1rem; padding:.6rem 0; border-bottom:1px solid var(--line); }
.battery-calc__result dt { max-width:70%; }
.battery-calc__result dd { margin:0; font-weight:700; text-align:right; }
.battery-calc [data-battery-error] { color:#a12222; font-weight:700; }
@media (max-width:620px) { .battery-calc { padding:1rem; } .battery-calc__fields { grid-template-columns:1fr; } .battery-calc__result dl div { flex-direction:column; gap:.25rem; } .battery-calc__result dt { max-width:100%; } .battery-calc__result dd { text-align:left; } }
