/* =====================================================================
   Jackpotz Account Tweaks v3 - My Account (plugin-rendered, no Elementor)
   Loaded on My Account pages only.
   ===================================================================== */

.jpz-acc-ui{
  --jz-pink:#FF4CD4; --jz-pink-deep:#c7139a; --jz-line:#FFE3F6; --jz-pink-soft:rgba(255,76,212,.08);
  --jz-grad:linear-gradient(95deg,#FF4CD4 0%,#e0179f 100%);
  --jz-green-soft:rgba(180,255,26,.12); --jz-green-deep:#7fbf00; --jz-green-ink:#5c8a00;
  --jz-ink:#1f1b24; --jz-text:#3a3540; --jz-muted:#8f8899; --jz-soft:#faf7fb; --jz-dark:#18151c; --jz-red:#EC5245;
  --jz-r:16px; --jz-shadow:0 4px 14px rgba(255,76,212,.10); --jz-shadow-hi:0 14px 28px rgba(255,76,212,.22);
  --jz-ease:cubic-bezier(.2,.7,.3,1);
}

/* ---------- Page + layout ---------- */
.jpz-account{ max-width:1180px; margin:0 auto; padding:28px 16px 40px; font-family:Helvetica,Arial,sans-serif; color:var(--jz-text); box-sizing:border-box; }
.jpz-account *, .jpz-account *::before, .jpz-account *::after{ box-sizing:border-box; }
.jpz-account .woocommerce{ display:block; }
.jpz-account .woocommerce::before, .jpz-account .woocommerce::after{ display:none; }
.jpz-layout{ display:grid; grid-template-columns:260px minmax(0,1fr); gap:28px; align-items:start; }
.jpz-account .woocommerce-MyAccount-navigation, .jpz-account .woocommerce-MyAccount-content{ float:none !important; width:auto !important; margin:0 !important; }
.jpz-account .woocommerce-MyAccount-content{ min-width:0; }
.jpz-account h2, .jpz-account h3{ color:var(--jz-ink); font-weight:800; letter-spacing:-.01em; }
.jpz-account a{ color:var(--jz-pink-deep); }
.jpz-account .jpz-i{ width:20px; height:20px; display:block; flex-shrink:0; }

/* ---------- Header ---------- */
.jpz-head{
  display:flex; align-items:center; gap:14px; flex-wrap:nowrap; margin:0 0 22px; padding:16px 18px; border-radius:20px;
  background:#fff; border:1px solid var(--jz-line); box-shadow:var(--jz-shadow); animation:jpzUp .45s var(--jz-ease) both;
}
.jpz-head__avatar{ width:48px; height:48px; border-radius:14px; background:var(--jz-grad); color:#fff; display:grid; place-items:center; font-weight:800; font-size:20px; flex-shrink:0; }
.jpz-head__who{ flex:1 1 auto; min-width:0; display:flex; align-items:center; flex-wrap:wrap; gap:4px 10px; }
.jpz-head__hi{ margin:0; font-size:20px; font-weight:800; color:var(--jz-ink); line-height:1.2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%; }
.jpz-tier{ display:inline-flex; align-items:center; gap:5px; margin:0; padding:3px 10px 3px 8px; white-space:nowrap; border-radius:20px; background:var(--jz-pink-soft); color:var(--jz-pink-deep); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.jpz-tier .jpz-i{ width:14px; height:14px; }
.jpz-account a.jpz-head__wallet{
  display:flex; flex-direction:row; align-items:center; gap:8px; flex-shrink:0; padding:9px 14px; border-radius:14px; text-decoration:none; white-space:nowrap;
  background:#eeecf1; border:1px solid #e2dfe7; transition:transform .2s ease, box-shadow .2s ease;
}
.jpz-account a.jpz-head__wallet:hover{ transform:translateY(-2px); box-shadow:0 8px 18px rgba(31,27,36,.12); }
.jpz-head__wallet-label{ font-size:11px; font-weight:800; color:#1f1b24; text-transform:uppercase; letter-spacing:.08em; }
.jpz-head__wallet-amount, .jpz-head__wallet-amount *{ font-size:20px; font-weight:800; color:#000; }

/* ---------- Menu ---------- */
.jpz-nav{ position:sticky; top:20px; background:#fff; border:1px solid var(--jz-line); border-radius:18px; padding:8px; box-shadow:var(--jz-shadow); }
.jpz-nav ul{ list-style:none; margin:0; padding:0; }
.jpz-nav li{ margin:0 0 3px; padding:0; }
.jpz-nav li:last-child{ margin:0; }
.jpz-account .jpz-nav a{
  display:flex; align-items:center; gap:12px; padding:7px 12px 7px 7px; border-radius:12px; text-decoration:none;
  color:var(--jz-ink); font-size:16.5px; font-weight:700; line-height:1.2; transition:background .2s ease, color .2s ease, transform .2s ease;
}
.jpz-nav__ico{ width:34px; height:34px; border-radius:10px; display:grid; place-items:center; background:var(--jz-pink-soft); color:var(--jz-pink); flex-shrink:0; transition:background .2s ease, color .2s ease; }
.jpz-account .jpz-nav a:hover{ background:var(--jz-pink-soft); color:var(--jz-pink-deep); transform:translateX(3px); }
.jpz-account .jpz-nav li.is-active a{ background:var(--jz-grad); color:#fff; box-shadow:0 8px 18px rgba(255,76,212,.28); transform:none; }
.jpz-nav li.is-active .jpz-nav__ico{ background:rgba(255,255,255,.22); color:#fff; }
.jpz-nav li.woocommerce-MyAccount-navigation-link--customer-logout{ margin-top:8px; padding-top:8px; border-top:1px dashed var(--jz-line); }
.jpz-account .jpz-nav li.woocommerce-MyAccount-navigation-link--customer-logout a{ color:var(--jz-muted); }
.jpz-nav li.woocommerce-MyAccount-navigation-link--customer-logout .jpz-nav__ico{ background:#fdeceb; color:var(--jz-red); }
.jpz-account .jpz-nav li.woocommerce-MyAccount-navigation-link--customer-logout a:hover{ background:#fdeceb; color:var(--jz-red); }

/* ---------- Motion ---------- */
@keyframes jpzUp{ from{ opacity:0; transform:translateY(14px); } to{ opacity:1; transform:none; } }
@keyframes jpzFade{ from{ opacity:0; } to{ opacity:1; } }
@keyframes jpzGlow{ 0%,100%{ opacity:0; } 50%{ opacity:1; } }
@keyframes jpzPop{ from{ opacity:0; transform:scale(.7); } to{ opacity:1; transform:none; } }
@keyframes jpzSpin{ to{ transform:rotate(360deg); } }
@keyframes jpzShimmer2{ from{ background-position:150% 0; } to{ background-position:-50% 0; } }
.jpz-reveal{ animation:jpzUp .5s var(--jz-ease) both; animation-delay:calc(var(--i,0) * 50ms); }
.jpz-account .woocommerce-MyAccount-content > *{ animation:jpzFade .35s ease-out both; }

/* ---------- Cards ---------- */
.jz-tix-card, .jpz-order{ position:relative; background:#fff; border:1px solid var(--jz-line); border-radius:var(--jz-r); box-shadow:var(--jz-shadow); transition:transform .3s ease, box-shadow .3s ease; }
.jz-tix-card::after, .jpz-order::after{ content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; box-shadow:0 8px 20px rgba(180,255,26,.22); opacity:0; animation:jpzGlow 5s ease-in-out infinite; }
.jz-tix-card:hover, .jpz-order:hover{ transform:translateY(-5px); box-shadow:var(--jz-shadow-hi); }

/* ---------- Tickets ---------- */
.jz-tix-tabs{ display:flex; gap:10px; margin:0 0 22px; border-bottom:2px solid var(--jz-line); }
.jpz-account .jz-tix-tabs a, .jz-tix-tabs span{ display:inline-block; padding:12px 20px; font-weight:800; font-size:15px; text-transform:uppercase; text-decoration:none; color:var(--jz-muted); border-bottom:3px solid transparent; margin-bottom:-2px; transition:color .2s ease; }
.jpz-account .jz-tix-tabs .jz-tix-active, .jpz-account .jz-tix-tabs a:hover{ color:var(--jz-pink); }
.jz-tix-tabs .jz-tix-active{ border-bottom-color:var(--jz-pink); }
.jz-tix-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:16px; }
.jz-tix-top{ display:flex; gap:12px; padding:14px; align-items:center; }
.jz-tix-top img{ width:64px; height:64px; object-fit:cover; border-radius:10px; flex-shrink:0; }
.jz-tix-name{ margin:0; }
.jpz-account .jz-tix-name a{ font-weight:800; font-size:15px; color:var(--jz-ink); text-decoration:none; line-height:1.3; }
.jpz-account .jz-tix-name a:hover{ color:var(--jz-pink); }
.jz-tix-meta{ display:flex; flex-wrap:wrap; gap:8px; padding:0 14px 12px; }
.jz-tix-pill{ display:inline-flex; align-items:center; gap:5px; font-size:11.5px; font-weight:700; padding:5px 10px; border-radius:20px; white-space:nowrap; max-width:100%; overflow:hidden; text-overflow:ellipsis; }
.jz-tix-pill-date{ background:var(--jz-green-soft); color:var(--jz-green-ink); border:1px solid var(--jz-green-deep); }
.jz-tix-pill-count{ background:var(--jz-pink-soft); color:var(--jz-pink-deep); border:1px solid var(--jz-pink); }
.jz-tix-numbers{ padding:0 14px 16px; display:flex; flex-wrap:wrap; gap:6px; }
.jz-tix-num{ font-size:12px; font-weight:700; background:var(--jz-dark); color:#fff; padding:4px 9px; border-radius:6px; border:1px solid var(--jz-pink); }
.jz-tix-num.jpz-pop{ animation:jpzPop .25s var(--jz-ease) both; }
.jz-tix-num.jpz-skel{ background:linear-gradient(100deg,#2a2530 30%,#3d3545 50%,#2a2530 70%) 0 0/200% 100%; color:transparent; min-width:34px; animation:jpzShimmer2 1s linear infinite; }
.jpz-account button.jz-tix-more-plain{ display:inline-flex; align-items:center; gap:6px; font:800 12px/1.2 Helvetica,Arial,sans-serif; color:var(--jz-pink); padding:4px 9px; border-radius:6px; border:1px dashed var(--jz-pink); background:none; cursor:pointer; -webkit-appearance:none; appearance:none; transition:background .2s ease, color .2s ease; }
.jpz-account button.jz-tix-more-plain:hover{ background:var(--jz-pink); color:#fff; }
.jpz-account button.jz-tix-more-plain[data-loading="1"]{ opacity:.7; background:none; color:var(--jz-pink); }

/* ---------- Empty states + pagination ---------- */
.jz-tix-empty{ padding:32px 20px; text-align:center; background:var(--jz-soft); border:1px dashed var(--jz-line); border-radius:var(--jz-r); font-size:15px; animation:jpzUp .5s var(--jz-ease) both; }
.jz-tix-empty p{ margin:6px 0 14px; font-weight:700; }
.jz-tix-empty__icon{ font-size:34px; display:block; }
.jz-tix-pagination{ display:flex; gap:10px; justify-content:center; align-items:center; margin-top:24px; }
.jpz-account .jz-tix-pagination a{ display:inline-flex; padding:10px 20px; border-radius:10px; font-weight:800; font-size:14px; text-decoration:none; border:2px solid var(--jz-pink); color:var(--jz-pink); background:#fff; transition:background .2s ease, color .2s ease, border-color .2s ease; }
.jpz-account .jz-tix-pagination a:hover{ background:var(--jz-grad); border-color:transparent; color:#fff; }
.jpz-page-count{ font-size:13px; font-weight:700; color:var(--jz-muted); }

/* ---------- Buttons ---------- */
.jpz-account .woocommerce-MyAccount-content .button,
.jpz-account .woocommerce-MyAccount-content button[type="submit"],
.jpz-account .woocommerce-MyAccount-content input[type="submit"],
.jpz-account a.jpz-btn,
.jpz-account .woocommerce-form-login button.button,
.jpz-account .woocommerce-form-register button.button,
.jpz-account .woocommerce-ResetPassword button.button{
  display:inline-flex !important; align-items:center; justify-content:center; gap:6px; padding:11px 20px !important; border-radius:10px !important;
  font:800 13px/1.2 Helvetica,Arial,sans-serif !important; text-transform:uppercase; letter-spacing:.03em; text-decoration:none !important; cursor:pointer;
  border:2px solid var(--jz-pink) !important; background:#fff !important; color:var(--jz-pink) !important; box-shadow:none !important; margin:0 0 6px;
  transition:transform .2s ease, background .2s ease, color .2s ease, box-shadow .2s ease;
}
.jpz-account .woocommerce-MyAccount-content .button:hover,
.jpz-account a.jpz-btn:hover{ background:var(--jz-grad) !important; border-color:transparent !important; color:#fff !important; transform:translateY(-2px); }
/* Primary: pink gradient */
.jpz-account .woocommerce-MyAccount-content form button[type="submit"],
.jpz-account .woocommerce-MyAccount-content form .button[type="submit"],
.jpz-account .woocommerce-MyAccount-content input[type="submit"],
.jpz-account a.jpz-btn--primary, .jpz-account a.jpz-btn--pay, .jpz-account a.jpz-btn--view,
.jpz-account .woocommerce-form-login button.button, .jpz-account .woocommerce-form-register button.button, .jpz-account .woocommerce-ResetPassword button.button{
  background:var(--jz-grad) !important; border-color:transparent !important; color:#fff !important;
}
.jpz-account .woocommerce-MyAccount-content form button[type="submit"]:hover,
.jpz-account .woocommerce-MyAccount-content input[type="submit"]:hover,
.jpz-account a.jpz-btn--primary:hover, .jpz-account a.jpz-btn--pay:hover, .jpz-account a.jpz-btn--view:hover,
.jpz-account .woocommerce-form-login button.button:hover, .jpz-account .woocommerce-form-register button.button:hover, .jpz-account .woocommerce-ResetPassword button.button:hover{
  color:#fff !important; transform:translateY(-2px); box-shadow:0 8px 18px rgba(255,76,212,.35) !important;
}
.jpz-account a.jpz-btn--cancel, .jpz-account .woocommerce-MyAccount-content .button.cancel{ border-color:#e9dfe9 !important; color:var(--jz-muted) !important; }
.jpz-account a.jpz-btn--cancel:hover, .jpz-account .woocommerce-MyAccount-content .button.cancel:hover{ background:var(--jz-red) !important; border-color:var(--jz-red) !important; color:#fff !important; }
.jpz-spin{ width:13px; height:13px; border-radius:50%; border:2px solid currentColor; border-right-color:transparent; display:inline-block; animation:jpzSpin .7s linear infinite; }
.jpz-account .jpz-btn-loading{ position:relative; color:transparent !important; pointer-events:none; }
.jpz-account .jpz-btn-loading::after{ content:""; position:absolute; left:50%; top:50%; width:16px; height:16px; margin:-8px 0 0 -8px; border-radius:50%; border:2px solid #fff; border-right-color:transparent; animation:jpzSpin .7s linear infinite; }

/* ---------- Dashboard ---------- */
.jpz-dash__section{ margin:0 0 24px; }
.jpz-account .jpz-dash__title{ font-size:13px; text-transform:uppercase; letter-spacing:.08em; color:var(--jz-muted); margin:0 0 12px; }
.jpz-tiles{ display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:12px; }
.jpz-account a.jpz-tile{
  display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding:16px; border-radius:var(--jz-r); text-decoration:none;
  background:#fff; border:1px solid var(--jz-line); box-shadow:var(--jz-shadow); color:var(--jz-ink); transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.jpz-account a.jpz-tile:hover{ transform:translateY(-4px); box-shadow:var(--jz-shadow-hi); border-color:var(--jz-pink); }
.jpz-tile__ico{ width:42px; height:42px; border-radius:12px; display:grid; place-items:center; background:var(--jz-grad); color:#fff; }
.jpz-tile__label{ font-weight:800; font-size:15.5px; line-height:1.25; }
.jpz-help{ display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:10px; }
.jpz-account a.jpz-help__link{
  display:flex; align-items:center; gap:10px; padding:12px 14px; border-radius:12px; text-decoration:none; font-weight:800; font-size:14px;
  color:var(--jz-ink); background:var(--jz-soft); border:1px solid var(--jz-line); transition:background .2s ease, color .2s ease, transform .2s ease;
}
.jpz-account a.jpz-help__link .jpz-i{ color:var(--jz-pink); }
.jpz-account a.jpz-help__link:hover{ background:var(--jz-grad); color:#fff; transform:translateY(-2px); }
.jpz-account a.jpz-help__link:hover .jpz-i{ color:#fff; }
.jpz-account a.jpz-cta{
  display:flex; align-items:center; gap:14px; padding:16px 18px; margin:0 0 24px; border-radius:var(--jz-r); text-decoration:none;
  background:var(--jz-dark); color:#fff; border:1px solid var(--jz-pink); box-shadow:0 10px 24px rgba(255,76,212,.18); transition:transform .25s ease;
}
.jpz-account a.jpz-cta:hover{ transform:translateY(-3px); }
.jpz-cta__ico{ width:42px; height:42px; border-radius:12px; display:grid; place-items:center; background:var(--jz-grad); flex-shrink:0; }
.jpz-cta__text{ flex:1; display:flex; flex-direction:column; gap:2px; }
.jpz-cta__text strong{ font-size:15px; }
.jpz-cta__text span{ font-size:13px; color:rgba(255,255,255,.7); }
.jpz-account .jpz-cta__arrow{ color:var(--jz-pink); }
.jpz-vip{ padding:18px 20px; border-radius:var(--jz-r); background:linear-gradient(135deg,#fff 0%,#fff3fb 100%); border:1px solid var(--jz-pink); box-shadow:var(--jz-shadow); }
.jpz-vip p{ margin:0 0 10px; font-size:14px; line-height:1.55; }
.jpz-vip__title{ display:flex; align-items:center; gap:8px; font-size:16px !important; color:var(--jz-ink); }
.jpz-vip__title .jpz-i{ color:var(--jz-pink); }
.jpz-vip__list{ margin:0; padding:0; list-style:none; display:grid; gap:6px; }
.jpz-vip__list li{ position:relative; padding-left:22px; font-size:14px; }
.jpz-vip__list li::before{ content:"\2665"; position:absolute; left:0; color:var(--jz-pink); }

/* ---------- Orders ---------- */
.jpz-orders{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:16px; }
.jpz-order{ display:flex; flex-direction:column; padding:14px 0 0; }
.jpz-order__head{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:0 14px 8px; }
.jpz-account a.jpz-order__num{ font-size:17px; font-weight:800; color:var(--jz-ink); text-decoration:none; }
.jpz-account a.jpz-order__num:hover{ color:var(--jz-pink); }
.jpz-order__items{ margin:0 14px 10px; font-size:13.5px; font-weight:600; line-height:1.35; }
.jpz-order__items span{ color:var(--jz-muted); font-weight:700; }
.jpz-order__foot{ margin-top:auto; display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; padding:12px 14px 14px; border-top:1px dashed var(--jz-line); }
.jpz-order__total{ font-size:18px; font-weight:800; color:var(--jz-ink); }
.jpz-order__actions{ display:flex; gap:8px; flex-wrap:wrap; }
.jpz-account .jpz-order__actions .button{ padding:8px 14px !important; font-size:12px !important; margin:0 !important; }
.jpz-status{ display:inline-flex; align-items:center; gap:6px; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; padding:5px 10px; border-radius:20px; background:#f4f2f7; color:var(--jz-muted); white-space:nowrap; }
.jpz-status::before{ content:""; width:7px; height:7px; border-radius:50%; background:currentColor; }
.jpz-status--completed{ background:var(--jz-green-soft); color:var(--jz-green-ink); }
.jpz-status--processing, .jpz-status--active{ background:var(--jz-pink-soft); color:var(--jz-pink-deep); }
.jpz-status--on-hold, .jpz-status--pending, .jpz-status--pending-cancel{ background:#fff5e0; color:#a86b00; }
.jpz-status--failed, .jpz-status--cancelled, .jpz-status--refunded, .jpz-status--expired{ background:#fdeceb; color:#c0392b; }

/* ---------- Tables (subscriptions, view order, wallet, payment methods) ---------- */
.jpz-acc .jpz-account .woocommerce-MyAccount-content table{
  width:100%; border:1px solid var(--jz-line) !important; border-radius:var(--jz-r) !important; border-collapse:separate !important; border-spacing:0 !important;
  overflow:hidden; background:#fff; box-shadow:var(--jz-shadow); margin:0 0 22px !important;
}
.jpz-acc .jpz-account .woocommerce-MyAccount-content table thead th{ background:var(--jz-soft) !important; color:var(--jz-muted) !important; font-size:11.5px !important; font-weight:800 !important; text-transform:uppercase; letter-spacing:.05em; padding:12px 14px !important; border:0 !important; border-bottom:1px solid var(--jz-line) !important; text-align:left; }
.jpz-acc .jpz-account .woocommerce-MyAccount-content table td,
.jpz-acc .jpz-account .woocommerce-MyAccount-content table tbody th,
.jpz-acc .jpz-account .woocommerce-MyAccount-content table tfoot th{ padding:12px 14px !important; border:0 !important; border-top:1px solid var(--jz-line) !important; font-size:14px; vertical-align:middle; background:#fff !important; text-align:left; }
.jpz-acc .jpz-account .woocommerce-MyAccount-content table tbody tr:first-child td,
.jpz-acc .jpz-account .woocommerce-MyAccount-content table tbody tr:first-child th{ border-top:0 !important; }
.jpz-acc .jpz-account .woocommerce-MyAccount-content table tfoot th{ color:var(--jz-ink); background:var(--jz-soft) !important; }
.jpz-acc .jpz-account .woocommerce-MyAccount-content table a:not(.button){ color:var(--jz-ink); font-weight:800; text-decoration:none; }
.jpz-acc .jpz-account .woocommerce-MyAccount-content table a:not(.button):hover{ color:var(--jz-pink); }
.jpz-acc .jpz-account .woocommerce-MyAccount-content table .button{ padding:7px 12px !important; font-size:11.5px !important; margin:2px 4px 2px 0 !important; }
@media (max-width:768px){
  .jpz-acc .jpz-account .woocommerce-MyAccount-content table.shop_table_responsive{ border:0 !important; box-shadow:none; background:none; overflow:visible; }
  .jpz-acc .jpz-account .woocommerce-MyAccount-content table.shop_table_responsive thead{ display:none; }
  .jpz-acc .jpz-account .woocommerce-MyAccount-content table.shop_table_responsive tbody tr{ display:block; background:#fff; border:1px solid var(--jz-line); border-radius:14px; box-shadow:var(--jz-shadow); margin:0 0 12px; padding:4px 14px; }
  .jpz-acc .jpz-account .woocommerce-MyAccount-content table.shop_table_responsive tbody td,
  .jpz-acc .jpz-account .woocommerce-MyAccount-content table.shop_table_responsive tbody th{ display:flex !important; justify-content:space-between; align-items:center; gap:12px; text-align:right !important; padding:10px 0 !important; border-top:1px dashed var(--jz-line) !important; background:none !important; }
  .jpz-acc .jpz-account .woocommerce-MyAccount-content table.shop_table_responsive tbody td:first-child{ border-top:0 !important; }
  .jpz-acc .jpz-account .woocommerce-MyAccount-content table.shop_table_responsive tbody td::before{ content:attr(data-title); display:block; float:none; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; color:var(--jz-muted); text-align:left; }
  .jpz-acc .jpz-account .woocommerce-MyAccount-content table.shop_table_responsive tbody td:not([data-title])::before{ content:none; }
}

/* ---------- Panels + forms ---------- */
.jpz-acc .jpz-account .woocommerce-EditAccountForm,
.jpz-acc .jpz-account .woocommerce-address-fields,
.jpz-acc .jpz-account form#add_payment_method,
.jpz-acc .jpz-account div[limit-wraper],
.jpz-acc .jpz-account .lock-wraper,
.jpz-acc .jpz-account .woocommerce-Address,
.jpz-acc .jpz-account .woocommerce-customer-details address,
.jpz-account .woocommerce-form-login,
.jpz-account .woocommerce-form-register,
.jpz-account .woocommerce-ResetPassword,
.jpz-account .jpz-del{
  background:#fff; border:1px solid var(--jz-line) !important; border-radius:var(--jz-r) !important; box-shadow:var(--jz-shadow);
  padding:20px !important; margin:0 0 20px !important; animation:jpzUp .5s var(--jz-ease) both;
}
.jpz-account fieldset{ border:1px dashed var(--jz-line); border-radius:12px; padding:14px 16px 4px; margin:18px 0; }
.jpz-account legend{ font-weight:800; color:var(--jz-ink); padding:0 6px; font-size:15px; }
.jpz-account label{ font-weight:700; font-size:13px; color:var(--jz-text); }
.jpz-account input.input-text, .jpz-account input[type="text"], .jpz-account input[type="email"], .jpz-account input[type="tel"],
.jpz-account input[type="number"], .jpz-account input[type="password"], .jpz-account input[type="search"], .jpz-account input[type="date"],
.jpz-account select, .jpz-account textarea{
  width:100%; border:1.5px solid var(--jz-line) !important; border-radius:10px !important; background:#fff !important; color:var(--jz-ink) !important;
  padding:11px 14px !important; font-size:15px !important; font-family:Helvetica,Arial,sans-serif !important; box-shadow:none !important; transition:border-color .2s ease, box-shadow .2s ease;
}
.jpz-account input:focus, .jpz-account select:focus, .jpz-account textarea:focus{ outline:none !important; border-color:var(--jz-pink) !important; box-shadow:0 0 0 4px rgba(255,76,212,.15) !important; }
.jpz-account input[type="radio"], .jpz-account input[type="checkbox"], .jpz-account input[type="range"]{ accent-color:var(--jz-pink); width:auto; }
.jpz-account input[type="range"]{ width:100%; max-width:420px; }
.jpz-account .form-row{ margin:0 0 14px; }
.jpz-acc .jpz-account div[limit-wraper] h3, .jpz-acc .jpz-account .lock-wraper h3{ margin-top:0; font-size:18px; }

/* Addresses */
.jpz-acc .jpz-account .woocommerce-Addresses{ display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:16px; }
.jpz-acc .jpz-account .woocommerce-Addresses::before, .jpz-acc .jpz-account .woocommerce-Addresses::after{ display:none; }
.jpz-acc .jpz-account .woocommerce-Addresses .woocommerce-Address{ width:auto !important; float:none !important; margin:0 !important; }
.jpz-acc .jpz-account .woocommerce-Address-title{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; margin:0 0 12px; }
.jpz-acc .jpz-account .woocommerce-Address-title::before, .jpz-acc .jpz-account .woocommerce-Address-title::after{ display:none; }
.jpz-acc .jpz-account .woocommerce-Address-title h2, .jpz-acc .jpz-account .woocommerce-Address-title h3{ float:none; margin:0; font-size:17px; }
.jpz-acc .jpz-account .woocommerce-Address-title a.edit{ float:none; font-size:12px; font-weight:800; text-transform:uppercase; padding:6px 12px; border-radius:20px; border:1.5px solid var(--jz-pink); color:var(--jz-pink); text-decoration:none; white-space:nowrap; transition:background .2s ease, color .2s ease; }
.jpz-acc .jpz-account .woocommerce-Address-title a.edit:hover{ background:var(--jz-grad); border-color:transparent; color:#fff; }
.jpz-acc .jpz-account .woocommerce-Address address{ font-style:normal; line-height:1.6; padding:0; border:0; margin:0; }

/* View order */
.jpz-acc .jpz-account mark{ background:var(--jz-pink-soft); color:var(--jz-pink-deep); padding:2px 8px; border-radius:6px; font-weight:800; }
.jpz-acc .jpz-account .woocommerce-customer-details .woocommerce-columns{ display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:16px; }
.jpz-acc .jpz-account .woocommerce-customer-details .woocommerce-column{ width:auto !important; float:none !important; }
.jpz-acc .jpz-account .woocommerce-customer-details address{ font-style:normal; line-height:1.6; }
.jpz-acc .jpz-account ul.wc-item-meta{ list-style:none; margin:6px 0 0; padding:0; font-size:12.5px; }
.jpz-acc .jpz-account ol.commentlist.notes{ list-style:none; padding:0; }
.jpz-acc .jpz-account ol.commentlist.notes li{ background:var(--jz-soft); border-radius:12px; padding:12px 14px; margin-bottom:10px; }

/* Notices */
.jpz-account .woocommerce-info, .jpz-account .woocommerce-message, .jpz-account .woocommerce-error{
  background:var(--jz-soft) !important; border:1px solid var(--jz-line) !important; border-left:4px solid var(--jz-pink) !important; border-radius:12px !important;
  color:var(--jz-text) !important; padding:14px 16px !important; margin:0 0 18px !important; font-weight:600; list-style:none; box-shadow:none !important;
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; animation:jpzUp .4s var(--jz-ease) both;
}
.jpz-account .woocommerce-message{ border-left-color:var(--jz-green-deep) !important; }
.jpz-account .woocommerce-error{ border-left-color:var(--jz-red) !important; flex-direction:column; align-items:flex-start; }
.jpz-account .woocommerce-info::before, .jpz-account .woocommerce-message::before, .jpz-account .woocommerce-error::before{ display:none; }
.jpz-account .woocommerce-info .button, .jpz-account .woocommerce-message .button{ margin:0 !important; order:2; }

/* Wallet (TeraWallet) */
.jpz-account .woo-wallet-my-wallet-container{ border:0 !important; background:none !important; }
.jpz-account .woo-wallet-top-section{ display:flex; flex-wrap:wrap; gap:14px; align-items:stretch; margin-bottom:18px; }
.jpz-account .woo-wallet-balance-card{ flex:1 1 240px; border-radius:var(--jz-r) !important; padding:20px 22px !important; background:linear-gradient(135deg,#18151c 0%,#2a1f2e 100%) !important; border:1px solid var(--jz-pink) !important; color:#fff !important; box-shadow:0 10px 26px rgba(255,76,212,.22) !important; }
.jpz-account .woo-wallet-balance-card h3{ color:rgba(255,255,255,.7) !important; font-size:12px !important; text-transform:uppercase; letter-spacing:.08em; margin:0 0 6px !important; }
.jpz-account .woo-wallet-balance-card .woo-wallet-price, .jpz-account .woo-wallet-balance-card .woo-wallet-price *{ color:#fff !important; font-size:32px !important; font-weight:800 !important; margin:0 !important; }
.jpz-account .woo-wallet-nav-tabs{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.jpz-account a.woo-wallet-nav-tab{ display:inline-flex !important; align-items:center; gap:6px; padding:10px 16px !important; border-radius:20px !important; border:1.5px solid var(--jz-pink) !important; background:#fff !important; color:var(--jz-pink) !important; font-weight:800 !important; font-size:13px !important; text-decoration:none !important; transition:background .2s ease, color .2s ease; }
.jpz-account a.woo-wallet-nav-tab:hover, .jpz-account .woo-wallet-nav-item-wrapper.active a.woo-wallet-nav-tab{ background:var(--jz-grad) !important; border-color:transparent !important; color:#fff !important; }
.jpz-account .woo-wallet-stats-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:14px; margin-bottom:18px; }
.jpz-account .woo-wallet-stat-card{ background:#fff !important; border:1px solid var(--jz-line) !important; border-radius:var(--jz-r) !important; box-shadow:var(--jz-shadow) !important; padding:16px !important; }
.jpz-account .woo-wallet-stat-card__value{ font-weight:800; font-size:20px; color:var(--jz-ink); }
.jpz-account .woo-wallet-stat-card__label{ color:var(--jz-muted); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.jpz-account .woo-wallet-content-area{ background:none !important; border:0 !important; padding:0 !important; }

/* Login / register (logged out) */
.jpz-account .u-columns.col2-set{ display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:20px; }
.jpz-account .u-columns.col2-set::before, .jpz-account .u-columns.col2-set::after{ display:none; }
.jpz-account .u-columns .u-column1, .jpz-account .u-columns .u-column2{ width:auto !important; float:none !important; }
.jpz-account .woocommerce-form-login__rememberme{ display:inline-flex; align-items:center; gap:8px; margin-right:12px; }
.jpz-account .lost_password a{ font-weight:700; }

/* ---------- My Instant Wins (Instant Wins plugin markup, neon green restyle) ---------- */
.jpz-account .my-instant-wins-wrapper{ background:none !important; padding:0 !important; box-shadow:none !important; border:0 !important; }
.jpz-account .wlmiw-filters-wrapper{ margin:0 0 16px !important; }
.jpz-account .wlmiw-filters-form{ display:flex !important; flex-direction:column !important; align-items:stretch !important; gap:12px !important; }
.jpz-account .wlmiw-categories{ display:flex !important; gap:8px !important; overflow-x:auto; padding:4px 2px 8px; margin:0 -2px; width:auto !important; scrollbar-width:none; -webkit-overflow-scrolling:touch; scroll-snap-type:x proximity; }
.jpz-account .wlmiw-categories::-webkit-scrollbar{ display:none; }
.jpz-account .my-instant-wins-wrapper button.wlmiw-category-btn,
.jpz-account .my-instant-wins-wrapper button.wlmiw-search-toggle{
  flex:0 0 auto; width:auto !important; display:inline-flex !important; align-items:center; gap:7px; height:40px; padding:0 16px !important;
  border-radius:999px !important; border:1.5px solid #e4f3c4 !important; background:#fff !important; color:var(--jz-ink) !important; -webkit-text-fill-color:currentColor;
  font:700 14px/1 Helvetica,Arial,sans-serif !important; box-shadow:0 2px 8px rgba(18,33,10,.06) !important; animation:none !important; transform:none !important;
  scroll-snap-align:start; cursor:pointer; transition:background .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.jpz-account .my-instant-wins-wrapper button.wlmiw-category-btn:hover,
.jpz-account .my-instant-wins-wrapper button.wlmiw-search-toggle:hover{ background:rgba(180,255,26,.14) !important; border-color:#B4FF1A !important; color:var(--jz-ink) !important; }
.jpz-account .my-instant-wins-wrapper button.wlmiw-category-btn.active{
  background:linear-gradient(95deg,#B4FF1A 0%,#8fdc00 100%) !important; border-color:transparent !important; color:#12210a !important;
  box-shadow:0 0 0 1px rgba(180,255,26,.6), 0 6px 18px rgba(180,255,26,.45) !important;
}
.jpz-account .wlmiw-category-icon{ width:18px !important; height:18px !important; margin:0 !important; }
.jpz-account .my-instant-wins-wrapper button.wlmiw-search-toggle{ align-self:flex-start; border-style:dashed !important; }
.jpz-account .wlmiw-search-container{ width:100%; }
.jpz-account .wlmiw-search-input-wrapper{ gap:8px; }
.jpz-account .my-instant-wins-wrapper input.wlmiw-search-input{ height:44px !important; border-radius:999px !important; border:1.5px solid #e4f3c4 !important; background:#fff !important; padding:0 16px !important; }
.jpz-account .my-instant-wins-wrapper input.wlmiw-search-input:focus{ border-color:#7fbf00 !important; box-shadow:0 0 0 4px rgba(180,255,26,.25) !important; }
.jpz-account .my-instant-wins-wrapper button.wlmiw-search-submit{ height:44px !important; padding:0 20px !important; border-radius:999px !important; border:0 !important; background:linear-gradient(95deg,#B4FF1A 0%,#7fbf00 100%) !important; color:#12210a !important; font:800 14px Helvetica,Arial,sans-serif !important; cursor:pointer; }
.jpz-account .my-instant-wins-wrapper button.wlmiw-search-close{ width:44px; height:44px !important; padding:0 !important; border-radius:50% !important; border:0 !important; background:#f4f2f7 !important; color:var(--jz-muted) !important; font-size:22px !important; flex-shrink:0; cursor:pointer; }

/* Wins list: each row a card with a neon edge */
.jpz-account table.my-instant-wins{ width:100%; border:0 !important; border-collapse:separate !important; border-spacing:0 10px !important; background:none !important; box-shadow:none !important; margin:-10px 0 0 !important; border-radius:0 !important; overflow:visible !important; }
.jpz-account table.my-instant-wins thead th{ padding:10px 16px 0 !important; border:0 !important; background:none !important; text-align:left; }
.jpz-account table.my-instant-wins thead th:last-child{ text-align:right; }
.jpz-account table.my-instant-wins thead h3{ margin:0 !important; font-size:11.5px !important; font-weight:800 !important; text-transform:uppercase; letter-spacing:.08em; color:var(--jz-muted) !important; }
.jpz-account table.my-instant-wins tr.woocommerce-orders-table__row{ animation:jpzUp .45s var(--jz-ease) both; transition:transform .25s ease; }
.jpz-account table.my-instant-wins tr.woocommerce-orders-table__row:nth-child(2){ animation-delay:40ms; }
.jpz-account table.my-instant-wins tr.woocommerce-orders-table__row:nth-child(3){ animation-delay:80ms; }
.jpz-account table.my-instant-wins tr.woocommerce-orders-table__row:nth-child(4){ animation-delay:120ms; }
.jpz-account table.my-instant-wins tr.woocommerce-orders-table__row:nth-child(n+5){ animation-delay:160ms; }
.jpz-account table.my-instant-wins tr.woocommerce-orders-table__row:hover{ transform:translateY(-2px); }
.jpz-account table.my-instant-wins td{
  background:#fff !important; padding:14px 16px !important; vertical-align:middle; border:0 !important;
  border-top:1px solid #eef7dc !important; border-bottom:1px solid #eef7dc !important; box-shadow:0 3px 10px rgba(18,33,10,.04); transition:background .2s ease;
}
.jpz-account table.my-instant-wins td:first-child{ border-left:4px solid #B4FF1A !important; border-radius:14px 0 0 14px; }
.jpz-account table.my-instant-wins td:last-child{ border-right:1px solid #eef7dc !important; border-radius:0 14px 14px 0; text-align:right; white-space:nowrap; }
.jpz-account table.my-instant-wins tr:hover td{ background:#fbfff3 !important; }
.jpz-account table.my-instant-wins td.woocommerce-orders-table__cell_prize a{ display:block; color:var(--jz-muted); font-size:12.5px; line-height:1.75; text-decoration:none; }
.jpz-account table.my-instant-wins td.woocommerce-orders-table__cell_prize a::first-line{ font-size:16px; font-weight:800; color:var(--jz-ink); }
.jpz-account table.my-instant-wins td.woocommerce-orders-table__cell_prize a:hover::first-line{ color:#4f7a00; }
.jpz-account .instant-win-timestamp{ font-size:12px; font-weight:600; color:var(--jz-muted); }
.jpz-account .instant-win-ticketnumber{ display:inline-block; background:var(--jz-dark); color:#fff; border:1px solid #B4FF1A; border-radius:6px; padding:1px 8px; font-size:11.5px; font-weight:700; line-height:1.6; }
.jpz-account .instant-win-competition{ display:inline-block; background:rgba(180,255,26,.16); color:#3d5c00; border-radius:20px; padding:1px 10px; font-size:11.5px; font-weight:700; line-height:1.6; }
.jpz-account table.my-instant-wins td.woocommerce-orders-table__cell_value .amount{ display:inline-block; padding:6px 12px; border-radius:999px; background:rgba(180,255,26,.2); color:#2f4a00; font-size:16px; font-weight:800; }
.jpz-account table.my-instant-wins td .button{
  display:inline-flex !important; align-items:center; justify-content:center; padding:9px 16px !important; margin:0 !important; border:0 !important; border-radius:999px !important;
  background:linear-gradient(95deg,#B4FF1A 0%,#7fbf00 100%) !important; color:#12210a !important; font:800 12px/1.1 Helvetica,Arial,sans-serif !important;
  text-transform:uppercase; letter-spacing:.04em; animation:jpzNeon 2.4s ease-in-out infinite; transform:none;
}
.jpz-account table.my-instant-wins td .button:hover{ transform:translateY(-2px); background:linear-gradient(95deg,#c6ff4d 0%,#8fdc00 100%) !important; color:#12210a !important; }
.jpz-account table.my-instant-wins td .badge{ display:inline-block !important; background:#f4f2f7 !important; color:var(--jz-muted) !important; border-radius:999px !important; padding:5px 12px !important; font-size:11px !important; font-weight:800 !important; text-transform:uppercase; letter-spacing:.04em; }
.jpz-account .my-instant-wins-wrapper .woocommerce-pagination{ display:flex; justify-content:center; gap:10px; margin-top:16px; }
@media (max-width:560px){
  .jpz-account table.my-instant-wins td{ padding:12px !important; }
  .jpz-account table.my-instant-wins td.woocommerce-orders-table__cell_prize a::first-line{ font-size:15px; }
  .jpz-account table.my-instant-wins td.woocommerce-orders-table__cell_value .amount{ font-size:14px; padding:5px 10px; }
  .jpz-account table.my-instant-wins td .button{ padding:8px 12px !important; font-size:11px !important; }
}
/* ---------- Delete account ---------- */
.jpz-del p{ margin:0 0 12px; font-size:13.5px; }
.jpz-account button.jpz-del__btn, button.jpz-del__btn{ background:#fff; border:1.5px solid #f2c9c5; color:#EC5245; font:800 13px Helvetica,Arial,sans-serif; padding:9px 16px; border-radius:10px; cursor:pointer; transition:background .2s ease, color .2s ease, border-color .2s ease; }
.jpz-account button.jpz-del__btn:hover, button.jpz-del__btn:hover{ background:#EC5245; border-color:#EC5245; color:#fff; }
.jpz-del-modal{ position:fixed; inset:0; z-index:100000; display:flex; align-items:center; justify-content:center; font-family:Helvetica,Arial,sans-serif; }
.jpz-del-modal[hidden]{ display:none; }
.jpz-del-modal__overlay{ position:absolute; inset:0; background:rgba(20,16,24,.6); animation:jpzFade .2s ease-out both; }
.jpz-del-modal__box{ position:relative; background:#fff; border-radius:16px; max-width:420px; width:calc(100% - 32px); padding:24px; box-shadow:0 20px 50px rgba(0,0,0,.3); border-top:4px solid #EC5245; animation:jpzUp .3s cubic-bezier(.2,.7,.3,1) both; }
.jpz-del-modal__box h3{ margin:0 0 14px; font-size:18px; font-weight:800; color:#1f1b24; }
.jpz-del-modal__check{ display:flex; align-items:flex-start; gap:10px; cursor:pointer; font-size:14px; line-height:1.5; color:#3a3540; }
.jpz-del-modal__check input{ margin-top:3px; flex-shrink:0; width:18px; height:18px; accent-color:#FF4CD4; cursor:pointer; }
.jpz-del-modal__actions{ display:flex; gap:10px; margin-top:20px; }
.jpz-del-modal button.jpz-del-modal__cancel, .jpz-del-modal button.jpz-del-modal__accept{ flex:1; padding:12px 14px; border-radius:10px; font:800 14px Helvetica,Arial,sans-serif; cursor:pointer; }
.jpz-del-modal button.jpz-del-modal__cancel{ background:#f4f2f7; border:1px solid #ddd6e3; color:#3a3540; }
.jpz-del-modal button.jpz-del-modal__accept{ background:#EC5245; border:1px solid #EC5245; color:#fff; }
.jpz-del-modal button.jpz-del-modal__accept:disabled{ background:#f2c9c5; border-color:#f2c9c5; cursor:not-allowed; }
.jpz-del-modal__status{ margin:12px 0 0; font-size:13px; font-weight:700; color:#c7139a; min-height:16px; }

/* ---------- Username availability ---------- */
.jpz-name-note{ display:block; min-height:18px; margin-top:6px; font-size:12.5px; font-weight:700; color:var(--jz-muted); }
.jpz-name-note.is-ok{ color:var(--jz-green-ink); }
.jpz-name-note.is-taken{ color:var(--jz-red); }
.jpz-account input#account_display_name:invalid{ border-color:var(--jz-red) !important; }

/* ---------- Footer ---------- */
.jpz-foot{ margin-top:36px; padding-top:22px; border-top:1px dashed var(--jz-line); text-align:center; }
.jpz-foot__social{ display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin-bottom:14px; }
.jpz-account a.jpz-chip{ display:inline-flex; align-items:center; gap:7px; padding:8px 14px; border-radius:20px; background:#fff; border:1px solid var(--jz-line); color:var(--jz-ink); font-size:13px; font-weight:700; text-decoration:none; transition:background .2s ease, color .2s ease, border-color .2s ease; }
.jpz-account a.jpz-chip .jpz-i{ width:16px; height:16px; color:var(--jz-pink); }
.jpz-account a.jpz-chip:hover{ background:var(--jz-grad); border-color:transparent; color:#fff; }
.jpz-account a.jpz-chip:hover .jpz-i{ color:#fff; }
.jpz-foot__legal{ margin:0 auto; max-width:620px; font-size:12.5px; color:var(--jz-muted); line-height:1.5; }
.jpz-foot__legal a{ color:var(--jz-pink-deep); font-weight:700; }
.jpz-foot__limits{ margin-top:6px; }
.jpz-delete-link{ margin:4px 0 0; text-align:left; }
.jpz-account button.jpz-delete-link__btn{ background:none; border:0; padding:4px 6px; font:600 12px Helvetica,Arial,sans-serif; color:var(--jz-muted); text-decoration:underline; text-underline-offset:2px; cursor:pointer; box-shadow:none; }
.jpz-account button.jpz-delete-link__btn:hover{ color:var(--jz-red); background:none; }
.jpz-del-modal__warn{ margin:-6px 0 14px; font-size:13.5px; line-height:1.5; color:#c0392b; font-weight:700; }

/* ---------- My Instant Wins: neon green in the menu and on the dashboard ---------- */
@keyframes jpzNeon{ 0%,100%{ box-shadow:0 0 6px rgba(180,255,26,.55), 0 0 14px rgba(180,255,26,.25); } 50%{ box-shadow:0 0 10px rgba(180,255,26,.9), 0 0 24px rgba(180,255,26,.45); } }
.jpz-account .jpz-nav li.woocommerce-MyAccount-navigation-link--my-instant-wins a{ color:var(--jz-ink); }
.jpz-nav li.woocommerce-MyAccount-navigation-link--my-instant-wins .jpz-nav__ico{ background:#B4FF1A; color:#12210a; animation:jpzNeon 2.4s ease-in-out infinite; }
.jpz-account .jpz-nav li.woocommerce-MyAccount-navigation-link--my-instant-wins a:hover{ background:rgba(180,255,26,.16); color:#3d5c00; }
.jpz-account .jpz-nav li.woocommerce-MyAccount-navigation-link--my-instant-wins.is-active a{ background:linear-gradient(95deg,#B4FF1A 0%,#7fbf00 100%); color:#12210a; box-shadow:0 0 0 1px rgba(180,255,26,.6), 0 8px 22px rgba(180,255,26,.45); }
.jpz-nav li.woocommerce-MyAccount-navigation-link--my-instant-wins.is-active .jpz-nav__ico{ background:rgba(18,33,10,.12); color:#12210a; animation:none; }
.jpz-account a.jpz-tile--my-instant-wins{ border-color:#B4FF1A; box-shadow:0 0 0 1px rgba(180,255,26,.35), 0 6px 18px rgba(180,255,26,.25); }
.jpz-account a.jpz-tile--my-instant-wins:hover{ border-color:#7fbf00; box-shadow:0 0 0 1px rgba(180,255,26,.6), 0 14px 28px rgba(180,255,26,.4); }
.jpz-tile--my-instant-wins .jpz-tile__ico{ background:#B4FF1A; color:#12210a; animation:jpzNeon 2.4s ease-in-out infinite; }
/* ---------- Loading: three soft pink hearts ---------- */
.jpz-hearts{ position:fixed; left:50%; bottom:calc(28px + env(safe-area-inset-bottom, 0px)); z-index:100001; display:flex; gap:7px; align-items:center; padding:10px 14px; border-radius:30px; background:rgba(255,255,255,.9); box-shadow:0 6px 22px rgba(255,76,212,.18); pointer-events:none; opacity:0; transform:translate(-50%,12px) scale(.9); transition:opacity .2s ease, transform .25s var(--jz-ease, ease); }
.jpz-hearts.is-on{ opacity:1; transform:translate(-50%,0) scale(1); }
.jpz-hearts svg{ width:15px; height:15px; display:block; animation:jpzBeat 1s ease-in-out infinite both; }
.jpz-hearts svg:nth-child(3){ animation-delay:.15s; }
.jpz-hearts svg:nth-child(4){ animation-delay:.3s; }
@keyframes jpzBeat{ 0%,100%{ transform:scale(.7); opacity:.45; } 40%{ transform:scale(1.15); opacity:1; } }
.jpz-account .woocommerce-MyAccount-content.jpz-is-loading > *{ opacity:.55; transition:opacity .25s ease; pointer-events:none; }

/* ---------- Responsive ---------- */
@media (max-width:900px){
  .jpz-layout{ grid-template-columns:1fr; gap:18px; }
  .jpz-nav{ position:static; }
}
@media (max-width:560px){
  .jpz-account{ padding:18px 12px 32px; }
  .jpz-head{ padding:12px; gap:10px; }
  .jpz-head__avatar{ width:40px; height:40px; border-radius:12px; font-size:17px; }
  .jpz-head__hi{ font-size:16px; }
  .jpz-tier{ font-size:10.5px; padding:2px 8px 2px 6px; }
  .jpz-tier .jpz-i{ width:12px; height:12px; }
  .jpz-account a.jpz-head__wallet{ padding:7px 10px; gap:6px; border-radius:12px; }
  .jpz-head__wallet-label{ font-size:10px; }
  .jpz-head__wallet-amount, .jpz-head__wallet-amount *{ font-size:16px; }
  .jpz-account .jpz-nav a{ font-size:16px; padding:5px 10px 5px 5px; }
  .jpz-nav__ico{ width:32px; height:32px; }
  .jpz-tiles{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .jz-tix-tabs a, .jz-tix-tabs span{ padding:10px 12px; font-size:13px; }
  .jz-tix-grid, .jpz-orders{ grid-template-columns:1fr; gap:12px; }
  .jpz-order__foot{ flex-direction:column; align-items:stretch; }
  .jpz-account .jpz-order__actions .button{ flex:1; }
}

.jpz-account a:focus-visible, .jpz-account button:focus-visible{ outline:3px solid rgba(255,76,212,.45) !important; outline-offset:2px; }

/* Hide the Downloads tab everywhere (no downloadable products) */
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads{ display:none !important; }

@media (prefers-reduced-motion:reduce){
  .jpz-acc-ui *, .jpz-acc-ui *::before, .jpz-acc-ui *::after, .jpz-del-modal *{ animation:none !important; transition:none !important; }
  .jpz-hearts svg{ opacity:1; }
}
/* ==========================================================================
 * Points & tiers (Jackpotz Access Levels 2.3)
 * ========================================================================== */

/* Tier badge colours */
.jpz-tier--customer{ background:#eeecf1; color:#4b4552; }
.jpz-tier--lioness{ background:#fdf0dc; color:#9a5b00; }
.jpz-tier--queen{ background:#f1e6fb; color:#6b2fa3; }
.jpz-tier--king{ background:#1f1b24; color:#F2C83B; }

/* Progress strip under the header */
.jpz-account a.jpz-pts{
  display:block; margin:-10px 0 22px; padding:12px 16px; border-radius:16px; text-decoration:none; color:var(--jz-ink);
  background:#fff; border:1px solid var(--jz-line); box-shadow:var(--jz-shadow); transition:transform .2s ease;
}
.jpz-account a.jpz-pts:hover{ transform:translateY(-1px); }
.jpz-pts__row{ display:flex; justify-content:space-between; align-items:center; gap:10px; font-size:14px; }
.jpz-pts__bal{ display:inline-flex; align-items:center; gap:6px; white-space:nowrap; }
.jpz-pts__bal b{ font-size:18px; font-weight:800; }
.jpz-pts__bal .jpz-i{ width:18px; height:18px; color:#E0A800; filter:drop-shadow(0 1px 1px rgba(120,80,0,.45)); }
.jpz-pts__next{ font-size:12px; font-weight:800; color:#6b6472; text-transform:uppercase; letter-spacing:.04em; text-align:right; }
.jpz-pts__bar{ display:block; height:10px; margin-top:8px; border-radius:99px; background:#efe9da; box-shadow:inset 0 1px 2px rgba(90,60,0,.25); overflow:hidden; }
.jpz-pts__bar > span{
  display:block; height:100%; border-radius:inherit; transform-origin:left center;
  background:linear-gradient(90deg,#D99A00,#F2C83B 55%,#FFE27A);
  box-shadow:inset 0 -1px 0 rgba(120,80,0,.35),0 0 6px rgba(224,168,0,.55);
  transition:width .8s var(--jz-ease);
  animation:jpzBarIn 1.1s cubic-bezier(.2,.8,.2,1) 1.5s both; /* waits 1.5s, then fills left \u2192 right */
}
@keyframes jpzBarIn{ from{ transform:scaleX(0); } to{ transform:scaleX(1); } }
@media (prefers-reduced-motion:reduce){ .jpz-pts__bar > span{ animation:none; } }
.jpz-pts__boost{ display:inline-block; margin-top:8px; font-size:12px; font-weight:800; color:#8a4b00; }

/* One-time upgrade celebration (CSS only) */
.jpz-party{
  position:relative; overflow:hidden; margin:-8px 0 14px; padding:20px 18px; border-radius:16px; text-align:center;
  background:linear-gradient(135deg,#1f1b24,#3a2d48); color:#fff; animation:jpzUp .45s var(--jz-ease) both;
}
.jpz-party__ico .jpz-i{ width:34px; height:34px; color:#F2C83B; }
.jpz-party__title{ margin:6px 0 4px; font-size:20px; font-weight:800; color:#F2C83B; }
.jpz-account a.jpz-party__link{ color:#fff; font-size:13px; text-decoration:underline; }
.jpz-party i{
  position:absolute; top:-14px; left:var(--x); width:8px; height:12px; border-radius:2px; background:#F2C83B; opacity:0;
  animation:jpzConfetti 2.4s var(--d) ease-in 2 both;
}
.jpz-party i[style*="--c:1"]{ background:#ff5fa2; }
.jpz-party i[style*="--c:2"]{ background:#7ee0ff; }
.jpz-party i[style*="--c:3"]{ background:#fff; }
@keyframes jpzConfetti{ 0%{ opacity:1; transform:translateY(0) rotate(0); } 100%{ opacity:0; transform:translateY(170px) rotate(540deg); } }
@media (prefers-reduced-motion:reduce){ .jpz-party i{ display:none; } }

/* My Points tab */
.jpz-points{ display:grid; gap:14px; }
.jpz-points__card{ margin:0; padding:18px; border-radius:18px; background:#fff; border:1px solid var(--jz-line); box-shadow:var(--jz-shadow); }
.jpz-points__card h3{ display:flex; align-items:center; gap:8px; margin:0 0 10px; font-size:16px; font-weight:800; color:var(--jz-ink); }
.jpz-points__card h3 .jpz-i{ width:18px; height:18px; }
.jpz-points__card p:last-child{ margin-bottom:0; }
.jpz-points__hero{ text-align:center; background:linear-gradient(160deg,#fffdf3,#fff); }
.jpz-points__label{ margin:0; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; color:#6b6472; }
.jpz-points__big{ margin:4px 0 10px; font-size:44px; font-weight:900; line-height:1; color:#C98F00; text-shadow:0 1px 0 #8a6100,0 2px 6px rgba(150,100,0,.35); }
.jpz-points__tier{ margin:0 0 12px; }
.jpz-points__next{ margin:8px 0 0; font-size:14px; font-weight:700; }
.jpz-points__keep{ margin:10px 0 0; font-size:13px; color:#6b6472; }
.jpz-points__boost{ background:#fff4e5; border-color:#ffc56b; font-size:14px; }
.jpz-points__nexttier summary{ display:flex; align-items:center; gap:8px; font-weight:800; cursor:pointer; list-style:none; }
.jpz-points__nexttier summary::-webkit-details-marker{ display:none; }
.jpz-points__nexttier summary::after{ content:"+"; margin-left:auto; font-size:18px; line-height:1; }
.jpz-points__nexttier[open] summary::after{ content:"\2013"; }
.jpz-points__nexttier[open] summary{ margin-bottom:10px; }
.jpz-points__nexttier summary .jpz-i{ width:18px; height:18px; }
.jpz-points__ways{ margin:0; padding-left:18px; }
.jpz-points__ways li{ margin:4px 0; }
.jpz-points__ref{ width:100%; padding:10px 12px; border-radius:10px; border:1px solid var(--jz-line); background:#f7f6f9; font-size:14px; }
.jpz-streak{ display:flex; gap:8px; margin:0 0 10px; }
.jpz-streak span{ flex:1; display:grid; place-items:center; height:36px; border-radius:10px; background:#eeecf1; font-weight:800; color:#8b8492; }
.jpz-streak span.is-on{ background:linear-gradient(135deg,#FFE27A,#E0A800); color:#1f1b24; box-shadow:0 1px 3px rgba(120,80,0,.45),inset 0 -1px 0 rgba(120,80,0,.3); }
.jpz-hist{ list-style:none; margin:0; padding:0; }
.jpz-hist__row{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding:10px 0; border-bottom:1px solid var(--jz-line); }
.jpz-hist__row:last-child{ border-bottom:0; }
.jpz-hist__what{ display:flex; flex-direction:column; min-width:0; }
.jpz-hist__what small{ color:#6b6472; font-size:12px; }
.jpz-hist__pts{ font-weight:800; white-space:nowrap; }
.jpz-hist__pts.is-pos{ color:#9a6b00; text-shadow:0 1px 0 rgba(255,226,122,.6); }
.jpz-hist__pts.is-neg{ color:#b32d2e; }
.jpz-hist__nav{ display:flex; justify-content:space-between; margin:12px 0 0; }
.jpz-vip__bio ul{ margin:0; padding-left:18px; }

@media (max-width:600px){
  .jpz-points__big{ font-size:36px; }
  .jpz-account a.jpz-pts{ margin-top:-12px; padding:10px 12px; }
  .jpz-pts__bal b{ font-size:16px; }
}
/* Visit present */
.jpz-gift{ position:relative; margin:-12px 0 22px; }
.jpz-account .jpz-gift__btn{
  display:flex; align-items:center; gap:14px; width:100%; margin:0; padding:12px 16px; border:0; border-radius:16px; cursor:pointer; text-align:left; font:inherit; color:#fff;
  background:linear-gradient(135deg,#2b1a00,#6b4500); box-shadow:0 0 0 1px rgba(242,200,59,.55),0 8px 22px rgba(160,105,0,.35); transition:transform .2s ease;
}
.jpz-account .jpz-gift__btn:hover{ transform:translateY(-1px); }
.jpz-account .jpz-gift__btn:disabled{ cursor:default; transform:none; }
.jpz-gift__svg{ width:52px; height:52px; flex-shrink:0; overflow:visible; transform-origin:50% 90%; animation:jpzGiftWiggle 2.8s ease-in-out infinite; filter:drop-shadow(0 0 6px rgba(255,200,40,.65)); }
.jpz-gift__lid{ transform-box:fill-box; transform-origin:50% 100%; transition:transform .55s cubic-bezier(.2,1.6,.4,1); }
.jpz-gift__txt b{ display:block; font-size:16px; font-weight:800; color:#FFD24A; text-shadow:0 1px 2px rgba(0,0,0,.45); }
.jpz-gift__txt small{ display:block; margin-top:2px; font-size:13px; color:#fff1c7; }
.jpz-gift__pop{ position:absolute; left:20px; top:-4px; font-size:20px; font-weight:900; color:#FFD24A; text-shadow:0 2px 3px rgba(90,55,0,.8),0 0 12px rgba(255,190,0,.9); pointer-events:none; opacity:0; white-space:nowrap; }
.jpz-gift__burst{ position:absolute; left:42px; top:38px; width:0; height:0; pointer-events:none; }
.jpz-gift__burst i{ position:absolute; left:-3px; top:-3px; width:6px; height:6px; border-radius:50%; background:#FFD24A; box-shadow:0 0 6px #E0A800,0 0 1px rgba(90,55,0,.8); opacity:0; transform:rotate(var(--a)) translateY(0); }
.jpz-gift.is-open .jpz-gift__lid{ transform:translateY(-16px) rotate(-20deg); }
.jpz-gift.is-open .jpz-gift__svg{ animation:jpzGiftPop .55s cubic-bezier(.2,1.6,.4,1) both; }
.jpz-gift.is-open .jpz-gift__burst i{ animation:jpzSpark .75s ease-out both; }
.jpz-gift.is-open .jpz-gift__pop{ animation:jpzGiftFloat 1.8s ease-out both; }
.jpz-gift.is-done .jpz-gift__btn{ box-shadow:0 0 0 1px rgba(242,200,59,.35); }
@keyframes jpzGiftWiggle{ 0%,78%,100%{ transform:rotate(0) } 82%{ transform:rotate(-9deg) } 86%{ transform:rotate(8deg) } 90%{ transform:rotate(-5deg) } 94%{ transform:rotate(3deg) } }
@keyframes jpzGiftPop{ 0%{ transform:scale(1) } 40%{ transform:scale(1.28) } 100%{ transform:scale(1) } }
@keyframes jpzSpark{ 0%{ opacity:1; transform:rotate(var(--a)) translateY(0) scale(1) } 100%{ opacity:0; transform:rotate(var(--a)) translateY(-46px) scale(.3) } }
@keyframes jpzGiftFloat{ 0%{ opacity:0; transform:translateY(12px) scale(.6) } 18%{ opacity:1; transform:translateY(-8px) scale(1.15) } 100%{ opacity:0; transform:translateY(-48px) scale(1) } }
@media (prefers-reduced-motion:reduce){ .jpz-gift__svg, .jpz-gift.is-open .jpz-gift__svg{ animation:none } .jpz-gift__burst{ display:none } }

/* How points work + tier ladder */
.jpz-points__intro p{ margin:0 0 10px; }
.jpz-ladder{ list-style:none; margin:12px 0 0; padding:0; display:grid; gap:8px; }
.jpz-ladder__tier{ margin:0; border-radius:12px; background:#f7f6f9; border:1px solid transparent; }
.jpz-ladder__tier summary, .jpz-ladder__row{ display:flex; align-items:center; gap:10px; padding:10px 12px; list-style:none; cursor:pointer; }
.jpz-ladder__row{ cursor:default; }
.jpz-ladder__tier summary::-webkit-details-marker{ display:none; }
.jpz-ladder__tier .jpz-i{ width:22px; height:22px; flex-shrink:0; }
.jpz-ladder__name{ display:flex; flex-direction:column; font-weight:800; line-height:1.2; }
.jpz-ladder__name small{ font-weight:600; font-size:12px; color:#6b6472; }
.jpz-ladder__state{ margin-left:auto; font-size:12px; font-weight:800; color:#6b6472; text-align:right; white-space:nowrap; }
.jpz-ladder__bio{ padding:0 12px 12px 44px; font-size:14px; }
.jpz-ladder__bio ul{ margin:0; padding-left:18px; }
.jpz-ladder__tier.is-unlocked{ background:#fff8e1; }
.jpz-ladder__tier.is-unlocked .jpz-ladder__state{ color:#8a6100; }
.jpz-ladder__tier.is-current{ background:#fff8e1; border-color:#E0A800; box-shadow:0 0 0 3px rgba(242,200,59,.25),0 2px 6px rgba(150,100,0,.2); }
.jpz-ladder__tier.is-current .jpz-ladder__state{ color:#8a6100; }
.jpz-ladder__hint{ margin:8px 0 0; font-size:12px; color:#8f8899; }
/* Monthly leaderboard */
.jpz-lb__month{ margin:0 0 8px; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; color:#6b6472; }
.jpz-lb__list{ list-style:none; margin:0; padding:0; }
.jpz-lb__row{ display:flex; align-items:center; gap:10px; margin:0; padding:8px 10px; border-radius:10px; }
.jpz-lb__row:nth-child(odd){ background:#f7f6f9; }
.jpz-lb__rank{ display:grid; place-items:center; width:26px; height:26px; flex-shrink:0; border-radius:50%; background:#eeecf1; font-size:13px; font-weight:800; }
.jpz-lb__row.is-top1 .jpz-lb__rank{ background:linear-gradient(135deg,#FFE27A,#E0A800); color:#1f1b24; box-shadow:0 1px 3px rgba(120,80,0,.5); }
.jpz-lb__row.is-top2 .jpz-lb__rank{ background:#d7dbe0; color:#1f1b24; }
.jpz-lb__row.is-top3 .jpz-lb__rank{ background:#e7b48a; color:#1f1b24; }
.jpz-lb__name{ flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:700; }
.jpz-lb__name small{ font-weight:600; color:#8a6100; }
.jpz-lb__pts{ font-weight:800; white-space:nowrap; }
.jpz-lb__row.is-me{ background:#fff8e1; box-shadow:inset 0 0 0 2px #E0A800; }
.jpz-lb__you{ margin:10px 0 0; font-size:13px; font-weight:700; }
.jpz-lb__note{ margin:8px 0 0; font-size:12px; color:#8f8899; }
/* Present: wrap text on small screens */
.jpz-account .jpz-gift__btn{ white-space:normal; }
.jpz-gift__txt{ flex:1; min-width:0; }
.jpz-gift__txt b, .jpz-gift__txt small{ white-space:normal; overflow-wrap:anywhere; }
@media (max-width:600px){ .jpz-gift__svg{ width:44px; height:44px; } .jpz-gift__txt b{ font-size:15px; } }

/* ==========================================================================
 * Bright metallic gold (12 Oct 2026). Overrides the earlier darker gold.
 * ========================================================================== */
.jpz-account a.jpz-pts{ background:linear-gradient(135deg,#FFFBEA 0%,#fff 55%,#FFF6D2 100%); border-color:#F7DC7A; box-shadow:0 6px 18px rgba(245,176,0,.18); }
.jpz-pts__bal .jpz-i{ color:#F5B000; filter:drop-shadow(0 1px 1px rgba(150,95,0,.5)); }
.jpz-pts__bar{ height:12px; background:#FFF4CC; box-shadow:inset 0 1px 2px rgba(150,95,0,.28),inset 0 0 0 1px rgba(245,176,0,.25); }
.jpz-pts__bar > span{
  position:relative; overflow:hidden;
  background:linear-gradient(90deg,#F5A800 0%,#FFD23F 30%,#FFF1A8 50%,#FFD23F 70%,#F5B000 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),inset 0 -1px 0 rgba(170,105,0,.45),0 0 10px rgba(255,200,40,.75);
}
.jpz-pts__bar > span::after{
  content:""; position:absolute; inset:0; transform:translateX(-110%);
  background:linear-gradient(100deg,transparent 25%,rgba(255,255,255,.85) 50%,transparent 75%);
  animation:jpzShine 4s ease-in-out 2.8s infinite;
}
@keyframes jpzShine{ 0%{ transform:translateX(-110%); } 35%,100%{ transform:translateX(110%); } }

/* Balance number: gradient gold */
.jpz-points__hero{ background:radial-gradient(120% 90% at 50% 0%,#FFF1B0 0%,#FFF9E3 45%,#fff 80%); border-color:#F7DC7A; }
.jpz-points__big{
  color:#F5B000; background:linear-gradient(180deg,#FFE680 0%,#FFC21A 45%,#E89A00 100%);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
  text-shadow:none; filter:drop-shadow(0 2px 1px rgba(140,85,0,.55)) drop-shadow(0 0 10px rgba(255,200,40,.45));
}

/* Present: bright gold card with a pink box */
.jpz-account .jpz-gift__btn{
  background:linear-gradient(135deg,#FFF0A0 0%,#FFD23F 40%,#F7B500 75%,#FFD84D 100%);
  box-shadow:0 0 0 1px #F0B000,0 8px 22px rgba(245,176,0,.45),inset 0 1px 0 rgba(255,255,255,.8);
}
.jpz-gift__svg{ filter:drop-shadow(0 2px 3px rgba(150,95,0,.45)); }
.jpz-gift__txt b{ color:#5a3300; text-shadow:0 1px 0 rgba(255,255,255,.75); font-weight:900; }
.jpz-gift__txt small{ color:#4a2c00; font-weight:600; }
.jpz-gift__pop{ color:#fff; text-shadow:0 1px 0 #B06E00,0 2px 4px rgba(120,70,0,.7),0 0 14px rgba(255,210,60,1); }
.jpz-gift__burst i{ background:#fff; box-shadow:0 0 6px #FFD23F,0 0 2px #E09A00; }
.jpz-gift.is-done .jpz-gift__btn{ box-shadow:0 0 0 1px #F0B000,0 4px 12px rgba(245,176,0,.3); }

/* Ladder, leaderboard, streak, history */
.jpz-ladder__tier.is-unlocked{ background:linear-gradient(135deg,#FFFBEA,#FFF3C4); }
.jpz-ladder__tier.is-current{ background:linear-gradient(135deg,#FFF3B0 0%,#FFE070 60%,#FFD23F 100%); border-color:#F5B000; box-shadow:0 0 0 3px rgba(255,210,60,.35),0 4px 12px rgba(245,176,0,.35); }
.jpz-ladder__tier.is-current .jpz-ladder__state, .jpz-ladder__tier.is-unlocked .jpz-ladder__state{ color:#7a4a00; }
.jpz-lb__row.is-me{ background:linear-gradient(135deg,#FFF3B0,#FFE070); box-shadow:inset 0 0 0 2px #F5B000,0 3px 10px rgba(245,176,0,.3); }
.jpz-lb__name small{ color:#7a4a00; }
.jpz-lb__row.is-top1 .jpz-lb__rank{ background:linear-gradient(135deg,#FFF1A8,#FFD23F 50%,#F5A800); box-shadow:0 1px 3px rgba(150,95,0,.55),inset 0 1px 0 rgba(255,255,255,.8); }
.jpz-streak span.is-on{ background:linear-gradient(135deg,#FFF1A8,#FFD23F 50%,#F5A800); color:#4a2c00; box-shadow:0 2px 6px rgba(245,176,0,.5),inset 0 1px 0 rgba(255,255,255,.8); }
.jpz-hist__pts.is-pos{ color:#D99200; text-shadow:0 1px 0 rgba(120,70,0,.25); }
@media (prefers-reduced-motion:reduce){ .jpz-pts__bar > span::after{ animation:none; display:none; } }
/* ==========================================================================
 * Orange points theme (12 Oct 2026). Overrides every earlier points colour.
 * ========================================================================== */
.jpz-account a.jpz-pts{ background:linear-gradient(135deg,#FFF3E8 0%,#fff 55%,#FFEBDA 100%); border-color:#FFC59A; box-shadow:0 6px 18px rgba(255,106,0,.14); }
.jpz-pts__bal .jpz-i{ color:#FF6A00; filter:drop-shadow(0 1px 1px rgba(140,45,0,.45)); }
.jpz-pts__bar{ height:12px; background:#FFE9D9; box-shadow:inset 0 1px 2px rgba(140,45,0,.25),inset 0 0 0 1px rgba(255,106,0,.2); }
.jpz-pts__bar > span{
  background:linear-gradient(90deg,#FF4E00 0%,#FF7A00 35%,#FFA040 55%,#FF7A00 75%,#FF5A00 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -1px 0 rgba(150,40,0,.4),0 0 10px rgba(255,110,0,.6);
}
.jpz-pts__bar > span::after{ background:linear-gradient(100deg,transparent 25%,rgba(255,255,255,.7) 50%,transparent 75%); }

.jpz-points__hero{ background:radial-gradient(120% 90% at 50% 0%,#FFE0C4 0%,#FFF4EA 45%,#fff 80%); border-color:#FFC59A; }
.jpz-points__big{
  color:#FF6A00; background:linear-gradient(180deg,#FFB061 0%,#FF7A00 50%,#E84E00 100%);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 2px 1px rgba(130,40,0,.45)) drop-shadow(0 0 10px rgba(255,120,0,.35));
}

.jpz-account .jpz-gift__btn{
  background:linear-gradient(135deg,#FFB061 0%,#FF7A00 45%,#FF5200 80%,#FF8A1F 100%);
  box-shadow:0 0 0 1px #F05A00,0 8px 22px rgba(255,90,0,.4),inset 0 1px 0 rgba(255,255,255,.45);
}
.jpz-gift__svg{ filter:drop-shadow(0 2px 3px rgba(120,35,0,.5)); }
.jpz-gift__txt b{ color:#fff; text-shadow:0 1px 0 #B33A00,0 2px 4px rgba(110,30,0,.5); font-weight:900; }
.jpz-gift__txt small{ color:#fff; font-weight:600; text-shadow:0 1px 2px rgba(110,30,0,.45); }
.jpz-gift__pop{ color:#fff; text-shadow:0 1px 0 #B33A00,0 2px 4px rgba(110,30,0,.7),0 0 14px rgba(255,140,0,1); }
.jpz-gift__burst i{ background:#fff; box-shadow:0 0 6px #FF8A00,0 0 2px #E04A00; }
.jpz-gift.is-done .jpz-gift__btn{ box-shadow:0 0 0 1px #F05A00,0 4px 12px rgba(255,90,0,.25); }

.jpz-ladder__tier.is-unlocked{ background:linear-gradient(135deg,#FFF6EE,#FFE6D2); }
.jpz-ladder__tier.is-current{ background:linear-gradient(135deg,#FFD9B8 0%,#FFB574 60%,#FF9640 100%); border-color:#FF6A00; box-shadow:0 0 0 3px rgba(255,120,0,.22),0 4px 12px rgba(255,90,0,.3); }
.jpz-ladder__tier.is-current .jpz-ladder__state, .jpz-ladder__tier.is-unlocked .jpz-ladder__state{ color:#8a2f00; }
.jpz-lb__row.is-me{ background:linear-gradient(135deg,#FFE3CC,#FFC48F); box-shadow:inset 0 0 0 2px #FF6A00,0 3px 10px rgba(255,90,0,.25); }
.jpz-lb__name small{ color:#8a2f00; }
.jpz-lb__row.is-top1 .jpz-lb__rank{ background:linear-gradient(135deg,#FFB061,#FF7A00 50%,#E84E00); color:#fff; box-shadow:0 1px 3px rgba(130,40,0,.5),inset 0 1px 0 rgba(255,255,255,.5); }
.jpz-streak span.is-on{ background:linear-gradient(135deg,#FFB061,#FF7A00 50%,#E84E00); color:#fff; box-shadow:0 2px 6px rgba(255,90,0,.45),inset 0 1px 0 rgba(255,255,255,.5); }
.jpz-hist__pts.is-pos{ color:#E85A00; text-shadow:none; }
/* My Instant Wins: no per-cell shadow (it left a faint line down the middle of each row) */
.jpz-account table.my-instant-wins td{ box-shadow:none !important; }
.jpz-account table.my-instant-wins td:first-child{ border-right:0 !important; }
.jpz-account table.my-instant-wins td:last-child{ border-left:0 !important; }
.jpz-account table.my-instant-wins tr.woocommerce-orders-table__row{ filter:drop-shadow(0 3px 8px rgba(18,33,10,.07)); }

/* ---------- My Instant Wins filters: one swipeable row of white pills ----------
   (slowly drifts right-to-left on its own when it doesn't fit; touching or hovering pauses it) */
.jpz-account .my-instant-wins-wrapper .wlmiw-filters-form{ min-width:0 !important; max-width:100% !important; }
.jpz-account .my-instant-wins-wrapper .wlmiw-categories{ width:100% !important; max-width:100% !important; min-width:0 !important; align-self:stretch !important; box-sizing:border-box !important; flex-wrap:nowrap !important; overflow-x:auto !important; overflow-y:hidden !important; padding:6px 2px 12px !important; margin:0 !important; scroll-snap-type:none !important; overscroll-behavior-x:contain; scrollbar-width:none; }
.jpz-account .my-instant-wins-wrapper .wlmiw-categories::-webkit-scrollbar{ display:none; }
.jpz-account .my-instant-wins-wrapper .wlmiw-categories.is-marquee{ -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 30px),transparent 100%); mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 30px),transparent 100%); }
.jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-category-btn,
.jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-search-toggle{
  flex:0 0 auto !important; display:inline-flex !important; align-items:center !important; gap:8px !important; width:auto !important; height:42px !important; margin:0 !important; padding:0 18px 0 14px !important;
  border-radius:999px !important; border:1.5px solid #f2d7ec !important; background:#fff !important; background-image:none !important; color:#1f1b24 !important; -webkit-text-fill-color:#1f1b24;
  font:800 13px/1 Helvetica,Arial,sans-serif !important; letter-spacing:.05em !important; text-transform:uppercase !important; white-space:nowrap !important;
  box-shadow:0 2px 10px rgba(255,76,212,.10), 0 1px 2px rgba(31,27,36,.06) !important; transform:none !important; animation:none !important; outline:none !important;
  transition:background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .12s ease !important; scroll-snap-align:none !important; -webkit-tap-highlight-color:transparent;
}
.jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-search-toggle{ padding:0 18px !important; border-style:dashed !important; }
.jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-category-btn .wlmiw-category-icon{ width:20px !important; height:20px !important; margin:0 !important; object-fit:contain; }
@media (hover:hover){
  .jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-category-btn:hover,
  .jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-search-toggle:hover{ background:#fff4fb !important; border-color:#FF4CD4 !important; color:#1f1b24 !important; -webkit-text-fill-color:#1f1b24; box-shadow:0 6px 16px rgba(255,76,212,.20) !important; }
}
.jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-category-btn:focus,
.jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-search-toggle:focus{ background:#fff !important; color:#1f1b24 !important; -webkit-text-fill-color:#1f1b24; }
.jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-category-btn:focus-visible,
.jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-search-toggle:focus-visible{ border-color:#FF4CD4 !important; box-shadow:0 0 0 3px rgba(255,76,212,.25) !important; }
.jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-category-btn:active,
.jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-search-toggle:active{ background:#ffe8f7 !important; border-color:#FF4CD4 !important; color:#1f1b24 !important; -webkit-text-fill-color:#1f1b24; transform:scale(.96) !important; }
.jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-category-btn.active,
.jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-category-btn.active:hover,
.jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-category-btn.active:focus,
.jpz-account .woocommerce-MyAccount-content .my-instant-wins-wrapper form button.wlmiw-category-btn.active:active{
  background:linear-gradient(95deg,#C6FF3D 0%,#97E000 100%) !important; border-color:#97E000 !important; color:#12210a !important; -webkit-text-fill-color:#12210a;
  box-shadow:0 0 0 1px rgba(180,255,26,.55), 0 6px 16px rgba(150,224,0,.35) !important;
}
@media (prefers-reduced-motion:reduce){ .jpz-account .my-instant-wins-wrapper .wlmiw-categories.is-marquee{ -webkit-mask-image:none; mask-image:none; } }

/* ==========================================================================
 * Points theme: royal purple with platinum shine (17 Oct 2026).
 * Overrides every earlier points colour (gold, orange).
 * ========================================================================== */
.jpz-account a.jpz-pts{ background:linear-gradient(135deg,#F5EFFF 0%,#fff 60%,#F0F2F7 100%); border-color:#DCCDFB; box-shadow:0 6px 18px rgba(91,18,214,.12); }
.jpz-pts__bal b{ color:#5B12D6; }
.jpz-pts__bal .jpz-i{ color:#7B2FF7; filter:drop-shadow(0 1px 1px rgba(50,10,120,.4)); }
.jpz-pts__bar{ height:12px; background:#ECE7F7; box-shadow:inset 0 1px 2px rgba(50,20,110,.22),inset 0 0 0 1px rgba(123,47,247,.15); }
.jpz-pts__bar > span{
  background:linear-gradient(90deg,#4B0FB0 0%,#7B2FF7 40%,#DCE3EE 52%,#8B3DFF 64%,#5B12D6 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45),inset 0 -1px 0 rgba(40,8,100,.45),0 0 10px rgba(123,47,247,.5);
}
.jpz-pts__bar > span::after{ background:linear-gradient(100deg,transparent 25%,rgba(240,244,250,.85) 50%,transparent 75%); }
.jpz-pts__boost{ color:#5B12D6; }

.jpz-points__hero{ background:radial-gradient(120% 90% at 50% 0%,#E9DDFF 0%,#F7F3FF 45%,#fff 80%); border-color:#DCCDFB; }
.jpz-points__big{
  color:#7B2FF7; background:linear-gradient(180deg,#B48AFF 0%,#7B2FF7 50%,#4B0FB0 100%);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 2px 1px rgba(40,8,100,.35)) drop-shadow(0 0 10px rgba(139,61,255,.3));
}

.jpz-account .jpz-gift__btn{
  background:linear-gradient(135deg,#8B3DFF 0%,#5B12D6 55%,#2D2660 100%);
  box-shadow:0 0 0 1px #4B0FB0,0 8px 22px rgba(91,18,214,.38),inset 0 1px 0 rgba(220,227,238,.45);
}
.jpz-gift__svg{ filter:drop-shadow(0 2px 3px rgba(20,5,60,.5)); }
.jpz-gift__txt b{ color:#fff; text-shadow:0 1px 2px rgba(20,5,60,.55); font-weight:900; }
.jpz-gift__txt small{ color:#E4E0F5; font-weight:600; text-shadow:none; }
.jpz-gift__pop{ color:#fff; text-shadow:0 1px 0 #3B0E8A,0 2px 4px rgba(20,5,60,.7),0 0 14px rgba(180,140,255,1); }
.jpz-gift__burst i{ background:#DCE3EE; box-shadow:0 0 6px #B48AFF,0 0 2px #7B2FF7; }
.jpz-gift.is-done .jpz-gift__btn{ box-shadow:0 0 0 1px #4B0FB0,0 4px 12px rgba(91,18,214,.25); }

.jpz-party{ background:linear-gradient(135deg,#2D2660,#5B12D6); }
.jpz-party__title{ color:#E9E2FF; }
.jpz-party__ico .jpz-i{ color:#DCE3EE; }

.jpz-ladder__tier.is-unlocked{ background:linear-gradient(135deg,#F7F2FF,#EFE7FF); }
.jpz-ladder__tier.is-current{ background:linear-gradient(135deg,#EDE3FF 0%,#D9C6FF 60%,#C4A6FF 100%); border-color:#7B2FF7; box-shadow:0 0 0 3px rgba(123,47,247,.18),0 4px 12px rgba(91,18,214,.25); }
.jpz-ladder__tier.is-current .jpz-ladder__state, .jpz-ladder__tier.is-unlocked .jpz-ladder__state{ color:#3B0E8A; }
.jpz-lb__row.is-me{ background:linear-gradient(135deg,#EFE6FF,#DCCBFF); box-shadow:inset 0 0 0 2px #7B2FF7,0 3px 10px rgba(91,18,214,.2); }
.jpz-lb__name small{ color:#3B0E8A; }
.jpz-lb__row.is-top1 .jpz-lb__rank{ background:linear-gradient(135deg,#8B3DFF,#5B12D6 60%,#2D2660); color:#fff; box-shadow:0 1px 3px rgba(40,8,100,.5),inset 0 1px 0 rgba(220,227,238,.5); }
.jpz-streak span.is-on{ background:linear-gradient(135deg,#8B3DFF,#5B12D6 60%,#2D2660); color:#fff; box-shadow:0 2px 6px rgba(91,18,214,.4),inset 0 1px 0 rgba(220,227,238,.5); }
.jpz-hist__pts.is-pos{ color:#6A1BE0; text-shadow:none; }