/* extra.css - small additions used by the generated pages (loads after styles.css) */
.no-bottom-pad { padding-bottom: 0; }
.muted { color: var(--text-muted, #94a3b8); }
.lead { color: var(--text-secondary, #cbd5e1); line-height: 1.7; font-size: .95rem; }
.section { margin-top: 24px; }
.section h2 { font-size: 1.2rem; margin-bottom: 12px; }
.section p, .section li { color: var(--text-secondary, #cbd5e1); line-height: 1.7; font-size: .95rem; }
.section ul, .section ol { padding-left: 20px; }
.faq-item { background: var(--bg-elevated, rgba(255,255,255,.04)); border: 1px solid var(--border-subtle, rgba(255,255,255,.08)); border-radius: var(--radius-md, 10px); padding: 14px 16px; margin-bottom: 12px; }
.faq-item h3 { font-size: .975rem; margin: 0 0 6px; }
.faq-item p { margin: 0; font-size: .9rem; color: var(--text-muted, #94a3b8); }
.link-list { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 8px 16px; }
.link-list li { font-size: .9rem; }
.link-list small { color: var(--text-muted, #94a3b8); }
.stat-row { display: flex; flex-wrap: wrap; gap: 12px; margin: 16px 0; }
.stat { flex: 1 1 140px; background: var(--bg-elevated, rgba(255,255,255,.04)); border: 1px solid var(--border-subtle, rgba(255,255,255,.08)); border-radius: var(--radius-md, 10px); padding: 12px 14px; }
.stat b { display: block; font-size: 1.3rem; }
.stat span { font-size: .8rem; color: var(--text-muted, #94a3b8); }
.ok { color: #34d399; } .no { color: #f87171; } .na { color: var(--text-muted, #94a3b8); }
.ad-label { font-size: .7rem; opacity: .5; }
.ad-sticky-inner { display: flex; align-items: center; justify-content: space-between; width: 100%; max-width: 728px; margin: 0 auto; padding: 0 12px; }
pre.code-block { background: var(--bg-elevated, rgba(255,255,255,.04)); padding: 14px; border-radius: var(--radius-md, 10px); overflow-x: auto; font-size: .875rem; }
.policy-content h2 { margin-top: 24px; font-size: 1.15rem; }
.policy-content p, .policy-content li { color: var(--text-secondary, #cbd5e1); line-height: 1.75; }

/* Scroll offset and target highlight for district in-page anchors */
[id^="district-"] {
  scroll-margin-top: 90px;
  transition: background-color 0.3s ease;
}

[id^="district-"]:target {
  animation: targetHighlight 2s ease-out;
  border-left: 3px solid #38bdf8;
  padding-left: 8px;
  border-radius: 4px;
}

@keyframes targetHighlight {
  0% { background: rgba(56, 189, 248, 0.25); }
  50% { background: rgba(56, 189, 248, 0.15); }
  100% { background: transparent; }
}
/* Autocomplete Dropdown Styles */
.search-dropdown {
  display: none;
  backdrop-filter: blur(12px);
}
.search-dropdown.visible {
  display: block;
}
.autocomplete-item {
  display: flex;
  align-items: center;
  padding: 10px 14px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  text-decoration: none;
  transition: background 0.2s ease;
  font-size: 0.875rem;
}
.autocomplete-item:hover {
  background: rgba(255, 255, 255, 0.08);
}
.autocomplete-item:last-child {
  border-bottom: none;
}

/* Stunning Vibrant Gradient Brand Text */
.brand span,
.brand-title {
  font-size: 1.35rem;
  font-weight: 800;
  background: linear-gradient(135deg, #818cf8 0%, #38bdf8 50%, #34d399 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  color: transparent !important;
  letter-spacing: -0.02em;
  display: inline-block;
  filter: drop-shadow(0 2px 10px rgba(56, 189, 248, 0.25));
}


