/* Lux Peptides COA panel — uses the site's own tokens (--lux-ink, --lux-gold, …) with fallbacks */
.lux-coa-live #tab-lux_coa .lux-coa-request { display: none !important; }

.lux-coa {
  --coa-ink: var(--lux-ink, #151515);
  --coa-muted: var(--lux-muted, #504e4a);
  --coa-line: var(--lux-line, #e9e7e1);
  --coa-gold: var(--lux-gold, #8b753c);
  --coa-tan: var(--lux-tan, #c9ae84);
  --coa-cream: #fbfaf6;
  --coa-fill: #fff7e7;
  --coa-yellow: #ffcd05;
  --coa-pass: #1f6b3a;
  --coa-pass-bg: #eaf5ec;
  --coa-pass-line: #b9d8c0;
  --coa-radius: 14px;
  color: var(--coa-ink);
  font-family: inherit;
  line-height: 1.35;
  text-align: left;
  width: 100%;
  container-type: inline-size;
}
.lux-coa *, .lux-coa *::before, .lux-coa *::after { box-sizing: border-box; }

.lux-coa__head { margin: 0 0 16px; }
.lux-coa .lux-coa__title { margin: 0; font-size: 26px; font-weight: 700; line-height: 1.15; letter-spacing: -0.01em; color: var(--coa-ink); }
.lux-coa .lux-coa__sub { margin: 6px 0 0; font-size: 15px; color: var(--coa-muted); }

.lux-coa__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; align-items: start; }
@container (min-width: 800px) {
  .lux-coa__grid { grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr); gap: 20px; }
}

/* Summary card */
.lux-coa__card { background: #fff; border: 1px solid var(--coa-line); border-radius: var(--coa-radius); padding: 22px 20px 20px; text-align: center; }
.lux-coa .lux-coa__eyebrow { margin: 0; font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--coa-gold); }
.lux-coa .lux-coa__product { margin: 4px 0 0; font-size: 16px; font-weight: 600; color: var(--coa-ink); }
.lux-coa .lux-coa__purity { margin: 10px 0 0; font-size: clamp(30px, 8cqw, 44px); white-space: nowrap; overflow-wrap: normal; word-break: normal; font-weight: 800; line-height: 1; letter-spacing: -0.02em; color: var(--coa-ink); font-variant-numeric: tabular-nums; }
.lux-coa .lux-coa__purity-label { margin: 8px 0 0; font-size: 13px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--coa-muted); }
.lux-coa .lux-coa__purity-label::after { content: ""; display: block; width: 44px; height: 3px; margin: 12px auto 0; border-radius: 3px; background: var(--coa-yellow); }

.lux-coa .lux-coa__facts { margin: 18px 0 0; padding: 4px 16px; background: var(--coa-cream); border: 1px solid var(--coa-line); border-radius: 12px; text-align: left; }
.lux-coa .lux-coa__fact { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 11px 0; border-top: 1px solid var(--coa-line); }
.lux-coa .lux-coa__fact:first-child { border-top: 0; }
.lux-coa .lux-coa__fact dt { margin: 0; padding: 0; flex: 0 0 auto; font-size: 14px; font-weight: 500; color: var(--coa-muted); }
.lux-coa .lux-coa__fact dd { margin: 0; padding: 0; font-size: 14px; font-weight: 600; color: var(--coa-ink); text-align: right; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.lux-coa .lux-coa__fact dd span { display: block; }

.lux-coa a.lux-coa__btn { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 52px; margin: 16px 0 0; padding: 12px 18px; border: 1px solid transparent; border-radius: var(--lux-radius, 10px); background: var(--coa-yellow); color: var(--coa-ink); font-size: 14px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; text-decoration: none; transition: background-color .15s ease, color .15s ease; }
.lux-coa a.lux-coa__btn:hover, .lux-coa a.lux-coa__btn:focus-visible { background: var(--coa-ink); color: #fff; }
.lux-coa a.lux-coa__btn svg { width: 20px; height: 20px; flex: 0 0 auto; }

/* Results table */
.lux-coa__tablewrap { border: 1px solid var(--coa-line); border-radius: var(--coa-radius); overflow: hidden; background: #fff; }
.lux-coa table.lux-coa__table { width: 100%; margin: 0; border: 0; border-collapse: collapse; table-layout: fixed; background: transparent; font-size: 15px; }
.lux-coa table.lux-coa__table th, .lux-coa table.lux-coa__table td { padding: 14px 16px; border: 0; border-top: 1px solid var(--coa-line); border-left: 1px solid var(--coa-line); text-align: left; vertical-align: middle; background: transparent; color: var(--coa-ink); }
.lux-coa table.lux-coa__table th:first-child, .lux-coa table.lux-coa__table td:first-child { border-left: 0; }
.lux-coa table.lux-coa__table thead th { border-top: 0; background: var(--coa-ink); color: #fff; font-size: 12px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; }
.lux-coa table.lux-coa__table tbody th { font-weight: 600; width: 32%; }
.lux-coa table.lux-coa__table td.lux-coa__status { font-weight: 600; overflow-wrap: anywhere; }
.lux-coa table.lux-coa__table td.lux-coa__result { width: 30%; }
.lux-coa .lux-coa__detail { display: block; margin-top: 3px; font-size: 12.5px; font-weight: 400; color: var(--coa-muted); }
.lux-coa .lux-coa__line { display: block; }
.lux-coa .lux-coa__status--id .lux-coa__line { white-space: nowrap; font-size: 13px; letter-spacing: 0.01em; font-variant-numeric: tabular-nums; }

.lux-coa .lux-coa__badge { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-width: min(96px, 100%); padding: 6px 10px; border: 1px solid var(--coa-pass-line); border-radius: 8px; background: var(--coa-pass-bg); color: var(--coa-pass); font-size: 12px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; white-space: nowrap; }
.lux-coa .lux-coa__badge svg { width: 13px; height: 13px; }
.lux-coa .lux-coa__badge--reported { border-color: var(--coa-tan); background: var(--coa-fill); color: #6b5a2b; }

.lux-coa a.lux-coa__verify { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid var(--coa-tan); border-radius: 50%; background: var(--coa-fill); color: var(--coa-gold); text-decoration: none; transition: background-color .15s ease, color .15s ease, border-color .15s ease; }
.lux-coa a.lux-coa__verify:hover, .lux-coa a.lux-coa__verify:focus-visible { background: var(--coa-ink); border-color: var(--coa-ink); color: var(--coa-yellow); }
.lux-coa a.lux-coa__verify svg { width: 22px; height: 22px; }
.lux-coa a:focus-visible { outline: 2px solid var(--coa-ink); outline-offset: 2px; }
.lux-coa .lux-coa__sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

.lux-coa .lux-coa__foot { margin: 12px 2px 0; font-size: 12.5px; color: var(--coa-muted); }

@container (max-width: 430px) {
  .lux-coa .lux-coa__title { font-size: 23px; }
  .lux-coa__card { padding: 20px 14px 14px; }
  .lux-coa .lux-coa__facts { padding: 2px 12px; }
  .lux-coa table.lux-coa__table { font-size: 14px; }
  .lux-coa table.lux-coa__table th, .lux-coa table.lux-coa__table td { padding: 12px 10px; }
  .lux-coa table.lux-coa__table thead th { letter-spacing: 0.1em; font-size: 11px; }
  .lux-coa table.lux-coa__table tbody th { width: 28%; }
  .lux-coa table.lux-coa__table td.lux-coa__result { width: 30%; }
  .lux-coa table.lux-coa__table td.lux-coa__status .lux-coa__line { font-size: 13.5px; }
  .lux-coa table.lux-coa__table td.lux-coa__status--id .lux-coa__line { font-size: 12px; letter-spacing: 0; white-space: normal; overflow-wrap: normal; }
  .lux-coa .lux-coa__badge { min-width: 0; width: 100%; padding: 6px 4px; letter-spacing: 0.08em; font-size: 11px; }
}
@container (max-width: 345px) {
  .lux-coa table.lux-coa__table th, .lux-coa table.lux-coa__table td { padding: 12px 8px; }
  .lux-coa table.lux-coa__table tbody th { width: 31%; font-size: 13px; }
  .lux-coa table.lux-coa__table td.lux-coa__status--id .lux-coa__line { font-size: 11.5px; }
  .lux-coa .lux-coa__badge { letter-spacing: 0.05em; font-size: 10.5px; }
  .lux-coa .lux-coa__fact { gap: 10px; }
}

/* Fit inside the existing COA section (label image + panel) */
@media (min-width: 601px) {
  .lux-coa-live .lux-coa-section { align-items: start; }
  .lux-coa-live .lux-coa-section > .lux-coa-image { position: sticky; top: 190px; align-self: start; }
}
@media (min-width: 1378px) {
  .lux-coa-live .lux-coa-section { grid-template-columns: minmax(0, 0.55fr) minmax(0, 1.45fr); align-items: center; }
  .lux-coa-live .lux-coa-section > .lux-coa-image { position: static; align-self: center; }
}
@media (prefers-reduced-motion: reduce) { .lux-coa a { transition: none !important; } }

.lux-server-assurances-row .lux-assurance-icon { display:inline-flex; flex:0 0 22px; width:22px; height:22px; margin-top:2px; color:var(--lux-gold,#8b753c); }
.lux-server-assurances-row .lux-assurance-icon svg { display:block; width:22px; height:22px; }

/* Match the summary and results edges only when displayed side by side. */
@container (min-width: 800px) {
  .lux-coa__grid { align-items: stretch; }
  .lux-coa__card { display: flex; flex-direction: column; }
  .lux-coa .lux-coa__facts { margin-bottom: 16px; }
  .lux-coa a.lux-coa__btn { margin-top: auto; }
  .lux-coa__tablewrap { display: flex; }
  .lux-coa table.lux-coa__table { height: 100%; }
}
