/* BioHack M3 premium research components. ALL selectors restricted to BioHack roots.
   Editor and theme own sections, header/footer, global typography and page backgrounds. */
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-research-card {
  display:flex;flex-direction:column;min-width:0;max-width:100%;height:100%;padding:0;
  background:var(--bphp-surface,#fff);color:var(--bphp-text,#102c43);text-decoration:none;
  overflow:hidden;border:1px solid var(--bphp-line,#dbe6ef);
  border-radius:var(--bphp-component-radius,18px);
  box-shadow:var(--bphp-shadow-card,0 10px 30px rgba(12,40,70,.09));
  transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease;
}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-research-card:hover {
  transform:translateY(-3px);border-color:var(--bphp-accent,#087eab);
  box-shadow:0 18px 46px rgba(10,36,65,.14);
}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-research-card:focus-visible {
  outline:3px solid var(--bphp-primary,#0d47a1);outline-offset:3px;
}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-visual {
  display:grid;place-items:center;min-height:105px;aspect-ratio:16 / 7;
  overflow:hidden;background:var(--bphp-soft,#e8f0f8);
  position:relative;
}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-visual .bphp-card-image {
  display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;
}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-monogram {
  display:grid;place-items:center;width:66px;height:66px;border-radius:22px;
  background:var(--bphp-surface,#fff);border:1px solid var(--bphp-line,#dbe6ef);
  color:var(--bphp-primary,#0d47a1);font-size:32px;font-weight:800;
  box-shadow:0 5px 22px rgba(10,40,70,.08);
}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-body {
  display:flex;flex:1;flex-direction:column;min-width:0;gap:var(--bphp-card-spacing,16px);
  padding:clamp(14px,2cqi,22px);
}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-topline,
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-foot {
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:space-between;min-width:0;
}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-kicker {
  font-size:11px;font-weight:800;letter-spacing:.065em;text-transform:uppercase;color:var(--bphp-muted,#5f7180);
}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-entity {
  border:1px solid var(--bphp-line,#dbe6ef);border-radius:999px;padding:3px 8px;
  background:var(--bphp-soft,#edf3fa);color:var(--bphp-text,#102c43);font-size:11px;font-weight:750;
}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-title {
  color:var(--bphp-text,#102c43);font-size:var(--bphp-card-title-size,22px);font-weight:800;
  font-family:var(--bphp-heading-font,inherit);line-height:1.2;overflow-wrap:anywhere;
}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-summary {
  color:var(--bphp-muted,#5f7180);font-size:14px;line-height:1.6;overflow-wrap:anywhere;
}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-foot {margin-top:auto;padding-top:8px;border-top:1px solid var(--bphp-line,#dbe6ef)}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-evidence {
  font-size:11px;font-weight:740;color:var(--bphp-text,#102c43);border-radius:999px;
  background:var(--bphp-soft,#edf3fa);padding:5px 9px;
}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-open {
  color:var(--bphp-primary,#0d47a1);font-size:13px;font-weight:800;
  display:inline-flex;gap:5px;align-items:center;
}
/* Optional editor controls; nested module grids inherit these settings from their component root. */
:is(.bphp-archive,.bphp-component)[data-bphp-card-image="false"] .bphp-card-visual,
.bphp-component[data-bphp-card-image="false"] .bphp-card-visual {display:none}
:is(.bphp-archive,.bphp-component)[data-bphp-card-excerpt="false"] .bphp-card-summary,
.bphp-component[data-bphp-card-excerpt="false"] .bphp-card-summary {display:none}
:is(.bphp-archive,.bphp-component)[data-bphp-card-evidence="false"] .bphp-card-evidence,
.bphp-component[data-bphp-card-evidence="false"] .bphp-card-evidence {display:none}
.bphp-component[data-bphp-show-category="false"] .bphp-card-kicker {display:none}
:is(.bphp-archive,.bphp-component)[data-bphp-card-style="outline"] .bphp-research-card,
.bphp-component[data-bphp-card-style="outline"] .bphp-research-card {box-shadow:none;border:1.5px solid var(--bphp-line,#dbe6ef)}
:is(.bphp-archive,.bphp-component)[data-bphp-card-style="quiet"] .bphp-research-card,
.bphp-component[data-bphp-card-style="quiet"] .bphp-research-card {box-shadow:none;background:transparent;border-color:transparent}
:is(.bphp-archive,.bphp-component)[data-bphp-card-style="quiet"] .bphp-card-visual,
.bphp-component[data-bphp-card-style="quiet"] .bphp-card-visual {border-radius:16px}
/* Standalone shares the identical renderer with library results. */
.bphp-component .bphp-vc-card {border:0;background:transparent;overflow:visible}
.bphp-component .bphp-vc-card .bphp-research-card {width:100%;}
/* Profile sections and evidence. No global h2 or dd selectors. */
.bphp-component .bphp-module-profile {
  border:1px solid var(--bphp-line,#dbe6ef);border-radius:var(--bphp-component-radius,18px);
  background:var(--bphp-surface,#fff);padding:clamp(16px,3cqi,26px);
  box-shadow:var(--bphp-shadow-sm,0 5px 22px rgba(12,40,70,.06));
  border-top:3px solid var(--bphp-panel-accent,var(--bphp-primary,#0d47a1));
}
.bphp-component .bphp-module-profile > h2 {margin:0 0 18px;line-height:1.25;color:var(--bphp-text,#102c43)}
.bphp-component .bphp-module-profile p {max-width:78ch;line-height:1.7;overflow-wrap:anywhere}
.bphp-component .bphp-module-facts {gap:12px;margin:0}
.bphp-component .bphp-module-facts > div {
  padding:16px;border:1px solid var(--bphp-line,#dbe6ef);border-radius:13px;
  background:var(--bphp-soft,#eff5fa);display:flex;flex-direction:column;gap:5px;
}
.bphp-component .bphp-module-facts dt {text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:780;color:var(--bphp-muted,#5f7180)}
.bphp-component .bphp-module-facts dd {font-size:14px;line-height:1.5;color:var(--bphp-text,#102c43);overflow-wrap:anywhere}
.bphp-component[data-bphp-panel-style="outline"] .bphp-module-profile {box-shadow:none;border-top-width:1px;}
.bphp-component[data-bphp-panel-style="quiet"] .bphp-module-profile {border-color:transparent;background:transparent;box-shadow:none;padding:0}
.bphp-component[data-bphp-section-heading="false"] .bphp-module-profile > h2 {display:none}
.bphp-component .bphp-module-references {display:grid;gap:10px;padding-left:20px}
.bphp-component .bphp-module-references li {padding:10px 0;border-bottom:1px solid var(--bphp-line,#dbe6ef);overflow-wrap:anywhere}
.bphp-component .bphp-module-references li span {display:inline-block;margin-left:8px;color:var(--bphp-muted,#5f7180);font-size:12px}
/* Directory: high-contrast headings and predictable table rhythm, existing JS filters preserved. */
:is(.bphp-component,.bphp-master-chart) .bphp-comparison-table {width:100%;border-spacing:0;font-variant-numeric:tabular-nums}
:is(.bphp-component,.bphp-master-chart) .bphp-comparison-table th {
  text-align:start;padding:13px 14px;font-weight:790;font-size:12px;white-space:nowrap;
  background:var(--bphp-soft,#edf3fa);color:var(--bphp-text,#102c43);
}
:is(.bphp-component,.bphp-master-chart) .bphp-comparison-table td {
  padding:14px 14px;vertical-align:top;font-size:13px;line-height:1.55;
}
:is(.bphp-component,.bphp-master-chart) .bphp-comparison-table td:nth-child(2) a {
  font-size:14px;font-weight:790;color:var(--bphp-primary,#0d47a1);text-decoration:none;
}
:is(.bphp-component,.bphp-master-chart) .bphp-comparison-table :is(th,td):first-child {text-align:center}
:is(.bphp-component,.bphp-master-chart) .bphp-comparison-table tr:focus-within td {background:var(--bphp-soft,#edf3fa)}
.bphp-component[data-bphp-table-density="compact"] .bphp-comparison-table :is(th,td) {padding:8px 10px;font-size:12px}
.bphp-component[data-bphp-table-variant="outline"] .bphp-comparison-table {border:1px solid var(--bphp-line,#dbe6ef)}
.bphp-component[data-bphp-table-variant="quiet"] .bphp-comparison-table :is(th,td) {background:transparent}
:is(.bphp-component,.bphp-master-chart) .bphp-chart-strength {
  display:inline-block;border:1px solid var(--bphp-line,#dbe6ef);
  background:var(--bphp-soft,#edf3fa);border-radius:999px;padding:4px 8px;font-size:11px;
}
.bphp-component .bphp-premium-table-wrap {overflow-x:auto;max-width:100%;}
.bphp-component .bphp-premium-table-wrap:focus-visible {outline:3px solid var(--bphp-primary,#0d47a1);outline-offset:2px;}
@container bphp-layout (max-width:450px) {
  .bphp-card-visual{min-height:88px;aspect-ratio:16 / 6}
  .bphp-card-body{gap:10px;padding:14px}
  .bphp-card-title{font-size:clamp(16px,5cqi,20px)}
  .bphp-module-profile{padding:16px}
}
@media (prefers-reduced-motion:reduce){
  :is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-research-card{transition:none;transform:none}
}
@media print{
  :is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-research-card{box-shadow:none;transform:none;break-inside:avoid}
  .bphp-component .bphp-module-profile{box-shadow:none;break-inside:avoid}
}

/* v3.13.1 -- editor-contained research visuals, without theme-wide selectors */
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-research-card {min-width:0;width:100%;box-sizing:border-box;overflow:hidden;}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-visual {width:100%;min-width:0;isolation:isolate;}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-visual img.bphp-card-image {position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center!important;margin:0!important;float:none!important;}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) :is(.bphp-card-body,.bphp-card-topline,.bphp-card-title,.bphp-card-summary,.bphp-card-foot) {min-width:0;max-width:100%;}
:is(.bphp-archive,.bphp-component,.bphp-category-landing) .bphp-card-title {word-break:normal;overflow-wrap:break-word;hyphens:auto;}
.bphp-master-chart .bphp-table-wrap:has(.bphp-comparison-table) {display:block;width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;}
.bphp-master-chart table.bphp-comparison-table {width:100%;min-width:1080px;table-layout:auto;border-collapse:separate;border-spacing:0;}
.bphp-master-chart .bphp-comparison-table :is(th,td) {white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;vertical-align:top;line-height:1.55;min-width:110px;padding:13px 15px;}
.bphp-master-chart .bphp-comparison-table :is(th,td):first-child {min-width:72px;width:72px;}
.bphp-master-chart .bphp-comparison-table :is(th,td):nth-child(2) {min-width:185px;}
.bphp-master-chart .bphp-comparison-table :is(th,td):nth-child(4) {min-width:150px;}
.bphp-master-chart .bphp-comparison-table :is(th,td):nth-child(6) {min-width:175px;}
.bphp-master-chart .bphp-chart-tools-simple {display:grid;grid-template-columns:minmax(200px,1fr) minmax(150px,230px) auto;align-items:end;gap:14px;}
.bphp-master-chart .bphp-chart-tools-simple select,.bphp-master-chart .bphp-chart-tools-simple input {min-width:0;max-width:100%;font-size:15px;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-vc-dose .bphp-table-wrap {overflow-x:auto;max-width:100%;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-vc-dose .bphp-table:not([data-bphp-mobile-cards=true]) {min-width:810px;}
:is(.bphp-page,.bphp-component,.bphp-archive) .bphp-vc-dose .bphp-table:not([data-bphp-mobile-cards=true]) :is(td,th) {word-break:normal;overflow-wrap:break-word;min-width:85px;line-height:1.5;}
@container (max-width:640px) {.bphp-master-chart .bphp-chart-tools-simple {grid-template-columns:minmax(0,1fr)} }
@media(max-width:720px) {.bphp-master-chart .bphp-chart-tools-simple {grid-template-columns:minmax(0,1fr)} }

.bphp-master-chart .bphp-chart-advanced{border:1px solid var(--bphp-line,#cbd9e6);border-radius:12px;padding:12px 14px;margin:0 0 15px;background:var(--bphp-surface,#fff)}
.bphp-master-chart .bphp-chart-advanced summary{cursor:pointer;font-weight:700;color:var(--bphp-text,#173751)}
.bphp-master-chart .bphp-chart-advanced .bphp-chart-tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:12px;margin:14px 0 0}

