.product-analysis-page main { max-width: 1180px; margin-inline: auto; }
.product-analysis-page .card { min-width: 0; }
.pa-intro p { max-width: 76ch; }
.pa-search, .pa-controls { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1rem; align-items: end; }
.pa-search label, .pa-controls label { display: grid; gap: .45rem; min-width: 0; font-weight: 600; }
.pa-search input, .pa-search select, .pa-controls input, .pa-controls select { box-sizing: border-box; width: 100%; min-width: 0; min-height: 44px; padding: .65rem; border: 1px solid #5c626e; border-radius: 6px; background: #15191f; color: #f1f1ef; font: inherit; }
.product-analysis-page .btn, .pa-details summary { min-height: 44px; }
.product-analysis-page :is(a, button, input, select, summary):focus-visible { outline: 3px solid #e8bb65; outline-offset: 3px; }
.pa-results { padding: 0; list-style: none; }
.pa-results li { display: flex; gap: 1rem; justify-content: space-between; align-items: center; padding: 1rem 0; border-top: 1px solid #454950; }
.pa-results small { display: block; margin-top: .35rem; }
.pa-results .btn { flex-shrink: 0; }
.pa-actions { display: flex; gap: 1rem; flex-wrap: wrap; align-items: center; }
.pa-metrics, .pa-quotes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 1.5rem 0; }
.pa-metrics article, .pa-quotes article { min-width: 0; padding: 1.25rem; border: 1px solid #55504a; border-radius: 10px; background: #15191f; }
.pa-metrics h3, .pa-quotes h3 { margin-top: 0; font-size: 1rem; }
.pa-metrics strong { display: block; font-size: clamp(1.4rem, 3vw, 2rem); color: #ebc079; font-variant-numeric: tabular-nums; }
.pa-quotes strong { font-size: 1.3rem; }
.pa-warning { border-left: 3px solid #e8bb65; padding: .75rem 1rem; background: #29251e; }
.pa-details { margin-top: 1.25rem; }
.pa-details summary { cursor: pointer; padding: .65rem 0; font-weight: 600; }
.pa-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1rem; }
.pa-facts dt { font-weight: 600; color: #c7c8cc; }
.pa-facts dd { margin: .4rem 0 0; }
.product-analysis-page :is(p, dd, code, h2, strong, small) { overflow-wrap: anywhere; }
.product-analysis-page [hidden] { display: none !important; }
.pa-evidence { scroll-margin-top: 6rem; }
.pa-evidence svg { display: block; width: 100%; max-height: 260px; background: #15191f; border: 1px solid #55504a; }
.pa-evidence button { margin: .25rem; min-height: 44px; }
.pa-evidence button:disabled { opacity: .5; cursor: default; }
.pa-assumptions { margin-block: 1.5rem; padding: 1rem; border: 1px dashed #e8bb65; border-radius: .6rem; }
.pa-assumptions label { display: block; margin-block: .75rem; }
.pa-assumptions input[type="checkbox"] { width: auto; margin-right: .5rem; }
.pa-assumptions input[type="number"] { display: block; max-width: 10rem; margin-top: .5rem; }
.pa-table-scroll { max-width: 100%; overflow-x: auto; margin-block: 1rem; }
.pa-table-scroll table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.pa-table-scroll caption { text-align: left; font-weight: 600; padding-block: .75rem; }
.pa-table-scroll :is(th, td) { text-align: left; padding: .7rem; border-bottom: 1px solid #454950; min-width: 6rem; }
.pa-table-scroll th { color: #ebc079; }
.pa-table-scroll td:first-child { min-width: 12rem; }
@media (max-width: 680px) {
  .pa-metrics, .pa-quotes, .pa-search, .pa-controls, .pa-facts { grid-template-columns: minmax(0, 1fr); }
  .pa-results li { align-items: flex-start; flex-direction: column; }
}
