/* Lot pages and the purity index (includes/coa-lots.php). Loaded on those pages only.
   They run inside the /coa/ page template, so .coa-page, .coa-card, .coa-table and
   .coa-methods come from the theme; this adds only what is new. */

.cp-lot-crumbs{max-width:900px;margin:0 auto 10px;font-size:13px;color:var(--muted)}
.cp-lot-crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 0}
.cp-lot-crumbs li+li::before{content:"\203A";margin:0 8px;color:var(--line-strong,#b9c3c6)}
.cp-lot-crumbs a{color:var(--signal-deep);text-decoration:none}
.cp-lot-crumbs a:hover{text-decoration:underline}
.cp-coa-page .page-title .cp-lot-h1-lot{display:block;font-family:var(--mono);font-size:.5em;letter-spacing:.02em;color:var(--muted);margin-top:8px}

.cp-lot-top{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px;align-items:start}
.cp-lot-card.coa-result{max-width:none;margin-top:0}
.cp-lot-card .row{gap:16px}
.cp-lot-card .row .v{text-align:right;overflow-wrap:anywhere}
.cp-lot-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.cp-lot-actions .btn{width:100%;justify-content:center;text-align:center}
.cp-lot-verify-note{font-size:13px;color:var(--muted);margin:-4px 0 6px;line-height:1.5}

.cp-lot-table td.mono{font-size:13px}
.cp-lot-status{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.cp-lot-status.is-pass{color:var(--signal-deep)}
.cp-lot-status.is-fail{color:#b42318}
.cp-lot-status.is-reported{color:var(--muted)}
.cp-lot-results .coa-table-wrap .coa-table{min-width:620px}

.cp-lot-doc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}
.cp-lot-doc{margin:0;background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:12px}
.cp-lot-doc img{display:block;width:100%;height:auto;border-radius:var(--rs);border:1px solid var(--line)}
.cp-lot-doc img+img,.cp-lot-doc a+a img{margin-top:8px}
.cp-lot-doc figcaption{font-size:13px;color:var(--muted);margin-top:10px}
.cp-lot-doc figcaption a{color:var(--signal-deep)}

.cp-lot-links{margin:0;padding-left:18px;columns:2;column-gap:32px}
.cp-lot-links li{margin:0 0 8px;break-inside:avoid}
.cp-lot-links a{color:var(--signal-deep)}

.cp-index-figs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:6px 0 4px}
.cp-index-fig{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:18px 16px}
.cp-index-fig-n{display:block;font-size:clamp(19px,2.3vw,26px);color:var(--teal);letter-spacing:-.02em;line-height:1.15}
.cp-index-fig-l{display:block;font-size:13px;color:var(--muted);margin-top:6px}
.cp-index-lots td:nth-child(3),.cp-index-lots td:nth-child(6),.cp-index-labs td:nth-child(6),.cp-index-labs td:nth-child(5){white-space:nowrap}
.cp-index-lots .coa-table,.coa-table-wrap .cp-index-lots{min-width:860px}

.cp-lot-past{background:#fff7e6;border:1px solid #f0d49a;border-radius:var(--rs);padding:14px 16px;font-size:14px;line-height:1.55;color:#5c4400;margin:0 0 20px}
.cp-lot-past a{color:inherit;text-decoration:underline}
.cp-hub-actions{margin:0 0 8px}
.cp-hub-table td.mono a{font-family:var(--mono)}
.coa-by-compound{margin-top:40px}
.coa-by-compound h2{font-family:var(--display);font-weight:500;color:var(--teal);font-size:24px;margin-bottom:16px;letter-spacing:-.02em}
.cp-coa-compounds{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.cp-coa-compounds a{display:inline-block;padding:8px 12px;border:1px solid var(--line-strong,#c9d3d6);border-radius:var(--rs);font-size:14px;color:var(--signal-deep);text-decoration:none;background:var(--white)}
.cp-coa-compounds a:hover,.cp-coa-compounds a:focus-visible{border-color:var(--signal);color:var(--teal)}

@media(max-width:760px){
  .cp-lot-top{grid-template-columns:1fr}
  .cp-index-figs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cp-lot-links{columns:1}
}
