/* ══ SUBSCRIPTION PAYWALL ══ */
.paywall-overlay {
  position:fixed;inset:0;z-index:3000;
  background:rgba(var(--bg-rgb,7,16,31),.92);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
  display:flex;align-items:flex-end;justify-content:center;
  animation:fadeIn .2s ease;
}
.paywall-sheet {
  background:linear-gradient(160deg,#0d1f38,#0f2444);
  border:1px solid rgba(255,255,255,.1);
  border-radius:28px 28px 0 0;
  padding:28px 22px 44px;
  width:100%;max-width:480px;
  animation:slideUp .35s cubic-bezier(.32,1.6,.5,1);
}
.paywall-crown {
  text-align:center;font-size:42px;margin-bottom:8px;
}
.paywall-title {
  text-align:center;font-size:22px;font-weight:900;
  background:linear-gradient(135deg,#60A5FA,#A78BFA,#F472B6);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  margin-bottom:6px;
}
.paywall-sub {
  text-align:center;font-size:13px;color:var(--muted);
  margin-bottom:22px;line-height:1.6;
}
.paywall-features {
  display:flex;flex-direction:column;gap:8px;
  margin-bottom:22px;
}
.paywall-feat {
  display:flex;align-items:center;gap:10px;
  font-size:13px;font-weight:600;
}
.paywall-feat-icon {
  width:28px;height:28px;border-radius:8px;
  background:rgba(99,102,241,.2);border:1px solid rgba(99,102,241,.3);
  display:flex;align-items:center;justify-content:center;
  font-size:14px;flex-shrink:0;
}
.plans-grid {
  display:flex;gap:8px;margin-bottom:18px;
}
.plan-card {
  flex:1;border-radius:16px;padding:14px 10px;text-align:center;
  border:2px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.04);
  cursor:pointer;transition:all .2s;position:relative;
}
.plan-card.selected {
  border-color:#6366F1;
  background:rgba(99,102,241,.12);
}
.plan-card.popular::before {
  content:'الأفضل';
  position:absolute;top:-10px;left:50%;transform:translateX(-50%);
  background:linear-gradient(135deg,#6366F1,#8B5CF6);
  color:#fff;font-size:9px;font-weight:800;
  padding:2px 10px;border-radius:10px;white-space:nowrap;
}
.plan-period {font-size:11px;color:var(--muted);margin-bottom:4px;}
.plan-price {font-size:20px;font-weight:900;color:#fff;}
.plan-price span {font-size:11px;font-weight:400;color:var(--muted);}
.plan-save {font-size:9px;color:#34D399;font-weight:700;margin-top:3px;}
.paywall-cta {
  width:100%;padding:16px;border-radius:18px;border:none;
  font-family:var(--font);font-size:16px;font-weight:800;
  background:linear-gradient(135deg,#6366F1,#8B5CF6);
  color:#fff;cursor:pointer;
  box-shadow:0 6px 28px rgba(99,102,241,.45);
  transition:all .2s;margin-bottom:12px;
}
.paywall-cta:hover{transform:translateY(-2px);box-shadow:0 10px 36px rgba(99,102,241,.55);}
.paywall-dismiss {
  width:100%;padding:10px;border:none;background:none;
  font-family:var(--font);font-size:13px;
  color:var(--muted);cursor:pointer;
}
.paywall-dismiss:hover{color:var(--text);}
.free-badge {
  display:inline-flex;align-items:center;gap:4px;
  background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.25);
  border-radius:10px;padding:3px 9px;
  font-size:10px;font-weight:700;color:#4ade80;
  margin-bottom:18px;
}

/* ══ AD MODAL ══ */
.ad-sheet {
  background:linear-gradient(160deg,#0d1f38,#0f2444);
  border:1px solid rgba(255,255,255,.1);
  border-radius:28px 28px 0 0;
  padding:28px 22px 44px;
  width:100%;max-width:480px;
  animation:slideUp .35s cubic-bezier(.32,1.6,.5,1);
}
.ad-title {
  text-align:center;font-size:19px;font-weight:900;margin-bottom:6px;
}
.ad-sub {
  text-align:center;font-size:13px;color:var(--muted);margin-bottom:22px;
}
.ad-screen {
  background:#000;border-radius:16px;
  height:180px;margin-bottom:18px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.1);
}
.ad-placeholder {
  text-align:center;color:var(--muted);font-size:13px;
}
.ad-timer-ring {
  position:absolute;top:10px;left:10px;
  width:36px;height:36px;
}
.ad-timer-ring svg { transform:rotate(-90deg); }
.ad-timer-ring circle {
  fill:none;stroke:rgba(255,255,255,.15);stroke-width:3;
}
.ad-timer-ring .progress {
  stroke:#6366F1;stroke-width:3;
  stroke-dasharray:100;stroke-dashoffset:100;
  transition:stroke-dashoffset .1s linear;
}
.ad-skip-counter {
  position:absolute;top:10px;right:10px;
  background:rgba(0,0,0,.6);border-radius:8px;
  padding:4px 10px;font-size:12px;font-weight:700;color:var(--text2);
}
.ad-brand {
  position:absolute;bottom:10px;left:50%;transform:translateX(-50%);
  background:rgba(99,102,241,.2);border:1px solid rgba(99,102,241,.3);
  border-radius:8px;padding:4px 14px;font-size:11px;color:#A5B4FC;font-weight:700;
}
.ad-info {
  display:flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);
  border-radius:12px;padding:10px 14px;margin-bottom:16px;font-size:12px;
  color:var(--muted);
}
.ad-cta {
  width:100%;padding:15px;border-radius:16px;border:none;
  font-family:var(--font);font-size:15px;font-weight:800;
  background:linear-gradient(135deg,#6366F1,#8B5CF6);
  color:#fff;cursor:pointer;
  box-shadow:0 6px 24px rgba(99,102,241,.4);
  transition:all .2s;margin-bottom:10px;
  opacity:.4;pointer-events:none;
}
.ad-cta.ready {
  opacity:1;pointer-events:auto;
  animation:pulse .6s ease-in-out 2;
}
.ad-or {
  text-align:center;font-size:12px;color:var(--muted);
  margin-bottom:10px;
}
.ad-sub-btn {
  width:100%;padding:12px;border-radius:14px;border:1.5px solid rgba(99,102,241,.4);
  background:transparent;font-family:var(--font);font-size:13px;font-weight:700;
  color:#A5B4FC;cursor:pointer;transition:all .2s;
}
.ad-sub-btn:hover{background:rgba(99,102,241,.1);}
