/* ── Shared backdrop (click outside to close) ── */
#apBackdrop{position:fixed;inset:0;z-index:1199;background:rgba(0,0,0,.18);display:none;backdrop-filter:blur(1px);}
#apBackdrop.open{display:block;}

/* ══════════════════════════════════════════════════════════════
   Shared mobile menu content (logo, quick actions, page links, CTA).
   Each page keeps its own #mobileMenu base positioning (top offset
   varies with header height per page) — only the inner vocabulary
   below is shared, generated by _renderMobileMenu() in account-panels.js.
   ══════════════════════════════════════════════════════════════ */
.mob-header{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid rgba(60,40,0,0.09);margin-bottom:6px;}
.mob-header img{height:44px;width:44px;object-fit:contain;border-radius:50%;border:1.5px solid rgba(180,120,20,0.22);}
.mob-header-text{display:flex;flex-direction:column;}
.mob-header-brand{font-size:13px;font-weight:800;letter-spacing:1.5px;color:#1A0A00;text-transform:uppercase;}
.mob-header-sub{font-size:10px;font-weight:600;letter-spacing:1.2px;color:#8B6010;text-transform:uppercase;}
#mobileMenu a.mob-link{text-decoration:none;font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#3D2800;padding:14px 4px;border-bottom:1px solid rgba(60,40,0,0.06);display:flex;align-items:center;justify-content:space-between;transition:color 0.2s,padding-left 0.2s;}
#mobileMenu a.mob-link:hover,#mobileMenu a.mob-link.mob-active{color:#A06808;padding-left:8px;}
#mobileMenu a.mob-link.mob-active{font-weight:800;}
.mob-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px;}
.mob-action-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 10px;background:rgba(60,40,0,0.06);border-radius:12px;font-size:11px;font-weight:700;letter-spacing:0.8px;color:#3D2800;text-decoration:none;text-transform:uppercase;border:none;cursor:pointer;transition:background 0.2s;}
.mob-action-btn svg{width:14px;height:14px;stroke:#3D2800;fill:none;stroke-width:2;flex-shrink:0;}
.mob-action-btn:hover{background:rgba(60,40,0,0.10);}
.mob-cta-btn{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;background:#2A1A08;color:#F4C842;font-size:13px;font-weight:800;letter-spacing:1px;border-radius:50px;text-decoration:none;text-transform:uppercase;margin-top:4px;transition:background 0.2s;}
.mob-divider{height:1px;background:rgba(60,40,0,0.08);margin:6px 0;}

/* ══════════════════════════════════════════════════════════════
   Guest mode + sign-in / create-account / guest-popup — shared
   fallback for pages that don't define their own (see the guarded
   block at the bottom of account-panels.js). Kept identical to the
   homepage's own copy so the experience matches everywhere.
   ══════════════════════════════════════════════════════════════ */
#site.guest-mode button:not(.hamburger):not(.slide-dot),
body.guest-mode button:not(.hamburger):not(.slide-dot){cursor:not-allowed!important;}
#site.guest-mode a.cta-btn-primary,
#site.guest-mode a.cta-btn-outline,
#site.guest-mode a.prd-view-all,
#site.guest-mode a.creator-become-btn,
body.guest-mode a.cta-btn-primary,
body.guest-mode a.cta-btn-outline,
body.guest-mode a.prd-view-all,
body.guest-mode a.creator-become-btn{cursor:not-allowed!important;}
#guest-popup{position:fixed;inset:0;z-index:9500;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,0.78);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);}
#guest-popup.gp-open{display:flex;animation:gpIn 0.35s cubic-bezier(0.16,1,0.3,1) forwards;}
@keyframes gpIn{from{opacity:0;transform:scale(0.88)}to{opacity:1;transform:scale(1)}}
.gp-box{background:linear-gradient(160deg,#0E0800 0%,#1C1000 100%);border:1px solid rgba(244,168,37,0.3);border-radius:22px;padding:40px 32px;max-width:360px;width:calc(100% - 48px);text-align:center;box-shadow:0 24px 80px rgba(0,0,0,0.65);}
.gp-icon{font-size:42px;margin-bottom:14px;display:block;}
.gp-title{font-family:'Playfair Display',serif;font-size:24px;font-weight:900;color:#F4C842;margin-bottom:10px;}
.gp-sub{font-size:14px;font-weight:700;color:rgba(255,255,255,0.7);line-height:1.65;margin-bottom:28px;}
.gp-btns{display:flex;flex-direction:column;gap:10px;margin-bottom:18px;}
.gp-btn-primary{width:100%;padding:14px;border-radius:50px;border:none;cursor:pointer;font-family:'Inter',sans-serif;font-size:15px;font-weight:900;background:linear-gradient(135deg,#F4C842,#E8861A);color:#1A0800;outline:none;-webkit-tap-highlight-color:transparent;-webkit-appearance:none;transition:transform 0.2s;}
.gp-btn-primary:hover{transform:translateY(-2px);}
.gp-btn-secondary{width:100%;padding:13px;border-radius:50px;cursor:pointer;font-family:'Inter',sans-serif;font-size:14px;font-weight:800;background:rgba(255,255,255,0.06);color:#ffffff;border:1px solid rgba(244,168,37,0.28);outline:none;-webkit-tap-highlight-color:transparent;-webkit-appearance:none;transition:background 0.2s;}
.gp-btn-secondary:hover{background:rgba(255,255,255,0.11);}
.gp-dismiss{font-size:13px;font-weight:600;color:rgba(255,255,255,0.3);cursor:pointer;transition:color 0.2s;}
.gp-dismiss:hover{color:rgba(255,255,255,0.6);}
#wt-overlay{position:fixed;inset:0;z-index:10004;display:none;align-items:center;justify-content:center;background:linear-gradient(160deg,#060200 0%,#120900 55%,#0A0400 100%);}
#wt-overlay.wt-open{display:flex;animation:gpIn 0.6s cubic-bezier(0.16,1,0.3,1) forwards;}
#wt-overlay.wt-out{animation:caOut 0.5s ease forwards;}
.wt-inner{text-align:center;display:flex;flex-direction:column;align-items:center;padding:24px;animation:wlcIn 0.8s cubic-bezier(0.16,1,0.3,1) 0.2s both;}
@keyframes wlcIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.wt-check{width:76px;height:76px;border-radius:50%;background:linear-gradient(135deg,#F4C842,#E8861A);display:flex;align-items:center;justify-content:center;margin-bottom:24px;box-shadow:0 0 50px rgba(244,168,37,0.55);}
.wt-check svg{display:block;}
.wt-title{font-family:'Playfair Display',serif;font-size:36px;font-weight:900;color:#F4C842;line-height:1.2;margin-bottom:12px;}
.wt-sub{font-size:17px;font-weight:800;color:#ffffff;line-height:1.6;margin-bottom:36px;max-width:380px;}
.wt-progress-wrap{width:260px;height:3px;background:rgba(255,255,255,0.1);border-radius:2px;margin-bottom:28px;overflow:hidden;}
.wt-progress-bar{height:100%;width:0%;background:linear-gradient(90deg,#F4C842,#E8861A);border-radius:2px;}
.wt-progress-bar.wt-running{transition:width 3.2s linear;width:100%;}
.wt-continue{padding:12px 36px;border-radius:50px;border:none;cursor:pointer;font-family:'Inter',sans-serif;font-size:15px;font-weight:700;background:rgba(255,255,255,0.08);color:rgba(255,255,255,0.75);border:1px solid rgba(255,255,255,0.15);outline:none;-webkit-tap-highlight-color:transparent;transition:background 0.2s,color 0.2s;}
.wt-continue:hover{background:rgba(255,255,255,0.14);color:#fff;}
#ca-modal,#si-modal{position:fixed;inset:0;z-index:10003;background:linear-gradient(160deg,#060200 0%,#120900 55%,#0A0400 100%);display:none;align-items:center;justify-content:center;overflow-y:auto;padding:20px 0;}
#ca-modal.ca-in,#si-modal.si-in{display:flex;animation:caIn 0.5s cubic-bezier(0.16,1,0.3,1) forwards;}
@keyframes caIn{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
#ca-modal.ca-out,#si-modal.si-out{animation:caOut 0.4s ease forwards;}
@keyframes caOut{to{opacity:0;transform:translateY(-16px)}}
.ca-beams{position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse at 50% 0%,rgba(244,168,37,0.12) 0%,transparent 60%);}
.ca-box,.si-box{position:relative;z-index:2;width:100%;max-width:480px;margin:0 20px;padding:48px 44px 40px;background:rgba(255,255,255,0.03);border:1px solid rgba(244,168,37,0.12);border-radius:24px;backdrop-filter:blur(8px);}
.ca-back,.si-back{display:inline-flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;color:#ffffff;font-family:'Inter',sans-serif;font-size:15px;font-weight:800;padding:0;margin-bottom:28px;outline:none;-webkit-tap-highlight-color:transparent;transition:opacity 0.2s;}
.ca-back:hover,.si-back:hover{opacity:0.7;}
.ca-header,.si-header{display:flex;align-items:center;gap:16px;margin-bottom:24px;}
.ca-logo,.si-logo{width:54px;height:54px;object-fit:contain;background:#fff;border-radius:50%;padding:6px;flex-shrink:0;}
.ca-title,.si-title{font-family:'Playfair Display',serif;font-size:34px;font-weight:900;color:#F4C842;line-height:1.2;margin-bottom:5px;}
.ca-sub,.si-sub{font-size:15px;font-weight:900;color:#ffffff;letter-spacing:0.3px;}
.ca-rule,.si-rule{height:1px;background:linear-gradient(90deg,rgba(244,168,37,0.35),transparent);margin-bottom:28px;}
.ca-form,.si-form{display:flex;flex-direction:column;gap:18px;}
.ca-field,.si-field{display:flex;flex-direction:column;gap:7px;}
.ca-pw-wrap,.si-pw-wrap{position:relative;display:flex;align-items:center;}
.ca-pw-wrap .ca-input,.si-pw-wrap .si-input{padding-right:48px;}
.ca-pw-eye,.si-pw-eye{position:absolute;right:14px;background:none;border:none;cursor:pointer;color:rgba(255,255,255,.5);padding:4px;display:flex;align-items:center;transition:color .15s;}
.ca-pw-eye:hover,.si-pw-eye:hover{color:rgba(244,168,37,.9);}
.ca-label,.si-label{font-size:14px;font-weight:900;letter-spacing:2px;color:#ffffff;text-transform:uppercase;}
.ca-input,.si-input{background:rgba(255,255,255,0.05);border:1px solid rgba(244,168,37,0.18);border-radius:12px;padding:14px 18px;font-family:'Inter',sans-serif;font-size:16px;font-weight:900;color:#ffffff;outline:none;transition:border-color 0.25s,background 0.25s;width:100%;box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
.ca-input::placeholder,.si-input::placeholder{color:#ffffff;font-weight:800;}
.ca-input:focus,.si-input:focus{border-color:rgba(244,168,37,0.55);background:rgba(255,255,255,0.08);}
.ca-btns,.si-btns{display:flex;flex-direction:column;gap:12px;margin-top:6px;}
.ca-btn-primary,.si-btn-primary{width:100%;padding:16px;border-radius:50px;border:none;cursor:pointer;font-family:'Inter',sans-serif;font-size:17px;font-weight:900;letter-spacing:0.4px;background:linear-gradient(135deg,#F4C842 0%,#E8861A 100%);color:#1A0800;box-shadow:0 4px 24px rgba(244,168,37,0.35);transition:transform 0.2s,box-shadow 0.2s;outline:none;-webkit-tap-highlight-color:transparent;-webkit-appearance:none;appearance:none;}
.ca-btn-primary:hover,.si-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 32px rgba(244,168,37,0.52);}
.ca-btn-primary:active,.si-btn-primary:active{box-shadow:none;}
.ca-btn-secondary{width:100%;padding:15px;border-radius:50px;cursor:pointer;font-family:'Inter',sans-serif;font-size:16px;font-weight:900;background:rgba(255,255,255,0.05);color:#ffffff;border:1px solid rgba(244,168,37,0.25);transition:background 0.2s;outline:none;-webkit-tap-highlight-color:transparent;-webkit-appearance:none;appearance:none;}
.ca-btn-secondary:hover{background:rgba(255,255,255,0.09);}
.ca-btn-secondary:active{background:rgba(255,255,255,0.05);}
.ca-footer-link,.si-footer-link{text-align:center;margin-top:20px;font-size:16px;font-weight:800;color:#ffffff;}
.ca-footer-link a,.si-footer-link a{color:#ffffff;font-weight:900;text-decoration:none;cursor:pointer;transition:color 0.2s;}
.si-footer-link a{text-decoration:underline;}
.ca-footer-link a:hover,.si-footer-link a:hover{color:#F4C842;}
.si-forgot{text-align:right;margin-top:-8px;font-size:13px;font-weight:700;color:rgba(244,200,66,0.8);cursor:pointer;transition:color 0.2s;}
.si-forgot:hover{color:#F4C842;}
.si-or{display:flex;align-items:center;gap:12px;margin:4px 0;}
.si-or-line{flex:1;height:1px;background:rgba(255,255,255,0.12);}
.si-or-text{font-size:13px;font-weight:700;color:rgba(255,255,255,0.4);white-space:nowrap;}
.si-btn-google{width:100%;padding:14px 20px;border-radius:50px;cursor:pointer;font-family:'Inter',sans-serif;font-size:15px;font-weight:800;background:#ffffff;color:#1A1A1A;border:none;display:flex;align-items:center;justify-content:center;gap:12px;transition:box-shadow 0.2s,transform 0.2s;outline:none;-webkit-tap-highlight-color:transparent;-webkit-appearance:none;appearance:none;}
.si-btn-google:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,0.25);}
.si-btn-google:active{transform:translateY(0);}
.si-google-icon{width:22px;height:22px;flex-shrink:0;}
@media(max-width:520px){
  .ca-box,.si-box{padding:36px 24px 32px;}
  .ca-title{font-size:22px;}
  .si-title{font-size:26px;}
}

/* ── Wellness AI — product/section redirect buttons inside chat replies ── */
.wai-confirm{margin-top:9px;}
.wai-confirm-q{font-size:12.5px;color:rgba(255,255,255,.75);margin-bottom:8px;}
.wai-confirm-q.wai-confirm-dismissed{color:rgba(255,255,255,.5);font-style:italic;margin-bottom:0;}
.wai-link-row{display:flex;flex-wrap:wrap;gap:6px;}
.wai-link-btn{background:linear-gradient(135deg,#F4C842,#C8780A);color:#1A0800;border:none;border-radius:20px;padding:7px 13px;font-size:11.5px;font-weight:800;cursor:pointer;font-family:'Inter',sans-serif;white-space:nowrap;display:inline-flex;align-items:center;gap:5px;transition:opacity .15s;}
.wai-link-btn:hover{opacity:.88;}
.wai-link-btn-no{background:rgba(255,255,255,.06);color:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.12);}
.wai-link-btn-no:hover{background:rgba(255,255,255,.1);opacity:1;}

/* ── "Back to Wellness AI" pill — shown while a panel opened by the AI is up ── */
.wai-back-pill{
  position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(140%);
  z-index:9999;display:flex;align-items:center;gap:2px;
  background:linear-gradient(160deg,#1A0A00,#0E0700);
  border:1px solid rgba(244,168,37,.3);border-radius:30px;
  box-shadow:0 12px 32px rgba(0,0,0,.45);
  padding:4px;opacity:0;pointer-events:none;
  transition:transform .3s cubic-bezier(0.16,1,0.3,1),opacity .3s ease;
}
.wai-back-pill.show{transform:translateX(-50%) translateY(0);opacity:1;pointer-events:auto;}
.wai-back-pill-main{background:linear-gradient(135deg,#F4C842,#C8780A);color:#1A0800;border:none;border-radius:24px;padding:9px 16px;font-size:12.5px;font-weight:800;cursor:pointer;font-family:'Inter',sans-serif;white-space:nowrap;}
.wai-back-pill-main:hover{opacity:.9;}
.wai-back-pill-x{background:none;border:none;color:rgba(255,255,255,.4);font-size:13px;cursor:pointer;padding:0 10px;}
.wai-back-pill-x:hover{color:rgba(255,255,255,.8);}

/* ── Nav Account button icon (SVG / emoji / uploaded photo) ── */
.nav-acct-icon{display:flex;align-items:center;justify-content:center;width:13px;height:13px;flex-shrink:0;}
.nav-acct-icon svg{width:100%;height:100%;}
.nav-acct-avatar-img{width:16px;height:16px;border-radius:50%;object-fit:cover;display:block;}
.nav-acct-avatar-emoji{font-size:13px;line-height:1;display:block;}

/* ── Account Dropdown ── */
@keyframes acdIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
#acctDropdown{position:fixed;z-index:1300;display:none;filter:drop-shadow(0 8px 32px rgba(0,0,0,.2));}
#acctDropdown.open{display:block;animation:acdIn .18s cubic-bezier(0.16,1,0.3,1) both;}
#acctDropTail{position:absolute;top:-18px;left:50%;transform:translateX(-50%);width:36px;height:18px;background:#FAF3E0;clip-path:polygon(50% 0%,0% 100%,100% 100%);pointer-events:none;z-index:2;}
#acctDropBox{border-radius:16px;overflow:hidden;background:#FAF3E0;border:1.5px solid rgba(178,132,18,.18);}
/* Top greeting bar */
.acd-top{background:rgba(26,10,0,.06);padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1.5px solid rgba(178,132,18,.12);}
.acd-hello-wrap{display:flex;flex-direction:column;gap:3px;}
.acd-hello{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;color:#1A0A00;}
.acd-badge{font-size:10px;font-weight:700;color:#A06808;letter-spacing:.5px;}
.acd-manage-btn{background:linear-gradient(135deg,#F4C842,#C8780A);border:none;border-radius:8px;padding:6px 13px;font-size:11px;font-weight:800;color:#1A0800;cursor:pointer;font-family:'Inter',sans-serif;white-space:nowrap;transition:opacity .15s;}
.acd-manage-btn:hover{opacity:.88;}
/* Columns */
.acd-cols{display:flex;align-items:stretch;}
.acd-col{flex:1;padding:16px 18px;min-width:0;}
.acd-vsep{width:1.5px;background:rgba(178,132,18,.14);flex-shrink:0;margin:10px 0;}
.acd-col-ttl{font-size:10px;font-weight:800;color:#A06808;letter-spacing:.8px;text-transform:uppercase;margin-bottom:10px;}
.acd-col-div{border-top:1.5px solid rgba(178,132,18,.14);margin:8px 0;}
/* Links */
.acd-link{display:flex;align-items:center;gap:9px;padding:8px 6px;border-radius:8px;cursor:pointer;transition:background .14s;margin-bottom:2px;}
.acd-link:hover{background:rgba(160,104,8,.09);}
.acd-link-ico{font-size:16px;flex-shrink:0;width:22px;text-align:center;}
.acd-link-txt{flex:1;font-size:12px;line-height:1.4;color:#1A0A00;}
.acd-link-txt strong{font-size:12.5px;font-weight:700;color:#1A0A00;}
.acd-link-txt small{font-size:10.5px;color:rgba(26,10,0,.45);}
.acd-arr{font-size:15px;color:rgba(26,10,0,.2);flex-shrink:0;}
.acd-signout-row .acd-link-txt strong{color:#C0392B;}
.acd-signout-row:hover{background:rgba(192,57,43,.06);}
/* Buy Again */
.acd-ba-card{display:flex;align-items:center;gap:10px;padding:10px;background:#fff;border-radius:10px;border:1.5px solid rgba(178,132,18,.15);box-shadow:0 2px 8px rgba(60,30,0,.05);}
.acd-ba-img{width:52px;height:52px;border-radius:7px;object-fit:cover;background:rgba(243,237,214,.6);flex-shrink:0;}
.acd-ba-info{flex:1;min-width:0;}
.acd-ba-name{font-size:12px;font-weight:700;color:#1A0A00;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.acd-ba-size{font-size:10.5px;color:rgba(26,10,0,.45);margin-bottom:3px;}
.acd-ba-price{font-size:13px;font-weight:800;color:#A06808;}
.acd-ba-btn{background:linear-gradient(135deg,#F4C842,#C8780A);border:none;border-radius:7px;padding:6px 10px;font-size:11px;font-weight:800;color:#1A0800;cursor:pointer;font-family:'Inter',sans-serif;white-space:nowrap;flex-shrink:0;}
.acd-ba-btn:hover{opacity:.88;}
.acd-ba-empty{text-align:center;padding:14px 8px;}
.acd-ba-empty-icon{font-size:28px;margin-bottom:6px;}
.acd-ba-empty-txt{font-size:12px;color:rgba(26,10,0,.45);margin-bottom:10px;}
.acd-ba-shop-btn{display:inline-block;padding:7px 14px;background:linear-gradient(135deg,#F4C842,#C8780A);color:#1A0800;border-radius:7px;font-size:11px;font-weight:800;text-decoration:none;font-family:'Inter',sans-serif;}

/* ── Cart Overlay ── */
@keyframes covSlide{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
#cartOverlay{position:fixed;left:70px;right:70px;bottom:0;z-index:1200;overflow:visible;background:transparent;display:none;animation:covSlide .24s cubic-bezier(0.16,1,0.3,1) both;}
#cartOverlay.open{display:block;}
#cartTail{position:absolute;top:-20px;left:50%;transform:translateX(-50%);width:40px;height:20px;background:#FAF3E0;clip-path:polygon(50% 0%,0% 100%,100% 100%);pointer-events:none;z-index:2;}
#cartInner{position:absolute;top:0;left:0;right:0;bottom:0;background:#FAF3E0;border-radius:20px 20px 0 0;box-shadow:0 -4px 40px rgba(0,0,0,.18);overflow-y:auto;z-index:1;}
.cov-wrap{max-width:860px;margin:0 auto;padding:24px 20px 60px;}
.cov-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;padding-bottom:16px;border-bottom:1.5px solid rgba(178,132,18,.12);}
.cov-breadcrumb{font-size:12px;color:rgba(26,10,0,.4);display:flex;align-items:center;gap:5px;}
.cov-breadcrumb a{color:#A06808;font-weight:600;}
.cov-breadcrumb a:hover{color:#C8780A;}
.cov-close{background:rgba(26,10,0,.06);border:1.5px solid rgba(178,132,18,.15);border-radius:8px;padding:6px 13px;font-size:12px;font-weight:700;color:rgba(26,10,0,.55);cursor:pointer;display:flex;align-items:center;gap:5px;transition:all .15s;}
.cov-close:hover{background:rgba(26,10,0,.1);color:#1A0A00;}
.cov-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;}
.cov-title{font-family:'Playfair Display',serif;font-size:28px;font-weight:800;color:#1A0A00;margin:0;}
.cov-subtitle{font-size:13px;color:rgba(26,10,0,.5);background:rgba(160,104,8,.1);padding:3px 10px;border-radius:20px;font-weight:600;}
.cov-items{margin-bottom:4px;}
.cov-item{background:#fff;border:1.5px solid rgba(201,162,39,.15);border-radius:12px;padding:14px 16px;display:flex;align-items:center;gap:14px;margin-bottom:10px;box-shadow:0 2px 8px rgba(60,30,0,.04);}
.cov-item-img{width:68px;height:68px;border-radius:8px;object-fit:cover;background:rgba(243,237,214,.4);flex-shrink:0;}
.cov-item-body{flex:1;min-width:0;}
.cov-item-name{font-size:14px;font-weight:800;color:#1A0A00;margin-bottom:2px;}
.cov-item-size{font-size:11.5px;color:rgba(26,10,0,.45);margin-bottom:8px;}
.cov-item-qty{display:flex;align-items:center;gap:8px;}
.cov-qty-btn{width:28px;height:28px;border:1.5px solid rgba(160,104,8,.4);border-radius:7px;background:#FAF3E0;color:#A06808;font-size:16px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;}
.cov-qty-btn:hover{background:#A06808;color:#fff;}
.cov-qty-num{font-size:14px;font-weight:700;color:#1A0A00;min-width:20px;text-align:center;}
.cov-item-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0;}
.cov-item-price{font-size:16px;font-weight:800;color:#A06808;}
.cov-item-remove{font-size:11px;color:rgba(26,10,0,.35);cursor:pointer;background:none;border:none;padding:0;font-family:'Inter',sans-serif;transition:color .15s;}
.cov-item-remove:hover{color:#C0392B;}
.cov-summary{background:#fff;border:1.5px solid rgba(201,162,39,.15);border-radius:12px;padding:16px 18px;margin-top:4px;box-shadow:0 2px 8px rgba(60,30,0,.04);}
.cov-sum-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:rgba(26,10,0,.6);margin-bottom:8px;}
.cov-sum-row.total{font-size:16px;font-weight:800;color:#1A0A00;padding-top:10px;border-top:1.5px solid rgba(178,132,18,.15);margin-top:4px;margin-bottom:14px;}
.cov-sum-row.total span:last-child{color:#A06808;}
.cov-free{color:#1A5014;font-weight:700;}
.cov-free-note{font-size:10.5px;color:rgba(26,10,0,.4);margin-bottom:8px;margin-top:-4px;}
.cov-actions{display:flex;flex-direction:column;gap:10px;}
.cov-checkout{width:100%;padding:14px;background:linear-gradient(135deg,#F4C842,#C8780A);color:#1A0800;border:none;border-radius:10px;font-size:14px;font-weight:800;cursor:pointer;font-family:'Inter',sans-serif;letter-spacing:.3px;}
.cov-checkout:hover{opacity:.9;}
.cov-continue{width:100%;padding:11px;background:transparent;color:#A06808;border:1.5px solid rgba(160,104,8,.35);border-radius:10px;font-size:13px;font-weight:700;cursor:pointer;font-family:'Inter',sans-serif;}
.cov-continue:hover{border-color:#A06808;background:rgba(160,104,8,.05);}
.cov-empty{text-align:center;padding:60px 20px;}
.cov-empty-icon{font-size:48px;margin-bottom:14px;}
.cov-empty-title{font-size:18px;font-weight:800;color:#1A0A00;margin-bottom:6px;}
.cov-empty-sub{font-size:13px;color:rgba(26,10,0,.5);margin-bottom:20px;}
.cov-shop-btn{display:inline-block;padding:10px 24px;background:linear-gradient(135deg,#F4C842,#C8780A);color:#1A0800;border:none;border-radius:8px;font-size:13px;font-weight:800;cursor:pointer;font-family:'Inter',sans-serif;text-decoration:none;}
.cov-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#1A0A00;border:1px solid rgba(244,168,37,.3);color:#F4C842;padding:10px 18px;border-radius:20px;font-size:12px;font-weight:700;z-index:9999;pointer-events:none;opacity:0;transition:opacity .3s;white-space:nowrap;}
.cov-toast.show{opacity:1;}

/* ── Orders Overlay (full-page under navbar) ── */
@keyframes oorSlide{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
#ordersOverlay{
  position:fixed;left:70px;right:70px;bottom:0;
  z-index:1200;
  overflow:visible;
  background:transparent;
  display:none;
  animation:oorSlide .24s cubic-bezier(0.16,1,0.3,1) both;
}
#ordersOverlay.open{display:block;}
#ordersTail{
  position:absolute;
  top:-20px;
  left:50%;
  transform:translateX(-50%);
  width:40px;height:20px;
  background:#FAF3E0;
  clip-path:polygon(50% 0%,0% 100%,100% 100%);
  pointer-events:none;
  z-index:2;
}
#ordersInner{
  position:absolute;
  top:0;left:0;right:0;bottom:0;
  background:#FAF3E0;
  border-radius:20px 20px 0 0;
  box-shadow:0 -4px 40px rgba(0,0,0,.18);
  overflow-y:auto;
  z-index:1;
}
.oor-wrap{max-width:1060px;margin:0 auto;padding:24px 20px 60px;}
.oor-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;padding-bottom:16px;border-bottom:1.5px solid rgba(178,132,18,.12);}
.oor-breadcrumb{font-size:12px;color:rgba(26,10,0,.4);display:flex;align-items:center;gap:5px;}
.oor-breadcrumb a{color:#A06808;font-weight:600;}
.oor-breadcrumb a:hover{color:#C8780A;}
.oor-close{background:rgba(26,10,0,.06);border:1.5px solid rgba(178,132,18,.15);border-radius:8px;padding:6px 13px;font-size:12px;font-weight:700;color:rgba(26,10,0,.55);cursor:pointer;display:flex;align-items:center;gap:5px;transition:all .15s;}
.oor-close:hover{background:rgba(26,10,0,.1);color:#1A0A00;}
.oor-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap;}
.oor-title{font-family:'Playfair Display',serif;font-size:26px;font-weight:800;color:#1A0A00;}
.oor-search{display:flex;flex:1;max-width:420px;min-width:220px;}
.oor-inp{flex:1;background:#fff;border:1.5px solid rgba(178,132,18,.25);border-right:none;border-radius:9px 0 0 9px;padding:9px 14px;font-size:13px;font-family:'Inter',sans-serif;outline:none;color:#1A0A00;transition:border-color .15s;}
.oor-inp:focus{border-color:rgba(160,104,8,.5);}
.oor-inp::placeholder{color:rgba(26,10,0,.28);}
.oor-srch-btn{background:linear-gradient(135deg,#F4C842,#C8780A);border:none;border-radius:0 9px 9px 0;padding:9px 16px;color:#1A0800;font-size:11.5px;font-weight:800;cursor:pointer;white-space:nowrap;}
.oor-controls{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:10px;flex-wrap:wrap;}
.oor-tabs{display:flex;gap:2px;background:rgba(26,10,0,.05);border:1px solid rgba(178,132,18,.15);border-radius:10px;padding:3px;}
.oor-tab{padding:7px 14px;border-radius:7px;font-size:11.5px;font-weight:700;color:rgba(26,10,0,.45);cursor:pointer;border:none;background:none;transition:all .15s;white-space:nowrap;font-family:'Inter',sans-serif;}
.oor-tab.active{background:linear-gradient(135deg,#F4C842,#C8780A);color:#1A0800;}
.oor-tab:hover:not(.active){color:rgba(26,10,0,.75);background:rgba(178,132,18,.08);}
.oor-filter{display:flex;align-items:center;gap:7px;font-size:12.5px;color:rgba(26,10,0,.5);}
.oor-filter strong{color:#1A0A00;}
.oor-period{background:#fff;border:1.5px solid rgba(178,132,18,.2);color:#1A0A00;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer;outline:none;font-family:'Inter',sans-serif;}
.oor-list{display:flex;flex-direction:column;gap:12px;}
.oor-empty{text-align:center;padding:48px 20px;}
.oor-empty-ico{font-size:52px;margin-bottom:14px;}
.oor-empty-ttl{font-size:17px;font-weight:800;color:#3A1A00;margin-bottom:7px;}
.oor-empty-sub{font-size:12.5px;color:rgba(26,10,0,.4);margin-bottom:20px;line-height:1.6;}
.oor-empty-btn{background:linear-gradient(135deg,#F4C842,#C8780A);color:#1A0800;border:none;border-radius:9px;padding:11px 24px;font-size:12.5px;font-weight:800;cursor:pointer;}
/* Order card */
.oor-card{background:#fff;border:1.5px solid rgba(201,162,39,.18);border-radius:14px;overflow:hidden;transition:border-color .15s;box-shadow:0 2px 10px rgba(60,30,0,.06);}
.oor-card:hover{border-color:rgba(160,104,8,.35);}
.oor-card-hd{display:flex;align-items:center;justify-content:space-between;padding:11px 16px;background:rgba(243,237,214,.5);border-bottom:1px solid rgba(201,162,39,.12);flex-wrap:wrap;gap:8px;}
.oor-meta-grp{display:flex;gap:20px;flex-wrap:wrap;}
.oor-meta-lbl{font-size:9px;font-weight:800;color:rgba(26,10,0,.35);letter-spacing:.8px;text-transform:uppercase;margin-bottom:2px;}
.oor-meta-val{font-size:12px;font-weight:700;color:#1A0A00;}
.oor-oid{font-size:10px;font-weight:800;color:#A06808;background:rgba(160,104,8,.08);border:1px solid rgba(160,104,8,.18);border-radius:20px;padding:3px 9px;white-space:nowrap;}
.oor-card-body{display:flex;align-items:center;gap:14px;padding:14px 16px;flex-wrap:wrap;}
.oor-prod-img{width:68px;height:68px;border-radius:10px;object-fit:cover;background:rgba(243,237,214,.6);flex-shrink:0;}
.oor-prod-ph{width:68px;height:68px;border-radius:10px;background:rgba(243,237,214,.8);display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0;}
.oor-prod-info{flex:1;min-width:140px;}
.oor-prod-name{font-size:14px;font-weight:800;color:#1A0A00;margin-bottom:3px;}
.oor-prod-detail{font-size:11px;color:#6B4F1A;margin-bottom:5px;}
.oor-prod-total{font-size:13px;font-weight:800;color:#A06808;}
.oor-status-col{display:flex;flex-direction:column;align-items:flex-end;gap:9px;flex-shrink:0;}
.oor-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:20px;font-size:11px;font-weight:800;}
.ost-pending{background:rgba(244,168,37,.1);color:#A06808;border:1px solid rgba(244,168,37,.3);}
.ost-confirmed{background:rgba(37,99,235,.08);color:#1d4ed8;border:1px solid rgba(37,99,235,.2);}
.ost-shipped{background:rgba(0,150,200,.08);color:#0077AA;border:1px solid rgba(0,150,200,.2);}
.ost-delivered{background:rgba(26,80,20,.08);color:#1A5014;border:1px solid rgba(26,80,20,.2);}
.ost-cancelled{background:rgba(200,48,10,.07);color:#C8300A;border:1px solid rgba(200,48,10,.18);}
.ost-return_requested,.ost-return_initiated,.ost-returned{background:rgba(108,64,180,.08);color:#6C40B4;border:1px solid rgba(108,64,180,.2);}
.oor-actions{display:flex;gap:7px;flex-wrap:wrap;}
.oor-btn{padding:7px 13px;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer;border:none;font-family:'Inter',sans-serif;transition:all .15s;}
.oor-btn-primary{background:linear-gradient(135deg,#F4C842,#C8780A);color:#1A0800;}
.oor-btn-primary:hover{opacity:.88;}
.oor-btn-sec{background:#fff;border:1.5px solid rgba(178,132,18,.25);color:#6B4F1A;}
.oor-btn-sec:hover{border-color:#A06808;color:#A06808;}
.oor-btn-cancel{background:rgba(200,48,10,.06);border:1.5px solid rgba(200,48,10,.18);color:#C8300A;}
.oor-btn-cancel:hover{background:rgba(200,48,10,.1);}
/* Inline order detail — expands under the clicked card, packed tightly */
.oor-detail-wrap{border-top:1px solid rgba(201,162,39,.15);}
.oor-dtl{padding:11px 16px;}
.oor-dtl-sec{margin-bottom:9px;}
.oor-dtl-sec:last-child{margin-bottom:0;}
.oor-dtl-lbl{font-size:9.5px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:#A06808;margin-bottom:5px;}
.oor-dtl-track{display:flex;align-items:center;gap:0;}
.oor-dtl-step{display:flex;flex-direction:column;align-items:center;gap:3px;flex:0 0 auto;}
.oor-dtl-dot{width:16px;height:16px;border-radius:50%;background:#E8DCC0;color:#fff;font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.oor-dtl-dot.done{background:#1A3A12;}
.oor-dtl-line{flex:1 1 auto;height:2px;background:#E8DCC0;min-width:10px;}
.oor-dtl-line.done{background:#1A3A12;}
.oor-dtl-step-lbl{font-size:8px;font-weight:700;color:#6B4F1A;text-align:center;white-space:nowrap;}
.oor-dtl-cancelled-note{font-size:11px;color:#C8300A;font-weight:600;background:rgba(200,48,10,.05);border:1px solid rgba(200,48,10,.15);border-radius:8px;padding:7px 9px;}
.oor-dtl-price-row{display:flex;justify-content:space-between;font-size:11px;color:#6B4F1A;padding:1px 0;}
.oor-dtl-price-row.total{font-weight:800;color:#1A0A00;font-size:12px;border-top:1px solid rgba(201,162,39,.2);margin-top:3px;padding-top:5px;}
.oor-dtl-pay{display:flex;align-items:center;gap:7px;font-size:11.5px;color:#1A0A00;}
.oor-dtl-pay-ico{font-size:15px;}
.oor-dtl-window{background:rgba(200,48,10,.04);border:1px solid rgba(200,48,10,.15);border-radius:9px;padding:8px 10px;}
.oor-dtl-window.ret{background:rgba(108,64,180,.04);border-color:rgba(108,64,180,.15);}
.oor-dtl-window-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;color:#C8300A;margin-bottom:2px;}
.oor-dtl-window.ret .oor-dtl-window-top{color:#6C40B4;}
.oor-dtl-window-sub{font-size:10px;color:#6B4F1A;line-height:1.35;margin-bottom:6px;}
.oor-dtl-btn{width:100%;padding:7px;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer;border:1.5px solid;background:#fff;font-family:inherit;}
.oor-dtl-btn.cancel{color:#C8300A;border-color:rgba(200,48,10,.3);}
.oor-dtl-btn.ret{color:#6C40B4;border-color:rgba(108,64,180,.3);}
.oor-dtl-reasons{display:flex;flex-direction:column;gap:4px;margin:7px 0;}
.oor-dtl-reason{display:flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid rgba(60,40,0,.12);border-radius:7px;font-size:10.5px;font-weight:600;color:#1A0A00;cursor:pointer;background:#fff;}
.oor-dtl-reason.sel{border-color:#C8300A;background:rgba(200,48,10,.04);}
.oor-dtl-reason.ret.sel{border-color:#6C40B4;background:rgba(108,64,180,.04);}
.oor-dtl-reason input{width:12px;height:12px;flex-shrink:0;}
.oor-dtl-other{display:none;width:100%;box-sizing:border-box;padding:6px 8px;border:1px solid rgba(60,40,0,.15);border-radius:7px;font-size:10.5px;font-family:inherit;min-height:40px;resize:vertical;margin-bottom:7px;}
.oor-dtl-confirm-row{display:flex;gap:6px;}
.oor-dtl-confirm-btn{flex:1;padding:7px;border-radius:8px;font-size:11px;font-weight:700;color:#fff;border:none;cursor:pointer;}
.oor-dtl-confirm-btn.cancel{background:#C8300A;}
.oor-dtl-confirm-btn.ret{background:#6C40B4;}
.oor-dtl-confirm-btn:disabled{opacity:.5;cursor:not-allowed;}
.oor-dtl-keep-btn{padding:7px 11px;border-radius:8px;font-size:11px;font-weight:700;background:#fff;border:1px solid rgba(60,40,0,.15);color:#1A0A00;cursor:pointer;}
.oor-dtl-success{text-align:center;padding:8px 4px;}
.oor-dtl-success-ico{font-size:18px;margin-bottom:3px;}
.oor-dtl-success-ttl{font-size:11.5px;font-weight:800;color:#1A0A00;margin-bottom:2px;}
.oor-dtl-success-sub{font-size:10px;color:#6B4F1A;line-height:1.4;}
.oor-dtl-expired{font-size:10px;color:#6B4F1A;background:rgba(60,40,0,.04);border:1px solid rgba(60,40,0,.1);border-radius:7px;padding:7px 9px;}
/* Suggestions */
.oor-div{height:1.5px;background:rgba(178,132,18,.12);margin:32px 0 24px;}
.oor-sug-hdr{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px;}
.oor-sug-ttl{font-family:'Playfair Display',serif;font-size:19px;font-weight:800;color:#1A0A00;}
.oor-sug-link{font-size:11.5px;font-weight:700;color:#A06808;}
.oor-sug-link:hover{color:#C8780A;}
.oor-sug-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:12px;align-items:stretch;}
.oor-sc{background:#fff;border:1.5px solid rgba(201,162,39,.15);border-radius:12px;overflow:hidden;transition:border-color .15s,box-shadow .15s;box-shadow:0 2px 8px rgba(60,30,0,.05);display:flex;flex-direction:column;}
.oor-sc:hover{border-color:rgba(160,104,8,.3);box-shadow:0 4px 16px rgba(60,30,0,.1);}
.oor-sc-img-wrap{aspect-ratio:1;overflow:hidden;background:rgba(243,237,214,.4);flex-shrink:0;position:relative;}
.oor-sc-img{width:100%;height:100%;object-fit:cover;}
.oor-sc-badge{position:absolute;top:7px;left:7px;background:rgba(200,50,10,.85);color:#fff;font-size:9px;font-weight:800;padding:2px 6px;border-radius:20px;}
.oor-sc-body{padding:10px 12px;display:flex;flex-direction:column;flex:1;}
.oor-sc-name{font-size:12.5px;font-weight:800;color:#1A0A00;margin-bottom:2px;line-height:1.3;}
.oor-sc-desc{font-size:10px;color:#6B4F1A;margin-bottom:7px;line-height:1.5;}
.oor-sz-row{display:flex;gap:5px;margin-bottom:7px;}
.oor-sz-btn{flex:1;padding:4px 0;font-size:10.5px;font-weight:700;border:1.5px solid rgba(160,104,8,.3);border-radius:6px;background:#FAF3E0;color:#6B4F1A;cursor:pointer;font-family:'Inter',sans-serif;transition:all .15s;}
.oor-sz-btn.oor-sz-sel{border-color:#A06808;background:#A06808;color:#fff;}
.oor-sz-btn:hover:not(.oor-sz-sel){border-color:#A06808;color:#A06808;}
.oor-sc-pr{display:flex;align-items:center;gap:6px;margin-bottom:8px;}
.oor-sc-price{font-size:14px;font-weight:800;color:#A06808;}
.oor-sc-orig{font-size:10.5px;color:rgba(26,10,0,.3);text-decoration:line-through;}
.oor-sc-disc{font-size:9.5px;font-weight:800;color:#1A5014;}
.oor-sc-add{width:100%;padding:7px;background:linear-gradient(135deg,#F4C842,#C8780A);color:#1A0800;border:none;border-radius:7px;font-size:11px;font-weight:800;cursor:pointer;font-family:'Inter',sans-serif;margin-top:auto;}
.oor-sc-add:hover{opacity:.88;}
/* Toast */
.oor-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#1A0A00;border:1px solid rgba(244,168,37,.3);color:#F4C842;padding:10px 18px;border-radius:20px;font-size:12px;font-weight:700;z-index:9999;pointer-events:none;opacity:0;transition:opacity .3s;white-space:nowrap;}
.oor-toast.show{opacity:1;}
/* ── Account Sub-panels: Saved Addresses + Settings ── */
@keyframes apOvIn{from{opacity:0}to{opacity:1}}
@keyframes apBoxIn{from{opacity:0;transform:scale(0.90) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}

#savedAddrPanel,#settingsPanel,#editProfilePanel,#membershipPanel{
  position:fixed;inset:0;z-index:1000020;
  display:none;align-items:center;justify-content:center;
  background:rgba(4,2,0,0.72);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  padding:16px;
}
#savedAddrPanel.open,#settingsPanel.open,#editProfilePanel.open,#membershipPanel.open{display:flex;animation:apOvIn .3s ease both;}
#savedAddrPanel.open .sp-box,#settingsPanel.open .sp-box,#editProfilePanel.open .sp-box,#membershipPanel.open .sp-box{animation:apBoxIn .38s cubic-bezier(0.16,1,0.3,1) both;}

.sp-box{
  width:420px;max-width:100%;
  height:auto;max-height:calc(100vh - 40px);
  border-radius:24px;display:flex;flex-direction:column;
  background:#FAF3E0;
  border:1.5px solid rgba(178,132,18,.18);
  box-shadow:0 40px 100px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.6);
  overflow:hidden;
}
.sp-hd{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 20px;
  background:rgba(26,10,0,.05);
  border-bottom:1.5px solid rgba(178,132,18,.14);flex-shrink:0;
}
.sp-hd-ico{
  width:40px;height:40px;border-radius:12px;
  background:linear-gradient(135deg,#F4C842,#C8780A);
  display:flex;align-items:center;justify-content:center;
  font-size:18px;flex-shrink:0;box-shadow:0 4px 14px rgba(244,168,37,.3);
}
.sp-hd-ttl{font-size:15px;font-weight:900;color:#1A0A00;letter-spacing:.3px;}
.sp-hd-sub{font-size:10.5px;color:rgba(26,10,0,.45);margin-top:2px;}
.sp-close{
  background:rgba(26,10,0,.06);border:1.5px solid rgba(178,132,18,.15);
  border-radius:50%;width:34px;height:34px;cursor:pointer;
  color:rgba(26,10,0,.55);font-size:16px;
  display:flex;align-items:center;justify-content:center;
  transition:background .15s,color .15s;flex-shrink:0;
}
.sp-close:hover{background:rgba(26,10,0,.1);color:#1A0A00;}
.sp-body{overflow-y:auto;padding:16px;flex:1;min-height:0;display:flex;flex-direction:column;gap:10px;}
.sp-section-lbl{font-size:10px;font-weight:800;color:#A06808;letter-spacing:1.2px;text-transform:uppercase;padding:0 2px;}
.sp-card{
  background:#fff;border:1.5px solid rgba(201,162,39,.15);
  border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:0;
  box-shadow:0 2px 8px rgba(60,30,0,.04);
}
.sp-row-item{display:flex;align-items:center;gap:12px;padding:10px 0;}
.sp-row-item:first-child{padding-top:4px;}
.sp-row-item:last-child{padding-bottom:4px;}
.sp-row-title{font-size:13px;font-weight:700;color:#1A0A00;}
.sp-row-sub{font-size:11px;color:rgba(26,10,0,.45);margin-top:2px;}
.sp-divider{height:1px;background:rgba(178,132,18,.14);margin:0;}
.sp-toggle-row{justify-content:space-between;}
.sp-toggle{position:relative;display:inline-block;width:40px;height:22px;flex-shrink:0;}
.sp-toggle input{opacity:0;width:0;height:0;}
.sp-tog-track{position:absolute;inset:0;border-radius:22px;background:rgba(26,10,0,.14);transition:background .2s;cursor:pointer;}
.sp-tog-track::before{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 4px rgba(0,0,0,.25);}
.sp-toggle input:checked+.sp-tog-track{background:linear-gradient(135deg,#F4C842,#C8780A);}
.sp-toggle input:checked+.sp-tog-track::before{transform:translateX(18px);}
.sp-select{
  background:#fff;border:1.5px solid rgba(178,132,18,.25);
  color:#1A0A00;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:700;
  cursor:pointer;outline:none;
}
.sp-select option{background:#fff;color:#1A0A00;}
/* Saved Addresses */
.ap-sv-addr-card{background:#fff;border:1.5px solid rgba(201,162,39,.15);border-radius:12px;padding:13px 14px;box-shadow:0 2px 8px rgba(60,30,0,.04);}
.ap-sv-addr-tag{font-size:9.5px;font-weight:800;color:#A06808;letter-spacing:.8px;text-transform:uppercase;margin-bottom:4px;}
.ap-sv-addr-name{font-size:12.5px;font-weight:700;color:#1A0A00;margin-bottom:2px;}
.ap-sv-addr-text{font-size:11px;color:rgba(26,10,0,.55);line-height:1.6;}
.ap-sv-addr-btns{display:flex;gap:7px;margin-top:9px;}
.ap-sv-edit-btn{flex:1;padding:7px;background:rgba(160,104,8,.08);border:1px solid rgba(160,104,8,.2);color:#A06808;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer;}
.ap-sv-del-btn{padding:7px 11px;background:rgba(200,48,10,.06);border:1px solid rgba(200,48,10,.2);color:#C8300A;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer;}
.ap-sv-inp{width:100%;background:#fff;border:1.5px solid rgba(178,132,18,.2);border-radius:9px;padding:9px 12px;color:#1A0A00;font-size:12px;outline:none;transition:border-color .15s;box-sizing:border-box;}
.ap-sv-inp:focus{border-color:rgba(160,104,8,.5);}
.ap-sv-inp::placeholder{color:rgba(26,10,0,.28);}
.ap-sv-inp-row{display:flex;gap:7px;}
.ap-sv-inp-row .ap-sv-inp{flex:1;}
.ap-sv-form-btns{display:flex;gap:7px;}
.ap-sv-save-btn{flex:1;padding:10px;background:linear-gradient(135deg,#F4C842,#C8780A);color:#1A0800;border:none;border-radius:9px;font-size:12.5px;font-weight:800;cursor:pointer;}
.ap-sv-cancel-btn{padding:10px 14px;background:rgba(26,10,0,.05);border:1.5px solid rgba(178,132,18,.15);color:rgba(26,10,0,.6);border-radius:9px;font-size:12.5px;font-weight:700;cursor:pointer;}
.ap-sv-add-btn{width:100%;padding:11px;background:rgba(160,104,8,.06);border:1.5px dashed rgba(160,104,8,.3);color:#A06808;border-radius:12px;font-size:12.5px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;}
.ap-sv-geo-btn{width:100%;padding:11px;background:rgba(160,104,8,.08);border:1.5px solid rgba(160,104,8,.3);color:#A06808;border-radius:10px;font-size:12.5px;font-weight:700;cursor:pointer;font-family:'Inter',sans-serif;display:flex;align-items:center;justify-content:center;gap:7px;}
.ap-sv-geo-btn:hover{background:rgba(160,104,8,.15);}
.ap-sv-geo-btn:disabled{opacity:.6;cursor:not-allowed;}
.ap-sv-geo-msg{font-size:11px;font-weight:600;text-align:center;}
.ap-sv-geo-msg:empty{display:none;}
.ap-sv-geo-ok{color:#2E7D5E;}
.ap-sv-geo-err{color:#C8300A;}
.ap-sv-map-wrap{display:flex;flex-direction:column;gap:6px;}
.ap-sv-default-badge{background:#1A3A12;color:#fff;font-size:8.5px;font-weight:800;padding:2px 7px;border-radius:20px;letter-spacing:.5px;vertical-align:middle;}
.ap-sv-def-btn{padding:7px 10px;background:#fff;border:1px solid rgba(26,58,18,.3);color:#1A3A12;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer;}
.ap-sv-label-row{display:flex;gap:8px;}
.ap-sv-label-chip{flex:1;padding:9px 6px;border-radius:9px;text-align:center;font-size:11.5px;font-weight:700;background:#fff;border:1.5px solid rgba(160,104,8,.25);color:rgba(26,10,0,.6);cursor:pointer;font-family:inherit;}
.ap-sv-label-chip.active{background:#1A3A12;border-color:#1A3A12;color:#fff;}
.ap-sv-default-toggle{display:flex;align-items:center;gap:7px;font-size:11.5px;font-weight:600;color:rgba(26,10,0,.6);cursor:pointer;}

/* Shared pan-map (custom Ahalad pin) — used here, in checkout, and in the Location Picker */
.ah-map-pin{position:absolute;top:50%;left:50%;transform:translate(-50%,-100%);pointer-events:none;filter:drop-shadow(0 3px 4px rgba(0,0,0,.35));z-index:500;display:block!important;visibility:visible!important;opacity:1!important;}
/* The pin sits in this same container but must NEVER be clipped — its
   filter:drop-shadow paints outside its own box, and overflow:hidden on an
   ancestor of a filtered element is a known flicker trigger on some mobile
   browsers while a sibling (the map tiles) is being panned/animated. So the
   rounded-corner clip lives on the inner tile div only, not this wrapper. */
.ah-panmap-outer{position:relative;border-radius:12px;border:1.5px solid rgba(160,104,8,.3);}
.ah-panmap{width:100%;height:200px;background:#eee;border-radius:10.5px;overflow:hidden;}
.ah-panmap-attr{position:absolute;right:4px;bottom:2px;font-size:7.5px;color:rgba(0,0,0,.5);background:rgba(255,255,255,.6);padding:1px 5px;border-radius:5px;z-index:2;}
.ah-panmap-hint{font-size:10.5px;font-weight:600;text-align:center;color:rgba(26,10,0,.45);}
.ah-panmap-fallback{font-size:11.5px;font-weight:600;line-height:1.6;text-align:center;color:rgba(26,10,0,.6);background:rgba(160,104,8,.06);border:1.5px dashed rgba(160,104,8,.25);border-radius:12px;padding:14px 12px;}
/* Remove Leaflet's default grab/grabbing hand cursor — our maps use a fixed
   center pin, not a draggable marker, so a plain cursor reads more correctly. */
.ah-panmap.leaflet-container,.ah-lp-map.leaflet-container,.pg-loc-map.leaflet-container,
.ah-panmap .leaflet-grab,.ah-lp-map .leaflet-grab,.pg-loc-map .leaflet-grab,
.ah-panmap.leaflet-dragging .leaflet-grab,.ah-lp-map.leaflet-dragging .leaflet-grab,.pg-loc-map.leaflet-dragging .leaflet-grab{
  cursor:default!important;
}
/* Settings rows */
.sp-settings-row{display:flex;align-items:center;gap:12px;padding:13px 16px;text-decoration:none;color:inherit;transition:background .15s;cursor:pointer;}
.sp-settings-row:hover{background:rgba(26,10,0,.04);}
.sp-sr-ico{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#F4C842,#C8780A);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;}
.sp-soon{font-size:9.5px;font-weight:800;background:rgba(160,104,8,.1);color:#A06808;border:1px solid rgba(160,104,8,.22);border-radius:20px;padding:3px 8px;white-space:nowrap;flex-shrink:0;}
.sp-chev{flex-shrink:0;}
.sp-subsec{font-size:9.5px;font-weight:800;color:rgba(26,10,0,.35);letter-spacing:1px;text-transform:uppercase;padding:8px 16px 4px;}
/* Edit Profile */
.ep-av-section{display:flex;align-items:flex-start;gap:16px;padding-bottom:6px;}
.ep-av-preview{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#46B08A,#2E7D5E);display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0;box-shadow:0 4px 14px rgba(70,176,138,.3);overflow:hidden;}
.ep-av-preview img{width:100%;height:100%;object-fit:cover;border-radius:50%;}
.ep-av-side{display:flex;flex-direction:column;flex:1;min-width:0;}
.ep-av-label{font-size:11px;font-weight:700;color:rgba(26,10,0,.55);margin-bottom:7px;}
.ep-av-grid{display:flex;flex-wrap:wrap;gap:6px;max-width:230px;}
.ep-av-opt{width:30px;height:30px;border-radius:9px;background:#fff;border:1.5px solid rgba(178,132,18,.2);font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;padding:0;}
.ep-av-opt:hover{border-color:rgba(160,104,8,.4);background:rgba(160,104,8,.06);}
.ep-av-opt.ep-av-sel{border-color:#46B08A;background:rgba(70,176,138,.12);}
.ep-av-photo-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px;}
.ep-av-photo-btn{padding:6px 10px;background:rgba(160,104,8,.08);border:1.5px solid rgba(160,104,8,.22);color:#A06808;border-radius:8px;font-size:10.5px;font-weight:700;cursor:pointer;font-family:'Inter',sans-serif;white-space:nowrap;display:inline-flex;align-items:center;gap:4px;}
.ep-av-photo-btn:hover{background:rgba(160,104,8,.15);}
.ep-av-photo-remove{padding:6px 10px;background:rgba(200,48,10,.06);border:1.5px solid rgba(200,48,10,.2);color:#C8300A;border-radius:8px;font-size:10.5px;font-weight:700;cursor:pointer;font-family:'Inter',sans-serif;white-space:nowrap;align-items:center;gap:4px;}
.ep-av-photo-remove:hover{background:rgba(200,48,10,.12);}
.ep-camera-box{display:none;flex-direction:column;gap:10px;align-items:center;background:#fff;border:1.5px solid rgba(178,132,18,.2);border-radius:14px;padding:14px;}
.ep-camera-box.ep-cam-open{display:flex;}
.ep-camera-box video{width:100%;max-width:260px;aspect-ratio:1;border-radius:12px;background:#000;object-fit:cover;transform:scaleX(-1);}
.ep-camera-actions{display:flex;gap:8px;width:100%;max-width:260px;}
.ep-cam-capture{flex:1;padding:10px;background:linear-gradient(135deg,#46B08A,#2E7D5E);color:#fff;border:none;border-radius:9px;font-size:12.5px;font-weight:800;cursor:pointer;}
.ep-cam-capture:hover{opacity:.9;}
.ep-cam-cancel{padding:10px 14px;background:rgba(26,10,0,.05);border:1.5px solid rgba(178,132,18,.15);color:rgba(26,10,0,.6);border-radius:9px;font-size:12.5px;font-weight:700;cursor:pointer;}
.ep-field{display:flex;flex-direction:column;gap:6px;}
.ep-lbl{font-size:11.5px;font-weight:700;color:rgba(26,10,0,.6);}
.ep-opt{font-weight:500;color:rgba(26,10,0,.35);text-transform:none;letter-spacing:0;}
.ep-inp{width:100%;background:#fff;border:1.5px solid rgba(178,132,18,.2);border-radius:9px;padding:10px 12px;color:#1A0A00;font-size:13px;outline:none;transition:border-color .15s;box-sizing:border-box;font-family:'Inter',sans-serif;}
.ep-inp:focus{border-color:rgba(70,176,138,.55);}
.ep-inp::placeholder{color:rgba(26,10,0,.28);}
.ep-save-btn{width:100%;padding:12px;background:linear-gradient(135deg,#46B08A,#2E7D5E);color:#fff;border:none;border-radius:10px;font-size:13.5px;font-weight:800;cursor:pointer;margin-top:4px;}
.ep-save-btn:hover{opacity:.9;}
.ep-msg{font-size:11.5px;font-weight:700;text-align:center;min-height:14px;}
.ep-msg-ok{color:#2E7D5E;}
.ep-msg-err{color:#C8300A;}
/* Manage Membership */
.mm-empty{text-align:center;padding:18px 10px 6px;}
.mm-empty-ico{font-size:34px;margin-bottom:8px;}
.mm-empty-ttl{font-size:15px;font-weight:800;color:#1A0A00;margin-bottom:4px;}
.mm-empty-sub{font-size:12px;color:rgba(26,10,0,.5);line-height:1.5;}
.mm-current{border-radius:14px;padding:18px 16px;text-align:center;}
.mm-current-ico{font-size:30px;margin-bottom:6px;}
.mm-current-name{font-size:16px;font-weight:900;font-family:'Playfair Display',serif;margin-bottom:4px;}
.mm-current-price{font-size:20px;font-weight:900;}
.mm-current-price span{font-size:11px;font-weight:600;opacity:.85;}
.mm-detail-card{background:#fff;border:1.5px solid rgba(201,162,39,.15);border-radius:12px;padding:12px 14px;}
.mm-drow{display:flex;justify-content:space-between;padding:5px 0;font-size:12px;}
.mm-drow span{color:rgba(26,10,0,.5);}
.mm-drow strong{color:#1A0A00;}
.mm-sec-lbl{font-size:10px;font-weight:800;color:#A06808;letter-spacing:1px;text-transform:uppercase;padding:2px;}
.mm-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.mm-plan-card{background:#fff;border:1.5px solid rgba(201,162,39,.18);border-radius:12px;padding:12px 8px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;}
.mm-plan-card.mm-plan-current{border-color:#C9A227;background:rgba(201,162,39,.06);}
.mm-plan-ico{font-size:19px;}
.mm-plan-name{font-size:11.5px;font-weight:800;color:#1A0A00;}
.mm-plan-price{font-size:12px;font-weight:800;color:#1A0A00;}
.mm-plan-price span{font-size:9px;font-weight:600;color:rgba(26,10,0,.45);}
.mm-plan-btn{width:100%;padding:6px;border:none;border-radius:7px;font-size:10.5px;font-weight:800;cursor:pointer;margin-top:2px;font-family:'Inter',sans-serif;}
.mm-plan-btn:hover{opacity:.9;}
.mm-plan-current-tag{font-size:10px;font-weight:800;color:#1A5014;margin-top:2px;}
.mm-cancel-btn{width:100%;padding:11px;background:rgba(200,48,10,.06);border:1.5px solid rgba(200,48,10,.2);color:#C8300A;border-radius:10px;font-size:12.5px;font-weight:700;cursor:pointer;font-family:'Inter',sans-serif;}
.mm-cancel-btn:hover{background:rgba(200,48,10,.12);}
.mm-cancel-confirm{background:rgba(200,48,10,.05);border:1.5px solid rgba(200,48,10,.2);border-radius:12px;padding:14px;}
.mm-cancel-warn{font-size:12px;color:#7A2C10;font-weight:600;line-height:1.5;margin-bottom:12px;}
.mm-cancel-btns{display:flex;gap:8px;}
.mm-cancel-yes{flex:1;padding:10px;background:#C8300A;color:#fff;border:none;border-radius:9px;font-size:12px;font-weight:800;cursor:pointer;}
.mm-cancel-no{flex:1;padding:10px;background:#fff;border:1.5px solid rgba(26,10,0,.15);color:#1A0A00;border-radius:9px;font-size:12px;font-weight:700;cursor:pointer;}
.mm-cancelled-note{background:rgba(70,176,138,.1);border:1px solid rgba(70,176,138,.3);color:#2E7D5E;font-size:12px;font-weight:700;padding:10px 12px;border-radius:9px;margin-bottom:12px;text-align:center;}
