/* =========================================================
   CUEVA — WALLET & SUBSCRIPTION
   Clean mobile billing page matched to the main app shell.
========================================================= */

.wallet-page,
.wallet-page *{box-sizing:border-box}

.wallet-page{
  display:grid;
  gap:12px;
  width:100%;
  min-width:0;
  color:#111317;
}

/* Keep Wallet inside the exact same shell rhythm as Home. */
body:has(.wallet-page) .page-content{
  gap:12px;
  padding:16px 14px 22px;
}
body:has(.wallet-page) .mobile-header{
  background:#fff!important;
  border-bottom:1px solid rgba(17,19,23,.055)!important;
  box-shadow:0 5px 18px rgba(17,19,23,.035)!important;
}
body:has(.wallet-page) .bottom-nav{
  background:#fff!important;
  border-top:1px solid rgba(17,19,23,.055)!important;
  box-shadow:0 -5px 18px rgba(17,19,23,.035)!important;
}

/* ---------- Page heading ---------- */
.wallet-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  padding:4px 4px 2px;
}
.wallet-eyebrow,
.wallet-section-kicker{
  display:block;
  color:#a77b00;
  font-size:9px;
  font-weight:850;
  letter-spacing:.15em;
}
.wallet-heading h2{
  margin:3px 0 0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:28px;
  font-weight:400;
  line-height:1.04;
  letter-spacing:-.025em;
}
.wallet-heading p{
  margin:6px 0 0;
  color:#7d8086;
  font-size:11px;
  line-height:1.3;
}

/* ---------- Visa-size wallet card ---------- */
.wallet-bank-card{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  width:min(100%,340px);
  aspect-ratio:1.72 / 1;
  min-height:0;
  max-height:198px;
  margin-inline:auto;
  overflow:hidden;
  padding:18px;
  border-radius:23px;
  color:#fff;
  background:
    radial-gradient(circle at 92% 10%,rgba(212,170,61,.34),transparent 36%),
    linear-gradient(145deg,#0d0e10 0%,#191a1d 61%,#24231e 100%);
  box-shadow:0 16px 34px rgba(17,19,23,.15);
}
.wallet-bank-card::after{
  content:"";
  position:absolute;
  right:-34px;
  bottom:-70px;
  width:190px;
  height:190px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:50%;
  box-shadow:0 0 0 28px rgba(255,255,255,.018),0 0 0 58px rgba(255,255,255,.012);
  pointer-events:none;
}
.wallet-card-topline,
.wallet-card-bottom{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.wallet-card-topline>div:first-child span,
.wallet-card-topline>div:first-child strong{
  display:block;
}
.wallet-card-topline>div:first-child span{
  color:#e8c55d;
  font-size:9px;
  font-weight:850;
  letter-spacing:.14em;
}
.wallet-card-topline>div:first-child strong{
  margin-top:3px;
  color:#acadb1;
  font-size:8px;
  font-weight:650;
  letter-spacing:.08em;
}
.wallet-card-topline .wallet-id-line b{
  margin-left:3px;
  color:#fff;
  font-size:10px;
  font-weight:850;
  letter-spacing:.08em;
}
.wallet-card-mark{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:14px;
  background:rgba(255,255,255,.07);
  color:#e4be4d;
  font-size:18px;
}
.wallet-card-balance{
  position:relative;
  z-index:1;
}
.wallet-card-balance span{
  display:block;
  margin-bottom:5px;
  color:#aeb0b5;
  font-size:10px;
  font-weight:550;
}
.wallet-card-balance h1{
  margin:0;
  color:#fff;
  font-size:32px;
  font-weight:820;
  line-height:1;
  letter-spacing:-.045em;
}
.wallet-card-bottom{
  justify-content:flex-start;
}
.wallet-card-bottom button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:40px;
  padding:0 14px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:13px;
  background:rgba(255,255,255,.075);
  color:#fff;
  font-size:10px;
  font-weight:780;
}
.wallet-card-bottom button:first-child{
  border-color:#e8c65b;
  background:#e8c65b;
  color:#171719;
}

/* ---------- Subscription ---------- */
.clean-subscription-card{
  padding:16px;
  border:1px solid #e8e8eb;
  border-radius:20px;
  background:#fff;
  box-shadow:0 8px 24px rgba(17,19,23,.045);
}
.sub-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.sub-top p{
  margin:0 0 4px;
  color:#8a8d93;
  font-size:9px;
  font-weight:820;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.sub-top h2{
  margin:0;
  color:#151619;
  font-size:21px;
  font-weight:820;
  line-height:1.15;
  letter-spacing:-.035em;
}
.status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:27px;
  padding:0 10px;
  border-radius:999px;
  background:#eaf7ee;
  color:#267645;
  font-size:8px;
  font-weight:850;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.status.pending,.status.warning{background:#fff4d7;color:#876300}
.status.failed,.status.inactive,.status.rejected{background:#fde9e8;color:#a63831}

.subscription-summary-row{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin-top:15px;
  padding:12px 0;
  border-top:1px solid #eeeeef;
  border-bottom:1px solid #eeeeef;
}
.subscription-summary-row>div{
  min-width:0;
  padding:0 11px;
  border-right:1px solid #eeeeef;
}
.subscription-summary-row>div:first-child{padding-left:0}
.subscription-summary-row>div:last-child{padding-right:0;border-right:0}
.subscription-summary-row small{
  display:block;
  color:#96989d;
  font-size:8.5px;
  font-weight:650;
}
.subscription-summary-row strong{
  display:block;
  margin-top:4px;
  overflow:hidden;
  color:#191a1d;
  font-size:11px;
  font-weight:820;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.subscription-meta-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  margin-top:12px;
}
.subscription-meta-row span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#676a70;
  font-size:9px;
}
.subscription-meta-row i{color:#ad8420;font-size:9px}
.subscription-meta-row b{color:#242529;font-weight:800}
.subscription-feature-line{
  margin-top:11px;
  padding:9px 11px;
  border-radius:11px;
  background:#faf5e5;
  color:#795b0d;
  font-size:9px;
  font-weight:760;
  line-height:1.3;
}
.view-plans-btn{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  min-height:43px;
  margin-top:10px;
  padding:0 13px;
  border:0;
  border-radius:12px;
  background:#17181a;
  color:#fff;
  font-size:10px;
  font-weight:800;
}
.view-plans-btn i{color:#d8ad43;font-size:10px}

/* ---------- Transactions ---------- */
.wallet-table-card{
  min-width:0;
  padding:15px;
  border:1px solid #e8e8eb;
  border-radius:20px;
  background:#fff;
  box-shadow:0 8px 24px rgba(17,19,23,.04);
}
.table-title{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.table-title h3{
  margin:3px 0 0;
  color:#18191c;
  font-size:17px;
  font-weight:820;
  letter-spacing:-.025em;
}
.table-title p{
  margin:4px 0 0;
  color:#96989d;
  font-size:9px;
}
.table-title select{
  flex:0 0 auto;
  min-height:34px;
  padding:0 27px 0 10px;
  border:1px solid #e1e2e4;
  border-radius:10px;
  outline:0;
  background:#f7f7f8;
  color:#4b4e54;
  font-size:9px;
  font-weight:720;
}
.table-wrap{
  width:100%;
  margin-top:12px;
  overflow:hidden;
  border:1px solid #eeeeef;
  border-radius:13px;
  background:#fff;
}
.wallet-page table{
  width:100%;
  border-collapse:collapse;
}
.wallet-page th{
  padding:9px 10px;
  border-bottom:1px solid #eeeeef;
  background:#f8f8f9;
  color:#92949a;
  font-size:7.5px;
  font-weight:850;
  letter-spacing:.06em;
  text-align:left;
  text-transform:uppercase;
}
.wallet-page td{
  padding:10px;
  border-bottom:1px solid #f0f0f1;
  color:#4a4d52;
  font-size:8.5px;
  vertical-align:middle;
}
.wallet-page tbody tr:last-child td{border-bottom:0}
.empty-row{
  padding:24px 12px!important;
  color:#a0a2a7!important;
  text-align:center!important;
}
.tx-type{
  display:inline-flex;
  max-width:90px;
  padding:4px 7px;
  overflow:hidden;
  border-radius:999px;
  background:#f3f3f4;
  color:#686b70;
  font-size:7px;
  font-weight:760;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.amount-green{color:#237443}
.amount-red{color:#ad3933}

/* ---------- Wallet action bottom sheet ---------- */
.wallet-modal{
  position:fixed;
  inset:0;
  z-index:1200;
  display:none;
  align-items:flex-end;
  justify-content:center;
  padding:14px 14px 0;
  background:rgba(12,12,13,.44);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
.wallet-modal.show{display:flex}
.wallet-modal[hidden],.wallet-modal.hidden{display:none!important}
.wallet-modal-box{
  width:min(100%,520px);
  max-height:88vh;
  overflow:auto;
  padding:9px 16px calc(17px + env(safe-area-inset-bottom));
  border-radius:24px 24px 0 0;
  background:#fff;
  box-shadow:0 -18px 52px rgba(0,0,0,.18);
}
.wallet-modal-box::before{
  content:"";
  display:block;
  width:36px;
  height:4px;
  margin:1px auto 11px;
  border-radius:99px;
  background:#d5d6d8;
}
.wallet-modal .modal-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  padding:2px 0 12px;
}
.wallet-modal .modal-head h3{margin:0;font-size:18px;font-weight:820;letter-spacing:-.03em}
.wallet-modal .modal-head p{margin:4px 0 0;color:#92949a;font-size:10px}
.wallet-modal .modal-head button{
  display:grid;
  place-items:center;
  width:35px;
  height:35px;
  border:0;
  border-radius:11px;
  background:#f1f1f2;
  color:#44464b;
}
.wallet-action-box{display:flex;flex-direction:column;gap:8px}
.wallet-action-box label{color:#55585e;font-size:10px;font-weight:760}
.wallet-action-box input,
.wallet-action-box textarea{
  width:100%;
  min-height:45px;
  padding:11px 12px;
  border:1px solid #dedfe1;
  border-radius:12px;
  outline:0;
  background:#fafafa;
  color:#1c1d20;
  font:inherit;
  font-size:16px;
}
.wallet-action-box input:focus,.wallet-action-box textarea:focus{
  border-color:#c9a13b;
  background:#fff;
  box-shadow:0 0 0 3px rgba(201,161,59,.09);
}
.wallet-action-box>p{margin:3px 0;color:#85888e;font-size:10px;line-height:1.4}
.wallet-action-box>h3{margin:4px 0 6px;font-size:25px;font-weight:850}
.confirm-wallet-btn{
  width:100%;
  min-height:46px;
  margin-top:13px;
  border:0;
  border-radius:13px;
  background:#17181a;
  color:#fff;
  font-size:11px;
  font-weight:820;
}

/* ---------- Mobile cleanup ---------- */
@media(max-width:520px){
  .wallet-page{gap:11px}
  .wallet-heading{padding-left:3px;padding-right:3px}
  .wallet-heading h2{font-size:27px}
  .wallet-bank-card{padding:16px;border-radius:21px;max-height:none}
  .wallet-card-balance h1{font-size:34px}
  .wallet-card-bottom button{min-height:38px;padding:0 12px;font-size:9px}
  .clean-subscription-card,.wallet-table-card{padding:14px;border-radius:18px}
  .subscription-summary-row>div{padding:0 8px}
  .subscription-summary-row>div:first-child{padding-left:0}
  .subscription-summary-row>div:last-child{padding-right:0}
  .subscription-summary-row strong{font-size:10px}

  /* Mobile history: remove the wide desktop-table feel. */
  .wallet-page th:nth-child(2),
  .wallet-page td:nth-child(2){display:none}
  .wallet-page th,.wallet-page td{padding:9px 7px}
  .wallet-page th:first-child,.wallet-page td:first-child{padding-left:9px}
  .wallet-page th:last-child,.wallet-page td:last-child{padding-right:9px;text-align:right}
  .wallet-page td:nth-child(3){max-width:120px}
  .wallet-page td:nth-child(3) strong,
  .wallet-page td:nth-child(3) small{
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
}

@media(max-width:360px){
  .wallet-card-bottom{gap:7px}
  .wallet-card-bottom button{padding:0 9px}
  .wallet-card-bottom button span{font-size:8.5px}
  .subscription-summary-row{grid-template-columns:1fr 1fr}
  .subscription-summary-row>div:nth-child(2){border-right:0}
  .subscription-summary-row>div:nth-child(3){grid-column:1/-1;margin-top:10px;padding:10px 0 0;border-top:1px solid #eee}
}


/* ---------- Next billing plan preview ---------- */
.next-plan-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:12px;
  padding:11px 12px;
  border:1px solid #ead99d;
  border-radius:14px;
  background:#fff9e8;
}
.next-plan-row[hidden]{display:none!important}
.next-plan-row small{
  display:block;
  color:#9d7b1e;
  font-size:7.5px;
  font-weight:850;
  letter-spacing:.1em;
}
.next-plan-row strong{
  display:block;
  margin-top:3px;
  color:#191a1d;
  font-size:10px;
  font-weight:800;
}
.next-plan-row>span{
  flex:0 0 auto;
  color:#806213;
  font-size:9px;
  font-weight:800;
  white-space:nowrap;
}

/* ---------- Plan picker ---------- */
.plan-picker{
  position:fixed;
  inset:0;
  z-index:99998;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:18px 12px max(18px,env(safe-area-inset-bottom));
  background:rgba(11,12,14,.48);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  opacity:0;
  transition:opacity .18s ease;
}
.plan-picker[hidden]{display:none!important}
.plan-picker.show{opacity:1}
.plan-picker-sheet{
  width:min(100%,520px);
  max-height:min(86vh,760px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.06);
  border-radius:24px;
  background:#fff;
  box-shadow:0 24px 70px rgba(0,0,0,.24);
  transform:translateY(18px);
  transition:transform .2s ease;
}
.plan-picker.show .plan-picker-sheet{transform:translateY(0)}
.plan-picker-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:17px 17px 13px;
  border-bottom:1px solid #ededee;
}
.plan-picker-head>div>span{
  color:#a77b00;
  font-size:8px;
  font-weight:850;
  letter-spacing:.13em;
}
.plan-picker-head h3{
  margin:4px 0 0;
  color:#17181a;
  font-size:19px;
  font-weight:830;
  letter-spacing:-.03em;
}
.plan-picker-head p{
  margin:5px 0 0;
  color:#888b91;
  font-size:9.5px;
  line-height:1.35;
}
.plan-picker-head button{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:0;
  border-radius:11px;
  background:#f1f1f3;
  color:#191a1d;
}
.plan-picker-list{
  display:grid;
  gap:8px;
  overflow:auto;
  padding:12px 13px;
  -webkit-overflow-scrolling:touch;
}
.plan-option{
  position:relative;
  display:grid;
  grid-template-columns:20px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  width:100%;
  min-height:78px;
  padding:11px 11px;
  border:1px solid #e6e6e8;
  border-radius:16px;
  background:#fff;
  color:#17181a;
  text-align:left;
}
.plan-option.selected{
  border-color:#d5ad42;
  background:#fffaf0;
  box-shadow:0 0 0 2px rgba(213,173,66,.11);
}
.plan-option-radio{
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  border:1.5px solid #c9cbd0;
  border-radius:50%;
}
.plan-option.selected .plan-option-radio{border-color:#bd9121}
.plan-option-radio i{width:8px;height:8px;border-radius:50%;background:transparent}
.plan-option.selected .plan-option-radio i{background:#bd9121}
.plan-option-copy{min-width:0}
.plan-option-copy strong{
  display:block;
  font-size:11.5px;
  font-weight:820;
  line-height:1.25;
}
.plan-option-copy small,
.plan-option-copy em{
  display:block;
  margin-top:3px;
  color:#92949a;
  font-size:8.5px;
  font-style:normal;
  font-weight:560;
  line-height:1.25;
}
.plan-option-copy em{color:#6e7177}
.plan-option-price{
  align-self:start;
  color:#17181a;
  font-size:11px;
  font-weight:850;
  white-space:nowrap;
}
.plan-option-price small{
  display:block;
  margin-top:2px;
  color:#9a9ca1;
  font-size:7px;
  font-weight:650;
  text-align:right;
}
.plan-option-badges{
  position:absolute;
  right:10px;
  bottom:9px;
  display:flex;
  gap:5px;
}
.plan-option-badges b{
  padding:3px 6px;
  border-radius:999px;
  font-size:6.8px;
  font-weight:850;
  letter-spacing:.05em;
}
.current-badge{background:#eff0f2;color:#5f6268}
.next-badge{background:#f7e7aa;color:#795a08}
.plan-picker-note{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 13px 10px;
  padding:10px 11px;
  border-radius:12px;
  background:#f6f6f7;
  color:#72757b;
  font-size:8.5px;
  line-height:1.3;
}
.plan-picker-note i{color:#a77b00}
.confirm-plan-selection{
  min-height:48px;
  margin:0 13px 13px;
  border:0;
  border-radius:14px;
  background:#151517;
  color:#fff;
  font-size:10.5px;
  font-weight:820;
}
.confirm-plan-selection:disabled{opacity:.45}


/* ---------- Bank transfer / Wallet ID ---------- */
.bank-transfer-only{
  padding:12px;
  border:1px solid #e5e5e8;
  border-radius:14px;
  background:#f8f8f9;
}
.bank-transfer-only>span{
  display:flex;
  align-items:center;
  gap:7px;
  color:#151619;
  font-size:9px;
  font-weight:850;
  letter-spacing:.08em;
}
.bank-transfer-only>p{
  margin:7px 0 10px;
  color:#72757b;
  font-size:10px;
  line-height:1.45;
}
.topup-wallet-id-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 10px;
  border:1px solid #dedfe2;
  border-radius:11px;
  background:#fff;
}
.topup-wallet-id-row small{
  display:block;
  margin-bottom:2px;
  color:#92949a;
  font-size:8px;
  font-weight:700;
}
.topup-wallet-id-row strong{
  color:#151619;
  font-size:15px;
  font-weight:850;
  letter-spacing:.08em;
}
.topup-wallet-id-row button{
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  border:1px solid #e0e1e4;
  border-radius:10px;
  background:#fff;
  color:#1b1c1f;
}

.topup-slip-upload{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.topup-slip-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%;
  min-height:44px;
  padding:0 12px;
  border:1px dashed #d2b15a;
  border-radius:12px;
  background:#fffaf0;
  color:#755912;
  font-size:10px;
  font-weight:780;
}
.topup-slip-name{
  padding:10px 12px;
  border:1px solid #e2e3e6;
  border-radius:11px;
  background:#fff;
  color:#64676d;
  font-size:10px;
  line-height:1.35;
  word-break:break-word;
}

/* =========================================================
   WALLET PREMIUM CLEANUP V2 — 2026-09-14
   Smaller wallet card + lighter subscription hierarchy.
========================================================= */
body:has(.wallet-page) .page-content{
  padding:14px 14px 24px;
}

.wallet-page{
  gap:14px;
}

.wallet-heading{
  padding:2px 2px 0;
}
.wallet-heading h2{
  margin-top:4px;
  font-size:26px;
  line-height:1.05;
}
.wallet-heading p{
  margin-top:5px;
  font-size:10.5px;
}

/* True wallet-card proportion — intentionally smaller than content cards. */
.wallet-bank-card{
  width:min(100%,312px);
  aspect-ratio:auto;
  height:174px;
  margin:4px auto 1px;
  padding:15px 16px 14px;
  border-radius:20px;
  background:
    radial-gradient(circle at 96% 0%,rgba(211,172,68,.28),transparent 34%),
    linear-gradient(145deg,#111214 0%,#17181a 62%,#25231c 100%);
  box-shadow:0 12px 26px rgba(17,19,23,.14);
}
.wallet-bank-card::after{
  right:-78px;
  bottom:-108px;
  width:205px;
  height:205px;
  opacity:.75;
}
.wallet-card-topline>div:first-child span{
  font-size:8px;
  letter-spacing:.17em;
}
.wallet-card-topline>div:first-child strong{
  display:inline-flex;
  align-items:center;
  gap:4px;
  width:max-content;
  margin-top:5px;
  padding:3px 7px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:999px;
  background:rgba(255,255,255,.045);
  color:#9fa1a6;
  font-size:7px;
  letter-spacing:.07em;
}
.wallet-card-topline .wallet-id-line b{
  margin-left:0;
  color:#f4f4f4;
  font-size:8px;
}
.wallet-card-mark{
  width:35px;
  height:35px;
  border-radius:11px;
  font-size:15px;
}
.wallet-card-balance span{
  margin-bottom:3px;
  font-size:8.5px;
}
.wallet-card-balance h1{
  font-size:28px;
  letter-spacing:-.045em;
}
.wallet-card-bottom{
  justify-content:flex-start;
  gap:8px;
}
.wallet-card-bottom button{
  min-height:34px;
  padding:0 11px;
  border-radius:10px;
  font-size:8.5px;
  font-weight:780;
}
.wallet-card-bottom button:first-child{
  background:#e8c24e;
  color:#17181a;
  border-color:#e8c24e;
}
.wallet-card-bottom button:last-child{
  background:rgba(255,255,255,.055);
  border-color:rgba(255,255,255,.13);
  color:#f5f5f5;
}

/* Main subscription surface: flatter and closer to Home cards. */
.clean-subscription-card{
  padding:16px;
  border:1px solid #ebebed;
  border-radius:20px;
  background:#fff;
  box-shadow:0 7px 20px rgba(17,19,23,.035);
}
.sub-top{
  align-items:center;
}
.sub-top p{
  margin-bottom:3px;
  font-size:8px;
  letter-spacing:.12em;
}
.sub-top h2{
  font-size:20px;
}
.status{
  min-height:25px;
  padding:0 9px;
  font-size:7.5px;
}

/* Metrics look like one quiet strip, not a boxed table. */
.subscription-summary-row{
  gap:8px;
  margin-top:13px;
  padding:0;
  border:0;
}
.subscription-summary-row>div{
  min-height:54px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:8px 9px;
  border:0;
  border-radius:12px;
  background:#f7f7f8;
}
.subscription-summary-row>div:first-child,
.subscription-summary-row>div:last-child{
  padding-left:9px;
  padding-right:9px;
}
.subscription-summary-row small{
  font-size:7.6px;
}
.subscription-summary-row strong{
  margin-top:3px;
  font-size:10px;
}

.subscription-meta-row{
  gap:7px;
  margin-top:10px;
}
.subscription-meta-row span{
  flex:1 1 0;
  min-width:0;
  justify-content:center;
  min-height:34px;
  padding:0 8px;
  border-radius:10px;
  background:#fafafa;
  color:#6e7076;
  font-size:8px;
  white-space:nowrap;
}
.subscription-meta-row i{
  font-size:8px;
}
.subscription-feature-line{
  margin-top:8px;
  padding:8px 10px;
  border:1px solid #f1e8c8;
  border-radius:10px;
  background:#fffaf0;
  color:#755b15;
  font-size:8.2px;
  text-align:center;
}

/* Scheduled plan is an understated line, not another card. */
.next-plan-row{
  position:relative;
  margin-top:9px;
  padding:9px 10px 9px 13px;
  border:0;
  border-radius:10px;
  background:#fafafa;
}
.next-plan-row::before{
  content:"";
  position:absolute;
  left:0;
  top:9px;
  bottom:9px;
  width:3px;
  border-radius:10px;
  background:#c7a23d;
}
.next-plan-row small{
  color:#9b7d29;
  font-size:6.8px;
}
.next-plan-row strong{
  margin-top:2px;
  font-size:9px;
}
.next-plan-row>span{
  color:#6e5a22;
  font-size:8px;
}

.view-plans-btn{
  min-height:40px;
  margin-top:9px;
  border:1px solid #e6e6e8;
  border-radius:11px;
  background:#fff;
  color:#1a1b1e;
  font-size:9px;
}
.view-plans-btn i{
  color:#aa8322;
  font-size:9px;
}

/* Transaction block sits visually lower and quieter. */
.wallet-table-card{
  padding:14px;
  border-radius:18px;
  box-shadow:none;
}
.table-title h3{
  font-size:16px;
}
.table-title select{
  min-height:32px;
  border-radius:9px;
  background:#fff;
}
.table-wrap{
  margin-top:10px;
  border-radius:12px;
}

@media(max-width:520px){
  .wallet-bank-card{
    width:min(100%,306px);
    height:170px;
    padding:14px 15px 13px;
    border-radius:19px;
  }
  .wallet-card-balance h1{font-size:27px}
  .wallet-card-bottom button{min-height:33px;padding:0 10px;font-size:8.2px}
  .clean-subscription-card,.wallet-table-card{padding:14px;border-radius:18px}
  .subscription-summary-row{gap:6px}
  .subscription-summary-row>div{min-height:51px;padding:7px}
  .subscription-summary-row>div:first-child,.subscription-summary-row>div:last-child{padding:7px}
  .subscription-summary-row strong{font-size:9.5px}
}

/* =========================================================
   WALLET EDGE ALIGNMENT V3 — 2026-09-14
   Match the wallet card to the exact content-card edges.
========================================================= */
.wallet-bank-card{
  width:100%;
  max-width:none;
  margin:0;
  height:174px;
}

/* =========================================================
   SUBSCRIPTION PAYMENT STATES
========================================================= */
.subscription-payment-state{
  gap:12px;
  padding:5px 0 2px;
}
.subscription-state-icon{
  display:grid;
  width:44px;
  height:44px;
  place-items:center;
  border-radius:14px;
  background:#f2f2f3;
  color:#25262a;
  font-size:16px;
}
.subscription-state-icon.info{background:#f8f2df;color:#9a7214}
.subscription-state-icon.success{background:#eef7f0;color:#28783e}
.subscription-state-icon.warning{background:#fff3e8;color:#b05d16}
.subscription-state-icon.ready{background:#f8efcf;color:#8c6810}
.subscription-state-copy strong{
  display:block;
  color:#17181a;
  font-size:16px;
  font-weight:830;
  letter-spacing:-.02em;
}
.subscription-state-copy p{
  margin:5px 0 0;
  color:#85888e;
  font-size:10px;
  line-height:1.45;
}
.subscription-payment-details{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  padding:10px;
  border-radius:15px;
  background:#f7f7f8;
}
.subscription-payment-details[hidden]{display:none!important}
.subscription-payment-details>div{
  min-width:0;
  padding:9px 10px;
  border-radius:11px;
  background:#fff;
}
.subscription-payment-details span{
  display:block;
  color:#97999e;
  font-size:8px;
  font-weight:680;
}
.subscription-payment-details strong{
  display:block;
  margin-top:4px;
  overflow:hidden;
  color:#1b1c1f;
  font-size:11px;
  font-weight:820;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#subscriptionShortRow strong{color:#b45a18}

/* v863: same heading proportions as Invitations and Staff. */
#pageContent .wallet-heading-v863{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;justify-content:initial;gap:11px;margin:0;padding:4px 0;border:0;background:transparent;box-shadow:none}
#pageContent .wallet-heading-v863 .wallet-back-v863{box-sizing:border-box;width:48px;height:48px;min-width:48px;display:grid;place-items:center;border:1px solid #e1e3e6;border-radius:16px;background:#fff;color:#74777e;font-size:18px;text-decoration:none;box-shadow:none}
#pageContent .wallet-title-v863{min-width:0}
#pageContent .wallet-heading-v863 .wallet-eyebrow{display:block;margin:0 0 5px;color:#9a7626;font-size:9px;font-weight:850;letter-spacing:.18em}
#pageContent .wallet-heading-v863 h2{margin:0;font-family:inherit;font-size:24px;font-weight:850;line-height:1.1;letter-spacing:-.04em}
#pageContent .wallet-heading-v863 p{margin:5px 0 0;color:#989ba2;font-size:9px;font-weight:400;line-height:1.4;letter-spacing:normal}
#pageContent .wallet-back-v863:focus-visible{outline:2px solid #b89642;outline-offset:3px}
@media(max-width:380px){#pageContent .wallet-heading-v863{grid-template-columns:40px minmax(0,1fr);gap:8px}#pageContent .wallet-heading-v863 .wallet-back-v863{width:40px;min-width:40px;height:44px;border-radius:13px}#pageContent .wallet-heading-v863 h2{font-size:22px}}

/* v900 — black and gold wallet with physical card proportions. */
#pageContent .wallet-bank-card{width:100%;max-width:none;height:auto;min-height:0;max-height:none;aspect-ratio:1.586;margin:0;padding:20px;border-radius:17px;border:1px solid #333129;display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:radial-gradient(ellipse at 100% 0%,rgba(175,141,54,.28),transparent 60%),linear-gradient(135deg,#111214,#20201d);box-shadow:0 12px 25px rgba(18,19,22,.14);overflow:hidden}
#pageContent .wallet-bank-card::after{right:-80px;bottom:-120px;width:260px;height:260px;border-color:rgba(198,167,91,.12);box-shadow:0 0 0 28px rgba(198,167,91,.03),0 0 0 58px rgba(198,167,91,.025);opacity:1}
#pageContent .wallet-card-topline{align-items:flex-start}
#pageContent .wallet-card-topline>div:first-child span{font-size:11px;font-weight:700;letter-spacing:.16em;color:#d8b75e}
#pageContent .wallet-card-topline .wallet-id-line{margin-top:9px;padding:0;border:0;background:none;color:#989994;font-size:10px;font-weight:500;letter-spacing:.1em}
#pageContent .wallet-card-topline .wallet-id-line b{color:#e9e5d9;font-size:12px;font-weight:600;letter-spacing:.12em}
#pageContent .wallet-card-mark{width:38px;height:30px;margin-top:2px;border:1px solid #c6b06e;border-radius:6px;background:linear-gradient(135deg,#e6d49c,#aa8b45,#dec587);color:#786535;font-size:22px;box-shadow:inset 0 1px 1px #fff6}
#pageContent .wallet-card-balance{position:relative;z-index:1;margin-top:auto;padding-top:20px}
#pageContent .wallet-card-balance span{font-size:11px;color:#b6b5af;margin-bottom:5px}
#pageContent .wallet-card-balance h1{font-size:34px;line-height:1.15;font-weight:700;letter-spacing:-.03em;margin:0;color:#fff}
#pageContent .wallet-card-footer{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;margin-top:18px;color:#a5a49e;font-size:9px;letter-spacing:.12em;text-transform:uppercase}
#pageContent .wallet-card-footer strong{font-size:13px;color:#d8b75e;letter-spacing:.15em;font-weight:700}
#pageContent .wallet-page>.wallet-card-bottom{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:1px 0 3px}
#pageContent .wallet-page>.wallet-card-bottom button{min-height:44px;border-radius:12px;padding:10px 8px;font-size:12px;font-weight:650;justify-content:center;gap:7px}
#pageContent .wallet-page>#walletTopupBtn,#pageContent .wallet-page>.wallet-card-bottom #walletTopupBtn{background:#b79a4e;border:1px solid #b79a4e;color:#fff}
#pageContent .wallet-page>.wallet-card-bottom #paySubscriptionBtn{background:#fff;border:1px solid #e3e4e7;color:#282a2e}
@media(max-width:360px){#pageContent .wallet-bank-card{padding:16px}#pageContent .wallet-card-balance h1{font-size:30px}#pageContent .wallet-card-footer{margin-top:12px}}

/* v901 — shorter card with a quieter gold finish. */
#pageContent .wallet-bank-card{aspect-ratio:1.98;padding:18px 20px;background:radial-gradient(ellipse at 100% 0%,rgba(175,141,54,.15),transparent 60%),linear-gradient(135deg,#111214,#20201d);box-shadow:0 8px 20px rgba(18,19,22,.12)}
#pageContent .wallet-card-balance{padding-top:12px}
#pageContent .wallet-card-footer{margin-top:12px}
#pageContent .wallet-card-mark{position:relative;background:linear-gradient(135deg,#d9c38b,#b39550);border-color:#bca363;box-shadow:inset 0 1px 1px #fff3}
#pageContent .wallet-card-mark i{display:none}
#pageContent .wallet-card-mark::before{content:"";position:absolute;inset:5px 10px;border:1px solid #7e6939;border-radius:4px}
#pageContent .wallet-card-mark::after{content:"";position:absolute;inset:0;background:linear-gradient(#7e6939,#7e6939) left center/10px 1px no-repeat,linear-gradient(#7e6939,#7e6939) right center/10px 1px no-repeat,linear-gradient(#7e6939,#7e6939) center top/1px 5px no-repeat,linear-gradient(#7e6939,#7e6939) center bottom/1px 5px no-repeat}
@media(max-width:360px){#pageContent .wallet-bank-card{padding:16px}#pageContent .wallet-card-footer{margin-top:8px}}

/* v902 — original black finish and detailed gold chip. */
#pageContent .wallet-bank-card{background:radial-gradient(circle at 96% 0%,rgba(211,172,68,.28),transparent 34%),linear-gradient(145deg,#111214 0%,#17181a 62%,#25231c 100%)}
#pageContent .wallet-card-mark{width:38px;height:30px;border:1px solid #d0b66f;border-radius:7px;background:linear-gradient(135deg,#eadca9 0%,#b69750 55%,#e2cb8b 100%);box-shadow:inset 0 1px 2px #fff6;color:#7d6936;font-size:23px}
#pageContent .wallet-card-mark i{display:block}
#pageContent .wallet-card-mark::before,#pageContent .wallet-card-mark::after{display:none}
#pageContent .wallet-card-footer{justify-content:flex-end}

/* v903 — lower card arcs and balance placement. */
#pageContent .wallet-bank-card::after{bottom:-190px}
#pageContent .wallet-card-balance{transform:translateY(8px)}

/* v904 — two lower arcs, balance anchored near the card bottom. */
#pageContent .wallet-bank-card::after{width:300px;height:220px;right:-110px;bottom:-160px;border:1px solid rgba(198,167,91,.10);box-shadow:0 0 0 23px rgba(198,167,91,.025),0 0 0 24px rgba(198,167,91,.08);opacity:1}
#pageContent .wallet-card-balance{position:absolute;left:20px;bottom:22px;margin:0;padding:0;transform:none}
#pageContent .wallet-card-footer{position:absolute;right:20px;bottom:18px;margin:0}
@media(max-width:360px){#pageContent .wallet-card-balance{left:16px;bottom:18px}#pageContent .wallet-card-footer{right:16px;bottom:16px}}

/* v905 — two transparent curve strokes, without filled rings. */
#pageContent .wallet-bank-card::after{
 content:""!important;position:absolute!important;display:block!important;
 left:auto!important;top:auto!important;right:0!important;bottom:0!important;
 width:220px!important;height:130px!important;
 border:0!important;border-radius:0!important;box-shadow:none!important;
 background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='130' viewBox='0 0 220 130'%3E%3Cpath d='M15 145 C25 55 115 18 235 30 M45 145 C55 80 135 48 235 58' fill='none' stroke='%23c6a75b' stroke-opacity='.12' stroke-width='1'/%3E%3C/svg%3E") right bottom/220px 130px no-repeat!important;
 opacity:1!important;transform:none!important;pointer-events:none!important;
}

/* v906 — clean wallet card without decorative arcs. */
#pageContent .wallet-bank-card::after{display:none!important;content:none!important}

/* v907 — each parlour's own wallet card name. */
#pageContent .wallet-card-topline>div:first-child{min-width:0;flex:1}
#pageContent #walletParlourName{text-transform:uppercase;overflow-wrap:anywhere;line-height:1.35;letter-spacing:.1em}
#pageContent .wallet-card-mark{flex-shrink:0}

/* v908 — small corner arcs and stable, evenly sized card identity. */
#pageContent #walletCardIdentity[aria-busy="true"]{visibility:hidden}
#pageContent .wallet-card-topline .wallet-id-line,
#pageContent .wallet-card-topline .wallet-id-line b{font-size:12px;line-height:1.4;letter-spacing:.1em;font-weight:600}
#pageContent .wallet-bank-card::after{
 content:""!important;display:block!important;
 width:120px!important;height:78px!important;
 background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='78' viewBox='0 0 120 78'%3E%3Cpath d='M8 86 C16 34 65 12 130 18 M30 86 C38 53 78 34 130 40' fill='none' stroke='%23c6a75b' stroke-opacity='.13' stroke-width='1'/%3E%3C/svg%3E") right bottom/120px 78px no-repeat!important;
}

/* v909 — compact soft arc bands beside the CUEVA mark. */
#pageContent .wallet-bank-card::after{
 width:170px!important;height:110px!important;
 background:transparent url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22170%22%20height%3D%22110%22%20viewBox%3D%220%200%20170%20110%22%3E%3Ccircle%20cx%3D%22165%22%20cy%3D%22125%22%20r%3D%22118%22%20fill%3D%22none%22%20stroke%3D%22%23c6a75b%22%20stroke-opacity%3D%22.025%22%20stroke-width%3D%2224%22%2F%3E%3Ccircle%20cx%3D%22165%22%20cy%3D%22125%22%20r%3D%2290%22%20fill%3D%22none%22%20stroke%3D%22%23c6a75b%22%20stroke-opacity%3D%22.04%22%20stroke-width%3D%2224%22%2F%3E%3Ccircle%20cx%3D%22165%22%20cy%3D%22125%22%20r%3D%2278%22%20fill%3D%22none%22%20stroke%3D%22%23c6a75b%22%20stroke-opacity%3D%22.12%22%20stroke-width%3D%22.7%22%2F%3E%3C%2Fsvg%3E") right bottom/170px 110px no-repeat!important;
}

/* v910 — slightly larger adjoining arc bands, without a gap. */
#pageContent .wallet-bank-card::after{
 width:195px!important;height:130px!important;
 background:transparent url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22195%22%20height%3D%22130%22%20viewBox%3D%220%200%20195%20130%22%3E%3Ccircle%20cx%3D%22190%22%20cy%3D%22145%22%20r%3D%22138%22%20fill%3D%22none%22%20stroke%3D%22%23c6a75b%22%20stroke-opacity%3D%22.025%22%20stroke-width%3D%2228%22%2F%3E%3Ccircle%20cx%3D%22190%22%20cy%3D%22145%22%20r%3D%22110%22%20fill%3D%22none%22%20stroke%3D%22%23c6a75b%22%20stroke-opacity%3D%22.04%22%20stroke-width%3D%2228%22%2F%3E%3Ccircle%20cx%3D%22190%22%20cy%3D%22145%22%20r%3D%2296%22%20fill%3D%22none%22%20stroke%3D%22%23c6a75b%22%20stroke-opacity%3D%22.12%22%20stroke-width%3D%22.7%22%2F%3E%3C%2Fsvg%3E") right bottom/195px 130px no-repeat!important;
}

/* v911 — broad connected arcs matching the reference proportions. */
#pageContent .wallet-bank-card::after{
 width:60%!important;height:80%!important;
 background:transparent url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22240%22%20height%3D%22220%22%20viewBox%3D%220%200%20240%20220%22%20preserveAspectRatio%3D%22none%22%3E%3Ccircle%20cx%3D%22200%22%20cy%3D%22215%22%20r%3D%22180%22%20fill%3D%22none%22%20stroke%3D%22%23c6a75b%22%20stroke-opacity%3D%22.025%22%20stroke-width%3D%2230%22%2F%3E%3Ccircle%20cx%3D%22200%22%20cy%3D%22215%22%20r%3D%22150%22%20fill%3D%22none%22%20stroke%3D%22%23c6a75b%22%20stroke-opacity%3D%22.04%22%20stroke-width%3D%2230%22%2F%3E%3Ccircle%20cx%3D%22200%22%20cy%3D%22215%22%20r%3D%22135%22%20fill%3D%22none%22%20stroke%3D%22%23c6a75b%22%20stroke-opacity%3D%22.12%22%20stroke-width%3D%22.7%22%2F%3E%3C%2Fsvg%3E") right bottom/100% 100% no-repeat!important;
}

/* v912 — preserve circular geometry and uniform adjoining band widths. */
#pageContent .wallet-bank-card::after{
 width:60%!important;height:auto!important;aspect-ratio:3 / 2!important;
 background:transparent url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22240%22%20height%3D%22160%22%20viewBox%3D%220%200%20240%20160%22%3E%3Ccircle%20cx%3D%22200%22%20cy%3D%22180%22%20r%3D%22160%22%20fill%3D%22none%22%20stroke%3D%22%23c6a75b%22%20stroke-opacity%3D%22.025%22%20stroke-width%3D%2230%22%2F%3E%3Ccircle%20cx%3D%22200%22%20cy%3D%22180%22%20r%3D%22130%22%20fill%3D%22none%22%20stroke%3D%22%23c6a75b%22%20stroke-opacity%3D%22.04%22%20stroke-width%3D%2230%22%2F%3E%3Ccircle%20cx%3D%22200%22%20cy%3D%22180%22%20r%3D%22115%22%20fill%3D%22none%22%20stroke%3D%22%23c6a75b%22%20stroke-opacity%3D%22.12%22%20stroke-width%3D%22.7%22%2F%3E%3C%2Fsvg%3E") right bottom/100% 100% no-repeat!important;
}

/* v913 — wallet action sheets, consistent with the black and gold card. */
#parlourWalletModal{padding:12px 0 0;background:rgba(12,12,13,.48)}
#parlourWalletModal .wallet-modal-box{box-sizing:border-box;width:min(100%,480px);max-height:90vh;max-height:90dvh;padding:10px 20px calc(20px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0}
#parlourWalletModal .modal-head{align-items:center;padding:6px 0 18px;border-bottom:1px solid #eee;margin-bottom:18px}
#parlourWalletModal .modal-head h3{font-size:21px;font-weight:700;letter-spacing:-.02em}
#parlourWalletModal .modal-head p{font-size:12px;line-height:1.5;color:#7c7f85}
#parlourWalletModal .modal-head button{flex-shrink:0;width:40px;height:40px;border-radius:50%;font-size:17px}
#parlourWalletModal .wallet-action-box{gap:12px}
#parlourWalletModal .bank-transfer-only{padding:16px;border:1px solid #333129;border-radius:16px;background:radial-gradient(circle at 100% 0%,#b79a4e25,transparent 65%),#17181a}
#parlourWalletModal .bank-transfer-only>span{color:#d8b75e;font-size:10px;letter-spacing:.1em}
#parlourWalletModal .bank-transfer-only>p{font-size:12px;line-height:1.5;color:#b8b9bd;margin:10px 0 14px}
#parlourWalletModal .topup-wallet-id-row{padding:0;border:0;border-radius:0;background:transparent}
#parlourWalletModal .topup-wallet-id-row small{font-size:10px;color:#aaa; margin-bottom:5px}
#parlourWalletModal .topup-wallet-id-row strong{font-size:18px;font-weight:600;color:#fff}
#parlourWalletModal .topup-wallet-id-row button{width:40px;height:40px;background:#ffffff0c;border-color:#ffffff26;color:#d8b75e}
#parlourWalletModal .wallet-action-box label{font-size:12px;color:#55585e;margin-top:4px;font-weight:600}
#parlourWalletModal .wallet-amount-field{display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid #dedfe1;border-radius:13px;background:#fafafa}
#parlourWalletModal .wallet-amount-field>span{font-size:18px;font-weight:600;color:#8c7130}
#parlourWalletModal .wallet-amount-field input{min-width:0;min-height:52px;padding:12px 0;border:0;background:transparent;font-size:20px;font-weight:600;box-shadow:none}
#parlourWalletModal .wallet-amount-field:focus-within{border-color:#b79a4e;box-shadow:0 0 0 3px #b79a4e15}
#parlourWalletModal .topup-slip-btn{min-height:58px;border-color:#cfbd87;background:#faf6e9;color:#82692e;font-size:14px;font-weight:600}
#parlourWalletModal .topup-slip-btn i{font-size:20px}
#parlourWalletModal .topup-slip-name{padding:0 2px;border:0;font-size:12px;color:#85888e;background:transparent}
#parlourWalletModal .wallet-action-box>p{font-size:12px;line-height:1.55;color:#85888e}
#parlourWalletModal .confirm-wallet-btn{min-height:48px;margin-top:20px;border-radius:13px;background:#b79a4e;font-size:14px;font-weight:700;color:#fff}
#parlourWalletModal .confirm-wallet-btn:disabled{opacity:.5}
#parlourWalletModal .subscription-payment-state{padding:0;gap:14px}
#parlourWalletModal .subscription-state-icon{width:48px;height:48px;border-radius:15px;font-size:20px}
#parlourWalletModal .subscription-state-icon.ready,#parlourWalletModal .subscription-state-icon.info{background:#faf6e9;color:#95762f}
#parlourWalletModal .subscription-state-copy strong{font-size:18px;font-weight:700}
#parlourWalletModal .subscription-state-copy p{font-size:13px;line-height:1.55;color:#7c7f85}
#parlourWalletModal .subscription-payment-details{grid-template-columns:1fr;gap:0;padding:0 14px;border:1px solid #e5e5e8;border-radius:15px;background:#fff}
#parlourWalletModal .subscription-payment-details>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid #eee;border-radius:0;background:transparent}
#parlourWalletModal .subscription-payment-details>div:last-child{border-bottom:0}
#parlourWalletModal .subscription-payment-details span{font-size:12px;color:#85888e;flex-shrink:0}
#parlourWalletModal .subscription-payment-details strong{margin:0;font-size:14px;font-weight:600;white-space:normal;overflow:visible;text-overflow:clip;text-align:right}
#parlourWalletModal #subscriptionPayAmount{font-size:20px;color:#8c7130}
@media(min-width:600px){#parlourWalletModal{align-items:center;padding:20px}#parlourWalletModal .wallet-modal-box{border-radius:24px}}

#parlourWalletModal .subscription-payment-details>div[hidden]{display:none!important}

/* v914 — use the Credit Account and Edit action colours. */
#pageContent .wallet-page>.wallet-card-bottom #walletTopupBtn{background:#f6edda;border-color:#f6edda;color:#80611e;box-shadow:none}
#pageContent .wallet-page>.wallet-card-bottom #paySubscriptionBtn{background:#f0f1f3;border-color:#f0f1f3;color:#5d6169;box-shadow:none}

/* v915 — current subscription summary and benefit-led plan comparison. */
#pageContent .clean-subscription-card{padding:20px;border-radius:20px;background:#fff;border:1px solid #e5e5e8;box-shadow:0 8px 25px #17181a04}
#pageContent .clean-subscription-card .sub-top{align-items:flex-start;gap:12px}
#pageContent .clean-subscription-card .sub-top>div{min-width:0}
#pageContent .clean-subscription-card .sub-top p{font-size:10px;letter-spacing:.14em;color:#9c8037;margin:0 0 8px}
#pageContent .clean-subscription-card .sub-top h2{font-size:20px;line-height:1.35;letter-spacing:-.025em;margin:0}
#pageContent .clean-subscription-card .subscription-summary-row{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:18px 0;padding:0;border:0;background:transparent}
#pageContent .clean-subscription-card .subscription-summary-row>div{min-height:0;padding:14px 0;border:0;border-radius:0;background:transparent;margin:0;grid-column:auto}
#pageContent .clean-subscription-card .subscription-summary-row>div:first-child{grid-column:1/-1;padding:0 0 18px;margin:0 0 2px;border-bottom:1px solid #eee}
#pageContent .clean-subscription-card .subscription-summary-row small{font-size:11px;color:#8a8d94;font-weight:500}
#pageContent .clean-subscription-card .subscription-summary-row strong{font-size:14px;line-height:1.4;margin-top:5px;white-space:normal}
#pageContent .clean-subscription-card .subscription-summary-row>div:first-child strong{font-size:28px;font-weight:700;color:#17181a;letter-spacing:-.025em}
#pageContent .clean-subscription-card .subscription-summary-row>div:first-child strong::after{content:" / month";font-size:12px;font-weight:500;color:#8a8d94;letter-spacing:0}
#pageContent .clean-subscription-card .subscription-meta-row{display:flex;flex-direction:column;gap:12px;margin:0;padding:16px 0 0;border-top:1px solid #eee}
#pageContent .clean-subscription-card .subscription-meta-row>span{justify-content:flex-start;padding:0;min-height:0;border:0;border-radius:0;background:transparent;font-size:12px;color:#656970;text-align:left;line-height:1.5;flex-wrap:wrap}
#pageContent .clean-subscription-card .subscription-meta-row b{font-size:12px;color:#292b2f;font-weight:600}
#pageContent .clean-subscription-card .subscription-meta-row i{color:#9c8037;width:18px;font-size:14px}
#pageContent .clean-subscription-card .subscription-feature-line{padding:0;margin:12px 0 18px;border:0;border-radius:0;background:transparent;text-align:left;color:#656970;font-size:12px;font-weight:500}
#pageContent .clean-subscription-card .subscription-feature-line::before{content:"✓";display:inline-block;width:25px;color:#9c8037;font-size:16px}
#pageContent .clean-subscription-card .view-plans-btn{width:100%;min-height:46px;padding:0 16px;border:0;border-radius:23px;background:#f6edda;color:#80611e;font-size:13px;font-weight:650}
#pageContent .clean-subscription-card .extra-staff-btn{font-size:13px}
#planPicker{padding:12px 0 0}
#planPicker .plan-picker-sheet{width:min(100%,560px);max-height:94vh;max-height:94dvh;border-radius:24px 24px 0 0;box-sizing:border-box}
#planPicker .plan-picker-head{padding:18px 20px;align-items:center}
#planPicker .plan-picker-head h3{font-size:21px;font-weight:700}
#planPicker .plan-picker-head p{font-size:12px;line-height:1.5;max-width:380px}
#planPicker .plan-picker-head button{width:40px;height:40px;border-radius:50%;font-size:16px}
#planPicker .plan-picker-list{padding:18px 20px;gap:16px;min-height:0;flex:1}
#planPicker .plan-option{display:block;min-height:0;padding:20px;border-radius:20px;background:#fff;border:1px solid #e4e5e8;box-shadow:none;text-align:left}
#planPicker .plan-option.selected{background:#fffcf5;border-color:#c7aa62;box-shadow:0 0 0 1px #c7aa6225}
#planPicker .plan-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:16px;border-bottom:1px solid #eaeaea}
#planPicker .plan-card-heading h4{font-size:18px;line-height:1.35;letter-spacing:-.02em;margin:0;font-weight:700;flex:1}
#planPicker .plan-option-badges{display:flex;position:static;grid-column:auto;margin:0;flex-shrink:0}
#planPicker .plan-option-badges:empty{display:none}
#planPicker .plan-option-badges b{font-size:8px;padding:5px 7px;white-space:nowrap}
#planPicker .plan-card-price{font-size:25px;font-weight:700;margin:17px 0 14px;color:#17181a;letter-spacing:-.02em}
#planPicker .plan-card-price small{font-size:12px;font-weight:500;color:#888b91;letter-spacing:0}
#planPicker .plan-card-benefits{list-style:none;padding:0;margin:0;display:grid;gap:11px}
#planPicker .plan-card-benefits li{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.45;color:#656970}
#planPicker .plan-card-benefits i{width:16px;margin-top:2px;color:#a18438}
#planPicker .plan-card-upgrade{margin:14px 0 0;font-size:12px;line-height:1.5;color:#9c8037}
#planPicker .plan-card-select{display:flex;justify-content:center;align-items:center;gap:8px;width:100%;min-height:44px;margin:20px 0 0;padding:10px 14px;border:0;border-radius:24px;background:#f0f1f3;color:#5d6169;font:inherit;font-size:13px;font-weight:650;cursor:pointer}
#planPicker .selected .plan-card-select{background:#f6edda;color:#80611e}
#planPicker .plan-picker-note{font-size:11px;line-height:1.5;margin:0 20px 12px;padding:0;background:transparent}
#planPicker .confirm-plan-selection{flex-shrink:0;font-size:13px;min-height:46px;border-radius:24px;margin:0 20px calc(16px + env(safe-area-inset-bottom));background:#b79a4e}
@media(min-width:600px){#planPicker{padding:20px;align-items:center}#planPicker .plan-picker-sheet{border-radius:24px;max-height:90vh}}

#pageContent .clean-subscription-card .subscription-feature-line::before{content:"•"}
#pageContent .clean-subscription-card #extraStaffPurchaseBtn{padding:15px 0!important;border:0!important;border-top:1px solid #eee!important;border-radius:0!important;font-size:13px!important;flex-wrap:wrap;box-shadow:none!important}
#pageContent .clean-subscription-card #extraStaffPurchaseBtn>span:last-child{font-size:12px!important}

/* v916 — full-page plans and a separate final confirmation sheet. */
#planPicker{padding:0!important;align-items:stretch!important;background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}
#planPicker .plan-picker-sheet{width:100%!important;max-width:none!important;height:100%;max-height:none!important;border:0;border-radius:0!important;box-shadow:none;transform:none!important;overflow:hidden;padding:env(safe-area-inset-top) 0 0;box-sizing:border-box;background:#fff}
#planPicker .plans-page-header{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;min-height:56px;padding:0 16px;border-bottom:1px solid #ececee;flex-shrink:0;background:#fff}
#planPicker .plans-page-header h3{margin:0;text-align:center;font-size:20px;font-weight:650;color:#17181a}
#planPicker .plans-page-header button{width:44px;height:44px;border:0;border-radius:0;background:transparent;color:#292b2f;font-size:19px;cursor:pointer}
#planPicker .plans-page-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:24px 16px calc(24px + env(safe-area-inset-bottom));box-sizing:border-box}
#planPicker .plans-page-intro,#planPicker .plan-picker-list,#planPicker .plans-page-note{max-width:560px;margin-left:auto;margin-right:auto}
#planPicker .plans-page-intro{padding:0 4px 22px}
#planPicker .plans-page-intro>span{font-size:10px;letter-spacing:.14em;font-weight:700;color:#9c8037}
#planPicker .plans-page-intro h4{font-size:24px;line-height:1.3;letter-spacing:-.02em;margin:9px 0;color:#17181a}
#planPicker .plans-page-intro p{font-size:13px;line-height:1.5;color:#8a8d94;margin:0}
#planPicker .plan-picker-list{display:block!important;padding:0!important;overflow:visible!important;flex:none!important;height:auto!important;max-height:none!important}
#planPicker .plan-option{box-sizing:border-box!important;height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important;position:relative!important;display:block!important;width:100%!important;margin:0 0 18px;padding:20px!important}
#planPicker .plan-card-heading{height:auto!important;min-height:0;flex-wrap:wrap}
#planPicker .plan-card-heading h4{font-size:18px}
#planPicker .plan-card-price{margin:18px 0;font-size:26px}
#planPicker .plan-card-benefits{gap:13px}
#planPicker .plan-card-benefits li{font-size:13px;line-height:1.5}
#planPicker .plan-card-benefits i.fa-xmark{color:#979aa1}
#planPicker .plan-card-select{margin-top:22px;min-height:46px;box-sizing:border-box}
#planPicker .plans-page-note{font-size:12px;line-height:1.6;color:#8a8d94;padding:4px}
#planPicker .plan-confirm-overlay{position:absolute;inset:0;z-index:2;display:flex;align-items:flex-end;justify-content:center;padding:0;background:#1118;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
#planPicker .plan-confirm-overlay[hidden]{display:none!important}
#planPicker .plan-confirm-box{width:min(100%,480px);box-sizing:border-box;max-height:90dvh;overflow:auto;background:#fff;border-radius:24px 24px 0 0;padding:20px 20px calc(20px + env(safe-area-inset-bottom))}
#planPicker .plan-confirm-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
#planPicker .plan-confirm-heading h3{margin:0;font-size:19px;color:#17181a}
#planPicker .plan-confirm-heading button{width:40px;height:40px;border:0;border-radius:50%;background:#f0f1f3;color:#5d6169;font-size:17px}
#planPicker #planConfirmName{font-size:17px;line-height:1.4;margin:20px 0;color:#80611e}
#planPicker .plan-confirm-costs{border-top:1px solid #eee;border-bottom:1px solid #eee;padding:6px 0}
#planPicker .plan-confirm-costs>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;font-size:13px;color:#8a8d94}
#planPicker .plan-confirm-costs strong{color:#292b2f}
#planPicker .plan-confirm-costs>div[hidden]{display:none!important}
#planPicker #planConfirmMessage{font-size:13px;line-height:1.6;color:#7c8088;margin:16px 0}
#planPicker .plan-confirm-box .confirm-plan-selection{width:100%;margin:0;min-height:48px;border:0;white-space:normal;padding:12px 16px;box-sizing:border-box}
#pageContent .clean-subscription-card .current-plan-costs{display:grid;gap:10px;padding:0 0 18px;border-bottom:1px solid #eee;margin:0 0 18px}
#pageContent .clean-subscription-card .current-plan-costs>div{display:flex;justify-content:space-between;gap:16px;font-size:12px;line-height:1.5;color:#8a8d94}
#pageContent .clean-subscription-card .current-plan-costs strong{color:#575b63;font-weight:600;white-space:nowrap}
#pageContent .clean-subscription-card .current-plan-costs>div[hidden]{display:none!important}
#pageContent .clean-subscription-card .current-plan-benefits{display:grid;gap:14px;list-style:none;padding:0;margin:0}
#pageContent .clean-subscription-card .current-plan-benefits li{display:flex;align-items:flex-start;gap:11px;font-size:13px;line-height:1.5;color:#656970}
#pageContent .clean-subscription-card .current-plan-benefits i{width:15px;flex-shrink:0;margin-top:3px;color:#9c8037;font-size:13px}
#pageContent .clean-subscription-card .current-plan-benefits i.fa-xmark{color:#979aa1}
#pageContent .clean-subscription-card .current-plan-staff-note{margin:16px 0 20px;font-size:11px;line-height:1.5;color:#8a8d94}

/* v917 — clean Top Up sheet with copyable transfer details and a slip preview. */
#pageContent .wallet-page>.wallet-card-bottom #walletTopupBtn{background:#17181a;border-color:#17181a;color:#fff}
#parlourWalletModal[data-action="topup"] .wallet-modal-box{max-height:92vh;max-height:92dvh}
#parlourWalletModal[data-action="topup"] .modal-head{padding-bottom:14px;margin-bottom:14px}
#parlourWalletModal .topup-transfer-details{display:block;margin:0;padding:0;border:1px solid #e5e5e8;border-radius:14px;background:#fff;box-shadow:none;overflow:hidden}
#parlourWalletModal .topup-transfer-details h4{display:flex;gap:9px;align-items:center;font-size:12px;font-weight:650;margin:0;padding:12px 14px;background:#f7f7f8;color:#575b63;border-bottom:1px solid #eee}
#parlourWalletModal .topup-bank-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid #eee}
#parlourWalletModal .topup-bank-row:last-child{border-bottom:0}
#parlourWalletModal .topup-bank-row>div{min-width:0;flex:1}
#parlourWalletModal .topup-bank-row small{display:block;font-size:10px;font-weight:500;color:#8a8d94;margin-bottom:4px}
#parlourWalletModal .topup-bank-row strong{display:block;font-size:13px;font-weight:600;line-height:1.4;color:#292b2f;overflow-wrap:anywhere}
#parlourWalletModal .topup-bank-row button{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border:0;border-radius:10px;background:#f0f1f3;color:#5d6169;cursor:pointer}
#parlourWalletModal .topup-bank-row button:disabled{opacity:.3;cursor:default}
#parlourWalletModal .topup-reference{margin:0;padding:12px 14px;border:1px solid #e8ddbb;border-radius:14px;background:#fbf7ec}
#parlourWalletModal .topup-reference .topup-wallet-id-row{padding:0;background:transparent;border:0}
#parlourWalletModal .topup-reference small{color:#8a7133;font-size:10px}
#parlourWalletModal .topup-reference small>span{margin-left:5px;padding:2px 5px;border-radius:4px;background:#f2e7c5;font-size:8px;font-weight:600}
#parlourWalletModal .topup-reference strong{color:#292b2f;font-size:18px;letter-spacing:.06em}
#parlourWalletModal .topup-reference button{border:0;width:36px;height:36px;background:#f2e7c5;color:#80611e}
#parlourWalletModal .topup-reference p{margin:8px 0 0;font-size:11px;line-height:1.5;color:#8a7133}
#parlourWalletModal .wallet-amount-field{min-width:0;width:100%;box-sizing:border-box}
#parlourWalletModal .wallet-amount-field>span{flex:0 0 auto;white-space:nowrap;font-size:17px;color:#5d6169;min-width:25px}
#parlourWalletModal .wallet-amount-field input{width:0;flex:1 1 0;min-width:0;font-size:17px;min-height:48px}
#parlourWalletModal .topup-slip-btn{min-height:50px;background:#f7f7f8;border-color:#cfd1d6;color:#5d6169;font-size:13px}
#parlourWalletModal .topup-slip-name{font-size:11px}
#parlourWalletModal .topup-slip-preview{display:block;width:100%;max-height:160px;object-fit:contain;padding:8px;box-sizing:border-box;border:1px solid #e5e5e8;border-radius:12px;background:#f7f7f8}
#parlourWalletModal .topup-slip-preview[hidden]{display:none!important}
#parlourWalletModal[data-action="topup"] .confirm-wallet-btn{background:#eaf5ee;color:#34764b;margin-top:16px;font-size:14px}
#parlourWalletModal[data-action="topup"] .wallet-action-box>p{font-size:11px;margin:0}

/* v919 — plain bank and branch rows, copy actions only where needed. */
#parlourWalletModal .topup-bank-row{min-height:56px;box-sizing:border-box}

/* v920: white Top Up action and isolated sheet scrolling. */
#pageContent .wallet-page>.wallet-card-bottom #walletTopupBtn{background:#fff;border:1px solid #e2e3e7;color:#24262a;box-shadow:none}
#parlourWalletModal{overscroll-behavior:none}
#parlourWalletModal .wallet-modal-box{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}

/* v921: distinct wallet actions and compact billing overview. */
#pageContent .wallet-page>.wallet-card-bottom #walletTopupBtn{background:#eaf5ee;border:1px solid #eaf5ee;color:#34764b}
#pageContent .wallet-page>.wallet-card-bottom #paySubscriptionBtn{background:#fff;border:1px solid #a9adb4;color:#292c32;box-shadow:none}
#parlourWalletModal .billing-overview{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px;background:#f7f8f9;border:1px solid #e7e8ea;border-radius:14px}
#parlourWalletModal .billing-overview>div:last-child{grid-column:1/-1;padding-top:12px;border-top:1px solid #e3e5e7;display:flex;justify-content:space-between;gap:12px}
#parlourWalletModal .billing-overview span{display:block;font-size:11px;color:#858991;line-height:1.5}
#parlourWalletModal .billing-overview strong{display:block;font-size:14px;color:#23262b;line-height:1.5;margin-top:3px}
#parlourWalletModal .billing-overview>div:last-child strong{margin:0}
#parlourWalletModal .subscription-payment-state{gap:16px}
#parlourWalletModal .subscription-state-icon{width:42px;height:42px;border-radius:14px;font-size:20px}
#parlourWalletModal .subscription-state-copy strong{font-size:18px}
#parlourWalletModal .subscription-state-copy p{font-size:12px;line-height:1.6;margin:7px 0 0}
#parlourWalletModal[data-action="subscription"] .confirm-wallet-btn{background:#23262b;color:#fff;border:1px solid #23262b}
#parlourWalletModal[data-action="subscription"][data-payment-state="clear"] .confirm-wallet-btn{background:#f0f1f3;color:#555b64;border-color:#f0f1f3}

/* v922: blue billing action and renewal methods. */
#pageContent .wallet-page>.wallet-card-bottom #paySubscriptionBtn{background:#edf3fc;border:1px solid #edf3fc;color:#426797;box-shadow:none}
#parlourWalletModal .billing-renewal-section{display:block;margin:0;padding:0}
#parlourWalletModal .billing-renewal-section h4{margin:0 0 10px;font-size:13px;font-weight:650;color:#31353c}
#parlourWalletModal .billing-renewal-option{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid #e6e8ed;border-radius:14px;background:#fff}
#parlourWalletModal .billing-renewal-option+.billing-renewal-option{margin-top:9px}
#parlourWalletModal .billing-renewal-option.selected{background:#f1f6fd;border-color:#cfdef2}
#parlourWalletModal .billing-renewal-option>i{margin-top:3px;font-size:17px;color:#426797;flex-shrink:0}
#parlourWalletModal .billing-renewal-option>div{flex:1;min-width:0}
#parlourWalletModal .billing-renewal-option strong{display:block;font-size:13px;line-height:1.5;color:#343940}
#parlourWalletModal .billing-renewal-option p{margin:4px 0 0;font-size:11px;line-height:1.5;color:#7c828b}
#parlourWalletModal .billing-renewal-option small{display:block;margin-top:6px;color:#9298a1;font-size:10px}
#parlourWalletModal .billing-renewal-option.unavailable>i{color:#a4a9b1}
#parlourWalletModal .renewal-current{border-radius:20px;padding:4px 8px;background:#dfebfa;color:#426797;font-size:9px;font-weight:650}

/* v923: saved owner renewal controls. */
#parlourWalletModal .billing-renewal-option input{appearance:auto;-webkit-appearance:radio;width:17px;height:17px;margin:3px 0 0;flex:0 0 17px;accent-color:#426797}
#parlourWalletModal .billing-renewal-option{cursor:pointer}
#parlourWalletModal .renewal-consent{font-size:10px;line-height:1.6;color:#8a9099;margin:10px 0}
#parlourWalletModal .save-renewal-mode{width:100%;border:0;border-radius:12px;padding:12px;background:#edf3fc;color:#426797;font-size:12px;font-weight:650}
#parlourWalletModal .save-renewal-mode[hidden]{display:none!important}
#parlourWalletModal .renewal-save-status{font-size:11px;line-height:1.5;color:#426797;margin:7px 0 0}
#parlourWalletModal .renewal-save-status:empty{display:none}

/* v924: stationary sheet heading and a separately clipped scrolling body. */
#parlourWalletModal .wallet-modal-box{display:flex;flex-direction:column;overflow:hidden!important;padding:0!important;isolation:isolate}
#parlourWalletModal .wallet-modal-box::before{flex:0 0 4px;margin:12px auto 8px}
#parlourWalletModal .modal-head{position:relative!important;top:auto!important;flex:0 0 auto;z-index:2;background:#fff;margin:0!important;padding:6px 20px 16px!important;border-bottom:1px solid #eee}
#parlourWalletModal .wallet-sheet-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:16px 20px calc(20px + env(safe-area-inset-bottom));box-sizing:border-box}
#parlourWalletModal .topup-bank-row strong,#parlourWalletModal #topupWalletId{-webkit-user-select:text;user-select:text}
#parlourWalletModal .wallet-copy-status{position:sticky;top:0;z-index:1;background:#edf5ef;border-radius:8px;color:#34764b;font-size:11px;margin:0 0 10px;padding:7px 10px}
#parlourWalletModal .wallet-copy-status:empty{display:none}

/* v925: selected-slip removal and the standard dismissing success alert. */
#parlourWalletModal #selectTopupSlipBtn[hidden],#parlourWalletModal #topupSlipLabel[hidden],#parlourWalletModal #removeTopupSlipBtn[hidden]{display:none!important}
#parlourWalletModal .remove-topup-slip{display:flex;align-items:center;justify-content:center;gap:8px;align-self:flex-end;width:auto;padding:9px 14px;border:0;border-radius:10px;background:#f8eeee;color:#a3524c;font-size:12px;font-weight:600;margin-top:9px}
.wallet-toast{position:fixed;z-index:2147483647;top:calc(12px + env(safe-area-inset-top));left:50%;transform:translateX(-50%);display:flex;align-items:flex-start;gap:12px;width:calc(100% - 32px);max-width:520px;box-sizing:border-box;padding:16px;border:1px solid #d6e5dc;border-radius:18px;background:#fff;box-shadow:0 12px 35px rgba(18,24,20,.14);color:#202227}
.wallet-toast-icon{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:50%;background:#eaf7ee;color:#377c50;font-size:22px;font-weight:850}
.wallet-toast>div{flex:1;min-width:0}
.wallet-toast strong{font-size:14px;font-weight:750}
.wallet-toast p{margin:5px 0 0;color:#7b7e86;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.wallet-toast button{flex:0 0 26px;border:0;border-radius:50%;background:#f2f3f5;color:#787d85;width:26px;height:26px;font-size:20px;line-height:1;cursor:pointer}

/* v926: Remove stays inside the selected-slip box. */
#parlourWalletModal .topup-slip-preview-box{position:relative;padding:48px 12px 12px;border:1px solid #e2e3e7;border-radius:14px;background:#f7f7f8}
#parlourWalletModal .topup-slip-preview-box[hidden]{display:none!important}
#parlourWalletModal .topup-slip-preview-box .topup-slip-preview{display:block;box-sizing:border-box;width:100%;margin:0;padding:0;border:0;border-radius:6px;background:transparent;max-height:160px;object-fit:contain}
#parlourWalletModal .topup-slip-preview-box .remove-topup-slip{position:absolute;top:9px;right:10px;margin:0;padding:7px 10px;font-size:11px}
.wallet-toast.warning{border-color:#eadab0}
.wallet-toast.warning .wallet-toast-icon{background:#fff5dc;color:#a07d28}

/* v927: avoid costly full-screen blur compositing while interacting with the sheet. */
#parlourWalletModal{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:rgba(15,17,21,.45)}
#parlourWalletModal .wallet-modal-box{isolation:auto}
#parlourWalletModal button:disabled{cursor:default}

/* Native file chooser: no timer or synthetic click locks. */
#parlourWalletModal .topup-slip-btn{display:flex;align-items:center;justify-content:center;gap:9px;cursor:pointer}
#parlourWalletModal .wallet-copy-status{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:4;pointer-events:none;white-space:nowrap;margin:0}

/* Upload validation matches the credit payment notice. */
.wallet-toast.warning{width:calc(100% - 48px);max-width:520px;border-color:#e7d9ae;align-items:center;padding:16px 18px;box-shadow:0 12px 35px rgba(35,30,15,.12)}
.wallet-toast.warning .wallet-toast-icon{background:#fff5d8;color:#a8862b;font-size:19px}
.wallet-toast.warning button{display:none}
#parlourWalletModal .topup-slip-btn.upload-invalid{border:1px solid #be5d54;background:#fff9f8}

/* Compact slip preview with the remove action beside the image. */
#parlourWalletModal .topup-slip-preview-box{display:flex;align-items:flex-start;gap:12px;padding:12px}
#parlourWalletModal .topup-slip-preview-box .topup-slip-preview{flex:1 1 0;min-width:0;width:0;max-height:160px;object-fit:contain}
#parlourWalletModal .topup-slip-preview-box .remove-topup-slip{position:static;flex:0 0 auto;align-self:flex-start;margin:0;padding:8px 10px}

/* Center the slip independently of the remove action. */
#parlourWalletModal .topup-slip-preview-box{display:grid;grid-template-columns:minmax(0,1fr);position:relative;padding:12px}
#parlourWalletModal .topup-slip-preview-box .topup-slip-preview{grid-area:1 / 1;width:100%;min-width:0;max-height:160px;object-fit:contain;object-position:center}
#parlourWalletModal .topup-slip-preview-box .remove-topup-slip{position:absolute;top:10px;right:10px;margin:0}
.wallet-toast{width:calc(100% - 48px);align-items:center;padding:16px 18px}

#parlourWalletModal .billing-staff-slots{border-top:1px solid #e6e8ed;padding-top:18px}
#parlourWalletModal .billing-staff-slots h4{margin:0 0 9px;font-size:14px}
#parlourWalletModal .billing-staff-slots p{font-size:12px;line-height:1.6;color:#858a93;margin:8px 0}
#parlourWalletModal .staff-slots-stepper{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0;font-size:13px;color:#555b64}
#parlourWalletModal .staff-slots-stepper>div{display:flex;align-items:center;gap:18px}
#parlourWalletModal .staff-slots-stepper button{width:36px;height:36px;border:1px solid #d8e2f0;border-radius:10px;background:#edf3fc;color:#426797;font-size:22px}
#parlourWalletModal .staff-slots-stepper button:disabled{opacity:.4}
#parlourWalletModal #staffSlotsScheduled{color:#426797}

#nextPlanBreakdown{display:block;margin-top:5px;font-size:10px;line-height:1.5;color:#878b93;letter-spacing:0}

/* Plan confirmation follows Manage Billing's spacing and blue actions. */
#planPicker .plan-confirm-box::before{content:"";display:block;width:36px;height:4px;background:#d5d6d8;border-radius:4px;margin:-8px auto 18px}
#planPicker .plan-confirm-heading{padding-bottom:16px;border-bottom:1px solid #eee}
#planPicker .plan-confirm-effective{color:#426797;font-size:11px;font-weight:650;margin:18px 0 7px}
#planPicker #planConfirmName{color:#252a32;font-size:19px;line-height:1.4;margin:0 0 18px}
#planPicker .plan-confirm-costs{border:1px solid #e3e5e9;border-radius:16px;background:#f7f7f8;padding:7px 14px}
#planPicker .plan-confirm-costs>div{align-items:center;font-size:12px;padding:12px 0}
#planPicker .plan-confirm-costs>div:last-child{border-top:1px solid #e3e5e9;margin-top:4px;color:#353b44;font-weight:650}
#planPicker #planConfirmTotal{font-size:21px;color:#252a32}
#planPicker #planConfirmMessage{font-size:12px;line-height:1.7;color:#858a93;margin:18px 0}
#planPicker .plan-confirm-box .confirm-plan-selection{background:#edf3fc;color:#426797;border-radius:14px;font-size:13px;font-weight:650}

/* Compact billing overview with controls expanded on demand. */
#parlourWalletModal .billing-settings{border:1px solid #e5e7ec;border-radius:14px;background:#fff;margin:0;padding:0;overflow:hidden}
#parlourWalletModal .billing-settings>summary{display:flex;align-items:center;gap:10px;min-height:58px;padding:14px;list-style:none;cursor:pointer;font-size:13px;font-weight:650;color:#31353c}
#parlourWalletModal .billing-settings>summary::-webkit-details-marker{display:none}
#parlourWalletModal .billing-settings>summary>span:first-child{flex:1}
#parlourWalletModal .billing-setting-value{color:#426797;font-size:11px;font-weight:550;text-align:right}
#parlourWalletModal .billing-settings>summary>i{font-size:10px;color:#8a9099;transition:transform .15s}
#parlourWalletModal .billing-settings[open]>summary{border-bottom:1px solid #edf0f4}
#parlourWalletModal .billing-settings[open]>summary>i{transform:rotate(180deg)}
#parlourWalletModal .billing-settings-body{padding:14px}
#parlourWalletModal .billing-settings:not([open])>.billing-settings-body{display:none}
#parlourWalletModal .billing-settings summary:focus-visible{outline:2px solid #426797;outline-offset:-3px}
#parlourWalletModal #staffSlotsScheduled:empty{display:none}
#parlourWalletModal .billing-payment-status{display:flex;align-items:flex-start;gap:12px;padding:14px 0 0;border-top:1px solid #edf0f4}
#parlourWalletModal .billing-payment-status .subscription-state-icon{flex:0 0 32px;width:32px;height:32px;border-radius:11px;font-size:15px}
#parlourWalletModal .billing-payment-status .subscription-state-copy{flex:1;min-width:0}
#parlourWalletModal .billing-payment-status .subscription-state-copy strong{font-size:14px;line-height:1.45}
#parlourWalletModal .billing-payment-status .subscription-state-copy p{margin-top:3px;font-size:11px;line-height:1.5}

.wallet-toast .wallet-toast-action{display:inline-flex;align-items:center;min-height:44px;margin-top:2px;padding:6px 0;color:#8a6a20;font-size:14px;font-weight:700;text-decoration:none;line-height:1.4}
.wallet-toast .wallet-toast-action:focus-visible{outline:2px solid #8a6a20;outline-offset:2px;border-radius:4px}

.wallet-toast .wallet-toast-icon{display:flex;align-items:center;justify-content:center;line-height:1;padding:0;box-sizing:border-box;text-align:center}

.wallet-toast .wallet-toast-icon{align-self:center!important;flex-shrink:0;margin:0!important}

/* Wallet passbook: amount and the recorded balance for each entry. */
.wallet-history-list{display:grid;gap:12px;margin-top:16px}
.wallet-history-entry{padding:16px;border:1px solid #e5e7eb;border-radius:16px;background:#fff}
.wallet-history-entry-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.wallet-history-entry-head>div{min-width:0}
.wallet-history-entry-head strong{display:block;font-size:14px;color:#24272b}
.wallet-history-entry-head>div>span{display:block;margin-top:4px;font-size:10px;color:#8a8e96}
.wallet-history-status{padding:5px 8px;border-radius:20px;font-size:9px;font-weight:700;text-transform:capitalize;background:#edf7ef;color:#3a7852;white-space:nowrap}
.wallet-history-status.pending{background:#faf3de;color:#96752d}
.wallet-history-status.rejected{background:#faeded;color:#a35c54}
.wallet-history-description{font-size:11px;line-height:1.5;color:#858a92;margin:12px 0;overflow-wrap:anywhere}
.wallet-history-amounts{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:12px;border-top:1px solid #eff0f2}
.wallet-history-amounts>div:last-child{text-align:right}
.wallet-history-amounts span{display:block;font-size:10px;color:#8a8e96;margin-bottom:5px}
.wallet-history-amounts strong{font-size:14px;color:#34383f;overflow-wrap:anywhere}
.wallet-history-amounts .credit{color:#3a7852}
.wallet-history-amounts .debit{color:#a35c54}
.wallet-history-empty{text-align:center;padding:20px 12px;color:#888d95;font-size:12px}
.wallet-history-more{width:100%;margin-top:14px;padding:13px;border:0;border-radius:12px;background:#edf3fc;color:#426797;font-size:12px;font-weight:650}
.wallet-history-more[hidden]{display:none!important}
.wallet-history-more:disabled{opacity:.6}


/* Billing transaction filters match the shared category filter sheet. */
.wallet-table-card .table-title{display:block}
.wallet-table-card .table-title h3{margin:0;color:#18191c;font-size:20px;line-height:1.3}
.wallet-table-card .table-title p{font-size:12px;line-height:1.5;margin:6px 0 0}
.wallet-history-filter-toggle{display:flex;align-items:center;gap:10px;width:100%;min-height:46px;margin:16px 0 0;padding:12px 15px;border:1px solid #e3e4e8;border-radius:14px;background:#fff;color:#5b5e65;font-size:13px;font-weight:700;cursor:pointer}
.wallet-history-filter-toggle span{flex:1;text-align:left}
.wallet-history-filter-toggle i:last-child{font-size:11px;color:#92959d}
.wallet-history-overlay[hidden]{display:none!important}
.wallet-history-overlay{position:fixed;inset:0;z-index:12000;display:flex;align-items:flex-end;justify-content:center;background:#0005;backdrop-filter:blur(5px);overscroll-behavior:contain}
.wallet-history-sheet{width:100%;max-width:560px;max-height:85dvh;display:flex;flex-direction:column;overflow:hidden;border-radius:24px 24px 0 0;background:#f8f8fa;color:#27292e}
.wallet-history-handle{width:34px;height:4px;margin:9px auto 0;border-radius:99px;background:#d7d8dd;flex-shrink:0}
.wallet-history-sheet>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 15px 20px}
.wallet-history-sheet header small{color:#967329;font-size:10px;font-weight:800;letter-spacing:.16em}
.wallet-history-sheet header h3{margin:8px 0 0;font-size:24px;letter-spacing:-.035em;line-height:1.2}
.wallet-history-sheet header p{margin:10px 0 0;color:#96989e;font-size:13px;line-height:1.5}
.wallet-history-sheet header button{width:40px;height:40px;border:1px solid #e2e3e7;border-radius:12px;background:#fff;color:#484b52;font-size:18px;flex-shrink:0}
.wallet-history-sheet-body{padding:0 14px 16px;overflow-y:auto;overscroll-behavior:contain;min-height:0}
.wallet-history-filter-group{padding:13px;border:1px solid #e2e3e7;border-radius:17px;background:#fff}
.wallet-history-group-head{display:flex;align-items:center;gap:9px;margin-bottom:12px}
.wallet-history-group-head>span{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:9px;background:#f5eedb;color:#a67e28;font-size:13px}
.wallet-history-group-head h4{margin:0;font-size:14px;font-weight:800}
.wallet-history-sheet-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.wallet-history-sheet-choices button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:10px;border:1px solid #e1e3e6;border-radius:12px;background:#fff;color:#72757c;font-size:12px;font-weight:700}
.wallet-history-sheet-choices button[aria-pressed=true]{background:#f8f1df;border-color:#b58f39;color:#806322}
.wallet-history-sheet-choices button[aria-pressed=false] i{display:none}
.wallet-history-sheet>footer{display:grid;grid-template-columns:1fr 2fr;gap:9px;padding:12px 15px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #e9e9ee;background:#fff;flex-shrink:0}
.wallet-history-sheet footer button{min-height:46px;border:1px solid #e1e3e6;border-radius:14px;font-size:13px;font-weight:800;background:#fff;color:#484b52}
.wallet-history-sheet footer button:last-child{background:#18191d;color:#fff;border-color:#18191d}
.wallet-history-sheet button:focus-visible,.wallet-history-filter-toggle:focus-visible{outline:2px solid #a48337;outline-offset:2px}

/* Match the Invitations heading gold. */
#pageContent .clean-subscription-card .sub-top p{color:#b7851d}

/* Compact wallet card with the balance as the main focus. */
#pageContent .wallet-bank-card{aspect-ratio:2.15;min-height:174px}
#pageContent .wallet-card-balance{position:absolute;left:20px;right:20px;top:52%;bottom:auto;transform:translateY(-12%);margin:0;padding:0;text-align:center}
#pageContent .wallet-card-balance h1{font-size:34px;line-height:1.15}
#pageContent .wallet-card-footer{position:absolute;right:20px;bottom:16px;margin:0}
@media(max-width:360px){#pageContent .wallet-bank-card{min-height:166px;padding:16px}#pageContent .wallet-card-balance{left:16px;right:16px;top:52%}#pageContent .wallet-card-balance h1{font-size:30px}#pageContent .wallet-card-footer{right:16px;bottom:14px}}
