/* ===== Scoped Reset ===== */
.ms-pricing, .ms-pricing * , .ms-pricing *::before, .ms-pricing *::after { box-sizing:border-box; }
.ms-pricing { -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; line-height:1.8; }

/* ===== Fonts ===== */
@font-face {
  font-family:'IRANSansFaNum';
  src:url('../storage/fonts/IRANSansWeb(FaNum).eot');
  src:url('../storage/fonts/IRANSansWeb(FaNum).eot?#iefix') format('embedded-opentype'),
      url('../storage/fonts/IRANSansWeb(FaNum).woff2') format('woff2'),
      url('../storage/fonts/IRANSansWeb(FaNum).woff') format('woff'),
      url('../storage/fonts/IRANSansWeb(FaNum).ttf') format('truetype');
  font-display:swap;
}
.ms-pricing{ --bg:#ffffff; --text:#0f172a; --muted:#6b7280; --border:#e5e7eb; --ring: color-mix(in srgb, var(--acc-to,#2563eb) 24%, transparent); --shadow:0 24px 60px rgba(20,20,40,.14); font-family:'IRANSansFaNum','Vazir','Tahoma','Arial',sans-serif; }
@media (prefers-color-scheme:dark){
  .ms-pricing{ --bg:#0f1220; --text:#e5e7eb; --muted:#94a3b8; --border:#273142; --shadow:0 28px 70px rgba(0,0,0,.55); }
}

/* ===== Container & Header ===== */
.ms-pricing .pr-wrap{ max-width:1180px; margin:0 auto; padding:36px 16px; }
.ms-pricing .pr-head{ text-align:center; margin-bottom:20px; }
.ms-pricing .pr-eyebrow{ color:var(--acc-to); opacity:.9; font-size:14px; }
.ms-pricing .pr-title{ margin:8px 0 6px; font-size: clamp(22px,3.2vw,40px); color:var(--text); }
.ms-pricing .pr-sub{ margin:0 0 16px; color:var(--muted); }
.ms-pricing .pr-demo-btn{
  display:inline-flex; gap:8px; align-items:center; padding:10px 14px; border-radius:12px;
  background: linear-gradient(90deg, var(--acc-from,#6d28d9), var(--acc-to,#2563eb));
  color:#fff; box-shadow:0 10px 26px color-mix(in srgb, var(--acc-to) 35%, transparent);text-decoration: auto;
}
.ms-pricing .pr-demo-btn .fa-solid{ font-size:16px; }

/* ===== Grid ===== */
.ms-pricing .pr-grid{
  display:grid; grid-template-columns: repeat(3, 1fr); gap:22px; margin-top:18px;
}
@media (max-width: 980px){ .ms-pricing .pr-grid{ grid-template-columns: 1fr; } }

/* ===== Card ===== */
.ms-pricing .pr-card{ position:relative; }
.ms-pricing .pr-card-inner{
  background: var(--bg);
  border:1px solid var(--border);
  border-radius:20px;
  box-shadow: var(--shadow);
  overflow:hidden;
  transition: transform .25s ease, box-shadow .25s ease;
}
.ms-pricing .pr-card-inner:hover{ transform: translateY(-6px); box-shadow:0 30px 80px rgba(37,99,235,.22); }

/* top section */
.ms-pricing .pr-top{ padding:22px 20px 16px; position:relative; }
.ms-pricing .pr-badge{
  position:absolute; top:14px; left:14px; font-size:12px; color:#fff;
  background: linear-gradient(135deg, var(--gr-from,#6d28d9), var(--gr-to,#2563eb));
  padding:6px 10px; border-radius:999px; box-shadow:0 6px 14px color-mix(in srgb, var(--gr-to) 35%, transparent);
}
.ms-pricing .pr-name{ margin:6px 0 8px; font-size:18px; color:var(--text); text-align:center; }
.ms-pricing .pr-price{ display:flex; gap:8px; justify-content:center; align-items:baseline; color: color-mix(in srgb, var(--acc-from) 70%, #333); }
.ms-pricing .pr-amount{ font-size: clamp(28px, 5.4vw, 44px); font-weight:800; }
.ms-pricing .pr-curr{ font-size:14px; opacity:.85; }
.ms-pricing .pr-period{ font-size:12px; color:var(--muted); }

.ms-pricing .pr-cta{
  margin:12px auto 6px; display:flex; align-items:center; gap:8px; justify-content:center; width:92%;
  padding:12px 14px; border-radius:14px; color:#fff; font-weight:700;
  background: linear-gradient(90deg, var(--gr-from,#6d28d9), var(--gr-to,#2563eb));
  box-shadow:0 10px 26px color-mix(in srgb, var(--gr-to) 35%, transparent);text-decoration: auto;
}

/* features */
.ms-pricing .pr-feats{ margin:0; padding:6px 16px 18px; list-style:none; display:grid; gap:10px; }
.ms-pricing .pr-feats li{
  display:grid; grid-template-columns: 24px 1fr; gap:10px; align-items:start;
  padding:10px 10px; border-radius:12px; border:1px dashed var(--border);
}
.ms-pricing .pr-feats li.ok{ background: rgba(37,99,235,.06); border-color: color-mix(in srgb, var(--acc-to) 35%, var(--border)); }
.ms-pricing .pr-feats li.no{ opacity:.6; }
.ms-pricing .pr-feats li .fa-solid{ font-size:14px; }
.ms-pricing .pr-feats li.ok .fa-solid{ color:#16a34a; }   /* check */
.ms-pricing .pr-feats li.no .fa-solid{ color:#ef4444; }   /* xmark */

/* footer */
.ms-pricing .pr-foot{ text-align:center; margin-top:12px; }
.ms-pricing .pr-note{ color:var(--muted); font-size:13px; }

/* focus ring */
.ms-pricing .pr-cta:focus-visible{ outline:none; box-shadow:0 0 0 3px var(--ring); }
