/* Secondary editorial surfaces share the product palette. */
:root {
  --paper: #111411;
  --white: #1b201b;
  --ink: #f2f4e9;
  --muted: #a2ac9b;
  --line: #343b32;
  --red: #d6fa79;
  --red-dark: #e4ffad;
  --soft: #242d1d;
  --green: #1b2515;
}
body {
  background: var(--paper);
  color: var(--ink);
}
.button-dark,
.button-red {
  background: var(--red);
  color: #1c2713;
  border-color: var(--red);
}
.button-dark:hover,
.button-red:hover {
  background: #e4ffad;
  color: #182111;
}
.button-cream {
  background: var(--soft);
  color: var(--ink);
}
@media (min-width: 851px) {
  .main-nav {
    gap: 20px;
    margin-left: 0;
  }
}
.main-nav > a {
  white-space: nowrap;
}
.brand-tv {
  color: var(--muted);
}
.main-nav > a {
  color: #bcc6b0;
}
.main-nav > a:hover,
.main-nav > a[aria-current] {
  color: var(--red);
}
#site-header .header-actions {
  flex-shrink: 0;
  gap: 16px;
}
#site-header .header-actions select {
  width: auto;
  flex: 0 0 auto;
  max-width: 94px;
  padding: 5px 0;
  background: transparent;
  border: 0;
  color: var(--muted);
}
#site-header .header-actions option {
  background: var(--white);
}
@media (max-width: 1100px) {
  #site-header .header-actions {
    gap: 9px;
  }
}
@media (max-width: 760px) {
  #site-header .header-actions {
    gap: 10px;
  }
  #site-header .header-actions select {
    max-width: 70px;
    font-size: 11px;
  }
}
.tool-card,
.visit-card,
.facts-panel,
.info-dialog,
.consent-banner,
.sidebar-note,
.guide-card,
.tool-picker,
.policy-card,
.pricing-summary,
.faq-item,
.source-list,
.verification-panel {
  background: var(--white);
  border-color: var(--line);
  color: var(--ink);
}
.tool-card:hover {
  border-color: #62774b;
}
.tool-mark {
  background: #303c25;
  color: var(--red);
}
.tool-tags > span,
.tag,
.policy-badge,
.detail-tags > span {
  background: #27321f;
  color: #c5d6b5;
  border-color: #465b36;
}
.tool-card > p,
.tool-tags > span,
.category-caption,
.guide-card > p,
.guide-meta,
.guide-meta > span:first-child,
.directory-note,
.results-footnote,
.filter-help,
.filter-help button,
.results-toolbar,
.sidebar-note > p,
.footer-main > div > p,
.footer-links .eyebrow,
.footer-bottom,
.section-kicker,
.body-large,
.detail-deck,
.feature-list li,
.consideration-list li,
.source-note,
.facts-panel dd,
.article-step p,
.article-tip p,
.guides-method p,
.dialog-copy,
.facts-panel dt,
.editorial-label,
.editorial-label > span:last-child,
.visit-footnote,
.visit-card > p,
.visit-card > .eyebrow,
.detail-topline > .eyebrow,
.article-byline,
.article-cover figcaption,
.article-outline > a,
.article-outline > .eyebrow,
.recommendation,
.section-description {
  color: #acb79f;
}
.article-tip {
  background: #21291b;
}
input,
select,
textarea,
.search-field,
.search-box,
.directory-search,
.dialog-search input {
  background: #171e13 !important;
  color: var(--ink) !important;
  border-color: #4b5840 !important;
}
input[type="checkbox"] {
  accent-color: var(--red);
}
.filter-option,
.filter-option span {
  color: #b6c2aa;
}
.filter-option:has(input:checked) {
  color: var(--red);
}
.category-tabs button,
.category-tabs a {
  color: #adb99f;
}
.category-tabs [aria-selected="true"],
.category-tabs .active {
  color: var(--red);
  border-color: var(--red);
}
.prose {
  color: #c1ccb6;
}
.prose a,
.article-body a {
  color: var(--red);
}
.prose blockquote {
  border-color: var(--red);
  color: #c1ccb6;
  background: #232e1b;
}
.prose table,
.prose th,
.prose td {
  border-color: var(--line);
}
.prose th {
  background: #232e1b;
  color: #edf3e7;
}
.prose pre {
  overflow-wrap: anywhere;
}
.tutorial-tabs {
  flex-wrap: wrap;
  row-gap: 12px;
}
.tutorial-tabs .category-tab:is(.active, [aria-current="page"]) {
  background: var(--red);
  color: #1c2713;
  border-color: var(--red);
}
.tutorial-date {
  display: block;
  margin-top: 18px;
  color: #a9b69f;
  font-size: 12px;
  letter-spacing: .03em;
}
.tutorial-action {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  padding: 28px 0;
  border-top: 1px solid var(--line);
}
.tutorial-action > a:last-child {
  color: var(--red);
}
.policy-summary,
.price-card,
.verification-card,
.evidence-card,
.faq-card,
.method-card,
.scope-card {
  background: var(--white);
  color: var(--ink);
  border-color: var(--line);
}
.toast {
  background: var(--red);
  color: #172111;
}
.contact-form,
.contact-panel,
.empty-state {
  background: var(--white);
  border-color: var(--line);
  color: var(--ink);
}
.contact-form label {
  color: #bbc7b0;
}
.trust-strip {
  background: var(--white);
}
.button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline-color: var(--red);
}
::selection {
  background: var(--red);
  color: #15200e;
}
.prose h2,
.prose h3,
.faq-item summary {
  color: var(--ink);
}
.faq-intro,
.faq-answer,
.guide-card .recommendation {
  color: var(--muted);
}
.faq-item summary:after,
.faq-answer a,
.price-grade {
  color: var(--red);
}
.faq-items,
.faq-item,
.verified-plan {
  border-color: var(--line);
}
.prose th,
.prose pre,
.image-unavailable,
.text-cover,
.success-box {
  background: var(--soft);
  color: var(--ink);
}
.error-box {
  background: #3d261e;
  color: #ffc7b2;
}
.contact-form {
  padding: 25px;
  border-radius: 9px;
}
.contact-form textarea {
  resize: vertical;
}
.card-policy {
  color: #bad29f !important;
}
.card-policy .policy-label {
  color: inherit;
}
