/* ===========================
   bio.ly – Pricing Page CSS
   =========================== */

/* Vars fallbacks */
:root{
  --bg: #0f1522;
  --text: #e6ebf5;
  --text-dim: #b9c2d3;
  --card-bg: #111623;
  --surface: #121722;
  --border: #253046;
  --primary: #2560ec;
  --accent: #8b5cf6;
  --success: #16a34a;
  --warning: #f59e0b;
}

/* Page hero */
.page-hero{
  padding: 80px 16px 24px;
  text-align: center;
  background:
    radial-gradient(900px 420px at 20% -10%, color-mix(in oklab, var(--primary) 14%, transparent), transparent 60%),
    radial-gradient(900px 520px at 100% 10%, color-mix(in oklab, var(--accent) 14%, transparent), transparent 60%);
}
.page-hero-title{
  font-size: clamp(24px, 4.5vw, 40px);
  font-weight: 900;
  margin: 64px 0 8px;
  color: var(--text);
}
.page-hero-desc{
  max-width: 920px;
  margin: 0 auto;
  color: var(--text-dim);
  font-size: clamp(14px, 2.2vw, 18px);
}

/* Section wrapper */
.page-section{
  max-width: 1100px;
  margin: 28px auto 64px;
  padding: 0 16px;
}

/* ===== Early Access banner ===== */
.early-banner{
  width:100%;
  max-width:900px;
  margin:2rem auto 2.5rem;
  background:linear-gradient(90deg,#ffe9c8 0%,#ffd084 60%,#fff5e8 100%);
  border:3px solid var(--warning);
  border-radius:16px;
  box-shadow:0 4px 20px #ffb20033;
  padding:1.4rem 1.7rem;
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between;
  color:#451e00; font-weight:800; gap:1rem;
}
.early-banner h2{ margin:0; font-size:1.3rem; display:flex; align-items:center; gap:.6rem }
.early-banner svg{ width:26px; height:26px }
.early-banner .sub{ font-size:1.05rem; font-weight:700; margin-top:.35rem }
#countdown{ font-size:1.5rem; font-weight:900; letter-spacing:.05em; color:#9d1a00; direction:ltr }
#stockWrap{ font-size:1.2rem; color:#0b2a58; font-weight:900 }
@media(max-width:700px){
  .early-banner{ flex-direction:column; text-align:center; padding:1.1rem }
}

/* ===== Pricing cards ===== */
.pricing-cards{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 22px;
}
@media (max-width: 900px){
  .pricing-cards{ grid-template-columns: 1fr; }
}

.pricing-card-modern{
  background: var(--card-bg);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 18px;
  color: var(--text);
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
  position: relative;
  overflow: hidden;
  
  display: flex
;
    flex-direction: column;
    justify-content: space-between;
}
.pricing-card-modern.best-seller{
  outline: 2px solid color-mix(in oklab, var(--primary) 55%, #ffffff22);
  box-shadow: 0 16px 40px rgba(0,0,0,.28);
}

.pricing-card-header{
  display: grid;
  gap: 8px;
  margin-bottom: 10px;
}
.pricing-badge{
  display:inline-block;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 900;
  color:#0b1a3a;
  background: #c7dcff;
  border-radius: 999px;
}
.pricing-badge.second{
  background:#e9d5ff;
  color:#2b0c4d;
}
.plan-title{
  margin: 0;
  font-size: 22px;
  font-weight: 900;
}
.plan-price{
  display:flex; align-items:baseline; gap: 6px;
}
.price-val{
  font-size: 34px;
  font-weight: 900;
}
.price-per{
  color: var(--text-dim);
  font-weight: 700;
}

/* Features list */
.plan-features{
  list-style:none; padding:0; margin: 10px 0 16px;
  display:grid; gap: 10px;
}
.plan-features li{
  display:flex; align-items:center; gap:10px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 10px 12px;
  color: var(--text);
  font-weight: 600;
}
.plan-features svg{ flex: 0 0 auto }

/* CTA button */
.plan-btn-modern{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  width: 100%; padding: 12px 16px;
  border-radius: 12px; border: 0;
  background: linear-gradient(135deg, var(--primary), var(--accent));
  color:#fff; font-weight: 900; cursor:pointer;
  box-shadow: 0 6px 18px rgba(0,0,0,.18);
  transition: transform .12s, box-shadow .12s, opacity .12s;
}
.plan-btn-modern:hover{ transform: translateY(-1px); box-shadow: 0 10px 30px rgba(0,0,0,.25); }
.plan-btn-modern.glow{
  position: relative;
}
.plan-btn-modern.glow::after{
  content:"";
  position:absolute; inset:-1px; border-radius:12px;
  pointer-events:none;
  box-shadow: 0 0 30px color-mix(in oklab, var(--primary) 40%, transparent);
}

/* ===== Compare table ===== */
.card{
  background: var(--card-bg);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 16px;
  color: var(--text);
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
}
.plan-compare-table{
  margin-top: 22px;
  overflow: auto;
}
.plan-compare-table table{
  width: 100%;
  border-collapse: collapse;
  min-width: 560px;
}
.plan-compare-table th,
.plan-compare-table td{
  border-bottom: 1px solid var(--border);
  padding: 10px 12px;
  text-align: left;
  font-size: 14.5px;
}
.plan-compare-table th{
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--text-dim);
}

/* ===== FAQ ===== */
.pricing-faq{
  margin-top: 22px;
}
.pricing-faq h3{
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 900;
}
.pricing-faq details{
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--surface);
  margin: 10px 0;
  padding: 10px 12px;
}
.pricing-faq summary{
  cursor: pointer;
  font-weight: 800;
  color: var(--text);
  list-style: none;
}
.pricing-faq summary::-webkit-details-marker{ display:none; }
.pricing-faq p{
  color: var(--text-dim);
  margin: 8px 0 0;
  line-height: 1.6;
}

/* Light mode */
@media (prefers-color-scheme: light){
  :root{
    --bg: #f1f5f9;
    --text: #0b1222;
    --text-dim: #415070;
    --card-bg: #ffffff;
    --surface: #ffffff;
    --border: #e6e8ec;
  }
  .page-hero{ background:
    radial-gradient(900px 420px at 20% -10%, color-mix(in oklab, var(--primary) 10%, transparent), transparent 60%),
    radial-gradient(900px 520px at 100% 10%, color-mix(in oklab, var(--accent) 10%, transparent), transparent 60%);
  }
}

/* RTL tweaks */
html[dir="rtl"] .plan-compare-table th,
html[dir="rtl"] .plan-compare-table td{
  text-align: right;
}
