/* M14 editorial language adapted from the user's RUO policy page.
   Reusable layout motifs only; palette & typography inherit the active WordPress theme.
   Scoped strictly to BioHack markup. No theme-name selectors. */
:where(.bphp-page,.bphp-archive,.bphp-premium-profile,.bphp-m9,.bphp-tracking-shell,.bphp-dashboard,.bphp-component,.bphp-category-landing){
  font-family:inherit;
}
:where(.bphp-page,.bphp-archive,.bphp-premium-profile,.bphp-m9,.bphp-tracking-shell,.bphp-category-landing) :is(h1,h2,h3,h4){font-family:inherit;letter-spacing:-.025em}
:where(.bphp-page,.bphp-archive,.bphp-premium-profile,.bphp-m9,.bphp-tracking-shell,.bphp-category-landing) :is(.bphp-box,.bphp-section,.bphp-archive-card,.bphp-featured-card,.bphp-m9-card,.bphp-m9-collection,.bphp-profile-panel,.bphp-profile-sidecard,.bphp-profile-calculator-panel,.bphp-tracking-card){
  background:var(--bphp-surface);color:inherit;border:1px solid var(--bphp-line);border-radius:14px;
  box-shadow:0 8px 20px color-mix(in srgb,currentColor 4%,transparent);
  backdrop-filter:none;-webkit-backdrop-filter:none;
}
:where(.bphp-page,.bphp-archive,.bphp-premium-profile,.bphp-m9,.bphp-tracking-shell) :is(.bphp-section,.bphp-profile-panel,.bphp-m9-snapshot){scroll-margin-top:26px}
/* A full-width editorial hero with selectable uploaded image, not a hardwired RUO photograph. */
.bphp-premium-profile .bphp-profile-banner:not(.has-hero-image){
  background:var(--bphp-soft)!important;color:inherit;border:1px solid var(--bphp-line);border-radius:12px;
}
.bphp-premium-profile .bphp-profile-banner:not(.has-hero-image) :is(h1,p,a,.bphp-profile-summary,.bphp-profile-breadcrumb,.bphp-profile-breadcrumb a,.bphp-profile-banner-facts>span,.bphp-profile-banner-facts strong,.bphp-profile-tags span){color:inherit}
.bphp-premium-profile .bphp-profile-banner:not(.has-hero-image) .bphp-profile-tags span,
.bphp-premium-profile .bphp-profile-banner:not(.has-hero-image) .bphp-profile-banner-facts .bphp-profile-icon{border-color:var(--bphp-line)}
.bphp-premium-profile .bphp-profile-banner.has-hero-image{background-color:var(--bphp-soft);background-size:cover;background-position:center;}
.bphp-premium-profile .bphp-profile-banner.has-hero-image:before{background:rgba(0,0,0,.62)}
.bphp-archive .bphp-archive-hero:not(.has-hero-image){background:var(--bphp-soft)!important;color:inherit;border:1px solid var(--bphp-line)}
.bphp-archive .bphp-archive-hero:not(.has-hero-image) :is(h1,p,.bphp-kicker){color:inherit}
.bphp-archive .bphp-archive-hero.has-hero-image{position:relative;background-position:center;background-size:cover;isolation:isolate}
.bphp-archive .bphp-archive-hero.has-hero-image::before{content:"";inset:0;position:absolute;background:rgba(0,0,0,.58);pointer-events:none;z-index:0}
.bphp-archive .bphp-archive-hero.has-hero-image>*{position:relative;z-index:1}
.bphp-archive .bphp-archive-hero.has-hero-image :is(h1,p,.bphp-kicker){color:#fff}
/* RUO policy-inspired white information panels with a confident accent edge and measured spacing. */
.bphp-premium-profile :is(.bphp-profile-notice,.bphp-profile-notice-inline,.bphp-supply-disclaimer),
.bphp-page .bphp-notice,
.bphp-m9 .bphp-m9-privacy{
  border:1px solid var(--bphp-line);border-inline-start:5px solid var(--bphp-primary);
  border-radius:12px;background:var(--bphp-surface);padding:18px 22px;
  box-shadow:none;color:inherit;
}
.bphp-premium-profile .bphp-profile-fact{
  background:var(--bphp-surface);border:1px solid var(--bphp-line);border-radius:10px;min-width:0;
}
.bphp-premium-profile :is(.bphp-profile-panel,.bphp-profile-calculator-panel)>h2{font-size:clamp(18px,1.6vw,23px);font-weight:800;line-height:1.25}
.bphp-premium-profile .bphp-profile-nav{border-radius:0;box-shadow:none;background:var(--bphp-surface);border-bottom:1px solid var(--bphp-line)}
.bphp-premium-profile :is(.bphp-profile-action,.bphp-profile-notice-link,.bphp-apply-protocol),
.bphp-page :is(.bphp-chart-link,.bphp-calc button),
.bphp-archive .bphp-chart-link{border-radius:7px;min-height:42px;font-family:inherit;font-weight:700}
.bphp-premium-profile .bphp-profile-action-save{background:var(--bphp-primary);border-color:var(--bphp-primary)}
.bphp-premium-profile :is(.bphp-profile-dosage-table,.bphp-schedule-table) thead th{
  background:var(--bphp-soft);color:inherit;white-space:nowrap;border-color:var(--bphp-line);
}
.bphp-premium-profile :is(.bphp-profile-dosage-table,.bphp-schedule-table) tbody tr:nth-child(even) td{background:var(--bphp-soft)}
.bphp-premium-profile .bphp-profile-dosage-table th{font-weight:750}
.bphp-premium-profile :is(.bphp-profile-table-scroll,.bphp-schedule-table-wrap,.bphp-profile-reference-table-wrap){max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
:where(.bphp-page,.bphp-archive,.bphp-premium-profile,.bphp-m9,.bphp-tracking-shell) :is(input,select,textarea,button){font-family:inherit}
@media(max-width:760px){
  .bphp-premium-profile :is(.bphp-profile-panel,.bphp-profile-sidecard,.bphp-profile-calculator-panel){padding:clamp(16px,3vw,24px)}
  .bphp-premium-profile .bphp-profile-banner{padding:clamp(20px,5vw,38px)}
  .bphp-archive .bphp-archive-hero{padding:clamp(22px,5vw,40px)}
}
@media(prefers-reduced-motion:reduce){:where(.bphp-page,.bphp-archive,.bphp-premium-profile) *{scroll-behavior:auto}}
@media print{:where(.bphp-page,.bphp-archive,.bphp-premium-profile) :is(.bphp-section,.bphp-profile-panel){box-shadow:none!important}}

/* Readable formulation content, including ingredient basis and units. */
.bphp-premium-profile .bphp-profile-composition{margin-top:22px}
.bphp-premium-profile .bphp-profile-composition-table{width:100%;border-collapse:collapse;min-width:380px;font-size:13px}
.bphp-premium-profile .bphp-profile-composition-table caption{text-align:left;color:var(--bphp-muted);font-size:12px;padding:8px 0}
.bphp-premium-profile .bphp-profile-composition-table th,.bphp-premium-profile .bphp-profile-composition-table td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--bphp-line)}
.bphp-premium-profile .bphp-profile-composition-table thead th{font-weight:800;background:var(--bphp-soft)}
.bphp-premium-profile .bphp-profile-composition-table tbody th{font-weight:600}

/* Theme-managed typography scale where theme.json variables are available. */
:where(.bphp-page,.bphp-archive,.bphp-premium-profile,.bphp-m9,.bphp-tracking-shell,.bphp-category-landing){--bphp-body-size:inherit!important;font-size:inherit;line-height:inherit}
.bphp-premium-profile .bphp-profile-banner h1,.bphp-archive .bphp-archive-hero h1{font-size:var(--wp--preset--font-size--xx-large,clamp(2rem,4vw,3.25rem));font-family:inherit}
.bphp-premium-profile .bphp-profile-panel>h2{font-size:var(--wp--preset--font-size--large,clamp(1.15rem,1.8vw,1.45rem))}

/* M14: archive design consistency across generated Gutenberg, Elementor and WPBakery modules.
   No plugin-forced brand blue/violet and no fake card imagery. */
.bphp-m12-section, .bphp-m12-section :is(.bphp-component,.bphp-archive,.bphp-module-results,.bphp-module-filters,.bphp-featured-wrap),
.bphp-m12-section :is(h1,h2,h3,p,a,button,select,input),
.bphp-archive :is(h1,h2,h3,p,a,button,select,input) {
  font-family:var(--bphp-body-font,inherit);
}
.bphp-m12-section,.bphp-component,.bphp-module-results,.bphp-m12-columns,.bphp-archive {
  font-family:inherit;
}
.bphp-m12-section>h2,.bphp-m12-section h2.wp-block-heading,
.bphp-m12-section .elementor-heading-title,.bphp-m12-section .wpb_wrapper>h2{
  background:transparent!important;color:inherit!important;border:0;border-bottom:2px solid var(--bphp-line);
  border-radius:0;padding:0 0 14px;margin:0 0 18px;font-family:var(--bphp-body-font,inherit);
  font-size:clamp(1.35rem,2.3vw,1.95rem);font-weight:750;line-height:1.25;
}
.bphp-m12-section :is(.bphp-featured-grid,.bphp-archive-grid) .bphp-research-card,
.bphp-archive :is(.bphp-featured-card,.bphp-archive-card){
  background:var(--bphp-surface)!important;color:inherit!important;
  box-shadow:none!important;border:1px solid var(--bphp-line)!important;
  border-radius:12px!important;transform:none!important;
}
.bphp-m12-section :is(.bphp-featured-grid,.bphp-archive-grid) .bphp-research-card:is(:hover,:focus-visible),
.bphp-archive :is(.bphp-featured-card,.bphp-archive-card):is(:hover,:focus-visible){
  box-shadow:0 9px 22px color-mix(in srgb,currentColor 7%,transparent)!important;
  border-color:var(--bphp-primary)!important;
}
.bphp-m12-section .bphp-card-title,.bphp-archive .bphp-card-title{font-family:var(--bphp-heading-font,inherit);font-size:clamp(1rem,1.2vw,1.3rem);font-weight:750;color:inherit!important}
.bphp-m12-section .bphp-card-summary,.bphp-archive .bphp-card-summary,
.bphp-m12-section .bphp-card-kicker,.bphp-archive .bphp-card-kicker{font-family:var(--bphp-body-font,inherit);color:inherit!important;opacity:.76}
.bphp-archive .bphp-research-card.no-card-image .bphp-card-body,
.bphp-m12-section .bphp-research-card.no-card-image .bphp-card-body{padding-block:clamp(20px,2.5vw,28px)}
.bphp-archive .bphp-card-visual,.bphp-m12-section .bphp-card-visual{background:var(--bphp-soft)!important;border-radius:0}
.bphp-archive-alphabet{display:flex;gap:5px;flex-wrap:wrap;align-items:center;margin:18px 0;padding:12px 0;border-block:1px solid var(--bphp-line)}
.bphp-archive-alphabet .bphp-alpha-label{font-size:.82rem;letter-spacing:.035em;font-weight:700;margin-inline-end:12px}
.bphp-archive-alphabet button{appearance:none;min-width:36px;min-height:38px;padding:6px 9px;border:1px solid var(--bphp-line);border-radius:5px;background:var(--bphp-surface);color:inherit;font:inherit;font-size:.87rem;cursor:pointer}
.bphp-archive-alphabet button:is(:hover,:focus-visible){outline:2px solid var(--bphp-primary);outline-offset:1px}
.bphp-archive-alphabet button.is-current{border-color:var(--bphp-primary);font-weight:800;box-shadow:inset 0 -3px 0 var(--bphp-primary)}
.bphp-health-navigation{font-family:inherit;background:var(--bphp-surface);border:1px solid var(--bphp-line);border-radius:12px;padding:clamp(16px,2vw,24px)}
.bphp-health-navigation .bphp-health-nav-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:8px;overflow:visible}
.bphp-health-navigation .bphp-health-nav-link{background:transparent;border-color:var(--bphp-line);border-radius:8px;color:inherit;font-family:inherit;min-height:75px}
.bphp-health-navigation .bphp-health-nav-link.is-current{border-color:var(--bphp-primary);box-shadow:inset 4px 0 0 var(--bphp-primary)}
.bphp-health-navigation .bphp-health-nav-arrow{color:inherit}
.bphp-metric-import{margin-block:24px;background:var(--bphp-surface);border:1px solid var(--bphp-line);border-inline-start:5px solid var(--bphp-primary);border-radius:10px;padding:clamp(18px,3vw,26px)}
.bphp-metric-import h3{margin:0 0 8px}.bphp-metric-import p{line-height:1.65}
.bphp-metric-import form{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:16px 0}
.bphp-metric-import label{display:grid;gap:7px;min-width:min(100%,280px)}
.bphp-metric-import button{background:var(--bphp-surface);color:inherit;border:1px solid var(--bphp-primary);border-radius:7px;padding:10px 18px;font:inherit;font-weight:700;cursor:pointer}
.bphp-metric-import .bphp-import-guidance{font-size:.86rem;opacity:.85}
.bphp-metrics-history{margin-block:30px}.bphp-metrics-history .bphp-unified-heading{border-bottom:1px solid var(--bphp-line);padding-bottom:14px}
@media(max-width:760px){.bphp-health-navigation .bphp-health-nav-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bphp-archive-alphabet .bphp-alpha-label{flex:0 0 100%}}


/* v3.28.5: Avoid zero-intrinsic-width plugin roots inside theme auto-sized
   columns. Rules are scoped; they do not change the theme's outer max-width.
   Data modules remain editor-native and do not inherit fixed viewport widths. */
.bphp-premium-profile.bphp-profile-editable,
.bphp-archive,
.bphp-component.bphp-vc-compound-grid,
.bphp-component.bphp-vc-featured-compounds,
.bphp-component.bphp-vc-library-filters,
.bphp-component.bphp-vc-profile-part-sidebar,
.bphp-component.bphp-vc-profile-part-hero,
.bphp-component.bphp-vc-profile-part-navigation,
.bphp-component.bphp-vc-profile-part-facts,
.bphp-component.bphp-vc-profile-part-mechanism,
.bphp-component.bphp-vc-profile-part-composition,
.bphp-component.bphp-vc-profile-part-context,
.bphp-component.bphp-vc-profile-part-dosage,
.bphp-component.bphp-vc-profile-part-schedule,
.bphp-component.bphp-vc-profile-part-supplies,
.bphp-component.bphp-vc-profile-part-calculator,
.bphp-component.bphp-vc-profile-part-references {
  container-type:normal;
  container-name:none;
  width:100%; min-width:0; max-width:100%;
}
.bphp-archive .bphp-archive-grid,
.bphp-module-results .bphp-archive-grid {
  grid-template-columns:repeat(var(--bphp-columns,3),minmax(0,1fr));
}
.bphp-archive .bphp-featured-grid {
  grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));
}
/* A title in a forced 1px track must never become a one-letter vertical stack.
   The host width is still determined by the theme/editor, not BioHack. */
.bphp-premium-profile.bphp-profile-editable :is(.bphp-profile-banner h1,.bphp-profile-link-list a),
.bphp-archive :is(.bphp-card-title,.bphp-card-summary) {
  word-break:normal;
  overflow-wrap:break-word;
}

@media(max-width:640px){.bphp-archive .bphp-archive-grid,.bphp-module-results .bphp-archive-grid{grid-template-columns:1fr}}
