/* Original scoped atom-count model; all presentation is static. */
.mass-balance-lab{margin:24px 0;padding:clamp(16px,3vw,30px);min-width:0;border:1px solid var(--border-strong);border-radius:24px;background:linear-gradient(140deg,var(--card-grad-1),var(--card))}
.mass-balance-lab [hidden]{display:none!important}.mass-balance-lab p{line-height:1.65}.mass-balance-lab h2{margin-top:4px}
.balance-equation{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;font-size:clamp(1.35rem,3vw,2rem);font-weight:800;padding:18px 0}.balance-equation span{white-space:nowrap}.balance-equation b{color:var(--brand)}
.balance-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:18px 0}.balance-controls label{display:block;min-width:0;line-height:1.6}.balance-controls output{font-weight:800;font-size:1.3rem}.balance-controls input{display:block;width:100%;min-height:44px;accent-color:var(--brand);cursor:pointer}
.balance-table{width:100%;border-collapse:collapse;text-align:left}.balance-table caption{text-align:left;font-weight:700;margin:12px 0}.balance-table td,.balance-table th{padding:12px 8px;border-bottom:1px solid var(--border)}
.balance-feedback{padding:16px;border:2px solid var(--brand);border-radius:14px;margin:20px 0;font-weight:600}.balance-actions{display:flex;gap:12px;flex-wrap:wrap}.balance-actions .btn{min-height:44px;white-space:normal;overflow-wrap:anywhere}
.mass-balance-lab button:focus-visible,.mass-balance-lab input:focus-visible,.mass-balance-lab a:focus-visible{outline:3px solid var(--brand-2);outline-offset:4px}
.balance-note,.balance-credit,.balance-source{font-size:.85rem;color:var(--muted);line-height:1.65}.balance-explanation{padding:16px;margin:20px 0;border:1px solid var(--border);border-radius:14px;background:var(--card)}.balance-credit{border-top:1px solid var(--border);padding-top:16px}
@media(max-width:767px){.balance-controls{grid-template-columns:1fr;gap:10px}.balance-table td,.balance-table th{padding:10px 4px;font-size:.85rem}.balance-actions .btn{width:100%}.balance-equation{gap:7px}.balance-explanation{padding:12px}}
