/* Dark Theme — overrides for the Swiss Precision Design System */

body.dark-theme {
  /* Core backgrounds */
  --bg-white: #0f1117;
  --bg-gray-50: #161822;
  --bg-gray-100: #1c1f2e;
  --bg-gray-800: #1a1d2b;

  /* Blog article variables — override dark values for light text */
  --dark: #f0f1f5;

  /* Neutral grays — inverted for dark surfaces */
  --gray-50: #1c1f2e;
  --gray-100: #252838;
  --gray-200: #2e3244;
  --gray-300: #3d4255;
  --gray-400: #6b7280;
  --gray-500: #9ca3af;
  --gray-600: #3d4255;
  --gray-700: #2e3244;
  --gray-800: #252838;
  --gray-900: #1c1f2e;

  /* Text */
  --text-gray-100: #f0f1f5;
  --text-gray-200: #e2e4e9;
  --text-gray-300: #c8ccd4;
  --text-gray-400: #9ca3af;
  --text-gray-900: #f0f1f5;
  --text-gray-700: #d1d5db;
  --text-gray-600: #9ca3af;
  --text-gray-500: #6b7280;
  --text-white: #ffffff;

  /* Shadows — softer with blue tint for dark mode */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.4);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 10px 24px rgba(0, 0, 0, 0.5);
  --shadow-xl: 0 20px 40px rgba(0, 0, 0, 0.5);

  color-scheme: dark;
}

/* Smooth transition between themes */
body.theme-transition,
body.theme-transition *,
body.theme-transition *::before,
body.theme-transition *::after {
  transition: background-color 0.35s ease, color 0.35s ease,
    border-color 0.35s ease, box-shadow 0.35s ease, fill 0.35s ease !important;
}

/* ── Background ── */
body.dark-theme .space-bg {
  background: #0f1117;
}

body.dark-theme .space-bg::before {
  background:
    radial-gradient(circle at 20% 80%, rgba(37, 99, 235, 0.08) 0%, transparent 50%),
    radial-gradient(circle at 80% 20%, rgba(124, 58, 237, 0.06) 0%, transparent 50%),
    radial-gradient(circle at 40% 40%, rgba(16, 185, 129, 0.04) 0%, transparent 50%);
}

/* ── Header ── */
body.dark-theme .header {
  background: rgba(15, 17, 23, 0.85);
  border-bottom-color: var(--gray-200);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

body.dark-theme .header.scrolled {
  background: rgba(15, 17, 23, 0.96);
}

body.dark-theme .logo-text {
  color: var(--text-gray-900);
}

body.dark-theme .nav-link {
  color: var(--text-gray-600);
}

body.dark-theme .nav-link:hover,
body.dark-theme .nav-link.active {
  color: var(--primary-light);
  background: rgba(37, 99, 235, 0.1);
}

body.dark-theme .mobile-menu-toggle span,
body.dark-theme .mobile-menu-toggle .hamburger-line {
  background: var(--text-gray-900);
}

/* Mobile nav dropdown */
body.dark-theme .nav-links {
  background: var(--bg-white);
  border-color: var(--gray-200);
}

/* ── Language switcher ── */
body.dark-theme .lang-dropdown-btn {
  background: var(--gray-100);
  border-color: var(--gray-200);
  color: var(--text-gray-900);
}

body.dark-theme .lang-dropdown-btn:hover {
  background: var(--gray-200);
  border-color: var(--primary);
  color: var(--primary-light);
}

body.dark-theme .lang-dropdown-menu {
  background: var(--bg-gray-50);
  border-color: var(--gray-200);
}

body.dark-theme .lang-option {
  color: var(--text-gray-600);
  border-bottom-color: var(--gray-100);
}

body.dark-theme .lang-option:hover {
  background: var(--gray-100);
  color: var(--primary-light);
}

/* ── Theme toggle ── */
body.dark-theme .theme-toggle {
  background: var(--gray-100);
  border-color: var(--gray-200);
  color: var(--text-gray-900);
}

body.dark-theme .theme-toggle:hover {
  background: var(--gray-200);
  border-color: var(--primary);
  color: var(--primary-light);
}

body.dark-theme .scroll-to-top {
  background: linear-gradient(135deg, #1d4ed8, #1e40af);
  color: #f8fafc;
  box-shadow: 0 18px 30px rgba(2, 6, 23, 0.5);
}

/* ── Glass cards ── */
body.dark-theme .glass-card {
  background: var(--bg-gray-50);
  border-color: var(--gray-200);
  box-shadow: var(--shadow-md);
}

body.dark-theme .glass-card::before {
  background: linear-gradient(90deg, transparent, var(--gray-200), transparent);
}

body.dark-theme .glass-card:hover {
  box-shadow: var(--shadow-xl);
  border-color: var(--gray-300);
}

body.dark-theme .glass-panel {
  background: var(--bg-gray-50);
  border-color: var(--gray-200);
}

body.dark-theme .glass-panel::after {
  background: linear-gradient(135deg, rgba(37, 99, 235, 0.04) 0%, transparent 50%);
}

body.dark-theme .glass-card.featured {
  background: linear-gradient(135deg,
    rgba(37, 99, 235, 0.06) 0%,
    rgba(124, 58, 237, 0.06) 100%);
}

/* ── Hero ── */
body.dark-theme .hero {
  background: var(--bg-white);
}

body.dark-theme .hero::before {
  background:
    radial-gradient(circle at 20% 80%, rgba(37, 99, 235, 0.06) 0%, transparent 50%),
    radial-gradient(circle at 80% 20%, rgba(124, 58, 237, 0.06) 0%, transparent 50%);
}

body.dark-theme .hero-title {
  color: var(--text-gray-900);
}

body.dark-theme .hero-description {
  color: var(--text-gray-600);
}

body.dark-theme .hero-mini-proof {
  background: rgba(22, 24, 34, 0.84);
  border-color: rgba(59, 130, 246, 0.18);
  color: rgba(226, 232, 240, 0.9);
}

body.dark-theme .home-page .hero .hero-actions .btn-secondary {
  background: rgba(22, 24, 34, 0.92) !important;
  border-color: rgba(148, 163, 184, 0.24) !important;
  color: var(--text-gray-900) !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.24) !important;
}

body.dark-theme .home-page .hero .hero-actions .btn-secondary:hover {
  background: rgba(28, 31, 46, 0.98) !important;
  border-color: var(--primary);
}

body.dark-theme .home-page .hero .hero-proof-item,
body.dark-theme .hero .hero-proof-item {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

body.dark-theme .home-page .hero .hero-proof-item strong,
body.dark-theme .hero .hero-proof-item strong {
  color: #f1f5f9 !important;
}

body.dark-theme .home-page .hero .hero-proof-item span,
body.dark-theme .hero .hero-proof-item span {
  color: #cbd5e1 !important;
}

body.dark-theme .home-page .hero .hero-benefits li {
  background: rgba(22, 24, 34, 0.9) !important;
  border-color: rgba(148, 163, 184, 0.16) !important;
  color: rgba(226, 232, 240, 0.9) !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18) !important;
}

body.dark-theme .home-page .hero .hero-benefits li span {
  color: inherit !important;
}

body.dark-theme .hero-strong-values .strong-value-item i {
  color: #60a5fa;
}

body.dark-theme .hero-strong-values .strong-value-text strong {
  color: var(--text-gray-900);
}

body.dark-theme .hero-strong-values .strong-value-text span {
  color: var(--text-gray-600);
}

body.dark-theme .home-page .hero .hero-actions .btn-secondary .btn-text,
body.dark-theme .home-page .hero .hero-actions .btn-secondary .btn-icon {
  color: inherit !important;
}

@media (max-width: 768px) {
  body.dark-theme .home-page .hero .hero-benefits li {
    background: rgba(22, 24, 34, 0.94) !important;
    border: 1px solid rgba(148, 163, 184, 0.18) !important;
  }
}

@media (max-width: 560px) {
  body.dark-theme .home-page .hero .hero-actions .btn-secondary {
    background: rgba(22, 24, 34, 0.96) !important;
  }
}

body.dark-theme .badge {
  background: var(--bg-gray-50);
  border-color: var(--gray-200);
  color: var(--text-gray-900);
}

body.dark-theme .floating-badge {
  background: var(--bg-gray-50);
  border-color: var(--gray-200);
  color: var(--text-gray-900);
}

body.dark-theme .stat-divider {
  background: var(--gray-200);
}

/* ── Features ── */
body.dark-theme .features {
  background: var(--bg-white);
}

body.dark-theme .feature-icon {
  background: var(--bg-gray-50);
}

body.dark-theme .feature-title {
  color: var(--text-gray-900);
}

body.dark-theme .feature-description {
  color: var(--text-gray-600);
}

body.dark-theme .feature-card-simple {
  background: linear-gradient(180deg, rgba(22, 24, 34, 0.96), rgba(15, 17, 23, 0.98));
  border-color: rgba(148, 163, 184, 0.18);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.22);
}

body.dark-theme .homepage-card-link:hover,
body.dark-theme .homepage-card-link:focus-visible {
  border-color: rgba(96, 165, 250, 0.4);
}

body.dark-theme .card-link-hint {
  color: #93c5fd;
}

/* ── Streaming ── */
body.dark-theme .streaming {
  background: linear-gradient(180deg, rgba(12, 15, 24, 0.98), rgba(15, 17, 23, 1));
}

body.dark-theme .streaming .section-description {
  color: var(--text-gray-600);
}

body.dark-theme .streaming-logo {
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22);
}

body.dark-theme .streaming-summary {
  background: linear-gradient(135deg, rgba(22, 24, 34, 0.96), rgba(15, 17, 23, 0.98));
  border-color: rgba(148, 163, 184, 0.18);
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.24);
}

body.dark-theme .streaming-summary-copy h3 {
  color: var(--text-gray-900);
}

body.dark-theme .streaming-summary-copy p {
  color: rgba(209, 213, 219, 0.84);
}

body.dark-theme .streaming-features {
  background: rgba(37, 99, 235, 0.06);
  border-color: rgba(37, 99, 235, 0.15);
}

body.dark-theme .streaming-features h3 {
  color: var(--text-gray-900);
}

body.dark-theme .feature-card {
  background: rgba(22, 24, 34, 0.8);
  border-color: rgba(37, 99, 235, 0.15);
}

body.dark-theme .feature-card:hover {
  background: rgba(28, 31, 46, 0.9);
  border-color: #667eea;
}

body.dark-theme .feature-content h4 {
  color: var(--text-gray-900);
}

body.dark-theme .feature-content p {
  color: var(--text-gray-600);
}

body.dark-theme .streaming-features .servers-cta-card {
  background: rgba(22, 24, 34, 0.8);
  border-color: rgba(37, 99, 235, 0.15);
}

body.dark-theme .streaming-features .servers-cta-card:hover {
  background: rgba(28, 31, 46, 0.9);
}

body.dark-theme .streaming-features .servers-cta-card .cta-content h3 {
  color: var(--text-gray-900);
}

body.dark-theme .streaming-features .servers-cta-card .cta-content p {
  color: var(--text-gray-600);
}

/* ── Sections general ── */
body.dark-theme .section-tag {
  background: rgba(37, 99, 235, 0.12);
}

body.dark-theme .section-title {
  color: var(--text-gray-900);
}

body.dark-theme .section-description {
  color: var(--text-gray-600);
}

/* ── Tabs ── */
body.dark-theme .tab-button {
  background: var(--bg-gray-50);
  border-color: var(--gray-200);
  color: var(--text-gray-600);
}

body.dark-theme .tab-button:hover {
  border-color: var(--gray-300);
  color: var(--text-gray-900);
}

/* ── Buttons ── */
body.dark-theme .btn-secondary,
body.dark-theme .btn-outline {
  border-color: var(--gray-300);
  color: var(--text-gray-900);
}

body.dark-theme .btn-secondary:hover,
body.dark-theme .btn-outline:hover {
  border-color: var(--primary);
  color: var(--primary-light);
}

/* ── CTA ── */
body.dark-theme .cta {
  background: var(--bg-white);
}

body.dark-theme .cta-content {
  background: var(--bg-gray-50);
  border-color: var(--gray-200);
}

body.dark-theme .cta-content::before {
  background: linear-gradient(135deg, rgba(37, 99, 235, 0.04) 0%, rgba(124, 58, 237, 0.04) 100%);
}

body.dark-theme .cta-title {
  color: var(--text-gray-900);
}

body.dark-theme .cta-description {
  color: var(--text-gray-600);
}

body.dark-theme .benefit-item {
  background: var(--gray-100);
  border-color: var(--gray-200);
  color: var(--text-gray-700);
}

/* ── FAQ ── */
body.dark-theme .faq-section {
  background: linear-gradient(180deg, rgba(12, 15, 24, 0.96), rgba(15, 17, 23, 1));
}

body.dark-theme .faq-item {
  background: linear-gradient(180deg, rgba(22, 24, 34, 0.96), rgba(15, 17, 23, 0.98));
  border-color: rgba(148, 163, 184, 0.18);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2);
}

body.dark-theme .faq-item summary {
  color: var(--text-gray-900);
}

body.dark-theme .faq-item p {
  color: rgba(209, 213, 219, 0.84);
}

/* ── Footer ── */
body.dark-theme .footer {
  background:
    radial-gradient(circle at 14% -10%, rgba(59, 130, 246, 0.18), transparent 42%),
    radial-gradient(circle at 86% -12%, rgba(14, 165, 233, 0.16), transparent 46%),
    #0a0c12;
  border-top-color: var(--gray-200);
}

body.dark-theme .footer-column h3,
body.dark-theme .footer-column h4 {
  color: var(--text-gray-900);
}

body.dark-theme .footer-column a {
  color: var(--text-gray-600);
}

body.dark-theme .footer-column a:hover,
body.dark-theme .footer-column a:focus-visible {
  color: var(--primary-light);
  background: rgba(37, 99, 235, 0.08);
}

body.dark-theme .footer-logo {
  color: var(--text-gray-900);
}

body.dark-theme .footer-brand-copy {
  color: rgba(209, 213, 219, 0.8);
}

body.dark-theme .footer .social-links a {
  background: var(--gray-100);
  border-color: var(--gray-200);
  color: var(--text-gray-600);
}

body.dark-theme .footer .social-links a:hover {
  background: var(--primary);
  border-color: var(--primary);
  color: var(--text-white);
}

body.dark-theme .footer .app-store {
  background: var(--gray-100);
  border-color: var(--gray-200);
  color: var(--text-gray-900);
}

body.dark-theme .footer .app-store:hover {
  border-color: var(--primary);
  color: var(--primary-light);
}

body.dark-theme .footer-bottom {
  border-top-color: var(--gray-200);
  color: var(--text-gray-500);
}

body.dark-theme .legal-links a {
  color: var(--text-gray-500);
}

body.dark-theme .legal-links a:hover {
  color: var(--primary-light);
}

/* ── Device cards ── */
body.dark-theme .device-card {
  background: var(--bg-gray-50);
  border-color: var(--gray-200);
}

body.dark-theme .device-title {
  color: var(--text-gray-900);
}

body.dark-theme .device-description {
  color: var(--text-gray-600);
}

body.dark-theme .devices {
  background: var(--bg-gray-50);
}

/* ── Feature items (content grid) ── */
body.dark-theme .feature-item {
  background: var(--bg-gray-50);
  border-color: var(--gray-200);
}

body.dark-theme .feature-item:hover {
  border-color: var(--primary);
}

body.dark-theme .feature-info h4 {
  color: var(--text-gray-900);
}

body.dark-theme .feature-info p {
  color: var(--text-gray-600);
}

/* ── Pricing ── */
body.dark-theme .pricing-card.featured {
  background:
    radial-gradient(ellipse at top right, rgba(37, 99, 235, 0.12), transparent 60%),
    radial-gradient(ellipse at bottom left, rgba(124, 58, 237, 0.08), transparent 50%),
    var(--bg-gray-100);
  border-color: rgba(37, 99, 235, 0.3);
}

body.dark-theme .pricing-card.featured .pricing-card-name {
  color: var(--text-gray-100);
}

body.dark-theme .pricing-card.featured .price-amount {
  background: linear-gradient(135deg, #60a5fa, #a78bfa);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

body.dark-theme .pricing-card.featured .pricing-card-features li {
  color: var(--text-gray-300);
}

body.dark-theme .pricing-card {
  background: var(--bg-gray-100);
  border-color: var(--gray-200);
}

body.dark-theme .pricing-card-name {
  color: var(--text-gray-200);
}

body.dark-theme .pricing-card-price .price-amount {
  color: var(--text-gray-100);
}

body.dark-theme .pricing-card-price .price-period,
body.dark-theme .pricing-card-price .price-note {
  color: var(--text-gray-400);
}

body.dark-theme .pricing-features li {
  color: var(--text-gray-600);
}

/* ── Pricing Plans (subscription cards) ── */
body.dark-theme .pricing-plan {
  background: var(--bg-gray-100);
  border-color: var(--gray-200);
}

body.dark-theme .pricing-plan.best-value {
  background:
    radial-gradient(ellipse at top right, rgba(37, 99, 235, 0.15), transparent 60%),
    radial-gradient(ellipse at bottom left, rgba(124, 58, 237, 0.1), transparent 50%),
    var(--bg-gray-100);
  border-color: rgba(37, 99, 235, 0.5);
  box-shadow: 0 8px 32px -4px rgba(37, 99, 235, 0.2);
}

body.dark-theme .pricing-plan-name {
  color: var(--text-gray-100);
}

body.dark-theme .pricing-plan-price {
  color: var(--text-gray-100);
}

body.dark-theme .pricing-plan.best-value .pricing-plan-price {
  background: linear-gradient(135deg, #60a5fa, #a78bfa);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

body.dark-theme .pricing-plan-period {
  color: var(--text-gray-400);
}

body.dark-theme .pricing-plan-equivalent {
  color: #60a5fa;
}

body.dark-theme .pricing-plan-trial {
  color: #34d399;
  background: rgba(16, 185, 129, 0.12);
}

body.dark-theme .pricing-plan:hover {
  box-shadow: 0 12px 28px -6px rgba(0, 0, 0, 0.3);
}

body.dark-theme .pricing-plans-header h2 {
  color: var(--text-gray-100);
}

body.dark-theme .pricing-plans-header p {
  color: var(--text-gray-400);
}

body.dark-theme .toggle-option {
  color: var(--text-gray-500);
}

body.dark-theme .toggle-option.active {
  color: var(--text-gray-900);
}

/* ── Section title gradient fix ── */
body.dark-theme .section-title {
  background: linear-gradient(135deg, #e2e8f0, #94a3b8);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: var(--text-gray-100);
}

/* ── Servers ── */
body.dark-theme .circle-bg {
  stroke: var(--gray-200);
}

body.dark-theme .percentage {
  fill: var(--text-gray-900);
}

/* ── Trust badge / connection status ── */
body.dark-theme .trust-badge,
body.dark-theme .connection-status {
  background: var(--gray-100);
  border-color: var(--gray-200);
  color: var(--text-gray-900);
}

/* ── Background helpers ── */
body.dark-theme .bg-gray-50 {
  background-color: var(--bg-gray-50);
}

body.dark-theme .bg-gray-100 {
  background-color: var(--bg-gray-100);
}

body.dark-theme .bg-white {
  background-color: var(--bg-white);
}

/* ── Floating elements ── */
body.dark-theme .floating-element {
  background: var(--bg-gray-50);
  border-color: var(--gray-200);
}

body.dark-theme .pattern-overlay {
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px);
}

/* ── Scrollbar ── */
body.dark-theme::-webkit-scrollbar-track {
  background: var(--bg-gray-50);
}

body.dark-theme::-webkit-scrollbar-thumb {
  background: var(--gray-300);
}

body.dark-theme::-webkit-scrollbar-thumb:hover {
  background: var(--gray-400);
}

/* ── Selection ── */
body.dark-theme ::selection {
  background: rgba(37, 99, 235, 0.3);
  color: var(--text-gray-900);
}

/* ── Blog cards ── */
body.dark-theme .blog-card {
  background: var(--bg-gray-50);
  border-color: var(--gray-200);
}

body.dark-theme .blog-card:hover {
  box-shadow: var(--shadow-xl);
}

/* ── Servers section (hardcoded whites) ── */
body.dark-theme .server-network-display {
  background: rgba(22, 24, 34, 0.95);
  border-color: var(--gray-200);
}

body.dark-theme .network-summary {
  background: rgba(37, 99, 235, 0.06);
  border-color: rgba(37, 99, 235, 0.12);
}

body.dark-theme .summary-item {
  background: rgba(22, 24, 34, 0.8);
}

body.dark-theme .summary-item:hover {
  background: rgba(28, 31, 46, 0.9);
}

body.dark-theme .servers {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.04) 0%, rgba(139, 92, 246, 0.04) 100%);
}

body.dark-theme .servers::before {
  background:
    radial-gradient(circle at 30% 20%, rgba(59, 130, 246, 0.06) 0%, transparent 50%),
    radial-gradient(circle at 70% 80%, rgba(139, 92, 246, 0.06) 0%, transparent 50%);
}

body.dark-theme .server-features {
  background: rgba(37, 99, 235, 0.06);
  border-color: rgba(37, 99, 235, 0.12);
}

body.dark-theme .server-features h3 {
  color: var(--text-gray-900);
}

body.dark-theme .servers-overview {
  background: linear-gradient(180deg, rgba(12, 15, 24, 0.96), rgba(15, 17, 23, 1));
  border-top-color: rgba(148, 163, 184, 0.08);
  border-bottom-color: rgba(148, 163, 184, 0.08);
}

body.dark-theme .server-card {
  background: linear-gradient(180deg, rgba(22, 24, 34, 0.96), rgba(15, 17, 23, 0.98));
  border-color: rgba(148, 163, 184, 0.18);
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.22);
}

body.dark-theme .server-card:hover,
body.dark-theme .server-card:focus-visible {
  border-color: rgba(96, 165, 250, 0.4);
}

body.dark-theme .server-card-flag {
  background: rgba(37, 99, 235, 0.12);
}

body.dark-theme .server-card h3,
body.dark-theme .servers-overview-copy h3 {
  color: var(--text-gray-900);
}

body.dark-theme .server-card p,
body.dark-theme .servers-overview-copy p {
  color: rgba(209, 213, 219, 0.84);
}

body.dark-theme .servers-overview-cta {
  background: linear-gradient(135deg, rgba(22, 24, 34, 0.96), rgba(15, 17, 23, 0.98));
  border-color: rgba(148, 163, 184, 0.18);
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.24);
}

body.dark-theme .view-all-servers-card {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.08) 0%, rgba(139, 92, 246, 0.08) 100%);
  border-color: rgba(59, 130, 246, 0.25);
}

body.dark-theme .view-all-servers-card:hover {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.14) 0%, rgba(139, 92, 246, 0.14) 100%);
}

/* ── Servers CTA card (hardcoded #ffffff, #e5e7eb, #1f2937, #6b7280) ── */
body.dark-theme .servers-cta-card {
  background: var(--bg-gray-50);
  border-color: var(--gray-200);
}

body.dark-theme .servers-cta-card .cta-content h3 {
  color: var(--text-gray-900);
}

body.dark-theme .servers-cta-card .cta-content p {
  color: var(--text-gray-600);
}

/* ── Screens section (hardcoded whites) ── */
body.dark-theme .screens {
  background: linear-gradient(180deg, rgba(15, 17, 23, 1), rgba(18, 21, 31, 1));
}

body.dark-theme .screen-card {
  background: linear-gradient(180deg, rgba(22, 24, 34, 0.96), rgba(15, 17, 23, 0.98));
  border-color: rgba(148, 163, 184, 0.18);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.22);
}

body.dark-theme .screen-card strong {
  color: var(--text-gray-900);
}

body.dark-theme .screen-card span {
  color: rgba(209, 213, 219, 0.84);
}

body.dark-theme .device-screens {
  background: rgba(22, 24, 34, 0.6);
  border-color: var(--gray-200);
}

body.dark-theme .device-screens:hover {
  background: rgba(28, 31, 46, 0.7);
}

body.dark-theme .screen-item {
  background: var(--bg-gray-50);
}

/* ── Privacy section ── */
body.dark-theme .privacy-card {
  background: var(--bg-gray-50);
  border-color: var(--gray-200);
}

body.dark-theme .privacy-card:hover {
  border-color: var(--primary);
}

body.dark-theme .privacy-card-title {
  color: var(--text-gray-900);
}

body.dark-theme .privacy-card-description {
  color: var(--text-gray-600);
}

body.dark-theme .privacy-subsection-description {
  color: var(--text-gray-600);
}

/* ── Tab content ── */
body.dark-theme .tab-content {
  background: var(--bg-white);
}

/* ── Hero image container ── */
body.dark-theme .hero-image {
  border-radius: var(--radius-lg);
}

/* ── Blog page overrides (hardcoded colors) ── */
body.dark-theme .blog-hero {
  background: var(--bg-white);
}

body.dark-theme .blog-article {
  background: var(--bg-gray-50);
}

body.dark-theme .store-card {
  background: var(--bg-gray-50);
}

body.dark-theme .tip-card {
  background: var(--bg-gray-50);
}

body.dark-theme .sidebar-widget {
  background: var(--bg-gray-50);
}

body.dark-theme .blog-filters-v2 {
  background: rgba(22, 24, 34, 0.95);
}

body.dark-theme .search-input-v2 {
  background: var(--bg-gray-50);
}

body.dark-theme .search-suggestions {
  background: var(--bg-gray-50);
}

body.dark-theme .sort-btn {
  background: var(--bg-gray-50);
}

body.dark-theme .sort-menu {
  background: var(--bg-gray-50);
}

body.dark-theme .view-btn.active {
  background: var(--bg-gray-50);
}

body.dark-theme .advanced-filters-btn {
  background: var(--bg-gray-50);
}

body.dark-theme .scroll-btn {
  background: var(--bg-gray-50);
}

body.dark-theme .category-pill {
  background: var(--bg-gray-50);
}

body.dark-theme .blog-card-v2 {
  background: var(--bg-gray-50);
}

body.dark-theme .country-guide-content {
  background: var(--bg-gray-50);
}

/* Blog CTA inner card: keep text dark on light card in dark theme */
body.dark-theme .blog-cta .cta-content,
body.dark-theme .country-guide-content .blog-cta .cta-content {
  color: var(--text-gray-800);
}
body.dark-theme .blog-cta .cta-content h2,
body.dark-theme .blog-cta .cta-content h3,
body.dark-theme .country-guide-content .blog-cta .cta-content h2,
body.dark-theme .country-guide-content .blog-cta .cta-content h3 {
  color: var(--text-gray-900);
}
body.dark-theme .blog-cta .cta-content p,
body.dark-theme .country-guide-content .blog-cta .cta-content p {
  color: var(--text-gray-600);
}
body.dark-theme .blog-cta .cta-content .btn-outline,
body.dark-theme .country-guide-content .blog-cta .cta-content .btn-outline {
  border-color: var(--gray-300);
  color: var(--text-gray-700);
}
body.dark-theme .blog-cta .cta-content .btn-outline:hover,
body.dark-theme .country-guide-content .blog-cta .cta-content .btn-outline:hover {
  background: var(--gray-100);
  border-color: var(--gray-400);
  color: var(--text-gray-900);
}

body.dark-theme .server-option {
  background: var(--bg-gray-50);
}

body.dark-theme .connection-success {
  background: var(--bg-gray-50);
}

body.dark-theme .phone-screen {
  background: var(--bg-gray-50);
}

/* ══════════════════════════════════════════════════════════
   SERVERS PAGE — Complete dark mode overrides
   Every hardcoded color in servers-page.css is covered here
   ══════════════════════════════════════════════════════════ */

/* Servers hero */
body.dark-theme .servers-hero-gradient {
  background: linear-gradient(165deg, #0f1117 0%, #131525 35%, #161830 70%, #0f1117 100%);
}

body.dark-theme .servers-hero-glow-1 {
  opacity: 0.12;
  background: linear-gradient(135deg, #3b82f6, #6366f1);
}

body.dark-theme .servers-hero-glow-2 {
  opacity: 0.10;
  background: linear-gradient(135deg, #6366f1, #8b5cf6);
}

body.dark-theme .servers-hero-mesh {
  background-image:
    radial-gradient(at 40% 20%, rgba(59, 130, 246, 0.04) 0%, transparent 50%),
    radial-gradient(at 80% 60%, rgba(139, 92, 246, 0.04) 0%, transparent 45%);
}

body.dark-theme .servers-hero-badge {
  color: #a5b4fc;
  background: rgba(99, 102, 241, 0.2);
  border-color: rgba(99, 102, 241, 0.35);
}

body.dark-theme .servers-hero-title {
  color: var(--text-gray-100);
}

body.dark-theme .servers-hero-title-accent {
  background: linear-gradient(135deg, #93c5fd, #a78bfa, #f9a8d4);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

body.dark-theme .servers-hero-description {
  color: var(--text-gray-400);
}

body.dark-theme .servers-hero-values li {
  color: var(--text-gray-300);
}

body.dark-theme .servers-hero-values li i {
  color: #818cf8;
}

body.dark-theme .servers-hero-stat {
  background: rgba(22, 24, 48, 0.8);
  border-color: rgba(99, 102, 241, 0.15);
  box-shadow: 0 4px 20px -4px rgba(0, 0, 0, 0.4);
}

body.dark-theme .servers-hero-stat:hover {
  border-color: rgba(99, 102, 241, 0.5);
  box-shadow: 0 12px 28px -6px rgba(59, 130, 246, 0.15);
}

body.dark-theme .servers-hero-stat-number {
  background: linear-gradient(135deg, #93c5fd, #a78bfa);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

body.dark-theme .servers-hero-stat-label {
  color: var(--text-gray-200);
}

body.dark-theme .servers-hero-stat-hint {
  color: var(--text-gray-500);
}

body.dark-theme .loading-placeholder {
  color: var(--text-gray-600);
}

/* Search & Filter bar */
body.dark-theme .search-filter-label {
  color: var(--text-gray-500);
}

body.dark-theme .search-input {
  background: var(--bg-gray-800);
  border-color: var(--gray-600);
  color: var(--text-gray-100);
}

body.dark-theme .search-input::placeholder {
  color: var(--text-gray-500);
}

body.dark-theme .search-input:focus {
  border-color: #6366f1;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.2);
}

body.dark-theme .search-input-icon {
  color: var(--text-gray-500);
}

body.dark-theme .search-input-clear {
  background: var(--gray-700);
  color: var(--text-gray-400);
}

body.dark-theme .search-input-clear:hover {
  background: var(--gray-600);
  color: var(--text-gray-300);
}

body.dark-theme .search-results-count.show {
  color: #818cf8;
}

body.dark-theme .search-no-results {
  background: rgba(120, 85, 20, 0.15);
  border-color: rgba(251, 191, 36, 0.25);
  color: #fde68a;
}

body.dark-theme .search-no-results-hint {
  color: #fbbf24;
}

body.dark-theme .search-no-results-hint a {
  color: #a5b4fc;
}

body.dark-theme .search-no-results-clear {
  color: #a5b4fc;
}

body.dark-theme .search-no-results-clear:hover {
  color: #c7d2fe;
}

body.dark-theme .search-suggestions {
  color: #fbbf24;
}

body.dark-theme .search-suggestion-btn {
  background: rgba(99, 102, 241, 0.15);
  border-color: rgba(99, 102, 241, 0.3);
  color: #a5b4fc;
}

body.dark-theme .search-suggestion-btn:hover {
  background: rgba(99, 102, 241, 0.25);
  border-color: #818cf8;
}

body.dark-theme .filter-segments {
  background: var(--gray-800);
  border-color: var(--gray-700);
}

body.dark-theme .filter-segment {
  color: var(--text-gray-400);
}

body.dark-theme .filter-segment:hover {
  color: var(--text-gray-200);
  background: var(--gray-700);
}

body.dark-theme .filter-segment.active {
  background: var(--gray-700);
  color: var(--text-gray-100);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

body.dark-theme .filter-segment-count {
  color: var(--text-gray-500);
}

body.dark-theme .filter-segment.active .filter-segment-count {
  color: var(--text-gray-400);
}

/* Carousel */
body.dark-theme .server-regions-carousel-title {
  color: var(--text-gray-100);
}

body.dark-theme .server-regions-carousel-desc {
  color: var(--text-gray-500);
}

body.dark-theme .server-region-card {
  background: var(--bg-gray-100);
  border-color: var(--gray-300);
}

body.dark-theme .server-region-card:hover,
body.dark-theme .server-region-card:focus-visible {
  border-color: rgba(99, 102, 241, 0.4);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.3);
}

body.dark-theme .server-region-card h3 {
  color: var(--text-gray-100);
}

body.dark-theme .server-region-card p {
  color: var(--text-gray-500);
}

body.dark-theme .server-region-flag {
  background: var(--gray-300);
}

body.dark-theme .server-region-link-hint {
  color: #818cf8;
}

body.dark-theme .server-region-card:hover .server-region-link-hint {
  color: #a5b4fc;
}

/* Server Locations container */
body.dark-theme .server-locations {
  background: var(--bg-gray-50);
}

/* Region sections — compact list */
body.dark-theme .region-section {
  background: var(--bg-white);
  border-color: var(--gray-700);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}

body.dark-theme .region-section:hover {
  border-color: var(--gray-600);
}

body.dark-theme .region-header[aria-expanded="true"] {
  border-bottom-color: var(--gray-700);
}

body.dark-theme .region-header.collapsible:hover {
  background: var(--bg-gray-50);
}

body.dark-theme .region-title {
  color: var(--text-gray-100);
}

body.dark-theme .region-count-badge {
  color: var(--text-gray-400);
  background: var(--gray-700);
}

body.dark-theme .collapse-icon {
  color: var(--text-gray-500);
}

body.dark-theme .region-header.collapsible:hover .collapse-icon,
body.dark-theme .region-header[aria-expanded="true"] .collapse-icon {
  color: #818cf8;
}

body.dark-theme .region-flag {
  border-color: var(--gray-600);
}

body.dark-theme .region-content {
  background: var(--bg-gray-50);
}

body.dark-theme .country-count,
body.dark-theme .server-count {
  color: var(--text-gray-400);
  background: var(--gray-700);
}

body.dark-theme .region-header.collapsible:hover .server-count,
body.dark-theme .region-header.collapsible:hover .country-count {
  background: var(--gray-600);
  color: var(--text-gray-300);
}

/* Server cards (country cards) */
body.dark-theme .server-card {
  background: var(--bg-white);
  border-color: var(--gray-700);
}

body.dark-theme .server-card:hover {
  border-color: #6366f1;
  box-shadow: 0 2px 8px rgba(99, 102, 241, 0.15);
}

body.dark-theme .server-card-header {
  border-bottom-color: var(--gray-700);
}

body.dark-theme .server-card-header h3 {
  color: var(--text-gray-100);
}

body.dark-theme .server-card-icons i {
  color: var(--text-gray-500);
}

body.dark-theme a.server-card-header-link:hover h3 {
  color: #a5b4fc;
}

body.dark-theme .services-page-link {
  color: #818cf8;
}

body.dark-theme .services-page-link:hover {
  color: #a5b4fc;
}

/* City pills */
body.dark-theme .city-item {
  background: var(--gray-800);
  border-color: var(--gray-700);
}

body.dark-theme .city-item:hover {
  background: var(--gray-700);
  border-color: var(--gray-600);
}

body.dark-theme a.city-item:hover {
  border-color: #6366f1;
  background: rgba(99, 102, 241, 0.12);
}

body.dark-theme a.city-item:hover .city-name {
  color: #a5b4fc;
}

body.dark-theme .city-name {
  color: var(--text-gray-300);
}

/* Protocol tags */
body.dark-theme .protocol-tag.ipv4 {
  background: rgba(59, 130, 246, 0.2);
  color: #93c5fd;
}

body.dark-theme .protocol-tag.ipv6 {
  background: rgba(251, 191, 36, 0.2);
  color: #fbbf24;
}

/* Supported Services section */
body.dark-theme .supported-services {
  background: linear-gradient(135deg, var(--bg-white) 0%, var(--bg-gray-50) 100%);
}

body.dark-theme .supported-services .section-title {
  background: linear-gradient(135deg, #e2e8f0, #94a3b8);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

body.dark-theme .section-description {
  color: var(--text-gray-600);
}

/* Service category sections */
body.dark-theme .service-category-section {
  background: var(--bg-gray-50);
  border-color: var(--gray-200);
}

body.dark-theme .service-category-header {
  border-bottom-color: var(--gray-200);
}

body.dark-theme .service-category-header h3 {
  color: var(--text-gray-900);
}

/* Service cards */
body.dark-theme .service-card {
  background: var(--bg-gray-100);
  border-color: var(--gray-200);
}

body.dark-theme .service-card:hover {
  border-color: #3b82f6;
}

body.dark-theme .service-card h4 {
  color: var(--text-gray-900);
}

body.dark-theme .service-icon-wrapper {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.1), rgba(99, 102, 241, 0.15));
}

body.dark-theme .service-tag {
  opacity: 0.9;
}

/* Featured / Recommended servers */
body.dark-theme .featured-servers {
  background: linear-gradient(135deg, var(--bg-gray-50) 0%, var(--bg-gray-100) 100%);
  border-color: var(--gray-200);
}

body.dark-theme .featured-header h2 {
  color: var(--text-gray-900);
}

body.dark-theme .featured-header p {
  color: var(--text-gray-600);
}

body.dark-theme .featured-server {
  background: var(--bg-gray-100);
  border-color: var(--gray-200);
}

body.dark-theme .featured-server h3 {
  color: var(--text-gray-900);
}

body.dark-theme .featured-desc {
  color: var(--text-gray-600);
}

body.dark-theme .featured-tags .tag.streaming {
  background: rgba(251, 191, 36, 0.15);
  color: #fbbf24;
}

body.dark-theme .featured-tags .tag.gaming {
  background: rgba(59, 130, 246, 0.15);
  color: #93c5fd;
}

body.dark-theme .featured-tags .tag.social {
  background: rgba(99, 102, 241, 0.15);
  color: #a5b4fc;
}

/* ── Mock device (hardcoded colors) ── */
body.dark-theme .device-mockup {
  background: rgba(22, 24, 34, 0.8);
  border-color: var(--gray-200);
}

/* Final hero palette override */
body.dark-theme .home-page .hero .hero-actions .btn.btn-secondary.btn-lg {
  background: #171c2a !important;
  background-image: none !important;
  border: 2px solid #34415f !important;
  color: #f8fafc !important;
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.28) !important;
}

body.dark-theme .home-page .hero .hero-actions .btn.btn-secondary.btn-lg:hover,
body.dark-theme .home-page .hero .hero-actions .btn.btn-secondary.btn-lg:focus-visible {
  background: #1d2435 !important;
  border-color: #4c6fff !important;
  color: #ffffff !important;
}

body.dark-theme .home-page .hero .hero-actions .btn.btn-secondary.btn-lg .btn-text,
body.dark-theme .home-page .hero .hero-actions .btn.btn-secondary.btn-lg .btn-icon {
  color: inherit !important;
}

body.dark-theme .home-page .hero .hero-proof-strip .hero-proof-item,
body.dark-theme .hero .hero-proof-strip .hero-proof-item {
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
}

body.dark-theme .home-page .hero .hero-proof-strip .hero-proof-item strong,
body.dark-theme .hero .hero-proof-strip .hero-proof-item strong {
  color: #f8fafc !important;
}

body.dark-theme .home-page .hero .hero-proof-strip .hero-proof-item span,
body.dark-theme .hero .hero-proof-strip .hero-proof-item span {
  color: #e2e8f0 !important;
}

body.dark-theme .home-page .hero .hero-benefits li {
  background: #171c2a !important;
  background-image: none !important;
  border: 1px solid #2f3a55 !important;
  color: #e2e8f0 !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.2) !important;
}

body.dark-theme .home-page .hero .hero-benefits li span {
  color: inherit !important;
}

body.dark-theme .home-page .hero .hero-benefits li i {
  color: #60a5fa !important;
}

/* Features page (freevpnapp.org style) */
body.dark-theme .features-hero {
  background: linear-gradient(180deg, rgba(15, 17, 23, 0.98), rgba(22, 24, 34, 1));
}

body.dark-theme .features-hero-title,
body.dark-theme .features-section-title,
body.dark-theme .features-cta-title {
  color: var(--text-gray-900);
}

body.dark-theme .features-hero-subtitle {
  color: var(--text-gray-600);
}

body.dark-theme .features-hero-desc,
body.dark-theme .features-cta-desc,
body.dark-theme .features-about-lead,
body.dark-theme .features-how-intro,
body.dark-theme .features-benefits-intro,
body.dark-theme .features-grid-intro,
body.dark-theme .features-platforms-intro,
body.dark-theme .features-list-intro {
  color: var(--text-gray-600);
}

body.dark-theme .features-myth-content p {
  color: var(--text-gray-600);
}

body.dark-theme .hero-stat-item {
  color: var(--text-gray-600);
}

body.dark-theme .hero-stat-item strong {
  color: var(--text-gray-900);
}

body.dark-theme .features-about,
body.dark-theme .features-benefits,
body.dark-theme .features-grid-section {
  background: rgba(22, 24, 34, 0.6);
}

body.dark-theme .features-about .features-section-inner {
  background: rgba(30, 35, 50, 0.8);
  border-color: rgba(255, 255, 255, 0.08);
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.3);
}

body.dark-theme .features-about .features-section-title {
  color: #e2e8f0;
}

body.dark-theme .features-about-lead {
  color: #cbd5e1;
}

body.dark-theme .features-about-bullets li {
  color: #94a3b8;
}

body.dark-theme .features-about-bullets li::before {
  color: #64748b;
}

body.dark-theme .features-how-card,
body.dark-theme .features-benefit-card,
body.dark-theme .features-grid-card,
body.dark-theme .features-platform-card {
  background: rgba(22, 24, 34, 0.96);
  border-color: rgba(148, 163, 184, 0.18);
}

body.dark-theme .features-how-card h3,
body.dark-theme .features-benefit-card h3,
body.dark-theme .features-grid-card h3,
body.dark-theme .features-platform-card h3 {
  color: var(--text-gray-900);
}

body.dark-theme .features-how-card p,
body.dark-theme .features-benefit-card p,
body.dark-theme .features-grid-card p,
body.dark-theme .features-platform-card li {
  color: var(--text-gray-600);
}

body.dark-theme .feature-block {
  background: rgba(22, 24, 34, 0.96);
  border-color: rgba(148, 163, 184, 0.18);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

body.dark-theme .feature-block:hover {
  border-color: rgba(96, 165, 250, 0.3);
}

body.dark-theme .feature-block-title {
  color: var(--text-gray-900);
}

body.dark-theme .feature-block-desc,
body.dark-theme .feature-block-bullets li {
  color: #cbd5e1;
}

body.dark-theme .feature-block-tip {
  color: #94a3b8;
}

body.dark-theme .feature-block-tip a {
  color: #60a5fa;
}

body.dark-theme .features-faq-inline {
  color: #94a3b8;
}

body.dark-theme .features-faq-inline a {
  color: #60a5fa;
}

body.dark-theme .features-platforms-intro {
  color: #cbd5e1;
}

body.dark-theme .feature-block-highlight {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.1), rgba(139, 92, 246, 0.08));
  border-color: rgba(96, 165, 250, 0.25);
}

body.dark-theme .features-cta-card {
  background: linear-gradient(135deg, rgba(22, 24, 34, 0.98), rgba(15, 17, 23, 0.98));
  border-color: rgba(148, 163, 184, 0.18);
}

body.dark-theme .features-cta-note {
  color: var(--text-gray-500);
}

/* ── Blog article step/card dark fixes ── */
body.dark-theme .step-heading {
  color: #f0f1f5 !important;
}

body.dark-theme .step-heading em {
  color: var(--service-accent-light, #93c5fd) !important;
}

body.dark-theme .why-vpn-card .card-icon i {
  color: #e2e8f0 !important;
}

body.dark-theme .service-highlight i {
  color: #e2e8f0 !important;
}

body.dark-theme .step-badge {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  color: #e2e8f0;
}

body.dark-theme .why-vpn-card .card-icon {
  background: rgba(255, 255, 255, 0.06) !important;
}

/* Unified internal hero dark mode */
body.dark-theme .internal-page-hero {
  border-bottom-color: rgba(71, 85, 105, 0.4);
}

body.dark-theme .servers-hero,
body.dark-theme .services-hero,
body.dark-theme .support-hero {
  background: #0f1117;
}

body.dark-theme .internal-hero-kicker {
  color: #93c5fd;
  background: rgba(37, 99, 235, 0.18);
  border-color: rgba(96, 165, 250, 0.35);
}

body.dark-theme .internal-hero-title {
  color: #e2e8f0;
}

body.dark-theme .internal-hero-description,
body.dark-theme .support-hero-links {
  color: #cbd5e1;
}

body.dark-theme .support-faq-wrap {
  border-color: rgba(148, 163, 184, 0.3);
  background: linear-gradient(180deg, rgba(15, 23, 42, 0.72), rgba(15, 23, 42, 0.6));
  box-shadow: 0 14px 30px rgba(2, 6, 23, 0.42);
}

body.dark-theme .support-section-title,
body.dark-theme .support-faq-wrap > h3[style] {
  color: #e2e8f0 !important;
}

body.dark-theme .support-faq-wrap > h3[style] {
  border-bottom-color: rgba(148, 163, 184, 0.34) !important;
}

body.dark-theme .support-faq-wrap > div[style] {
  border-color: rgba(148, 163, 184, 0.28) !important;
  background: rgba(15, 23, 42, 0.62) !important;
}

body.dark-theme .support-contact-panel {
  border-color: rgba(148, 163, 184, 0.28);
  background: linear-gradient(170deg, rgba(15, 23, 42, 0.8), rgba(30, 41, 59, 0.7));
  box-shadow: 0 12px 28px rgba(2, 6, 23, 0.44);
}

body.dark-theme .support-contact-panel h3 {
  color: #e2e8f0;
}

body.dark-theme .support-contact-panel p,
body.dark-theme .support-contact-points li,
body.dark-theme .support-contact-form label {
  color: #cbd5e1;
}

body.dark-theme .support-contact-points i {
  color: #ffffff;
  box-shadow: 0 10px 18px rgba(2, 6, 23, 0.5);
}

body.dark-theme .support-contact-social a {
  border-color: rgba(148, 163, 184, 0.3);
}

body.dark-theme .support-contact-social a:hover,
body.dark-theme .support-contact-social a:focus-visible {
  filter: saturate(1.1) brightness(1.06);
}

body.dark-theme .support-contact-form input,
body.dark-theme .support-contact-form textarea {
  border-color: rgba(148, 163, 184, 0.36);
  background: rgba(15, 23, 42, 0.72);
  color: #e2e8f0;
}

body.dark-theme .support-contact-form input::placeholder,
body.dark-theme .support-contact-form textarea::placeholder {
  color: #94a3b8;
}

body.dark-theme .internal-page-hero .servers-hero-title,
body.dark-theme .internal-page-hero .features-hero-title,
body.dark-theme .internal-page-hero .hero-title-v3 {
  color: #e2e8f0;
}

body.dark-theme .internal-page-hero .servers-hero-description,
body.dark-theme .internal-page-hero .features-hero-desc,
body.dark-theme .internal-page-hero .hero-description-v3 {
  color: #cbd5e1;
}

body.dark-theme .internal-page-hero .servers-hero-badge,
body.dark-theme .internal-page-hero .features-hero-tagline,
body.dark-theme .internal-page-hero .hero-kicker-v3 {
  color: #93c5fd;
  background: rgba(37, 99, 235, 0.18);
  border-color: rgba(96, 165, 250, 0.35);
}
