/* Sci-Fi Chronicle theme overlay */
:root {
  --sf-bg: #EDF3F7;
  --sf-surface: #F7FBFF;
  --sf-text: #24323D;
  --sf-muted: #4D6171;
  --sf-line: #AFC2CF;
  --sf-line-strong: #7C98AB;
  --sf-accent: #007EA7;
  --sf-accent-alt: #00A7D6;
}

body {
  background: var(--sf-bg);
  color: var(--sf-text);
  font-family: "Inter", "Segoe UI", Arial, sans-serif;
  line-height: 1.66;
}

h1, h2, h3, h4, h5, h6, .logo-text {
  font-family: "Playfair Display", "Bodoni Moda", "Georgia", serif;
  font-weight: 600;
  letter-spacing: -0.02em;
}

a { color: var(--sf-accent); }
a:hover { color: var(--sf-accent-alt); }

.site-header {
  background: rgba(247, 251, 255, 0.92);
  border-bottom: 1px solid var(--sf-line);
  box-shadow: none;
}

.site-nav a {
  border: 1px solid transparent;
  border-radius: var(--radius, 8px);
  background: transparent;
  color: var(--sf-muted);
}

.site-nav a:hover {
  border-color: var(--sf-line);
  color: var(--sf-accent);
  background: #FFFFFF;
}

.ticker-chip,
.ticker-card {
  border: 1px solid var(--sf-line);
  border-radius: var(--radius, 8px);
  background: #F9FDFF;
  box-shadow: none;
}

.hero > div,
.hero-slide {
  border: 1px solid var(--sf-line-strong);
  border-radius: var(--radius, 8px);
  background: #E7EFF5;
  color: var(--sf-text);
  box-shadow: none;
}

.hero > div::after,
.hero-slide::after { display: none; }

.hero--image > div::before,
.hero-slide::before {
  background:
    linear-gradient(180deg, rgba(237, 243, 247, 0.86), rgba(237, 243, 247, 0.96)),
    var(--hero-bg, none) center/cover no-repeat;
  opacity: 1;
}

.hero-kicker {
  margin: 0 0 12px;
  font-size: 0.78rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--sf-accent);
}

.hero--split-signal .hero-slide {
  border-left: 5px solid var(--sf-accent-alt);
}

.hero-cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.btn-primary {
  border-radius: var(--radius, 8px);
  background: var(--sf-accent);
  border: 1px solid var(--sf-accent);
  color: #FFFFFF;
  text-transform: none;
  letter-spacing: 0;
  box-shadow: none;
}

.btn-primary:hover {
  background: var(--sf-accent-alt);
  border-color: var(--sf-accent-alt);
  transform: none;
}

.btn-primary--ghost {
  background: transparent;
  color: var(--sf-text);
  border-color: var(--sf-line-strong);
}

.articles-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.article-card,
.sidebar-widget,
.poll-widget,
.author-profile,
.faq-item,
.testimonial-card,
.comment-fake-form,
.contact-fake-form,
.category-card {
  border: 1px solid var(--sf-line);
  border-radius: var(--radius, 8px);
  background: #F9FDFF;
  box-shadow: none;
}

.article-card:hover {
  transform: none;
  border-color: var(--sf-line-strong);
}

.article-layout {
  grid-template-columns: minmax(0, 1fr) 320px;
}

.topic-section-head {
  border-bottom: 1px solid var(--sf-line);
}

.counters-section {
  margin: 40px 0;
  background: #E5EEF4;
  border-top: 1px solid var(--sf-line-strong);
  border-bottom: 1px solid var(--sf-line-strong);
  padding: 30px 20px;
}

.counter-item {
  border: 1px solid var(--sf-line);
  background: #F9FDFF;
  padding: 14px 16px;
}

.counter-value {
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  font-weight: 700;
  line-height: 1;
}

.counter-label {
  margin-top: 8px;
  color: var(--sf-muted);
  font-size: 0.88rem;
}

.counters-section--telemetry-inline .counters-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.counters-section--console-grid .counters-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.counters-section--console-grid .counter-item {
  min-height: 140px;
  display: grid;
  align-content: end;
}

.counters-section--mission-row .counters-grid {
  display: grid;
  gap: 8px;
}

.counters-section--mission-row .counter-item {
  display: grid;
  grid-template-columns: minmax(150px, 220px) 1fr;
  align-items: center;
}

.counters-section--mission-row .counter-label { margin-top: 0; }

.site-footer {
  background: #EAF2F8;
  border-top: 1px solid var(--sf-line);
  color: var(--sf-muted);
}

.footer-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.footer-col h4 { color: var(--sf-text); text-transform: none; letter-spacing: 0; }
.footer-bottom { border-top: 1px solid var(--sf-line); }

.pbn-fake-form__comment-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.pbn-fake-form__comment-row .pbn-ff-inline--grow { grid-column: 1 / -1; }

@media (max-width: 1200px) {
  .articles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .counters-section--telemetry-inline .counters-grid,
  .counters-section--console-grid .counters-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .article-layout { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
  .articles-grid { grid-template-columns: 1fr; }
  .hero-cta-row { display: grid; grid-template-columns: 1fr; }
  .counters-section--mission-row .counter-item { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
}
