/* Reader chrome — contrast locked to the active skin, both day and night */
html, body {
  background: var(--hpt-paper) !important;
  color: var(--hpt-ink) !important;
}
.hpt-topbar { background: var(--hpt-nav) !important; color: var(--hpt-nav-fg) !important; }
.hpt-mode-switch a.is-active { background: var(--hpt-accent) !important; color: #fff !important; }
.hpt-brand-orange { color: var(--hpt-accent-2) !important; }

.article-wrap,
.hpt-article,
main.hpt-main,
#hpt-main-content,
.hpt-cms-content,
.hpt-home,
.hpt-wrap {
  max-width: 1120px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
}
.hpt-hero,
.hpt-hero-img,
.hpt-hero-img img,
.hpt-scan img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  border-radius: var(--hpt-radius);
  display: block;
}

/* Beat style.css dark-title leak (was #e5e7eb on cream) */
.hpt-article-title,
article.hpt-article h1,
.hpt-article h1,
html[data-theme="dark"] .hpt-article-title,
html[data-theme="dark"] .hpt-article h1,
html[data-theme="light"] .hpt-article-title {
  color: var(--hpt-ink) !important;
  font-weight: 800 !important;
  line-height: 1.22 !important;
  letter-spacing: -.02em;
  opacity: 1 !important;
}
.hpt-meta-line,
.hpt-impact {
  color: var(--hpt-muted) !important;
}
.hpt-body,
html[data-theme="dark"] .hpt-body {
  color: var(--hpt-ink) !important;
}
.hpt-tldr,
.hpt-cms-content,
.hpt-letter-card,
.desk-card {
  background: var(--hpt-card) !important;
  color: var(--hpt-ink) !important;
  border-color: var(--hpt-line) !important;
}
.hpt-tldr h2,
.hpt-tldr .label {
  color: var(--hpt-accent-2) !important;
}

.hpt-related,
.hpt-topics {
  background: var(--hpt-card);
  border: 1px solid var(--hpt-line);
  border-radius: var(--hpt-radius);
  padding: .9rem 1rem;
}
.hpt-related a, .hpt-topics a, .tag-chip {
  background: var(--hpt-chip);
  color: var(--hpt-chip-ink);
  border-radius: 999px;
  padding: .35rem .7rem;
}
.poll-wrap, .hpt-poll, .article-poll {
  background: var(--hpt-card) !important;
  color: var(--hpt-ink) !important;
  border: 1px solid var(--hpt-line);
  border-radius: var(--hpt-radius);
}
.poll-option, .hpt-poll label {
  border: 1px solid var(--hpt-line);
  background: var(--hpt-poll);
  color: var(--hpt-ink);
  border-radius: 12px;
  min-height: 44px;
}
.hpt-footer { background: var(--hpt-nav); color: var(--hpt-nav-fg); }
.hpt-desk-pill {
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  color: var(--hpt-nav-fg) !important;
  border-radius: 999px !important;
}
.hpt-desk-pill:hover {
  background: var(--hpt-accent-2) !important;
  color: #fff !important;
}
input, select, textarea {
  min-height: 44px;
  font-size: 16px;
}
.hpt-nl-form button, .btn, .hpt-flip {
  min-height: 44px;
  border-radius: 999px;
  transition: transform .15s ease, box-shadow .15s ease;
}
.hpt-nl-form button:hover, .btn:hover, .hpt-flip:hover {
  transform: translateY(-1px);
}
@media (max-width: 760px) {
  .hpt-topbar-inner { padding: .45rem .7rem; }
  .hpt-article-title, article.hpt-article h1 { font-size: 1.4rem !important; }
  .hpt-article, #hpt-main-content { padding-left: .85rem !important; padding-right: .85rem !important; }
}
@media (prefers-reduced-motion: reduce) {
  * { transition: none !important; }
}
