:root{
  --bg:#0b0f13;
  --surface:#0f1418;
  --muted:#9aa6b2;
  --primary:#7c4dff;
  --accent:#00d4ff;
  --text:#e6eef6;
}
*{box-sizing:border-box}
body{
  margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial;
  background:linear-gradient(180deg,var(--bg),#071018);
  color:var(--text);-webkit-font-smoothing:antialiased;
}
.container{max-width:1100px;margin:0 auto;padding:2rem}
.site-header{background:transparent;padding:1rem 0}
.site-header .container{display:flex;align-items:center;justify-content:space-between}
.brand{font-weight:700;color:var(--text);text-decoration:none;font-size:1.2rem}
nav a{color:var(--muted);margin-left:1rem;text-decoration:none}
.brand{display:flex;align-items:center;gap:.75rem;font-weight:700;color:var(--text);text-decoration:none;font-size:1.2rem}
.brand .logo{width:34px;height:auto;display:block}
.hero{padding:6rem 0;text-align:left}
.hero h1{font-size:2.2rem;margin:0 0 .5rem}
.lead{color:var(--muted);margin:0 0 1.5rem}
.actions{display:flex;gap:.75rem}
.btn{display:inline-block;padding:.75rem 1rem;border-radius:8px;text-decoration:none;font-weight:600}
.btn.primary{background:linear-gradient(90deg,var(--primary),var(--accent));color:#06121a}
.btn.outline{background:transparent;border:1px solid rgba(255,255,255,0.08);color:var(--text)}
.features{
  margin-top:2rem;
  display:grid;
  grid-template-columns:repeat(3,minmax(220px,1fr));
  gap:1rem;
}
.feature{
  position:relative;
  background:linear-gradient(180deg,rgba(124,77,255,0.12),rgba(7,20,32,0.95));
  border:1px solid rgba(124,77,255,0.18);
  border-radius:18px;
  padding:1.5rem;
  box-shadow:0 16px 40px rgba(0,0,0,0.2);
  overflow:hidden;
}
.feature::before{
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:50%;
  background:radial-gradient(circle at top left, rgba(124,77,255,0.20), transparent 42%);
  pointer-events:none;
}
.feature::after{
  content:'';
  position:absolute;
  bottom:0;
  right:0;
  width:120px;
  height:120px;
  background:radial-gradient(circle at center, rgba(0,212,255,0.08), transparent 58%);
  pointer-events:none;
}
.feature h3{position:relative;z-index:1;color:#fff;margin-bottom:.75rem;font-size:1.15rem;}
.feature p{position:relative;z-index:1;color:var(--muted);line-height:1.7;}
.card-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr;gap:1rem}
.card{background:linear-gradient(90deg, rgba(124,77,255,0.10), rgba(0,212,255,0.05));padding:1rem;border-radius:10px;border:1px solid rgba(124,77,255,0.06)}
.card-large{grid-column:span 2;min-height:140px}
.card-medium{grid-column:span 1;min-height:100px}
.card-small{min-height:80px}
.site-footer{border-top:1px solid rgba(255,255,255,0.03);padding:2rem 0;margin-top:3rem}

/* Banner */
.banner{background:linear-gradient(90deg, rgba(124,77,255,0.12), rgba(0,212,255,0.06));padding:2rem 0;margin-top:1rem;border-radius:12px}
.banner-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.banner-text h2{margin:0 0 .25rem}
.banner-cta{align-self:center}

/* Admin */
.admin textarea{border:1px solid rgba(255,255,255,0.04)}

.pricing h1{margin-top:1rem}
.plans{
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 1.25rem;
  justify-content: flex-start;
}
.plan{
  background:linear-gradient(180deg,rgba(255,255,255,0.02),transparent);
  padding:1.25rem;
  border-radius:12px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  flex: 1 1 280px;
  min-width: 260px;
  max-width: 360px;
}
.plan.featured{border:1px solid rgba(124,77,255,0.18);box-shadow:0 6px 18px rgba(7,11,18,0.6)}
.price{font-size:1.25rem;margin:8px 0;color:var(--accent)}
.plan ul{color:var(--muted);padding-left:1rem}
.plan-actions{display:flex;gap:.5rem;margin-top:1rem}
.note{color:var(--muted);margin-top:1rem}

@media (max-width:600px){
  .hero{padding:3rem 1rem;text-align:center}
  .site-header .container{gap:1rem}
  nav a{display:none}
}

/* Floating support button */
.support-button{
  position:fixed;
  right:20px;
  bottom:20px;
  background:linear-gradient(90deg,var(--primary),var(--accent));
  color:#06121a;
  padding:.75rem 1rem;
  border-radius:999px;
  box-shadow:0 10px 30px rgba(3,8,15,0.6);
  display:flex;align-items:center;gap:.5rem;font-weight:700;text-decoration:none;z-index:9999;
  transition:transform .12s ease,box-shadow .12s ease;outline:none;border:0;
}
.support-button:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(3,8,15,0.65)}
.support-button svg{width:20px;height:20px;flex:0 0 20px}
.support-button span{display:inline-block}

@media (max-width:480px){
  .support-button{right:12px;bottom:12px;padding:.5rem .75rem;font-size:.95rem}
  .support-button span{display:none}
}

.tab-wrapper{display:block;margin-top:1.25rem}

/* Plans section heading */
.plans-section{margin:1.5rem 0}
.plans-section h3{color:var(--text);margin:0 0 .75rem;font-size:1.1rem;border-left:4px solid rgba(124,77,255,0.18);padding-left:.75rem}

/* Sections row: two columns for categories */
/* Tabs layout */
.tab-bar{display:flex;gap:.5rem;border-bottom:1px solid rgba(255,255,255,0.03);padding-bottom:.5rem;margin-bottom:1rem}
.tab-button{background:transparent;border:1px solid transparent;color:var(--muted);padding:.5rem .75rem;border-radius:8px;cursor:pointer}
.tab-button.active{background:linear-gradient(90deg,var(--primary),var(--accent));color:#06121a;border-color:rgba(124,77,255,0.14)}
.tab-contents{min-height:80px}
.tab-content{display:none}
.tab-content.active{display:block}

@media (max-width:900px){
  .tab-bar{flex-wrap:wrap}
}

/* Restore plans grid inside each tab to original responsive behavior (auto-fill)
   The .plans rule above already defines auto-fill; keep that for tab content as-is. */

