/* M14: research composition, scoped to the plugin; the theme owns its shell and typeface. */
.bphp-premium-profile {
  width:100%; max-width:100%; min-width:0; margin:0 auto; overflow:visible;
  color:var(--bphp-text,inherit); font-family:inherit; font-size:14px; line-height:1.6;
  container-type:inline-size; container-name:bphp-profile; isolation:isolate;
}
.bphp-premium-profile *, .bphp-premium-profile *::before, .bphp-premium-profile *::after { box-sizing:border-box; }
.bphp-page.bphp-premium-profile { container-name:bphp-profile; }
.bphp-premium-profile .bphp-profile-layout {
  display:grid; grid-template-columns:190px minmax(0,1fr) 320px;
  grid-template-areas:"hero hero" "nav nav" "main right";
  gap:16px; align-items:start; min-width:0; width:100%;
}
.bphp-premium-profile .bphp-profile-layout > * { min-width:0; }
.bphp-premium-profile .bphp-profile-left { grid-area:left; display:grid; gap:14px; position:sticky; top:18px; }
.bphp-premium-profile :is(.bphp-profile-sidecard,.bphp-profile-panel,.bphp-profile-calculator-panel) {
  min-width:0; background:var(--bphp-surface,#fff); color:var(--bphp-text,#17273c);
  border:1px solid var(--bphp-line,#dce3ea); border-radius:10px; padding:18px;
  box-shadow:0 2px 8px rgba(18,42,65,.025);
}
.bphp-premium-profile .bphp-profile-sidecard { padding:14px; }
.bphp-premium-profile .bphp-profile-sidecard h2 { font:750 16px/1.35 var(--bphp-heading-font,inherit); margin:0 0 12px; letter-spacing:-.025em; overflow-wrap:normal; }
.bphp-premium-profile .bphp-profile-panel h2 { font-size:21px; line-height:1.3; font-weight:750; margin:0 0 14px; letter-spacing:-.025em; overflow-wrap:normal; }
.bphp-premium-profile .bphp-profile-panel h3 { font-size:16px; line-height:1.4; margin:25px 0 10px; overflow-wrap:normal; }
.bphp-premium-profile .bphp-profile-calculator-panel > h2 { font-size:19px; line-height:1.3; font-weight:750; margin:0 0 14px; letter-spacing:-.03em; overflow-wrap:normal; }
.bphp-premium-profile .bphp-profile-banner {
  grid-area:hero; min-height:270px; padding:26px; overflow:hidden; position:relative;
  display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,31%); gap:24px; align-items:center;
  border-radius:10px; background-color:color-mix(in srgb,var(--bphp-primary,#203a55) 50%,#112536);
  background-position:center; background-size:cover; color:#fff;
}
.bphp-premium-profile .bphp-profile-banner.has-hero-image::before { content:""; position:absolute; inset:0; background:rgba(5,19,33,.62); pointer-events:none; }
.bphp-premium-profile .bphp-profile-banner > * { position:relative; z-index:1; }
.bphp-premium-profile .bphp-profile-banner h1 { color:#fff; font-size:clamp(28px,2.8cqi,38px); line-height:1.12; margin:9px 0 12px; letter-spacing:-.035em; overflow-wrap:normal; }
.bphp-premium-profile .bphp-profile-banner-text :is(p,a) { color:#fff; }
.bphp-premium-profile .bphp-profile-breadcrumb { font-size:11px; margin:0 0 8px; }
.bphp-premium-profile .bphp-profile-breadcrumb a { text-decoration:underline; text-underline-offset:3px; }
.bphp-premium-profile .bphp-profile-tags { display:flex; gap:6px; flex-wrap:wrap; }
.bphp-premium-profile .bphp-profile-tags span { font-size:11px; line-height:1.4; border:1px solid rgba(255,255,255,.5); border-radius:20px; padding:5px 10px; color:#fff; }
.bphp-premium-profile .bphp-profile-summary { max-width:710px; font-size:14px; line-height:1.65; margin:14px 0 16px; }
.bphp-premium-profile .bphp-profile-custom-copy { font-size:13px; }
.bphp-premium-profile .bphp-profile-banner-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:19px; }
.bphp-premium-profile .bphp-profile-banner-facts > span { display:flex; align-items:center; gap:8px; min-width:0; font-size:11px; color:#fff; line-height:1.4; }
.bphp-premium-profile .bphp-profile-banner-facts > span > span:last-child { min-width:0; }
.bphp-premium-profile .bphp-profile-banner-facts strong { display:block; font-size:12px; line-height:1.45; margin-top:3px; font-weight:650; overflow-wrap:normal; }
.bphp-profile-icon { display:inline-grid; place-items:center; width:20px; height:20px; flex:0 0 20px; vertical-align:middle; color:inherit; }
.bphp-profile-icon .bphp-profile-fa { display:none; }
.bphp-profile-icon.has-fa .bphp-profile-fa { display:inline; }
.bphp-profile-icon.has-fa .bphp-profile-icon-fallback { display:none; }
.bphp-profile-icon-fallback { width:19px; height:19px; display:block; }
.bphp-premium-profile .bphp-profile-banner-facts .bphp-profile-icon { width:34px; height:34px; flex-basis:34px; border:1px solid rgba(255,255,255,.6); border-radius:7px; }
.bphp-premium-profile .bphp-profile-notice { padding:18px; background:#fff; color:#20354b; border:1px solid #dce3ea; border-radius:10px; box-shadow:0 4px 16px rgba(0,0,0,.08); }
.bphp-premium-profile .bphp-profile-notice-title { display:flex; gap:10px; align-items:flex-start; font-size:14px; line-height:1.4; color:#20354b; }
.bphp-premium-profile .bphp-profile-notice-title > .bphp-profile-icon { color:#b42318; }
.bphp-premium-profile .bphp-profile-notice p { font-size:12px; line-height:1.7; color:#34465a; margin:12px 0 15px; }
.bphp-premium-profile :is(.bphp-profile-notice-link,.bphp-profile-notice-inline > summary) { display:flex; align-items:center; justify-content:center; gap:9px; width:100%; border:1px solid #dae4ef; border-radius:20px; background:#f3f6f9; color:#174c86; min-height:40px; padding:9px 11px; font-size:12px; font-weight:650; cursor:pointer; text-decoration:none; }
.bphp-premium-profile .bphp-profile-notice-inline p { margin:12px 0 0; }
.bphp-premium-profile .bphp-profile-nav { grid-area:nav; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:0 6px; border-bottom:1px solid var(--bphp-line,#d3dfeb); background:var(--bphp-surface,#fff); border-radius:7px; position:relative; }
.bphp-premium-profile .bphp-profile-nav-links { display:flex; align-items:center; gap:0; overflow-x:auto; max-width:100%; min-width:0; scrollbar-width:thin; }
.bphp-premium-profile .bphp-profile-nav-links a { padding:15px 11px; color:var(--bphp-text,#253b54); font-size:12px; font-weight:650; text-decoration:none; white-space:nowrap; flex:0 0 auto; }
.bphp-premium-profile .bphp-profile-nav-links a:is(.is-active,:hover,:focus-visible) { color:var(--bphp-primary,#166bd3); box-shadow:inset 0 -3px var(--bphp-primary,#166bd3); }
.bphp-premium-profile .bphp-profile-nav-actions { display:flex; gap:8px; align-items:center; padding-block:6px; flex-shrink:0; }
.bphp-premium-profile .bphp-profile-print { margin:0; }
.bphp-premium-profile .bphp-profile-action { display:inline-flex; align-items:center; justify-content:center; gap:6px; border:1px solid var(--bphp-line,#c5d1dd); border-radius:6px; white-space:nowrap; min-height:40px; padding:9px 12px; font:inherit; font-size:12px; font-weight:650; line-height:1.2; cursor:pointer; background:var(--bphp-surface,#fff); color:var(--bphp-text,#182e44); }
.bphp-premium-profile .bphp-profile-action-save { background:var(--bphp-primary,#1c61ac); border-color:var(--bphp-primary,#1c61ac); color:var(--bphp-on-primary,#fff); }
.bphp-premium-profile .bphp-profile-action-save:disabled { opacity:.6; cursor:wait; }
.bphp-premium-profile .bphp-profile-action .bphp-profile-icon { width:16px; height:16px; flex-basis:16px; }
.bphp-premium-profile .bphp-profile-action .bphp-profile-icon svg { width:16px; height:16px; }
.bphp-premium-profile .bphp-profile-search-card label { font-size:11px; display:block; color:var(--bphp-muted,#536982); margin-bottom:6px; }
.bphp-premium-profile .bphp-profile-search-card input[type="search"] { width:100%; min-width:0; font:inherit; font-size:13px; border:1px solid var(--bphp-line,#cedce9); padding:10px; background:var(--bphp-surface,#fff); color:var(--bphp-text,#1b2e45); border-radius:20px; min-height:40px; }
.bphp-premium-profile .bphp-profile-search-result { font-size:10px; color:var(--bphp-muted,#536982); margin:7px 0 0; }
.bphp-premium-profile .bphp-profile-link-list { display:grid; max-height:430px; overflow-y:auto; margin-top:7px; scrollbar-width:thin; }
.bphp-premium-profile .bphp-profile-link-list a { padding:9px 9px; text-decoration:none; font-size:13px; line-height:1.4; border-left:2px solid transparent; border-radius:0 6px 6px 0; color:var(--bphp-text,#172b44); }
.bphp-premium-profile .bphp-profile-link-list a[hidden] { display:none; }
.bphp-premium-profile .bphp-profile-link-list a:is(.is-active,:hover) { color:var(--bphp-primary,#1467b4); background:color-mix(in srgb,var(--bphp-primary,#1467b4) 7%,var(--bphp-surface,#fff)); border-left-color:var(--bphp-primary,#1467b4); }
.bphp-premium-profile .bphp-profile-related-link { display:flex; align-items:center; gap:9px; padding:10px 0; border-bottom:1px solid var(--bphp-line,#e1e8ef); color:var(--bphp-text,#21354b); text-decoration:none; }
.bphp-premium-profile .bphp-profile-related-link:last-child { border-bottom:0; }
.bphp-premium-profile .bphp-profile-related-icon { display:grid; place-items:center; width:35px; height:35px; flex:0 0 35px; background:var(--bphp-soft,#eef4fa); border-radius:6px; color:var(--bphp-primary,#1c6fb3); overflow:hidden; }
.bphp-premium-profile .bphp-profile-related-icon img { width:100%; height:100%; object-fit:cover; }
.bphp-premium-profile .bphp-profile-related-link :is(strong,small) { display:block; overflow-wrap:normal; }
.bphp-premium-profile .bphp-profile-related-link strong { font-size:12px; font-weight:650; }
.bphp-premium-profile .bphp-profile-related-link small { margin-top:3px; color:var(--bphp-muted,#536981); font-size:11px; line-height:1.4; }
.bphp-premium-profile .bphp-profile-content { grid-area:main; display:grid; gap:16px; min-width:0; }
.bphp-premium-profile .bphp-profile-right { grid-area:right; min-width:0; display:grid; gap:16px; }
.bphp-premium-profile .bphp-profile-calculator-panel { padding:15px; position:relative; }
.bphp-premium-profile .bphp-profile-facts-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.bphp-premium-profile .bphp-profile-fact { display:flex; align-items:center; gap:8px; padding:10px 8px; border:1px solid var(--bphp-line,#e1e7ee); border-radius:6px; min-width:0; }
.bphp-premium-profile .bphp-profile-fact > .bphp-profile-icon { width:32px; height:32px; flex-basis:32px; background:color-mix(in srgb,var(--bphp-primary,#1c68b9) 7%,var(--bphp-surface,#fff)); color:var(--bphp-primary,#1c68b9); border-radius:9px; }
.bphp-premium-profile .bphp-profile-fact span:last-child { min-width:0; }
.bphp-premium-profile .bphp-profile-fact :is(small,strong) { display:block; font-size:11px; line-height:1.5; }
.bphp-premium-profile .bphp-profile-fact small { color:var(--bphp-muted,#64748b); margin-bottom:3px; }
.bphp-premium-profile .bphp-profile-fact strong { font-size:12px; color:var(--bphp-text,#26384d); font-weight:550; overflow-wrap:anywhere; word-break:normal; }
.bphp-premium-profile .bphp-profile-explanation { margin-top:24px; }
.bphp-premium-profile .bphp-profile-explanation :is(p,li) { font-size:14px; line-height:1.8; }
.bphp-premium-profile .bphp-profile-explanation h2 { margin-bottom:10px; }
.bphp-premium-profile :is(.bphp-profile-table-note,.bphp-profile-intro-copy) { font-size:12px; line-height:1.7; color:var(--bphp-muted,#5b7085); margin:0 0 13px; }
.bphp-premium-profile .bphp-profile-table-hint { font-size:11px; line-height:1.5; margin:0 0 9px; color:var(--bphp-muted,#536981); }
.bphp-premium-profile .bphp-protocol-choice-notice:empty { display:none; }
.bphp-premium-profile .bphp-profile-table-scroll { width:100%; max-width:100%; overflow-x:auto; overscroll-behavior-inline:contain; border:1px solid var(--bphp-line,#d9e2ec); border-radius:7px; scrollbar-width:thin; }
.bphp-premium-profile .bphp-profile-dosage-table { width:100%; min-width:1080px; border-collapse:collapse; table-layout:fixed; font-size:12px; line-height:1.6; }
.bphp-profile-dosage-table .bphp-col-phase { width:15%; }.bphp-profile-dosage-table .bphp-col-amount { width:13%; }.bphp-profile-dosage-table .bphp-col-frequency { width:12%; }.bphp-profile-dosage-table .bphp-col-duration { width:10%; }.bphp-profile-dosage-table .bphp-col-cycle { width:11%; }.bphp-profile-dosage-table .bphp-col-note { width:26%; }.bphp-profile-dosage-table .bphp-col-action { width:13%; }
.bphp-premium-profile .bphp-profile-dosage-table :is(th,td) { padding:11px 12px!important; word-break:normal!important; overflow-wrap:normal!important; hyphens:none!important; vertical-align:top; border:1px solid var(--bphp-line,#e1e7ed); color:var(--bphp-text,#263a53); text-align:left; }
.bphp-premium-profile .bphp-profile-dosage-table thead th { background:var(--bphp-soft,#eaf1f7); font-size:11px; line-height:1.4; font-weight:750; white-space:nowrap; }
.bphp-premium-profile .bphp-profile-dosage-table tbody :is(th,td) { background:var(--bphp-surface,#fff); font-weight:400; }
.bphp-premium-profile .bphp-profile-dosage-table tbody th { font-weight:650; }
.bphp-premium-profile .bphp-profile-dosage-table tbody tr:nth-child(even) :is(th,td) { background:color-mix(in srgb,var(--bphp-surface,#fff) 97%,var(--bphp-primary,#1467b4) 3%); }
.bphp-premium-profile .bphp-profile-dosage-table td small { display:block; margin-top:5px; color:var(--bphp-muted,#63758c); font-size:10px; }
.bphp-premium-profile .bphp-apply-protocol { width:100%; min-width:112px; min-height:42px; padding:8px 7px; font:inherit; font-size:11px; line-height:1.45; white-space:normal; word-break:normal; border:1px solid var(--bphp-line,#d0dce8); border-radius:6px; color:var(--bphp-primary,#1467b4); background:var(--bphp-surface,#fff); font-weight:650; cursor:pointer; }
.bphp-premium-profile .bphp-profile-references h2 small { font-size:12px; font-weight:500; color:var(--bphp-muted,#63758c); }
.bphp-premium-profile .bphp-profile-references ol { list-style:none; margin:0; padding:0; }
.bphp-premium-profile .bphp-profile-references li { display:grid; grid-template-columns:23px minmax(0,1fr) auto; gap:5px 10px; border-top:1px solid var(--bphp-line,#e1e7ee); padding:13px 0; font-size:12px; line-height:1.7; scroll-margin-top:20px; }
.bphp-premium-profile .bphp-profile-references li::before { content:var(--bphp-reference-number); border:1px solid var(--bphp-line,#d9e5f0); border-radius:50%; display:grid; place-items:center; grid-row:1/3; width:23px; height:23px; color:var(--bphp-primary,#1e6ab6); font-size:11px; font-weight:750; }
.bphp-premium-profile .bphp-profile-references li > span { grid-column:2; }
.bphp-premium-profile .bphp-profile-references li > a { grid-column:3; grid-row:1/3; font-weight:650; color:var(--bphp-primary,#1259a8); white-space:nowrap; }
.bphp-premium-profile .bphp-profile-references li > small { grid-column:2; color:var(--bphp-muted,#536981); }
/* Compact mode uses the production calculator and its unchanged safeguards. */
.bphp-premium-profile .bphp-profile-calculator-panel .bphp-calc--profile { display:flex!important; flex-direction:column!important; gap:11px; max-width:100%; min-width:0; background:transparent!important; border:0!important; border-radius:0!important; box-shadow:none!important; padding:0!important; overflow:visible!important; }
.bphp-premium-profile .bphp-calc--profile::before { display:none!important; }
.bphp-premium-profile .bphp-calc--profile > .bphp-calc-head { order:15; border:0; padding:0; margin:0; display:flex; justify-content:flex-end; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-head :is(h3,.bphp-calc-context) { display:none; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-reset { min-height:36px; padding:7px 12px; font-size:12px; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-note { order:13; margin:0; font-size:11px; line-height:1.65; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-note:first-of-type { order:14; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-variant-row { order:1; margin:0; display:block; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-variant-row label { font-size:12px; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:11px; margin:0; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-grid label { min-width:0; font-size:12px!important; font-weight:550; line-height:1.5; }
.bphp-premium-profile .bphp-calc--profile :is(input,select) { width:100%; min-width:0; min-height:42px; margin-top:5px; padding:9px 10px; font-size:13px!important; line-height:1.35; border-radius:6px; background:var(--bphp-field-surface,var(--bphp-surface,#fff)); color:var(--bphp-text,#172d45); border:1px solid var(--bphp-line,#cbd9e6); }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-grid--setup { order:2; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-grid--setup label:is(:first-child,:last-child) { grid-column:1/-1; }
.bphp-premium-profile .bphp-calc--profile .bphp-form-warning { order:3; font-size:12px; line-height:1.6; margin:0; }
.bphp-premium-profile .bphp-calc--profile .bphp-form-warning:empty { display:none; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-concentration-feature { order:4; padding:12px; background:color-mix(in srgb,var(--bphp-surface,#fff) 91%,#1a9b77 9%); border:1px solid var(--bphp-line,#d7e6e1); border-radius:6px; display:flex; flex-direction:column; gap:4px; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-concentration-feature span { font-size:12px; font-weight:650; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-concentration-feature strong { font-size:24px; line-height:1.3; font-weight:750; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-reference-heading { order:5; margin:5px 0 0; font-size:16px; line-height:1.4; font-weight:750; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-grid--reference { order:6; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-grid--reference label:last-child { grid-column:1/-1; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-result--compact { order:7; display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:8px; margin:0; padding:0; background:transparent!important; border:0; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-primary-result { display:flex; flex-direction:column; gap:5px; min-width:0; border:1px solid var(--bphp-line,#dae4ed); background:color-mix(in srgb,var(--bphp-primary,#1467b4) 7%,var(--bphp-surface,#fff)); border-radius:6px; padding:11px; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-primary-result span { font-size:11px; line-height:1.5; font-weight:650; letter-spacing:0; color:var(--bphp-muted,#4f6880); text-transform:none; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-primary-result strong { font-size:21px; font-weight:750; line-height:1.3; color:var(--bphp-text,#123856); overflow-wrap:normal; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-extra-result { grid-column:1/-1; font-size:11px; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-extra-result > div { padding:9px; border-bottom:1px solid var(--bphp-line,#dbe4ed); display:flex; gap:7px; justify-content:space-between; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-extra-result strong { font-size:12px; }
.bphp-premium-profile .bphp-calc--profile summary { cursor:pointer; color:var(--bphp-primary,#246cb1); font-size:12px; font-weight:650; line-height:1.55; }
.bphp-premium-profile .bphp-calc--profile .bphp-syringe-visual { order:8; margin:0; padding:9px 6px; background:var(--bphp-surface,#fff); box-shadow:none; border:1px solid var(--bphp-line,#dae4ed); border-radius:6px; min-width:0; }
.bphp-premium-profile .bphp-calc--profile :is(.bphp-syringe-device,.bphp-syringe-scale) { min-width:0; grid-template-columns:15px 9px minmax(0,1fr) 18px 10px; }
.bphp-premium-profile .bphp-calc--profile .bphp-syringe-needle { width:15px; }
.bphp-premium-profile .bphp-calc--profile .bphp-syringe-bar { height:40px; background:var(--bphp-surface,#fff); }
.bphp-premium-profile .bphp-calc--profile .bphp-syringe-liquid { background:var(--bphp-primary,#1467b4); }
.bphp-premium-profile .bphp-calc--profile .bphp-syringe-number { font-size:9px; }
.bphp-premium-profile .bphp-calc--profile .bphp-syringe-caption { font-size:10px; line-height:1.5; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-state-line { order:9; margin:0; gap:8px; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-state { font-size:11px; }
.bphp-premium-profile .bphp-calc--profile :is(.bphp-calc-precision,.bphp-capacity-warning) { order:10; margin:0; font-size:11px; line-height:1.65; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-profile-protocol { order:11; border-top:1px solid var(--bphp-line,#dce3ed); padding-top:11px; }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-protocol-box { padding:9px 0; border:0; background:var(--bphp-surface,#fff); }
.bphp-premium-profile .bphp-calc--profile .bphp-calc-extra-panel { order:12; border-top:1px solid var(--bphp-line,#dce4ed); padding-top:11px; background:var(--bphp-surface,#fff); min-width:0; }
.bphp-premium-profile .bphp-calc--profile :is(.bphp-m10-transparency,.bphp-m10-history,.bphp-blend-breakdown) { padding:10px 0 0; margin:0; box-shadow:none; background:var(--bphp-surface,#fff); border:0; border-radius:0; font-size:11px; }
.bphp-premium-profile .bphp-calc--profile :is(.bphp-m10-transparency h4,.bphp-m10-history h4) { font-size:13px; }
.bphp-premium-profile .bphp-profile-calc-footnote { color:var(--bphp-muted,#566d82); font-size:11px; line-height:1.65; margin:14px 0 0; border-top:1px solid var(--bphp-line,#dce4ed); padding-top:11px; }
.bphp-premium-profile .bphp-profile-vial-panel[hidden] { display:none; }
.bphp-premium-profile .bphp-profile-vial-panel dl { margin:0; }
.bphp-premium-profile .bphp-profile-vial-panel dl > div { display:grid; grid-template-columns:minmax(0,1fr) minmax(65px,.8fr); gap:8px; border-top:1px solid var(--bphp-line,#dce4ed); padding:8px 0; font-size:12px; line-height:1.6; }
.bphp-premium-profile .bphp-profile-vial-panel :is(dt,dd) { margin:0; }
.bphp-premium-profile .bphp-profile-vial-panel dd { font-weight:650; }
.bphp-premium-profile .bphp-profile-vial-panel p { font-size:11px; line-height:1.7; margin:9px 0 0; color:var(--bphp-muted,#536981); }
.bphp-premium-profile .bphp-profile-nav-actions .bphp-m9-popover { position:absolute; z-index:30; right:4px; top:calc(100% + 3px); width:min(330px,calc(100vw - 40px)); max-height:65vh; overflow:auto; box-shadow:0 10px 26px rgba(16,33,50,.14); background:var(--bphp-surface,#fff); border:1px solid var(--bphp-line,#dce4ed); border-radius:8px; padding:15px; }
.bphp-premium-profile :is(button,summary,a,input,select,[tabindex]):focus-visible { outline:2px solid var(--bphp-primary,#246db9); outline-offset:3px; }
/* Preserve existing editor-authored research tables in their original content. */
.bphp-page .bphp-table-wrap:has(.bphp-apply-protocol) { overflow-x:auto; max-width:100%; overscroll-behavior-inline:contain; }
.bphp-page .bphp-table-wrap:has(.bphp-apply-protocol) .bphp-table { min-width:1080px!important; width:100%; table-layout:auto; }
.bphp-page .bphp-table-wrap:has(.bphp-apply-protocol) :is(th,td) { word-break:normal!important; overflow-wrap:normal!important; hyphens:none!important; padding:11px 12px!important; }
.bphp-page .bphp-table-wrap:has(.bphp-apply-protocol) th { white-space:nowrap!important; min-width:112px; }
.bphp-page .bphp-table-wrap:has(.bphp-apply-protocol) :is(th:nth-child(6),td:nth-child(6)) { min-width:245px; }
.bphp-page .bphp-table-wrap:has(.bphp-apply-protocol) .bphp-apply-protocol { min-width:115px; white-space:normal!important; word-break:normal!important; }
@container bphp-profile (max-width:1350px) {
  .bphp-premium-profile .bphp-profile-layout { grid-template-columns:175px minmax(0,1fr) 300px; gap:14px; }
  .bphp-premium-profile .bphp-profile-facts-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .bphp-premium-profile .bphp-profile-banner-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@container bphp-profile (max-width:1050px) {
  .bphp-premium-profile .bphp-profile-layout { grid-template-columns:180px minmax(0,1fr); grid-template-areas:"hero hero" "nav nav" "main" "right"; }
  .bphp-premium-profile .bphp-profile-left { position:static; }
  .bphp-premium-profile .bphp-profile-banner { grid-template-columns:minmax(0,1fr) minmax(240px,34%); padding:22px; gap:20px; }
  .bphp-premium-profile .bphp-profile-right { grid-template-columns:minmax(0,1fr); }
}
@container bphp-profile (max-width:680px) {
  .bphp-premium-profile .bphp-profile-layout { grid-template-columns:minmax(0,1fr); grid-template-areas:"hero" "nav" "main" "right" "left"; gap:12px; }
  .bphp-premium-profile .bphp-profile-banner { grid-template-columns:minmax(0,1fr); padding:20px 16px; min-height:0; gap:20px; }
  .bphp-premium-profile .bphp-profile-banner h1 { font-size:30px; }
  .bphp-premium-profile .bphp-profile-banner-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .bphp-premium-profile .bphp-profile-nav { flex-direction:column; align-items:stretch; gap:0; }
  .bphp-premium-profile .bphp-profile-nav-links { width:100%; }
  .bphp-premium-profile .bphp-profile-nav-actions { justify-content:flex-end; }
  .bphp-premium-profile .bphp-profile-panel { padding:16px; }
  .bphp-premium-profile .bphp-profile-facts-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .bphp-premium-profile .bphp-profile-search-card .bphp-profile-link-list { max-height:235px; }
  .bphp-premium-profile .bphp-calc--profile :is(input,select) { font-size:16px!important; }
}
@container bphp-profile (max-width:330px) {
  .bphp-premium-profile .bphp-profile-facts-grid { grid-template-columns:minmax(0,1fr); }
  .bphp-premium-profile .bphp-profile-banner-facts { grid-template-columns:minmax(0,1fr); }
  .bphp-premium-profile .bphp-profile-notice { padding:14px; }
  .bphp-premium-profile .bphp-profile-references li { grid-template-columns:23px minmax(0,1fr); }
  .bphp-premium-profile .bphp-profile-references li > a { grid-column:2; grid-row:auto; }
  .bphp-premium-profile .bphp-calc--profile .bphp-calc-grid--setup { grid-template-columns:minmax(0,1fr)!important; }
  .bphp-premium-profile .bphp-calc--profile .bphp-calc-primary-result strong { font-size:18px; }
}
@media print {
  .bphp-profile-left,.bphp-profile-nav,.bphp-profile-right { display:none!important; }
  .bphp-premium-profile,.bphp-profile-layout { display:block!important; max-width:100%!important; }
  .bphp-profile-panel { break-inside:avoid; box-shadow:none!important; }
  .bphp-profile-banner { background-image:none!important; background:#fff!important; color:#111!important; padding:15px; border:1px solid #bbb; }
  .bphp-profile-banner :is(h1,p,strong,span) { color:#111!important; }
  .bphp-profile-notice { border:1px solid #ccc; box-shadow:none; }
  .bphp-profile-table-scroll { overflow:visible; }
  .bphp-premium-profile .bphp-profile-dosage-table { min-width:0!important; font-size:8px; table-layout:fixed; }
  .bphp-premium-profile .bphp-profile-dosage-table :is(th,td) { padding:4px!important; white-space:normal!important; }
  .bphp-apply-protocol,.bphp-profile-table-hint { display:none!important; }
}

/* v3.27.4 — readable, theme-native archive/profile with original connected research workflow. */
.bphp-premium-profile{box-sizing:border-box!important;max-width:100%;}
.bphp-premium-profile .bphp-profile-layout,.bphp-premium-profile .bphp-profile-content,.bphp-premium-profile .bphp-profile-reconstitution,.bphp-premium-profile .bphp-profile-calc-embedded{min-width:0;max-width:100%;}
.bphp-premium-profile .bphp-profile-reconstitution{grid-template-columns:minmax(0,1fr);}
.bphp-premium-profile .bphp-profile-calc-embedded .bphp-calc{min-width:0;}
.bphp-premium-profile .bphp-profile-table-scroll{width:100%;min-width:0;max-width:100%;overflow-x:auto;}
.bphp-premium-profile .bphp-profile-calc-embedded :is(input,select){min-width:0;max-width:100%;box-sizing:border-box;}
.bphp-premium-profile .bphp-profile-layout{grid-template-columns:minmax(185px,225px) minmax(0,1fr);grid-template-areas:"hero" "nav" "main";gap:16px}
.bphp-premium-profile .bphp-profile-content{width:100%;min-width:0;}
.bphp-premium-profile .bphp-profile-reconstitution{display:grid;gap:15px;}
.bphp-premium-profile .bphp-profile-reconstitution>h2,.bphp-premium-profile .bphp-profile-reconstitution>p{margin-bottom:0}
.bphp-premium-profile .bphp-profile-calc-embedded{width:100%;min-width:0}
.bphp-premium-profile .bphp-profile-calc-embedded .bphp-calc{width:100%;max-width:100%;}
.bphp-premium-profile .bphp-profile-calc-embedded .bphp-calc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.bphp-premium-profile .bphp-profile-calc-embedded .bphp-calc-grid--setup{grid-template-columns:repeat(2,minmax(0,1fr))}
.bphp-premium-profile .bphp-profile-dosage-table{min-width:850px;font-size:13px}
.bphp-premium-profile .bphp-profile-dosage-table .bphp-col-phase{width:15%}
.bphp-premium-profile .bphp-profile-dosage-table .bphp-col-amount{width:14%}
.bphp-premium-profile .bphp-profile-dosage-table .bphp-col-frequency{width:13%}
.bphp-premium-profile .bphp-profile-dosage-table .bphp-col-duration{width:12%}
.bphp-premium-profile .bphp-profile-dosage-table .bphp-col-cycle{width:12%}
.bphp-premium-profile .bphp-profile-dosage-table .bphp-col-note{width:20%}
.bphp-premium-profile .bphp-profile-dosage-table .bphp-col-action{width:14%}
.bphp-premium-profile .bphp-profile-dosage-table td button{font-size:12px;line-height:1.3;padding:8px 10px;min-width:120px;white-space:normal;word-break:normal;overflow-wrap:normal}
.bphp-premium-profile .bphp-reference-variant-choice{display:grid;grid-template-columns:minmax(130px,200px) minmax(0,1fr);align-items:center;gap:12px;max-width:760px}
.bphp-premium-profile .bphp-reference-variant-choice label{font-weight:650}
.bphp-premium-profile .bphp-reference-variant-choice select{min-height:42px;width:100%;max-width:100%;border:1px solid var(--bphp-line,#ccc);border-radius:6px;padding:8px 12px;background:var(--bphp-surface,#fff);color:var(--bphp-text,inherit)}
.bphp-premium-profile .bphp-profile-reference{border-top:1px solid var(--bphp-line,#ddd);padding-top:20px}
.bphp-premium-profile .bphp-profile-reference>p{margin:8px 0 12px;color:var(--bphp-muted,#53667a)}
.bphp-premium-profile .bphp-profile-reference-table{width:100%;border-collapse:collapse;min-width:530px}
.bphp-premium-profile .bphp-profile-reference-table :is(td,th){text-align:left;padding:10px 12px;border-bottom:1px solid var(--bphp-line,#dde5ea);font-size:13px}
.bphp-premium-profile .bphp-profile-reference-table thead th{background:var(--bphp-soft,#f4f7fa);font-weight:700;white-space:nowrap}
.bphp-premium-profile [data-bphp-use-volume]{min-height:36px;padding:7px 12px;border:1px solid var(--bphp-line,#d4dce6);background:var(--bphp-surface,#fff);color:var(--bphp-primary,inherit);border-radius:5px;cursor:pointer}
.bphp-premium-profile [data-bphp-use-volume]:focus-visible{outline:3px solid var(--bphp-primary,#2b6ec3);outline-offset:2px}
.bphp-archive .bphp-card-variants{display:block;font-size:12px;line-height:1.45;color:var(--bphp-muted,inherit);margin:10px 0;font-weight:550}
@container bphp-profile (max-width:980px){.bphp-premium-profile .bphp-profile-layout{grid-template-columns:180px minmax(0,1fr);grid-template-areas:"hero hero" "nav nav" "left main"}.bphp-premium-profile .bphp-profile-reconstitution{min-width:0}}
@container bphp-profile (max-width:700px){.bphp-premium-profile .bphp-profile-layout{grid-template-columns:1fr;grid-template-areas:"hero" "nav" "main" "left"}.bphp-premium-profile .bphp-profile-calc-embedded .bphp-calc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bphp-premium-profile .bphp-profile-reference-table{min-width:520px}}
@container bphp-profile (max-width:420px){.bphp-premium-profile .bphp-profile-calc-embedded .bphp-calc-grid,.bphp-premium-profile .bphp-profile-calc-embedded .bphp-calc-grid--setup{grid-template-columns:1fr!important}.bphp-premium-profile .bphp-reference-variant-choice{grid-template-columns:1fr}}
@media print{.bphp-premium-profile .bphp-profile-layout{display:block!important}.bphp-premium-profile .bphp-profile-calculator-panel,.bphp-premium-profile .bphp-profile-reference{break-inside:avoid}.bphp-premium-profile .bphp-profile-reference-table{min-width:0!important}}

/* M14 research schedule & inventory : crisp, theme-native surfaces. */
.bphp-premium-profile :is(.bphp-schedule-panel,.bphp-supplies-panel) { min-width:0; }
.bphp-premium-profile .bphp-schedule-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:10px 15px; margin:12px 0 18px; padding:12px 14px; border:1px solid var(--bphp-line,#dce3ea); border-radius:7px; }
.bphp-premium-profile .bphp-schedule-toolbar label { font-weight:650; }
.bphp-premium-profile .bphp-schedule-toolbar input { flex:0 0 85px; width:85px; min-height:38px; border:1px solid var(--bphp-line,#cbd5e1); border-radius:5px; color:inherit; background:var(--bphp-surface,#fff); padding:5px 10px; }
.bphp-premium-profile .bphp-schedule-toolbar p { flex-basis:100%; font-size:12px; line-height:1.5; color:var(--bphp-muted,#64748b); margin:0; }
.bphp-premium-profile .bphp-schedule-table { min-width:1120px; width:100%; border-collapse:collapse; table-layout:auto; font-size:12px; }
.bphp-premium-profile .bphp-schedule-table :is(th,td) { padding:11px 12px; line-height:1.5; vertical-align:top; text-align:left; border-bottom:1px solid var(--bphp-line,#dce3ea); color:var(--bphp-text,inherit); word-break:normal; overflow-wrap:normal; }
.bphp-premium-profile .bphp-schedule-table thead th { white-space:nowrap; background:var(--bphp-soft,#eef2f6); font-size:11px; }
.bphp-premium-profile .bphp-schedule-table tbody th { font-weight:650; }
.bphp-premium-profile .bphp-schedule-table input[type=checkbox] { width:17px; height:17px; accent-color:var(--bphp-primary,#2058a0); }
.bphp-premium-profile .bphp-supply-results { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.bphp-premium-profile .bphp-supply-results>div { border:1px solid var(--bphp-line,#dce3ea); border-radius:7px; padding:15px 13px; background:var(--bphp-surface,#fff); }
.bphp-premium-profile .bphp-supply-results small { display:block; color:var(--bphp-muted,#65748a); font-size:12px; margin-bottom:7px; }
.bphp-premium-profile .bphp-supply-results strong { display:block; font-size:20px; font-weight:750; line-height:1.2; color:var(--bphp-text,inherit); }
.bphp-premium-profile .bphp-supply-feedback { margin:16px 0 10px; color:var(--bphp-text,inherit); font-size:13px; }
.bphp-premium-profile .bphp-supply-disclaimer { margin:0; padding:12px 14px; border-left:3px solid var(--bphp-primary,#2259a0); background:var(--bphp-soft,#f2f5f9); color:var(--bphp-text,inherit); font-size:12px; line-height:1.65; }
@container bphp-profile (max-width:760px) {.bphp-premium-profile .bphp-supply-results { grid-template-columns:repeat(2,minmax(0,1fr)); }}
@container bphp-profile (max-width:460px) {.bphp-premium-profile .bphp-supply-results { grid-template-columns:1fr; }.bphp-premium-profile .bphp-schedule-table{min-width:990px;} }
@media print {.bphp-premium-profile .bphp-schedule-table{font-size:10px;} .bphp-premium-profile .bphp-schedule-toolbar input{border:0;} }
/* Reported-schedule controls: theme-native, no decorative glass effects. */
.bphp-premium-profile .bphp-schedule-program-controls{display:flex;flex-wrap:wrap;gap:1rem;align-items:end;margin:1rem 0 1.25rem}
.bphp-premium-profile .bphp-schedule-program-controls label{flex:1 1 220px;min-width:0;display:grid;gap:.4rem;font-weight:600}
.bphp-premium-profile .bphp-schedule-program-controls select{width:100%;max-width:100%;min-height:44px;line-height:1.3;background:var(--bphp-surface,#fff);color:inherit;border:1px solid var(--bphp-line,#cbd5e1);border-radius:6px;padding:.65rem .85rem}
.bphp-premium-profile .bphp-schedule-program .bphp-profile-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
.bphp-premium-profile .bphp-schedule-program .bphp-schedule-table{min-width:870px;table-layout:auto}
.bphp-premium-profile .bphp-schedule-program .bphp-schedule-table th,.bphp-premium-profile .bphp-schedule-program .bphp-schedule-table td{white-space:normal;word-break:normal;overflow-wrap:normal;padding:.8rem .9rem;vertical-align:top;min-width:105px}
.bphp-premium-profile .bphp-schedule-program .bphp-schedule-table th:first-child{min-width:155px}

/* Native editor profile grids: each section is a genuine block/widget, not a monolith. */
.bphp-profile-editable { width:100%; max-width:none; font-family:inherit; }
.bphp-profile-editable .bphp-profile-editable-columns { align-items:flex-start; gap:clamp(16px,2.3vw,32px); }
.bphp-profile-editable .bphp-profile-panel,
.bphp-profile-editable .bphp-profile-banner,
.bphp-profile-editable .bphp-profile-nav { margin-block:0 16px; }
.bphp-profile-editable .bphp-vc-component { margin:0 0 16px; max-width:none; }
.bphp-profile-editable .bphp-profile-banner { display:block; }
.bphp-profile-editable .bphp-profile-left { position:static; }
.bphp-profile-editable :is(.elementor-column,.vc_column_container,.wp-block-column) { min-width:0; }
.bphp-profile-editable .bphp-profile-composition-discrepancy { border-inline-start:3px solid currentColor; padding:10px 14px; font-size:.88em; }
@media(max-width:767px) {
 .bphp-profile-editable .bphp-profile-editable-columns { display:block; }
 .bphp-profile-editable .bphp-profile-editable-columns > .wp-block-column { flex-basis:100%!important; }
 .bphp-profile-editable .bphp-profile-banner { min-height:0; }
}


/* v3.28.3 — Editor-native profile columns: prevent narrow/overlapping research sections.
 * Only the seeded BioHack editable profile layout is targeted; themes and custom
 * Elementor/WPBakery/Gutenberg layouts outside that shell are untouched.
 */
.bphp-premium-profile.bphp-profile-editable .bphp-component,
.bphp-premium-profile.bphp-profile-editable .bphp-component > :is(section,header,nav,aside),
.bphp-premium-profile.bphp-profile-editable .bphp-profile-panel,
.bphp-premium-profile.bphp-profile-editable .bphp-profile-banner {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}
.bphp-premium-profile.bphp-profile-editable .bphp-vc-profile-part-hero .bphp-profile-banner-facts > span,
.bphp-premium-profile.bphp-profile-editable .bphp-profile-facts-grid :is(strong,small) {
  min-width:0;
  overflow-wrap:anywhere;
}
.bphp-premium-profile.bphp-profile-editable .bphp-profile-table-scroll {
  width: 100%; max-width: 100%; min-width: 0;
  overflow-x: auto;
}
/* Narrow editor containers, not just narrow devices, switch to a single main column. */
@container bphp-profile (max-width: 960px) {
  .bphp-profile-editable > .wp-block-columns,
  .bphp-profile-editable > .elementor-container {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 18px;
  }
  .bphp-profile-editable > :is(.wp-block-columns,.elementor-container) > :is(.wp-block-column,.elementor-column) {
    flex: 0 1 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    flex-basis: auto !important;
    min-width: 0 !important;
  }
  .bphp-profile-editable > :is(.wp-block-columns,.elementor-container) > :is(.wp-block-column,.elementor-column):first-child {order:2}
  .bphp-profile-editable > :is(.wp-block-columns,.elementor-container) > :is(.wp-block-column,.elementor-column):nth-child(2) {order:1}
  .bphp-profile-editable.vc_row {display:flex!important;flex-direction:column!important;align-items:stretch!important}
  .bphp-profile-editable.vc_row > .vc_column_container {width:100%!important;max-width:100%!important;flex:none!important;float:none!important}
  .bphp-profile-editable.vc_row > .vc_column_container:first-child {order:2}
  .bphp-profile-editable.vc_row > .vc_column_container:nth-child(2) {order:1}
  .bphp-profile-editable .bphp-profile-left {position:static;top:auto}
  .bphp-profile-editable .bphp-profile-banner {grid-template-columns:minmax(0,1fr);gap:16px;min-height:0}
  .bphp-profile-editable .bphp-profile-banner-facts {grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* Viewport fallback for classic editor wrappers and builders without container CSS. */
@media (max-width: 820px) {
  .bphp-profile-editable > .wp-block-columns,
  .bphp-profile-editable > .elementor-container {display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:18px}
  .bphp-profile-editable > :is(.wp-block-columns,.elementor-container) > :is(.wp-block-column,.elementor-column) {width:100%!important;max-width:100%!important;flex-basis:auto!important;min-width:0!important}
  .bphp-profile-editable > :is(.wp-block-columns,.elementor-container) > :is(.wp-block-column,.elementor-column):first-child {order:2}
  .bphp-profile-editable > :is(.wp-block-columns,.elementor-container) > :is(.wp-block-column,.elementor-column):nth-child(2) {order:1}
  .bphp-profile-editable.vc_row {display:flex!important;flex-direction:column!important}
  .bphp-profile-editable.vc_row > .vc_column_container {width:100%!important;max-width:100%!important;flex:none!important;float:none!important}
  .bphp-profile-editable.vc_row > .vc_column_container:first-child {order:2}
  .bphp-profile-editable.vc_row > .vc_column_container:nth-child(2) {order:1}
  .bphp-profile-editable .bphp-profile-left {position:static;top:auto}
  .bphp-profile-editable .bphp-profile-banner {grid-template-columns:minmax(0,1fr);min-height:0}
  .bphp-profile-editable .bphp-profile-banner-facts {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 500px) {
  .bphp-profile-editable .bphp-profile-banner-facts {grid-template-columns:minmax(0,1fr)}
  .bphp-profile-editable .bphp-profile-nav {flex-wrap:wrap}
  .bphp-profile-editable .bphp-profile-nav-links {width:100%}
  .bphp-profile-editable .bphp-profile-nav-actions {width:100%;justify-content:flex-end}
  .bphp-profile-editable .bphp-profile-facts-grid {grid-template-columns:minmax(0,1fr)}
}


/* v3.28.4 — Theme-container aware profile sizing.
 * The theme/page-builder owns its outer width: this CSS never sets a viewport-wide
 * breakout, fixed global max width, or theme template override. Breakpoints depend
 * on the space actually assigned to BioHack, not the browser viewport.
 */
.bphp-premium-profile {
  inline-size:100%; max-inline-size:100%; min-inline-size:0;
  margin-inline:0; padding-inline:0;
}
.bphp-premium-profile :is(.bphp-profile-layout,.bphp-profile-content,.bphp-profile-editable-columns) {
  inline-size:100%; max-inline-size:100%; min-inline-size:0;
}
/* The current complete-profile template has NO right-hand grid child: its
 * calculator is already within main content. Reserving a third (empty) 320px
 * rail was needlessly shrinking the actual research panel on wide themes.
 * Keep two columns unless a future layout explicitly supplies a third rail.
 */
.bphp-premium-profile .bphp-profile-layout {
  grid-template-columns:clamp(175px,18%,250px) minmax(0,1fr);
  grid-template-areas:"hero" "nav" "main";
}
@container bphp-profile (min-width: 1321px) {
  .bphp-premium-profile .bphp-profile-layout:has(> .bphp-profile-right) {
    grid-template-columns:clamp(175px,15%,220px) minmax(0,1fr) clamp(270px,24%,340px);
    grid-template-areas:"hero hero" "nav nav" "main right";
  }
}
@container bphp-profile (max-width: 1320px) {
  .bphp-premium-profile .bphp-profile-layout:has(> .bphp-profile-right) {
    grid-template-areas:"hero" "nav" "main" ". right";
  }
}
@container bphp-profile (max-width: 870px) {
  .bphp-premium-profile .bphp-profile-layout,
  .bphp-premium-profile .bphp-profile-layout:has(> .bphp-profile-right) {
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:"hero" "nav" "main" "right" "left";
  }
  .bphp-premium-profile .bphp-profile-left {position:static;top:auto}
}
/* Gutenberg / Elementor: honor the chosen theme/builder width at all times.
 * Reflow only the seed's immediate research columns, never arbitrary user rows.
 */
@container bphp-profile (max-width: 1100px) {
  .bphp-premium-profile.bphp-profile-editable > :is(.wp-block-columns,.elementor-container) {
    display:flex!important; flex-direction:column!important;
    align-items:stretch!important; gap:18px;
  }
  .bphp-premium-profile.bphp-profile-editable > :is(.wp-block-columns,.elementor-container) > :is(.wp-block-column,.elementor-column) {
    flex:0 1 auto!important; inline-size:100%!important;
    max-inline-size:100%!important; flex-basis:auto!important;
    min-inline-size:0!important;
  }
  .bphp-premium-profile.bphp-profile-editable > :is(.wp-block-columns,.elementor-container) > :first-child {order:2}
  .bphp-premium-profile.bphp-profile-editable > :is(.wp-block-columns,.elementor-container) > :nth-child(2) {order:1}
}
/* WPBakery rows are the BioHack container themselves: a rule aimed at the row
 * INSIDE its own @container would have no effect. Wrapping uses intrinsic widths,
 * so it also responds to a desktop theme's narrow content area.
 */
.bphp-premium-profile.bphp-profile-editable.bphp-wpbakery-profile.vc_row {
  display:flex!important; flex-wrap:wrap; align-items:flex-start; gap:18px;
  inline-size:100%; max-inline-size:100%; margin-inline:0;
}
.bphp-premium-profile.bphp-wpbakery-profile.vc_row > .vc_column_container:first-child {
  flex:1 1 210px!important; inline-size:auto!important;
  min-inline-size:min(100%,210px); max-inline-size:none;
  float:none!important;
}
.bphp-premium-profile.bphp-wpbakery-profile.vc_row > .vc_column_container:nth-child(2) {
  flex:4 1 735px!important; inline-size:auto!important;
  min-inline-size:min(100%,735px); max-inline-size:none;
  float:none!important;
}
@container bphp-profile (max-width: 980px) {
  .bphp-premium-profile.bphp-wpbakery-profile.vc_row > .vc_column_container:first-child,
  .bphp-premium-profile.bphp-wpbakery-profile.vc_row > .vc_column_container:nth-child(2) {
    flex:1 1 100%!important; inline-size:100%!important;
    max-inline-size:100%!important; min-inline-size:0!important;
  }
  .bphp-premium-profile.bphp-wpbakery-profile.vc_row > .vc_column_container:first-child {order:2}
  .bphp-premium-profile.bphp-wpbakery-profile.vc_row > .vc_column_container:nth-child(2) {order:1}
}
@media print {
  .bphp-premium-profile .bphp-profile-layout {display:block!important}
  .bphp-premium-profile.bphp-wpbakery-profile.vc_row {display:block!important}
}


/* v3.28.5: Intrinsic-width safe native editor profile shell.
   Outer CSS size containment suppresses an intrinsic width contribution in theme
   auto/grid/flex tracks. A 100% width cannot repair a parent sized from zero.
   Do not install an inline-size container on a host-facing editor section. */
.bphp-premium-profile.bphp-profile-editable {
  container-type:normal;
  container-name:none;
  display:block;
  width:100%; min-width:0; max-width:100%;
}
.bphp-premium-profile.bphp-profile-editable > :is(.bphp-profile-editable-columns,.elementor-container),
.bphp-premium-profile.bphp-profile-editable.vc_row {
  display:flex!important; flex-wrap:wrap!important;
  align-items:stretch; gap:clamp(14px,2vw,24px);
  width:100%; min-width:0; max-width:100%;
}
.bphp-premium-profile.bphp-profile-editable > :is(.bphp-profile-editable-columns,.elementor-container) > :first-child,
.bphp-premium-profile.bphp-profile-editable.vc_row > .vc_column_container:first-child {
  flex:1 1 210px!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  float:none!important;
}
.bphp-premium-profile.bphp-profile-editable > :is(.bphp-profile-editable-columns,.elementor-container) > :nth-child(2),
.bphp-premium-profile.bphp-profile-editable.vc_row > .vc_column_container:nth-child(2) {
  flex:4 1 680px!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  float:none!important;
}
/* With genuinely narrow theme content, the main profile comes first and the
   sidebar becomes a supporting section. Do not use viewport-only breakpoints. */
@media (max-width:820px) {
  .bphp-premium-profile.bphp-profile-editable > :is(.bphp-profile-editable-columns,.elementor-container) > :first-child,
  .bphp-premium-profile.bphp-profile-editable.vc_row > .vc_column_container:first-child {order:2}
  .bphp-premium-profile.bphp-profile-editable > :is(.bphp-profile-editable-columns,.elementor-container) > :nth-child(2),
  .bphp-premium-profile.bphp-profile-editable.vc_row > .vc_column_container:nth-child(2) {order:1}
}
/* Profile content modules use the editor's actual column width, not their own
   intrinsic shrink-to-fit measurement. */
.bphp-premium-profile.bphp-profile-editable .bphp-component {
  container-type:normal;
  container-name:none;
  display:block;
  width:100%; max-width:100%; min-width:0;
}

/* Profiles use the theme content width; the compound content stays connected. */
.bphp-premium-profile .bphp-profile-layout{display:flex;flex-direction:column;width:100%;max-width:100%;gap:1rem}.bphp-premium-profile .bphp-profile-layout>*{width:100%;min-width:0}.bphp-profile-recon-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.25rem;align-items:start}.bphp-profile-recon-columns>*{min-width:0}.bphp-profile-recon-columns .bphp-profile-reference{margin:0}.bphp-premium-profile .bphp-profile-reconstitution{min-width:0;width:100%}@media(max-width:760px){.bphp-profile-recon-columns{grid-template-columns:1fr}}

.bphp-profile-reconstitution{container-type:inline-size;container-name:bphp-reconstitution}@container bphp-reconstitution (max-width:760px){.bphp-profile-recon-columns{grid-template-columns:1fr}}
