/* PluginPro Dark Theme */
:root{--bg-dark:#0B0F1A;--bg-card:#111827;--bg-elevated:#1E293B;--primary:#00E5CC;--accent-purple:#8B5CF6;--text-primary:#F8FAFC;--text-secondary:#94A3B8;--border-subtle:rgba(0,229,204,0.1);--border-glow:rgba(0,229,204,0.3);--font-main:'Inter',-apple-system,sans-serif;--font-mono:'JetBrains Mono',monospace;--navy:#0B1220;--lime:#CCFF47;--cyan:#00E5CC;--cream:#FAF8F4;--dim:#94A3B8;--glass:rgba(17,24,39,0.7);--font-accent:'Outfit','Inter',sans-serif;--font-heading:'Outfit','Inter',sans-serif}
body,.site-header,.site-footer,#page{background:var(--bg-dark) !important;color:var(--text-primary) !important;font-family:var(--font-main) !important}
a{color:var(--primary);transition:color 0.3s}
a:hover{color:#00F5E0}
.main-navigation a{color:var(--text-secondary) !important}
.main-navigation a:hover{color:var(--primary) !important}

/* Mobile navigation — fix z-index stacking */
.site-header {
  position: sticky;
  top: 0;
  z-index: 9998;
  background: var(--bg-dark) !important;
  border-bottom: 1px solid rgba(0,229,204,0.1);
}
.main-navigation {
  z-index: 9999 !important;
}
.mobile-menu-control-wrapper {
  z-index: 9999;
}
/* Ensure hero/content doesn't creep under sticky header */
.hero {
  padding-top: 80px !important;
}
.archive-hero {
  padding-top: 100px !important;
}
/* Mobile: prevent price/content overlap through header */
@media screen and (max-width: 768px) {
  .site-header {
    position: sticky !important;
    top: 0 !important;
  }
  body {
    padding-top: 0 !important;
  }
}
.site-logo{font-weight:900;font-size:1.4rem;color:var(--text-primary) !important;text-decoration:none}
.site-logo span{color:var(--primary)}
.hero-section{min-height:90vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:120px 24px 80px;position:relative;overflow:hidden;background:radial-gradient(ellipse at top,rgba(0,229,204,0.08) 0%,transparent 60%),var(--bg-dark)}
.hero-section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 20%,rgba(139,92,246,0.08) 0%,transparent 40%),radial-gradient(circle at 80% 80%,rgba(0,229,204,0.06) 0%,transparent 40%);animation:heroGlow 20s ease-in-out infinite}
@keyframes heroGlow{0%,100%{transform:scale(1)}50%{transform:scale(1.03)}}
.hero-content{position:relative;z-index:2;max-width:900px;margin:0 auto}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(0,229,204,0.1);border:1px solid var(--border-glow);padding:8px 20px;border-radius:100px;font-size:0.9rem;font-weight:600;color:var(--primary);margin-bottom:24px}
.hero-title{font-size:clamp(2.5rem,7vw,5rem);font-weight:900;line-height:1.05;margin-bottom:24px;background:linear-gradient(135deg,#F8FAFC 0%,#00E5CC 50%,#8B5CF6 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.hero-subtitle{font-size:clamp(1rem,2vw,1.3rem);color:var(--text-secondary);max-width:600px;margin:0 auto 48px;line-height:1.7}
.cta-group{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:40px}
.button{background:linear-gradient(135deg,#00E5CC 0%,#00B4D8 100%);color:#0B0F1A !important;font-weight:700;padding:14px 32px;border-radius:8px;text-decoration:none;display:inline-block;transition:all 0.3s ease;box-shadow:0 4px 20px rgba(0,229,204,0.3);border:none;font-size:1rem}
.button:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(0,229,204,0.5);text-decoration:none;color:#0B0F1A}
.btn-ghost{background:transparent !important;color:var(--text-primary) !important;border:2px solid var(--border-glow) !important;box-shadow:none !important}
.btn-ghost:hover{background:rgba(0,229,204,0.1) !important;border-color:var(--primary) !important}
.btn-purple{background:linear-gradient(135deg,#8B5CF6 0%,#7C3AED 100%) !important;box-shadow:0 4px 20px rgba(139,92,246,0.3) !important}
.site-section{padding:100px 24px}
.section-alt{background:var(--bg-card) !important}
.section-title{text-align:center;font-size:clamp(2rem,4vw,3rem);font-weight:900;margin-bottom:16px}
.section-subtitle{text-align:center;color:var(--text-secondary);font-size:1.15rem;max-width:600px;margin:0 auto 60px}
.gradient-text{background:linear-gradient(90deg,var(--primary),var(--accent-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.mcp-section{padding:80px 24px;background:linear-gradient(180deg,rgba(139,92,246,0.08) 0%,transparent 100%);border-top:1px solid rgba(139,92,246,0.2);border-bottom:1px solid rgba(139,92,246,0.2)}
.mcp-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:1100px;margin:0 auto;align-items:center}
.mcp-visual{background:var(--bg-card);border:1px solid rgba(139,92,246,0.3);border-radius:20px;padding:36px;text-align:center}
.mcp-terminal{background:#0a0f1e;border-radius:12px;padding:20px;font-family:var(--font-mono);font-size:0.8rem;text-align:left;border:1px solid rgba(139,92,246,0.3)}
.mcp-terminal-header{display:flex;gap:6px;margin-bottom:16px}
.mcp-dot{width:10px;height:10px;border-radius:50%}
.mcp-dot-r{background:#f56565}.mcp-dot-y{background:#ecc94b}.mcp-dot-g{background:#48bb78}
.mcp-line{color:var(--text-secondary);padding:2px 0}
.mcp-cmd{color:var(--primary)}.mcp-out{color:var(--accent-purple)}
.mcp-badge{display:inline-block;background:rgba(139,92,246,0.15);border:1px solid rgba(139,92,246,0.4);color:var(--accent-purple);font-weight:700;font-size:0.75rem;padding:4px 12px;border-radius:100px;margin-bottom:16px;text-transform:uppercase;letter-spacing:0.08em}
.mcp-title{font-size:2rem;font-weight:900;margin-bottom:16px}
.mcp-desc{color:var(--text-secondary);line-height:1.7;margin-bottom:24px;font-size:1rem}
.mcp-features{list-style:none;padding:0;margin:0 0 28px}
.mcp-features li{padding:6px 0;color:var(--text-secondary);font-size:0.9rem}
.mcp-features li::before{content:'→ ';color:var(--accent-purple);font-weight:700}
.mcp-price{font-size:2rem;font-weight:900;color:var(--accent-purple)}
.mcp-price span{font-size:0.9rem;color:var(--text-secondary);font-weight:400}
.plugin-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;padding:28px;transition:all 0.4s ease;position:relative;overflow:hidden}
.plugin-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--accent-purple));opacity:0;transition:opacity 0.3s}
.plugin-card:hover{transform:translateY(-8px);border-color:var(--border-glow);box-shadow:0 20px 60px rgba(0,229,204,0.12)}
.plugin-card:hover::before{opacity:1}
.plugin-icon{font-size:2.8rem;margin-bottom:16px;display:block}
.plugin-name{font-size:1.3rem;font-weight:800;margin-bottom:10px}
.plugin-desc{color:var(--text-secondary);font-size:0.9rem;margin-bottom:16px;line-height:1.6}
.plugin-price{display:inline-block;background:rgba(0,229,204,0.12);border:1px solid var(--border-glow);color:var(--primary);font-weight:700;font-size:1rem;padding:5px 14px;border-radius:100px;margin-bottom:14px}
.plugin-link{display:inline-block;color:var(--primary);font-size:0.85rem;font-weight:600;text-decoration:none;margin-top:8px}
.plugin-link:hover{text-decoration:underline}
.feature-list{list-style:none;padding:0;margin:0}
.feature-list li{padding:7px 0;padding-left:24px;position:relative;color:var(--text-secondary);font-size:0.9rem}
.feature-list li::before{content:'✓';position:absolute;left:0;color:var(--primary);font-weight:700}
.glass-card{background:rgba(30,41,59,0.6);border:1px solid var(--border-subtle);border-radius:16px;padding:28px;text-align:center}
.stats-bar{display:flex;justify-content:center;gap:64px;flex-wrap:wrap;padding:60px 24px;background:var(--bg-card);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}
.stat-number{font-size:2.8rem;font-weight:900;background:linear-gradient(90deg,var(--primary),var(--accent-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;line-height:1;margin-bottom:6px}
.stat-label{color:var(--text-secondary);font-size:0.9rem}
.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:28px;max-width:1100px;margin:0 auto}
.pricing-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:20px;padding:36px 28px;text-align:center;position:relative;transition:all 0.4s ease}
.pricing-card.featured{border-color:var(--primary);box-shadow:0 0 60px rgba(0,229,204,0.2);transform:scale(1.05)}
.pricing-card.featured::before{content:'BEST VALUE';position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:linear-gradient(90deg,var(--primary),var(--accent-purple));color:var(--bg-dark);font-size:0.65rem;font-weight:800;padding:4px 16px;border-radius:100px;letter-spacing:0.1em}
.pricing-amount{font-size:3.2rem;font-weight:900;color:var(--primary);line-height:1}
.pricing-amount .currency{font-size:1.4rem;vertical-align:super}
.pricing-period{color:var(--text-secondary);font-size:0.85rem;margin-bottom:24px}
.site-footer{background:var(--bg-card) !important;border-top:1px solid var(--border-subtle) !important;padding:60px 24px 40px}
.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:48px;max-width:1100px;margin:0 auto 48px}
.footer-brand p{color:var(--text-secondary);margin-top:14px;font-size:0.9rem;line-height:1.7}
.footer-title{font-size:0.75rem;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--text-secondary);margin-bottom:18px}
.footer-links{list-style:none;padding:0;margin:0}
.footer-links li{margin-bottom:10px}
.footer-links a{color:var(--text-secondary);font-size:0.9rem;transition:color 0.3s}
.footer-links a:hover{color:var(--primary)}
.footer-bottom{max-width:1100px;margin:0 auto;padding-top:28px;border-top:1px solid rgba(255,255,255,0.06);text-align:center;color:var(--text-secondary);font-size:0.85rem}
.site-nav{padding:16px 40px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-subtle);position:sticky;top:0;z-index:100;background:rgba(11,15,26,0.9)}
.nav-logo{font-weight:900;font-size:1.2rem;color:var(--text-primary);text-decoration:none}
.nav-logo span{color:var(--primary)}
.nav-links{display:flex;gap:32px}
.nav-links a{color:var(--text-secondary);text-decoration:none;font-weight:500;transition:color 0.3s;font-size:0.9rem}
.nav-links a:hover{color:var(--primary)}
#main,.site-main,main{background:var(--bg-dark) !important}
.entry-content{color:var(--text-primary) !important}
@media(max-width:900px){.mcp-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.pricing-card.featured{transform:scale(1)}}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr;gap:32px}.stats-bar{gap:32px}.cta-group{flex-direction:column}.site-nav{padding:14px 20px}}

/* === Force dark header over GeneratePress === */
html body header,
html body .site-header,
body header,
body .site-header,
header.site-header {
  background-color: #0B1220 !important;
  background: #0B1220 !important;
}

/* === Mobile Hamburger === */
html body header #menu-toggle,
html body #menu-toggle {
  display: none;
  background: rgba(0,0,0,0.4) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: 6px !important;
  cursor: pointer;
  padding: 0.4rem !important;
  touch-action: manipulation;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 5px;
}

@media (max-width: 768px) {
  html body header,
  html body header .site-header {
    background: #0B1220 !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 100 !important;
  }
  html body header #menu-toggle,
  html body #menu-toggle { display: flex !important; }
  html body .desktop-nav { display: none !important; }
  #mobile-menu { position: absolute; top: 100%; left: 0; right: 0; z-index: 9999; background: #0B1220 !important; box-shadow: 0 8px 24px rgba(0,0,0,0.4); border-bottom: 1px solid rgba(255,255,255,0.08); }
}

@media (min-width: 769px) {
  #mobile-menu { display: none !important; }
}

/* === Global Fixes === */
html { scroll-behavior: smooth; }

/* Focus styles for accessibility */
:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 3px;
  border-radius: 3px;
}

/* iOS backdrop-filter fallback */
.glass-card {
  background: rgba(30,41,59,0.6);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  border: 1px solid var(--border-subtle);
  border-radius: 16px;
  padding: 28px;
  text-align: center;
}
.site-nav {
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

/* Images — prevent overflow on mobile */
img { max-width: 100%; height: auto; }

/* Spec grid — responsive columns */
.specs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.75rem;
}
@media (max-width: 600px) {
  .specs-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 400px) {
  .specs-grid { grid-template-columns: 1fr; }
}

/* Compare table cell font on mobile */
@media (max-width: 600px) {
  .compare-cell { font-size: 0.78rem !important; padding: 0.5rem 0.6rem !important; }
  .compare-row-label { font-size: 0.78rem !important; padding: 0.5rem 0.6rem !important; }
}

/* === OptimumTents Specific === */
.site-header, header { background: var(--navy); border-bottom: 1px solid rgba(255,255,255,0.05); position: sticky; top: 0; z-index: 100; }
.main-navigation, .nav-links { display: flex; align-items: center; gap: 2rem; max-width: 1100px; margin: 0 auto; padding: 0 2rem; height: 64px; }
.main-navigation a, .nav-links a { color: var(--dim); text-decoration: none; font-family: var(--font-heading); font-size: 0.88rem; padding: 0.5rem 0; border-bottom: 1px solid transparent; transition: border-color 0.2s, color 0.2s; }
.main-navigation a:hover, .nav-links a:hover { color: var(--white); border-bottom-color: var(--lime); }
.site-logo a, .logo { font-family: var(--font-accent); font-size: 1.4rem; color: var(--lime); text-decoration: none; font-weight: 600; letter-spacing: -0.02em; }

/* Footer */
.site-footer, footer { background: var(--navy); border-top: 1px solid rgba(255,255,255,0.05); padding: 3rem 2rem; }
.footer-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 2rem; max-width: 1100px; margin: 0 auto; }
.footer-grid h4 { color: var(--white); font-size: 0.9rem; font-weight: 600; margin: 0 0 1rem; }
.footer-grid a { color: var(--dim); text-decoration: none; display: block; font-size: 0.85rem; padding: 0.25rem 0; transition: color 0.2s; }
.footer-grid a:hover { color: var(--lime); }
.fcopy, .footer-copy { text-align: center; padding-top: 1.5rem; border-top: 1px solid rgba(255,255,255,0.05); color: var(--dim); font-size: 0.8rem; }

/* Tent card in dark theme */
.tent-card-dark { background: var(--glass); border: 1px solid rgba(255,255,255,0.06); border-radius: 12px; overflow: hidden; transition: transform 0.2s, box-shadow 0.2s; }
.tent-card-dark:hover { transform: translateY(-4px); box-shadow: 0 12px 40px rgba(0,0,0,0.4); }

/* Archive/grid pages */
.archive-hero { background: var(--bg); padding: 3rem 2rem; text-align: center; }
.filter-btn { display: inline-block; padding: 0.4rem 1rem; border-radius: 20px; background: var(--glass); color: var(--dim); text-decoration: none; font-size: 0.85rem; border: 1px solid rgba(255,255,255,0.08); transition: all 0.2s; }
.filter-btn:hover, .filter-btn.active { background: var(--lime); color: var(--navy); border-color: var(--lime); }

/* Compare page */
.compare-table-dark { width: 100%; border-collapse: collapse; background: var(--glass); border-radius: 12px; overflow: hidden; }
.compare-table-dark th { background: var(--navy); color: var(--white); padding: 0.75rem 1rem; text-align: left; font-family: var(--font-heading); font-weight: 500; font-size: 0.85rem; }
.compare-table-dark td { padding: 0.6rem 1rem; border-bottom: 1px solid rgba(255,255,255,0.04); font-size: 0.88rem; color: var(--dim); }
.compare-table-dark tr:nth-child(even) td { background: rgba(0,0,0,0.2); }
.compare-table-dark .highlight td { background: rgba(204,255,71,0.05); color: var(--white); font-weight: 500; }
