/* M4 Premium Calculator Experience — selectors remain private to BioHack. */
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc {
  --bphp-calc-soft:color-mix(in srgb,var(--bphp-surface,#fff) 78%,var(--bphp-primary,#0d47a1) 7%);
  position:relative;isolation:isolate;max-width:100%;min-width:0;
  background:var(--bphp-surface,#fff);color:var(--bphp-text,#142b43);
  border:1px solid var(--bphp-line,#cbd9e6);border-radius:20px;
  box-shadow:0 16px 34px rgba(9,34,65,.085);
  padding:clamp(16px,2.8cqi,28px);
}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc::before {
  content:"";display:block;position:absolute;inset:0 0 auto;height:4px;
  background:linear-gradient(90deg,var(--bphp-primary,#174e89),var(--bphp-accent,#0085c9));
  border-radius:20px 20px 0 0;pointer-events:none;
}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-head {align-items:center;padding-bottom:14px;border-bottom:1px solid var(--bphp-line,#cbd9e6);margin-bottom:16px;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-head h3 {margin:3px 0 0;font-size:clamp(1.16rem,1rem + .6cqi,1.65rem);line-height:1.25;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-context {letter-spacing:.13em;color:var(--bphp-accent,#0077d9);}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-note {max-width:80ch;margin:12px 0;color:var(--bphp-muted,#58718a);}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-grid {gap:13px;margin-top:18px;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-grid label,
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-variant-row label,
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-protocol-box label {font-size:13px;font-weight:720;line-height:1.45;color:var(--bphp-text,#142b43);}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc :is(input,select) {min-height:44px;font:inherit;font-size:14px;font-variant-numeric:tabular-nums;background:var(--bphp-field-surface,var(--bphp-surface,#fff));color:var(--bphp-text,#142b43);border:1px solid var(--bphp-line,#cbd9e6);border-radius:10px;transition:border-color .16s ease,box-shadow .16s ease;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc :is(input,select):focus-visible {outline:2px solid var(--bphp-focus-color,var(--bphp-accent,#0077d9));outline-offset:2px;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-protocol-box {border:1px solid var(--bphp-line,#cbd9e6);background:var(--bphp-soft,#f1f6fb);border-radius:15px;padding:clamp(13px,2cqi,20px);}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-result {gap:11px;padding:0;background:transparent;border:0;border-radius:0;margin:12px 0;grid-template-columns:repeat(2,minmax(0,1fr));}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-result > div {background:var(--bphp-calc-soft);border:1px solid var(--bphp-line,#cbd9e6);border-radius:13px;padding:clamp(12px,2cqi,19px);min-width:0;display:flex;flex-direction:column;gap:5px;box-shadow:none;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-result > div:nth-child(2) {border-color:color-mix(in srgb,var(--bphp-accent,#0077d9) 30%,var(--bphp-line,#cbd9e6));}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-result span {line-height:1.45;font-size:11px;font-weight:750;letter-spacing:.055em;color:var(--bphp-muted,#58718a);}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-result strong {font-variant-numeric:tabular-nums;line-height:1.3;font-size:clamp(1.12rem,1rem + .8cqi,1.6rem);color:var(--bphp-text,#142b43);overflow-wrap:anywhere;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-result > .bphp-calc-equivalent {grid-column:1/-1;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-result > .bphp-calc-equivalent strong {font-size:clamp(1rem,.95rem + .5cqi,1.3rem);}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-state-line {display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;justify-content:space-between;margin:20px 0 0;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-state {display:inline-flex;padding:6px 11px;font-size:12px;font-weight:800;line-height:1.4;border-radius:999px;background:var(--bphp-soft,#f1f6fb);border:1px solid var(--bphp-line,#cbd9e6);color:var(--bphp-muted,#58718a);}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-state[data-status="calculated"] {border-color:#72b996;color:#116342;background:#eaf8f0;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-state[data-status="fractional-graduation"] {border-color:#e7bd62;color:#784d0b;background:#fff7df;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-state[data-status="over-capacity"] {border-color:#de968b;color:#8e2c1f;background:#fff0ed;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-reference-label {font-size:11px;font-weight:700;color:var(--bphp-muted,#58718a);}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc-precision {border-left:3px solid var(--bphp-accent,#0077d9);padding:10px 13px;margin:12px 0;background:var(--bphp-soft,#f1f6fb);border-radius:0 8px 8px 0;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-syringe-visual {margin-top:22px;padding:clamp(10px,2.5cqi,22px);background:linear-gradient(135deg,#fafcff 0%,#e8f1f8 55%,#fff 100%);border:1px solid #c6d6e4;border-radius:18px;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-syringe-device {filter:drop-shadow(0 6px 7px rgba(25,58,80,.16));}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-syringe-bar {box-shadow:inset 0 2px 2px #fff,inset 0 -5px 6px rgba(45,70,95,.2),0 3px 6px rgba(28,51,80,.1);}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-syringe-liquid {transition:width .35s cubic-bezier(.2,.65,.25,1);}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-syringe-plunger {transition:left .35s cubic-bezier(.2,.65,.25,1);}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-syringe-number.is-end {transform:translateX(-100%);}
@container bphp-calculator (max-width:480px) {
  .bphp-calc-result {grid-template-columns:1fr!important;}
  .bphp-calc-result > .bphp-calc-equivalent {grid-column:auto;}
  .bphp-calc-state-line {align-items:flex-start;flex-direction:column;}
}
@media (prefers-reduced-motion:reduce) {
  :is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc :is(.bphp-syringe-liquid,.bphp-syringe-plunger) {transition:none!important;}
}
@media print{ :is(.bphp-page,.bphp-component,.bphp-archive) .bphp-calc {box-shadow:none!important;} }

/* M10 research transparency and account-private history; scoped to the calculator. */
.bphp-calc .bphp-m10-provenance {font-size:.88rem;line-height:1.5;opacity:.86;margin:.6rem 0 0;}
.bphp-calc .bphp-m10-transparency,.bphp-calc .bphp-m10-history {border:1px solid var(--bphp-line,#ccd8e4);border-radius:14px;padding:clamp(12px,2.5vw,20px);margin-block:18px;background:var(--bphp-soft,#f4f7fb);min-width:0;}
.bphp-calc .bphp-m10-transparency h4,.bphp-calc .bphp-m10-history h4{margin:0 0 9px;color:var(--bphp-text,#122940);font-size:1.05rem;}
.bphp-calc .bphp-m10-formula {font-size:.94rem;line-height:1.6;font-weight:600;}
.bphp-calc .bphp-m10-explanation {padding:12px 14px;border-left:3px solid var(--bphp-primary,#18789d);background:var(--bphp-surface,#fff);border-radius:6px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;}
.bphp-calc .bphp-m10-caution {font-size:.85rem;line-height:1.55;opacity:.85;}
.bphp-calc .bphp-m10-history-top {display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;}
.bphp-calc .bphp-m10-history button {border:1px solid var(--bphp-line,#ccd8e4);border-radius:8px;padding:9px 12px;background:var(--bphp-surface,#fff);color:var(--bphp-text,#122940);cursor:pointer;}
.bphp-calc .bphp-m10-history button:disabled {opacity:.45;cursor:not-allowed;}
.bphp-calc .bphp-m10-history button:not(:disabled):focus-visible {outline:3px solid var(--bphp-primary,#18789d);outline-offset:2px;}
.bphp-calc .bphp-m10-history-status {min-height:1.4em;font-size:.89rem;}
.bphp-calc .bphp-m10-history-card {display:flex;flex-direction:column;gap:5px;padding:12px;margin-block:9px;border:1px solid var(--bphp-line,#ccd8e4);border-radius:9px;background:var(--bphp-surface,#fff);overflow-wrap:anywhere;}
.bphp-calc .bphp-m10-history-card p {margin:0;font-size:.85rem;opacity:.85;}
.bphp-calc .bphp-m10-history-card small {opacity:.8;}
.bphp-calc .bphp-m10-history-math {display:flex;flex-wrap:wrap;gap:8px 18px;font-variant-numeric:tabular-nums;font-size:.91rem;}
.bphp-calc .bphp-m10-remove {align-self:start;}
.bphp-calc .bphp-m10-history-pager {display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
.bphp-calc .bphp-m10-links {line-height:1.6;font-size:.9rem;}
@media(max-width:480px){.bphp-calc .bphp-m10-history-top{align-items:stretch;flex-direction:column;}.bphp-calc .bphp-m10-history-math{flex-direction:column;gap:4px;}}
