.fp-equation { padding: 1rem; border-left: 3px solid #b45330; font-size: 1.15em; }
.fp-explorer { margin: 2rem 0; padding: clamp(1rem, 3vw, 1.8rem); border: 1px solid #889c94; border-radius: 12px; }
.fp-explorer svg { display: block; width: 100%; height: auto; }
.fp-controls:not([hidden]) { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 1rem; align-items: end; }
.fp-controls label { display: block; font-size: .95rem; }
.fp-controls output { float: right; font-variant-numeric: tabular-nums; }
.fp-controls input { display: block; width: 100%; min-height: 32px; accent-color: #b45330; }
.fp-controls button { padding: .6rem; background: transparent; color: inherit; border: 1px solid currentColor; border-radius: 6px; cursor: pointer; }
.fp-controls :focus-visible { outline: 3px solid #157b7a; outline-offset: 4px; }
.fp-caveat { font-size: .9em; }
@media (max-width: 520px) {
  .fp-explorer svg text { font-size: 23px; }
}
