/* Jefna Pro Features — v7.2.0 — frontend styles (RTL-first, light/dark aware) */
:root{
  --jpro-bg:#ffffff;--jpro-fg:#0f172a;--jpro-muted:#64748b;--jpro-border:#e5e7eb;
  --jpro-card:#ffffff;--jpro-soft:#f8fafc;--jpro-primary:#0ea5e9;--jpro-primary-2:#0369a1;
  --jpro-gold:#f59e0b;--jpro-silver:#94a3b8;--jpro-bronze:#b45309;--jpro-platinum:#7c3aed;
  --jpro-success:#10b981;--jpro-danger:#ef4444;--jpro-radius:16px;--jpro-shadow:0 4px 24px rgba(15,23,42,.06);
}
@media (prefers-color-scheme:dark){
  :root{--jpro-bg:#0b1220;--jpro-fg:#e2e8f0;--jpro-muted:#94a3b8;--jpro-border:#1e293b;--jpro-card:#0f172a;--jpro-soft:#111827;}
}

/* Dashboard widget (slots into existing dashboard) */
.jefna-pro-widget{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:8px 0 24px}
.jefna-pro-widget .jpw-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--jpro-card);border:1px solid var(--jpro-border);border-radius:var(--jpro-radius);text-decoration:none;color:var(--jpro-fg);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.jefna-pro-widget .jpw-card:hover{transform:translateY(-2px);box-shadow:var(--jpro-shadow);border-color:transparent}
.jefna-pro-widget .jpw-ic{font-size:28px;line-height:1;flex-shrink:0}
.jefna-pro-widget .jpw-meta{display:flex;flex-direction:column;min-width:0}
.jefna-pro-widget .jpw-meta b{font-size:18px;font-weight:800;line-height:1.1}
.jefna-pro-widget .jpw-meta span{font-size:12px;color:var(--jpro-muted)}
.jefna-pro-widget .jpw-bar{margin-top:6px;height:6px;background:var(--jpro-soft);border-radius:99px;overflow:hidden}
.jefna-pro-widget .jpw-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--jpro-primary,#10b981),var(--jpro-primary-2,#059669));transition:width .6s ease}
.jpw-tier-bronze{border-top:3px solid var(--jpro-bronze)!important}
.jpw-tier-silver{border-top:3px solid var(--jpro-silver)!important}
.jpw-tier-gold{border-top:3px solid var(--jpro-gold)!important}
.jpw-tier-platinum{border-top:3px solid var(--jpro-platinum)!important}

/* Page shell */
.jpro-page{color:var(--jpro-fg);}
.jpro-hero{padding:28px 24px;border-radius:calc(var(--jpro-radius) + 4px);background:linear-gradient(135deg,var(--jpro-primary,#10b981) 0%,var(--jpro-primary-2,#059669) 100%);color:#fff;margin-bottom:24px;box-shadow:var(--jpro-shadow)}
.jpro-hero h2{margin:0 0 6px;font-size:22px;font-weight:800;color:#fff}
.jpro-hero p{margin:0;opacity:.92;line-height:1.55}
.jpro-h3{margin:24px 0 12px;font-size:16px;font-weight:700}
.jpro-empty{padding:24px;text-align:center;color:var(--jpro-muted);background:var(--jpro-soft);border-radius:var(--jpro-radius)}
.jpro-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:99px;border:0;font-weight:700;cursor:pointer;font-size:14px;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease;text-decoration:none}
.jpro-btn-primary{background:linear-gradient(135deg,var(--jpro-primary),var(--jpro-primary-2));color:#fff}
.jpro-btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(16,185,129,.35)}
.jpro-btn[disabled]{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.jpro-progress{height:10px;background:var(--jpro-soft);border-radius:99px;overflow:hidden;margin-top:8px}
.jpro-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--jpro-gold,#f59e0b),var(--jpro-primary,#10b981));transition:width .8s cubic-bezier(.22,.61,.36,1)}

/* Loyalty */
.jpro-checkin{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px;background:var(--jpro-card);border:1px solid var(--jpro-border);border-radius:var(--jpro-radius);margin-bottom:20px;flex-wrap:wrap}
.jpro-streak-num{display:flex;align-items:center;gap:10px;font-weight:800}
.jpro-streak-num span{font-size:32px}
.jpro-streak-num b{font-size:36px;line-height:1}
.jpro-streak-num em{font-style:normal;color:var(--jpro-muted);font-weight:600}
.jpro-checkin.is-done{background:linear-gradient(135deg,var(--jv-l,#ecfdf5),#f0fdf4)}
.jpro-level{padding:18px;background:var(--jpro-card);border:1px solid var(--jpro-border);border-radius:var(--jpro-radius);margin-bottom:24px}
.jpro-level-head{display:flex;justify-content:space-between;margin-bottom:8px;font-weight:700}
.jpro-badges{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}
.jpro-badge{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 8px;background:var(--jpro-card);border:1px solid var(--jpro-border);border-radius:var(--jpro-radius);text-align:center}
.jpro-badge.locked{opacity:.4;filter:grayscale(.6)}
.jpro-badge-ic{font-size:36px;line-height:1}
.jpro-badge-t{font-size:12px;font-weight:700;color:var(--jpro-fg)}
.jpro-rewards{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.jpro-rewards li{padding:12px 16px;background:var(--jpro-soft);border-radius:12px;display:flex;gap:10px;align-items:center}

/* Wallet */
.jpro-wallet-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:var(--jpro-radius);margin-bottom:20px;flex-wrap:wrap;color:#78350f}
.jpro-wallet-bal{display:flex;flex-direction:column}
.jpro-wallet-bal span{font-size:13px;font-weight:600;opacity:.8}
.jpro-wallet-bal b{font-size:32px;font-weight:900;line-height:1.1}
.jpro-ledger{display:flex;flex-direction:column;gap:8px}
.jpro-ledger-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 14px;background:var(--jpro-card);border:1px solid var(--jpro-border);border-radius:12px}
.jpro-led-ic{font-size:20px}
.jpro-led-meta{display:flex;flex-direction:column;min-width:0}
.jpro-led-meta b{font-weight:700;font-size:14px}
.jpro-led-meta span{font-size:12px;color:var(--jpro-muted)}
.jpro-led-amt.pos{color:var(--jpro-success)}
.jpro-led-amt.neg{color:var(--jpro-danger)}

/* Referral */
.jpro-ref-grid{display:grid;grid-template-columns:1fr 240px;gap:16px;margin-bottom:20px}
@media(min-width:701px) and (max-width:900px){.jpro-ref-grid{grid-template-columns:1fr 200px}}/* UI-04: tablet */
@media(max-width:700px){.jpro-ref-grid{grid-template-columns:1fr}}
.jpro-ref-card{padding:18px;background:var(--jpro-card);border:1px solid var(--jpro-border);border-radius:var(--jpro-radius)}
.jpro-ref-card label{display:block;font-weight:700;margin-bottom:10px;font-size:13px}
.jpro-copy-row{display:flex;gap:8px}
.jpro-copy-row input{flex:1;padding:12px;border:1px solid var(--jpro-border);border-radius:10px;background:var(--jpro-soft);font-family:ui-monospace,Menlo,monospace;font-size:13px;min-width:0}
.jpro-share{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.jpro-share-btn{padding:8px 14px;border-radius:99px;font-weight:700;text-decoration:none;color:#fff;font-size:13px}
.jpro-share-btn.wa{background:#25d366}.jpro-share-btn.tg{background:#0088cc}.jpro-share-btn.fb{background:#1877f2}.jpro-share-btn.x{background:#000}
.jpro-ref-qr{display:flex;flex-direction:column;align-items:center}
.jpro-ref-qr img{border-radius:12px}
.jpro-ref-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}
.jpro-ref-stats .jpro-stat{padding:18px;background:var(--jpro-card);border:1px solid var(--jpro-border);border-radius:var(--jpro-radius);text-align:center;display:flex;flex-direction:column;gap:4px}
.jpro-ref-stats .jpro-stat b{font-size:26px;font-weight:900;color:var(--jpro-primary,#10b981)}
.jpro-ref-stats .jpro-stat span{font-size:12px;color:var(--jpro-muted)}

/* VIP */
.jpro-vip-current{display:flex;gap:18px;align-items:center;padding:24px;border-radius:var(--jpro-radius);margin-bottom:20px;background:var(--jpro-card);border:1px solid var(--jpro-border)}
.jpro-vip-current.jpro-tier-bronze{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#78350f}
.jpro-vip-current.jpro-tier-silver{background:linear-gradient(135deg,#e2e8f0,#cbd5e1);color:#1e293b}
.jpro-vip-current.jpro-tier-gold{background:linear-gradient(135deg,#fde68a,#f59e0b);color:#78350f}
.jpro-vip-current.jpro-tier-platinum{background:linear-gradient(135deg,#ddd6fe,#a78bfa);color:#312e81}
.jpro-vip-emoji{font-size:54px;line-height:1}
.jpro-vip-current h3{margin:0 0 4px;font-size:24px;font-weight:900}
.jpro-vip-current p{margin:0 0 8px}
.jpro-vip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.jpro-vip-card{padding:18px;background:var(--jpro-card);border:1px solid var(--jpro-border);border-radius:var(--jpro-radius);transition:transform .2s ease}
.jpro-vip-card.is-active{outline:3px solid var(--jpro-primary,#10b981);outline-offset:-3px;transform:translateY(-2px)}
.jpro-vip-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;padding-bottom:10px;border-bottom:1px dashed var(--jpro-border)}
.jpro-vip-h b{font-size:18px}.jpro-vip-h span{font-size:13px;color:var(--jpro-muted)}
.jpro-vip-card ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;font-size:13px}
.jpro-vip-card li::before{content:'✓';color:var(--jpro-success);font-weight:900;margin-inline-end:6px}

/* Personal Picks */
.jpro-picks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}
.jpro-pick{display:flex;flex-direction:column;background:var(--jpro-card);border:1px solid var(--jpro-border);border-radius:var(--jpro-radius);overflow:hidden;text-decoration:none;color:var(--jpro-fg);transition:transform .18s ease,box-shadow .18s ease}
.jpro-pick:hover{transform:translateY(-3px);box-shadow:var(--jpro-shadow)}
.jpro-pick-img{aspect-ratio:1/1;background:#f1f5f9 center/cover no-repeat}
.jpro-pick-t{padding:10px 12px 4px;font-size:13px;font-weight:700;line-height:1.3}
.jpro-pick-p{padding:0 12px 12px;font-size:13px;color:var(--jpro-primary,#10b981);font-weight:700}

/* Loading spinner for action buttons (BUG-07) */
.jpro-btn{position:relative}
.jpro-btn .jpro-btn-label{display:inline-flex;align-items:center;gap:6px;transition:opacity .2s}
.jpro-spin{display:none;width:16px;height:16px;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:jsvrSpin .7s linear infinite;margin-inline-start:8px;vertical-align:middle;flex-shrink:0}
.jpro-btn.is-loading .jpro-spin{display:inline-block}
.jpro-btn.is-loading .jpro-btn-label{opacity:.8}

/* Toast — BUG-04: consistent position, RTL-safe */
.jpro-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);padding:12px 20px;border-radius:99px;background:#0f172a;color:#fff;font-weight:700;box-shadow:0 12px 32px rgba(0,0,0,.25);opacity:0;transition:opacity .25s,transform .25s;z-index:99999;pointer-events:none;max-width:min(90vw,380px);white-space:nowrap}
@media(max-width:768px){.jpro-toast{bottom:80px;left:12px;right:12px;transform:translateY(20px);border-radius:12px;white-space:normal;text-align:center}}
.jpro-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
@media(max-width:768px){.jpro-toast.show{transform:translateY(0)}}
.jpro-toast.err{background:var(--jpro-danger)}
.jpro-toast.ok{background:var(--jpro-success)}

/* RTL micro-adjustments */
[dir="rtl"] .jpro-copy-row input{text-align:left;direction:ltr}
[dir="rtl"] .jpro-share-btn{font-family:inherit}

/* ═══════════════════════════════════════════════════════════════════════════
   v9.5.0 — Jefna Simple Vendor Registration form (jefna-svr-form)
   Extracted from inline styles into semantic classes for maintainability.
   Visual output preserved 1:1 with previous inline version.
   ═══════════════════════════════════════════════════════════════════════════ */
/* ═══════════════════════════════════════════════════════════════════════════
   v9.6.3 — Jefna Simple Vendor Registration — WORLD-CLASS PREMIUM REDESIGN
   Focus: form fields, submit CTA, and (especially) subscription pack modal.
   Brand tokens: --jefna-primary (#00bf63) / --jefna-secondary (#00a855).
   Pure CSS, GPU-friendly transitions, fully responsive & RTL-aware.
   ═══════════════════════════════════════════════════════════════════════════ */
.jv4-card.jsvr-shell{
  --jsvr-primary: var(--jefna-primary, #00bf63);
  --jsvr-secondary: var(--jefna-secondary, #00a855);
  position:relative;
  overflow:hidden;
  padding:30px !important;
  border:1px solid color-mix(in srgb, var(--jsvr-primary) 22%, #e2e8f0) !important;
  border-radius:24px !important;
  background:
    radial-gradient(900px 260px at 10% -10%, color-mix(in srgb, var(--jsvr-primary) 14%, transparent), transparent 62%),
    linear-gradient(180deg,#ffffff 0%,#fbfdfc 100%) !important;
  box-shadow:0 26px 70px rgba(15,23,42,.10), inset 0 1px 0 rgba(255,255,255,.9) !important;
}
.jv4-card.jsvr-shell::before{
  content:"";position:absolute;inset:0 0 auto;height:6px;
  background:linear-gradient(90deg,var(--jsvr-primary),var(--jsvr-secondary),#ffd66b);
}
.jv4-card.jsvr-shell::after{
  content:"";position:absolute;right:-80px;top:-90px;width:240px;height:240px;
  background:radial-gradient(circle,color-mix(in srgb,var(--jsvr-primary) 18%,transparent),transparent 68%);
  pointer-events:none;
}
.jv4-card.jsvr-shell .jsvr-title{
  position:relative;z-index:1;margin:0 0 24px !important;padding:0 0 18px !important;
  border-bottom:1px solid #e9f3ee !important;color:#07111f !important;
  font-size:20px !important;font-weight:900 !important;letter-spacing:0 !important;
  display:flex !important;align-items:center !important;gap:12px !important;
}
.jv4-card.jsvr-shell .jsvr-title i{
  width:42px;height:42px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;
  color:#fff !important;background:linear-gradient(135deg,var(--jsvr-primary),var(--jsvr-secondary));
  box-shadow:0 12px 24px color-mix(in srgb,var(--jsvr-primary) 32%,transparent);
}
.jefna-svr-form{
  --jsvr-primary: var(--jefna-primary, #00bf63);
  --jsvr-secondary: var(--jefna-secondary, #00a855);
  --jsvr-primary-soft: color-mix(in srgb, var(--jsvr-primary) 10%, #fff);
  --jsvr-primary-ring: color-mix(in srgb, var(--jsvr-primary) 22%, transparent);
  --jsvr-border: #e2e8f0;
  --jsvr-border-strong: #cbd5e1;
  --jsvr-text: #0b1220;
  --jsvr-label: #1e293b;
  --jsvr-muted: #64748b;
  --jsvr-surface: #ffffff;
  --jsvr-radius: 14px;
  --jsvr-radius-lg: 20px;
  --jsvr-shadow-sm: 0 1px 2px rgba(15,23,42,.04);
  --jsvr-shadow-md: 0 8px 24px rgba(15,23,42,.08);
  --jsvr-shadow-lg: 0 24px 60px rgba(15,23,42,.18);
  display:grid; grid-template-columns:1fr 1fr; gap:20px;
}
.jefna-svr-form .jsvr-full{grid-column:span 2}
.jefna-svr-form .jsvr-field{position:relative;display:flex;flex-direction:column;gap:8px;font-size:15px;margin:0;min-width:0}
.jefna-svr-form .jsvr-lbl{font-size:13.5px;font-weight:700;color:var(--jsvr-label);letter-spacing:.02em;text-transform:none}
.jefna-svr-form .jsvr-input-wrap{position:relative;display:block}
.jefna-svr-form .jsvr-input-icon{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:15px;pointer-events:none;transition:color .2s ease,transform .2s ease;z-index:1}
[dir="rtl"] .jefna-svr-form .jsvr-input-icon{left:auto;right:18px}
.jefna-svr-form .jsvr-input-wrap:focus-within .jsvr-input-icon{color:var(--jsvr-primary);transform:translateY(-50%) scale(1.08)}
.jefna-svr-form .jsvr-input{
  width:100%;box-sizing:border-box;min-height:56px;
  padding:15px 18px;
  border:1.5px solid var(--jsvr-border);
  border-radius:var(--jsvr-radius);
  font-size:16px;font-weight:500;color:var(--jsvr-text);
  background:linear-gradient(180deg,#fff,#fafbfc);
  box-shadow:var(--jsvr-shadow-sm), inset 0 1px 0 rgba(255,255,255,.6);
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease,transform .2s ease;
  -webkit-appearance:none;
}
.jefna-svr-form .jsvr-input-wrap > .jsvr-input{padding-left:48px}
[dir="rtl"] .jefna-svr-form .jsvr-input-wrap > .jsvr-input{padding-left:18px;padding-right:48px}
.jefna-svr-form .jsvr-input::placeholder{color:#a3aec2}
.jefna-svr-form .jsvr-input:hover{border-color:var(--jsvr-border-strong);background:#fff}
.jefna-svr-form .jsvr-input:focus{outline:none;background:#fff;border-color:var(--jsvr-primary);box-shadow:0 0 0 4px var(--jsvr-primary-ring), var(--jsvr-shadow-sm)}
.jefna-svr-form select.jsvr-input{appearance:auto;cursor:pointer}
.jefna-svr-form .jsvr-hint{
  grid-column:span 2;margin:4px 0 0;padding:14px 16px;
  background:linear-gradient(135deg, color-mix(in srgb,var(--jsvr-primary) 10%,#fff), color-mix(in srgb,var(--jsvr-primary) 4%,#fff));
  border:1px solid color-mix(in srgb, var(--jsvr-primary) 28%, #fff);
  border-radius:var(--jsvr-radius);color:#064e3b;font-size:13.5px;font-weight:500;
  display:flex;align-items:center;gap:12px;line-height:1.55;
}
.jefna-svr-form .jsvr-hint i{color:var(--jsvr-primary);font-size:17px;flex-shrink:0}

/* Submit CTA */
.jefna-svr-form .jsvr-submit{margin-top:10px}
.jefna-svr-form .jsvr-btn{
  position:relative;overflow:hidden;
  border:none;cursor:pointer;width:100%;min-height:60px;
  justify-content:center;
  background:linear-gradient(135deg,var(--jsvr-primary),var(--jsvr-secondary));
  color:#fff;font-weight:800;font-size:17px;letter-spacing:.01em;
  border-radius:16px;padding:16px 24px;
  box-shadow:0 12px 28px color-mix(in srgb, var(--jsvr-primary) 35%, transparent),
             inset 0 1px 0 rgba(255,255,255,.25);
  transition:transform .2s ease,box-shadow .25s ease,filter .2s ease;
}
.jefna-svr-form .jsvr-btn::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,.28) 50%,transparent 80%);
  transform:translateX(-100%);transition:transform .7s ease;
}
.jefna-svr-form .jsvr-btn:hover{transform:translateY(-2px);box-shadow:0 18px 40px color-mix(in srgb, var(--jsvr-primary) 45%, transparent), inset 0 1px 0 rgba(255,255,255,.3);filter:brightness(1.03)}
.jefna-svr-form .jsvr-btn:hover::before{transform:translateX(100%)}
.jefna-svr-form .jsvr-btn:active{transform:translateY(0)}
.jefna-svr-form .jsvr-btn[disabled]{opacity:.75;cursor:progress;transform:none}
.jefna-svr-form .jsvr-btn .jsvr-btn-label{position:relative;z-index:1;display:inline-flex;align-items:center;gap:10px}
.jefna-svr-form .jsvr-btn .jsvr-btn-label i{font-size:18px}
.jefna-svr-form .jsvr-btn .jsvr-spinner{display:none;width:20px;height:20px;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:jsvrSpin .8s linear infinite;margin-inline-start:12px;position:relative;z-index:1}
.jefna-svr-form .jsvr-btn.is-loading .jsvr-spinner{display:inline-block}
.jefna-svr-form .jsvr-btn.is-loading .jsvr-btn-label{opacity:.85}
@keyframes jsvrSpin{to{transform:rotate(360deg)}}
.jefna-svr-form .jsvr-tos{text-align:center;color:#64748b;font-size:13px;margin:14px 0 0}
.jefna-svr-form .jsvr-pass-meter{display:block;height:6px;background:#e2e8f0;border-radius:99px;overflow:hidden;margin-top:8px}
.jefna-svr-form .jsvr-pass-meter > span{display:block;height:100%;width:0;background:#ef4444;transition:width .2s ease,background .2s ease}
.jefna-svr-form .jsvr-pass-meter > span[data-level="2"]{background:#f59e0b}
.jefna-svr-form .jsvr-pass-meter > span[data-level="3"]{background:#84cc16}
.jefna-svr-form .jsvr-pass-meter > span[data-level="4"]{background:var(--jsvr-primary)}
.jefna-svr-form .jsvr-pass-hint{font-size:13px;color:#475569;font-weight:500;margin-top:8px}

/* v9.6.3 — Strong overrides for WooCommerce account inline CSS printed later in wp_head. */
.jv4-card.jsvr-shell .jefna-svr-form .jsvr-input{
  border:1.5px solid var(--jsvr-border) !important;
  border-radius:var(--jsvr-radius) !important;
  background:linear-gradient(180deg,#fff,#fafbfc) !important;
  box-shadow:var(--jsvr-shadow-sm), inset 0 1px 0 rgba(255,255,255,.6) !important;
}
.jv4-card.jsvr-shell .jefna-svr-form .jsvr-input:focus{
  border-color:var(--jsvr-primary) !important;
  box-shadow:0 0 0 4px var(--jsvr-primary-ring), var(--jsvr-shadow-sm) !important;
}
.jv4-card.jsvr-shell .jefna-svr-form .jsvr-btn,
.jv4-card.jsvr-shell .jefna-svr-form .jv4-btn-cta.blue.jsvr-btn{
  min-height:60px !important;width:100% !important;border:0 !important;
  border-radius:16px !important;padding:16px 24px !important;
  background:linear-gradient(135deg,var(--jsvr-primary),var(--jsvr-secondary)) !important;
  color:#fff !important;font-size:17px !important;font-weight:900 !important;
  box-shadow:0 14px 32px color-mix(in srgb, var(--jsvr-primary) 38%, transparent), inset 0 1px 0 rgba(255,255,255,.25) !important;
}
.jv4-card.jsvr-shell .jefna-svr-form .jsvr-btn:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 20px 42px color-mix(in srgb, var(--jsvr-primary) 46%, transparent), inset 0 1px 0 rgba(255,255,255,.3) !important;
}

/* Alerts */
.jsvr-alerts .woocommerce-error,
.jsvr-alerts .woocommerce-message,
.jsvr-alerts .woocommerce-info{padding:14px 16px 14px 48px;border-radius:14px;font-size:14px;font-weight:600;margin-bottom:14px;list-style:none;position:relative;box-shadow:0 2px 6px rgba(15,23,42,.05)}
.jsvr-alerts .woocommerce-error{background:#fef2f2;border:1.5px solid #fecaca;color:#991b1b}
.jsvr-alerts .woocommerce-error::before{content:"\f06a";font-family:"Font Awesome 6 Free","Font Awesome 5 Free",FontAwesome;font-weight:900;color:#dc2626;font-size:18px;position:absolute;left:16px;top:50%;transform:translateY(-50%)}
.jsvr-alerts .woocommerce-message{background:color-mix(in srgb, var(--jefna-primary,#00bf63) 10%, #fff);border:1.5px solid color-mix(in srgb, var(--jefna-primary,#00bf63) 35%, #fff);color:#065f46}
.jsvr-alerts .woocommerce-message::before{content:"\f058";font-family:"Font Awesome 6 Free","Font Awesome 5 Free",FontAwesome;font-weight:900;color:var(--jefna-primary,#00bf63);font-size:18px;position:absolute;left:16px;top:50%;transform:translateY(-50%)}
.jsvr-alerts .woocommerce-info{background:#eff6ff;border:1.5px solid #bfdbfe;color:#1e40af}
.jsvr-alerts .woocommerce-info::before{content:"\f05a";font-family:"Font Awesome 6 Free","Font Awesome 5 Free",FontAwesome;font-weight:900;color:#2563eb;font-size:18px;position:absolute;left:16px;top:50%;transform:translateY(-50%)}
[dir="rtl"] .jsvr-alerts .woocommerce-error,
[dir="rtl"] .jsvr-alerts .woocommerce-message,
[dir="rtl"] .jsvr-alerts .woocommerce-info{padding:14px 48px 14px 16px}
[dir="rtl"] .jsvr-alerts .woocommerce-error::before,
[dir="rtl"] .jsvr-alerts .woocommerce-message::before,
[dir="rtl"] .jsvr-alerts .woocommerce-info::before{left:auto;right:16px}

@media(max-width:640px){
  .jefna-svr-form{grid-template-columns:1fr;gap:16px}
  .jefna-svr-form .jsvr-full,
  .jefna-svr-form .jsvr-hint{grid-column:span 1}
  .jefna-svr-form .jsvr-input{min-height:52px;font-size:16px}
  .jefna-svr-form .jsvr-btn{min-height:56px;font-size:16px}
}

/* ══════════════════════════════════════════════════════════════════════
   v9.6.2 — Subscription Pack Selector (world-class premium modal)
   ══════════════════════════════════════════════════════════════════════ */
.jsvr-pack-field{display:flex;flex-direction:column;gap:8px}
.jsvr-pack-btn{
  position:relative;display:flex;align-items:center;justify-content:space-between;
  width:100%;text-align:left;cursor:pointer;
  background:linear-gradient(180deg,#fff,#fafbfc);
  border:1.5px solid #e2e8f0;border-radius:14px;
  padding:16px 18px;min-height:60px;font:inherit;font-size:15.5px;font-weight:600;color:#0f172a;
  box-shadow:0 1px 2px rgba(15,23,42,.04);
  transition:border-color .2s ease,box-shadow .2s ease,transform .15s ease,background .2s ease;
}
.jsvr-pack-btn::before{
  content:"\f02c";font-family:"Font Awesome 6 Free","Font Awesome 5 Free",FontAwesome;font-weight:900;
  color:var(--jefna-primary,#00bf63);font-size:16px;margin-inline-end:12px;
  width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;
  background:color-mix(in srgb,var(--jefna-primary,#00bf63) 12%,#fff);
  border-radius:10px;flex-shrink:0;
}
.jsvr-pack-btn-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
[dir="rtl"] .jsvr-pack-btn{text-align:right}
.jsvr-pack-btn:hover{border-color:var(--jefna-primary,#00bf63);background:#fff;transform:translateY(-1px);box-shadow:0 8px 20px color-mix(in srgb,var(--jefna-primary,#00bf63) 15%,rgba(15,23,42,.06))}
.jsvr-pack-btn:focus{outline:none;border-color:var(--jefna-primary,#00bf63);box-shadow:0 0 0 4px color-mix(in srgb, var(--jefna-primary,#00bf63) 20%, transparent)}
.jsvr-pack-btn-arrow{color:var(--jefna-primary,#00bf63);margin-inline-start:12px;font-size:16px;transition:transform .2s ease}
.jsvr-pack-btn:hover .jsvr-pack-btn-arrow{transform:translateY(2px)}

/* Modal shell */
.jsvr-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:20px}
.jsvr-modal[hidden]{display:none}
.jsvr-modal-backdrop{
  position:absolute;inset:0;
  background:radial-gradient(1200px 800px at 20% 10%, rgba(0,191,99,.18), transparent 60%),
             radial-gradient(1000px 700px at 80% 90%, rgba(0,168,85,.16), transparent 55%),
             rgba(8,15,30,.62);
  backdrop-filter:blur(8px) saturate(120%);
  -webkit-backdrop-filter:blur(8px) saturate(120%);
  animation:jsvrFade .25s ease-out;
}
@keyframes jsvrFade{from{opacity:0}to{opacity:1}}
.jsvr-modal-panel{
  position:relative;z-index:1;background:#fff;
  border-radius:24px;width:100%;max-width:960px;max-height:92vh;
  display:flex;flex-direction:column;
  box-shadow:0 40px 100px rgba(8,15,30,.45), 0 0 0 1px rgba(255,255,255,.06);
  animation:jsvrPop .35s cubic-bezier(.22,1,.36,1);
  overflow:hidden;
}
@keyframes jsvrPop{from{transform:translateY(20px) scale(.96);opacity:0}to{transform:none;opacity:1}}

/* Modal header — premium hero */
.jsvr-modal-head{
  position:relative;padding:28px 32px 26px;
  background:
    radial-gradient(600px 200px at 100% 0%, color-mix(in srgb, var(--jefna-primary,#00bf63) 25%, transparent), transparent 70%),
    linear-gradient(135deg, #0f172a 0%, #1e293b 55%, #0b4a2f 100%);
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.08);
  overflow:hidden;
}
.jsvr-modal-head::after{
  content:"";position:absolute;top:-40px;right:-40px;width:220px;height:220px;
  background:radial-gradient(circle, color-mix(in srgb, var(--jefna-primary,#00bf63) 55%, transparent), transparent 65%);
  filter:blur(20px);pointer-events:none;
}
.jsvr-modal-head h4{
  margin:0 44px 8px 0;font-size:22px;font-weight:800;color:#fff;
  display:flex;align-items:center;gap:12px;letter-spacing:.01em;
  position:relative;z-index:1;
}
.jsvr-modal-head h4 i{
  color:#ffd66b !important;font-size:22px;
  filter:drop-shadow(0 2px 6px rgba(255,214,107,.5));
}
[dir="rtl"] .jsvr-modal-head h4{margin:0 0 8px 44px}
.jsvr-modal-sub{
  margin:0;font-size:14px;color:rgba(255,255,255,.78);
  font-weight:500;line-height:1.55;max-width:640px;position:relative;z-index:1;
}
.jsvr-modal-close{
  position:absolute;top:18px;right:18px;z-index:2;
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);
  font-size:22px;line-height:1;color:#fff;cursor:pointer;
  width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;
  padding:0;border-radius:12px;
  transition:background .2s,transform .2s,border-color .2s;
  backdrop-filter:blur(6px);
}
[dir="rtl"] .jsvr-modal-close{right:auto;left:18px}
.jsvr-modal-close:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.35);transform:rotate(90deg) scale(1.05)}
.jsvr-modal-body{padding:28px 32px 32px;overflow-y:auto;-webkit-overflow-scrolling:touch;background:linear-gradient(180deg,#f8fafc 0%,#fff 120px)}

/* Pack grid & cards */
.jsvr-pack-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.jsvr-pack-card{
  position:relative;display:flex;flex-direction:column;gap:12px;
  border:1.5px solid #e5e7eb;border-radius:20px;padding:26px 22px 22px;
  background:#fff;overflow:hidden;
  box-shadow:0 2px 6px rgba(15,23,42,.04);
  transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s ease,border-color .2s ease;
}
.jsvr-pack-card::before{
  content:"";position:absolute;top:0;left:0;right:0;height:5px;
  background:linear-gradient(90deg,var(--jefna-primary,#00bf63),var(--jefna-secondary,#00a855));
  opacity:.85;
}
.jsvr-pack-card::after{
  content:"";position:absolute;top:-60px;right:-60px;width:180px;height:180px;
  background:radial-gradient(circle, color-mix(in srgb, var(--jefna-primary,#00bf63) 18%, transparent), transparent 65%);
  border-radius:50%;pointer-events:none;opacity:0;transition:opacity .3s ease;
}
.jsvr-pack-card:hover{
  transform:translateY(-6px);
  box-shadow:0 22px 45px color-mix(in srgb, var(--jefna-primary,#00bf63) 22%, rgba(15,23,42,.10));
  border-color:color-mix(in srgb, var(--jefna-primary,#00bf63) 45%, #e5e7eb);
}
.jsvr-pack-card:hover::after{opacity:1}
.jsvr-pack-card.is-selected{
  border-color:var(--jefna-primary,#00bf63);
  box-shadow:0 0 0 3px color-mix(in srgb, var(--jefna-primary,#00bf63) 22%, transparent),
             0 18px 40px color-mix(in srgb, var(--jefna-primary,#00bf63) 20%, transparent);
  transform:translateY(-4px);
}
.jsvr-pack-card.is-selected::after{opacity:1}
.jsvr-pack-card.is-selected .jsvr-pack-check{
  content:"\f00c";font-family:"Font Awesome 6 Free","Font Awesome 5 Free",FontAwesome;font-weight:900;
  position:absolute;top:18px;right:18px;
  width:34px;height:34px;border-radius:50%;
  background:linear-gradient(135deg,var(--jefna-primary,#00bf63),var(--jefna-secondary,#00a855));
  color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;
  box-shadow:0 6px 14px color-mix(in srgb, var(--jefna-primary,#00bf63) 45%, transparent);
  z-index:2;
}
.jsvr-pack-card.is-selected::before{height:6px;opacity:1}
/* BUG-07: Removed duplicate ::before checkmark — single source of truth via .jsvr-pack-check element */

.jsvr-pack-badge{
  align-self:flex-start;display:inline-flex;align-items:center;gap:6px;
  padding:6px 12px;border-radius:99px;
  background:linear-gradient(135deg,#f59e0b,#f97316);
  color:#fff;font-size:11.5px;font-weight:800;letter-spacing:.03em;
  text-transform:uppercase;
  box-shadow:0 6px 14px rgba(249,115,22,.35);
  position:relative;z-index:2;
}
.jsvr-pack-card-name{
  position:relative;font-weight:800;color:#0f172a;font-size:19px;line-height:1.35;
  padding-right:44px;z-index:2;
}
[dir="rtl"] .jsvr-pack-card-name{padding-right:0;padding-left:44px}
.jsvr-pack-card-price{
  display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;
  color:var(--jefna-primary,#00bf63);font-weight:800;font-size:32px;line-height:1.1;
  position:relative;z-index:2;
  background:linear-gradient(135deg, var(--jefna-primary,#00bf63), var(--jefna-secondary,#00a855));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.jsvr-pack-card-price .amount{color:inherit;-webkit-text-fill-color:transparent;background:inherit;-webkit-background-clip:text;background-clip:text}
.jsvr-pack-card-price ins{text-decoration:none;color:inherit;background:transparent}
.jsvr-pack-card-price del{color:#94a3b8;font-size:16px;font-weight:600;-webkit-text-fill-color:#94a3b8}
.jsvr-pack-card-price .woocommerce-Price-currencySymbol{font-size:15px;font-weight:700;margin-inline-start:2px}
.jsvr-pack-card-desc{
  color:#475569;font-size:14px;line-height:1.6;position:relative;z-index:2;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.jsvr-pack-choose{
  margin-top:auto;position:relative;z-index:2;
  cursor:pointer;border:none;border-radius:14px;
  background:linear-gradient(135deg,var(--jefna-primary,#00bf63),var(--jefna-secondary,#00a855));
  color:#fff;font-weight:800;padding:14px 18px;min-height:50px;font-size:15px;
  letter-spacing:.01em;
  box-shadow:0 10px 22px color-mix(in srgb, var(--jefna-primary,#00bf63) 30%, transparent),
             inset 0 1px 0 rgba(255,255,255,.25);
  transition:transform .2s ease,box-shadow .25s ease,filter .2s;
  overflow:hidden;
}
.jsvr-pack-choose::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,.28) 50%,transparent 80%);
  transform:translateX(-100%);transition:transform .6s ease;
}
.jsvr-pack-choose:hover{transform:translateY(-2px);filter:brightness(1.06);box-shadow:0 16px 32px color-mix(in srgb, var(--jefna-primary,#00bf63) 40%, transparent), inset 0 1px 0 rgba(255,255,255,.3)}
.jsvr-pack-choose:hover::after{transform:translateX(100%)}
.jsvr-pack-choose:active{transform:translateY(0)}
.jsvr-pack-card.is-selected .jsvr-pack-choose{filter:saturate(1.15)}

/* "Later" card variant */
.jsvr-pack-card-later{background:linear-gradient(180deg,#f8fafc,#fff);border-style:dashed;border-color:#cbd5e1}
.jsvr-pack-card-later::before{background:linear-gradient(90deg,#cbd5e1,#94a3b8)}
.jsvr-pack-card-later::after{background:radial-gradient(circle,rgba(100,116,139,.14),transparent 65%)}
.jsvr-pack-card-later .jsvr-pack-card-name{color:#334155}
.jsvr-pack-card-later .jsvr-pack-choose{
  background:linear-gradient(135deg,#475569,#64748b);
  box-shadow:0 8px 18px rgba(71,85,105,.25);
}
.jsvr-pack-card-later:hover{border-color:#94a3b8;box-shadow:0 18px 36px rgba(71,85,105,.18)}

/* Responsive: tablet */
@media(max-width:900px){
  .jsvr-modal-panel{max-width:720px;border-radius:20px}
  .jsvr-modal-head{padding:24px 26px 22px}
  .jsvr-modal-head h4{font-size:20px}
  .jsvr-modal-body{padding:22px 22px 26px}
  .jsvr-pack-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
}

/* Responsive: phone */
@media(max-width:640px){
  .jsvr-modal{padding:0;align-items:flex-end}
  .jsvr-modal-panel{
    max-height:94vh;border-radius:22px 22px 0 0;
    animation:jsvrSlideUp .32s cubic-bezier(.22,1,.36,1);
  }
  @keyframes jsvrSlideUp{from{transform:translateY(100%);opacity:.6}to{transform:none;opacity:1}}
  .jsvr-modal-panel::before{
    content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%);
    width:44px;height:5px;border-radius:99px;background:rgba(255,255,255,.35);z-index:3;
  }
  .jsvr-modal-head{padding:26px 20px 20px}
  .jsvr-modal-head h4{font-size:18px;margin-right:44px}
  [dir="rtl"] .jsvr-modal-head h4{margin-right:0;margin-left:44px}
  .jsvr-modal-sub{font-size:13.5px}
  .jsvr-modal-close{top:14px;right:14px;width:36px;height:36px}
  [dir="rtl"] .jsvr-modal-close{right:auto;left:14px}
  .jsvr-modal-body{padding:18px 16px 24px}
  .jsvr-pack-grid{grid-template-columns:1fr;gap:14px}
  .jsvr-pack-card{padding:22px 18px 18px;border-radius:18px}
  .jsvr-pack-card-name{font-size:17.5px;padding-right:40px}
  [dir="rtl"] .jsvr-pack-card-name{padding-right:0;padding-left:40px}
  .jsvr-pack-card-price{font-size:28px}
  .jsvr-pack-btn{font-size:14.5px;padding:14px 14px;min-height:56px}
  .jsvr-pack-btn::before{width:32px;height:32px;font-size:14px}
}
