.product-analysis-report > *,
.product-analysis-overview-body,
.product-analysis-prose { min-width: 0; }
.product-analysis-overview:not(:has(> img)) { grid-template-columns: minmax(0, 1fr); }
.product-analysis-prose { max-width: 75ch; overflow-wrap: anywhere; line-height: 1.8; color: #334155; }
.product-analysis-prose :is(h1, h2) { font-size: 1.25rem; margin: 1.5rem 0 .75rem; }
.product-analysis-prose h3 { font-size: 1.1rem; margin: 1.25rem 0 .5rem; }
.product-analysis-prose p { margin: .75rem 0; }
.product-analysis-prose :is(ul, ol) { padding-inline-start: 1.5rem; }
.product-analysis-prose li + li { margin-top: .4rem; }
.product-analysis-scope { font-size: .875rem; line-height: 1.7; color: #475569; margin: 12px 0 0; overflow-wrap: anywhere; }
.product-analysis-history > summary { cursor: pointer; padding: 12px 0; color: #5b21b6; }
.product-analysis-history > summary:focus-visible { outline: 2px solid #6d28d9; outline-offset: 3px; }
.product-analysis-overview h2 { overflow-wrap: anywhere; }
.product-analysis-prose pre { max-width: 100%; overflow-x: auto; }
.product-analysis-prose :is(h1, h2, h3) { border: 0; padding-inline-start: 0; }
.product-analysis-prose blockquote { border: 1px solid #d8d1eb; padding: 12px; background: #f7f5fc; color: #475569; }
.product-full-report { display: block !important; min-width: 0; color: #263047; background: #fff; padding: 24px; }
.pfr-header h2 { font-size: 1.65rem; line-height: 1.4; margin: 0 0 12px; overflow-wrap: anywhere; }
.pfr-header p, .pfr-prose, .pfr-conclusion { max-width: 75ch; line-height: 1.85; white-space: pre-wrap; overflow-wrap: anywhere; }
.pfr-status { background: #f3effc; padding: 12px 16px; border-radius: 8px; color: #4c3575; }
.pfr-nav { display: flex; gap: 8px 20px; flex-wrap: wrap; padding: 18px 0; border-bottom: 1px solid #ded8ec; }
.pfr-nav a { color: #5b21b6; font-size: .9rem; text-decoration: underline; text-underline-offset: 4px; }
.pfr-section { padding: 30px 0; border-bottom: 1px solid #e5e1ed; min-width: 0; scroll-margin-top: 100px; }
.pfr-section h3 { font-size: 1.3rem; margin: 0 0 14px; color: #252033; }
.pfr-section h4 { font-size: 1rem; margin: 22px 0 8px; color: #543884; }
.pfr-muted { color: #536078; font-size: .875rem; line-height: 1.75; max-width: 90ch; overflow-wrap: anywhere; }
.pfr-table-scroll { max-width: 100%; overflow-x: auto; margin: 18px 0; }
.pfr-table-scroll table { width: 100%; border-collapse: collapse; font-size: .9rem; line-height: 1.65; }
.pfr-table-scroll th { background: #f3f0fa; text-align: left; color: #403653; font-weight: 600; }
.pfr-table-scroll :is(th,td) { padding: 12px 14px; border-bottom: 1px solid #e8e4ef; vertical-align: top; min-width: 70px; max-width: 600px; overflow-wrap: anywhere; white-space: pre-wrap; }
.pfr-table-scroll svg { display: block; min-width: 820px; width: 100%; }
.pfr-search { display: flex; gap: 12px; align-items: center; margin-top: 18px; color: #475569; }
.pfr-search input { padding: 10px 12px; border: 1px solid #aaa0ba; border-radius: 6px; font: inherit; max-width: 100%; min-width: 0; }
.pfr-search input::placeholder { color: #626777; }
.pfr-section summary { cursor: pointer; color: #5b21b6; padding: 12px 0; }
.product-full-report :is(a,input,summary,[tabindex]):focus-visible { outline: 2px solid #6d28d9; outline-offset: 3px; }
@media(max-width:600px) { .product-full-report { padding: 14px; } .pfr-header h2 { font-size: 1.25rem; } .pfr-nav { gap: 10px 16px; } .pfr-table-scroll table { min-width: 580px; } .pfr-search { align-items: flex-start; flex-direction: column; } }
