/* ============================================================
   site.css — Laptop Forge extensions on top of Template 13
   (vulcan-amber). Keeps template style.css verbatim; adds
   styling for MDX-rendered content and a few site-specific
   blocks, all on the template's own custom properties.
   ============================================================ */

/* Machine-readable status line (hero plates) */
.status-line {
  font-family: var(--font-head);
  font-weight: 600;
  font-size: 0.78rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--faint);
  margin-bottom: 16px;
}
.status-line b {
  color: var(--amber);
  font-weight: 700;
}

/* MDX body content: tables inherit the spec-sheet look */
.prose table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
  margin: 24px 0;
  font-variant-numeric: tabular-nums;
}
.prose th,
.prose td {
  border: 1px solid var(--line);
  padding: 10px 14px;
  text-align: left;
  background: var(--panel);
}
.prose th {
  background: var(--panel-2);
  color: var(--amber);
  font-family: var(--font-head);
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.prose td:first-child {
  color: var(--muted);
}
.prose table strong {
  color: var(--amber);
}

/* MDX body: headings, lists, strong, blockquote-as-notice */
.prose h3 {
  font-size: 1.15rem;
  margin: 28px 0 10px;
}
.prose ul,
.prose ol {
  margin: 0 0 16px 22px;
  color: #c5cad1;
}
.prose li {
  margin-bottom: 6px;
}
.prose li::marker {
  color: var(--amber-deep);
}
.prose strong {
  color: var(--ink);
}
.prose blockquote {
  border: 1px solid var(--amber-deep);
  background: var(--amber-soft);
  padding: 18px 22px;
  margin: 26px 0;
  color: var(--ink);
}
.prose blockquote p {
  margin-bottom: 8px;
}
.prose blockquote p:last-child {
  margin-bottom: 0;
}
.prose blockquote strong {
  color: var(--amber);
}
.prose hr {
  border: 0;
  border-top: 1px solid var(--line);
  margin: 36px 0;
}
.prose code {
  font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  font-size: 0.85em;
  background: var(--panel-2);
  border: 1px solid var(--line);
  padding: 1px 6px;
  color: var(--amber);
}
.prose pre {
  background: var(--panel);
  border: 1px solid var(--line);
  padding: 16px 20px;
  margin: 20px 0;
  overflow-x: auto;
  font-size: 0.85rem;
}
.prose pre code {
  background: none;
  border: 0;
  padding: 0;
  color: inherit;
}
.prose img {
  max-width: 100%;
  border: 1px solid var(--line);
}

/* Weight formula block (homepage + methodology) */
.codeblock {
  background: var(--panel-2);
  border: 1px solid var(--line);
  padding: 16px 20px;
  margin: 20px 0;
  font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  font-size: 0.86rem;
  line-height: 1.7;
  overflow-x: auto;
  color: var(--muted);
}
.codeblock .k {
  color: var(--amber);
  font-weight: 700;
}

/* FAQ blocks (homepage + post pages) */
.faq-block {
  margin-top: 36px;
}
.faq-item {
  margin-bottom: 18px;
}
.faq-item h3 {
  font-size: 1.02rem;
  margin-bottom: 6px;
  color: var(--ink);
  text-transform: none;
  letter-spacing: 0;
}
.faq-item p {
  color: #c5cad1;
  margin-bottom: 0;
}

/* Disambiguation callout spacing on the homepage */
.disambig {
  padding-top: 36px;
  padding-bottom: 0;
}

/* Ingot entry titles link to the product's official site */
.i-body h3 a {
  color: var(--ink);
  text-decoration: none;
}
.i-body h3 a:hover {
  color: var(--amber);
}

/* Pending scores: no count-up animation, keep the verdict honest */
.i-score.is-pending {
  font-size: 1.1rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--faint);
  text-align: right;
  margin-bottom: 8px;
}
.i-score.is-pending small {
  display: block;
  font-size: 0.62rem;
  color: var(--faint);
  letter-spacing: 0.14em;
}
