/* ==========================================================================
   MY-Card — /pricing/ (editorial). Prefix: pr-
   Plan cards, compare table and fine print come from editorial.css
   (ed-plans / ed-plan / ed-compare / ed-fine). This file only adds the
   page scaffold for both shells, notices, the offer strip, the
   "current plan" marker and the Lifetime-owner layout.
   ========================================================================== */

/* ---------- Shells ---------- */
.pr-public .mc-page-bar { display: none !important; }
.pr-public__main { position: relative; z-index: 2; }
.pr-footer__about { margin-top: 14px; max-width: 340px; font-size: 0.94rem; }

.pr { display: grid; gap: 28px; }
.pr--public { gap: 0; }
.pr-inner { display: grid; gap: 22px; align-content: start; min-width: 0; }
.pr--public .pr-inner { padding-bottom: clamp(72px, 9vw, 120px); }

.pr-hero { padding: clamp(56px, 8vw, 104px) 0 0; }
.pr-hero__head { margin-bottom: clamp(32px, 5vw, 56px); }

/* ---------- Notices ---------- */
.pr-note {
  display: flex; align-items: flex-start; gap: 0.7rem;
  padding: 14px 18px; border-radius: 14px;
  border: 1px solid var(--rule); background: var(--surface);
  font-size: 0.92rem; color: var(--ink-2); line-height: 1.5;
}
.pr-note > [data-lucide], .pr-note > svg { width: 17px; height: 17px; margin-top: 2px; color: var(--accent); }
.pr-note--quiet { background: transparent; border-style: dashed; }
.pr-note--warn > [data-lucide], .pr-note--warn > svg { color: #B3402A; }
html[data-ed-theme="dark"] .pr-note--warn > svg { color: #E48D78; }

.pr-note--lock {
  align-items: center; gap: 16px 20px; flex-wrap: wrap;
  padding: 18px 20px;
  border-color: color-mix(in oklab, var(--accent) 38%, transparent);
  background: var(--tint);
  position: relative; overflow: hidden;
}
.pr-note--lock::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--accent); }
.pr-note__ico { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; background: var(--surface); color: var(--accent); flex-shrink: 0; }
.pr-note__ico svg, .pr-note__ico [data-lucide] { width: 18px; height: 18px; }
.pr-note__body { flex: 1; min-width: 220px; display: grid; gap: 3px; }
.pr-note__body strong { font-family: var(--serif); font-weight: 450; font-size: 1.15rem; letter-spacing: -0.01em; color: var(--ink); line-height: 1.3; }
.pr-note__body p { font-size: 0.9rem; color: var(--ink-2); }
.pr-note__cta svg { width: 15px; height: 15px; }

.pr-code { font-family: var(--mono); font-size: 0.82em; letter-spacing: 0.06em; padding: 1px 7px; border-radius: 5px; background: var(--paper-2); color: var(--ink); border: 1px solid var(--rule-2); }

/* ---------- Offer strip (editorial take on the live-offer banner) ---------- */
.pr-offer {
  display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 14px 22px; align-items: center;
  padding: 18px 22px; border-radius: 16px;
  border: 1px solid var(--rule); background: var(--surface);
  border-top: 2px solid var(--accent);
}
.pr-offer__label {
  font-family: var(--serif); font-weight: 400; font-size: 1.7rem; line-height: 1; letter-spacing: -0.02em;
  color: var(--accent); white-space: nowrap; font-variation-settings: 'opsz' 144;
  padding-right: 22px; border-right: 1px solid var(--rule);
}
.pr-offer__body { display: grid; gap: 2px; min-width: 0; }
.pr-offer__body strong { font-weight: 560; color: var(--ink); }
.pr-offer__body p { font-size: 0.88rem; color: var(--ink-2); }
.pr-offer__meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px 16px; font-size: 0.84rem; color: var(--ink-3); }
.pr-offer__meta > span { display: inline-flex; align-items: center; gap: 0.4rem; }
.pr-offer__meta svg, .pr-offer__meta [data-lucide] { width: 14px; height: 14px; color: var(--accent); }
.pr-offer__meta strong { font-family: var(--mono); font-weight: 500; color: var(--ink); }

/* ---------- Price bar ---------- */
.pr-bar { margin-bottom: 0; margin-top: 6px; }
.pr-usd-note { font-size: 0.84rem; color: var(--ink-3); margin-top: -10px; }
.pr-usd-note[hidden] { display: none; }

/* ---------- Plans ---------- */
.pr-plans { margin-top: 10px; }
.pr-plans .ed-btn svg { width: 15px; height: 15px; }

/* Marker for the viewer's own plan (brass hairline + tag in place of the ribbon) */
.ed-plan.is-current { border-color: color-mix(in oklab, var(--accent) 55%, transparent); box-shadow: 0 0 0 1px color-mix(in oklab, var(--accent) 40%, transparent); }
.ed-plan--pro.is-current { box-shadow: var(--lift-3), 0 0 0 1px #D8B878; }
.pr-current {
  position: absolute; top: -12px; left: 24px;
  font-family: var(--mono); font-size: 0.66rem; letter-spacing: 0.12em; text-transform: uppercase;
  padding: 5px 10px; border-radius: 4px;
  background: var(--paper); color: var(--accent); border: 1px solid color-mix(in oklab, var(--accent) 55%, transparent);
}
.ed-plan--pro .pr-current { background: #D8B878; color: #0D1729; border-color: #D8B878; }

/* ?locked=… — point at Pro */
.pr--locked .ed-plan--pro { outline: 2px solid var(--accent); outline-offset: 4px; }
html[data-ed-theme="dark"] .pr--locked .ed-plan--pro { outline-color: #D8B878; }
.ed-plan { scroll-margin-top: 96px; }

/* Lifetime owner: ownership panel + Team plan */
.pr-plans--duo { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 16px; }
.pr-own {
  position: relative; overflow: hidden;
  display: grid; gap: 16px; align-content: start;
  padding: clamp(26px, 3.4vw, 40px);
  border-radius: 18px;
  background: #0D1729; color: #EDE9E0; border: 1px solid #0D1729;
  --ink: #F2EEE5; --ink-2: #BCC0CB; --ink-3: #8C93A3; --rule: rgba(242, 238, 229, 0.14);
  --brand: #D8B878; --on-brand: #0D1729; --accent: #D8B878; --paper: #0D1729;
  box-shadow: var(--lift-2);
}
html[data-ed-theme="dark"] .pr-own { background: #16243D; border-color: rgba(216, 184, 120, 0.25); }
.pr-own__stamp {
  position: absolute; top: clamp(20px, 3vw, 32px); right: clamp(20px, 3vw, 32px);
  width: 64px; height: 64px; border-radius: 50%;
  display: grid; place-items: center;
  border: 1px solid rgba(216, 184, 120, 0.5); color: #D8B878;
}
.pr-own__stamp::after { content: ''; position: absolute; inset: 5px; border-radius: 50%; border: 1px dashed rgba(216, 184, 120, 0.35); }
.pr-own__stamp svg, .pr-own__stamp [data-lucide] { width: 26px; height: 26px; }
.pr-own .ed-plan__tag { color: #D8B878; }
.pr-own__title {
  font-family: var(--serif); font-weight: 380; font-size: clamp(2rem, 3.4vw, 2.8rem);
  line-height: 1.05; letter-spacing: -0.03em; color: var(--ink); padding-right: 80px;
  font-variation-settings: 'opsz' 144;
}
.pr-own__lede { color: var(--ink-2); max-width: 52ch; font-size: 0.96rem; }
.pr-own__list { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 20px; padding: 18px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.pr-own__list li { display: grid; grid-template-columns: 16px 1fr; gap: 0.6rem; font-size: 0.9rem; color: var(--ink-2); line-height: 1.4; }
.pr-own__list svg, .pr-own__list [data-lucide] { width: 15px; height: 15px; margin-top: 3px; color: #D8B878; }
.pr-own__list strong { color: var(--ink); font-weight: 560; }
.pr-own .ed-link { color: #D8B878; }

/* ---------- FAQ ---------- */
.pr-faq { margin-top: clamp(40px, 6vw, 80px); }
.pr-faq__title { font-size: clamp(1.9rem, 3.4vw, 2.8rem); }
.pr--app .ed-faq__side { top: 84px; }

/* In the app shell the page column is ~260px narrower than the viewport,
   so drop to two plan columns earlier than the landing does. */
@media (max-width: 1340px) {
  .pr--app .ed-plans:not(.pr-plans--duo) { grid-template-columns: 1fr 1fr; }
  .pr--app .ed-fine { grid-template-columns: 1fr 1fr; }
  .pr--app .ed-fine > div:nth-child(3) { border-left: 0; padding-left: 0; }
}
@media (max-width: 900px) {
  .pr-plans--duo { grid-template-columns: 1fr; }
  .pr-offer { grid-template-columns: auto minmax(0, 1fr); }
  .pr-offer__meta { grid-column: 1 / -1; justify-content: flex-start; }
}
@media (max-width: 640px) {
  .pr .ed-plans:not(.pr-plans--duo) { grid-template-columns: 1fr; }
  .pr .ed-plan { padding: 26px 20px 20px; }
  .pr--app .ed-fine { grid-template-columns: 1fr; }
  .pr-offer { grid-template-columns: 1fr; padding: 18px; }
  .pr-offer__label { border-right: 0; padding-right: 0; }
  .pr-own__list { grid-template-columns: 1fr; }
  .pr-own__stamp { width: 52px; height: 52px; }
  .pr-own__title { padding-right: 60px; }
  .pr-bar .ed-assure { gap: 0.4rem 1rem; }
}

/* ---------- Bangla ---------- */
.ed:lang(bn) :is(.pr-own__title, .pr-note__body strong, .pr-offer__label) { letter-spacing: 0; }
.ed:lang(bn) .pr-own__title { line-height: 1.25; font-weight: 500; }

@media print {
  .pr-offer, .pr-note--lock, .ed-price-bar, .pr-usd-note { break-inside: avoid; }
}

.pr-pilot { display: inline-flex; align-items: center; gap: 6px; justify-content: center; font-size: 0.88rem; }
.pr-pilot svg { width: 15px; height: 15px; }
