/* Scoped, readable reference content for each product's own visual system. */
.app-reference { padding: clamp(2.5rem, 6vw, 5rem) clamp(1rem, 4vw, 2rem); border-block-start: 1px solid #8893a333; font-family: var(--font-body, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif); }
.app-reference, .app-reference * { box-sizing: border-box; }
.app-reference__inner { max-width: 1080px; margin-inline: auto; overflow-wrap: anywhere; }
.app-reference h2 { max-width: 30ch; margin: 0 0 1.25rem; font-size: clamp(1.7rem, 4vw, 2.6rem); line-height: 1.18; }
.app-reference h3 { margin: 2rem 0 .75rem; font-size: clamp(1.1rem, 2.4vw, 1.35rem); line-height: 1.35; }
.app-reference p, .app-reference li { font-size: 1rem; line-height: 1.75; max-width: 82ch; }
.app-reference p { margin: .6rem 0 1rem; }
.app-reference__definition { font-size: 1.1rem !important; }
.app-reference__facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; }
.app-reference__facts > div { min-width: 0; }
.app-reference__steps { padding-inline-start: 1.5rem; list-style: decimal; }
.app-reference__steps li { padding-inline-start: .4rem; margin-block: .9rem; }
.app-reference__questions details { border-block-end: 1px solid #8893a34d; padding-block: 1rem; }
.app-reference__questions summary { cursor: pointer; font-size: 1rem; font-weight: 650; line-height: 1.6; }
.app-reference__questions summary:focus-visible, .app-reference a:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.app-reference__questions p { padding-inline-start: 1rem; }
.app-reference__sources { padding-inline-start: 1.25rem; }
.app-reference__sources li { margin-block: .5rem; }
.app-reference a { color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.app-reference__note { font-size: .85rem !important; }
.app-reference__status { border-inline-start: 3px solid currentColor; padding-inline-start: 1rem; }
@media (max-width: 640px) { .app-reference__facts { grid-template-columns: 1fr; gap: 0; } }

/* Repairs for measured content overflow, scoped to the affected product. */
body[data-app-document="voxforge"] main img { max-width: 100%; height: auto; }
body[data-app-document="familylegacy"] .feat-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); }
body[data-app-document="familylegacy"] .pricing-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); }
body[data-app-document="scoutbar"] .sb-grid > *,
body[data-app-document="scoutbar"] .sb-cta-card > * { min-width: 0; }
body[data-app-document="scoutbar"] .sb-actions .btn,
body[data-app-document="scoutbar"] .sb-notify .btn { max-width: 100%; white-space: normal; text-align: center; }
body[data-app-document="persona"] .product-proof__grid--phone { width: 100%; min-width: 0; max-width: 100%; overflow-x: auto; }
body[data-app-document="songforge"] .pricing-card { min-width: 0; overflow-wrap: anywhere; }
body[data-app-document="dressgenius"] .app-hero__label { color: #e9ddff; }
body[data-app-document="dressgenius"] .app-hero .btn--cta-primary { color: #352062; background: #fff; border: 1px solid #fff; }
body[data-app-document] .nav--on-dark:not(.scrolled) .nav__toggle span { background: #fff; }
body[data-app-document="chartwright"] .hero > * { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
body[data-app-document="chartwright"] .skip:not(:focus) { left: 0; top: 0; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
body[data-app-document="scoutbar"] .btn { max-width: 100%; white-space: normal; text-align: center; }
body[data-app-document="papermind"] .benchmark > *,
body[data-app-document="papermind"] .download-panel > * { min-width: 0; overflow-wrap: anywhere; }
body[data-app-document="papermind"] .benchmark strong { font-size: clamp(1.65rem, 6vw, 3.375rem); overflow-wrap: anywhere; }
@media (max-width: 480px) {
  body[data-app-document="persona"] .pricing-grid,
  body[data-app-document="scoutbar"] .sb-pricing,
  body[data-app-document="scoutbar"] .sb-meta { grid-template-columns: minmax(0, 1fr); }
  body[data-app-document="persona"] .pricing-card,
  body[data-app-document="scoutbar"] .sb-price-card { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
  body[data-app-document="persona"] .pricing-price { font-size: clamp(1.4rem, 5vw, 1.8rem); }
  body[data-app-document="songforge"] .pricing-wrap { grid-template-columns: minmax(0, 1fr); }
  body[data-app-document="songforge"] .pricing-price { font-size: 2rem; }
  body[data-app-document="weathertracking"] .feature-grid { grid-template-columns: minmax(0, 1fr); }
  body[data-app-document="weathertracking"] .feature-grid article { min-width: 0; }
  body[data-app-document="weathertracking"] .feature-grid h2 { font-size: clamp(1.6rem, 7vw, 2.375rem); overflow-wrap: anywhere; }
}
