:root{
  --bg:#f6f8fc;
  --bg2:#ffffff;
  --bg3:#eef3fb;
  --sur:#ffffff;
  --sur2:#f5f9ff;
  --bd:#dfe7f3;
  --bd2:#c7d5ea;
  --t:#101828;
  --t2:#667085;
  --t3:#6b7689;
  --ac:#0050FF;
  --ac2:#2B6CFF;
  --acl:#5E90FF;
  --acg:rgba(0,80,255,0.14);
  --acd:#003fd1;
  --gn:#12b76a;
  --rd:#f04438;
  --or:#f79009;
  --s1:4px;
  --s2:8px;
  --s3:12px;
  --s4:16px;
  --s5:20px;
  --s6:24px;
  --s7:32px;
  --s8:40px;
  --s9:56px;
  --s10:72px;
  --r1:8px;
  --r2:12px;
  --r3:16px;
  --r4:20px;
  --r5:24px;
  --r6:28px;
  --r-pill:999px;
  --r:18px;
  --fs-12:11px;
  --fs-14:13px;
  --fs-16:15px;
  --fs-18:clamp(15px,1.4vw,17px);
  --fs-20:clamp(16px,1.6vw,18px);
  --fs-24:clamp(18px,2vw,22px);
  --fs-32:clamp(22px,2.6vw,28px);
  --fs-44:clamp(28px,4vw,44px);
  --fs-56:clamp(36px,5.5vw,56px);
  --ease:cubic-bezier(.2,.7,.2,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --dur-fast:.18s;
  --dur-mid:.28s;
  --dur-slow:.48s;
  --shadow-sm:0 4px 12px rgba(16,24,40,0.06);
  --shadow:0 16px 40px rgba(16,24,40,0.08);
  --shadow2:0 24px 56px rgba(16,24,40,0.12);
  --shadow-lg:0 32px 80px rgba(16,24,40,0.16);
  --z-base:0;
  --z-dropdown:100;
  --z-sticky:200;
  --z-fixed:300;
  --z-overlay:400;
  --z-drawer:500;
  --z-modal:600;
  --z-toast:700;
  --z-spin:800;
  --z-confetti:900;
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(circle at top left, rgba(0,80,255,.09), transparent 22%),
    linear-gradient(180deg, #fbfcff 0%, #f4f7fc 100%);
  color:var(--t);
  font-family:"Manrope",sans-serif;
  font-size:15px;
  line-height:1.55;
  min-height:100vh;
  overflow-x:hidden;
}
button,input,select,textarea{font:inherit}
button{border:0;background:none}
img{display:block;max-width:100%}

.visually-hidden,
.vh{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.skip-link{
  position:absolute;
  top:-48px;
  left:8px;
  z-index:var(--z-toast);
  background:var(--ac);
  color:#fff;
  padding:10px 16px;
  border-radius:var(--r2);
  font-weight:800;
  transition:top var(--dur-fast) var(--ease);
}
.skip-link:focus{top:8px}

*:focus-visible{
  outline:2px solid var(--ac);
  outline-offset:2px;
  border-radius:var(--r1);
}

button:focus-visible,
a:focus-visible{
  box-shadow:0 0 0 4px var(--acg);
}

@keyframes fadeLift{
  from{opacity:0;transform:translateY(14px)}
  to{opacity:1;transform:translateY(0)}
}

@keyframes pulseDot{
  0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(18,183,106,.18)}
  50%{transform:scale(1.08);box-shadow:0 0 0 7px rgba(18,183,106,0)}
}

.banner{
  background:linear-gradient(90deg,var(--ac),var(--ac2));
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:8px 12px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.1em;
  line-height:1.2;
  color:#fff;
  text-transform:uppercase;
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.18);
  overflow:hidden;
}
.banner-desktop,
.banner-mobile{display:block;white-space:nowrap}
.banner-mobile{display:none}

.nav{
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(20px) saturate(1.08);
  border-bottom:1px solid rgba(223,231,243,.92);
  padding:0 20px;
  position:sticky;
  top:0;
  z-index:var(--z-sticky);
  transition:background .28s,border-color .28s,box-shadow .28s,backdrop-filter .28s;
}
body.admin-active .banner,
body.admin-active .nav,
body.admin-active .cnavbar,
body.admin-active .mobbar,
body.admin-active footer{
  display:none !important;
}
.nav.scrolled{
  background:rgba(255,255,255,.94);
  border-bottom-color:rgba(199,213,234,.9);
  box-shadow:0 10px 30px rgba(16,24,40,.07);
}
.nav-in{
  display:grid;
  grid-template-columns:minmax(140px,170px) minmax(380px,1fr) auto;
  align-items:center;
  gap:18px;
  height:72px;
  max-width:1200px;
  margin:0 auto;
}
.logo-wrap{
  cursor:pointer;
  flex-shrink:0;
  background:none;
  justify-self:start;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  padding:0;
}
.logo-img{
  width:156px;
  height:50px;
  object-fit:contain;
}

.srch{width:100%;max-width:none;position:relative;justify-self:center}
.srch input{
  width:100%;
  min-height:50px;
  background:linear-gradient(180deg,#fff,#f8fbff);
  border:1px solid rgba(199,213,234,.88);
  border-radius:999px;
  padding:0 44px 0 18px;
  color:var(--t);
  outline:none;
  transition:border-color .2s,box-shadow .2s,transform .2s;
  box-shadow:0 8px 20px rgba(16,24,40,.04);
}
.srch input:focus{border-color:var(--ac);box-shadow:0 0 0 4px var(--acg),0 12px 24px rgba(16,24,40,.05)}
.srch input::placeholder{color:var(--t3)}
.si{
  position:absolute;
  right:16px;
  top:50%;
  transform:translateY(-50%);
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  color:var(--t3);
  font-size:22px;
  line-height:1;
}

.navl{display:none}
.navl button{
  color:var(--t2);
  font-size:13px;
  font-weight:700;
  padding:10px 12px;
  border-radius:999px;
  cursor:pointer;
  transition:all .2s;
}
.navl button:hover{color:var(--t);background:var(--sur2)}
.navl button.ac{
  color:#fff;
  background:linear-gradient(135deg,var(--ac),var(--ac2));
  box-shadow:0 10px 24px rgba(0,80,255,.2);
}

.nav-act{display:flex;gap:8px;flex-shrink:0;justify-self:end;align-items:center}
.nb{
  width:46px;height:46px;border-radius:16px;
  background:linear-gradient(180deg,#fff,#f7fbff);
  border:1px solid rgba(199,213,234,.88);
  color:var(--t2);
  cursor:pointer;
  position:relative;
  display:flex;align-items:center;justify-content:center;
  transition:transform .2s,box-shadow .2s,background .2s,border-color .2s,color .2s;
  box-shadow:0 8px 20px rgba(16,24,40,.05);
}
.nb-user{
  width:auto;
  min-width:112px;
  padding:0 16px;
  border-radius:999px;
  gap:8px;
  font-size:12px;
  font-weight:800;
  color:var(--t);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.nb-user::after{
  content:"Entrar";
  white-space:nowrap;
}
.nb-user.is-auth::after{content:attr(data-user-label)}
.nb:hover{color:var(--t);border-color:var(--bd2);transform:translateY(-1px);box-shadow:0 12px 26px rgba(16,24,40,.08)}
.nb svg,.fsb svg{width:18px;height:18px}
.nb-wa{
  color:#16a34a;
  background:linear-gradient(180deg,rgba(37,211,102,.12),rgba(37,211,102,.08));
  border-color:rgba(37,211,102,.22);
}
.nb-wa:hover{
  color:#0f8a40;
  background:rgba(37,211,102,.16);
  border-color:rgba(37,211,102,.3);
}
.nb-search{
  display:none;
  color:var(--t2);
}
.nb-menu{
  display:none;
  color:var(--t2);
}
.nb-menu.is-active{
  color:var(--ac);
  border-color:#cfe0ff;
  background:rgba(0,80,255,.08);
  box-shadow:0 12px 26px rgba(0,80,255,.12);
}
.cbadge{
  position:absolute;top:-3px;right:-3px;
  min-width:19px;height:19px;padding:0 5px;
  background:var(--ac);border-radius:999px;
  font-size:10px;font-weight:800;color:#fff;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 18px rgba(0,80,255,.2);
}
.mobile-search-overlay{
  position:fixed;
  inset:0;
  background:rgba(10,16,32,.34);
  backdrop-filter:blur(8px);
  z-index:119;
  display:none;
}
.mobile-search-overlay.on{display:block}
.mobile-search-sheet{
  position:fixed;
  top:72px;
  left:12px;
  right:12px;
  z-index:120;
  display:none;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(11,31,53,.1);
  border-radius:24px;
  box-shadow:0 24px 70px rgba(15,23,42,.18);
  padding:16px;
}
.mobile-search-sheet.on{display:grid;gap:12px}
.mobile-search-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.mobile-search-head strong{
  font-family:"Sora",sans-serif;
  font-size:16px;
  letter-spacing:-.03em;
  color:var(--t);
}
.mobile-search-close{
  width:34px;height:34px;border-radius:12px;
  border:1px solid rgba(11,31,53,.1);
  background:#fff;color:var(--t2);
  display:grid;place-items:center;
}
.mobile-search-box{
  position:relative;
}
.mobile-search-box input{
  width:100%;
  min-height:48px;
  background:var(--sur2);
  border:1px solid var(--bd);
  border-radius:18px;
  padding:13px 42px 13px 16px;
  color:var(--t);
  outline:none;
}
.mobile-search-box input:focus{border-color:var(--ac);box-shadow:0 0 0 4px var(--acg)}
.mobile-search-box .si{
  position:absolute;
  right:14px;
  top:50%;
  transform:translateY(-50%);
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  color:var(--t3);
  font-size:20px;
  line-height:1;
}
.mobile-search-hint{
  font-size:12px;
  color:var(--t2);
  margin-top:-2px;
}

.mobile-menu-overlay{
  position:fixed;
  inset:0;
  background:rgba(10,16,32,.34);
  backdrop-filter:blur(8px);
  z-index:1398;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .24s ease, visibility .24s ease;
}
.mobile-menu-overlay.on{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.mobile-menu-sheet{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  top:auto;
  width:min(100%,760px);
  margin-inline:auto;
  z-index:1399;
  display:block;
  background:transparent;
  border-radius:28px 28px 0 0;
  box-shadow:0 -24px 70px rgba(15,23,42,.18);
  transform:translateY(102%);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:transform .28s ease, opacity .28s ease, visibility .28s ease;
  will-change:transform,opacity;
  height:min(94dvh,760px);
  max-height:calc(100dvh - 8px);
  padding:0;
}
.mobile-menu-sheet.on{
  transform:translateY(0);
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.mobile-menu-shell{
  height:100%;
  min-height:0;
  display:flex;
  flex-direction:column;
  background:rgba(255,255,255,.98);
  border:1px solid rgba(11,31,53,.1);
  border-bottom:0;
  border-radius:28px 28px 0 0;
  overflow:hidden;
  padding:10px 12px calc(12px + env(safe-area-inset-bottom));
}
.mobile-menu-handle{
  width:44px;
  height:4px;
  border-radius:999px;
  background:rgba(11,31,53,.12);
  margin:2px auto 8px;
}
.mobile-menu-head{
  position:sticky;
  top:0;
  z-index:1;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:4px 2px 12px;
  background:linear-gradient(180deg,rgba(255,255,255,.99) 72%, rgba(255,255,255,.94));
  backdrop-filter:blur(8px);
}
.mobile-menu-head-copy{
  display:grid;
  gap:2px;
  min-width:0;
}
.mobile-menu-kicker{
  font-size:9px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--ac);
}
.mobile-menu-brandmark{
  width:72px;
  height:auto;
  display:block;
}
.mobile-menu-head strong{
  font-family:"Sora",sans-serif;
  font-size:20px;
  line-height:1.05;
  letter-spacing:-.04em;
  color:var(--t);
}
.mobile-menu-head p{
  font-size:11px;
  line-height:1.45;
  color:var(--t2);
}
.mobile-menu-close{
  width:42px;
  height:42px;
  border-radius:14px;
  border:1px solid rgba(11,31,53,.1);
  background:#fff;
  color:var(--t2);
  display:grid;
  place-items:center;
  flex-shrink:0;
  box-shadow:0 8px 18px rgba(16,24,40,.04);
}
.mobile-menu-close svg{
  width:18px;
  height:18px;
}
.mobile-menu-body{
  flex:1;
  min-height:0;
  overflow:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  display:grid;
  gap:12px;
  padding:2px 2px 8px;
}
.mobile-menu-section{
  display:grid;
  gap:8px;
}
.mobile-menu-section-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:var(--t3);
  font-size:10px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.mobile-menu-search{
  border:1px solid #cfe0ff;
  background:linear-gradient(135deg,rgba(0,80,255,.08),rgba(0,80,255,.03));
  border-radius:20px;
  padding:14px 14px 14px 16px;
  display:flex;
  align-items:center;
  gap:12px;
  text-align:left;
  color:var(--t);
  box-shadow:0 10px 24px rgba(0,80,255,.08);
}
.mobile-menu-search-ic{
  width:38px;
  height:38px;
  border-radius:14px;
  background:#fff;
  color:var(--ac);
  display:grid;
  place-items:center;
  flex-shrink:0;
  box-shadow:0 8px 16px rgba(0,80,255,.08);
}
.mobile-menu-search-copy{
  display:grid;
  gap:2px;
  min-width:0;
  flex:1;
}
.mobile-menu-search-copy strong{
  font-family:"Sora",sans-serif;
  font-size:14px;
  line-height:1.1;
  letter-spacing:-.03em;
}
.mobile-menu-search-copy span{
  color:var(--t2);
  font-size:11px;
  line-height:1.45;
}
.mobile-menu-search-arrow{
  color:var(--ac);
  font-size:22px;
  line-height:1;
}
.mobile-menu-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(152px,1fr));
  gap:6px;
}
.mobile-menu-card{
  border:1px solid var(--bd);
  background:linear-gradient(180deg,#fff,#f8fbff);
  border-radius:18px;
  padding:9px 10px;
  display:flex;
  align-items:center;
  gap:7px;
  text-align:left;
  color:var(--t);
  cursor:pointer;
  min-height:76px;
  box-shadow:0 8px 18px rgba(16,24,40,.05);
  transition:transform .2s,box-shadow .2s,border-color .2s,background .2s;
}
.mobile-menu-card:hover{
  transform:translateY(-2px);
  border-color:#cfe0ff;
  box-shadow:0 14px 28px rgba(16,24,40,.08);
}
.mobile-menu-card:active{
  transform:translateY(0);
}
.mobile-menu-card strong{
  font-family:"Sora",sans-serif;
  font-size:11.5px;
  letter-spacing:-.02em;
  line-height:1.05;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.mobile-menu-card small{
  color:var(--t2);
  font-size:8.5px;
  line-height:1.2;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.mobile-menu-card-ic{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#eef5ff;
  color:var(--ac);
  flex-shrink:0;
  line-height:0;
}
.mobile-menu-card-ic svg{
  width:17px;
  height:17px;
  display:block;
}
.mobile-menu-card-copy{
  display:grid;
  gap:1px;
  flex:1 1 auto;
  min-width:0;
  align-self:center;
}
.mobile-menu-card-badge{
  margin-left:auto;
  min-width:20px;
  height:20px;
  padding:0 6px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(0,80,255,.1);
  color:var(--ac);
  font-size:8px;
  font-weight:800;
  flex-shrink:0;
  align-self:center;
}
.mobile-menu-support-whatsapp .mobile-menu-card-ic{
  width:34px;
  height:34px;
  border-radius:50%;
}
.mobile-menu-category-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(146px,1fr));
  gap:8px;
}
.mobile-menu-category{
  border:1px solid rgba(0,80,255,.12);
  background:#fff;
  border-radius:16px;
  padding:10px 11px;
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--t);
  box-shadow:0 8px 18px rgba(16,24,40,.04);
  transition:transform .2s,box-shadow .2s,border-color .2s;
  min-height:46px;
}
.mobile-menu-category:hover{
  transform:translateY(-2px);
  border-color:#cfe0ff;
  box-shadow:0 14px 28px rgba(16,24,40,.08);
}
.mobile-menu-category .mobile-menu-card-ic{
  background:linear-gradient(135deg,rgba(0,80,255,.1),rgba(0,80,255,.04));
}
.mobile-menu-category strong{
  font-family:"Sora",sans-serif;
  font-size:12.5px;
  letter-spacing:-.02em;
  line-height:1.1;
}
.mobile-menu-account-card,
.mobile-menu-support-card{
  border:1px solid var(--bd);
  background:linear-gradient(180deg,#fff,#f8fbff);
  border-radius:22px;
  padding:11px;
  box-shadow:0 8px 18px rgba(16,24,40,.05);
  display:grid;
  gap:8px;
}
.mobile-menu-account-top{
  display:flex;
  align-items:center;
  gap:10px;
}
.mobile-menu-account-avatar{
  width:38px;
  height:38px;
  border-radius:13px;
  background:linear-gradient(135deg,var(--ac),var(--ac2));
  color:#fff;
  display:grid;
  place-items:center;
  font-family:"Sora",sans-serif;
  font-size:12px;
  font-weight:800;
  flex-shrink:0;
  box-shadow:0 10px 22px rgba(0,80,255,.16);
}
.mobile-menu-account-copy{
  min-width:0;
  display:grid;
  gap:1px;
}
.mobile-menu-account-copy strong{
  font-family:"Sora",sans-serif;
  font-size:13px;
  line-height:1.1;
  letter-spacing:-.03em;
}
.mobile-menu-account-copy span{
  color:var(--t2);
  font-size:10px;
  line-height:1.35;
}
.mobile-menu-account-actions{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(130px,1fr));
  gap:7px;
}
.mobile-menu-link{
  min-height:40px;
  padding:8px 10px;
  border-radius:13px;
  border:1px solid var(--bd);
  background:#fff;
  color:var(--t);
  display:flex;
  align-items:center;
  gap:7px;
  justify-content:center;
  font-size:11.5px;
  font-weight:800;
  box-shadow:0 6px 14px rgba(16,24,40,.04);
}
.mobile-menu-link .mobile-menu-card-ic{
  width:20px;
  height:20px;
  border-radius:8px;
}
.mobile-menu-link.primary{
  background:linear-gradient(135deg,var(--ac),var(--ac2));
  color:#fff;
  border-color:transparent;
}
.mobile-menu-link.primary .mobile-menu-card-ic{
  background:rgba(255,255,255,.16);
  color:#fff;
}
.mobile-menu-support-whatsapp{
  min-height:42px;
  border-radius:16px;
  border:1px solid rgba(37,211,102,.22);
  background:linear-gradient(135deg,rgba(37,211,102,.12),rgba(37,211,102,.04));
  color:#168b3b;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:0 14px;
  font-weight:800;
}
.mobile-menu-support-whatsapp .mobile-menu-card-ic{
  background:rgba(37,211,102,.14);
  color:#168b3b;
}
.mobile-menu-support-secondary{
  min-height:42px;
  border-radius:16px;
  border:1px solid rgba(11,31,53,.1);
  background:#fff;
  color:var(--t);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:0 14px;
  font-weight:800;
}
.mobile-menu-support-note{
  font-size:11px;
  color:var(--t2);
  line-height:1.45;
  text-align:center;
}
.mobile-menu-footer{
  padding-top:8px;
  border-top:1px solid rgba(223,231,243,.95);
  color:var(--t2);
  font-size:11px;
  line-height:1.45;
  text-align:center;
}
.mobile-menu-footer strong{
  color:var(--t);
}
.mobile-menu-sheet .menu-row{
  display:flex;
  align-items:center;
  gap:8px;
  flex:1 1 auto;
  min-width:0;
}
.mobile-menu-sheet .menu-row .menu-label{
  min-width:0;
  display:grid;
  gap:1px;
  flex:1 1 auto;
}
.mobile-menu-sheet .menu-row .menu-title{
  font-family:"Sora",sans-serif;
  font-size:12.5px;
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.05;
}
.mobile-menu-sheet .menu-row .menu-sub{
  font-size:10px;
  line-height:1.25;
  color:var(--t2);
}

body.mobile-menu-open .bottom-nav,
body.account-notifications-open .bottom-nav{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(24px);
}
body.account-notifications-open .account-template .topbar{
  position:static;
  z-index:1;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  background:transparent;
}

.cnavbar{
  background:rgba(255,255,255,.9);
  border-bottom:1px solid rgba(223,231,243,.95);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
  padding:0 20px;
}
.scroll-shell,
.scroll-row-wrap{
  position:relative;
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.scroll-shell{
  max-width:1200px;
  margin:0 auto;
  padding:8px 0;
}
.cnavbar-in{
  display:flex;gap:10px;height:54px;align-items:center;
  max-width:1200px;margin:0 auto;overflow-x:auto;flex:1;
  scrollbar-width:none;
  scroll-behavior:smooth;
  min-width:0;
  justify-content:center;
  scroll-snap-type:x proximity;
}
.cnavbar-in::-webkit-scrollbar{display:none}
.cnavbar-in.is-overflowing{justify-content:flex-start}
.scroll-btn{
  width:36px;height:36px;flex:0 0 36px;
  border-radius:50%;
  border:1px solid var(--bd);
  background:rgba(255,255,255,.94);
  color:var(--t2);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(16,24,40,.08);
  transition:all .2s;
  z-index:3;
}
.scroll-btn:hover{color:var(--t);border-color:var(--bd2);transform:translateY(-1px)}
.scroll-btn.hidden{display:none}
.cl{
  white-space:nowrap;
  color:var(--t2);
  font-size:12px;
  font-weight:800;
  padding:0 15px;
  min-height:40px;
  border-radius:999px;
  cursor:pointer;
  transition:all .2s;
  background:linear-gradient(180deg,#fff,#f8fbff);
  border:1px solid transparent;
  display:inline-flex;
  align-items:center;
  gap:6px;
  box-shadow:0 8px 18px rgba(16,24,40,.04);
  scroll-snap-align:center;
}
.cl:hover{color:var(--t);background:#fff;border-color:#dbe6f3;transform:translateY(-1px)}
.cl.ac{color:var(--ac);background:#eff5ff;border-color:#cfe0ff;box-shadow:0 10px 22px rgba(0,80,255,.09)}

.pg{display:none}
.pg.on{display:block}

.hero{
  position:relative;height:360px;overflow:visible;
  max-width:1200px;margin:16px auto 0;padding:0 20px 26px;
}
.slide{
  position:absolute;inset:0 20px 34px 20px;
  opacity:0;transition:opacity .7s;
  display:flex;align-items:center;justify-content:center;overflow:hidden;
  box-shadow:none;
  background:transparent;
  pointer-events:none;
}
.slide.on{opacity:1;pointer-events:auto;z-index:1}
.hero-banner-frame{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 0 20px;
  background:transparent;
  text-decoration:none;
  color:inherit;
  cursor:pointer;
}
.hero-banner-frame:focus-visible{
  outline:3px solid rgba(0,80,255,.22);
  outline-offset:4px;
  border-radius:24px;
}
.hero-banner-img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  display:block;
  border-radius:0;
  background:#fff;
}
.hero-copy{
  position:absolute;
  left:52px;
  bottom:54px;
  z-index:11;
  max-width:540px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(255,255,255,.6);
  backdrop-filter:blur(16px);
  border-radius:28px;
  padding:26px 26px 22px;
  box-shadow:0 18px 48px rgba(16,24,40,.14);
}
.hero-kicker{
  font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;
  color:var(--ac);margin-bottom:10px;
}
.hero-title{
  font-family:"Sora",sans-serif;
  font-size:clamp(28px,4vw,44px);
  line-height:1.04;
  letter-spacing:-.06em;
  margin-bottom:12px;
}
.hero-text{font-size:15px;color:var(--t2);max-width:46ch}
.hero-cta-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.hero-wa-cta{text-decoration:none}
.hero-proof-row{
  display:flex;gap:14px;flex-wrap:wrap;margin-top:16px;
  font-size:11px;font-weight:800;color:var(--t2)
}
.hero-proof-row span{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid var(--bd);
}

.searchpg{
  max-width:1200px;
  margin:0 auto;
  padding:26px 20px 12px;
}
.searchpg-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  flex-wrap:wrap;
  margin-bottom:16px;
}
.searchpg-head .sec-ti{margin-bottom:4px}
.searchpg-head .pc2{display:inline-flex;margin-top:10px}
.searchpg-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.search-suggestions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:16px;
}
.search-suggestions .cl{
  background:#fff;
  border:1px solid var(--bd);
}
.search-empty-state{
  margin-bottom:16px;
}
.search-empty-card{
  padding:26px;
  border-radius:24px;
  border:1px dashed var(--bd2);
  background:linear-gradient(180deg,#fff 0%,#f7fbff 100%);
  box-shadow:var(--shadow);
  display:grid;
  gap:10px;
}
.search-empty-card strong{
  font-family:"Sora",sans-serif;
  font-size:18px;
  line-height:1.25;
  letter-spacing:-.03em;
}
.search-empty-card p{
  color:var(--t2);
  font-size:14px;
  line-height:1.65;
}
.search-empty-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:4px;
}
.search-grid{margin-top:6px}
.srch .si,.mobile-search-box .si{cursor:pointer}
.quick-shop-section{padding-top:16px}
.quick-shop-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.quick-card{
  position:relative;
  border-radius:28px;
  overflow:hidden;
  border:1px solid rgba(11,31,53,.08);
  background:linear-gradient(180deg,#ffffff 0%,#fafdff 100%);
  box-shadow:0 10px 26px rgba(16,24,40,.08);
  cursor:pointer;
  transition:transform .26s ease, box-shadow .26s ease, border-color .26s ease, background .26s ease;
  animation:fadeLift .55s ease both;
}
.quick-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,.6),transparent 28%);
  opacity:0;
  pointer-events:none;
  transition:opacity .26s ease;
}
.quick-card:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 38px rgba(16,24,40,.12);
  border-color:#cfe0ff;
}
.quick-card:hover::before{opacity:1}
.quick-media{
  position:relative;
  aspect-ratio:1/1;
  background:linear-gradient(135deg,#f7fbff,#eaf2ff);
  border-bottom:1px solid rgba(11,31,53,.06);
  overflow:hidden;
}
.quick-img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .42s ease;
}
.quick-card:hover .quick-img{transform:scale(1.05)}
.quick-topline{
  position:absolute;
  left:12px;
  top:12px;
  right:56px;
  display:flex;
  align-items:flex-start;
  gap:8px;
  pointer-events:none;
}
.quick-badge{
  padding:5px 9px;
  border-radius:999px;
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  background:rgba(255,255,255,.84);
  backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.92);
  color:var(--t);
  box-shadow:0 8px 18px rgba(16,24,40,.06);
}
.quick-wish{
  position:absolute;
  top:12px;
  right:12px;
  width:38px;
  height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(255,255,255,.84);
  backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.92);
  box-shadow:0 8px 18px rgba(16,24,40,.08);
  color:var(--t2);
  font-size:16px;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, color .2s ease;
}
.quick-wish:hover{
  transform:scale(1.06);
  color:var(--rd);
  border-color:#ffd7d3;
  background:#fff8f7;
}
.quick-body{
  padding:16px 16px 17px;
  display:grid;
  gap:10px;
}
.quick-brand-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.quick-brand{
  font-size:10px;
  font-weight:900;
  color:var(--ac);
  letter-spacing:.18em;
  text-transform:uppercase;
}
.quick-rating{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:6px 8px;
  border-radius:999px;
  background:#f4f7fc;
  border:1px solid rgba(11,31,53,.06);
  font-size:11px;
  font-weight:800;
  color:var(--t2);
  white-space:nowrap;
}
.quick-rating small{
  font-size:10px;
  color:var(--t3);
  font-weight:800;
}
.quick-name{
  font-family:"Sora",sans-serif;
  font-size:16px;
  line-height:1.16;
  letter-spacing:-.04em;
  font-weight:700;
  color:var(--t);
  min-height:44px;
}
.quick-specs{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.quick-spec{
  padding:6px 8px;
  border-radius:999px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--t2);
  background:#f7f9fc;
  border:1px solid rgba(11,31,53,.06);
}
.quick-price-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  padding-top:4px;
}
.quick-price-block{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.quick-price-label{
  font-size:10px;
  font-weight:800;
  color:var(--t3);
  letter-spacing:.14em;
  text-transform:uppercase;
}
.quick-price-block strong{
  font-family:"Sora",sans-serif;
  font-size:24px;
  line-height:1;
  letter-spacing:-.05em;
  color:var(--t);
}
.quick-price-row span{
  font-size:12px;
  color:var(--t3);
  font-weight:800;
  text-align:right;
  white-space:nowrap;
}
.quick-price-row span:not(.quick-installments){
  text-decoration:line-through;
}
.quick-old{
  font-size:12px;
  color:var(--t3);
  font-weight:800;
  text-align:right;
  white-space:nowrap;
}
.quick-installments{
  font-size:12px;
  color:var(--ac);
  font-weight:900;
  text-align:right;
  white-space:nowrap;
}
.quick-actions{
  display:grid;
  grid-template-columns: .92fr 1.08fr;
  gap:10px;
  margin-top:4px;
}
.quick-btn{
  min-height:46px;
  border-radius:16px;
  border:1px solid transparent;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  width:100%;
  padding:0 14px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, color .2s ease;
}
.quick-btn:focus-visible{
  outline:2px solid rgba(0,80,255,.18);
  outline-offset:2px;
}
.quick-btn-ghost{
  background:#fff;
  color:var(--t);
  border-color:rgba(11,31,53,.09);
  box-shadow:0 8px 18px rgba(16,24,40,.04);
}
.quick-btn-ghost:hover{
  transform:translateY(-1px);
  background:#f8fbff;
  border-color:#cfe0ff;
}
.quick-btn-primary{
  background:linear-gradient(135deg,var(--ac),var(--ac2));
  color:#fff;
  box-shadow:0 12px 24px rgba(0,80,255,.22);
}
.quick-btn-primary:hover{
  transform:translateY(-1px);
  background:linear-gradient(135deg,var(--acd),var(--ac));
  box-shadow:0 16px 30px rgba(0,80,255,.28);
}
.hdots{
  position:absolute;bottom:0;left:50%;transform:translateX(-50%);
  display:flex;gap:8px;z-index:10;
}
.hd{
  width:10px;height:10px;border-radius:50%;background:rgba(16,24,40,.16);cursor:pointer;transition:all .3s
}
.hd.on{width:30px;border-radius:999px;background:var(--ac2)}

.btnp,.btng{
  border-radius:999px;padding:13px 22px;font-size:12px;font-weight:800;
  cursor:pointer;transition:all .2s;letter-spacing:.12em;text-transform:uppercase;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
}
.btnp{background:linear-gradient(135deg,var(--ac),var(--ac2));color:#fff;box-shadow:0 12px 28px rgba(0,80,255,.24)}
.btnp:hover{background:linear-gradient(135deg,var(--acd),var(--ac));transform:translateY(-1px)}
.btng{background:#fff;color:var(--t);border:1px solid var(--bd)}
.btng:hover{background:var(--sur2);border-color:var(--bd2);transform:translateY(-1px)}
.wide{width:100%}

.sec{padding:58px 20px}
.alt{background:linear-gradient(180deg,#f3f7fd 0%,#edf3fb 100%);border-top:1px solid var(--bd);border-bottom:1px solid var(--bd)}
.secp0{padding-top:0}
.sec-in{max-width:1200px;margin:0 auto}
.sec-hd{margin-bottom:28px}
.row-between{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.sec-ti{
  font-family:"Sora",sans-serif;
  font-size:clamp(20px,2.5vw,28px);font-weight:800;letter-spacing:-.04em;margin-bottom:6px;
}
.sec-su{color:var(--t2);font-size:14px}
.va{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:40px;padding:0 16px;border-radius:999px;
  background:#fff;border:1px solid rgba(0,80,255,.16);box-shadow:0 8px 20px rgba(0,80,255,.06);
  color:var(--ac);font-size:12px;font-weight:900;cursor:pointer;letter-spacing:.08em;text-transform:uppercase;
  transition:transform .18s,box-shadow .18s,border-color .18s,background .18s;
}
.va:hover{color:var(--acd);border-color:rgba(0,80,255,.34);box-shadow:0 12px 26px rgba(0,80,255,.12);transform:translateY(-1px)}

.cgrid{
  display:flex;
  gap:12px;
  overflow-x:auto;
  padding-bottom:8px;
  scrollbar-width:none;
  scroll-behavior:smooth;
  flex:1;
}
.cgrid::-webkit-scrollbar{display:none}
.category-showcase{
  display:grid;
  gap:14px;
}
.cgrid-home{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  overflow:visible;
  padding-bottom:0;
}
.ccard{
  min-width:148px;
  flex:0 0 148px;
  min-height:148px;
  border-radius:22px;padding:16px;text-align:left;cursor:pointer;transition:all .25s;
  border:1px solid var(--bd);background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);box-shadow:var(--shadow);
  display:grid;gap:10px;align-content:space-between;
}
.ccard:hover{border-color:#cfe0ff;background:#f7fbff;transform:translateY(-4px);box-shadow:var(--shadow2)}
.cc-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.ci{font-size:26px;display:block}
.cc-kicker{
  display:inline-flex;align-items:center;justify-content:center;
  padding:5px 9px;border-radius:999px;background:#eef5ff;color:var(--ac);
  font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase
}
.cn{font-family:"Sora",sans-serif;font-weight:800;font-size:19px;line-height:1.05;letter-spacing:-.05em;color:var(--t)}
.cc{font-size:12px;color:var(--t2);line-height:1.42;max-width:28ch}
.cc-subcats{display:flex;flex-wrap:wrap;gap:8px}
.cc-subcats span{
  display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border-radius:999px;
  background:#fff;border:1px solid rgba(11,31,53,.08);color:var(--t2);font-size:10px;font-weight:800
}
.cc-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}
.cc-meta strong{font-size:11px;font-weight:900;color:var(--t)}
.cc-meta span{font-size:10px;font-weight:900;color:var(--ac);letter-spacing:.06em;text-transform:uppercase}

.pgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px}
.pgrid-home{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.pgrid-home>.pcard:first-child{grid-column:auto}
.pgrid-home .pcard{min-height:172px;padding:20px}
.pgrid-home .pe{top:16px;right:16px;font-size:38px}
.pgrid-home .pt{font-size:18px}
.pgrid-home .pp{font-size:19px;margin-top:8px}
.pcard{
  border-radius:28px;padding:24px;position:relative;overflow:hidden;cursor:pointer;transition:transform .25s;
  min-height:198px;display:flex;flex-direction:column;justify-content:flex-end;background:#fff;border:1px solid var(--bd);box-shadow:var(--shadow);
}
.pcard:hover{transform:translateY(-4px)}
.pe{position:absolute;right:18px;top:20px;font-size:48px;opacity:.88}
.pl{font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--t3);margin-bottom:6px}
.pt{font-family:"Sora",sans-serif;font-size:20px;font-weight:800;line-height:1.18;color:var(--t);letter-spacing:-.04em}
.pp{font-size:22px;font-weight:900;color:var(--ac);margin-top:10px}

.pgrd{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;align-items:stretch}
.pc{
  border-radius:24px;overflow:hidden;cursor:pointer;transition:transform .25s,box-shadow .25s;
  position:relative;background:#fff;border:1px solid var(--bd);box-shadow:0 4px 14px rgba(16,24,40,.04);
  display:flex;flex-direction:column;height:100%;
}
.pc:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(16,24,40,.1);border-color:#cfe0ff}
.piw{
  position:relative;background:linear-gradient(135deg,#f7fbff,#eaf2ff);aspect-ratio:1;
  display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid var(--bd);
}
.pimg{font-size:72px;line-height:1;transition:transform .4s}
.pc:hover .pimg,.pc:hover .imgfill{transform:scale(1.06)}
.imgfill{width:100%;height:100%;object-fit:cover;display:block}
.piw .imgfill{padding:0;object-fit:cover}
.pbadges{
  position:absolute;top:10px;left:10px;right:52px;
  display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start
}
.badge{
  padding:4px 7px;border-radius:999px;font-size:8px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;
  background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.9);max-width:fit-content;line-height:1.1
}
.bs{background:#ffe6e4;color:var(--rd)}
.bn{background:#eaf2ff;color:var(--ac)}
.bh{background:#fff2dc;color:var(--or)}
.bo{background:#eaf2ff;color:var(--ac)}
.bl{background:#121826;color:#fff}
.atcq{
  position:absolute;bottom:14px;left:14px;right:14px;background:linear-gradient(135deg,var(--ac),var(--ac2));
  border:none;color:#fff;min-height:44px;padding:12px;border-radius:14px;font-size:11px;font-weight:800;cursor:pointer;
  transition:opacity .2s,transform .2s;display:flex;align-items:center;justify-content:center;gap:6px;
  letter-spacing:.08em;text-transform:uppercase;opacity:0;transform:translateY(8px);
}
.pc:hover .atcq{opacity:1;transform:translateY(0)}
.wb{
  position:absolute;top:12px;right:12px;background:rgba(255,255,255,.9);border:1px solid var(--bd);border-radius:50%;
  width:32px;height:32px;cursor:pointer;color:var(--t2);font-size:15px;display:flex;align-items:center;justify-content:center;transition:all .2s
}
.wb:hover{color:var(--rd);border-color:#ffd7d3}
.wb.is-active,.pdwb.is-active{color:var(--rd);border-color:#ffd7d3;background:#fff4f3}
.pi{padding:15px 15px 16px;display:flex;flex-direction:column;min-height:142px}
.pbr{font-size:10px;font-weight:800;color:var(--ac);text-transform:uppercase;letter-spacing:.14em;margin-bottom:5px}
.pn{
  font-size:14px;font-weight:700;margin-bottom:10px;line-height:1.4;color:var(--t);
  min-height:40px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden
}
.ppri{display:flex;align-items:center;gap:7px;margin-bottom:6px;flex-wrap:wrap}
.ppc{font-size:20px;font-weight:900;letter-spacing:-.04em;color:var(--t)}
.ppo{font-size:12px;color:var(--t3);text-decoration:line-through}
.ppct{font-size:10px;background:#fff2dc;color:var(--or);border-radius:999px;padding:3px 7px;font-weight:800;letter-spacing:.06em}
.pcuot{
  font-size:11px;
  color:var(--t2);
  margin-top:auto;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  min-width:0;
}
.pcuot-text{
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.pcuot-logos{
  display:inline-flex;
  align-items:center;
  gap:4px;
  flex:0 0 auto;
}
.pcuot-logos img{
  display:block;
  height:12px;
  width:auto;
  object-fit:contain;
}
.pst{display:flex;align-items:center;gap:5px;margin-top:8px}
.stars{color:#fdb022;font-size:12px}
.src{font-size:11px;color:var(--t3)}
.purg{
  margin-top:7px;font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;
  color:var(--ac);display:flex;align-items:center;gap:5px;
}
.purg::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ac);box-shadow:0 0 0 4px rgba(0,80,255,.12)}
.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;align-items:stretch}
.trust-section,.reviews-section,.benefits-section{padding-top:42px;padding-bottom:46px}
.trust-section .sec-hd{margin-bottom:18px}
.trust-hd{align-items:flex-end}
.trust-badge-line{
  display:inline-flex;align-items:center;justify-content:center;min-height:34px;
  padding:0 14px;border-radius:999px;background:rgba(0,80,255,.08);border:1px solid rgba(0,80,255,.14);
  color:var(--ac);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;
}
.trust-cta-button{
  cursor:pointer;
  min-height:44px;
  padding:0 20px;
  box-shadow:0 12px 28px rgba(0,80,255,.12);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease,color .2s ease;
}
.trust-cta-button:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 36px rgba(0,80,255,.18);
  border-color:rgba(0,80,255,.26);
  background:rgba(0,80,255,.12);
}
.trust-chip{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,#fff 0%,#f7fbff 100%);border:1px solid var(--bd);border-radius:28px;padding:18px 18px 18px;
  box-shadow:var(--shadow);display:grid;gap:7px;justify-items:start;align-content:start;min-height:156px;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  animation:fadeLift .55s ease both;
}
.trust-chip::before{content:none}
.trust-chip:hover{transform:translateY(-4px);box-shadow:var(--shadow2);border-color:#cfe0ff}
.trust-chip:nth-child(2){animation-delay:.06s}
.trust-chip:nth-child(3){animation-delay:.12s}
.trust-chip:nth-child(4){animation-delay:.18s}
.trust-chip-top{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  min-width:0;
}
.trust-icon{
  width:44px;height:44px;border-radius:16px;background:#eef5ff;color:var(--ac);
  display:inline-flex;align-items:center;justify-content:center;font-size:20px;
  box-shadow:0 12px 24px rgba(0,80,255,.1)
}
.trust-icon svg{
  display:block;
  width:18px;
  height:18px;
}
.trust-chip small{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:5px 9px;
  border-radius:999px;
  background:#f4f8ff;
  color:var(--ac);
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase
}
.trust-chip strong{font-family:"Sora",sans-serif;font-size:21px;line-height:1.15;letter-spacing:-.05em;color:var(--t)}
.trust-chip span{color:var(--t2);font-size:13px;line-height:1.55}

.cat-subnav{
  display:none;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 18px;
}
.cat-subnav.on{display:flex}
.subcat-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  padding:0 14px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(11,31,53,.08);
  color:var(--t2);
  font-size:12px;
  font-weight:800;
  cursor:pointer;
  transition:all .2s ease;
}
.subcat-pill span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:22px;
  height:22px;
  padding:0 7px;
  border-radius:999px;
  background:#f2f6fc;
  color:var(--t2);
  font-size:10px;
}
.subcat-pill:hover{
  transform:translateY(-1px);
  border-color:#cfe0ff;
  color:var(--t);
  box-shadow:0 10px 22px rgba(16,24,40,.08);
}
.subcat-pill.on{
  background:linear-gradient(135deg,var(--ac),var(--ac2));
  color:#fff;
  border-color:transparent;
  box-shadow:0 14px 28px rgba(0,80,255,.2);
}
.subcat-pill.on span{
  background:rgba(255,255,255,.18);
  color:#fff;
}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}
.carousel-shell{
  position:relative;
  overflow:hidden;
  border-radius:28px;
}
.review-carousel-track,
.recent-carousel-track{
  width:max-content;
  display:flex;
  gap:16px;
  animation:marqueeLoop 42s linear infinite;
  will-change:transform;
}
.review-carousel-track .review-card{
  width:min(360px,78vw);
  flex:0 0 auto;
}
.review-card{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,#fff 0%,#f7fbff 100%);
  border:1px solid var(--bd);border-radius:24px;padding:24px;box-shadow:var(--shadow);display:grid;align-content:start;
  min-height:100%;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
  animation:fadeLift .55s ease both;
}
.review-card::before{
  content:"";
  position:absolute;
  inset:auto -24px -32px auto;
  width:140px;
  height:140px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(0,80,255,.14) 0%,rgba(0,80,255,0) 72%);
  pointer-events:none;
}
.review-card:hover{transform:translateY(-4px);border-color:#cfe0ff;box-shadow:var(--shadow2)}
.review-card:nth-child(2){animation-delay:.06s}
.review-card:nth-child(3){animation-delay:.12s}
.review-stars{font-size:14px;letter-spacing:.12em;color:#f5b301;margin-bottom:10px}
.review-badge{
  display:inline-flex;align-items:center;gap:6px;width:max-content;
  margin-bottom:10px;padding:6px 10px;border-radius:999px;background:#f3f7ff;border:1px solid rgba(0,80,255,.12);
  font-size:10px;font-weight:900;color:var(--ac);letter-spacing:.06em;text-transform:uppercase
}
.review-card p{position:relative;color:var(--t2);font-size:14px;line-height:1.75;margin-bottom:12px}
.review-card strong{font-size:12px;letter-spacing:.04em;color:var(--t)}
.recent-purchases{
  display:flex;
  gap:14px;
  width:max-content;
  padding:2px 2px 10px;
}
.recent-chip{
  background:linear-gradient(180deg,#fff 0%,#f7fbff 100%);border:1px solid var(--bd);border-radius:22px;padding:16px;
  display:grid;gap:7px;box-shadow:0 8px 24px rgba(16,24,40,.06);transition:transform .2s ease,border-color .2s ease;
  animation:fadeLift .55s ease both;
  position:relative;
  overflow:hidden
}
.recent-carousel-track .recent-chip{
  width:min(260px,72vw);
  flex:0 0 auto;
}
.recent-chip::before{
  content:"";
  position:absolute;
  inset:auto -28px -28px auto;
  width:84px;height:84px;border-radius:50%;
  background:radial-gradient(circle, rgba(0,80,255,.08) 0%, transparent 68%);
  pointer-events:none;
}
.recent-chip:hover{transform:translateY(-3px);border-color:#cfe0ff}
.recent-chip:nth-child(2){animation-delay:.06s}
.recent-chip:nth-child(3){animation-delay:.12s}
.recent-chip:nth-child(4){animation-delay:.18s}
.recent-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.recent-avatar{
  width:34px;height:34px;border-radius:50%;
  background:linear-gradient(135deg,#e6eeff,#cfe0ff);color:var(--ac);
  display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:900
}
.recent-status{
  display:inline-flex;align-items:center;gap:6px;
  font-size:10px;color:var(--gn);font-weight:800;letter-spacing:.08em;text-transform:uppercase
}
.recent-status::before{
  content:"";width:7px;height:7px;border-radius:50%;background:var(--gn);
  box-shadow:0 0 0 6px rgba(18,183,106,.12);animation:pulseDot 1.9s infinite
}
.recent-chip strong{font-size:13px;color:var(--t)}
.recent-chip span{font-size:12px;color:var(--t2)}
.recent-chip small{font-size:11px;color:var(--ac);font-weight:800;text-transform:uppercase;letter-spacing:.08em}

.srow{
  display:flex;
  gap:16px;
  overflow-x:auto;
  padding:4px 2px 12px;
  scrollbar-width:none;
  scroll-behavior:smooth;
  flex:1;
  min-width:0;
}
.srow::-webkit-scrollbar{display:none}
.srow .pc{width:260px;min-width:260px;max-width:260px;flex:0 0 260px;flex-shrink:0}
.srow .piw{aspect-ratio:1/1}
@keyframes marqueeLoop{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

.trow{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}
.benefits-section .trow{margin-top:0}
.tc{
  min-height:170px;
  padding:24px;
  border-radius:24px;
  text-align:center;
  border:1px solid var(--bd);
  background:#fff;
  transition:border-color .2s;
  box-shadow:var(--shadow);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
  animation:fadeLift .55s ease both;
}
.tc:hover{border-color:#cfe0ff;transform:translateY(-4px);box-shadow:var(--shadow2)}
.tc:nth-child(2){animation-delay:.06s}
.tc:nth-child(3){animation-delay:.12s}
.tc:nth-child(4){animation-delay:.18s}
.tic{font-size:28px;margin-bottom:8px}
.ttt{font-size:13px;font-weight:800;margin-bottom:4px}
.tsd{font-size:11px;color:var(--t3)}

.brow{display:flex;gap:10px;overflow-x:auto;padding:8px 0;scrollbar-width:none}
.brow::-webkit-scrollbar{display:none}
.bp{
  flex-shrink:0;background:#fff;border:1px solid var(--bd);border-radius:999px;padding:10px 18px;font-size:12px;font-weight:800;color:var(--t2);
  cursor:pointer;transition:all .2s;white-space:nowrap;letter-spacing:.06em;box-shadow:var(--shadow)
}
.bp:hover{color:var(--t);border-color:#cfe0ff;background:#f7fbff}

.catpg-in{
  max-width:1240px;margin:0 auto;padding:34px 20px;display:grid;grid-template-columns:minmax(260px,300px) minmax(0,1fr);gap:28px;align-items:start
}
.cat-main{min-width:0}
.cat-breadcrumb{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  margin:2px 0 14px;
  font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--t3)
}
.cat-breadcrumb button,.cat-breadcrumb strong{
  background:none;border:0;padding:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit
}
.cat-breadcrumb button{cursor:pointer;color:var(--t2);transition:color .2s ease}
.cat-breadcrumb button:hover{color:var(--ac)}
.cat-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:18px;
  padding:20px 20px 18px;margin-bottom:14px;
  border:1px solid rgba(11,31,53,.08);border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,251,255,.95));
  box-shadow:var(--shadow)
}
.cat-head-copy{min-width:0;max-width:680px}
.cat-head .sec-ti{margin-bottom:4px}
.cat-head .sec-su{max-width:62ch;line-height:1.55;margin-bottom:8px}
.cat-head .pc2{
  display:inline-flex;align-items:center;min-height:28px;padding:0 12px;
  border-radius:999px;background:#eef5ff;color:var(--ac);
  font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase
}
.cat-head .ph-right{align-items:flex-end}
.sort-field{min-width:190px}
.sort-field .ss{width:100%}
.cat-toolbar{
  display:flex;flex-direction:column;gap:10px;margin-bottom:14px;padding:0 2px
}
.cat-toolbar.has-chips .cat-toolbar-copy{margin-top:2px}
.cat-active-filters{
  display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-height:0
}
.cat-chip{
  display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 12px;
  border:1px solid rgba(11,31,53,.08);border-radius:999px;background:#fff;
  color:var(--t2);font-size:12px;font-weight:800;cursor:pointer;transition:all .2s ease;
  box-shadow:var(--shadow-sm)
}
.cat-chip span{
  max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}
.cat-chip i{font-style:normal;font-size:12px;line-height:1;color:var(--t3)}
.cat-chip:hover{
  transform:translateY(-1px);
  border-color:#cfe0ff;
  color:var(--t);
  box-shadow:0 10px 22px rgba(16,24,40,.08)
}
.cat-chip-reset{background:#f8fbff;color:var(--ac);border-color:#dbe7ff}
.cat-toolbar-copy{margin:0;color:var(--t3);font-size:12px;line-height:1.5}
.fpanel{
  position:sticky;top:96px;
  max-height:calc(100vh - 124px);
  overflow:auto;
  padding-right:4px;
  scrollbar-width:thin;
  scrollbar-color:rgba(0,80,255,.18) transparent
}
.fpanel::-webkit-scrollbar{width:8px}
.fpanel::-webkit-scrollbar-track{background:transparent}
.fpanel::-webkit-scrollbar-thumb{
  background:rgba(0,80,255,.18);
  border-radius:999px;
  border:2px solid transparent;
  background-clip:padding-box
}
.fblock{
  margin-bottom:18px;border:1px solid var(--bd);background:#fff;border-radius:22px;padding:18px;box-shadow:var(--shadow)
}
.fblock-scroll .flist{
  max-height:260px;
  overflow:auto;
  padding-right:4px;
  scrollbar-width:thin;
  scrollbar-color:rgba(0,80,255,.18) transparent
}
.fblock-scroll .flist::-webkit-scrollbar{width:8px}
.fblock-scroll .flist::-webkit-scrollbar-track{background:transparent}
.fblock-scroll .flist::-webkit-scrollbar-thumb{
  background:rgba(0,80,255,.18);
  border-radius:999px;
  border:2px solid transparent;
  background-clip:padding-box
}
.ftit{
  font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--t2);margin-bottom:12px
}
.flist{display:flex;flex-direction:column;gap:10px}
.fitem{
  display:flex;align-items:center;gap:10px;min-height:44px;padding:0 2px;cursor:pointer;
  color:var(--t2);font-size:13px
}
.fitem input{accent-color:var(--ac)}
.fl{font-size:13px}
.fc2{font-size:11px;color:var(--t3);margin-left:auto}
.prange{display:flex;gap:8px;align-items:center}
.prange input{
  width:100%;background:var(--sur2);border:1px solid var(--bd);border-radius:14px;padding:10px 12px;color:var(--t);outline:none;transition:border-color .2s,box-shadow .2s
}
.prange input:focus{border-color:var(--ac);box-shadow:0 0 0 4px var(--acg)}
.fpanel-actions{
  display:grid;
  gap:10px;
  margin-top:6px;
}
.fpanel-actions .filter-apply{display:none}
.fpanel-actions .btns,
.fpanel-actions .filter-reset{
  width:100%;
  min-height:44px;
}
.filter-reset{
  width:100%;background:#fff;border:1px solid var(--bd);border-radius:999px;padding:12px 16px;font-size:12px;font-weight:800;cursor:pointer;color:var(--t2);box-shadow:var(--shadow)
}
.filter-reset:hover{border-color:#cfe0ff;color:var(--t)}

/* Mobile filter drawer */
.fmob-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:999;backdrop-filter:blur(2px)}
.fmob-overlay.on{display:block}
.fmob-header{display:none}
.fmob-btn{display:none}
.fmob-count{background:var(--ac);color:#fff;border-radius:999px;font-size:10px;font-weight:800;min-width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;line-height:1}
.fmob-count:empty{display:none}
.ph-right{display:flex;align-items:center;gap:8px}
body.fmob-open{overflow:hidden}

.ph{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:16px;flex-wrap:wrap}
.pc2{font-size:13px;color:var(--t2)}
.ss{
  background:#fff;border:1px solid var(--bd);border-radius:999px;padding:10px 14px;color:var(--t);font-size:12px;outline:none;cursor:pointer;font-weight:700
}

.pdpg{max-width:1200px;margin:0 auto;padding:34px 20px}
.back-btn{
  display:inline-flex;align-items:center;gap:8px;margin-bottom:18px;padding:10px 14px;border-radius:999px;
  background:#fff;border:1px solid var(--bd);cursor:pointer;color:var(--t2);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:var(--shadow)
}
.back-btn:hover{color:var(--t);border-color:#cfe0ff}
.pdgr{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:start}
.pdgr > *{min-width:0}
.pdmimg{
  border-radius:28px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:140px;margin-bottom:16px;
  background:#fff;border:1px solid var(--bd);box-shadow:var(--shadow);overflow:hidden
}
.pdth{
  display:flex;gap:10px;flex-wrap:wrap;
}
.pdt{
  width:70px;height:70px;border-radius:18px;background:#fff;border:1px solid var(--bd);display:flex;align-items:center;justify-content:center;font-size:28px;cursor:pointer;transition:all .2s;overflow:hidden
}
.pdt.on{border-color:var(--ac);background:#eef5ff}
.pdt img{width:100%;height:100%;object-fit:cover}
.pdt-more{
  font-size:14px;font-weight:900;color:var(--t2);
  background:linear-gradient(135deg,#ffffff,#f4f8ff);
}
.pdt-more:hover{border-color:#cfe0ff;color:var(--t)}

.gmod{
  position:fixed;inset:0;z-index:500;
  display:none;
}
.gmod.on{display:block}
.gmod-backdrop{
  position:absolute;inset:0;
  background:rgba(16,24,40,.55);
  backdrop-filter:blur(6px);
}
.gmod-shell{
  position:absolute;left:50%;top:50%;
  transform:translate(-50%,-50%);
  width:min(980px, calc(100vw - 28px));
  display:flex;flex-direction:column;align-items:stretch;
  gap:12px;
}
.gmod-close{
  position:absolute;top:-54px;right:0;
  width:40px;height:40px;border-radius:50%;
  border:1px solid rgba(255,255,255,.55);
  background:rgba(255,255,255,.12);
  backdrop-filter:blur(10px);
  cursor:pointer;color:var(--t2);font-size:18px;
  display:flex;align-items:center;justify-content:center;
  z-index:2;
}
.gmod-close:hover{color:#fff;border-color:rgba(255,255,255,.8);background:rgba(255,255,255,.18)}
.gmod-stagewrap{
  position:relative;
  width:100%;
  padding:0 86px;
}
.gmod-stage{
  height:min(74vh, 720px);
  border-radius:34px;
  background:transparent;
  overflow:hidden;
  display:flex;align-items:center;justify-content:center;
}
.gmod-img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.gmod-nav{
  position:absolute;top:50%;
  transform:translateY(-50%);
  width:66px;height:66px;border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.75);
  cursor:pointer;color:#111;font-size:24px;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 22px 70px rgba(0,0,0,.35);
  backdrop-filter:blur(10px);
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
}
.gmod-nav.left{left:0}
.gmod-nav.right{right:0}
.gmod-nav:hover{border-color:rgba(255,255,255,.4);background:rgba(255,255,255,.9);transform:translateY(-50%) scale(1.06);box-shadow:0 30px 84px rgba(0,0,0,.42)}
.gmod-nav:disabled{opacity:.35;pointer-events:none}
.gmod-thumbs{
  display:flex;gap:18px;align-items:center;justify-content:center;
  overflow-x:auto;overflow-y:hidden;
  padding:2px 2px 6px;
  scrollbar-width:none;
}
.gmod-thumbs::-webkit-scrollbar{display:none}
.gthumb{
  width:112px;height:86px;flex:0 0 auto;
  border-radius:22px;
  border:0;
  background:rgba(255,255,255,.1);
  overflow:hidden;
  cursor:pointer;
  transition:transform .18s ease, border-color .18s ease, background .18s ease;
  box-shadow:0 18px 50px rgba(0,0,0,.26);
}
.gthumb:hover{transform:translateY(-2px);background:rgba(255,255,255,.16)}
.gthumb.on{background:rgba(255,255,255,.18);box-shadow:0 0 0 2px rgba(0,80,255,.55), 0 18px 50px rgba(0,0,0,.26)}
.gthumb img{width:100%;height:100%;object-fit:cover;display:block}
.gmod-meta{
  display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap;
  color:#fff;
  padding:0 2px;
}
.gmod-title{font-weight:900;letter-spacing:-.02em;text-shadow:0 10px 30px rgba(16,24,40,.35)}
.gmod-count{color:rgba(255,255,255,.78);font-size:12px;font-weight:800}

@media (max-width: 760px){
  .gmod-stagewrap{padding:0 64px}
  .gmod-nav{width:56px;height:56px}
  .gthumb{width:92px;height:72px;border-radius:18px}
}

@media (max-width: 520px){
  .gmod-stagewrap{padding:0 54px}
  .gmod-close{top:12px;right:12px}
}
.pd-main-img{width:100%;height:100%;object-fit:cover;padding:0}
.pdbr{font-size:11px;font-weight:800;color:var(--ac);text-transform:uppercase;letter-spacing:.16em;margin-bottom:8px}
.pdnm{
  font-family:"Sora",sans-serif;
  font-size:clamp(24px,3vw,38px);font-weight:800;letter-spacing:-.05em;margin-bottom:12px;line-height:1.1
}
.pd-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.pd-title-row .pdnm{margin-bottom:12px}
.pd-share{
  width:44px;height:44px;border-radius:999px;border:1px solid var(--bd);background:#fff;color:var(--t2);
  display:grid;place-items:center;font-weight:900;box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--dur-fast) var(--ease)
}
.pd-share:hover{color:var(--ac);border-color:var(--ac);transform:translateY(-1px)}
.pdst{display:flex;align-items:center;gap:8px;margin-bottom:18px;flex-wrap:wrap}
.stock-pill{
  display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;
  font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;
  background:#f2f6fc;color:var(--t2)
}
.stock-pill.success{background:#e9fff3;color:var(--gn)}
.stock-pill.warning{background:#fff7e8;color:var(--or)}
.stock-pill.danger{background:#fff2f0;color:var(--rd)}
.pdpb{margin-bottom:22px;padding-bottom:22px;border-bottom:1px solid var(--bd)}
.pdpr{font-size:36px;font-weight:900;letter-spacing:-.05em}
.pdorig{font-size:15px;color:var(--t3);text-decoration:line-through;margin-left:10px}
.pdsv{font-size:12px;color:var(--gn);font-weight:800;margin-top:6px;text-transform:uppercase;letter-spacing:.08em}
.pdcu{color:var(--t2);font-size:13px;margin-top:6px}
.pdhighlights,.pdreviews,.pdcross{margin-top:0}
.pd-bottom-grid{
  display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:22px;margin-top:34px;align-items:start
}
.pd-stack{display:grid;gap:18px;min-width:0}
.pd-panel{
  background:linear-gradient(180deg,#fff 0%,#f7fbff 100%);
  border:1px solid var(--bd);border-radius:24px;padding:18px;box-shadow:var(--shadow);min-width:0
}
.pd-panel-copy{font-size:12px;color:var(--t2);line-height:1.65;margin:-2px 0 14px}
.pd-mini-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.pd-mini{
  border:1px solid var(--bd);border-radius:18px;padding:14px;background:#fff;
  min-height:118px;display:grid;align-content:start;gap:6px;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease
}
.pd-mini:hover,.pd-review-item:hover,.pdfr:hover{transform:translateY(-2px);border-color:#cfe0ff;box-shadow:0 14px 28px rgba(16,24,40,.06)}
.pd-mini strong{display:block;font-size:12px;margin-bottom:0}
.pd-mini span{display:block;font-size:11px;color:var(--t2);line-height:1.55}
.pd-review-list{display:grid;gap:10px}
.pd-review-item{background:#fff;border:1px solid var(--bd);border-radius:18px;padding:14px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.pd-review-item strong{display:block;font-size:12px;color:var(--t)}
.pd-review-item small{display:block;margin-top:4px;font-size:11px;color:var(--t3);font-weight:700;line-height:1.35}
.pd-review-item p{font-size:13px;color:var(--t2);margin-top:6px}
.pd-cross-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.pd-cross-shell{display:block}
.pd-cross-scrollbar{display:none}
.home-scrollbar{display:none}
.pd-cross-card{
  background:#fff;border:1px solid var(--bd);border-radius:18px;padding:12px;cursor:pointer;transition:all .2s;
  display:grid;align-content:start
}
.pd-cross-card:hover{border-color:#cfe0ff;transform:translateY(-2px)}
.pd-cross-card img{border-radius:14px;aspect-ratio:1;object-fit:cover;margin-bottom:10px}
.pd-cross-card strong{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:12px;
  line-height:1.35;
  margin-bottom:4px;
}
.pd-cross-card span{font-size:12px;color:var(--ac);font-weight:800}
.pdopt{margin-bottom:20px}
.pdlb{font-size:11px;font-weight:800;color:var(--t3);text-transform:uppercase;letter-spacing:.14em;margin-bottom:10px}
.orow{display:flex;flex-wrap:wrap;gap:8px}
.ob{
  padding:8px 14px;border-radius:999px;border:1px solid var(--bd);background:#fff;color:var(--t2);font-size:12px;cursor:pointer;transition:all .2s;font-weight:700
}
.ob:hover{border-color:#cfe0ff;color:var(--t)}
.ob.on{border-color:var(--ac);background:#eef5ff;color:var(--ac)}
.qrow{display:flex;align-items:center;gap:12px;margin-bottom:22px;flex-wrap:wrap}
.qctl{display:flex;align-items:center}
.qb{
  width:36px;height:36px;background:#fff;border:1px solid var(--bd);color:var(--t);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center
}
.qb:disabled{opacity:.45;cursor:not-allowed}
.qb:first-child{border-radius:999px 0 0 999px}
.qb:last-child{border-radius:0 999px 999px 0}
.qn{
  width:46px;height:36px;background:var(--sur2);border-top:1px solid var(--bd);border-bottom:1px solid var(--bd);color:var(--t);font-size:13px;font-weight:800;text-align:center;display:flex;align-items:center;justify-content:center
}
.pdac{display:flex;gap:10px;margin-bottom:28px;flex-wrap:wrap}
.pdac .wide{flex:1 1 180px}
.btns{
  min-height:50px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid rgba(0,80,255,.24);
  background:#fff;
  color:var(--ac);
  font-weight:900;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  cursor:pointer;
  transition:all var(--dur-fast) var(--ease);
}
.btns:hover{background:#f4f8ff;transform:translateY(-1px);box-shadow:var(--shadow-sm)}
.btns:disabled,.btnp:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.pd-wa{flex:1 1 180px}
.pdwb{
  width:50px;height:50px;flex-shrink:0;border-radius:50%;background:#fff;border:1px solid var(--bd);color:var(--t2);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center
}
.pdft{display:grid;gap:12px}
.pdfr{
  display:flex;gap:18px;padding:16px;border:1px solid var(--bd);border-radius:18px;background:#fff
}
.pdfi{font-size:22px;flex-shrink:0}
.pdft2 strong{display:block;font-size:13px;font-weight:800;margin-bottom:3px}
.pdft2 span{font-size:12px;color:var(--t3)}
.pd-spec-list{display:grid;gap:8px}
.pd-spec-list div{
  display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  padding:11px 0;border-bottom:1px solid var(--bd)
}
.pd-spec-list div:last-child{border-bottom:0}
.pd-spec-list span{font-size:11px;font-weight:900;color:var(--t3);text-transform:uppercase;letter-spacing:.08em}
.pd-spec-list strong{font-size:13px;color:var(--t);text-align:right;line-height:1.35}
.pd-empty{
  border:1px dashed var(--bd2);
  border-radius:18px;
  padding:16px;
  color:var(--t2);
  font-size:13px;
  background:#fff;
}
.model-field{
  width:100%;background:var(--sur2);border:1px solid var(--bd);border-radius:16px;
  padding:12px 14px;color:var(--t);outline:none;transition:border-color .2s,box-shadow .2s
}
.model-field:focus{border-color:var(--ac);box-shadow:0 0 0 4px var(--acg)}
.model-help{font-size:11px;color:var(--t3);margin-top:8px}

.co{
  position:fixed;inset:0;background:rgba(16,24,40,.38);z-index:var(--z-overlay);opacity:0;pointer-events:none;transition:opacity .3s;backdrop-filter:blur(4px)
}
.co.on{opacity:1;pointer-events:all}
.cd{
  position:fixed;top:0;right:0;bottom:0;width:400px;background:#fff;border-left:1px solid var(--bd);z-index:var(--z-drawer);
  transform:translateX(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:-14px 0 56px rgba(16,24,40,.18)
}
.cd.on{transform:translateX(0)}
body.cart-open{overflow:hidden}
.cdh{padding:20px 22px;border-bottom:1px solid var(--bd);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.cdt{font-family:"Sora",sans-serif;font-size:18px;font-weight:800}
.cdc{width:44px;height:44px;border-radius:999px;border:1px solid var(--bd);background:#fff;color:var(--t2);font-size:18px;cursor:pointer;display:grid;place-items:center}
.cdc:hover{color:var(--ac);border-color:rgba(0,80,255,.24);box-shadow:var(--shadow-sm)}
.cdb{flex:1;overflow-y:auto;padding:14px 22px}
.citem{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--bd);align-items:flex-start}
.cii{
  font-size:36px;width:68px;height:68px;border-radius:18px;background:linear-gradient(135deg,#f7fbff,#e7f0ff);border:1px solid var(--bd);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden
}
.cin{flex:1}
.cinm{font-size:13px;font-weight:700;margin-bottom:4px;line-height:1.35}
.civ{font-size:11px;color:var(--t3);margin-bottom:8px;text-transform:uppercase;letter-spacing:.08em}
.cipr{font-size:17px;font-weight:900}
.cipr span{font-size:10px;color:var(--t3);font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.ciq2{display:flex;align-items:center;gap:8px;margin-top:8px}
.ciq{
  background:#fff;border:1px solid var(--bd);border-radius:50%;width:34px;height:34px;cursor:pointer;color:var(--t);font-size:14px;display:flex;align-items:center;justify-content:center
}
.cisub{font-size:11px;color:var(--t2);margin-top:8px}
.cisub strong{color:var(--t)}
.cir{width:36px;height:36px;border-radius:999px;background:#fff;border:1px solid var(--bd);color:var(--t3);cursor:pointer;font-size:15px;display:grid;place-items:center}
.cir:hover{color:var(--rd);border-color:rgba(240,68,56,.28);background:#fff7f6}
.cdf{padding:20px 22px;padding-bottom:max(20px,env(safe-area-inset-bottom));border-top:1px solid var(--bd);flex-shrink:0}
.csl{display:flex;justify-content:space-between;margin-bottom:6px;font-size:13px;color:var(--t2)}
.ctl{display:flex;justify-content:space-between;margin-bottom:18px;font-size:20px;font-weight:900}
.cemp{text-align:center;padding:44px 0;color:var(--t3);display:grid;justify-items:center;gap:10px}
.cemp-ic{font-size:46px;margin-bottom:14px}
.cemp strong{font-family:"Sora",sans-serif;font-size:18px;color:var(--t);letter-spacing:-.03em}
.cemp p{margin:0 0 6px;font-size:13px;color:var(--t2)}
.cart-foot-note{text-align:center;margin-top:8px;font-size:11px;color:var(--t3)}

/* Coupon input in cart drawer */
.csl-coup{color:var(--gn);font-weight:700}
.coup-disc{color:var(--gn);font-weight:800}
.coupon-row{
  display:flex;gap:8px;margin:12px 0 6px;
}
.coupon-inp{
  flex:1;background:var(--sur2);border:1px solid var(--bd);border-radius:14px;
  padding:11px 14px;color:var(--t);outline:none;font-size:15px;
  text-transform:uppercase;letter-spacing:.06em;transition:border-color .2s,box-shadow .2s;
}
.coupon-inp::placeholder{text-transform:none;letter-spacing:normal;color:var(--t3)}
.coupon-inp:focus{border-color:var(--ac);box-shadow:0 0 0 4px var(--acg)}
.coupon-apply-btn{
  background:var(--t);color:#fff;border-radius:14px;
  padding:11px 16px;font-size:12px;font-weight:800;white-space:nowrap;cursor:pointer;
  transition:background .2s,transform .2s;letter-spacing:.08em;text-transform:uppercase;
}
.coupon-apply-btn:hover{background:var(--ac);transform:translateY(-1px)}
.coupon-status{
  font-size:12px;font-weight:700;margin-bottom:8px;min-height:16px;
  transition:color .2s;
}
.coupon-ok{color:var(--gn)}
.coupon-err{color:var(--rd)}

.chk-in{max-width:1080px;margin:0 auto;padding:34px 20px;display:grid;grid-template-columns:1fr 360px;gap:30px;align-items:start}
.chk-ti{font-family:"Sora",sans-serif;font-size:26px;font-weight:800;margin-bottom:16px}
.fbrd{
  display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:12px;
  margin-bottom:24px;padding:12px 14px;border:1px solid var(--bd);border-radius:20px;background:rgba(255,255,255,.82);
  box-shadow:0 14px 34px rgba(16,24,40,.06);
}
.checkout-step{
  display:flex;align-items:center;gap:9px;color:var(--t3);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap
}
.checkout-step b{display:block;line-height:1.1;font-size:12px}
.checkout-step i{
  width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-style:normal;
  background:var(--sur2);border:1px solid var(--bd);color:var(--t3);transition:all .2s;
}
.checkout-step.cur{color:var(--ac)}
.checkout-step.cur i{background:var(--ac);border-color:var(--ac);color:#fff;box-shadow:0 8px 20px rgba(0,80,255,.22)}
.checkout-step.done{color:var(--gn)}
.checkout-step.done i{background:rgba(18,183,106,.12);border-color:rgba(18,183,106,.28);color:var(--gn)}
.checkout-rail{height:3px;border-radius:999px;background:var(--bd)}
.checkout-rail.done{background:linear-gradient(90deg,var(--gn),rgba(18,183,106,.35))}
.chk-card{
  border:1px solid var(--bd);border-radius:24px;padding:22px;margin-bottom:16px;background:#fff;box-shadow:var(--shadow)
}
.checkout-guest-prompt{
  margin:14px 0 16px;
  padding:20px;
  border:1px solid rgba(0,80,255,.12);
  border-radius:24px;
  background:
    radial-gradient(circle at 100% 0%, rgba(0,80,255,.08) 0%, transparent 34%),
    linear-gradient(180deg,#fff 0%,#f7fbff 100%);
  box-shadow:var(--shadow);
  display:flex;
  flex-direction:column;
  gap:0;
  overflow:hidden;
}
.checkout-guest-prompt[hidden]{
  display:none !important;
}
.checkout-guest-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,360px);
  gap:18px 22px;
  align-items:center;
}
.checkout-guest-copy{
  min-width:0;
  display:grid;
  gap:10px;
  align-content:start;
}
.checkout-guest-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:max-content;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  background:#eef5ff;
  color:var(--ac);
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.checkout-guest-badge::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--ac);
  box-shadow:0 0 0 4px rgba(0,80,255,.12);
  flex-shrink:0;
}
.checkout-guest-copy h3{
  font-family:"Sora",sans-serif;
  font-size:clamp(19px,2vw,24px);
  line-height:1.12;
  letter-spacing:-.04em;
  color:var(--t);
  margin:0;
}
.checkout-guest-copy p{
  font-size:13px;
  line-height:1.6;
  color:var(--t2);
  margin:0;
  max-width:54ch;
}
.checkout-guest-copy small{
  display:inline-flex;
  align-items:flex-start;
  gap:8px;
  color:var(--t3);
  font-size:11px;
  line-height:1.45;
  font-weight:700;
}
.checkout-guest-copy small::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--gn);
  box-shadow:0 0 0 4px rgba(18,183,106,.12);
  flex-shrink:0;
  margin-top:.38em;
}
.checkout-guest-actions{
  width:min(100%,360px);
  justify-self:end;
  display:grid;
  gap:10px;
}
.checkout-guest-actions-primary{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.checkout-guest-btn{
  min-height:46px;
  padding:0 16px;
  border-radius:16px;
  font-size:13px;
  font-weight:900;
  letter-spacing:-.01em;
  text-transform:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  transition:transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease;
}
.checkout-guest-btn:hover{transform:translateY(-1px)}
.checkout-guest-btn:focus-visible{
  outline:2px solid var(--ac);
  outline-offset:3px;
  box-shadow:0 0 0 4px var(--acg);
}
.checkout-guest-btn--primary{
  background:linear-gradient(135deg,var(--ac),var(--ac2));
  color:#fff;
  box-shadow:0 14px 30px rgba(0,80,255,.22);
}
.checkout-guest-btn--primary:hover{background:linear-gradient(135deg,var(--acd),var(--ac))}
.checkout-guest-btn--secondary{
  background:#fff;
  color:var(--ac);
  border:1px solid rgba(0,80,255,.16);
  box-shadow:var(--shadow-sm);
}
.checkout-guest-btn--secondary:hover{
  background:#f4f8ff;
  border-color:rgba(0,80,255,.24);
}
.checkout-guest-btn--ghost{
  min-height:44px;
  width:100%;
  background:rgba(0,80,255,.05);
  color:var(--ac);
  border:1px solid rgba(0,80,255,.12);
  box-shadow:none;
}
.checkout-guest-btn--ghost:hover{
  background:rgba(0,80,255,.08);
  border-color:rgba(0,80,255,.2);
}
.chk-card h3{font-family:"Sora",sans-serif;font-size:17px;font-weight:800;margin-bottom:16px}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fful{grid-column:1/-1}
.fg{display:flex;flex-direction:column;gap:6px}
.fg label{font-size:11px;font-weight:800;color:var(--t2);letter-spacing:.1em;text-transform:uppercase}
.fi{
  background:var(--sur2);border:1px solid var(--bd);border-radius:16px;padding:12px 14px;color:var(--t);outline:none;transition:border-color .2s,box-shadow .2s
}
.fi:focus{border-color:var(--ac);box-shadow:0 0 0 4px var(--acg)}
.ta{min-height:96px;resize:vertical}
.fsel{cursor:pointer}
.mini-cart{
  position:fixed;left:50%;bottom:18px;transform:translate(-50%,120%);
  z-index:1700;display:none;align-items:center;gap:12px;min-height:52px;
  padding:8px 10px 8px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.82);
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(245,249,255,.82));
  box-shadow:0 22px 55px rgba(15,23,42,.18), inset 0 1px 0 rgba(255,255,255,.9);
  backdrop-filter:blur(18px) saturate(1.15);-webkit-backdrop-filter:blur(18px) saturate(1.15);
  color:var(--t);cursor:pointer;transition:transform .28s,opacity .28s;opacity:0;
}
.mini-cart.on{display:flex;transform:translate(-50%,0);opacity:1}
.mini-cart span{font-size:12px;font-weight:800;color:var(--t2)}
.mini-cart strong{font-size:14px;font-weight:950;color:var(--t)}
.mini-cart em{
  font-style:normal;background:var(--ac);color:#fff;border-radius:999px;padding:11px 14px;
  font-size:12px;font-weight:900;letter-spacing:.04em;
}
.pmlist{display:flex;flex-direction:column;gap:10px}
.pmm{
  border:1px solid var(--bd);border-radius:18px;padding:16px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:12px;background:#fff
}
.pmm:hover{border-color:#cfe0ff;background:#f8fbff}
.pmm.on{border-color:var(--ac);background:#eef5ff}
.pmr{
  width:18px;height:18px;border:2px solid var(--bd2);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0
}
.pmm.on .pmr{border-color:var(--ac)}
.pmd{width:10px;height:10px;background:var(--ac);border-radius:50%;display:none}
.pmm.on .pmd{display:block}
.pml{font-size:22px}
.pmi strong{display:block;font-size:13px;font-weight:800}
.pmi span{font-size:11px;color:var(--t3)}
.pmbdgs{display:flex;gap:5px;margin-left:auto;flex-wrap:wrap;justify-content:flex-end}
.pmbdg{padding:4px 8px;border-radius:999px;font-size:9px;font-weight:800;background:#eef5ff;color:var(--ac);text-transform:uppercase;letter-spacing:.08em}
.pmbdgg{background:#e9fff3;color:var(--gn)}
.pmbdgo{background:#fff2dc;color:var(--or)}
.ord-sum{position:sticky;top:96px;align-self:start}
.ord-card{
  padding:0;
  border-radius:24px;
  background:#fff;
  border:1px solid var(--bd);
  box-shadow:var(--shadow);
  overflow:hidden
}
.ord-summary{
  display:block;
}
.ord-summary-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:20px 20px 16px;
  cursor:pointer;
  list-style:none;
  user-select:none;
  border-bottom:1px solid rgba(11,31,53,.06);
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,251,255,.92))
}
.ord-summary-head::-webkit-details-marker{display:none}
.ord-summary-copy{min-width:0}
.ord-summary-copy h3{
  font-family:"Sora",sans-serif;
  font-size:16px;
  font-weight:800;
  margin:0 0 4px;
  letter-spacing:-.02em
}
.ord-summary-copy p{
  font-size:12px;
  line-height:1.45;
  color:var(--t3);
  max-width:42ch
}
.ord-summary-preview{
  display:grid;
  gap:2px;
  justify-items:end;
  text-align:right;
  min-width:96px;
  flex-shrink:0
}
.ord-summary-kicker{
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--t3)
}
.ord-summary-total{
  font-size:18px;
  font-weight:900;
  line-height:1.05;
  color:var(--t)
}
.ord-summary-preview small{
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ac)
}
.ord-summary:hover .ord-summary-head{background:linear-gradient(180deg,#fff,#f7fbff)}
.ord-summary-body{padding:0 20px 20px}
#orderItems,#brickOrderItems{
  display:flex;
  flex-direction:column;
  gap:0;
  min-height:0;
  overflow:auto;
  max-height:clamp(160px, 28vh, 270px);
  padding-right:6px;
  scrollbar-gutter:stable;
  scrollbar-width:thin;
  scrollbar-color:rgba(0,80,255,.18) transparent;
  position:relative
}
#orderItems::-webkit-scrollbar,#brickOrderItems::-webkit-scrollbar{width:8px}
#orderItems::-webkit-scrollbar-track,#brickOrderItems::-webkit-scrollbar-track{background:transparent}
#orderItems::-webkit-scrollbar-thumb,#brickOrderItems::-webkit-scrollbar-thumb{
  background:rgba(0,80,255,.18);
  border-radius:999px;
  border:2px solid transparent;
  background-clip:padding-box
}
.oi{
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:10px 0;
  border-bottom:1px solid rgba(15,23,42,.06)
}
.oi:last-child{border-bottom:none;padding-bottom:0}
.oii{
  width:46px;
  height:46px;
  border-radius:14px;
  flex-shrink:0;
  position:relative;
  overflow:visible
}
.oi-thumb{
  width:100%;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(135deg,#f7fbff,#e7f0ff);
  border:1px solid var(--bd);
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center
}
.oiqb{
  position:absolute;
  top:3px;
  right:3px;
  min-width:18px;
  height:18px;
  padding:0 5px;
  background:var(--ac);
  border-radius:999px;
  font-size:9px;
  font-weight:800;
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  z-index:2;
  box-shadow:0 6px 12px rgba(0,80,255,.22);
  pointer-events:none
}
.oin{
  font-size:12.5px;
  font-weight:800;
  line-height:1.3;
  margin-bottom:3px;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden
}
.oiv{font-size:10px;color:var(--t3);line-height:1.35}
.oipr{font-size:13px;font-weight:900;justify-self:end;white-space:nowrap}
.sum-box{
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid var(--bd)
}
.sl{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:start;
  padding:5px 0;
  font-size:12px;
  color:var(--t2);
  line-height:1.35
}
.sl span:last-child{
  text-align:right;
  color:var(--t);
  min-width:0;
  word-break:break-word
}
.stot{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:14px 0 0;
  font-size:18px;
  font-weight:900;
  border-top:1px solid var(--bd);
  margin-top:8px
}
.stot span:last-child{text-align:right}
/* Payment info pill */
.pay-pill-wrap{margin-top:12px}
.pay-pill{border-radius:18px;padding:16px;border:1px solid var(--bd);background:var(--sur2);font-size:13px}
.pay-pill-mp{background:#eef5ff;border-color:#dbe8ff}
.pay-pill-transfer{background:#e9fff3;border-color:#b6f0d0}
.pp-top{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px}
.pp-top strong{font-size:14px;font-weight:800;color:var(--t)}
.pp-icon{font-size:18px;line-height:1}
.pp-icon-img{
  height:20px;
  width:auto;
  max-width:30px;
  object-fit:contain;
  display:block;
  flex:0 0 auto;
}
.pp-badge{background:var(--ac);color:#fff;border-radius:999px;font-size:10px;font-weight:800;padding:3px 8px;margin-left:auto;text-transform:uppercase;letter-spacing:.06em}
.pp-badge-green{background:var(--gn)}
.pp-rows{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}
.pp-row{color:var(--t2);font-size:12px}
.pp-head-copy{display:grid;gap:2px;min-width:0;flex:1}
.pp-head-copy span{font-size:12px;line-height:1.4;color:var(--t3)}
.pp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.pp-field{
  border:1px solid var(--bd);
  background:#fff;
  border-radius:18px;
  padding:12px 14px;
  display:grid;
  gap:4px;
  min-width:0
}
.pp-field span{
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--t3)
}
.pp-field strong{
  font-size:13px;
  line-height:1.45;
  color:var(--t);
  word-break:break-word
}
.pp-wide{grid-column:1/-1}
.pp-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.pp-actions .btn-sec,.pp-actions .btnp{min-height:44px}
.pp-alias{display:flex;align-items:center;gap:8px}
.pp-label{font-size:11px;color:var(--t3);text-transform:uppercase;letter-spacing:.1em;min-width:52px}
.pp-val{font-size:15px;font-weight:900;color:var(--t);letter-spacing:.04em}
.pp-note{font-size:11px;color:var(--t3);border-top:1px solid rgba(0,0,0,.06);padding-top:10px;margin-top:4px;line-height:1.5}

.suc-pg{max-width:540px;margin:64px auto;padding:0 20px;text-align:center}
.suc-ic{
  width:86px;height:86px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
  background:#e9fff3;color:var(--gn);font-size:38px;font-weight:900;margin-bottom:20px
}
.suc-ti{font-family:"Sora",sans-serif;font-size:34px;font-weight:800;margin-bottom:10px;letter-spacing:-.05em}
.suc-su{color:var(--t2);margin-bottom:28px;font-size:15px}
.ok-card{
  border:1px solid var(--bd);border-radius:24px;padding:22px;margin-bottom:22px;text-align:left;background:#fff;box-shadow:var(--shadow)
}
.ok-kicker{color:var(--t3);font-size:10px;margin-bottom:5px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}
.ordnum{font-size:18px;font-weight:900;color:var(--ac);letter-spacing:.08em;margin-bottom:16px}
.ok-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ok-grid span{display:block;color:var(--t3);font-size:10px;margin-bottom:4px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}
.ok-grid strong{font-size:13px}

footer{
  border-top:1px solid var(--bd);
  padding:34px 20px 22px;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);
  margin-top:56px
}
.ft-in{
  max-width:1200px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(280px,1.55fr) repeat(3,minmax(0,1fr));
  gap:28px 24px;
  align-items:start
}
.ft-brand{max-width:360px}
.footer-brand-link{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  padding:0;
  border:0;
  background:none;
  cursor:pointer;
  width:max-content;
  transition:transform .2s ease,opacity .2s ease;
}
.footer-brand-link:hover{transform:translateY(-1px)}
.footer-brand-link:focus-visible{
  outline:2px solid rgba(5,85,225,.18);
  outline-offset:4px;
  border-radius:14px;
}
.footer-logo{width:144px;display:block}
.ft-desc{font-size:13px;color:var(--t2);margin:12px 0 16px;line-height:1.65;max-width:320px}
.ft-soc{display:flex;gap:8px;flex-wrap:wrap}
.fsb{
  width:40px;height:40px;border-radius:999px;background:#fff;border:1px solid var(--bd);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:11px;font-weight:800;color:var(--t2);transition:all .2s,transform .2s
}
.fsb:hover{background:#f7fbff;border-color:#cfe0ff;color:var(--t);transform:translateY(-1px)}
.ft-ct{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--t3);margin-bottom:12px}
.ftlinks{list-style:none;display:flex;flex-direction:column;gap:8px}
.ftlinks li{display:flex}
.ftlinks button,.ftlinks a,.ftlinks span{
  display:inline-flex;align-items:center;min-height:28px;padding:0;background:none;border:0;color:var(--t2);font-size:13px;cursor:pointer;text-align:left;text-decoration:none;line-height:1.45;transition:color .2s ease,opacity .2s ease
}
.ftlinks button:hover,.ftlinks a:hover{color:var(--ac)}
.ftlinks button:focus-visible,.ftlinks a:focus-visible,.fsb:focus-visible{
  outline:2px solid rgba(5,85,225,.18);
  outline-offset:3px;
  border-radius:12px;
}
.ftlinks span{cursor:default}
.ft-bot{
  max-width:1200px;
  margin:22px auto 0;
  padding-top:16px;
  border-top:1px solid var(--bd);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  flex-wrap:wrap
}
.ft-cop{font-size:11px;color:var(--t3);font-weight:700;line-height:1.45}
.pyic{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.paylogo{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:40px;padding:0 12px;border-radius:14px;
  border:1px solid var(--bd);background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);font-size:10.5px;font-weight:900;letter-spacing:.02em;
  box-shadow:0 8px 20px rgba(16,24,40,.04)
}
.visa-logo{color:#1434cb}
.visa-logo span{font-size:15px;font-style:italic;letter-spacing:.05em;font-weight:900}
.master-logo{color:#1f2937;text-transform:lowercase}
.mc-circles{position:relative;width:28px;height:18px;display:inline-block}
.mc-circles i{
  position:absolute;top:0;width:18px;height:18px;border-radius:50%
}
.mc-circles i:first-child{left:0;background:#eb001b}
.mc-circles i:last-child{right:0;background:#f79e1b;mix-blend-mode:multiply}
.mp-logo{color:#009ee3;text-transform:lowercase}
.mp-mark{
  height:20px;
  width:auto;
  max-width:36px;
  object-fit:contain;
  display:block;
}
.bank-logo{color:var(--gn);text-transform:lowercase}
.bank-mark{
  width:34px;height:28px;border-radius:10px;background:#e9fff3;border:1px solid #b6f0d0;
  display:inline-flex;align-items:center;justify-content:center;font-size:10px
}

.tcon{
  position:fixed;bottom:20px;right:20px;z-index:var(--z-toast);display:flex;flex-direction:column;gap:8px
}
.toast2{
  background:#fff;
  border:1px solid var(--bd2);
  border-radius:18px;
  padding:12px 14px 12px 12px;
  display:grid;
  grid-template-columns:36px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  font-size:13px;
  font-weight:700;
  box-shadow:var(--shadow2);
  transform:translateX(120%);
  transition:transform .35s cubic-bezier(.175,.885,.32,1.275), opacity .2s ease;
  min-width:290px;
  color:var(--t);
  opacity:.98
}
.toast2.sh{transform:translateX(0)}
.toast2.success{border-color:rgba(18,183,106,.18);box-shadow:0 18px 42px rgba(18,183,106,.16)}
.toast2.error{border-color:rgba(240,68,56,.22);box-shadow:0 18px 42px rgba(240,68,56,.18)}
.toast2.warning{border-color:rgba(247,144,9,.22);box-shadow:0 18px 42px rgba(247,144,9,.16)}
.toast2.info{border-color:rgba(0,80,255,.16);box-shadow:0 18px 42px rgba(0,80,255,.14)}
.toast2__icon{
  width:36px;height:36px;border-radius:50%;
  display:grid;place-items:center;
  background:rgba(0,80,255,.08);
  color:var(--ac);
  font-weight:900;
  font-size:16px;
}
.toast2.success .toast2__icon{background:rgba(18,183,106,.12);color:#027a48}
.toast2.error .toast2__icon{background:rgba(240,68,56,.12);color:#b42318}
.toast2.warning .toast2__icon{background:rgba(247,144,9,.14);color:#b54708}
.toast2__text{line-height:1.35;min-width:0}
.toast2__close{
  width:28px;height:28px;border-radius:50%;
  display:grid;place-items:center;
  background:rgba(16,24,40,.04);
  color:#667085;
  font-size:18px;
  cursor:pointer;
}
.toast2__close:hover{background:rgba(0,80,255,.08);color:var(--ac)}

.cbadge.bumped,.bn-badge.bumped{animation:badge-bump var(--dur-mid) var(--ease)}
@keyframes badge-bump{0%,100%{transform:scale(1)}50%{transform:scale(1.35)}}

.load-more-btn{
  display:none;align-items:center;justify-content:center;min-height:46px;margin:22px auto 0;padding:0 22px;
  border-radius:var(--r-pill);background:var(--sur);border:1px solid var(--bd);color:var(--t);font-weight:850;
  box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--dur-fast) var(--ease)
}
.load-more-btn.on{display:flex}
.load-more-btn:hover{border-color:var(--ac);color:var(--ac);transform:translateY(-1px)}

#pg-cat .pgrd{gap:18px}

.cat-empty{
  grid-column:1/-1;min-height:220px;border:1px dashed var(--bd2);border-radius:var(--r5);
  background:rgba(255,255,255,.72);display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;gap:10px;padding:30px;color:var(--t2)
}
.cat-empty strong{font-family:Sora,sans-serif;color:var(--t);font-size:18px}
.cat-empty p{max-width:420px;margin:0}

.fi.invalid{border-color:var(--rd);box-shadow:0 0 0 4px rgba(240,68,56,.12)}
.fi-err{display:block;color:var(--rd);font-size:13px;font-weight:800;margin-top:6px}
.spinner{
  display:inline-block;width:14px;height:14px;margin-right:8px;border:2px solid rgba(255,255,255,.35);
  border-top-color:#fff;border-radius:50%;vertical-align:-2px;animation:spin .7s linear infinite
}
@keyframes spin{to{transform:rotate(360deg)}}

.free-ship-bar{
  display:none;background:linear-gradient(135deg,#f5f8ff,#fff);border:1px solid var(--bd);border-radius:16px;
  padding:12px 14px;margin-bottom:12px;color:var(--t2);font-size:13px;font-weight:850;box-shadow:var(--shadow-sm)
}
.free-ship-bar.on{display:block}
.free-ship-bar.full{color:var(--gn);border-color:rgba(18,183,106,.22);background:linear-gradient(135deg,rgba(18,183,106,.1),#fff)}
.free-ship-bar span{display:block;margin-bottom:8px}
.free-ship-bar small{display:block;margin-top:3px;color:var(--t3);font-size:11px;font-weight:750;line-height:1.4}
.free-ship-bar strong{color:var(--t)}
.fsb-track{height:7px;background:#e8eef8;border-radius:999px;overflow:hidden}
.fsb-fill{height:100%;background:linear-gradient(90deg,var(--ac),var(--gn));border-radius:inherit;transition:width var(--dur-mid) var(--ease)}

.pdp-cta-mobile{display:none}
.bottom-nav{display:none}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
}

#spin-overlay{
  position:fixed;
  inset:0;
  z-index:1000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:16px;
  background:rgba(0,0,0,.6);
  backdrop-filter:blur(12px);
}
#spin-overlay.on{display:flex}
#spin-modal{
  width:min(460px, calc(100vw - 32px));
  max-height:min(96vh, 920px);
  overflow-y:auto;
  overflow-x:hidden;
  background:linear-gradient(180deg,#ffffff 0%, #f7fbff 100%);
  border-radius:32px;
  box-shadow:0 28px 80px rgba(16,24,40,.24);
  position:relative;
}
#spin-modal::-webkit-scrollbar{width:4px}
#spin-modal::-webkit-scrollbar-thumb{background:var(--bd);border-radius:999px}
#spin-modal .modal-header{
  background:linear-gradient(180deg,#ffffff 0%, #f6f9ff 100%);
  border-bottom:1px solid var(--bd);
  padding:24px 24px 22px;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
#spin-modal .modal-header::before,
#spin-modal .modal-header::after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}
#spin-modal .modal-header::before{
  width:180px;height:180px;top:-44px;right:-40px;
  background:radial-gradient(circle, rgba(0,80,255,.12) 0%, transparent 70%);
}
#spin-modal .modal-header::after{
  width:140px;height:140px;bottom:-32px;left:-28px;
  background:radial-gradient(circle, rgba(0,80,255,.08) 0%, transparent 70%);
}
#spin-modal .spin-logo{
  position:relative;
  z-index:2;
  display:inline-flex;
  margin-bottom:10px;
  line-height:0;
}
#spin-modal .spin-logo .logo-img{width:148px}
#spin-modal .header-tag{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(0,80,255,.08);
  border:1px solid rgba(0,80,255,.16);
  color:var(--ac);
  font-size:10px;font-weight:800;
  letter-spacing:1.5px;text-transform:uppercase;
  padding:4px 10px;border-radius:999px;
  position:relative;z-index:2;margin-bottom:10px;
}
#spin-modal .header-tag::before{
  content:"";width:6px;height:6px;border-radius:50%;
  background:var(--ac);animation:spinPulse 1.5s infinite;
}
@keyframes spinPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.7)}}
#spin-modal .header-title{
  font-family:"Sora",sans-serif;
  font-size:26px;font-weight:800;line-height:1.12;
  letter-spacing:-.05em;color:var(--t);position:relative;z-index:2;
  max-width:280px;
}
#spin-modal .header-title .accent{color:var(--ac)}
#spin-modal .header-sub{
  margin-top:8px;
  color:var(--t2);
  font-size:13px;line-height:1.5;position:relative;z-index:2;
}
#spin-modal .close-btn{
  position:absolute;top:16px;right:16px;
  width:34px;height:34px;border-radius:50%;
  background:#fff;
  color:var(--t2);
  border:1px solid var(--bd);
  cursor:pointer;font-size:16px;
  display:flex;align-items:center;justify-content:center;
  z-index:3;
}
#spin-modal .close-btn:hover{background:#f7fbff;color:var(--t)}
.wheel-section{padding:24px 24px 20px;display:flex;flex-direction:column;align-items:center}
.wheel-wrap{position:relative;width:280px;height:280px;margin-bottom:20px}
.wheel-wrap::before{
  content:"";position:absolute;inset:-8px;border-radius:50%;
  background:conic-gradient(from 0deg, #0050FF, #3374FF, #0050FF, #001FCC, #0050FF);
  opacity:.24;filter:blur(8px);z-index:0;
}
canvas#wheel{
  position:relative;z-index:2;border-radius:50%;
  box-shadow:0 8px 40px rgba(0,80,255,.3), 0 0 0 4px #fff, 0 0 0 6px rgba(0,80,255,.25);
}
.wheel-pointer{
  position:absolute;top:-15px;left:50%;transform:translateX(-50%);
  z-index:10;
  display:flex;flex-direction:column;align-items:center;gap:2px;
  filter:drop-shadow(0 6px 14px rgba(0,80,255,.22));
}
.wheel-pointer-bar{
  width:16px;height:32px;border-radius:999px;
  background:linear-gradient(180deg,#ffffff 0%, #dce8ff 100%);
  border:1px solid rgba(0,80,255,.22);
  box-shadow:0 0 0 2px rgba(255,255,255,.85), 0 6px 18px rgba(0,80,255,.2);
}
.wheel-pointer-tip{
  width:0;height:0;
  border-left:8px solid transparent;
  border-right:8px solid transparent;
  border-top:10px solid #0050FF;
  filter:drop-shadow(0 2px 4px rgba(0,80,255,.25));
}
.wheel-center{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  z-index:10;width:52px;height:52px;background:#fff;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 0 0 3px var(--ac), 0 4px 16px rgba(0,80,255,.4);
}
.wheel-center-inner{
  width:36px;height:36px;background:var(--ac);border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:16px;
}
.attempts-bar{display:flex;align-items:center;gap:8px;margin-bottom:18px}
.attempt-dot{width:8px;height:8px;border-radius:50%;background:var(--bd);transition:background .3s}
.attempt-dot.used{background:var(--ac)}
.attempts-label{font-size:11px;color:var(--t3);font-weight:700;letter-spacing:.03em}
#spin-btn,.prize-cta,.coupon-copy-btn,.email-submit{
  border:none;cursor:pointer;transition:all .2s;
}
#spin-btn{
  width:100%;padding:16px 24px;background:var(--ac);color:#fff;border-radius:16px;
  font-size:16px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:8px;
  box-shadow:0 4px 20px rgba(0,80,255,.35);
}
#spin-btn:hover:not(:disabled){transform:translateY(-1px);background:var(--ac2);box-shadow:0 8px 30px rgba(0,80,255,.45)}
#spin-btn:disabled{background:var(--t3);cursor:not-allowed;box-shadow:none}
.btn-icon{font-size:20px;animation:wiggle 2s infinite}
@keyframes wiggle{0%,100%{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}
#prize-display,#already-played{display:none}
#prize-display{padding:0 24px 24px}
.prize-card{
  background:linear-gradient(135deg,#f8fbff 0%, #ffffff 100%);
  border:1px solid rgba(0,80,255,.10);
  border-radius:24px;padding:20px;margin-bottom:16px;position:relative;overflow:hidden;
}
.prize-badge{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(0,80,255,.1);color:var(--ac);
  font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;
  padding:4px 10px;border-radius:999px;margin-bottom:10px;
}
.prize-title{font-family:"Sora",sans-serif;font-size:22px;font-weight:800;color:var(--t);letter-spacing:-.04em;line-height:1.2;margin-bottom:6px}
.prize-desc{font-size:13px;color:var(--t2);line-height:1.5;margin-bottom:16px}
.coupon-box{
  background:#0b1020;border-radius:16px;padding:14px 16px;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
}
.coupon-left{display:flex;flex-direction:column;gap:2px}
.coupon-label{font-size:9px;color:var(--t3);font-weight:700;letter-spacing:1.5px;text-transform:uppercase}
.coupon-code{font-family:monospace;font-size:18px;font-weight:700;color:#fff;letter-spacing:2px}
.coupon-copy-btn{
  background:var(--ac);color:#fff;border-radius:12px;
  padding:8px 14px;font-size:12px;font-weight:700;white-space:nowrap;display:flex;align-items:center;gap:5px;flex-shrink:0;
}
.coupon-copy-btn:hover{background:var(--ac2);transform:translateY(-1px)}
.coupon-copy-btn.copied{background:var(--gn)}
.timer-bar{
  display:flex;align-items:center;gap:8px;
  background:rgba(255,214,10,.1);border:1px solid rgba(255,214,10,.3);
  border-radius:12px;padding:8px 12px;margin-bottom:12px;
}
.timer-icon{font-size:14px;animation:flicker 1.5s infinite}
@keyframes flicker{0%,100%{opacity:1}50%{opacity:.6}}
.timer-text{font-size:12px;font-weight:700;color:#B07D00;flex:1}
.timer-count{font-family:monospace;font-size:16px;font-weight:700;color:#B07D00;min-width:42px}
.prize-cta{
  width:100%;padding:14px;background:#000;color:#fff;border-radius:16px;
  font-size:15px;font-weight:800;letter-spacing:-.02em;
}
.prize-cta:hover{background:var(--ac);transform:translateY(-1px);box-shadow:0 4px 20px rgba(0,80,255,.35)}
.prize-conditions{font-size:10px;color:var(--t3);text-align:center;margin-top:8px;line-height:1.5}
#second-spin-section{display:none;padding:0 24px 16px}
.second-spin-card{
  background:#fff;
  border:1px solid var(--bd);
  border-radius:24px;
  padding:16px;
  text-align:left;
  box-shadow:var(--shadow);
}
.second-spin-kicker{
  font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ac);margin-bottom:8px;
}
.second-spin-card h4{
  font-family:"Sora",sans-serif;
  font-size:14px;font-weight:800;color:var(--t);line-height:1.3;margin-bottom:4px;
}
.second-spin-card p{color:var(--t2);font-size:11px;line-height:1.5;margin-bottom:12px}
.email-input-row{display:flex;gap:8px}
.email-input{
  flex:1;padding:10px 12px;background:var(--sur2);border:1px solid var(--bd);border-radius:14px;
  color:var(--t);font-family:"Manrope",sans-serif;font-size:13px;outline:none;
}
.email-input::placeholder{color:var(--t3)}
.email-input:focus{border-color:var(--ac);box-shadow:0 0 0 4px var(--acg)}
.email-submit{
  padding:10px 16px;background:var(--ac);color:#fff;border-radius:14px;
  font-family:"Manrope",sans-serif;font-size:12px;font-weight:800;white-space:nowrap;
}
.email-submit:hover{background:var(--ac2);transform:translateY(-1px)}
#already-played{padding:20px 24px 24px;text-align:center}
.already-icon{font-size:40px;margin-bottom:12px}
.already-title{font-family:"Sora",sans-serif;font-size:18px;font-weight:800;color:var(--t);margin-bottom:6px}
.already-sub{font-size:13px;color:var(--t2);margin-bottom:16px}
.social-proof{
  padding:12px 24px 20px;
  display:flex;align-items:center;gap:10px;border-top:1px solid var(--bd);
}
.sp-avatars{display:flex}
.sp-avatar{
  width:24px;height:24px;border-radius:50%;border:2px solid #fff;margin-right:-8px;
  font-size:10px;display:flex;align-items:center;justify-content:center;background:var(--bd);
  font-weight:700;color:var(--t2);overflow:hidden;
}
.sp-text{font-size:11px;color:var(--t2);margin-left:12px}
.sp-text strong{color:var(--t)}
.spin-decision-section{
  display:none;
  gap:10px;
  margin-bottom:10px;
}
.spin-decision-section.on{display:grid}
.prize-cta-alt{
  background:var(--sur2);
  color:var(--t);
  border:1px solid var(--bd);
}
.prize-cta-alt:hover{background:#fff;color:var(--ac);border-color:#cfe0ff;box-shadow:none}
.prize-choice-note{
  font-size:11px;
  color:var(--t2);
  text-align:center;
  line-height:1.5;
}
#spin-confetti{
  position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:1001;display:none;
}

body.spin-lock{overflow:hidden}

@media (max-width: 560px){
  #spin-modal{width:calc(100vw - 24px);border-radius:28px}
  #spin-modal .modal-header{padding:20px}
  #spin-modal .spin-logo .logo-img{width:132px}
  #spin-modal .header-title{font-size:22px;max-width:240px}
  .wheel-section{padding:18px 18px 16px}
  .wheel-wrap{width:224px;height:224px;margin-bottom:16px}
  canvas#wheel{width:224px !important;height:224px !important}
  .prize-title{font-size:18px}
  .coupon-code{font-size:15px}
  .email-input-row{flex-direction:column}
  .wheel-pointer{top:-12px}
  .wheel-pointer-bar{width:14px;height:28px}
  .wheel-pointer-tip{border-left-width:7px;border-right-width:7px;border-top-width:9px}
}

/* Touch devices: always show add-to-cart button (no hover state on mobile) */
@media(hover:none){
  .atcq{opacity:1;transform:translateY(0);bottom:10px;left:10px;right:10px}
  .pc:hover .atcq{opacity:1;transform:translateY(0)}
}

@media(max-width:560px){
  .atcq{
    left:50%;
    right:auto;
    bottom:8px;
    width:calc(100% - 26px);
    max-width:190px;
    min-height:32px;
    padding:7px 10px;
    border-radius:999px;
    font-size:8.5px;
    letter-spacing:.05em;
    transform:translateX(-50%);
    box-shadow:0 12px 24px rgba(0,80,255,.18);
  }
}

@media(max-width:980px){
  .pgrid{grid-template-columns:1fr 1fr}
  .pgrid>.pcard:first-child{grid-column:1/-1}
  .trow,.pdgr,.chk-in,.catpg-in,.review-grid,.recent-purchases{grid-template-columns:1fr}
  .ft-in{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 20px}
  .ft-brand{grid-column:1/-1;max-width:640px}
  .ft-contact{grid-column:1/-1}
  .trust-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ord-sum,.fpanel{position:static}
  .navl{display:none}
  .nav-in{grid-template-columns:minmax(140px,170px) minmax(320px,1fr) auto}
  .cgrid-home{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pgrid-home{grid-template-columns:repeat(2,minmax(0,1fr))}
  .quick-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .account-template .recommendation-grid,.account-template .favorites-grid,.account-template .coupon-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}
  .searchpg{padding:22px 20px 10px}
  .searchpg-actions{width:100%}
}
@media(max-width:720px){
  .hero{height:calc(100vw / 3.51 + 28px);aspect-ratio:auto;padding:0 0 20px;margin:4px auto 0}
  .slide{inset:0 0 34px 0}
  .hero-banner-frame{padding:0;height:100%}
  .hero-copy{left:14px;right:14px;bottom:34px;max-width:none;padding:18px 18px 16px}
  .hero-title{font-size:28px}
  .hero-text{font-size:13px}
  .hero-proof-row{gap:8px}
  .pgrd{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
  .quick-shop-grid{grid-template-columns:1fr;gap:10px}
  .cgrid-home{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .trust-strip{grid-template-columns:1fr}
  .ccard{min-height:140px;padding:14px}
  .ci{font-size:28px}
  .cn{font-size:18px}
  .cc{max-width:none}
  .searchpg{padding:18px 16px 8px}
  .searchpg-head{align-items:flex-start}
  .searchpg-actions{width:100%}
  .search-empty-card{padding:20px}
  .search-empty-card strong{font-size:16px}
  .pgrid-home{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .fgrid,.ok-grid{grid-template-columns:1fr}
  .srow .pc{width:200px;min-width:200px;max-width:200px;flex-basis:200px}
  .pd-bottom-grid,.pd-mini-cards{grid-template-columns:1fr}
  .pd-bottom-grid{gap:14px;margin-top:24px}
  .pd-stack{gap:12px}
  .pd-panel{padding:14px;border-radius:20px}
  .pd-panel-copy{font-size:11px;line-height:1.5;margin:0 0 12px}
  .pd-mini-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .pd-mini{
    padding:11px;
    min-height:auto;
    border-radius:16px;
    gap:4px;
  }
  .pd-mini strong{font-size:11px;line-height:1.3}
  .pd-mini span{font-size:10px;line-height:1.45}
  .pd-mini:last-child{grid-column:1 / -1}
  .pdft{gap:10px}
  .pdfr{
    padding:12px;
    gap:12px;
    border-radius:16px;
    align-items:flex-start;
  }
  .pdfi{font-size:18px;line-height:1}
  .pdft2 strong{font-size:12px;line-height:1.35;margin-bottom:2px}
  .pdft2 span{font-size:10px;line-height:1.45}
  .pd-cross-row{
    display:flex;
    gap:10px;
    overflow-x:auto;
    overflow-y:hidden;
    padding:2px 2px 4px;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    max-width:100%;
  }
  .pd-cross-row::-webkit-scrollbar{display:none}
  .pd-cross-shell{
    display:grid;
    gap:8px;
  }
  .pd-cross-scrollbar{
    display:block;
    width:100%;
    height:4px;
    border-radius:999px;
    background:rgba(14,77,197,.08);
    border:1px solid rgba(14,77,197,.08);
    overflow:hidden;
    opacity:0;
    transform:translateY(2px);
    transition:opacity .2s ease, transform .2s ease;
  }
  .pd-cross-scrollbar.is-visible{
    opacity:1;
    transform:translateY(0);
  }
  .pd-cross-scrollbar span{
    display:block;
    height:100%;
    width:42px;
    border-radius:inherit;
    background:linear-gradient(90deg, rgba(14,77,197,.28), rgba(14,77,197,.92));
    box-shadow:0 2px 10px rgba(14,77,197,.16);
    will-change:transform,width;
  }
  .pd-cross-card{
    flex:0 0 clamp(132px,42vw,170px);
    padding:10px;
    border-radius:16px;
    scroll-snap-align:start;
  }
  .pd-cross-card img{
    margin-bottom:8px;
    border-radius:12px;
  }
  .pd-cross-card strong{
    font-size:11px;
    line-height:1.32;
    margin-bottom:3px;
  }
  .pd-cross-card span{font-size:11px}
  .catpg-in{grid-template-columns:1fr}
  .cat-head{
    padding:18px 16px 16px;
    gap:12px;
  }
  .cat-head,
  .cat-head .ph-right{
    align-items:flex-start;
  }
  .cat-head,
  .cat-toolbar{
    margin-bottom:12px;
  }
  .cat-head{
    flex-direction:column;
  }
  .cat-head-copy{max-width:none}
  .cat-head .sec-su{max-width:none}
  .cat-head .ph-right{
    width:100%;
    justify-content:space-between;
    gap:8px;
    flex-wrap:wrap;
  }
  .fmob-btn,
  .sort-field{flex:1 1 220px;min-width:0}
  .sort-field .ss{width:100%;min-width:0}
  .cat-toolbar{
    gap:8px;
  }
  .cat-active-filters{
    flex-wrap:nowrap;
    overflow-x:auto;
    padding-bottom:4px;
    scrollbar-width:none;
  }
  .cat-active-filters::-webkit-scrollbar{display:none}
  .cat-chip{flex:0 0 auto}
  .cat-chip span{max-width:150px}
  .cat-toolbar-copy{font-size:11px}
  .cat-breadcrumb{
    margin:0 0 10px;
    font-size:10px;
  }
  .fpanel-actions{
    position:sticky;
    bottom:0;
    z-index:1;
    display:grid;
    padding-top:12px;
    margin-top:12px;
    background:linear-gradient(180deg,rgba(255,255,255,0),var(--bg) 28%);
  }
  .fpanel-actions .filter-apply{display:flex}
  /* Filter drawer */
  .fpanel{
    display:none;
    position:fixed;bottom:0;left:0;right:0;
    z-index:1000;background:var(--bg);
    border-radius:24px 24px 0 0;max-height:82vh;overflow-y:auto;
    padding:0 16px 32px;box-shadow:0 -8px 40px rgba(0,0,0,.18)
  }
  .fpanel.open{
    display:block;
    animation:filterRise .24s ease-out;
  }
  .fmob-header{display:flex;align-items:center;justify-content:space-between;padding:16px 0 14px;border-bottom:1px solid var(--bd);margin-bottom:16px;position:sticky;top:0;background:var(--bg);z-index:1}
  .fmob-title{font-size:16px;font-weight:800;color:var(--t)}
  .fmob-close{background:var(--sur2);border:none;border-radius:999px;width:32px;height:32px;cursor:pointer;font-size:14px;color:var(--t2);display:flex;align-items:center;justify-content:center}
  .fmob-btn{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--bd);border-radius:999px;padding:10px 14px;font-size:12px;font-weight:700;cursor:pointer;color:var(--t);box-shadow:var(--shadow);white-space:nowrap}
  .fmob-overlay.on{display:block}
  .cat-subnav{
    flex-wrap:nowrap;
    overflow-x:auto;
    padding-bottom:4px;
    scrollbar-width:none;
  }
  .cat-subnav::-webkit-scrollbar{display:none}
  .subcat-pill{flex:0 0 auto}
}
@media(max-width:560px){
  .hero{height:calc(100vw / 3.51 + 26px);aspect-ratio:auto;margin:2px auto 0;padding-bottom:20px}
  .hdots{bottom:0}
  .nav{padding:0 14px}
  .cnavbar{padding:0 14px}
  .scroll-shell{
    padding:6px 0 2px;
  }
  .scroll-shell .scroll-btn{
    display:none !important;
  }
  .cnavbar-in{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:6px;
    height:auto;
    width:100%;
    max-width:none;
    overflow:visible;
    justify-content:stretch;
    scroll-snap-type:none;
    align-items:stretch;
  }
  .cnavbar-in.is-overflowing{justify-content:stretch}
  .cl{
    width:100%;
    min-height:44px;
    padding:8px 4px;
    white-space:nowrap;
    font-size:9.5px;
    line-height:1.1;
    letter-spacing:-.01em;
    justify-content:center;
    text-align:center;
    gap:4px;
  }
  .banner{
    min-height:30px;
    padding:7px 12px;
    font-size:10px;
    letter-spacing:.05em;
  }
  .banner-desktop{display:none}
  .banner-mobile{display:block}
  .mobile-search-sheet{top:118px}
  .nav-in{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:
      "logo actions"
      "search search";
    gap:10px 10px;
    height:auto;
    padding:12px 0 14px;
    align-items:center;
  }
  .logo-wrap{grid-area:logo}
  .nav-act{
    grid-area:actions;
    margin-left:0;
    justify-self:end;
    gap:6px;
  }
  .srch{
    grid-area:search;
    display:block;
    max-width:none;
    width:100%;
  }
  .nb-search{display:none}
  .nb-menu{display:flex}
  .nb{width:44px;height:44px}
  .nb-user{padding:0 12px;min-width:0;width:44px}
  .nb-user::after{display:none}
  .ft-in{grid-template-columns:1fr;gap:18px}
  .ft-brand,.ft-contact{grid-column:auto;max-width:none}
  .pgrd,.trow{grid-template-columns:1fr}
  .pgrid{grid-template-columns:1fr}
  .cd{width:100%}
  .sec{padding:28px 14px}
  .trust-section,.reviews-section,.benefits-section{padding-top:40px;padding-bottom:40px}
  .quick-shop-grid{grid-template-columns:1fr}
  .catpg-in,.pdpg,.chk-in{padding:26px 14px}
  .logo-img{width:112px;height:38px}
  .footer-logo{width:130px}
  .mobile-menu-sheet{
    height:min(95dvh,760px);
    max-height:calc(100dvh - 6px);
    border-radius:24px 24px 0 0;
  }
  .mobile-menu-grid,
  .mobile-menu-category-grid,
  .mobile-menu-account-actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .cat-head .pc2{font-size:10px;padding:0 10px}
  /* 2-col product grid on phones */
  .pgrd{grid-template-columns:repeat(2,1fr);gap:10px}
  .category-showcase{gap:10px}
  .cat-subnav{gap:8px;margin-bottom:14px}
  .subcat-pill{min-height:36px;padding:0 12px;font-size:11px}
  .pi{padding:12px;min-height:160px}
  .pbr{margin-bottom:4px}
  .pn{
    font-size:12px;
    line-height:1.25;
    min-height:2.5em;
    margin-bottom:5px;
  }
  .ppri{
    flex-wrap:nowrap;
    gap:5px;
    min-height:20px;
    overflow:hidden;
    margin-bottom:4px;
  }
  .ppc{font-size:16px}
  .ppo{font-size:10px}
  .ppct{
    font-size:9px;
    padding:2px 5px;
    white-space:nowrap;
    flex-shrink:0;
  }
  .pcuot{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:6px;
    margin-top:4px;
    padding-left:0;
    min-height:18px;
    font-size:9px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.01em;
    color:var(--t2);
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .pcuot::before{
    content:none !important;
    display:none !important;
  }
  .pst{
    display:flex;
    align-items:center;
    gap:4px;
    margin-top:4px;
    min-height:14px;
  }
  .stars{font-size:11px}
  .src{font-size:10px}
  .purg{
    display:flex;
    align-items:center;
    gap:5px;
    margin-top:4px;
    padding-left:4px;
    min-height:14px;
    font-size:8px;
    letter-spacing:.05em;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  /* Cart drawer full-width, nicer padding */
  .cdh{padding:14px 14px 12px}
  .cdt{font-size:17px}
  .cdc{width:40px;height:40px;font-size:16px}
  .cdb{padding:8px 14px}
  .citem{gap:10px;padding:10px 0}
  .cii{
    width:56px;
    height:56px;
    border-radius:16px;
    font-size:30px;
  }
  .cinm{font-size:12px;line-height:1.3;margin-bottom:2px}
  .civ{font-size:10px;margin-bottom:6px}
  .cipr{font-size:15px}
  .cipr span{font-size:9px}
  .ciq2{gap:6px;margin-top:6px}
  .ciq,.cir{width:40px;height:40px}
  .cisub{font-size:10px;margin-top:6px}
  .cdf{padding:12px 14px calc(12px + env(safe-area-inset-bottom))}
  .csl{margin-bottom:4px;font-size:12px}
  .ctl{margin-bottom:10px;font-size:17px}
  .coupon-row{flex-direction:row;flex-wrap:nowrap;margin:8px 0 4px;gap:6px}
  .coupon-inp{min-width:0;padding:10px 12px;font-size:14px;border-radius:12px}
  .coupon-apply-btn{min-height:42px;padding:10px 12px;font-size:11px;border-radius:12px}
  .coupon-status{margin-bottom:6px;font-size:11px;min-height:14px}
  .cart-foot-note{margin-top:6px;font-size:10px;line-height:1.35}
  .btnp.wide{min-height:46px}
  .ft-bot{
    margin-top:18px;
    padding-top:14px;
    flex-direction:column;
    align-items:center;
    text-align:center
  }
  .pyic{justify-content:center}
  .paylogo{min-height:38px;padding:0 11px;font-size:10px;gap:8px}
  .mobile-sticky-bar{
    display:none !important;
  }
}

@media(max-width:400px){
  .cat-head{
    padding:16px 14px 14px;
  }
  .cat-head .sec-ti{font-size:22px}
  .cat-head .sec-su{font-size:13px}
  .cat-head .ph-right{
    flex-direction:column;
    align-items:stretch;
  }
  .fmob-btn,
  .sort-field{
    width:100%;
    flex-basis:auto;
  }
  .cat-chip span{max-width:130px}
}

@media(max-width:400px){
  .pgrd{grid-template-columns:repeat(2,1fr);gap:8px}
  .pc{border-radius:18px}
  .pi{padding:10px;min-height:154px}
  .ppc{font-size:14px}
  .ppri{
    flex-wrap:nowrap;
    gap:4px;
    min-height:18px;
    overflow:hidden;
    margin-bottom:3px;
  }
  .ppo{font-size:9px}
  .ppct{
    font-size:8px;
    padding:2px 4px;
    white-space:nowrap;
    flex-shrink:0;
  }
  .pbr{margin-bottom:3px}
  .pn{font-size:11px;line-height:1.22;min-height:2.5em;margin-bottom:4px}
  .pcuot{font-size:8px;min-height:18px;margin-top:3px;padding-left:0;gap:5px}
  .pcuot::before{
    content:none !important;
    display:none !important;
  }
  .pcuot-logos img{height:10px}
  .pst{margin-top:3px;min-height:13px}
  .stars{font-size:10px}
  .src{font-size:9px}
  .purg{font-size:7px;min-height:13px;margin-top:3px;padding-left:4px}
  .srow .pc{width:172px;min-width:172px;flex-basis:172px}
  .quick-shop-grid{grid-template-columns:1fr}
  .mobile-sticky-bar{display:none !important}
}

@media(max-width:380px){
  .pgrd{grid-template-columns:1fr;gap:12px}
  .quick-shop-grid{grid-template-columns:1fr}
}

@keyframes filterRise{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:translateY(0)}
}

/* ── Mis pedidos button ─────────────────────────────────────────────────── */
.nb-orders{color:var(--t2)}
.nb-orders svg{display:block}

/* ── Checkout multi-step ────────────────────────────────────────────────── */
.chk-nav-row{display:flex;gap:10px;margin-top:8px;align-items:center}
.chk-nav-row .btnp{flex:1}
.btn-back{
  padding:13px 18px;border-radius:14px;background:var(--sur2);border:1px solid var(--bd);
  color:var(--t2);font-weight:700;cursor:pointer;font-size:14px;white-space:nowrap;
  transition:all .2s;flex-shrink:0;
}
.btn-back:hover{background:var(--bg3);color:var(--t)}
.btn-sec{
  padding:13px 18px;border-radius:14px;background:var(--sur2);border:1px solid var(--bd);
  color:var(--t2);font-weight:700;cursor:pointer;font-size:14px;transition:all .2s;
}
.btn-sec:hover{background:var(--bg3);color:var(--t)}

.chk-step-card{overflow:hidden}
.chk-card-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px
}
.chk-card-head h3{margin-bottom:4px}
.chk-card-head .chk-copy{margin-top:0}
.chk-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:26px;
  padding:0 10px;
  border-radius:999px;
  background:#eef5ff;
  color:var(--ac);
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  white-space:nowrap;
  flex-shrink:0;
}
.chk-copy{
  margin-top:6px;font-size:12px;line-height:1.55;color:var(--t3);max-width:64ch
}
.chk-note{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid var(--bd);
  color:var(--t3);
  font-size:11px;
  line-height:1.5;
}
.chk-hint{
  margin-top:14px;padding-top:14px;border-top:1px solid var(--bd);
  font-size:12px;line-height:1.5;color:var(--t3);font-weight:700;min-height:20px
}
.chk-hint.err{color:var(--rd)}
.chk-card.invalid{
  border-color:rgba(240,68,56,.28);
  box-shadow:0 0 0 4px rgba(240,68,56,.08), var(--shadow)
}
.chk-pickup{
  border-color:rgba(18,183,106,.18);
  background:linear-gradient(180deg,#fff,#f8fffb)
}
.pickup-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px
}
.pickup-grid > div{
  border:1px solid var(--bd);
  background:var(--sur2);
  border-radius:18px;
  padding:14px 16px
}
.pickup-grid span{
  display:block;
  margin-bottom:6px;
  color:var(--t3);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em
}
.pickup-grid strong{
  display:block;
  color:var(--t);
  font-size:13px;
  line-height:1.45
}
.pickup-wide{grid-column:1/-1}
#shippingCard .pmlist{gap:12px}
#shippingCard .pmm{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:18px 34px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  min-height:86px;
  padding:16px 18px;
  border:1px solid var(--bd);
  border-radius:22px;
  background:linear-gradient(180deg,#fff,#f8fbff);
  box-shadow:0 14px 32px rgba(15,23,42,.055);
  transition:all .2s
}
#shippingCard .pmm::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(0,80,255,.08),transparent 38%);
  opacity:0;
  transition:opacity .2s ease;
  pointer-events:none
}
#shippingCard .pmm:hover{border-color:#cfe0ff;background:#f8fbff}
#shippingCard .pmm:hover::after,
#shippingCard .pmm.on::after{opacity:1}
#shippingCard .pmm.on{
  border-color:var(--ac);
  background:#eef5ff;
  box-shadow:0 18px 38px rgba(0,80,255,.12)
}
#shippingCard .pmm.is-disabled,
#shippingCard .pmm:disabled{
  opacity:.62;
  cursor:not-allowed;
  box-shadow:none
}
#shippingCard .pmm:disabled:hover{
  border-color:var(--bd);
  background:linear-gradient(180deg,#fff,#f8fbff)
}
#shippingCard .pmr{
  width:18px;
  height:18px;
  border:2px solid var(--bd2);
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:all .2s;
  flex-shrink:0
}
#shippingCard .pmm.on .pmr{border-color:var(--ac)}
#shippingCard .pmd{width:10px;height:10px;background:var(--ac);border-radius:50%;display:none}
#shippingCard .pmm.on .pmd{display:block}
#shippingCard .pml{font-size:20px;line-height:1}
#shippingCard .pmi{min-width:0}
#shippingCard .pmi strong{
  display:block;
  font-size:14px;
  font-weight:800;
  line-height:1.2
}
#shippingCard .pmi span{
  display:block;
  font-size:12px;
  color:var(--t2);
  line-height:1.45;
  margin-top:2px
}
#shippingCard .pmi small{
  display:block;
  margin-top:4px;
  font-size:11px;
  line-height:1.45;
  color:var(--t3)
}
#shippingCard .pmbdgs{
  justify-self:end;
  display:flex;
  align-items:center
}
#shippingCard .pmbdg{
  min-width:96px;
  padding:6px 12px;
  border-radius:999px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1.1;
  background:#eef5ff;
  color:var(--ac)
}
#paymentCard .pmlist{gap:12px}
#paymentCard .pmm{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:18px 34px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  min-height:86px;
  padding:16px 18px;
  border:1px solid var(--bd);
  border-radius:22px;
  background:linear-gradient(180deg,#fff,#f8fbff);
  box-shadow:0 14px 32px rgba(15,23,42,.055);
  transition:all .2s
}
#paymentCard .pmm::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(0,80,255,.08),transparent 38%);
  opacity:0;
  transition:opacity .2s ease;
  pointer-events:none
}
#paymentCard .pmm:hover{border-color:#cfe0ff;background:#f8fbff}
#paymentCard .pmm:hover::after,
#paymentCard .pmm.on::after{opacity:1}
#paymentCard .pmm.on{
  border-color:var(--ac);
  background:#eef5ff;
  box-shadow:0 18px 38px rgba(0,80,255,.12)
}
#paymentCard .pmr{
  width:18px;
  height:18px;
  border:2px solid var(--bd2);
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:all .2s;
  flex-shrink:0
}
#paymentCard .pmm.on .pmr{border-color:var(--ac)}
#paymentCard .pmd{width:10px;height:10px;background:var(--ac);border-radius:50%;display:none}
#paymentCard .pmm.on .pmd{display:block}
#paymentCard .pml{font-size:20px;line-height:1}
#paymentCard .pmi{min-width:0}
#paymentCard .pmi strong{
  display:block;
  font-size:14px;
  font-weight:800;
  line-height:1.2
}
#paymentCard .pmi span{
  display:block;
  font-size:12px;
  color:var(--t2);
  line-height:1.45;
  margin-top:2px
}
#paymentCard .pmi small{
  display:block;
  margin-top:4px;
  font-size:11px;
  line-height:1.45;
  color:var(--t3)
}
#paymentCard .pmbdgs{
  justify-self:end;
  display:flex;
  align-items:center
}
#paymentCard .pmbdg{
  min-width:96px;
  padding:6px 12px;
  border-radius:999px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1.1;
  background:#eef5ff;
  color:var(--ac)
}

/* Resumen pedido primero en mobile */
@media(max-width:980px){
  .chk-in{display:flex;flex-direction:column}
  .ord-sum{order:-1;position:static}
  .ord-summary-head{padding:18px 18px 14px}
  .ord-summary-body{padding:0 18px 18px}
  .checkout-guest-layout{
    grid-template-columns:1fr;
  }
  .checkout-guest-actions{
    width:100%;
    justify-self:stretch;
    max-width:none;
  }
}

@media(max-width:720px){
  #shippingCard .pmm{
    grid-template-columns:18px 28px minmax(0,1fr) auto;
    gap:10px;
    padding:14px
  }
  #shippingCard .pmbdgs{
    justify-self:end;
    margin-top:0
  }
  .pickup-grid{grid-template-columns:1fr}
  .chk-card-head{flex-direction:column}
  .chk-nav-row{flex-direction:column-reverse;align-items:stretch}
  .chk-nav-row .btn-back,.chk-nav-row .btnp{width:100%}
  .checkout-guest-prompt{
    padding:16px;
  }
  .checkout-guest-layout{
    gap:14px;
  }
  .checkout-guest-actions-primary{
    grid-template-columns:1fr;
    width:100%;
  }
  .checkout-guest-btn{
    width:100%;
    min-height:48px;
    white-space:normal;
  }
  .checkout-guest-btn--ghost{
    min-height:46px;
  }
  .checkout-guest-copy h3{
    font-size:22px;
  }
  .ord-summary-copy p{max-width:none}
  .ord-summary-total{font-size:16px}
  #orderItems,#brickOrderItems{max-height:clamp(120px, 24vh, 180px);padding-right:4px}
  .oi{grid-template-columns:42px minmax(0,1fr) auto;gap:8px;padding:9px 0}
  .oii{width:42px;height:42px;font-size:22px;border-radius:13px}
  .oin{font-size:12px}
  .oipr{font-size:12px}
  .sl{font-size:11px}
  .stot{font-size:17px}
}

/* ── Cart-added modal ───────────────────────────────────────────────────── */
.camod{
  position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(120%);
  z-index:2000;pointer-events:none;width:min(420px,calc(100vw - 24px));
  transition:transform .35s cubic-bezier(.2,.8,.3,1);
}
.camod.on{transform:translateX(-50%) translateY(0);pointer-events:auto}
.camod-box{
  background:#fff;border-radius:22px;
  box-shadow:0 8px 48px rgba(16,24,40,.18),0 0 0 1px rgba(0,80,255,.06);
  padding:16px 18px;
}
.camod-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.camod-check{
  width:36px;height:36px;border-radius:50%;background:var(--gn);
  color:#fff;font-size:18px;font-weight:800;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.camod-ti{font-weight:800;font-size:14px;color:var(--t)}
.camod-su{font-size:12px;color:var(--t2);margin-top:1px;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.camod-acts{display:flex;gap:8px}
.camod-view{flex:1;padding:11px}
.camod-cont{flex:1;padding:11px}

/* ── Cuotas MP ──────────────────────────────────────────────────────────── */
.cui-title{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--t3);margin:14px 0 8px}
.cui-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.cui-opt{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  background:var(--sur2);border:1px solid var(--bd);border-radius:12px;
  padding:10px 12px;cursor:pointer;transition:all .15s;
}
.cui-opt:hover{border-color:var(--ac)}
.cui-opt.on{background:var(--acg);border-color:var(--ac)}
.cui-opt input{display:none}
.cui-main{display:grid;gap:2px;min-width:0}
.cui-main strong{font-size:13px;font-weight:800;color:var(--t);line-height:1.1}
.cui-main small{font-size:11px;line-height:1.35;color:var(--t3)}
.cui-tag{
  display:inline-block;margin-left:6px;
  font-size:10px;font-weight:800;letter-spacing:.06em;
  background:rgba(18,183,106,.15);color:var(--gn);
  border-radius:999px;padding:2px 7px;
}
.cui-tag-int{background:rgba(247,144,9,.15);color:var(--or)}

/* ── Help / Orders modal ────────────────────────────────────────────────── */
.hmod{position:fixed;inset:0;z-index:2200;display:flex;align-items:flex-end;justify-content:center;pointer-events:none}
.hmod.on{pointer-events:auto}
@media(min-width:640px){.hmod{align-items:center}}
.hmod-overlay{
  position:absolute;inset:0;background:rgba(8,12,28,.46);backdrop-filter:blur(12px) saturate(1.12);
  opacity:0;transition:opacity .3s;
}
.hmod.on .hmod-overlay{opacity:1}
.hmod-box{
  position:relative;z-index:1;
  background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(248,251,255,.72));
  border:1px solid rgba(255,255,255,.68);
  box-shadow:0 30px 90px rgba(15,23,42,.22), inset 0 1px 0 rgba(255,255,255,.78);
  backdrop-filter:blur(24px) saturate(1.18);
  -webkit-backdrop-filter:blur(24px) saturate(1.18);
  border-radius:28px 28px 0 0;
  max-height:90vh;overflow-y:auto;
  width:100%;max-width:640px;
  transform:translateY(40px);opacity:0;
  transition:transform .35s cubic-bezier(.2,.8,.3,1),opacity .25s;
}
@media(min-width:640px){.hmod-box{border-radius:28px;max-height:85vh}}
.hmod.on .hmod-box{transform:translateY(0);opacity:1}
.hmod-hd{
  display:flex;align-items:center;justify-content:space-between;
  padding:20px 24px 16px;border-bottom:1px solid var(--bd);
  position:sticky;top:0;background:rgba(255,255,255,.76);backdrop-filter:blur(18px);z-index:1;border-radius:28px 28px 0 0;
}
.hmod-title{font-family:"Sora",sans-serif;font-size:18px;font-weight:800;color:var(--t)}
.hmod-close{
  width:32px;height:32px;border-radius:50%;background:var(--sur2);border:1px solid var(--bd);
  color:var(--t3);cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;
  flex-shrink:0;transition:all .15s;
}
.hmod-close:hover{background:var(--bg3);color:var(--t)}
.hmod-body{padding:16px 24px 32px}
body.hmod-lock{overflow:hidden}

body.mobile-menu-lock{
  overflow:hidden;
  touch-action:none;
}
body.mobile-menu-lock .nav,
body.mobile-menu-lock .bottom-nav{
  pointer-events:none;
}
.auth-box{max-width:1080px}
.auth-subtitle{color:var(--t2);font-size:13px;margin-top:4px}
.auth-body{padding:0 24px 24px}
.auth-layout{
  display:grid;
  grid-template-columns:minmax(280px,340px) minmax(0,1fr);
  gap:18px;
}
.auth-showcase{
  display:grid;
  align-content:start;
  gap:14px;
}
.auth-showcase-card{
  background:linear-gradient(145deg,#0c1b44 0%,#0f2f86 60%,#1460ff 100%);
  color:#fff;
  border-radius:28px;
  padding:24px;
  min-height:220px;
  box-shadow:0 24px 60px rgba(0,80,255,.24);
}
.auth-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;
  opacity:.8;margin-bottom:14px
}
.auth-showcase-card h3{
  font-family:"Sora",sans-serif;
  font-size:30px;line-height:1.08;letter-spacing:-.05em;margin-bottom:12px
}
.auth-showcase-card p{font-size:14px;line-height:1.7;color:rgba(255,255,255,.82)}
.auth-perks{
  display:flex;flex-wrap:wrap;gap:8px
}
.auth-perks span{
  display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;
  background:#f7fbff;border:1px solid var(--bd);font-size:11px;font-weight:800;color:var(--t2)
}
.auth-showcase-grid{
  display:grid;
  gap:10px;
}
.auth-info-card{
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  border:1px solid var(--bd);
  border-radius:20px;
  padding:16px;
  box-shadow:var(--shadow);
}
.auth-info-card strong{
  display:block;
  font-size:13px;
  margin-bottom:6px;
  color:var(--t);
}
.auth-info-card span{
  display:block;
  font-size:12px;
  line-height:1.65;
  color:var(--t2);
}
.auth-main{
  background:linear-gradient(180deg,#fff 0%,#fbfcff 100%);
  border:1px solid var(--bd);
  border-radius:28px;
  padding:18px;
  box-shadow:var(--shadow);
  display:grid;
  align-content:start;
}
.auth-tabs{display:flex;gap:8px;margin-bottom:14px}
.auth-tab{
  flex:1;border:1px solid var(--bd);border-radius:999px;
  padding:11px 14px;font-size:12px;font-weight:800;color:var(--t2);cursor:pointer;
  background:var(--sur2);transition:all .2s;
}
.auth-tab.on{background:var(--ac);border-color:var(--ac);color:#fff}
.auth-optional-note{
  margin-bottom:14px;padding:12px 14px;border-radius:18px;
  background:linear-gradient(180deg,#fff 0%,#f7fbff 100%);border:1px solid var(--bd);
  color:var(--t2);font-size:12px;line-height:1.6
}
.auth-form,.auth-logged,.auth-dashboard{display:grid;gap:14px}
.auth-card-form{
  background:#fff;
  border:1px solid var(--bd);
  border-radius:22px;
  padding:18px;
  box-shadow:0 10px 26px rgba(16,24,40,.05);
}
.auth-form-intro h3{
  font-family:"Sora",sans-serif;
  font-size:22px;letter-spacing:-.04em;margin-bottom:6px
}
.auth-form-intro p{font-size:13px;color:var(--t2);line-height:1.65}
.auth-dashboard-grid{
  display:grid;
  grid-template-columns:290px minmax(0,1fr);
  gap:16px;
}
.account-summary{
  background:linear-gradient(180deg,#f8fbff 0%,#eef4ff 100%);
  border:1px solid #d6e4ff;
  border-radius:24px;
  padding:18px;
  display:grid;
  align-content:start;
  gap:12px;
}
.account-avatar{
  width:72px;height:72px;border-radius:24px;
  background:linear-gradient(145deg,#0050ff,#4f85ff);
  color:#fff;font-family:"Sora",sans-serif;font-size:24px;font-weight:800;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 18px 40px rgba(0,80,255,.26);
}
.auth-user-pill{
  display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;
  background:#eff8f2;border:1px solid rgba(18,183,106,.18);color:var(--t);width:max-content
}
.auth-user-dot{width:8px;height:8px;border-radius:50%;background:var(--gn)}
.account-name{
  font-family:"Sora",sans-serif;
  font-size:24px;
  line-height:1.12;
  letter-spacing:-.05em;
  color:var(--t);
}
.auth-user-copy{color:var(--t2);font-size:13px;line-height:1.6}
.account-stat-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.account-stat-card{
  background:#fff;
  border:1px solid var(--bd);
  border-radius:18px;
  padding:12px;
  display:grid;
  gap:4px;
}
.account-stat-card strong{
  font-family:"Sora",sans-serif;
  font-size:18px;
  letter-spacing:-.04em;
}
.account-stat-card span{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--t3);
  font-weight:800;
}
.account-panel{
  background:#fff;
  border:1px solid var(--bd);
  border-radius:24px;
  padding:18px;
  display:grid;
  gap:16px;
}
.account-panel-head h3{
  font-family:"Sora",sans-serif;
  font-size:24px;
  letter-spacing:-.04em;
  margin-bottom:6px;
}
.account-panel-head p{font-size:13px;color:var(--t2);line-height:1.65}
.account-form .btnp{justify-self:start}
.account-helper-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.auth-status{min-height:22px;margin-top:14px;font-size:12px;font-weight:700}
.auth-status.ok{color:var(--gn)}
.auth-status.err{color:var(--rd)}
.account-page{
  max-width:1240px;margin:0 auto;padding:40px 20px 84px;
  display:grid;grid-template-columns:340px minmax(0,1fr);gap:24px
}
.account-page-side{position:sticky;top:108px;align-self:start}
.account-page-main{display:grid;gap:18px}
.account-page-card,.account-page-hero{
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(244,248,255,.95));
  border:1px solid rgba(11,31,53,.08);border-radius:30px;
  box-shadow:0 18px 40px rgba(12,41,86,.08)
}
.account-page-card{padding:24px}
.account-page-summary{text-align:left;display:grid;gap:16px}
.account-page-avatar{
  width:74px;height:74px;border-radius:24px;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--ac),var(--ac2));color:#fff;
  font-family:"Sora",sans-serif;font-size:28px;font-weight:800;box-shadow:0 18px 30px rgba(0,80,255,.22)
}
.account-page-kicker,.account-page-eyebrow{
  display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;
  letter-spacing:.16em;text-transform:uppercase;color:var(--ac)
}
.account-page-summary h1{font-family:"Sora",sans-serif;font-size:32px;line-height:1.05;color:var(--t)}
.account-page-summary p,.account-page-card-head p,.account-page-hero p{
  font-size:14px;line-height:1.7;color:var(--t2)
}
.account-page-stat-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.account-page-stat{
  background:#fff;border:1px solid var(--bd);border-radius:20px;padding:14px 16px;display:grid;gap:4px
}
.account-page-stat strong{font-family:"Sora",sans-serif;font-size:20px;color:var(--t)}
.account-page-stat span{font-size:11px;font-weight:800;color:var(--t3);text-transform:uppercase;letter-spacing:.08em}
.account-page-actions{display:grid;gap:10px}
.account-page-hero{
  padding:30px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:end
}
.account-page-hero h2{
  font-family:"Sora",sans-serif;font-size:34px;line-height:1.06;color:var(--t);max-width:14ch;margin:8px 0 10px
}
.account-page-hero-chip{
  align-self:start;justify-self:end;background:#fff;border:1px solid var(--bd);border-radius:999px;
  padding:14px 18px;font-size:12px;font-weight:800;color:var(--t)
}
.account-page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.account-page-quickstats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.account-quick-card{
  background:#fff;border:1px solid var(--bd);border-radius:22px;padding:18px;display:grid;gap:8px;min-height:128px
}
.account-quick-card span{font-size:12px;font-weight:800;color:var(--t3);text-transform:uppercase;letter-spacing:.08em}
.account-quick-card strong{font-family:"Sora",sans-serif;font-size:28px;color:var(--t)}
.account-quick-card p{font-size:13px;line-height:1.55;color:var(--t2)}
.account-page-card-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px
}
.account-page-card-head h3{font-family:"Sora",sans-serif;font-size:22px;color:var(--t);margin-bottom:6px}
.account-page-card-wide{grid-column:1 / -1}
.account-orders-list{display:grid;gap:12px}
.account-favorites-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.account-favorite-card{
  display:grid;gap:12px;padding:14px;border-radius:22px;background:#fff;border:1px solid var(--bd)
}
.account-favorite-thumb{
  aspect-ratio:1/1;border-radius:16px;background:var(--sur2);overflow:hidden;border:1px solid var(--bd)
}
.account-favorite-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.account-favorite-card strong{font-size:14px;line-height:1.35;color:var(--t)}
.account-favorite-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;color:var(--t3)}
.account-favorite-actions,.account-address-actions,.account-support-actions{display:flex;gap:8px;flex-wrap:wrap}
.account-coupons-list,.account-addresses-list,.account-support-list{display:grid;gap:12px}
.account-coupon-card,.account-address-card,.account-support-card{
  display:grid;gap:10px;padding:16px;border-radius:22px;background:#fff;border:1px solid var(--bd)
}
.account-coupon-code{
  width:fit-content;display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:14px;
  background:rgba(0,80,255,.08);border:1px dashed rgba(0,80,255,.35);font-size:12px;font-weight:900;color:var(--ac)
}
.account-coupon-meta,.account-address-meta,.account-support-card p{font-size:13px;line-height:1.6;color:var(--t2)}
.account-address-head,.account-support-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.account-address-card strong,.account-coupon-card strong,.account-support-card strong{font-size:15px;color:var(--t)}
.account-address-form{margin-top:14px;padding-top:14px;border-top:1px solid var(--bd)}
.auth-inline-row{margin-top:4px}
.account-order-item{
  display:grid;gap:8px;padding:16px 18px;border-radius:22px;background:var(--sur2);border:1px solid var(--bd)
}
.account-order-top,.account-order-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}
.account-order-code{font-family:monospace;font-size:13px;font-weight:800;color:var(--t)}
.account-order-date,.account-order-meta{font-size:12px;color:var(--t3)}
.account-order-status{font-size:12px;font-weight:800}
.account-order-total{font-family:"Sora",sans-serif;font-size:17px;color:var(--t)}
.account-empty-state{
  display:grid;gap:6px;padding:24px;border-radius:22px;background:var(--sur2);border:1px dashed var(--bd2)
}
.account-empty-state strong{font-family:"Sora",sans-serif;font-size:18px;color:var(--t)}
.account-empty-state span{font-size:13px;line-height:1.65;color:var(--t2)}
.account-page-status{padding:0 8px}
.account-template .auth-status{
  display:block;
  min-height:0;
  margin-top:2px;
  padding:0;
  font-size:13px;
  font-weight:800;
  line-height:1.5;
}
.account-template .auth-status:empty{display:none}
.account-template .auth-status.ok,
.account-template .auth-status.err,
.account-template .auth-status.info{
  padding:10px 12px;
  border-radius:14px;
  border:1px solid transparent;
}
.account-template .auth-status.ok{
  background:rgba(18,183,106,.1);
  border-color:rgba(18,183,106,.16);
  color:#027a48;
}
.account-template .auth-status.err{
  background:rgba(240,68,56,.08);
  border-color:rgba(240,68,56,.16);
  color:#b42318;
}
.account-template .auth-status.info{
  background:#f5f8ff;
  border-color:rgba(0,80,255,.1);
  color:var(--ac);
}

@media(max-width:980px){
  .auth-layout,
  .auth-dashboard-grid,
  .account-helper-grid,
  .account-page,
  .account-page-grid,
  .account-page-hero,
  .account-page-quickstats{
    grid-template-columns:1fr;
  }
  .auth-showcase-card{min-height:auto}
  .account-page-side{position:static}
  .account-page-hero-chip{justify-self:start}
}

@media(max-width:640px){
  .auth-body{padding:0 16px 16px}
  .auth-main,.account-panel,.account-summary,.auth-card-form{padding:16px}
  .account-stat-grid{grid-template-columns:1fr 1fr}
  .auth-showcase-card h3{font-size:24px}
  .account-name{font-size:22px}
  .account-page{padding:24px 14px 72px}
  .account-page-card,.account-page-hero{padding:18px}
  .account-page-summary h1,.account-page-hero h2{font-size:28px}
  .account-page-stat-row,.account-page-grid,.account-page-quickstats,.account-favorites-grid{grid-template-columns:1fr}
}

/* Auth + account template */
.auth-template-shell{
  width:min(560px,calc(100vw - 24px));
  max-width:none;
  padding:0;
  overflow:auto;
  background:transparent;
  border:0;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  max-height:calc(100vh - 18px)
}
.address-modal .hmod-box{
  width:min(780px,calc(100vw - 32px));
  max-width:none;
  height:min(900px,calc(100vh - 32px));
  max-height:none;
  overflow:hidden;
  background:transparent;
  border:0;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.address-modal .address-template{
  height:100%;
  min-height:0;
  background:transparent;
  border-radius:0;
  overflow:hidden;
}
.address-modal .address-template .auth-layout{
  grid-template-columns:1fr;
  padding:12px;
  min-height:100%;
  height:100%;
  align-items:stretch;
}
.address-modal .address-template .form-zone{
  padding:0;
  min-height:0;
  height:100%;
  align-content:stretch;
}
.address-modal .address-template .form-card{
  width:100%;
  height:100%;
  padding:0;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  overflow:hidden;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(11,31,53,.08);
  box-shadow:0 30px 90px rgba(15,23,42,.18), inset 0 1px 0 rgba(255,255,255,.82);
}
.address-modal .hmod-overlay{
  background:rgba(15,23,42,.52);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.address-modal .address-dialog-head{
  margin:0;
  padding:20px 64px 16px 20px;
  border-bottom:1px solid rgba(11,31,53,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(250,252,255,.94) 100%);
}
.address-modal .address-dialog-pill{
  margin-bottom:8px;
}
.address-modal .address-dialog-head h1{
  margin-bottom:6px;
}
.address-modal .address-dialog-head p{
  max-width:58ch;
}
.address-modal .address-dialog-form{
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  min-height:0;
  height:100%;
}
.address-modal .address-dialog-body{
  display:grid;
  gap:12px;
  padding:16px 20px 16px;
  overflow:auto;
  min-height:0;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:rgba(0,80,255,.22) transparent;
}
.address-modal .address-dialog-body::-webkit-scrollbar{
  width:8px;
}
.address-modal .address-dialog-body::-webkit-scrollbar-track{
  background:transparent;
}
.address-modal .address-dialog-body::-webkit-scrollbar-thumb{
  background:rgba(0,80,255,.18);
  border-radius:999px;
  border:2px solid transparent;
  background-clip:padding-box;
}
.address-modal .address-fieldset{
  display:grid;
  gap:10px;
  padding:13px;
  border-radius:20px;
  border:1px solid rgba(11,31,53,.08);
  background:linear-gradient(180deg,#fff 0%,#f9fbff 100%);
}
.address-modal .address-fieldset-head{
  display:grid;
  gap:4px;
}
.address-modal .address-fieldset-head strong{
  font-size:11px;
  font-weight:900;
  color:var(--t3);
  text-transform:uppercase;
  letter-spacing:.09em;
}
.address-modal .address-fieldset-head p{
  font-size:12px;
  line-height:1.45;
  color:#667085;
}
.address-modal .address-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.address-modal .address-grid .address-wide{
  grid-column:1 / -1;
}
.address-modal .address-inline{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.address-modal .address-street-grid{
  grid-template-columns:minmax(0,1.4fr) minmax(180px,.6fr);
}
.address-modal .address-dialog-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 20px 18px;
  border-top:1px solid rgba(11,31,53,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(248,251,255,.99) 100%);
}
.address-modal .address-default-check{
  margin:0;
  min-height:44px;
  padding:10px 12px;
  border-radius:14px;
  background:#f5f8ff;
  border:1px solid rgba(0,80,255,.08);
  color:var(--t);
}
.address-modal .address-dialog-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:flex-end;
}
.address-modal .address-dialog-actions .ghost-btn,
.address-modal .address-dialog-actions .primary-btn{
  min-width:150px;
}
.account-template #account-section-addresses .simple-list{
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  align-items:stretch;
  gap:14px;
}
.account-template #account-section-addresses .account-empty-state{
  min-height:220px;
}
.account-template #account-section-addresses .address-item{
  display:grid;
  gap:12px;
  padding:16px;
  border-radius:22px;
  border:1px solid rgba(11,31,53,.08);
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);
  box-shadow:0 12px 28px rgba(15,23,42,.05);
}
.account-template #account-section-addresses .address-item.is-default{
  border-color:rgba(0,80,255,.14);
  box-shadow:0 16px 30px rgba(0,80,255,.08);
}
.account-template .address-copy{
  display:grid;
  gap:6px;
  min-width:0;
}
.account-template .address-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.account-template .address-title-row strong{
  font-size:16px;
  line-height:1.25;
  letter-spacing:-.02em;
  color:var(--t);
  font-weight:900;
}
.account-template .address-detail-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.account-template .address-detail-tile{
  display:grid;
  gap:4px;
  padding:12px 13px;
  border-radius:16px;
  background:#f9fbff;
  border:1px solid rgba(11,31,53,.08);
}
.account-template .address-detail-tile span{
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#667085;
}
.account-template .address-detail-tile strong{
  font-size:13px;
  line-height:1.35;
  color:var(--t);
  font-weight:900;
  min-width:0;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.account-template .address-notes{
  font-size:12px;
  line-height:1.55;
  color:#667085;
  padding:11px 12px;
  border-radius:14px;
  background:#f5f8ff;
  border:1px solid rgba(0,80,255,.08);
}
.account-template .address-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.account-template .address-state-pill{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 12px;
  border-radius:13px;
  border:1px solid rgba(0,80,255,.1);
  background:rgba(0,80,255,.06);
  color:var(--ac);
  font-size:12px;
  font-weight:900;
}
.account-template .address-empty-state{
  justify-items:center;
  text-align:center;
  padding:24px 18px;
}
.account-template .address-empty-icon{
  width:52px;
  height:52px;
  border-radius:18px;
  display:grid;
  place-items:center;
  font-size:24px;
  background:linear-gradient(180deg,#f5f8ff 0%,#eef4ff 100%);
  border:1px solid rgba(0,80,255,.1);
}
.account-template .address-empty-actions{
  display:flex;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  margin-top:4px;
}
.auth-template{min-height:auto;background:transparent;border-radius:0;overflow:visible}
#authModal .auth-template-close{
  position:absolute;top:16px;right:16px;z-index:10;width:36px;height:36px;border-radius:12px;
  border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.42);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)
}
.auth-template .auth-layout{
  min-height:auto;display:grid;grid-template-columns:1fr;gap:0;padding:16px 16px 16px
}
.auth-template .auth-title,
.auth-template .auth-copy,
.auth-template .auth-footer-note,
.auth-template .auth-benefits,
.auth-template .template-badge,
.auth-template .badge-dot,
.auth-template .benefit-row,
.auth-template .benefit-icon{
  display:none
}
.auth-template .form-zone{
  display:grid;
  place-items:center;
  align-content:start;
  padding:0
}
.auth-template .form-card{
  position:relative;
  width:min(100%,480px);
  background:
    linear-gradient(180deg,rgba(255,255,255,.58) 0%,rgba(255,255,255,.32) 100%),
    radial-gradient(circle at top left, rgba(0,80,255,.12), transparent 32%),
    radial-gradient(circle at 90% 14%, rgba(51,116,255,.1), transparent 26%);
  border:1px solid rgba(255,255,255,.34);
  border-radius:28px;
  padding:clamp(18px,2.2vw,26px);
  box-shadow:0 24px 70px rgba(15,23,42,.16), inset 0 1px 0 rgba(255,255,255,.42);
  backdrop-filter:blur(28px) saturate(180%);
  -webkit-backdrop-filter:blur(28px) saturate(180%)
}
.auth-template .form-head{margin-bottom:14px;padding-right:56px}
.auth-template .form-head h1{font-family:"Sora",sans-serif;font-size:clamp(24px,3.1vw,32px);letter-spacing:-.04em;margin-bottom:7px;color:var(--t)}
.auth-template .form-head p{color:#667085;line-height:1.45;font-size:13px}
.auth-template .tab-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:6px;background:#eef3ff;border-radius:999px;margin-bottom:18px}
.auth-template .tab-btn{
  border:0;min-height:44px;border-radius:999px;background:transparent;color:#667085;font-weight:800;transition:.22s ease
}
.auth-template .tab-btn.on,.auth-template .tab-btn.active{
  background:#fff;color:var(--ac);box-shadow:0 8px 22px rgba(0,80,255,.12)
}
.auth-template .form{display:none;animation:fadeUp .35s ease both}
.auth-template .form.active{display:block}
.auth-template .field-grid{display:grid;gap:12px}
.auth-template .two-cols{grid-template-columns:repeat(2,1fr)}
#authRegisterForm .register-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:12px !important;
}
#authRegisterForm .register-grid .field{
  min-width:0;
}
.auth-template .field{display:grid;gap:8px}
.auth-template .field label{font-size:13px;font-weight:800;color:#26324a}
.auth-template .input-wrap{position:relative}
.auth-template .field input,.auth-template .field select,.auth-template .field textarea{
  width:100%;min-height:46px;border:1px solid rgba(11,31,53,.1);border-radius:15px;background:#fff;padding:0 14px;color:var(--t);outline:0;font-size:14px;transition:.2s ease
}
.auth-template .field textarea{min-height:106px;padding:14px;resize:vertical}
.auth-template .field input::placeholder,.auth-template .field textarea::placeholder{color:#a7b0c0}
.auth-template .field input:focus,.auth-template .field select:focus,.auth-template .field textarea:focus{
  border-color:rgba(0,80,255,.55);box-shadow:0 0 0 5px rgba(0,80,255,.1)
}
.auth-template .password-toggle{
  position:absolute;right:8px;top:50%;transform:translateY(-50%);height:36px;padding:0 10px;border:0;border-radius:10px;background:#f8fbff;color:#667085;font-size:12px;font-weight:800
}
.auth-template .form-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:12px 0 14px;color:#667085;font-size:13px}
.auth-template .check{display:inline-flex;align-items:center;gap:8px;cursor:pointer;user-select:none}
.auth-template .check input,.account-template .check input{width:17px;height:17px;accent-color:var(--ac)}
.auth-template .link-btn,.account-template .link-btn{border:0;background:transparent;color:var(--ac);font-weight:800;padding:0}
.auth-template .primary-btn,.auth-template .secondary-btn,.auth-template .ghost-btn,.auth-template .danger-btn,
.account-template .primary-btn,.account-template .secondary-btn,.account-template .ghost-btn,.account-template .danger-btn{
  border:0;min-height:46px;border-radius:15px;padding:0 18px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:transform .2s ease, box-shadow .2s ease, background .2s ease;white-space:nowrap
}
.auth-template .primary-btn,.account-template .primary-btn{
  background:linear-gradient(135deg,var(--ac),#2f73ff);color:#fff;box-shadow:0 18px 35px rgba(0,80,255,.25)
}
.auth-template .secondary-btn,.account-template .secondary-btn{background:rgba(0,80,255,.09);color:var(--ac)}
.auth-template .ghost-btn,.account-template .ghost-btn{background:#fff;color:var(--t);border:1px solid rgba(11,31,53,.1)}
.auth-template .danger-btn,.account-template .danger-btn{background:rgba(240,68,56,.09);color:#f04438}
.auth-template .primary-btn:hover,.auth-template .secondary-btn:hover,.auth-template .ghost-btn:hover,.auth-template .danger-btn:hover,
.account-template .primary-btn:hover,.account-template .secondary-btn:hover,.account-template .ghost-btn:hover,.account-template .danger-btn:hover{transform:translateY(-2px)}
.account-template .primary-btn:disabled,.account-template .secondary-btn:disabled,.account-template .ghost-btn:disabled,.account-template .danger-btn:disabled,.account-template .small-btn:disabled{
  opacity:.55;
  cursor:not-allowed;
  transform:none;
  box-shadow:none;
}
.auth-template .mini-copy{color:#667085;font-size:12px;line-height:1.45;margin-top:12px;text-align:center}
#authRegisterForm .mini-copy{display:none}
#authModal.hmod{align-items:center}
.auth-template .auth-status{
  min-height:22px;margin-top:14px;font-size:13px;font-weight:700;border-radius:14px;padding:0
}
.auth-template .auth-status.ok,.account-page-status.ok{color:#027a48}
.auth-template .auth-status.err,.account-page-status.err{color:#b42318}
.confirm-modal .confirm-box{
  max-width:420px;
  width:min(92vw,420px);
  padding:30px 26px 24px;
  display:grid;
  gap:14px;
  text-align:center;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,255,255,.92),transparent 34%),
    radial-gradient(circle at 86% 12%,rgba(0,80,255,.18),transparent 38%),
    linear-gradient(180deg,rgba(255,255,255,.82),rgba(245,248,255,.68));
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 34px 90px rgba(15,23,42,.26), inset 0 1px 0 rgba(255,255,255,.86);
  backdrop-filter:blur(28px) saturate(1.2);
  -webkit-backdrop-filter:blur(28px) saturate(1.2);
}
.confirm-modal .confirm-box::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.5),transparent 42%,rgba(0,80,255,.08));
  pointer-events:none;
}
.confirm-modal .confirm-icon{
  width:52px;height:52px;border-radius:18px;
  display:grid;place-items:center;
  margin:0 auto;
  background:linear-gradient(135deg,rgba(240,68,56,.12),rgba(255,232,230,.9));
  color:#f04438;
  font-family:"Sora",sans-serif;
  font-size:24px;
  font-weight:900;
}
.confirm-modal[data-tone="primary"] .confirm-icon{
  background:linear-gradient(135deg,rgba(0,80,255,.14),rgba(232,240,255,.92));
  color:var(--ac);
}
.confirm-modal h3{
  font-family:"Sora",sans-serif;
  font-size:24px;
  letter-spacing:-.04em;
  color:var(--t);
}
.confirm-modal p{
  color:var(--t2);
  font-size:14px;
  line-height:1.65;
  max-width:330px;
  margin:0 auto;
}
.confirm-modal .confirm-actions{
  display:flex;
  gap:10px;
  margin-top:8px;
  justify-content:center;
}
.confirm-modal .hmod-close.confirm-close{
  position:absolute;
  top:18px;
  right:18px;
  z-index:2;
}
.confirm-modal .ghost-btn,.confirm-modal .danger-btn,.confirm-modal .primary-btn{
  border:0;
  min-height:46px;
  border-radius:15px;
  padding:0 18px;
  font-weight:900;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
  white-space:nowrap;
  min-width:132px;
}
.confirm-modal .ghost-btn{
  background:rgba(255,255,255,.74);
  color:var(--t);
  border:1px solid rgba(11,31,53,.1);
}
.confirm-modal .primary-btn{
  background:linear-gradient(135deg,var(--ac),#2f73ff);
  color:#fff;
  box-shadow:0 18px 35px rgba(0,80,255,.24);
}
.confirm-modal .danger-btn{
  background:linear-gradient(135deg,#f04438,#ff6b5f);
  color:#fff;
  box-shadow:0 18px 35px rgba(240,68,56,.2);
}
.confirm-modal .ghost-btn:hover,.confirm-modal .danger-btn:hover,.confirm-modal .primary-btn:hover{
  transform:translateY(-2px);
}
.auth-template .auth-logged-card{display:grid;gap:16px}
.auth-template .auth-logged-brand{margin-bottom:0}
.auth-template .auth-mini-stats{grid-template-columns:repeat(2,1fr);margin-bottom:0}

.account-template{
  min-height:100vh;background:#f5f8ff
}
.account-template .dashboard-layout{
  min-height:100vh;
  display:grid;
  grid-template-columns:284px 1fr;
  align-items:stretch;
  background:#f5f8ff;
  position:relative;
  isolation:isolate;
}
.account-template .dashboard-layout::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:284px;
  background:linear-gradient(180deg,rgba(255,255,255,.88) 0%,rgba(249,251,255,.96) 100%);
  border-right:1px solid rgba(11,31,53,.1);
  box-shadow:inset -1px 0 0 rgba(255,255,255,.72);
  z-index:0;
}
.account-template .sidebar{
  position:sticky;
  top:16px;
  min-height:calc(100dvh - 32px);
  height:calc(100dvh - 32px);
  max-height:calc(100dvh - 32px);
  padding:20px 20px max(24px,env(safe-area-inset-bottom));
  background:transparent;
  border-right:0;
  backdrop-filter:blur(16px);
  display:flex;
  flex-direction:column;
  gap:18px;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  scrollbar-width:none;
  box-shadow:none;
  z-index:2
}
.account-template .sidebar::-webkit-scrollbar{display:none}
.account-template .sidebar::after{
  display:none;
}
.account-template .account-brand{
  min-height:68px;
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  padding:14px;
  border-radius:20px;
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(244,247,255,.96));
  border:1px solid rgba(11,31,53,.09);
  box-shadow:0 12px 28px rgba(15,23,42,.05);
  text-align:left;
}
.account-template .account-brand-link{
  appearance:none;
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}
.account-template .account-brand-link:hover,
.account-template .account-brand-link:focus-visible{
  transform:translateY(-1px);
  border-color:#cfe0ff;
  box-shadow:0 16px 32px rgba(15,23,42,.08);
  background:linear-gradient(135deg,#fff,#f2f7ff);
}
.account-template .account-brand-link:focus-visible{
  outline:3px solid rgba(0,80,255,.18);
  outline-offset:2px;
}
.account-template .account-brand-shell{
  display:grid;
  gap:10px;
  position:relative;
}
.account-template .account-brand-actions{
  display:none;
}
.account-template .account-sidebar-close{
  display:none;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  padding:0;
  border-radius:12px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(11,31,53,.1);
  box-shadow:0 10px 22px rgba(15,23,42,.08);
  color:var(--t);
  font-size:23px;
  line-height:1;
  font-weight:900;
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease, color .2s ease;
}
.account-template .account-sidebar-action{
  width:40px;
  height:40px;
  padding:0;
  border-radius:12px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(11,31,53,.1);
  box-shadow:0 10px 22px rgba(15,23,42,.08);
  display:grid;
  place-items:center;
  color:var(--t);
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease, color .2s ease;
}
.account-template .account-sidebar-action:hover,
.account-template .account-sidebar-action:focus-visible{
  transform:translateY(-1px);
  border-color:#cfe0ff;
  background:#fff;
  box-shadow:0 14px 28px rgba(15,23,42,.1);
  color:var(--ac);
}
.account-template .account-brand-actions{
  position:absolute;
  top:10px;
  right:10px;
  display:none;
  align-items:center;
  gap:8px;
  z-index:3;
}
.account-template .account-brand-actions .notifications-shell{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  overflow:visible;
}
.account-template .account-brand-actions .icon-btn{
  position:relative;
}
.account-template .account-brand-actions .icon-btn.account-sidebar-action{
  width:40px;
  height:40px;
  min-width:40px;
  min-height:40px;
  padding:0;
  border-radius:12px;
}
.account-template .account-brand-actions .icon-btn svg{
  width:18px;
  height:18px;
}
.account-template .account-brand-actions .notification-badge{
  top:6px;
  right:6px;
  min-width:16px;
  height:16px;
  padding:0 4px;
  box-shadow:0 0 0 2px #fff;
}
.account-template .account-sidebar-close:hover,
.account-template .account-sidebar-close:focus-visible{
  transform:translateY(-1px);
  border-color:#cfe0ff;
  background:#fff;
  box-shadow:0 14px 28px rgba(15,23,42,.1);
  color:var(--ac);
}
.account-template .account-avatar{
  width:44px;
  height:44px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--ac),#2f73ff);
  color:#fff;
  font-weight:900;
  box-shadow:0 12px 25px rgba(0,80,255,.22);
  text-transform:uppercase
}
.account-template .account-brand-copy{min-width:0;display:grid;gap:4px}
.account-template .account-brand strong{
  display:block;
  font-size:14px;
  line-height:1.2;
  color:var(--t);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.account-template .account-brand small{
  display:block;
  color:#667085;
  font-size:12px;
  line-height:1.45;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}
.account-template .side-nav{display:grid;gap:8px}
.account-template .nav-section-label{color:#98a2b3;font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;padding:10px 12px 4px}
.account-template .nav-item{
  min-height:50px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  border:1px solid rgba(11,31,53,.08);
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  color:#344054;
  border-radius:16px;
  padding:0 13px 0 14px;
  font-weight:800;
  text-align:left;
  box-shadow:0 10px 22px rgba(15,23,42,.04);
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, color .2s ease
}
.account-template .nav-item-main{
  min-width:0;
  display:flex;
  align-items:center;
  gap:12px;
  flex:1
}
.account-template .nav-label{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}
.account-template .nav-item svg{
  width:20px;
  height:20px;
  stroke-width:2.2;
  flex:0 0 auto
}
.account-template .nav-item:hover{
  transform:translateX(2px);
  border-color:#cfe0ff;
  background:linear-gradient(180deg,#fff 0%,#f4f8ff 100%);
  color:var(--ac)
}
.account-template .nav-item:focus-visible{
  outline:3px solid rgba(0,80,255,.18);
  outline-offset:2px
}
.account-template .nav-item.active{
  background:linear-gradient(135deg,var(--ac),#2f73ff);
  color:#fff;
  border-color:transparent;
  box-shadow:0 16px 30px rgba(0,80,255,.24);
  transform:none
}
.account-template .nav-item.active svg{color:#fff}
.account-template .nav-item.active .nav-badge{
  background:rgba(255,255,255,.16);
  color:#fff;
  border-color:rgba(255,255,255,.18)
}
.account-template .nav-badge{
  min-width:24px;
  height:24px;
  padding:0 8px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  font-weight:900;
  line-height:1;
  background:rgba(0,80,255,.08);
  color:var(--ac);
  border:1px solid rgba(0,80,255,.12);
  flex:0 0 auto
}
.account-template .nav-badge[hidden]{display:none !important}
.account-template .sidebar-bottom{margin-top:auto;display:grid;gap:10px;padding-top:8px;padding-bottom:4px;border-top:1px solid rgba(11,31,53,.08)}
.account-template .support-card{
  padding:14px;
  border-radius:20px;
  background:radial-gradient(circle at top right, rgba(0,80,255,.13), transparent 38%),#fff;
  border:1px solid rgba(11,31,53,.1);
  box-shadow:0 12px 24px rgba(15,23,42,.05)
}
.account-template .support-card strong{display:block;margin-bottom:6px;font-size:14px;color:var(--t)}
.account-template .support-card p{color:#667085;font-size:12px;line-height:1.55;margin-bottom:10px}
.account-template .sidebar-bottom .danger-btn{
  min-height:48px;
  border-radius:16px;
  background:linear-gradient(180deg,rgba(240,68,56,.08),rgba(240,68,56,.05));
  color:#d92d20;
  border:1px solid rgba(240,68,56,.14);
  box-shadow:none;
  font-weight:900
}
.account-template .sidebar-bottom .danger-btn:hover,
.account-template .sidebar-bottom .danger-btn:focus-visible{
  background:linear-gradient(180deg,rgba(240,68,56,.12),rgba(240,68,56,.08));
  border-color:rgba(240,68,56,.22);
  color:#b42318
}
.account-template .support-card-inline{height:100%;display:grid;align-content:start}
.account-template .support-item{
  display:grid;
  gap:14px;
  padding:18px;
  border-radius:24px;
  border:1px solid rgba(11,31,53,.1);
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  box-shadow:0 14px 30px rgba(15,23,42,.06)
}
.account-template .support-item-primary{
  background:radial-gradient(circle at top right, rgba(0,80,255,.09), transparent 36%),linear-gradient(180deg,#fff 0%,#f8fbff 100%)
}
.account-template .support-head{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:12px;
  align-items:start
}
.account-template .support-icon{
  width:42px;height:42px;border-radius:14px;display:grid;place-items:center;
  background:rgba(0,80,255,.09);color:var(--ac);font-size:18px;flex:0 0 auto
}
.account-template .support-copy strong{
  display:block;
  font-family:"Sora",sans-serif;
  font-size:18px;
  letter-spacing:-.03em;
  color:var(--t);
  margin-bottom:4px
}
.account-template .support-copy p{margin:0;color:#667085;font-size:13px;line-height:1.6}
.account-template .support-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px
}
.account-template .support-actions .small-btn{
  min-height:42px;
  padding:0 14px;
  border-radius:999px
}
.account-template .support-actions .small-btn.primary{
  box-shadow:0 12px 24px rgba(0,80,255,.18)
}
.account-template .support-footer{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  color:#667085;
  font-size:12px;
  line-height:1.5;
  padding-top:2px;
  border-top:1px solid rgba(11,31,53,.08)
}
.account-template .support-footer span{
  display:inline-flex;
  align-items:center;
  gap:6px
}
.account-template .support-routes{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:2px
}
.account-template .support-route{
  display:grid;
  gap:4px;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(11,31,53,.1);
  background:#fff;
  box-shadow:0 10px 20px rgba(15,23,42,.04)
}
.account-template .support-route strong{font-size:13px;color:var(--t)}
.account-template .support-route span{font-size:12px;line-height:1.5;color:#667085}
.account-template .support-route.highlight{
  background:linear-gradient(180deg,rgba(0,80,255,.09),rgba(255,255,255,.95));
  border-color:rgba(0,80,255,.12)
}
.account-template .support-item .pill{
  align-self:start;
  justify-self:end
}
.account-template .profile-hub-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:14px
}
.account-template .profile-hub-card{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:10px;
  align-items:start;
  text-align:left;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(11,31,53,.1);
  background:linear-gradient(180deg,#fff 0%,#f9fbff 100%);
  box-shadow:0 10px 22px rgba(15,23,42,.05);
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease
}
.account-template .profile-hub-card:hover{
  transform:translateY(-2px);
  border-color:#cfe0ff;
  box-shadow:0 14px 26px rgba(15,23,42,.08)
}
.account-template .profile-hub-icon{
  width:34px;height:34px;border-radius:12px;display:grid;place-items:center;
  background:rgba(0,80,255,.08);color:var(--ac);font-size:16px;flex:0 0 auto
}
.account-template .profile-hub-card strong{
  display:block;font-size:13px;line-height:1.25;color:var(--t);margin-bottom:4px
}
.account-template .profile-hub-card p{font-size:11px;line-height:1.45;color:#667085}
.account-template .profile-hub-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:14px
}
.account-template .profile-hub-card{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:10px;
  align-items:start;
  text-align:left;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(11,31,53,.1);
  background:linear-gradient(180deg,#fff 0%,#f9fbff 100%);
  box-shadow:0 10px 22px rgba(15,23,42,.05);
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease
}
.account-template .profile-hub-card:hover{
  transform:translateY(-2px);
  border-color:#cfe0ff;
  box-shadow:0 14px 26px rgba(15,23,42,.08)
}
.account-template .profile-hub-icon{
  width:34px;height:34px;border-radius:12px;display:grid;place-items:center;
  background:rgba(0,80,255,.08);color:var(--ac);font-size:16px;flex:0 0 auto
}
.account-template .profile-hub-card strong{
  display:block;font-size:13px;line-height:1.25;color:var(--t);margin-bottom:4px
}
.account-template .profile-hub-card p{font-size:11px;line-height:1.45;color:#667085}
.account-template .dashboard-main{min-width:0;padding:24px;position:relative;z-index:1}
.account-template .topbar{
  position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;background:rgba(245,248,255,.82);backdrop-filter:blur(14px);padding:0 0 18px;margin-bottom:2px
}
.account-template .topbar-left{display:flex;align-items:center;gap:12px;min-width:0}
.account-template .mobile-menu-btn{
  display:none;width:44px;height:44px;border:1px solid rgba(11,31,53,.1);border-radius:14px;background:#fff;color:var(--t)
}
.account-template .page-title h1{font-family:"Sora",sans-serif;font-size:clamp(24px,3vw,36px);letter-spacing:-.045em;line-height:1.05;color:var(--t)}
.account-template .page-title p{color:#667085;font-size:13px;margin-top:5px}
.account-template .topbar-actions{display:flex;align-items:center;gap:10px}
.account-template .search-box{position:relative;width:min(32vw,340px)}
.account-template .search-box input{
  width:100%;min-height:46px;border:1px solid rgba(11,31,53,.1);border-radius:15px;background:#fff;padding:0 14px 0 42px;outline:0;color:var(--t)
}
.account-template .search-box svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#667085;width:18px;height:18px}
.account-template .icon-btn{
  width:46px;height:46px;display:grid;place-items:center;border:1px solid rgba(11,31,53,.1);border-radius:15px;background:#fff;color:#344054;position:relative
}
.account-template .notifications-shell{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  overflow:visible;
}
.account-template .notifications-backdrop{
  position:fixed;
  inset:0;
  background:rgba(10,16,32,.34);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  z-index:1402;
  display:none;
}
.account-template .notifications-backdrop.on{display:block}
.account-template .notification-badge{
  position:absolute;
  top:8px;
  right:8px;
  min-width:18px;
  height:18px;
  padding:0 5px;
  border-radius:999px;
  background:#f04438;
  color:#fff;
  font-size:10px;
  font-weight:900;
  line-height:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 0 0 3px #fff;
}
.account-template .notification-badge[hidden]{display:none !important}
.account-template .notifications-panel{
  position:absolute;
  top:calc(100% + 12px);
  right:0;
  width:min(420px,calc(100vw - 32px));
  max-height:min(72vh,640px);
  display:none;
  flex-direction:column;
  overflow:hidden;
  z-index:1403;
  background:rgba(255,255,255,.98);
  border:1px solid rgba(11,31,53,.08);
  border-radius:24px;
  box-shadow:0 24px 60px rgba(15,23,42,.16);
  backdrop-filter:blur(18px) saturate(1.12);
  -webkit-backdrop-filter:blur(18px) saturate(1.12);
}
.account-template .notifications-panel.is-open{display:flex;animation:fadeLift .22s ease both}
.account-template .notifications-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:16px 16px 12px;
  border-bottom:1px solid rgba(11,31,53,.08);
}
.account-template .notifications-panel-head strong{
  display:block;
  font-family:"Sora",sans-serif;
  font-size:16px;
  letter-spacing:-.03em;
  color:var(--t);
}
.account-template .notifications-panel-head p{
  margin-top:4px;
  font-size:12px;
  line-height:1.45;
  color:#667085;
}
.account-template .notifications-close{
  width:34px;
  height:34px;
  border-radius:12px;
  border:1px solid rgba(0,80,255,.08);
  background:#f5f8ff;
  color:var(--t2);
  font-size:20px;
  line-height:1;
  font-weight:800;
  cursor:pointer;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  transition:transform .2s ease, background .2s ease, border-color .2s ease, color .2s ease;
}
.account-template .notifications-close:hover{
  transform:translateY(-1px);
  background:#edf3ff;
  border-color:rgba(0,80,255,.14);
  color:var(--t);
}
.account-template .notifications-panel-actions{
  display:flex;
  gap:8px;
  padding:12px 16px;
  border-bottom:1px solid rgba(11,31,53,.06);
  flex-wrap:wrap;
}
.account-template .notifications-action{
  min-height:40px;
  flex:1 1 150px;
  justify-content:center;
}
.account-template .notifications-panel-body{
  display:grid;
  gap:8px;
  padding:12px;
  flex:1 1 auto;
  min-height:0;
  overflow:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
}
.account-template .notifications-panel [hidden]{
  display:none !important;
}
.account-template .notifications-loading,
.account-template .notifications-empty,
.account-template .notifications-error{
  border:1px solid rgba(11,31,53,.08);
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  border-radius:18px;
  padding:16px;
  min-height:92px;
  display:grid;
  place-items:center;
  text-align:center;
  gap:10px;
  color:#667085;
}
.account-template .notifications-loading{
  grid-auto-flow:column;
  min-height:84px;
  gap:12px;
}
.account-template .notifications-empty,
.account-template .notifications-error{
  min-height:180px;
}
.account-template .notifications-error{
  border-color:rgba(240,68,56,.16);
}
.account-template .notifications-empty-ic{
  width:42px;
  height:42px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:rgba(0,80,255,.08);
  color:var(--ac);
  font-size:18px;
}
.account-template .notifications-empty strong,
.account-template .notifications-error strong{
  display:block;
  font-family:"Sora",sans-serif;
  font-size:15px;
  letter-spacing:-.02em;
  color:var(--t);
}
.account-template .notifications-empty span,
.account-template .notifications-error span{
  display:block;
  max-width:280px;
  font-size:12px;
  line-height:1.5;
  color:#667085;
}
.account-template .notifications-list{
  display:grid;
  gap:8px;
}
.account-template .notification-item{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid rgba(11,31,53,.08);
  background:#fff;
  border-radius:18px;
  padding:12px;
  width:100%;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:12px;
  align-items:start;
  text-align:left;
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.account-template .notification-item:hover{
  transform:translateY(-1px);
  border-color:rgba(0,80,255,.18);
  box-shadow:0 12px 24px rgba(15,23,42,.07);
}
.account-template .notification-item.is-unread{
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  border-color:rgba(0,80,255,.18);
  box-shadow:0 10px 20px rgba(0,80,255,.05);
}
.account-template .notification-item:focus-visible{
  outline:2px solid var(--ac);
  outline-offset:2px;
}
.account-template .notification-icon{
  width:38px;
  height:38px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:rgba(0,80,255,.08);
  color:var(--ac);
  flex:0 0 auto;
}
.account-template .notification-icon svg{
  width:18px;
  height:18px;
  stroke:currentColor;
  stroke-width:1.8;
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.account-template .notification-copy{
  min-width:0;
  display:grid;
  gap:4px;
}
.account-template .notification-copy strong{
  font-size:13px;
  line-height:1.35;
  color:var(--t);
  overflow-wrap:anywhere;
}
.account-template .notification-copy span{
  font-size:12px;
  line-height:1.5;
  color:#667085;
  overflow-wrap:anywhere;
}
.account-template .notification-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-width:0;
  padding-top:6px;
  border-top:1px solid rgba(11,31,53,.06);
}
.account-template .notification-time{
  font-size:11px;
  line-height:1.2;
  color:#94a3b8;
  font-weight:800;
  white-space:nowrap;
}
.account-template .notification-meta-right{
  display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  min-width:0;
}
.account-template .notification-status-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--rd);
  box-shadow:0 0 0 4px rgba(240,68,56,.14);
}
.account-template .notification-action-label{
  font-size:10px;
  font-weight:900;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:var(--ac);
  white-space:nowrap;
}
.account-template .notification-item.is-read .notification-action-label{color:#94a3b8}
.account-template .notifications-panel-footer{
  padding:0 16px 14px;
  color:#94a3b8;
  font-size:11px;
  line-height:1.45;
}
.account-template .page-section{display:none;animation:fadeUp .35s ease both}
.account-template .page-section.active{display:block}
.account-template .hero-account{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(282px,.82fr);
  gap:14px;
  margin-bottom:14px;
  align-items:stretch
}
.account-template .welcome-card,.account-template .next-action-card,.account-template .content-card,.account-template .stat-card,.account-template .coupon-card,.account-template .profile-card{
  background:rgba(255,255,255,.92);border:1px solid rgba(11,31,53,.1);border-radius:22px;box-shadow:0 14px 40px rgba(15,23,42,.07)
}
.account-template .welcome-card{padding:clamp(16px,2vw,24px);position:relative;overflow:hidden}
.account-template .welcome-card::before{content:"";position:absolute;width:320px;height:320px;right:-120px;top:-170px;background:radial-gradient(circle, rgba(0,80,255,.16), transparent 65%);pointer-events:none}
.account-template .eyebrow{color:var(--ac);font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}
.account-template .welcome-card h2{font-family:"Sora",sans-serif;font-size:clamp(22px,2.8vw,30px);letter-spacing:-.05em;line-height:1.05;margin-bottom:8px;max-width:600px;color:var(--t)}
.account-template .welcome-card p{color:#667085;line-height:1.55;max-width:600px;margin-bottom:12px;font-size:12px}
.account-template .quick-actions{display:flex;flex-wrap:wrap;gap:8px}
.account-template .next-action-card{
  padding:16px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:16px;
  min-height:100%;
  background:radial-gradient(circle at top right, rgba(0,80,255,.14), transparent 42%),#fff
}
.account-template .next-action-card h3{font-size:16px;letter-spacing:-.02em;margin-bottom:8px;color:var(--t)}
.account-template .next-action-card p{color:#667085;line-height:1.5;font-size:13px}
.account-template .account-benefit-pills{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px
}
.account-template .account-benefit-pills span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(0,80,255,.12);
  background:#f5f8ff;
  color:#3357a4;
  font-size:11px;
  font-weight:900;
  letter-spacing:.02em;
  white-space:nowrap
}
.account-template .stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}
.account-template .stat-card{
  padding:16px 16px 14px;min-height:118px;cursor:pointer;text-align:left;width:100%;
  appearance:none;-webkit-appearance:none;border:1px solid rgba(11,31,53,.1)
}
.account-template .stat-card.stat-action:hover{transform:translateY(-3px);box-shadow:0 18px 34px rgba(15,23,42,.1)}
.account-template .stat-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:0}
.account-template .stat-card small{color:#667085;font-size:11px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;line-height:1.2}
.account-template .stat-card strong{display:block;font-family:"Sora",sans-serif;font-size:clamp(24px,2.8vw,30px);letter-spacing:-.05em;color:var(--t)}
.account-template .stat-card .pill{font-size:10px;padding:0 8px;min-height:24px;box-shadow:inset 0 -1px 0 rgba(255,255,255,.42)}
.account-template .dashboard-grid{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);
  gap:18px;
  align-items:start
}
.account-template .content-card,.account-template .profile-card{padding:18px;min-width:0}
.account-template .card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
.account-template .card-head-inline{align-items:center}
.account-template .card-head-inline .primary-btn{flex-shrink:0}
.account-template .card-head h2,.account-template .card-head h3{font-size:20px;letter-spacing:-.025em;margin-bottom:4px;color:var(--t)}
.account-template .card-head p{color:#667085;font-size:13px;line-height:1.45}
.account-template .orders-panel{
  display:grid;
  gap:12px;
}
.account-template .orders-toolbar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  padding:16px 18px;
  border-radius:24px;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  border:1px solid rgba(11,31,53,.08);
  box-shadow:0 12px 28px rgba(15,23,42,.05);
}
.account-template .orders-summary{
  min-width:0;
  display:grid;
  gap:4px;
}
.account-template .orders-summary strong{
  font-family:"Sora",sans-serif;
  font-size:20px;
  letter-spacing:-.03em;
  color:var(--t);
}
.account-template .orders-summary p{
  font-size:13px;
  line-height:1.55;
  color:#667085;
}
.account-template .orders-toolbar-actions{
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.account-template .orders-sort{
  min-width:180px;
  display:grid;
  gap:6px;
}
.account-template .orders-sort span{
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--t3);
}
.account-template .orders-sort select{
  width:100%;
  min-height:46px;
  border-radius:15px;
  border:1px solid rgba(11,31,53,.1);
  background:#fff;
  color:var(--t);
  font-weight:800;
  padding:0 12px;
  outline:0;
}
.account-template .order-list,.account-template .simple-list{display:grid;gap:12px}
.account-template .order-item,.account-template .favorite-item,.account-template .address-item,.account-template .support-item,.account-template .setting-item{
  border:1px solid rgba(11,31,53,.1);border-radius:18px;background:#fff;padding:14px;display:grid;gap:10px
}
.account-template .order-item-ml{
  padding:0;
  overflow:hidden;
  border-radius:24px;
  border-color:rgba(0,80,255,.09);
  box-shadow:0 14px 32px rgba(15,23,42,.06);
}
.account-template .order-item-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:13px 15px 11px;background:linear-gradient(180deg,#fff 0%,#fbfcff 100%);
  border-bottom:1px solid rgba(11,31,53,.08)
}
.account-template .order-item-date{
  font-size:13px;font-weight:900;color:var(--t)
}
.account-template .order-item-head-meta{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap
}
.account-template .order-help-link{
  appearance:none;
  border:1px solid rgba(0,80,255,.14);
  background:#f5f8ff;
  padding:0 10px;
  min-height:28px;
  border-radius:999px;
  font-size:11px;
  font-weight:900;
  color:var(--ac);
  cursor:pointer
}
.account-template .order-item-body{
  display:grid;
  grid-template-columns:88px minmax(0,1fr) auto;
  grid-template-areas:
    "thumb info side"
    "thumb focus focus";
  gap:12px;
  padding:15px;
  align-items:start
}
.account-template .order-item-thumb{
  appearance:none;
  border:0;
  padding:0;
  cursor:pointer;
  width:88px;height:88px;border-radius:16px;overflow:hidden;border:1px solid rgba(0,80,255,.08);
  background:linear-gradient(135deg,#f3f6ff,#fff);display:grid;place-items:center
}
.account-template .order-item-thumb{grid-area:thumb}
.account-template .order-item-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.account-template .order-item-info{
  grid-area:info;
  min-width:0;
  display:grid;
  gap:9px;
}
.account-template .order-item-topline{display:grid;gap:6px}
.account-template .order-item-code{font-family:monospace;font-size:12px;font-weight:900;color:#475467;letter-spacing:.02em}
.account-template .order-item-subline{font-size:11px;color:#667085;font-weight:800;text-transform:uppercase;letter-spacing:.03em}
.account-template .order-item-title{
  font-size:16px;font-weight:900;line-height:1.25;letter-spacing:-.02em;color:var(--t);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden
}
.account-template .order-item-meta-row{
  display:flex;flex-wrap:wrap;gap:8px;color:#667085;font-size:12px;font-weight:700
}
.account-template .order-item-meta-row span{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 10px;
  border-radius:999px;
  background:#f5f8ff;
  border:1px solid rgba(11,31,53,.08);
  color:#475467;
  line-height:1
}
.account-template .progress-label{
  font-size:11px;
  font-weight:900;
  color:#667085;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.account-template .order-item-side{
  grid-area:side;
  display:grid;
  gap:8px;
  justify-items:end;
  align-content:start;
  min-width:160px
}
.account-template .order-item-focus{
  grid-area:focus;
  display:grid;
  gap:10px;
  min-width:0;
  padding-top:12px;
  border-top:1px solid rgba(11,31,53,.08);
}
.account-template .order-item-total{
  font-family:"Sora",sans-serif;font-size:20px;letter-spacing:-.03em;color:var(--t)
}
.account-template .order-top,.account-template .item-row,.account-template .address-top,.account-template .coupon-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.account-template .order-meta{display:flex;flex-wrap:wrap;gap:8px;color:#667085;font-size:12px;font-weight:700}
.account-template .order-title{font-weight:900;letter-spacing:-.01em;margin-bottom:7px;color:var(--t)}
.account-template .pill{
  width:fit-content;display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:900;white-space:nowrap
}
.account-template .pill.success{background:rgba(18,183,106,.1);color:#027a48}
.account-template .pill.warning{background:rgba(247,144,9,.12);color:#b54708}
.account-template .pill.info{background:rgba(0,80,255,.09);color:var(--ac)}
.account-template .progress-track{width:100%;height:6px;background:#edf2f8;border-radius:999px;overflow:hidden}
.account-template .progress-bar{height:100%;width:var(--progress,50%);background:linear-gradient(90deg,var(--ac),#2f73ff);border-radius:inherit}
.account-template .order-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}
.account-template .small-btn{
  min-height:38px;border-radius:13px;border:1px solid rgba(11,31,53,.1);padding:0 12px;background:#fff;color:#344054;font-weight:900;font-size:12px
}
.account-template .small-btn.primary{background:var(--ac);color:#fff;border-color:var(--ac)}
.account-template .small-btn.danger{color:#f04438;background:rgba(240,68,56,.06)}
.account-template .order-details{
  margin-top:2px;
  padding-top:12px;
  border-top:1px solid rgba(11,31,53,.08);
  display:grid;
  gap:12px;
}
.account-template .order-summary{
  display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none;font-weight:900;color:var(--t);font-size:13px
}
.account-template .order-summary::-webkit-details-marker,
.account-template .order-summary::marker{display:none}
.account-template .order-summary-label{display:inline-flex;align-items:center;gap:8px}
.account-template .order-summary-label-open{display:none}
.account-template .order-details[open] .order-summary-label-closed{display:none}
.account-template .order-details[open] .order-summary-label-open{display:inline-flex}
.account-template .order-summary-icon{transition:transform .2s ease}
.account-template .order-details[open] .order-summary-icon{transform:rotate(180deg)}
.account-template .order-details-body{
  display:grid;
  gap:12px;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(11,31,53,.08);
  background:linear-gradient(180deg,#fff 0%,#f9fbff 100%);
}
.account-template .order-detail-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.account-template .order-detail-tile{
  display:grid;
  gap:4px;
  padding:12px 14px;
  border-radius:14px;
  background:#f9fbff;
  border:1px solid rgba(11,31,53,.08);
}
.account-template .order-detail-tile span{
  font-size:11px;
  font-weight:800;
  color:#667085;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.account-template .order-detail-tile strong{
  font-size:14px;
  line-height:1.35;
  color:var(--t);
  font-weight:900;
}
.account-template .order-line-item{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  gap:8px 10px;
  align-items:center;
  padding:10px 12px;
  border-radius:14px;
  background:#f9fbff;
  border:1px solid rgba(11,31,53,.08)
}
.account-template .order-line-item.is-missing{opacity:.7}
.account-template .order-line-thumb{
  appearance:none;
  border:0;
  padding:0;
  cursor:pointer;
  width:42px;
  height:42px;
  border-radius:12px;
  overflow:hidden;
  border:1px solid rgba(0,80,255,.08);
  background:linear-gradient(135deg,#f3f6ff,#fff);
  display:grid;
  place-items:center;
}
.account-template .order-line-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.account-template .order-line-copy{min-width:0;display:grid;gap:4px}
.account-template .order-line-name{font-size:13px;font-weight:800;color:var(--t)}
.account-template .order-line-meta,.account-template .order-line-qty{font-size:11px;color:#667085;font-weight:700}
.account-template .order-line-price{font-size:13px;font-weight:900;color:var(--t)}
.account-template .order-detail-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  justify-content:flex-start;
}
.account-template .order-detail-actions .danger-btn{
  min-height:40px;
  border-radius:14px;
}
.account-template .favorites-panel{
  display:grid;
  gap:16px;
}
.account-template .favorites-toolbar{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:18px 20px;
  border-radius:24px;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  border:1px solid rgba(11,31,53,.08);
  box-shadow:0 12px 28px rgba(15,23,42,.05);
}
.account-template .favorites-summary{
  min-width:0;
  display:grid;
  gap:6px;
}
.account-template .favorites-summary strong{
  font-family:"Sora",sans-serif;
  font-size:18px;
  line-height:1.2;
  letter-spacing:-.03em;
  color:var(--t);
}
.account-template .favorites-summary p{
  font-size:13px;
  line-height:1.55;
  color:#667085;
  max-width:58ch;
}
.account-template .favorites-toolbar-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px 12px;
  flex-wrap:wrap;
}
.account-template .favorites-sort{
  min-width:196px;
  display:grid;
  gap:6px;
}
.account-template .favorites-sort span{
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--t3);
}
.account-template .favorites-sort select{
  width:100%;
  min-height:46px;
  border-radius:15px;
  border:1px solid rgba(11,31,53,.1);
  background:#fff;
  color:var(--t);
  font-weight:800;
  padding:0 14px;
  outline:0;
}
.account-template .favorites-layout{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(260px,.5fr);
  gap:18px;
  align-items:start;
}
.account-template .favorites-main{
  min-width:0;
  display:grid;
  gap:14px;
}
.account-template .favorites-side{min-width:0}
.account-template .favorites-side-card{
  position:sticky;
  top:20px;
  display:grid;
  gap:16px;
  padding:20px;
  border-radius:24px;
  background:radial-gradient(circle at top right, rgba(0,80,255,.1), transparent 32%),linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  border:1px solid rgba(11,31,53,.08);
  box-shadow:0 14px 30px rgba(15,23,42,.05);
}
.account-template .favorites-side-card h4{
  font-family:"Sora",sans-serif;
  font-size:18px;
  line-height:1.12;
  letter-spacing:-.03em;
  color:var(--t);
}
.account-template .favorites-side-card p{
  font-size:13px;
  line-height:1.6;
  color:#667085;
}
.account-template .favorites-side-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.account-template .favorites-side-stat{
  display:grid;
  gap:4px;
  padding:13px 14px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(11,31,53,.08);
}
.account-template .favorites-side-stat strong{
  font-family:"Sora",sans-serif;
  font-size:20px;
  line-height:1;
  color:var(--t);
}
.account-template .favorites-side-stat span{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--t3);
  font-weight:800;
}
.account-template .favorites-side-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.account-template .favorites-side-actions .secondary-btn,
.account-template .favorites-side-actions .ghost-btn{
  width:100%;
  min-height:46px;
  padding-inline:14px;
}
.account-template .favorites-grid,.account-template .coupon-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,240px));
  justify-content:start;
  gap:12px
}
.account-template .recommendation-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,240px));
  justify-content:start;
  gap:12px
}
.account-template .coupon-grid{
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  justify-content:stretch;
}
.account-template .coupon-grid > .account-empty-state{
  grid-column:1 / -1;
  width:100%;
  min-height:150px;
  align-content:center;
  text-align:center;
}
.account-template .favorites-grid > .account-empty-state{
  grid-column:1 / -1;
  width:100%;
  min-height:150px;
  align-content:center;
  text-align:center;
}
.account-template .product-card{
  border:1px solid rgba(11,31,53,.1);background:#fff;border-radius:18px;padding:12px;display:grid;gap:10px;transition:.2s ease
}
.account-template .product-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(15,23,42,.08)}
.account-template .product-card-reco{
  padding:14px;
  gap:12px;
  min-height:100%;
  border-radius:20px;
  border-color:rgba(0,80,255,.08);
  background:linear-gradient(180deg,#fff 0%,#f9fbff 100%);
  box-shadow:0 12px 28px rgba(15,23,42,.05);
}
.account-template .product-thumb{
  min-height:118px;border-radius:15px;background:radial-gradient(circle at 30% 25%, rgba(0,80,255,.16), transparent 34%),linear-gradient(135deg,#f3f6ff,#fff);border:1px solid rgba(0,80,255,.08);display:grid;place-items:center;color:var(--ac);font-weight:900;text-align:center;padding:10px;overflow:hidden
}
.account-template .product-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.account-template .product-card h4{font-size:14px;letter-spacing:-.015em;line-height:1.25;color:var(--t)}
.account-template .product-card p{color:#667085;font-size:12px;line-height:1.45}
.account-template .product-card-reco .product-thumb{
  min-height:132px;
  border-radius:16px
}
.account-template #accountFavoritesList.favorites-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:18px;
  align-items:stretch;
  justify-content:stretch;
}
.account-template .favorite-card{
  padding:0;
  gap:0;
  overflow:hidden;
  border-radius:24px;
  border-color:var(--bd);
  box-shadow:0 4px 14px rgba(16,24,40,.04);
  min-height:100%;
}
.account-template .favorite-card .product-thumb{
  position:relative;
  min-height:186px;
  border-bottom:1px solid rgba(11,31,53,.06);
}
.account-template .favorite-card .favorite-card-copy{
  display:grid;
  gap:12px;
  padding:16px 16px 18px;
}
.account-template .favorite-card-kicker{
  font-size:11px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#667085;
  line-height:1.35;
}
.account-template .favorite-card h4{
  font-size:15px;
  line-height:1.25;
  letter-spacing:-.02em;
  color:var(--t);
  min-height:42px;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.account-template .favorite-card p{
  font-size:12px;
  line-height:1.45;
  color:#667085;
  min-height:34px;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.account-template .favorite-card-badges{
  display:flex;
  flex-wrap:wrap;
  gap:7px 8px;
  min-height:30px;
}
.account-template .favorite-card-badges .pill{
  min-height:26px;
  padding:0 10px;
  font-size:10px;
}
.account-template .favorite-price-row{
  padding-top:12px;
  margin-top:2px;
  border-top:1px solid rgba(11,31,53,.07);
  align-items:flex-end;
  gap:10px;
}
.account-template .favorite-price-meta{
  display:grid;
  justify-items:end;
  gap:3px;
  text-align:right;
}
.account-template .favorite-price-before{
  font-size:11px;
  color:#98a2b3;
  text-decoration:line-through;
  font-weight:800;
}
.account-template .favorite-price-row strong{
  font-family:"Sora",sans-serif;
  font-size:24px;
  line-height:1;
  letter-spacing:-.04em;
}
.account-template .favorite-price-row small{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 9px;
  border-radius:999px;
  background:#eef6ff;
  color:var(--ac);
  font-weight:900;
  font-size:10px
}
.account-template .favorite-card .small-btn{
  min-height:44px;
  padding-inline:12px;
  flex:1 1 0;
}
.account-template .favorite-card-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.account-template .favorite-card-actions .favorite-card-main-action{
  grid-column:1 / -1;
}
.account-template .favorite-card-actions .small-btn.danger{
  color:#f04438;
  background:rgba(240,68,56,.06);
  border-color:rgba(240,68,56,.12);
}
.account-template .favorites-empty-state{
  min-height:220px;
  align-content:center;
}
.account-template .favorites-empty-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px;
  margin-top:6px;
}
.account-template .favorites-empty-actions .secondary-btn,
.account-template .favorites-empty-actions .ghost-btn{
  min-width:180px;
}
.account-template .product-card-reco .product-tag{
  left:12px;
  top:12px
}
.account-template .product-card-reco h4{
  min-height:36px;
  font-size:15px
}
.account-template .product-card-reco p{
  min-height:18px;
  color:#667085
}
.account-template .price-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:900;color:var(--t)}
.account-template .price-row small{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:0 8px;
  border-radius:999px;
  background:#eef6ff;
  color:var(--ac);
  font-weight:900;
  font-size:10px
}
.account-template .product-tag.recent{background:rgba(18,183,106,.92)}
.account-template .product-card-favorite{
  grid-template-columns:90px minmax(0,1fr);
  align-items:start;
}
.account-template .product-card-favorite .product-thumb{
  min-height:90px;
}
.account-template .product-card-favorite .order-actions{
  grid-column:1 / -1;
}
.account-template #account-section-support .dashboard-grid{
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  gap:14px;
}
.account-template #account-section-support .content-card{
  padding:18px;
}
.account-template #account-section-support .support-card-inline{
  min-height:100%;
  padding:20px;
  border-radius:24px;
  background:radial-gradient(circle at top right, rgba(0,80,255,.12), transparent 36%),linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  border:1px solid rgba(11,31,53,.1);
  gap:14px;
}
.account-template #account-section-support .support-card-inline strong{
  font-family:"Sora",sans-serif;
  font-size:18px;
  letter-spacing:-.03em;
}
.account-template #account-section-support .support-card-inline p{
  font-size:13px;
  line-height:1.65;
  color:#667085;
}
.account-template #account-section-support .account-page-card-wide{
  max-width:1120px;
  margin:0 auto;
  padding:clamp(16px,2.4vw,24px);
  border-radius:28px;
  background:rgba(255,255,255,.94);
}
.account-template #account-section-support .card-head{
  max-width:860px;
  margin:0 auto 18px;
  text-align:center;
  justify-content:center;
}
.account-template #account-section-support .card-head h2{
  font-family:"Sora",sans-serif;
  font-size:clamp(24px,2.8vw,34px);
  letter-spacing:-.045em;
}
.account-template #account-section-support .card-head p{
  max-width:560px;
  margin:6px auto 0;
}
.account-template .support-center{
  display:grid;
  gap:18px;
  max-width:1040px;
  margin:0 auto;
}
.account-template .support-hero-panel{
  position:relative;
  overflow:hidden;
  display:grid;
  gap:18px;
  padding:clamp(18px,2.6vw,28px);
  border:1px solid rgba(0,80,255,.12);
  border-radius:28px;
  background:
    radial-gradient(circle at 12% 0%, rgba(0,80,255,.13), transparent 34%),
    radial-gradient(circle at 92% 10%, rgba(94,144,255,.16), transparent 32%),
    linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  box-shadow:0 24px 56px rgba(15,23,42,.08);
}
.account-template .support-hero-panel::after{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  right:-88px;
  bottom:-116px;
  border-radius:50%;
  background:rgba(0,80,255,.08);
  pointer-events:none;
}
.account-template .support-hero-top{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:start;
  gap:16px;
}
.account-template .support-hero-icon,
.account-template .support-channel-icon,
.account-template .support-topic-icon{
  display:grid;
  place-items:center;
  color:var(--ac);
  background:rgba(0,80,255,.09);
  border:1px solid rgba(0,80,255,.1);
}
.account-template .support-hero-icon{
  width:56px;
  height:56px;
  border-radius:19px;
  box-shadow:0 14px 28px rgba(0,80,255,.12);
}
.account-template .support-hero-icon svg,
.account-template .support-channel-icon svg,
.account-template .support-topic-icon svg,
.account-template .support-info-strip svg{
  width:22px;
  height:22px;
}
.account-template .support-kicker{
  margin-bottom:6px;
  color:var(--ac);
  font-size:11px;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.account-template .support-hero-panel h3{
  font-family:"Sora",sans-serif;
  font-size:clamp(24px,3vw,34px);
  line-height:1.05;
  letter-spacing:-.05em;
  color:var(--t);
  margin:0 0 8px;
}
.account-template .support-hero-panel p{
  max-width:650px;
  color:#667085;
  font-size:14px;
  line-height:1.65;
}
.account-template .support-real-badge{
  justify-self:end;
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(0,80,255,.09);
  color:var(--ac);
  font-size:12px;
  font-weight:950;
  white-space:nowrap;
}
.account-template .support-personal-box{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:16px;
  border-radius:22px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(11,31,53,.08);
  backdrop-filter:blur(14px);
}
.account-template .support-personal-box strong{
  display:block;
  margin-bottom:4px;
  font-size:16px;
  color:var(--t);
}
.account-template .support-personal-box p{
  margin:0;
  font-size:13px;
}
.account-template .support-context-chip{
  min-height:38px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(0,80,255,.18);
  background:#fff;
  color:var(--ac);
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}
.account-template .support-block{
  display:grid;
  gap:14px;
  padding:clamp(16px,2vw,20px);
  border-radius:26px;
  border:1px solid rgba(11,31,53,.1);
  background:#fff;
  box-shadow:0 16px 36px rgba(15,23,42,.055);
}
.account-template .support-block-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
}
.account-template .support-block-head h4{
  font-family:"Sora",sans-serif;
  font-size:19px;
  letter-spacing:-.035em;
  color:var(--t);
}
.account-template .support-block-head p{
  max-width:520px;
  color:#667085;
  font-size:13px;
  line-height:1.55;
  text-align:right;
}
.account-template .support-channel-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.account-template .support-channel-card{
  min-height:188px;
  display:grid;
  align-content:space-between;
  gap:14px;
  padding:16px;
  border:1px solid rgba(11,31,53,.1);
  border-radius:22px;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  box-shadow:0 12px 26px rgba(15,23,42,.055);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.account-template .support-channel-card:hover{
  transform:translateY(-3px);
  border-color:rgba(0,80,255,.22);
  box-shadow:0 20px 42px rgba(15,23,42,.09);
}
.account-template .support-channel-card.is-primary{
  background:
    radial-gradient(circle at top right, rgba(0,80,255,.16), transparent 42%),
    linear-gradient(180deg,#fff 0%,#f7faff 100%);
}
.account-template .support-channel-icon{
  width:46px;
  height:46px;
  border-radius:16px;
}
.account-template .support-channel-copy{
  display:grid;
  gap:5px;
}
.account-template .support-channel-copy strong{
  font-size:16px;
  color:var(--t);
}
.account-template .support-channel-copy span{
  color:#667085;
  font-size:13px;
  line-height:1.5;
}
.account-template .support-channel-action{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(0,80,255,.18);
  border-radius:999px;
  background:#fff;
  color:var(--ac);
  font-size:13px;
  font-weight:950;
  text-decoration:none;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.account-template .support-channel-action:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 22px rgba(0,80,255,.13);
}
.account-template .support-channel-action.primary{
  background:var(--ac);
  color:#fff;
  border-color:var(--ac);
}
.account-template .support-channel-card.is-disabled{opacity:.62}
.account-template .support-topic-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.account-template .support-topic-card{
  min-height:178px;
  display:grid;
  align-content:start;
  gap:10px;
  text-align:left;
  padding:16px;
  border-radius:22px;
  border:1px solid rgba(11,31,53,.1);
  background:#fff;
  cursor:pointer;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.account-template .support-topic-card:hover{
  transform:translateY(-3px);
  border-color:rgba(0,80,255,.22);
  box-shadow:0 18px 36px rgba(15,23,42,.08);
}
.account-template .support-topic-icon{
  width:42px;
  height:42px;
  border-radius:15px;
}
.account-template .support-topic-card strong{
  color:var(--t);
  font-size:15px;
}
.account-template .support-topic-card small{
  color:#667085;
  font-size:12.5px;
  line-height:1.5;
}
.account-template .support-topic-card em{
  align-self:end;
  margin-top:auto;
  color:var(--ac);
  font-size:12px;
  font-style:normal;
  font-weight:950;
}
.account-template .support-faq-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.account-template .support-faq-group{
  display:grid;
  align-content:start;
  gap:8px;
  padding:12px;
  border-radius:22px;
  background:#f8fbff;
  border:1px solid rgba(11,31,53,.08);
  scroll-margin-top:90px;
}
.account-template .support-faq-group h5{
  display:flex;
  align-items:center;
  gap:8px;
  padding:4px 4px 8px;
  color:var(--t);
  font-size:14px;
}
.account-template .support-faq-group h5 svg{
  width:18px;
  height:18px;
  color:var(--ac);
}
.account-template .support-faq-item{
  border:1px solid rgba(11,31,53,.08);
  border-radius:16px;
  background:#fff;
  overflow:hidden;
}
.account-template .support-faq-item summary{
  min-height:46px;
  display:flex;
  align-items:center;
  padding:12px 14px;
  color:var(--t);
  font-size:13px;
  font-weight:900;
  cursor:pointer;
  list-style:none;
}
.account-template .support-faq-item summary::-webkit-details-marker{display:none}
.account-template .support-faq-item summary::after{
  content:"+";
  margin-left:auto;
  color:var(--ac);
  font-size:18px;
  line-height:1;
}
.account-template .support-faq-item[open] summary::after{content:"–"}
.account-template .support-faq-item p{
  padding:0 14px 14px;
  color:#667085;
  font-size:13px;
  line-height:1.6;
}
.account-template .support-info-strip{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px 16px;
  padding:14px 16px;
  border-radius:22px;
  border:1px solid rgba(11,31,53,.08);
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  color:#667085;
  font-size:12.5px;
  font-weight:800;
}
.account-template .support-info-strip span{
  display:inline-flex;
  align-items:center;
  gap:7px;
}
.account-template .support-info-strip svg{
  width:17px;
  height:17px;
  color:var(--ac);
}
.account-template .product-card-reco .product-thumb{position:relative}
.account-template .product-tag{
  position:absolute;left:10px;top:10px;display:inline-flex;align-items:center;gap:5px;
  padding:6px 8px;border-radius:999px;color:#fff;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;
  background:rgba(0,80,255,.9);box-shadow:0 8px 16px rgba(0,80,255,.22)
}
.account-template .product-tag.favorite{background:rgba(240,68,56,.92)}
.account-template .product-tag.suggested{background:rgba(0,80,255,.9)}
.account-template .account-coupon-count{
  min-height:32px;
  padding:0 12px;
  font-size:11px;
}
.account-template .coupon-panel{
  display:grid;
  gap:14px;
}
.account-template .coupon-toolbar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  padding:16px 18px;
  border-radius:24px;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  border:1px solid rgba(11,31,53,.08);
  box-shadow:0 12px 28px rgba(15,23,42,.05);
}
.account-template .coupon-summary{
  min-width:0;
  display:grid;
  gap:4px;
}
.account-template .coupon-summary strong{
  font-family:"Sora",sans-serif;
  font-size:20px;
  line-height:1.15;
  letter-spacing:-.03em;
  color:var(--t);
}
.account-template .coupon-summary p{
  font-size:13px;
  line-height:1.55;
  color:#667085;
}
.account-template .coupon-toolbar-chip{
  flex:0 0 auto;
}
.account-template .coupon-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
  gap:14px;
  align-items:start;
}
.account-template .coupon-main{
  min-width:0;
  display:grid;
  gap:12px;
}
.account-template .coupon-side{
  min-width:0;
}
.account-template .coupon-side-card{
  position:sticky;
  top:18px;
  display:grid;
  gap:12px;
  padding:18px;
  border-radius:24px;
  background:radial-gradient(circle at top right, rgba(0,80,255,.11), transparent 34%),linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  border:1px solid rgba(11,31,53,.08);
  box-shadow:0 14px 30px rgba(15,23,42,.05);
}
.account-template .coupon-side-kicker{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
  color:var(--t3);
}
.account-template .coupon-side-card h4{
  font-family:"Sora",sans-serif;
  font-size:19px;
  line-height:1.12;
  letter-spacing:-.03em;
  color:var(--t);
}
.account-template .coupon-side-card p{
  font-size:13px;
  line-height:1.6;
  color:#667085;
}
.account-template .coupon-side-steps{
  display:grid;
  gap:8px;
}
.account-template .coupon-side-steps span{
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border-radius:14px;
  background:#fff;
  border:1px solid rgba(11,31,53,.08);
  font-size:12px;
  font-weight:800;
  color:var(--t);
}
.account-template .coupon-side-steps span::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:999px;
  background:var(--ac);
  box-shadow:0 0 0 4px rgba(0,80,255,.08);
  flex:0 0 auto;
}
.account-template .coupon-card{padding:16px;position:relative;overflow:hidden}
.account-template .coupon-card::after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-54px;top:-48px;background:rgba(0,80,255,.09)}
.account-template .coupon-card h3{font-family:"Sora",sans-serif;font-size:18px;letter-spacing:-.035em;color:var(--ac);margin-bottom:4px}
.account-template .coupon-card p{color:#667085;font-size:12px;line-height:1.45;margin-bottom:10px;max-width:30ch}
.account-template .coupon-code{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border-radius:16px;
  background:#f3f6ff;
  border:1px dashed rgba(0,80,255,.35);
  font-weight:900;
  color:var(--ac);
  font-size:13px;
}
.account-template .coupon-code-label{
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--t3);
}
.account-template .coupon-code-value{
  min-width:0;
  font-family:"Sora",sans-serif;
  font-size:14px;
  letter-spacing:.12em;
  color:var(--t);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.account-template .coupon-code .small-btn{
  min-width:128px;
  justify-content:center;
}
.account-template .coupon-chip-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.account-template .coupon-chip{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(11,31,53,.08);
  color:var(--t3);
  font-size:11px;
  font-weight:800;
}
.account-template .coupon-item-ml{
  padding:0;
  overflow:hidden;
  border-radius:24px;
  box-shadow:0 14px 32px rgba(15,23,42,.06);
  border:1px solid rgba(11,31,53,.08);
  background:linear-gradient(180deg,#fff 0%,#fbfcff 100%);
  position:relative;
}
.account-template .coupon-item-ml::before{
  content:"";
  position:absolute;
  right:-56px;
  top:-56px;
  width:150px;
  height:150px;
  border-radius:50%;
  background:rgba(0,80,255,.09);
}
.account-template .coupon-item-ml.is-used,
.account-template .coupon-item-ml.is-expired,
.account-template .coupon-item-ml.is-disabled{
  filter:saturate(.9);
  opacity:.95;
}
.account-template .coupon-item-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:14px 16px 12px;
  background:linear-gradient(180deg,#fff 0%,#fbfcff 100%);
  border-bottom:1px solid rgba(11,31,53,.08);
}
.account-template .coupon-item-date{
  font-size:13px;
  font-weight:900;
  color:var(--t);
}
.account-template .coupon-item-body{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(210px,.62fr);
  gap:16px;
  padding:16px;
  align-items:start;
}
.account-template .coupon-item-info{
  display:grid;
  gap:10px;
  min-width:0;
}
.account-template .coupon-item-value{
  font-family:"Sora",sans-serif;
  font-size:28px;
  line-height:1;
  letter-spacing:-.045em;
  color:var(--ac);
}
.account-template .coupon-item-title{
  font-size:16px;
  font-weight:900;
  line-height:1.25;
  letter-spacing:-.02em;
  color:var(--t);
}
.account-template .coupon-item-desc{
  color:#667085;
  font-size:13px;
  line-height:1.55;
  max-width:60ch;
}
.account-template .coupon-item-side{
  display:grid;
  gap:10px;
  min-width:0;
  padding:14px;
  border-radius:20px;
  border:1px solid rgba(11,31,53,.08);
  background:#fff;
  align-content:start;
}
.account-template .coupon-item-side-value{
  display:grid;
  gap:4px;
  padding:12px 14px;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(0,80,255,.09), rgba(0,80,255,.04));
  border:1px solid rgba(0,80,255,.14);
}
.account-template .coupon-item-side-value span{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
  color:var(--t3);
}
.account-template .coupon-item-side-value strong{
  font-family:"Sora",sans-serif;
  font-size:20px;
  line-height:1.1;
  letter-spacing:-.03em;
  color:var(--t);
}
.account-template .coupon-item-hint{
  color:#667085;
  font-size:11px;
  line-height:1.45;
  text-align:right;
  max-width:none;
}
.account-template .coupon-item-hint-muted{
  color:#98a2b3;
}
.account-template .coupon-archive{
  border:1px solid rgba(11,31,53,.08);
  border-radius:22px;
  background:#fff;
  overflow:hidden;
}
.account-template .coupon-archive summary{
  min-height:50px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 16px;
  cursor:pointer;
  list-style:none;
  font-weight:900;
  color:var(--t);
}
.account-template .coupon-archive summary::-webkit-details-marker,
.account-template .coupon-archive summary::marker{display:none}
.account-template .coupon-archive-list{
  display:grid;
  gap:10px;
  padding:0 16px 16px;
}
.account-template .coupon-archive-item{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-radius:16px;
  border:1px solid rgba(11,31,53,.08);
  background:#f8fbff;
}
.account-template .coupon-archive-copy{
  min-width:0;
  display:grid;
  gap:4px;
}
.account-template .coupon-archive-copy strong{
  font-family:"Sora",sans-serif;
  font-size:16px;
  letter-spacing:-.03em;
  color:var(--t);
}
.account-template .coupon-archive-copy span{
  font-size:12px;
  font-weight:800;
  color:var(--t3);
}
.account-template .coupon-archive-copy p{
  font-size:12px;
  line-height:1.5;
  color:#667085;
}
.account-template .coupon-empty-state{
  min-height:170px;
  align-content:center;
  text-align:center;
}
.account-template .profile-layout{
  display:grid;
  grid-template-columns:minmax(320px,.88fr) minmax(0,1.12fr);
  gap:18px;
  align-items:start
}
.account-template .profile-card{
  display:grid;
  gap:16px;
  align-content:start
}
.account-template .profile-identity-card{padding-top:20px}
.account-template .profile-details-card{padding-top:20px}
.account-template .profile-hero{
  text-align:center;
  display:grid;
  place-items:center;
  gap:12px
}
.account-template .profile-hero-copy{
  display:grid;
  gap:6px;
  justify-items:center
}
.account-template .profile-hero-copy .pill{
  box-shadow:none
}
.account-template .big-avatar{
  width:88px;
  height:88px;
  border-radius:28px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--ac),#2f73ff);
  color:#fff;
  font-family:"Sora",sans-serif;
  font-size:32px;
  font-weight:900;
  letter-spacing:-.05em;
  box-shadow:0 18px 35px rgba(0,80,255,.26);
  text-transform:uppercase
}
.account-template .profile-hero h2{
  font-size:20px;
  letter-spacing:-.025em;
  color:var(--t)
}
.account-template .profile-hero p{
  color:#667085;
  font-size:13px;
  line-height:1.55;
  max-width:34ch
}
.account-template .profile-stats{
  width:100%;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:6px
}
.account-template .profile-stat{
  padding:12px 10px;
  border-radius:16px;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  border:1px solid rgba(11,31,53,.1);
  box-shadow:0 10px 22px rgba(15,23,42,.04);
  text-align:center;
  display:grid;
  gap:2px
}
.account-template .profile-stat strong{
  display:block;
  font-family:"Sora",sans-serif;
  font-size:18px;
  color:var(--t);
  letter-spacing:-.03em
}
.account-template .profile-stat small{
  color:#667085;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase
}
.account-template .profile-hub-head{
  display:grid;
  gap:4px;
  text-align:center;
  margin-top:2px
}
.account-template .profile-hub-head strong{
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#98a2b3
}
.account-template .profile-hub-head p{
  color:#667085;
  font-size:12px;
  line-height:1.55
}
.account-template .profile-hub-grid{
  margin-top:2px
}
.account-template .profile-hub-card{
  align-items:center;
  min-height:78px;
  padding:15px;
  gap:12px
}
.account-template .profile-hub-icon{
  width:38px;
  height:38px;
  border-radius:13px;
  font-size:17px
}
.account-template .profile-hub-card strong{
  font-size:14px;
  line-height:1.25
}
.account-template .profile-hub-card p{
  font-size:12px;
  line-height:1.45
}
.account-template .profile-security-divider{
  height:1px;
  width:100%;
  background:linear-gradient(90deg,transparent,rgba(11,31,53,.08),transparent)
}
.account-template .profile-security-head{
  margin-bottom:0
}
.account-template .profile-security-head h3{
  font-size:18px;
  letter-spacing:-.025em;
  color:var(--t);
  margin-bottom:4px
}
.account-template .profile-security-head p{
  color:#667085;
  font-size:13px;
  line-height:1.55
}
.account-template .profile-security-head small{
  display:block;
  margin-top:6px;
  color:#98a2b3;
  font-size:11px;
  line-height:1.45
}
.account-template .password-input{
  position:relative;
}
.account-template .password-input input{
  padding-right:66px
}
.account-template .password-toggle{
  position:absolute;
  right:8px;
  top:50%;
  transform:translateY(-50%);
  height:34px;
  padding:0 12px;
  border:1px solid rgba(0,80,255,.12);
  border-radius:11px;
  background:#f5f8ff;
  color:#3357a4;
  font-size:12px;
  font-weight:900;
  cursor:pointer
}
.account-template .security-note{
  color:#667085;
  font-size:12px;
  line-height:1.55;
  padding-top:2px
}
.account-template .profile-security-actions{
  margin-top:8px
}
.account-template .profile-footer-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:2px
}
.account-template .form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px;flex-wrap:wrap}
.account-template .field-grid{display:grid;gap:12px}
.account-template .field-grid.two-cols{grid-template-columns:repeat(2,1fr)}
.account-template .address-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.account-template .address-grid .address-wide{grid-column:1 / -1}
.account-template .address-grid .address-inline{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.account-template .field{display:grid;gap:8px}
.account-template .field label{font-size:13px;font-weight:800;color:#26324a}
.account-template .field input,.account-template .field textarea,.account-template .field select{
  width:100%;min-height:46px;border:1px solid rgba(11,31,53,.1);border-radius:15px;background:#fff;padding:0 14px;color:var(--t);outline:0;font-size:14px;transition:.2s ease
}
.account-template .field textarea{min-height:86px;padding:14px;resize:vertical}
.account-template .field input:focus,.account-template .field textarea:focus,.account-template .field select:focus{border-color:rgba(0,80,255,.55);box-shadow:0 0 0 5px rgba(0,80,255,.1)}
.account-template .field input.invalid,.account-template .field textarea.invalid,.account-template .field select.invalid{
  border-color:var(--rd);
  box-shadow:0 0 0 4px rgba(240,68,56,.12)
}
.account-template .order-details{
  margin-top:2px;padding-top:12px;border-top:1px solid rgba(11,31,53,.08)
}
.account-template .order-summary{
  display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none;font-weight:900;color:var(--t);font-size:13px
}
.account-template .order-summary::-webkit-details-marker,
.account-template .order-summary::marker{display:none}
.account-template .order-details-body{
  display:grid;gap:10px;padding-top:12px
}
.account-template .order-items-list{display:grid;gap:8px}
.account-template .order-line-item{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;align-items:center;padding:10px 12px;border-radius:14px;background:#f9fbff;border:1px solid rgba(11,31,53,.08)
}
.account-template .order-line-name{font-size:13px;font-weight:800;color:var(--t)}
.account-template .order-line-meta,.account-template .order-line-qty{font-size:11px;color:#667085;font-weight:700}
.account-template .order-detail-meta{font-size:11px}
.account-template .empty-state,.account-template .account-empty-state{
  text-align:center;padding:42px 18px;color:#667085;border:1px dashed rgba(11,31,53,.1);border-radius:20px;background:#fff
}
.account-template .empty-state strong,.account-template .account-empty-state strong{display:block;color:var(--t);margin-bottom:6px;font-size:16px;font-family:"Sora",sans-serif}
.account-template .overlay{position:fixed;inset:0;background:rgba(10,16,32,.38);z-index:24;display:none}
.account-template .overlay.active{display:block}

/* Admin panel */
.admin-template{
  min-height:100%;
  color:var(--t);
  background:
    radial-gradient(circle at top left, rgba(0,80,255,.08), transparent 20%),
    linear-gradient(180deg,#f7f9ff 0%, #eef3fb 100%);
}
.admin-template .admin-gate{
  min-height:calc(100dvh - 220px);
  display:grid;
  place-items:center;
  padding:20px 14px 28px;
}
.admin-template .admin-gate-brand{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:14px;
}
.admin-template .admin-gate-brand span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(0,80,255,.08);
  color:var(--ac);
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.admin-template .admin-gate-logo{
  width:148px;
  height:auto;
  display:block;
}
.admin-template .admin-gate-card{
  width:min(100%,520px);
  padding:28px;
  border-radius:28px;
  border:1px solid rgba(0,80,255,.2);
  background:linear-gradient(180deg,#fff 0%, #f8fbff 100%);
  box-shadow:0 24px 60px rgba(15,23,42,.12);
}
.admin-template .admin-gate-card h2{
  font-family:"Sora",sans-serif;
  font-size:clamp(24px,3vw,34px);
  line-height:1.05;
  letter-spacing:-.045em;
  margin:8px 0 8px;
}
.admin-template .admin-gate-card p{
  color:#667085;
  line-height:1.55;
  margin-bottom:18px;
}
.admin-template .admin-access-form{display:grid;gap:12px}
.admin-template .admin-status{
  margin-top:12px;
  min-height:22px;
  font-size:13px;
  font-weight:700;
  color:#667085;
}
.admin-template .admin-status.ok{color:#027a48}
.admin-template .admin-status.err{color:#d92d20}
.admin-template .admin-shell{padding:0 0 18px}
.admin-template .admin-layout{
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:18px;
  align-items:start;
  padding:0 0 10px;
}
.admin-template .admin-sidebar{
  position:sticky;
  top:82px;
  min-height:calc(100dvh - 102px);
  height:calc(100dvh - 102px);
  max-height:calc(100dvh - 102px);
  padding:18px;
  display:flex;
  flex-direction:column;
  gap:18px;
  overflow-y:auto;
  overflow-x:hidden;
  scrollbar-gutter:stable;
  background:
    radial-gradient(circle at top right, rgba(0,80,255,.08), transparent 36%),
    linear-gradient(180deg,rgba(255,255,255,.92) 0%, rgba(247,249,255,.96) 100%);
  border:1px solid rgba(11,31,53,.08);
  border-radius:30px;
  box-shadow:0 20px 50px rgba(15,23,42,.09);
  backdrop-filter:blur(16px);
}
body.admin-active .admin-template .admin-sidebar{
  top:16px;
  min-height:calc(100dvh - 32px);
  height:calc(100dvh - 32px);
  max-height:calc(100dvh - 32px);
}
.admin-template .admin-sidebar::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:10px;
  height:36px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(180deg, rgba(0,80,255,.08), rgba(255,255,255,0));
  pointer-events:none;
  opacity:.65;
}
.admin-template .admin-sidebar .account-brand{
  padding:10px 0 12px;
  border-radius:0;
  background:transparent;
  border:0;
  box-shadow:none;
  justify-items:center;
  text-align:center;
}
.admin-template .admin-sidebar .account-avatar{
  background:linear-gradient(135deg,var(--ac),#69a2ff);
  color:#fff;
  box-shadow:0 12px 24px rgba(0,80,255,.2);
}
.admin-template .admin-sidebar .admin-brand-mark{
  background:transparent;
  box-shadow:none;
  padding:0;
}
.admin-template .admin-sidebar .admin-brand-mark img{
  width:auto;
  max-width:190px;
  height:auto;
  object-fit:contain;
  display:block;
  filter:none;
}
.admin-template .admin-sidebar .account-brand small{
  max-width:none;
  white-space:normal;
  line-height:1.45;
}
.admin-template .nav-section-label{
  color:#98a2b3;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  padding:6px 10px 2px;
}
.admin-template .side-nav{
  display:grid;
  gap:6px;
  padding:4px 0 2px;
}
.admin-template .nav-item{
  min-height:48px;
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  border:1px solid transparent;
  background:transparent;
  color:#344054;
  border-radius:16px;
  padding:0 14px;
  font-weight:800;
  text-align:left;
  transition:transform .2s ease, background .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.admin-template .nav-item svg{
  width:20px;height:20px;stroke-width:2.2;flex:0 0 auto
}
.admin-template .nav-item:hover{
  background:rgba(0,80,255,.06);
  color:var(--ac);
  transform:translateX(2px);
}
.admin-template .nav-item.active{
  background:linear-gradient(135deg,var(--ac),#2f73ff);
  color:#fff;
  box-shadow:0 14px 30px rgba(0,80,255,.22);
}
.admin-template .admin-sidebar .sidebar-bottom{
  margin-top:auto;
  display:grid;
  gap:10px;
  padding-top:12px;
  border-top:1px solid rgba(11,31,53,.08);
  position:relative;
  z-index:1;
}
.admin-template .admin-sidebar .sidebar-bottom::before{
  content:"";
  position:absolute;
  left:0;right:0;top:-1px;height:1px;
  background:linear-gradient(90deg, rgba(0,80,255,.12), transparent);
}
.admin-template .admin-sidebar .support-card{
  padding:14px;
  border-radius:20px;
  border:1px solid rgba(0,80,255,.12);
  background:linear-gradient(180deg,#fff 0%, #f3f7ff 100%);
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}
.admin-template .admin-access-card{
  display:grid;
  gap:10px;
  position:relative;
  overflow:hidden;
}
.admin-template .admin-access-card::after{
  content:"";
  position:absolute;
  inset:auto -18px -22px auto;
  width:92px;
  height:92px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(0,80,255,.09) 0%, transparent 72%);
  pointer-events:none;
}
.admin-template .admin-access-kicker{
  display:inline-flex;
  align-items:center;
  width:fit-content;
  min-height:26px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(0,80,255,.08);
  color:var(--ac);
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.admin-template .admin-access-card strong{
  font-size:12px;
  line-height:1.45;
  color:var(--t);
  font-weight:850;
}
.admin-template .admin-refresh-btn{
  width:100%;
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 14px;
  border-radius:16px;
  background:linear-gradient(135deg,var(--ac),#2f73ff);
  color:#fff;
  border:1px solid rgba(0,80,255,.16);
  box-shadow:0 14px 28px rgba(0,80,255,.18);
  font-weight:900;
}
.admin-template .admin-refresh-btn svg{
  width:18px;
  height:18px;
  stroke-width:2.1;
  flex:0 0 auto;
}
.admin-template .admin-refresh-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 16px 30px rgba(0,80,255,.22);
}
.admin-template .dashboard-main{
  min-width:0;
  padding:24px 24px 0 0;
}
.admin-template .admin-topbar{
  padding:10px 0 10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:8px;
}
.admin-template .topbar-left{display:flex;align-items:center;gap:12px;min-width:0}
.admin-template .mobile-menu-btn{
  width:44px;height:44px;border-radius:14px;border:1px solid rgba(11,31,53,.08);
  background:#fff;display:none;align-items:center;justify-content:center;color:var(--t);
  box-shadow:0 8px 20px rgba(15,23,42,.06);
}
.admin-template .page-title h1{
  font-family:"Sora",sans-serif;
  font-size:clamp(24px,3vw,36px);
  line-height:1.05;
  letter-spacing:-.045em;
  color:var(--t);
}
.admin-template .page-title p{color:#667085;font-size:13px;margin-top:5px}
.admin-template .topbar-actions{display:flex;align-items:center;gap:10px}
.admin-template .admin-save-area{
  display:flex;
  align-items:center;
  gap:10px;
  padding:6px;
  border-radius:18px;
  border:1px solid rgba(11,31,53,.08);
  background:rgba(255,255,255,.74);
  box-shadow:0 12px 24px rgba(15,23,42,.04);
}
.admin-template .admin-save-status{
  min-height:38px;
  display:flex;
  align-items:center;
  padding:0 12px;
  border-radius:14px;
  background:#fff;
  color:#667085;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}
.admin-template .admin-save-status.dirty{
  background:rgba(247,144,9,.1);
  color:#b54708;
}
.admin-template .admin-save-status.ok{
  background:rgba(18,183,106,.1);
  color:#027a48;
}
.admin-template .admin-save-status.info{
  background:rgba(0,80,255,.08);
  color:var(--ac);
}
.admin-template .admin-save-area .small-btn[disabled]{
  opacity:.55;
  cursor:not-allowed;
  box-shadow:none;
}
.admin-template .search-box{position:relative;width:min(34vw,380px)}
.admin-template .search-box input{
  width:100%;min-height:48px;border-radius:999px;border:1px solid rgba(11,31,53,.1);
  background:#fff;padding:0 16px 0 42px;color:var(--t);font-size:14px;
  box-shadow:0 10px 30px rgba(15,23,42,.05);
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.admin-template .search-box svg{
  position:absolute;left:14px;top:50%;transform:translateY(-50%);
  color:#667085;width:18px;height:18px
}
.admin-template .search-box input:focus{
  border-color:rgba(0,80,255,.5);
  box-shadow:0 0 0 5px rgba(0,80,255,.08), 0 12px 30px rgba(15,23,42,.06);
}
.admin-template .page-section{display:none;animation:fadeUp .35s ease both}
.admin-template .page-section.active{display:block;padding-bottom:10px}
.admin-template .stats-grid{
  display:grid;
  gap:12px;
  margin-bottom:16px;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.admin-template .admin-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.admin-template .stat-card{
  position:relative;
  overflow:hidden;
  min-height:142px;
  padding:18px;
  border:1px solid rgba(11,31,53,.08);
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  border-radius:24px;
  box-shadow:0 14px 32px rgba(15,23,42,.06);
  display:grid;
  align-content:space-between;
}
.admin-template .stat-card::after{
  content:"";
  position:absolute;
  inset:auto -32px -30px auto;
  width:94px;
  height:94px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(0,80,255,.08) 0%, transparent 68%);
  pointer-events:none;
}
.admin-template .admin-stat{
  min-height:148px;
}
.admin-template .admin-stat strong{
  font-size:30px;
  line-height:1;
  margin-top:8px;
  position:relative;
  z-index:1;
}
.admin-template .admin-stat small{
  color:#667085;
  font-size:11px;
  font-weight:800;
  margin-top:8px;
  position:relative;
  z-index:1;
}
.admin-template .admin-stat .pill{
  min-height:26px;
  padding:0 10px;
  font-size:10px;
  position:relative;
  z-index:1;
}
.admin-template .admin-stat-icon{
  width:38px;
  height:38px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:rgba(0,80,255,.08);
  color:var(--ac);
  font-size:18px;
  font-weight:900;
}
.admin-template .admin-stat:nth-child(1){background:linear-gradient(180deg,#fff 0%,#f7fbff 100%)}
.admin-template .admin-stat:nth-child(2){background:linear-gradient(180deg,#fff 0%,#f8f6ff 100%)}
.admin-template .admin-stat:nth-child(3){background:linear-gradient(180deg,#fff 0%,#f7fff9 100%)}
.admin-template .admin-stat:nth-child(4){background:linear-gradient(180deg,#fff 0%,#fffaf5 100%)}
.admin-template .admin-stat:nth-child(5){background:linear-gradient(180deg,#fff 0%,#f6fbff 100%)}
.admin-template .admin-stat:nth-child(6){background:linear-gradient(180deg,#fff 0%,#fff6f7 100%)}
.admin-template .admin-stat:nth-child(1){background:linear-gradient(180deg,#fff 0%,#f1f7ff 100%)}
.admin-template .admin-stat:nth-child(2){background:linear-gradient(180deg,#fff 0%,#f4f2ff 100%)}
.admin-template .admin-stat:nth-child(3){background:linear-gradient(180deg,#fff 0%,#effcf4 100%)}
.admin-template .admin-stat:nth-child(4){background:linear-gradient(180deg,#fff 0%,#fff4e9 100%)}
.admin-template .admin-stat:nth-child(5){background:linear-gradient(180deg,#fff 0%,#eff8ff 100%)}
.admin-template .admin-stat:nth-child(6){background:linear-gradient(180deg,#fff 0%,#fff0f2 100%)}
.admin-template .admin-stat:nth-child(1) .admin-stat-icon{background:rgba(0,80,255,.1);color:#175cff}
.admin-template .admin-stat:nth-child(2) .admin-stat-icon{background:rgba(122,90,248,.12);color:#6941c6}
.admin-template .admin-stat:nth-child(3) .admin-stat-icon{background:rgba(18,183,106,.12);color:#027a48}
.admin-template .admin-stat:nth-child(4) .admin-stat-icon{background:rgba(247,144,9,.14);color:#b54708}
.admin-template .admin-stat:nth-child(5) .admin-stat-icon{background:rgba(6,182,212,.12);color:#0e7490}
.admin-template .admin-stat:nth-child(6) .admin-stat-icon{background:rgba(240,68,56,.12);color:#d92d20}
.admin-template .pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  line-height:1;
  white-space:nowrap;
  flex:0 0 auto;
  align-self:center;
}
.admin-template .admin-line-head .pill,
.admin-template .admin-stat .pill,
.admin-template .admin-image-manager-head .pill{
  align-self:center;
}
.admin-template .pill.success{background:rgba(18,183,106,.1);color:#027a48}
.admin-template .pill.warning{background:rgba(247,144,9,.12);color:#b54708}
.admin-template .pill.info{background:rgba(0,80,255,.09);color:var(--ac)}
.admin-template .admin-overview-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.admin-template .admin-editor-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}
.admin-template .content-card{
  padding:18px;
  min-width:0;
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.94) 0%, rgba(251,253,255,.96) 100%);
  border:1px solid rgba(11,31,53,.08);
  box-shadow:0 16px 38px rgba(15,23,42,.07);
  backdrop-filter:blur(12px);
  transition:box-shadow .2s ease, border-color .2s ease;
}
.admin-template .content-card:hover{
  border-color:rgba(0,80,255,.12);
  box-shadow:0 22px 44px rgba(15,23,42,.09);
}
.admin-template .card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.admin-template .card-head h2,.admin-template .card-head h3{
  font-size:20px;
  letter-spacing:-.025em;
  margin-bottom:4px;
  color:var(--t);
}
.admin-template .card-head p{color:#667085;font-size:13px;line-height:1.45}
.admin-template .admin-list{display:grid;gap:12px}
.admin-template .admin-line-card{
  border:1px solid rgba(11,31,53,.08);
  background:linear-gradient(180deg,#fff 0%, #fbfdff 100%);
  border-radius:22px;
  padding:16px;
  box-shadow:0 10px 24px rgba(15,23,42,.05);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.admin-template .admin-line-card:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 30px rgba(15,23,42,.08);
  border-color:rgba(0,80,255,.16);
}
.admin-template .admin-line-card .pill{
  flex-shrink:0;
}
.admin-template .admin-line-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:8px;
}
.admin-template .admin-line-head strong{font-size:15px;letter-spacing:-.015em;color:var(--t)}
.admin-template .admin-line-meta{font-size:12px;line-height:1.55;color:#667085;margin-bottom:10px}
.admin-template .admin-line-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:4px;
}
.admin-template .small-btn{
  min-height:38px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(11,31,53,.1);
  background:#fff;
  color:var(--t);
  font-size:12px;
  font-weight:800;
  box-shadow:0 6px 16px rgba(15,23,42,.04);
}
.admin-template .small-btn.primary{background:var(--ac);color:#fff;border-color:var(--ac)}
.admin-template .small-btn.danger{background:rgba(240,68,56,.07);color:#f04438}
.admin-template .admin-form{display:grid;gap:12px;padding:2px 0}
.admin-template .field-grid{display:grid;gap:12px}
.admin-template .field-grid.two-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-template .field{display:grid;gap:8px}
.admin-template .field label{font-size:13px;font-weight:800;color:#26324a}
.admin-template .field input,.admin-template .field textarea,.admin-template .field select{
  width:100%;
  min-height:48px;
  border-radius:16px;
  border:1px solid rgba(11,31,53,.1);
  background:#fff;
  padding:0 14px;
  color:var(--t);
  font-size:14px;
  outline:none;
  transition:border-color .2s,box-shadow .2s,transform .2s;
}
.admin-template .field textarea{
  min-height:92px;
  padding:14px;
  resize:vertical;
}
.admin-template .field input:focus,.admin-template .field textarea:focus,.admin-template .field select:focus{
  border-color:rgba(0,80,255,.5);
  box-shadow:0 0 0 5px rgba(0,80,255,.08);
}
.admin-template .form-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:12px 0 14px;
  color:#667085;
  font-size:13px;
  flex-wrap:wrap;
}
.admin-template .check{display:inline-flex;align-items:center;gap:8px;cursor:pointer;user-select:none}
.admin-template .check input{width:17px;height:17px;accent-color:var(--ac)}
.admin-template .form-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:6px}
.admin-template .admin-order-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:2px;
}
.admin-template .admin-detail-card{
  display:grid;
  gap:14px;
  padding:8px 0 0;
}
.admin-template .admin-detail-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.admin-template .admin-detail-head h3{
  font-family:"Sora",sans-serif;
  font-size:22px;
  letter-spacing:-.03em;
  margin:6px 0 4px;
}
.admin-template .admin-detail-head p{color:#667085;font-size:13px;line-height:1.45}
.admin-template .admin-detail-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.admin-template .admin-mini-box{
  padding:14px 12px;
  border-radius:18px;
  border:1px solid rgba(11,31,53,.08);
  background:#f9fbff;
}
.admin-template .admin-mini-box strong{
  display:block;
  font-family:"Sora",sans-serif;
  font-size:22px;
  color:var(--t);
  letter-spacing:-.03em;
  margin-bottom:4px;
}
.admin-template .admin-mini-box span{font-size:11px;color:#667085;font-weight:700}
.admin-template .admin-detail-note{
  padding:14px 16px;
  border-radius:18px;
  background:rgba(0,80,255,.06);
  color:#3557b7;
  font-size:12px;
  line-height:1.55;
}
.admin-template .coupon-row{
  display:flex;
  gap:10px;
  align-items:center;
}
.admin-template .coupon-row select{
  flex:1;
  min-height:46px;
  border-radius:16px;
  border:1px solid rgba(11,31,53,.1);
  padding:0 14px;
  background:#fff;
  color:var(--t);
}
.admin-template .coupon-apply-btn{
  min-height:46px;
  padding:0 16px;
  border-radius:16px;
  background:var(--ac);
  color:#fff;
  font-weight:800;
  font-size:12px;
  box-shadow:0 10px 24px rgba(0,80,255,.18);
}
.admin-template .coupon-apply-btn:hover{background:var(--ac2);transform:translateY(-1px)}
.admin-template .empty-state,.admin-template .account-empty-state{
  text-align:center;
  padding:42px 18px;
  color:#667085;
  border:1px dashed rgba(11,31,53,.1);
  border-radius:20px;
  background:#fff;
}
.admin-template .empty-state strong,.admin-template .account-empty-state strong{
  display:block;
  color:var(--t);
  margin-bottom:6px;
  font-size:16px;
  font-family:"Sora",sans-serif;
}
.admin-template .overlay{position:fixed;inset:0;background:rgba(10,16,32,.38);z-index:24;display:none}
.admin-template .overlay.active{display:block}

@media(max-width:1120px){
  .auth-template-shell{width:min(560px,calc(100vw - 24px))}
  .auth-template .auth-layout{grid-template-columns:1fr}
  .account-template .dashboard-layout{grid-template-columns:1fr}
  .account-template .dashboard-layout::before{display:none}
  .account-template .sidebar{
    position:fixed;
    top:0;
    left:0;
    min-height:100dvh;
    height:100dvh;
    max-height:100dvh;
    padding:calc(env(safe-area-inset-top) + 16px) 16px calc(env(safe-area-inset-bottom) + 18px);
    transform:translateX(-110%);
    transition:.24s ease;
    width:min(90vw,320px);
    background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(246,249,255,.9));
    backdrop-filter:blur(22px) saturate(1.15);
    -webkit-backdrop-filter:blur(22px) saturate(1.15);
    border-right:1px solid rgba(11,31,53,.1);
    box-shadow:0 24px 70px rgba(15,23,42,.1);
    border-radius:0 28px 28px 0;
    z-index:2400;
  }
  .account-template .account-sidebar-close{display:inline-flex}
  .account-template .sidebar.active{transform:translateX(0)}
  .account-template .mobile-menu-btn{display:grid;place-items:center}
  .account-template .dashboard-main{padding:18px 18px calc(18px + 92px)}
  .account-template .hero-account,.account-template .dashboard-grid,.account-template .profile-layout{grid-template-columns:1fr}
  .account-template .stats-grid{grid-template-columns:repeat(2,1fr)}
  .account-template .recommendation-grid,.account-template .favorites-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .account-template .favorites-layout{grid-template-columns:1fr}
  .account-template .favorites-side-card{position:static}
  .account-template .overlay{inset:0;z-index:2350;background:rgba(8,12,28,.42);backdrop-filter:blur(8px)}
  .account-template .order-item-body{grid-template-columns:80px minmax(0,1fr)}
  .account-template .order-item-thumb{width:80px;height:80px}
  .account-template .order-item-side{grid-template-columns:repeat(2,minmax(0,1fr));justify-items:stretch;grid-column:1 / -1}
  .account-template .profile-hub-grid{grid-template-columns:1fr}
  .admin-template .admin-layout{grid-template-columns:1fr}
  .admin-template .admin-sidebar{
    position:fixed;
    top:72px;
    min-height:calc(100dvh - 72px);
    height:calc(100dvh - 72px);
    max-height:calc(100dvh - 72px);
    transform:translateX(-110%);
    transition:.24s ease;
    width:min(86vw,292px);
    box-shadow:0 24px 70px rgba(15,23,42,.1);
    border-radius:0 24px 24px 0;
    z-index:25;
  }
  .admin-template .admin-sidebar.active{transform:translateX(0)}
  .admin-template .mobile-menu-btn{display:grid;place-items:center}
  .admin-template .dashboard-main{padding:18px}
  .admin-template .admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-template .admin-overview-grid,.admin-template .admin-editor-grid{grid-template-columns:1fr}
  .admin-template .overlay{top:72px}
  body.admin-active .admin-template .admin-sidebar{
    top:0;
    min-height:100dvh;
    height:100dvh;
    max-height:100dvh;
  }
  body.admin-active .admin-template .overlay{top:0}
}

@media(max-width:980px){
  .admin-template .admin-category-blueprint{grid-template-columns:40px 1fr}
  .admin-template .admin-category-tags{grid-column:1/-1}
  .account-template .support-channel-grid,
  .account-template .support-topic-grid,
  .account-template .support-faq-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .auth-template-shell{
    width:calc(100vw - 14px);
    max-height:calc(100vh - 14px);
    padding:0;
    border-radius:0;
  }
  .auth-template{min-height:auto;border-radius:0}
  .auth-template .auth-layout{padding:12px;gap:12px;min-height:auto}
  .auth-template .form-zone{padding:0}
  .auth-template .form-card{padding:18px 16px 16px;border-radius:22px}
  .auth-template .form-head{padding-right:48px}
  .auth-template .two-cols,.account-template .field-grid.two-cols,.account-template .recommendation-grid,.account-template .favorites-grid,.account-template .coupon-grid,.account-template .profile-stats,.account-template .address-grid,.account-template .address-grid .address-inline{grid-template-columns:1fr}
  #authRegisterForm .register-grid{grid-template-columns:1fr;margin-top:10px !important}
  .auth-template .form-row,.account-template .topbar,.account-template .order-top,.account-template .item-row,.account-template .address-top,.account-template .coupon-top,.account-template .card-head{align-items:stretch;flex-direction:column}
  .account-template .topbar-actions{width:100%}
  .account-template .search-box{width:100%}
  .account-template .icon-btn{flex:0 0 46px}
  .account-template .notifications-shell{position:static}
  .account-template .sidebar{
    inset:0;
    top:0;
    left:0;
    width:100vw;
    height:100dvh;
    min-height:100dvh;
    max-height:100dvh;
    padding:calc(env(safe-area-inset-top) + 12px) 14px calc(env(safe-area-inset-bottom) + 12px);
    border-radius:0;
    background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(245,248,255,.98));
    box-shadow:none;
    backdrop-filter:blur(18px) saturate(1.08);
    -webkit-backdrop-filter:blur(18px) saturate(1.08);
    display:grid;
    grid-template-rows:auto auto minmax(0,1fr) auto;
    gap:8px;
    overflow:hidden;
  }
  .account-template .sidebar.active{transform:translateX(0)}
  .account-template .account-brand{
    min-height:60px;
    padding:12px;
    border-radius:16px;
    gap:10px;
  }
  .account-template .account-avatar{
    width:40px;
    height:40px;
    border-radius:14px;
    font-size:13px;
  }
  .account-template .account-brand strong{font-size:13px}
  .account-template .account-brand small{font-size:10px;line-height:1.3}
  .account-template .side-nav{
    gap:6px;
    min-height:0;
    overflow:hidden;
  }
  .account-template .nav-section-label{
    padding:3px 6px 2px;
    font-size:10px;
  }
  .account-template .nav-item{
    min-height:44px;
    padding:0 12px;
    border-radius:14px;
    box-shadow:0 8px 18px rgba(15,23,42,.04);
  }
  .account-template .nav-item-main{gap:10px}
  .account-template .nav-item svg{
    width:18px;
    height:18px;
  }
  .account-template .nav-badge{
    min-width:20px;
    height:20px;
    padding:0 6px;
    font-size:10px;
  }
  .account-template .sidebar-bottom{
    margin-top:0;
    padding-top:8px;
    padding-bottom:0;
    gap:8px;
    border-top:1px solid rgba(11,31,53,.08);
  }
  .account-template .support-card{
    padding:12px;
    border-radius:16px;
  }
  .account-template .support-card strong{
    font-size:13px;
    margin-bottom:4px;
  }
  .account-template .support-card p{
    font-size:10.5px;
    line-height:1.35;
    margin-bottom:8px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .account-template .sidebar-bottom .danger-btn{
    min-height:44px;
    width:100%;
  }
  .account-template .notifications-panel{
    position:fixed;
    top:var(--account-notifications-top, calc(72px + env(safe-area-inset-top)));
    left:12px;
    right:12px;
    width:auto;
    bottom:auto;
    height:auto;
    max-height:calc(100dvh - var(--account-notifications-top, calc(72px + env(safe-area-inset-top))) - 12px);
    border-radius:26px;
    z-index:1404;
    overflow:hidden;
  }
  .account-template .notifications-panel-body{
    flex:1 1 auto;
    min-height:0;
    padding:8px 10px 10px;
    overflow:auto;
  }
  .account-template .notifications-panel-head{padding:12px 12px 8px}
  .account-template .notifications-panel-actions{
    flex-direction:column;
    padding:8px 12px 10px;
    gap:6px;
  }
  .account-template .notifications-action{width:100%;flex:1 1 auto}
  .account-template .notifications-panel-footer{
    padding:0 12px calc(10px + env(safe-area-inset-bottom));
    font-size:10px;
  }
  .account-template .notifications-list{
    gap:8px;
  }
  .account-template .notification-item{
    grid-template-columns:34px minmax(0,1fr);
    grid-template-areas:
      "icon copy"
      "meta meta";
    gap:8px 10px;
    padding:9px 9px 10px;
    border-radius:14px;
  }
  .account-template .notification-icon{
    grid-area:icon;
    width:34px;
    height:34px;
    border-radius:12px;
  }
  .account-template .notification-copy{
    grid-area:copy;
    gap:2px;
  }
  .account-template .notification-copy strong{
    font-size:11.5px;
    line-height:1.25;
  }
  .account-template .notification-copy span{
    font-size:10.5px;
    line-height:1.35;
  }
  .account-template .notification-copy small{
    font-size:9px;
  }
  .account-template .notification-meta{
    grid-area:meta;
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:6px;
    padding-top:6px;
    border-top:1px solid rgba(11,31,53,.06);
  }
  .account-template .notification-time{
    font-size:9px;
    line-height:1.2;
  }
  .account-template .notification-meta-right{
    gap:6px;
  }
  .account-template .notification-status-dot{
    width:7px;
    height:7px;
    box-shadow:0 0 0 3px rgba(240,68,56,.14);
  }
  .account-template .notification-action-label{
    font-size:8.5px;
    letter-spacing:.02em;
    white-space:normal;
    line-height:1.15;
  }
  .account-template .stats-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .account-template .stat-card{
    min-height:92px;
    padding:12px 12px 10px;
    border-radius:18px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    gap:8px;
  }
  .account-template .stat-top{
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
  }
  .account-template .stat-card small{
    font-size:10px;
    line-height:1.25;
  }
  .account-template .stat-card strong{
    font-size:clamp(18px,6vw,24px);
    line-height:1;
  }
  .account-template .stat-card .pill{
    align-self:flex-start;
    font-size:8.5px;
    min-height:20px;
    padding:0 7px;
  }
  .auth-template .quick-actions,.account-template .quick-actions,.account-template .order-actions,.account-template .form-actions{flex-direction:column}
  .auth-template .quick-actions button,.account-template .quick-actions button,.account-template .form-actions button,.account-template .order-actions button{width:100%}
  .account-template .orders-toolbar{flex-direction:column;align-items:stretch}
  .account-template .orders-toolbar-actions{width:100%;justify-content:stretch;align-items:stretch}
  .account-template .orders-toolbar-actions .secondary-btn,
  .account-template .orders-toolbar-actions .ghost-btn{width:100%}
  .account-template .orders-sort{min-width:0;width:100%}
  .account-template .orders-sort select{width:100%}
  .account-template .product-card-favorite{grid-template-columns:1fr}
  .account-template .product-card-favorite .product-thumb{min-height:120px}
  .account-template .favorites-toolbar{flex-direction:column;align-items:stretch}
  .account-template .favorites-toolbar-actions{width:100%;justify-content:stretch;align-items:stretch}
  .account-template .favorites-toolbar-actions .secondary-btn,
  .account-template .favorites-toolbar-actions .ghost-btn{
    width:100%;
  }
  .account-template .favorites-side-actions{grid-template-columns:1fr}
  .account-template .recommendation-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .account-template .product-card-reco{
    padding:10px;
    gap:8px;
    border-radius:18px;
  }
  .account-template .product-card-reco .product-thumb{
    min-height:92px;
    border-radius:14px;
    padding:0;
  }
  .account-template .product-card-reco .product-thumb img{
    object-fit:cover;
    object-position:center;
  }
  .account-template .product-card-reco .product-tag{
    left:10px;
    top:10px;
  }
  .account-template .product-card-reco h4{
    min-height:30px;
    font-size:13px;
    line-height:1.3;
  }
  .account-template .product-card-reco p{
    min-height:16px;
    font-size:11px;
    line-height:1.35;
  }
  .account-template .price-row{
    gap:6px;
  }
  .account-template .price-row strong{
    font-size:17px;
  }
  .account-template .price-row small{
    min-height:20px;
    padding:0 7px;
    font-size:9px;
  }
  .account-template .profile-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .account-template .profile-footer-actions{justify-content:flex-start}
  .account-template .profile-footer-actions .ghost-btn{width:100%}
  .account-template .next-action-card{display:none}
  .account-template .favorites-sort{min-width:0;width:100%}
  .account-template .favorites-sort select{width:100%}
  .account-template .favorites-side-stats{grid-template-columns:1fr 1fr}
  .account-template .sidebar{
    top:0;
    min-height:100dvh;
    height:100dvh;
    max-height:100dvh;
    width:min(88vw,340px);
    padding:calc(env(safe-area-inset-top) + 14px) 14px calc(env(safe-area-inset-bottom) + 16px);
    gap:14px
  }
  .account-template .account-brand-shell{gap:8px}
  .account-template .account-brand{
    min-height:66px;
    padding:12px 110px 12px 12px;
  }
  .account-template .account-brand-actions{
    display:flex;
  }
  .account-template .account-brand-actions .account-sidebar-close{
    display:grid;
    place-items:center;
  }
  .account-template .nav-item{min-height:48px;padding:0 12px 0 13px}
  .account-template .sidebar-bottom .danger-btn{width:100%}
  .account-template .overlay{inset:0}
  .account-template .profile-hub-grid{grid-template-columns:1fr}
  .account-template .order-item-body{
    grid-template-columns:80px minmax(0,1fr);
    grid-template-areas:
      "thumb info"
      "focus focus"
      "side side";
    gap:10px;
    padding:12px 12px 14px;
  }
  .account-template .order-item-thumb{
    width:80px;
    height:80px;
    border-radius:16px;
  }
  .account-template .order-item-thumb img{
    object-fit:cover;
    object-position:center;
    padding:0;
    background:#fff;
  }
  .account-template .order-item-info{
    gap:6px;
  }
  .account-template .order-item-title{
    font-size:14px;
    line-height:1.3;
  }
  .account-template .order-item-meta-row{
    gap:6px;
  }
  .account-template .order-item-meta-row span{
    min-height:24px;
    padding:0 8px;
    font-size:11px;
  }
  .account-template .order-item-side{
    grid-template-columns:minmax(0,1fr) auto;
    justify-items:stretch;
    align-items:center;
    gap:10px;
    grid-column:1 / -1;
    min-width:0;
  }
  .account-template .order-item-focus{
    padding-top:10px;
  }
  .account-template .order-item-side .small-btn{
    width:auto;
    min-width:0;
    padding:0 12px;
  }
  .account-template .order-item-total{
    font-size:18px;
  }
  .account-template .order-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .account-template .order-details-body{
    padding:12px;
    gap:10px;
  }
  .account-template .order-detail-tile{
    padding:10px 12px;
    border-radius:12px;
  }
  .account-template .order-detail-tile strong{
    font-size:13px;
    line-height:1.3;
  }
  .account-template .order-items-list{
    gap:6px;
  }
  .account-template .order-line-item{
    grid-template-columns:38px minmax(0,1fr) auto;
    gap:6px 8px;
    padding:8px 10px;
    border-radius:12px;
  }
  .account-template .order-line-thumb{
    width:38px;
    height:38px;
    border-radius:11px;
  }
  .account-template .order-line-copy{
    gap:2px;
  }
  .account-template .order-line-name{
    font-size:12px;
    line-height:1.25;
  }
  .account-template .order-line-meta,
  .account-template .order-line-qty{
    font-size:10px;
    line-height:1.2;
  }
  .account-template .order-line-price{
    font-size:12px;
  }
  .account-template .order-detail-actions{flex-direction:column}
  .account-template .order-detail-actions .secondary-btn,
  .account-template .order-detail-actions .ghost-btn,
  .account-template .order-detail-actions .danger-btn{width:100%}
  .account-template .coupon-item-body{grid-template-columns:1fr}
  .account-template .coupon-item-side{min-width:0;justify-items:stretch}
  .account-template .coupon-item-hint{text-align:left;max-width:none}
  .account-template .coupon-toolbar{align-items:stretch;flex-direction:column}
  .account-template .coupon-layout{grid-template-columns:1fr}
  .account-template .coupon-side-card{position:static}
  .account-template #account-section-addresses .simple-list{grid-template-columns:1fr}
  .account-template #account-section-addresses .address-detail-grid{grid-template-columns:1fr}
  .account-template #account-section-addresses .address-actions{flex-direction:column;align-items:stretch}
  .account-template #account-section-addresses .address-actions .small-btn,
  .account-template #account-section-addresses .address-actions .address-state-pill{width:100%;justify-content:center}
  .address-modal .hmod-box{
    width:100vw;
    height:100dvh;
    max-height:none;
    border-radius:0;
  }
  .address-modal .address-template{height:100%}
  .address-modal .address-template .auth-layout{padding:0;height:100%}
  .address-modal .address-template .form-zone{height:100%}
  .address-modal .address-template .form-card{height:100%;border-radius:0;border:0;box-shadow:none}
  .address-modal .address-dialog{border-radius:0}
  .address-modal .address-dialog-head{padding:calc(18px + env(safe-area-inset-top)) 16px 14px}
  .address-modal .address-dialog-body{padding:14px 16px 12px}
  .address-modal .address-fieldset{padding:12px}
  .address-modal .address-grid,
  .address-modal .address-inline,
  .address-modal .address-street-grid{grid-template-columns:1fr}
  .address-modal .address-grid .address-wide{grid-column:auto}
  .address-modal .address-dialog-footer{
    flex-direction:column;
    align-items:stretch;
    padding:14px 16px calc(16px + env(safe-area-inset-bottom));
  }
  .address-modal .address-dialog-actions{
    width:100%;
    flex-direction:column;
  }
  .address-modal .address-dialog-actions .ghost-btn,
  .address-modal .address-dialog-actions .primary-btn{
    width:100%;
    min-width:0;
  }
  .address-modal .address-default-check{width:100%;justify-content:center}
  .account-template .coupon-code{grid-template-columns:1fr;justify-items:stretch}
  .account-template .coupon-code-value{white-space:normal}
  .account-template .coupon-code .small-btn{width:100%;min-width:0}
  .account-template .coupon-item-side-value{width:100%}
  .account-template .coupon-item-side .ghost-btn{width:100%}
  .account-template .coupon-chip-row{gap:6px}
  .account-template .coupon-archive-item{flex-direction:column;align-items:stretch}
  .account-template .coupon-archive summary{align-items:flex-start;flex-direction:column}
  .account-template .favorites-side-stats{grid-template-columns:1fr}
  .account-template .favorite-card-actions{grid-template-columns:1fr}
  .account-template .favorite-card-actions .small-btn{width:100%}
  .account-template #account-section-support .dashboard-grid{grid-template-columns:1fr}
  .account-template .support-head{grid-template-columns:auto 1fr}
  .account-template .support-head .pill{grid-column:1 / -1;justify-self:start}
  .account-template .support-routes{grid-template-columns:1fr}
  .account-template #account-section-support .content-card,
  .account-template #account-section-support .support-card-inline{padding:16px}
  .account-template #account-section-support .account-page-card-wide{
    padding:14px;
    border-radius:24px;
  }
  .account-template #account-section-support .card-head{
    text-align:left;
    align-items:flex-start;
    margin-bottom:14px;
  }
  .account-template #account-section-support .card-head p{
    margin-left:0;
    margin-right:0;
  }
  .account-template .support-center{gap:14px}
  .account-template .support-hero-panel,
  .account-template .support-block{
    border-radius:24px;
    padding:16px;
  }
  .account-template .support-hero-top{
    grid-template-columns:1fr;
    gap:12px;
  }
  .account-template .support-hero-icon{
    width:50px;
    height:50px;
    border-radius:17px;
  }
  .account-template .support-real-badge{
    justify-self:start;
    min-height:30px;
    font-size:11px;
  }
  .account-template .support-personal-box{
    align-items:stretch;
    flex-direction:column;
    padding:14px;
  }
  .account-template .support-context-chip{
    width:100%;
    white-space:normal;
    text-align:center;
  }
  .account-template .support-block-head{
    display:grid;
    gap:6px;
  }
  .account-template .support-block-head p{
    text-align:left;
    max-width:none;
  }
  .account-template .support-channel-grid,
  .account-template .support-topic-grid,
  .account-template .support-faq-list{
    grid-template-columns:1fr;
  }
  .account-template .support-channel-card,
  .account-template .support-topic-card{
    min-height:auto;
  }
  .account-template .support-channel-card{
    grid-template-columns:auto minmax(0,1fr);
    align-items:center;
  }
  .account-template .support-channel-action{
    grid-column:1 / -1;
    width:100%;
  }
  .account-template .support-info-strip{
    justify-content:flex-start;
    align-items:flex-start;
    display:grid;
    gap:10px;
  }
  .admin-template .admin-gate{min-height:calc(100dvh - 180px);padding:14px}
  .admin-template .admin-gate-card{padding:20px;border-radius:24px}
  .admin-template .admin-topbar{padding:10px 0 12px}
  .admin-template .search-box{width:100%}
  .admin-template .admin-save-area{
    width:100%;
    justify-content:space-between;
  }
  .admin-template .stats-grid{grid-template-columns:1fr}
  .admin-template .admin-stats,.admin-template .admin-overview-grid,.admin-template .admin-editor-grid,.admin-template .admin-order-grid,.admin-template .admin-detail-grid{grid-template-columns:1fr}
  .admin-template .admin-sidebar{top:66px;min-height:calc(100dvh - 66px);height:calc(100dvh - 66px);max-height:calc(100dvh - 66px)}
  .admin-template .overlay{top:66px}
  .admin-template .admin-detail-head,.admin-template .card-head,.admin-template .admin-topbar,.admin-template .admin-line-head{align-items:stretch;flex-direction:column}
  .admin-template .field-grid.two-cols{grid-template-columns:1fr}
  .admin-template .form-actions,.admin-template .admin-line-actions{flex-direction:column;align-items:stretch}
  .admin-template .form-actions button,.admin-template .admin-line-actions button{width:100%}
  .admin-template .coupon-row{flex-direction:column}
  .admin-template .coupon-apply-btn{width:100%}
}

@media(max-width:520px){
  .account-template .order-item-body{
    grid-template-columns:72px minmax(0,1fr);
    gap:9px;
  }
  .account-template .order-item-thumb{
    width:72px;
    height:72px;
  }
  .account-template .order-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .account-template .order-detail-actions{flex-direction:column}
  .account-template .order-detail-actions .secondary-btn,
  .account-template .order-detail-actions .ghost-btn,
  .account-template .order-detail-actions .danger-btn{width:100%}
  .confirm-modal .confirm-box{
    width:calc(100vw - 24px);
    padding:28px 18px 18px;
    border-radius:28px;
  }
  .confirm-modal .confirm-actions{flex-direction:column-reverse}
  .confirm-modal .ghost-btn,.confirm-modal .danger-btn,.confirm-modal .primary-btn{width:100%;min-width:0}
}

@media(max-width:360px){
  .account-template .stats-grid{gap:7px}
  .account-template .stat-card{
    min-height:86px;
    padding:11px 11px 9px;
  }
  .account-template .order-item-body{
    grid-template-columns:66px minmax(0,1fr);
  }
  .account-template .order-item-thumb{
    width:66px;
    height:66px;
  }
  .account-template .order-detail-grid{grid-template-columns:1fr}
}

body.account-drawer-lock{overflow:hidden}
body.account-drawer-open .account-template{position:relative;z-index:2300}
body.account-drawer-open .account-template .dashboard-layout{z-index:2300}

/* Admin 2.0 — visual managers and operating UI */
.admin-template .admin-breadcrumb{
  display:inline-flex;margin-top:8px;color:#98a2b3;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase
}
.admin-template .admin-shortcuts{display:grid;gap:10px}
.admin-template .admin-shortcuts strong{font-family:"Sora",sans-serif;letter-spacing:-.02em}
.admin-template .admin-shortcuts .secondary-btn{
  min-height:50px;width:100%;font-size:12.5px;justify-content:flex-start;gap:10px;
  padding:0 14px;border-radius:16px;border:1px solid rgba(0,80,255,.14);
  background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(235,243,255,.82));
  color:#173766;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 22px rgba(0,80,255,.07)
}
.admin-template .admin-shortcuts .secondary-btn svg{
  flex:0 0 18px;width:18px;height:18px;stroke-width:2.1;display:block
}
.admin-template .admin-shortcuts .secondary-btn span{display:inline-flex;align-items:center}
.admin-template .admin-toolbar{
  display:grid;gap:12px;margin-bottom:14px;padding:12px;border-radius:22px;border:1px solid rgba(11,31,53,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(247,250,255,.94));box-shadow:0 12px 24px rgba(15,23,42,.04)
}
.admin-template .admin-toolbar-split{grid-template-columns:1fr auto;align-items:center}
.admin-template .admin-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.admin-template .admin-filter-grid select,.admin-template .admin-filter-grid input,.admin-template .admin-bulkbar select{
  min-height:42px;border:1px solid rgba(11,31,53,.1);background:#fff;border-radius:14px;padding:0 12px;font-size:13px;font-weight:800;color:var(--t);outline:0
}
.admin-template .admin-bulkbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;border-radius:16px;background:rgba(0,80,255,.06);border:1px solid rgba(0,80,255,.12)}
.admin-template .admin-bulkbar strong{font-size:13px;color:var(--ac)}
.admin-template .admin-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.admin-template .admin-product-tile{
  position:relative;display:grid;grid-template-columns:74px minmax(0,1fr);gap:12px;align-items:center;padding:12px;border-radius:22px;border:1px solid rgba(11,31,53,.08);
  background:#fff;box-shadow:0 12px 26px rgba(15,23,42,.05);cursor:pointer;transition:.2s ease
}
.admin-template .admin-product-tile:hover,.admin-template .admin-product-tile.is-selected{border-color:rgba(0,80,255,.28);box-shadow:0 18px 34px rgba(0,80,255,.1);transform:translateY(-1px)}
.admin-template .admin-product-tile img{width:74px;height:74px;border-radius:18px;object-fit:contain;background:#f5f8ff;border:1px solid rgba(11,31,53,.07)}
.admin-template .admin-product-tile strong{display:block;color:var(--t);font-size:14px;line-height:1.25;margin-bottom:4px}
.admin-template .admin-product-tile span{display:block;color:#667085;font-size:12px;font-weight:700;line-height:1.4}
.admin-template .admin-product-tile em{display:block;color:var(--t);font-size:15px;font-weight:950;font-style:normal;margin-top:6px}
.admin-template .admin-product-tile-meta{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  width:100%;
  margin-top:4px;
}
.admin-template .admin-product-tile-meta .pill{
  box-sizing:border-box;
  min-width:128px;
  height:34px;
  padding:0 16px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  text-align:center;
  vertical-align:middle;
}
.admin-template .admin-select-check{position:absolute;top:10px;left:10px;z-index:2;width:26px;height:26px;border-radius:999px;background:rgba(255,255,255,.9);display:grid;place-items:center;box-shadow:0 8px 18px rgba(15,23,42,.08)}
.admin-template .admin-select-check input{accent-color:var(--ac)}
.admin-template .admin-editor-card{
  padding:16px;border-radius:24px;border:1px solid rgba(11,31,53,.08);background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:0 10px 22px rgba(15,23,42,.045)
}
.admin-template .admin-editor-title{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.admin-template .admin-editor-title>span{width:34px;height:34px;border-radius:13px;display:grid;place-items:center;background:rgba(0,80,255,.08);color:var(--ac);font-weight:950}
.admin-template .admin-editor-title strong{display:block;color:var(--t);font-size:15px}
.admin-template .admin-editor-title small{display:block;color:#667085;font-size:12px;margin-top:2px}
.admin-template .admin-switch-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.admin-template .admin-switch{display:inline-flex;align-items:center;gap:10px;min-height:42px;font-size:13px;font-weight:850;color:#344054}
.admin-template .admin-switch input{display:none}
.admin-template .admin-switch span{width:44px;height:26px;border-radius:999px;background:#e7ecf5;position:relative;transition:.2s ease;box-shadow:inset 0 0 0 1px rgba(11,31,53,.08)}
.admin-template .admin-switch span::after{content:"";position:absolute;top:4px;left:4px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 4px 10px rgba(15,23,42,.16);transition:.2s ease}
.admin-template .admin-switch input:checked+span{background:var(--ac)}
.admin-template .admin-switch input:checked+span::after{transform:translateX(18px)}
.admin-template .admin-switch.mini span{width:36px;height:22px}.admin-template .admin-switch.mini span::after{width:14px;height:14px}.admin-template .admin-switch.mini input:checked+span::after{transform:translateX(14px)}
.admin-template .admin-chip-editor{display:grid;gap:8px;padding:10px;border-radius:16px;border:1px solid rgba(11,31,53,.08);background:#fff}
.admin-template .admin-chip-list{display:flex;gap:8px;flex-wrap:wrap}
.admin-template .admin-chip{min-height:30px;border:0;border-radius:999px;padding:0 10px;background:rgba(0,80,255,.08);color:var(--ac);font-size:12px;font-weight:850}
.admin-template .admin-chip span{margin-left:4px}
.admin-template .admin-chip-input{min-height:40px;border:1px solid rgba(11,31,53,.08);border-radius:12px;padding:0 12px;outline:0}
.admin-template .admin-image-manager{display:grid;gap:12px}
.admin-template .admin-image-manager-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.admin-template .admin-image-manager-head strong{display:block;font-size:15px;color:var(--t)}
.admin-template .admin-image-manager-head span:not(.pill){display:block;font-size:12px;color:#667085;margin-top:3px}
.admin-template .admin-dropzone{
  min-height:132px;border:1.5px dashed rgba(0,80,255,.28);border-radius:22px;background:linear-gradient(135deg,rgba(0,80,255,.06),rgba(255,255,255,.8));
  display:grid;place-items:center;text-align:center;padding:18px;cursor:pointer;transition:.2s ease
}
.admin-template .admin-dropzone:hover,.admin-template .admin-image-manager.is-dragging .admin-dropzone{border-color:var(--ac);box-shadow:0 0 0 5px rgba(0,80,255,.08)}
.admin-template .admin-dropzone input{display:none}
.admin-template .admin-dropzone span{font-size:26px}.admin-template .admin-dropzone strong{display:block;color:var(--t);margin-top:6px}.admin-template .admin-dropzone small{color:#667085;font-weight:800}
.admin-template .admin-url-adder{display:grid;grid-template-columns:1fr auto;gap:8px}
.admin-template .admin-url-adder input{min-height:42px;border:1px solid rgba(11,31,53,.1);border-radius:14px;padding:0 12px;outline:0}
.admin-template .admin-image-status{min-height:18px;color:#667085;font-size:12px;font-weight:800}
.admin-template .admin-image-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.admin-template .admin-image-empty{grid-column:1/-1;text-align:center;padding:22px;border-radius:18px;border:1px dashed rgba(11,31,53,.12);color:#667085;font-size:13px;font-weight:800}
.admin-template .admin-image-card{overflow:hidden;border-radius:18px;border:1px solid rgba(11,31,53,.08);background:#fff;box-shadow:0 10px 20px rgba(15,23,42,.05)}
.admin-template .admin-image-card img{width:100%;height:104px;object-fit:contain;background:#f6f8ff;display:block}
.admin-template .admin-image-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px}
.admin-template .admin-image-card-meta span{font-size:11px;font-weight:900;color:#667085}
.admin-template .admin-image-card-meta div{display:flex;gap:4px}
.admin-template .admin-image-card-meta button{width:26px;height:26px;border-radius:9px;border:1px solid rgba(11,31,53,.08);background:#fff;color:var(--t);font-weight:900}
.admin-template .admin-image-card-meta button:disabled{opacity:.35}
.admin-template .admin-live-preview .pc{max-width:280px;margin:auto}
.admin-template .admin-sticky-actions{position:sticky;bottom:12px;padding:10px;border-radius:18px;background:rgba(255,255,255,.86);backdrop-filter:blur(12px);border:1px solid rgba(11,31,53,.08);box-shadow:0 12px 30px rgba(15,23,42,.08);z-index:5}
.admin-template .admin-banner-links{display:grid;gap:10px}
.admin-template .admin-banner-link-row{
  display:grid;
  grid-template-columns:84px minmax(0,1fr) minmax(220px,1fr);
  gap:12px;
  align-items:center;
  padding:12px;
  border-radius:18px;
  border:1px solid rgba(11,31,53,.08);
  background:#fff;
  box-shadow:0 10px 22px rgba(15,23,42,.04);
}
.admin-template .admin-banner-link-thumb{
  width:84px;
  height:54px;
  border-radius:14px;
  overflow:hidden;
  background:#f5f8ff;
  border:1px solid rgba(11,31,53,.08);
}
.admin-template .admin-banner-link-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.admin-template .admin-banner-link-copy{
  min-width:0;
  display:grid;
  gap:4px;
}
.admin-template .admin-banner-link-copy strong{
  font-size:14px;
  color:var(--t);
  font-weight:900;
}
.admin-template .admin-banner-link-copy span{
  font-size:12px;
  color:#667085;
  line-height:1.45;
}
.admin-template .admin-banner-link-row select{
  min-height:44px;
  border-radius:14px;
  border:1px solid rgba(11,31,53,.1);
  background:#fff;
  padding:0 14px;
  color:var(--t);
  font-weight:800;
}
.admin-template .admin-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;color:#667085;font-size:12px;font-weight:850}
.admin-template .admin-pagination>div{display:flex;gap:8px}.admin-template .admin-pagination button:disabled{opacity:.4;cursor:not-allowed}
.admin-template .admin-empty{display:grid;place-items:center;text-align:center;gap:7px;padding:28px;border-radius:22px;border:1px dashed rgba(11,31,53,.12);background:#fff;color:#667085}
.admin-template .admin-empty-icon{font-size:26px}.admin-template .admin-empty strong{font-size:16px;color:var(--t);font-family:"Sora",sans-serif}.admin-template .admin-empty span{font-size:13px;line-height:1.5}
.admin-template .admin-order-list,.admin-template .admin-customer-list{display:grid;gap:12px}
.admin-template .admin-order-card,.admin-template .admin-customer-card,.admin-template .admin-coupon-card,.admin-template .admin-insight-card{
  border:1px solid rgba(11,31,53,.08);border-radius:24px;background:#fff;box-shadow:0 12px 26px rgba(15,23,42,.05);padding:16px
}
.admin-template .admin-order-main{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:14px;align-items:center}
.admin-template .admin-order-thumb{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,var(--ac),#69a2ff);display:grid;place-items:center;color:#fff;font-weight:950;box-shadow:0 14px 28px rgba(0,80,255,.2)}
.admin-template .admin-order-main p{font-size:12px;color:#667085;font-weight:750;margin-top:4px}
.admin-template .admin-order-total{display:grid;justify-items:end;gap:8px}.admin-template .admin-order-total strong{font-size:18px;color:var(--t)}
.admin-template .admin-order-total select{min-height:38px;border-radius:12px;border:1px solid rgba(11,31,53,.1);padding:0 10px;background:#fff}
.admin-template .admin-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:10px}
.admin-template .admin-timeline span{min-height:7px;overflow:hidden;text-indent:-999px;border-radius:999px;background:#e8eef8}
.admin-template .admin-timeline span.done{background:linear-gradient(90deg,var(--ac),#69a2ff)}
.admin-template .admin-coupon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.admin-template .admin-coupon-card{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff,#f5f8ff)}
.admin-template .admin-coupon-card::before{content:"";position:absolute;right:-32px;top:-32px;width:110px;height:110px;border-radius:50%;background:rgba(0,80,255,.08)}
.admin-template .admin-coupon-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:20px;font-weight:950;color:var(--ac);letter-spacing:.04em;margin-bottom:10px}
.admin-template .admin-coupon-card strong{display:block;color:var(--t);font-size:16px}.admin-template .admin-coupon-card p{font-size:12px;color:#667085;line-height:1.5;margin:6px 0 12px}
.admin-template .admin-coupon-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.admin-template .admin-coupon-foot span{font-weight:950;color:var(--t)}.admin-template .admin-coupon-foot em{font-style:normal;font-size:11px;color:#667085;font-weight:850}
.admin-template .admin-coupon-preview{padding:18px;border-radius:22px;background:linear-gradient(135deg,var(--ac),#69a2ff);color:#fff;box-shadow:0 16px 34px rgba(0,80,255,.18)}
.admin-template .admin-coupon-preview span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;opacity:.78}.admin-template .admin-coupon-preview strong{display:block;font-size:28px;letter-spacing:-.03em;margin:6px 0}.admin-template .admin-coupon-preview em{font-style:normal;font-weight:900}
.admin-template .admin-radio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.admin-template .admin-radio-card input{display:none}.admin-template .admin-radio-card span{display:grid;place-items:center;min-height:46px;border-radius:16px;border:1px solid rgba(11,31,53,.1);font-size:13px;font-weight:900;color:#344054;background:#fff}
.admin-template .admin-radio-card input:checked+span{border-color:var(--ac);background:rgba(0,80,255,.08);color:var(--ac)}
.admin-template .admin-customers-toolbar{
  display:grid;
  gap:12px;
}
.admin-template .admin-toolbar-copy{
  display:grid;
  gap:4px;
}
.admin-template .admin-toolbar-copy strong{
  font-family:"Sora",sans-serif;
  font-size:18px;
  color:var(--t);
}
.admin-template .admin-toolbar-copy span{
  color:#667085;
  font-size:12px;
  line-height:1.5;
}
.admin-template .admin-customers-filters{
  grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(150px,1fr));
}
.admin-template .admin-customers-filters input{
  min-height:44px;
}
.admin-template .admin-customer-card{display:grid;grid-template-columns:52px minmax(0,1fr) minmax(214px,max-content);gap:14px;align-items:center;cursor:pointer;transition:.2s ease}
.admin-template .admin-customer-card:hover,.admin-template .admin-customer-card.is-selected{border-color:rgba(0,80,255,.24);box-shadow:0 16px 32px rgba(0,80,255,.09)}
.admin-template .admin-customer-avatar{
  width:52px;height:52px;border-radius:18px;
  background:linear-gradient(180deg,rgba(0,80,255,.12),rgba(0,80,255,.05));
  border:1px solid rgba(0,80,255,.12);
  display:grid;place-items:center;color:var(--ac);font-weight:950;letter-spacing:-.04em;
  box-shadow:0 10px 20px rgba(15,23,42,.06)
}
.admin-template .admin-customer-avatar.big{
  width:72px;height:72px;border-radius:24px;font-size:24px;
  background:linear-gradient(180deg,rgba(0,80,255,.13),rgba(255,255,255,.9));
}
.admin-template .admin-customer-card strong{display:block;color:var(--t);font-size:14px;line-height:1.2}
.admin-template .admin-customer-card span,.admin-template .admin-customer-card small{display:block;color:#667085;font-size:12px;line-height:1.45}
.admin-template .admin-customer-copy{display:grid;gap:2px;min-width:0}
.admin-template .admin-customer-copy strong,
.admin-template .admin-customer-contact,
.admin-template .admin-customer-copy small{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.admin-template .admin-customer-badges{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-end;
  align-self:stretch;
  gap:8px;
  min-width:0;
  padding-block:4px;
}
.admin-template .admin-customer-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px 8px;
  justify-content:flex-end;
  align-items:center;
  max-width:100%;
}
.admin-template .admin-customer-badges > *{
  width:max-content;
  align-self:flex-end;
}
.admin-template .admin-customer-badges .pill,
.admin-template .admin-customer-badges .small-btn{
  min-height:30px;
  border-radius:999px;
  white-space:nowrap;
}
.admin-template .admin-customer-badges .pill,
.admin-template .admin-detail-head-badges .pill{
  display:inline-grid;
  place-items:center;
  font-size:11px;
  font-weight:850;
  line-height:1;
  padding:0 11px;
  letter-spacing:.03em;
  min-height:30px;
}
.admin-template .admin-customer-badges .pill.info,
.admin-template .admin-detail-head-badges .pill.info{
  background:rgba(0,80,255,.08);
  color:var(--ac);
  border:1px solid rgba(0,80,255,.12);
}
.admin-template .admin-customer-badges .pill.success,
.admin-template .admin-detail-head-badges .pill.success{
  background:rgba(18,183,106,.1);
  color:#027a48;
  border:1px solid rgba(18,183,106,.12);
}
.admin-template .admin-customer-badges .pill.warning,
.admin-template .admin-detail-head-badges .pill.warning{
  background:rgba(247,144,9,.12);
  color:#b54708;
  border:1px solid rgba(247,144,9,.14);
}
.admin-template .admin-customer-badges .small-btn{
  padding:0 14px;
  font-size:12px;
  font-weight:850;
  min-height:42px;
}
.admin-template .admin-customer-card{
  padding:14px;
  border-radius:20px;
  background:linear-gradient(180deg,#fff,rgba(248,251,255,.86));
}
.admin-template .admin-customer-detail{
  display:flex;
  flex-direction:column;
  gap:0;
  height:100%;
  max-height:calc(100vh - 32px);
  overflow:hidden;
}
.admin-template .admin-customer-detail-head{
  position:sticky;
  top:0;
  z-index:6;
  padding:18px 22px 16px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.92));
  border-bottom:1px solid rgba(11,31,53,.08);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.admin-template .admin-customer-detail-body{
  display:grid;
  gap:16px;
  padding:22px;
  overflow:auto;
  min-height:0;
}
.admin-template .admin-detail-head-badges{
  margin-top:2px;
}
.admin-template .admin-detail-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.admin-template .admin-detail-head{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}
.admin-template .admin-detail-head-copy{
  display:grid;
  gap:6px;
  min-width:0;
}
.admin-template .admin-detail-head-copy h3{
  margin:0;
  font-size:24px;
  line-height:1.1;
}
.admin-template .admin-detail-head-copy p{
  margin:0;
  color:#667085;
  font-size:13px;
  line-height:1.45;
}
.admin-template .admin-detail-head-badges{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.admin-template .admin-customer-metrics{
  margin-top:12px;
}
.admin-template .admin-form-section{
  display:grid;
  gap:4px;
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(11,31,53,.08);
}
.admin-template .admin-form-section strong{
  font-size:14px;
  color:var(--t);
  font-family:"Sora",sans-serif;
}
.admin-template .admin-form-section span{
  color:#667085;
  font-size:12px;
  line-height:1.45;
}
.admin-template .admin-customer-detail .admin-form{
  margin-top:14px;
}
.admin-template .admin-customer-detail .form-actions{
  margin-top:16px;
}
.admin-template .primary-btn,
.admin-template .secondary-btn,
.admin-template .ghost-btn,
.admin-template .danger-btn{
  border:0;
  min-height:46px;
  border-radius:15px;
  padding:0 18px;
  font-weight:900;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, color .2s ease, opacity .2s ease;
  white-space:nowrap;
  line-height:1;
  font-size:13px;
}
.admin-template .primary-btn{
  background:linear-gradient(135deg,var(--ac),#2f73ff);
  color:#fff;
  box-shadow:0 18px 35px rgba(0,80,255,.22);
}
.admin-template .secondary-btn{
  background:rgba(0,80,255,.09);
  color:var(--ac);
}
.admin-template .ghost-btn{
  background:#fff;
  color:var(--t);
  border:1px solid rgba(11,31,53,.1);
  box-shadow:0 6px 16px rgba(15,23,42,.04);
}
.admin-template .danger-btn{
  background:rgba(240,68,56,.09);
  color:#f04438;
  border:1px solid rgba(240,68,56,.14);
}
.admin-template .primary-btn:hover,
.admin-template .secondary-btn:hover,
.admin-template .ghost-btn:hover,
.admin-template .danger-btn:hover{
  transform:translateY(-2px);
}
.admin-template .primary-btn:disabled,
.admin-template .secondary-btn:disabled,
.admin-template .ghost-btn:disabled,
.admin-template .danger-btn:disabled{
  opacity:.55;
  cursor:not-allowed;
  transform:none;
  box-shadow:none;
}
.admin-template .admin-customer-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-radius:20px;
  border:1px solid rgba(11,31,53,.08);
  background:linear-gradient(180deg,rgba(249,251,255,.92),rgba(255,255,255,.98));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.admin-template .admin-customer-actions > *{
  min-height:46px;
}
.admin-template .admin-customer-actions .primary-btn{
  min-width:160px;
}
.admin-template .admin-customer-actions .danger-btn{
  margin-left:auto;
}
.admin-template .admin-customer-detail .admin-activity-box{margin-top:0}
.admin-template .admin-customer-row .admin-line-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.admin-template .admin-activity-box{padding:14px;border-radius:18px;border:1px solid rgba(11,31,53,.08);background:#f8fbff}.admin-template .admin-activity-box p{color:#667085;font-size:13px;margin-top:4px}
.admin-template .admin-config-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.admin-template .admin-config-tabs button{min-height:40px;border-radius:999px;border:1px solid rgba(11,31,53,.1);background:#fff;color:#344054;font-weight:900;padding:0 14px}
.admin-template .admin-config-tabs button.active{background:var(--ac);border-color:var(--ac);color:#fff;box-shadow:0 12px 24px rgba(0,80,255,.16)}
.admin-template .admin-header-preview{display:flex;align-items:center;gap:14px;min-height:72px;padding:14px;border-radius:18px;border:1px solid rgba(11,31,53,.08);background:#fff}
.admin-template .admin-header-preview img{max-width:170px;max-height:42px}.admin-template .admin-header-preview span{width:36px;height:36px;border-radius:13px;box-shadow:0 10px 18px rgba(15,23,42,.12)}
.admin-template .admin-config-list{display:grid;gap:10px}
.admin-template .admin-config-row{display:grid;grid-template-columns:44px 80px minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px;border-radius:18px;border:1px solid rgba(11,31,53,.08);background:#fff}
.admin-template .admin-config-row.wide{grid-template-columns:58px minmax(140px,1fr) minmax(170px,1.2fr) 92px 100px auto}
.admin-template .admin-config-row input{min-height:40px;border:1px solid rgba(11,31,53,.08);border-radius:12px;padding:0 10px;outline:0}
.admin-template .admin-config-row>div:last-child{display:flex;gap:5px}.admin-template .admin-config-emoji{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:#f3f7ff;font-size:20px}
.admin-template .admin-sparkline{width:100%;height:96px;color:var(--ac);margin-top:10px}
.admin-template .admin-insight-card{display:grid;gap:6px;margin-bottom:12px}.admin-template .admin-insight-card strong{font-size:16px;color:var(--t)}.admin-template .admin-insight-card span{font-size:12px;color:#667085}
.admin-template .admin-quick-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}

/* Admin polish pass — compact, liquid, cleaner hierarchy */
.admin-template .dashboard-grid{display:grid;gap:24px;align-items:start}
.admin-template .admin-editor-grid{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:26px}
.admin-template .admin-overview-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:22px}
.admin-template .admin-overview-grid > *{min-height:0;align-self:stretch}
.admin-template .admin-brand{
  display:grid;gap:0;padding:10px 12px 14px;border-radius:24px;text-align:left;
  background:transparent;
  border:0;box-shadow:none
}
.admin-template .admin-sidebar-logo{
  width:190px;max-width:100%;height:auto;display:block;
  background:transparent;border:0;box-shadow:none
}
.admin-template .admin-stats{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:18px}
.admin-template .admin-stat{
  min-height:106px;padding:13px 12px;border-radius:20px;align-content:start;gap:9px;
  background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(248,251,255,.72))!important;
  border-color:rgba(255,255,255,.78);box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 12px 26px rgba(15,23,42,.055)
}
.admin-template .admin-stat::after{width:58px;height:58px;right:-20px;bottom:-18px}
.admin-template .admin-stat-label{
  width:max-content;max-width:100%;display:inline-flex;align-items:center;gap:6px;
  min-height:27px;padding:0 10px;border-radius:999px;
  background:linear-gradient(135deg,rgba(0,80,255,.12),rgba(255,255,255,.72));
  border:1px solid rgba(0,80,255,.12);color:var(--ac);
  font-size:10px;font-weight:950;letter-spacing:.07em;text-transform:uppercase;
  white-space:nowrap
}
.admin-template .admin-stat-label span{font-size:13px;line-height:1}
.admin-template .admin-stat strong{font-size:22px;margin-top:0;letter-spacing:-.045em}
.admin-template .admin-stat small{font-size:10.5px;margin-top:0;line-height:1.35}
.admin-template .admin-toolbar{
  border-radius:24px;border-color:rgba(255,255,255,.72);
  background:linear-gradient(135deg,rgba(255,255,255,.76),rgba(244,248,255,.58));
  backdrop-filter:blur(18px) saturate(1.15);-webkit-backdrop-filter:blur(18px) saturate(1.15);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 16px 34px rgba(15,23,42,.06)
}
.admin-template .admin-filter-grid{gap:11px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.admin-template .admin-filter-grid select,.admin-template .admin-filter-grid input,.admin-template .admin-bulkbar select{
  min-height:44px;border-radius:999px;background:rgba(255,255,255,.88);
  border-color:rgba(0,80,255,.14);box-shadow:0 7px 18px rgba(15,23,42,.04);
  padding:0 30px 0 16px;font-size:12.5px;line-height:1.15;white-space:normal;text-align:left
}
.admin-template .admin-filter-grid select,
.admin-template .admin-bulkbar select{
  appearance:none;-webkit-appearance:none;-moz-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M3 4.5L6 7.5L9 4.5' stroke='%231E293B' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 12px center;
  background-size:11px 11px;
  padding-right:34px;
}
.admin-template .admin-shortcuts .secondary-btn,
.admin-template #adminRefreshButton,
.admin-template #adminLogoutButton{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:46px;
  line-height:1.1;
}
.admin-template .admin-shortcuts .secondary-btn{
  justify-content:flex-start;
  text-align:left;
}
.admin-template .admin-shortcuts .secondary-btn svg{align-self:center}
.admin-template .admin-sidebar-logo{
  filter:none;
}
.admin-template .admin-bulkbar{justify-content:flex-start}
.admin-template .admin-bulkbar .small-btn,.admin-template .admin-toolbar .small-btn{
  min-height:44px;border-radius:999px;padding:0 16px;font-weight:900
}
.admin-template .field-help{display:block;margin-top:7px;color:#667085;font-size:11.5px;line-height:1.45}

body.admin-active{overflow:hidden}
body.admin-active .admin-template,
body.admin-active .admin-template .admin-shell,
body.admin-active .admin-template .admin-layout{
  height:100dvh;
  overflow:hidden;
}
body.admin-active .admin-template .dashboard-main{
  height:100dvh;
  overflow-y:auto;
  padding-bottom:56px;
  scrollbar-gutter:stable;
}
.admin-template #admin-section-products .admin-editor-grid,
.admin-template #admin-section-customers .admin-editor-grid{
  grid-template-columns:minmax(0,1fr);
}
.admin-template #admin-section-products .admin-products-panel,
.admin-template #admin-section-customers .admin-customers-panel{
  min-width:0;
}
.admin-template #admin-section-products .admin-product-grid{
  grid-template-columns:repeat(auto-fill,minmax(286px,1fr));
}
#adminShell.product-drawer-open::before,
#adminShell.customer-drawer-open::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:510;
  background:rgba(15,23,42,.34);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.admin-template .admin-product-drawer,
.admin-template .admin-customer-drawer{
  position:fixed;
  top:16px;
  right:16px;
  bottom:16px;
  z-index:520;
  width:min(780px,calc(100vw - 32px));
  overflow:auto;
  display:block;
  border-radius:32px;
  border:1px solid rgba(255,255,255,.68);
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(246,249,255,.94));
  box-shadow:0 40px 110px rgba(15,23,42,.28);
  transform:translateX(calc(100% + 40px));
  opacity:.98;
  transition:transform .36s cubic-bezier(.16,1,.3,1), opacity .24s ease;
  will-change:transform;
}
#adminShell.product-drawer-open .admin-product-drawer,
#adminShell.customer-drawer-open .admin-customer-drawer{
  transform:translateX(0);
}
.admin-template .admin-product-drawer>.card-head,
.admin-template .admin-customer-drawer>.card-head{
  position:sticky;
  top:0;
  z-index:4;
  padding:18px 18px 14px;
  margin:-16px -16px 16px;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(11,31,53,.08);
  border-radius:32px 32px 0 0;
}
.admin-template .admin-customer-list{
  grid-template-columns:repeat(auto-fit,minmax(420px,1fr));
}
.admin-template .admin-customer-card{
  min-height:112px;
}
.admin-template .admin-customer-drawer{
  overflow:hidden;
}
@media(max-width:1100px){
  .admin-template .admin-customers-filters{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .admin-template .admin-customer-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:720px){
  .admin-template .admin-customers-filters{
    grid-template-columns:1fr;
  }
  .admin-template .admin-customer-list{
    grid-template-columns:1fr;
  }
  .admin-template .admin-detail-top{
    flex-direction:column;
  }
  .admin-template .admin-detail-head{
    align-items:flex-start;
  }
  .admin-template .admin-customer-card{
    grid-template-columns:44px minmax(0,1fr);
    gap:12px;
  }
  .admin-template .admin-customer-badges{
    grid-column:1 / -1;
    align-items:flex-start;
    justify-content:flex-start;
    align-self:auto;
    padding-block:0;
  }
  .admin-template .admin-customer-tags{
    justify-content:flex-start;
  }
  .admin-template .admin-customer-badges > *{
    align-self:flex-start;
    width:auto;
  }
  .admin-template .admin-customer-badges .small-btn{
    width:100%;
    min-width:0;
  }
  .admin-template .admin-customer-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .admin-template .admin-customer-actions .danger-btn{
    grid-column:1 / -1;
    margin-left:0;
  }
  .admin-template .admin-customer-detail-head{
    padding:16px 16px 14px;
  }
  .admin-template .admin-customer-detail-body{
    padding:16px;
  }
  .admin-template .admin-banner-link-row{
    grid-template-columns:72px minmax(0,1fr);
  }
  .admin-template .admin-banner-link-row select{
    grid-column:1 / -1;
    width:100%;
  }
}

@media(max-width:720px){
  body.admin-active .admin-template .dashboard-main{
    padding:18px 14px 72px;
  }
  .admin-template .admin-product-drawer,
  .admin-template .admin-customer-drawer{
    inset:0;
    width:100vw;
    border-radius:28px 28px 0 0;
  }
  .admin-template .admin-product-drawer>.card-head,
  .admin-template .admin-customer-drawer>.card-head{
    border-radius:28px 28px 0 0;
  }
}
.admin-template .admin-category-blueprint{
  grid-template-columns:44px minmax(180px,.9fr) minmax(0,1.2fr);
  gap:14px;align-items:flex-start;padding:14px 16px;border-radius:22px
}
.admin-template .admin-category-blueprint strong{display:block;font-family:"Sora",sans-serif;font-size:16px;color:var(--t)}
.admin-template .admin-category-blueprint small{display:block;margin-top:4px;color:#667085;font-size:12px;line-height:1.5}
.admin-template .admin-category-tags{display:flex;flex-wrap:wrap;gap:8px;align-self:center}
.admin-template .admin-category-tags span{
  display:inline-flex;align-items:center;min-height:28px;padding:0 11px;border-radius:999px;
  background:rgba(255,255,255,.86);border:1px solid rgba(11,31,53,.08);color:#344054;font-size:11px;font-weight:850
}
.admin-template .admin-config-note{
  display:grid;gap:5px;margin-top:12px;padding:14px 16px;border-radius:20px;
  background:linear-gradient(135deg,rgba(0,80,255,.08),rgba(255,255,255,.9));
  border:1px solid rgba(0,80,255,.12)
}
.admin-template .admin-config-note strong{font-family:"Sora",sans-serif;font-size:15px;color:var(--t)}
.admin-template .admin-config-note span{font-size:12px;color:#667085;line-height:1.5}
.admin-template .content-card{padding:16px;border-radius:26px}
.admin-template .card-head{margin-bottom:8px}
.admin-template .admin-insight-card{
  padding:14px;border-radius:24px;background:
    radial-gradient(circle at 10% 0%,rgba(0,80,255,.12),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.9),rgba(246,249,255,.72));
  border-color:rgba(255,255,255,.78);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 16px 34px rgba(15,23,42,.065)
}
.admin-template .admin-insight-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.admin-template .admin-insight-head strong{display:block;font-family:"Sora",sans-serif;font-size:28px;letter-spacing:-.05em;color:var(--t)}
.admin-template .admin-sales-pills{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.admin-template .admin-sales-overview{
  height:100%;
  display:grid;
  grid-template-rows:auto 1fr auto;
  gap:8px;
}
.admin-template .admin-sales-compact{
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  gap:8px;
  height:100%;
  min-height:0;
}
.admin-template .admin-sales-compact .sparkline-wrap{
  margin-top:0;
  height:100%;
  min-height:148px;
  overflow:hidden;
  padding:2px 2px 4px;
  margin-bottom:0;
}
.admin-template .admin-sales-more{
  display:flex;
  justify-content:flex-end;
  margin-top:0;
}
.admin-template .admin-sales-more .small-btn{
  min-height:40px;
  padding:0 14px;
  border-radius:999px;
}
.admin-template .admin-sale-line{
  padding:7px 9px;
  min-height:0;
  border-radius:16px;
  cursor:pointer;
}
.admin-template .admin-sale-preview{
  padding:5px 6px;
  gap:7px;
  margin-bottom:6px;
}
.admin-template .admin-sale-preview img{
  width:36px;
  height:36px;
  border-radius:10px;
}
.admin-template .admin-sale-preview strong{font-size:11.5px}
.admin-template .admin-sale-preview span{display:flex;align-items:center;font-size:9.5px}
.admin-template .admin-line-head strong{font-size:12px}
.admin-template .admin-line-meta{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-template .admin-recent-sales{
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  gap:8px;
  height:100%;
  min-height:0;
}
.admin-template .admin-recent-sales-list{
  display:grid;
  gap:6px;
  overflow:auto;
  max-height:100%;
  min-height:0;
  padding-right:2px;
}
.admin-template .admin-recent-sales-list .admin-sale-line{
  min-height:0;
}
.admin-template .admin-recent-sales-footer{
  display:flex;
  justify-content:center;
  margin-top:auto;
}
.admin-template .admin-recent-sales-footer .small-btn{
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
}
.admin-template .admin-day-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:8px}
.admin-template .admin-day-strip span{display:grid;place-items:center;gap:2px;min-height:42px;border-radius:14px;background:rgba(255,255,255,.74);border:1px solid rgba(11,31,53,.07)}
.admin-template .admin-day-strip strong{font-size:10px;text-transform:uppercase;color:#667085}
.admin-template .admin-day-strip em{font-style:normal;font-size:13px;font-weight:950;color:var(--t)}
.admin-template .admin-pending-strip{
  display:grid;gap:4px;padding:12px 14px;border-radius:18px;background:rgba(247,144,9,.1);
  border:1px solid rgba(247,144,9,.18);color:#b54708;font-size:12px;font-weight:850
}
.admin-template .admin-pending-strip span{color:#667085;line-height:1.45}
.admin-template .admin-line-card{padding:13px 14px;border-radius:18px}
.admin-template .admin-sale-preview{
  display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:10px;align-items:center;
  padding:8px;border-radius:16px;background:rgba(255,255,255,.78);border:1px solid rgba(11,31,53,.07);margin-bottom:9px
}
.admin-template .admin-sale-preview img{width:46px;height:46px;object-fit:contain;border-radius:14px;background:#f4f7ff}
.admin-template .admin-sale-status{
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  justify-self:end;
  align-self:center;
  width:fit-content;
  min-width:128px;
  height:34px;
  padding:0 16px;
  margin:0;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  letter-spacing:0;
  line-height:1;
  text-align:center;
  white-space:nowrap;
  vertical-align:middle;
  box-shadow:0 8px 16px rgba(0,80,255,.14);
}
.admin-template .admin-sale-status.success{background:rgba(18,183,106,.1);color:#027a48}
.admin-template .admin-sale-status.info{background:rgba(0,80,255,.09);color:var(--ac)}
.admin-template .admin-sale-status.warning{background:rgba(247,144,9,.12);color:#b54708}
.admin-template .pill.admin-sale-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:128px;
  height:34px;
  padding:0 16px;
  line-height:1;
  margin:0;
}
.admin-template .admin-sale-preview strong{display:block;font-size:13px;color:var(--t);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-template .admin-sale-preview span{display:flex;font-size:11px;color:#667085;font-weight:800;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;align-items:center}
.admin-template .admin-sale-line .admin-sale-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px;font-size:12px;color:#667085}
.admin-template .admin-sale-line .admin-sale-foot strong{font-size:16px;color:var(--t)}
.admin-template .admin-option-toggles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}
.admin-template .admin-feature-toggle{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;
  min-height:74px;padding:12px;border-radius:19px;border:1px solid rgba(0,80,255,.12);
  background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(243,247,255,.72));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 22px rgba(15,23,42,.045);
  cursor:pointer;transition:.2s ease
}
.admin-template .admin-feature-toggle:hover{transform:translateY(-1px);border-color:rgba(0,80,255,.24)}
.admin-template .admin-feature-toggle input{width:20px;height:20px;accent-color:var(--ac)}
.admin-template .admin-feature-toggle strong{display:block;color:var(--t);font-size:13px}
.admin-template .admin-feature-toggle small{display:block;color:#667085;font-size:11.5px;line-height:1.4;margin-top:2px}
.admin-template .admin-toggle-block[hidden]{display:none!important}
.admin-template .admin-sticky-actions{
  display:grid;grid-template-columns:1fr 1fr 1fr 1.25fr;gap:9px;
  padding:12px;border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(238,246,255,.68));
  border:1px solid rgba(255,255,255,.78);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 18px 38px rgba(15,23,42,.1)
}
.admin-template .admin-sticky-actions button{
  min-height:46px;border-radius:15px;font-weight:950;box-shadow:0 9px 20px rgba(15,23,42,.06)
}
.admin-template .admin-sticky-actions .ghost-btn{background:rgba(255,255,255,.94);border:1px solid rgba(0,80,255,.13);color:#253858}
.admin-template .admin-sticky-actions .primary-btn{background:linear-gradient(135deg,var(--ac),#3679ff);box-shadow:0 14px 28px rgba(0,80,255,.2)}
.admin-template .admin-sticky-actions .danger-btn{background:rgba(240,68,56,.1);border:1px solid rgba(240,68,56,.18)}
.admin-template .admin-order-list,.admin-template .admin-customer-list{gap:10px}
.admin-template .admin-order-card,.admin-template .admin-customer-card,.admin-template .admin-coupon-card{padding:13px;border-radius:20px}
.admin-template .admin-order-main{grid-template-columns:48px minmax(0,1fr) auto;gap:12px}
.admin-template .admin-order-thumb{width:48px;height:48px;border-radius:16px}
.admin-template .admin-order-thumb.is-product{
  position:relative;overflow:visible;background:#fff;border:1px solid rgba(0,80,255,.12);
  box-shadow:0 12px 24px rgba(15,23,42,.08)
}
.admin-template .admin-order-thumb.is-product img{
  width:100%;height:100%;object-fit:contain;border-radius:inherit;background:linear-gradient(135deg,#f7fbff,#eef5ff);display:block
}
.admin-template .admin-order-thumb.is-product span{
  position:absolute;right:-8px;bottom:-8px;min-width:25px;height:25px;padding:0 7px;border-radius:999px;
  display:grid;place-items:center;background:linear-gradient(135deg,var(--ac),#69a2ff);color:#fff;
  font-size:10px;font-weight:950;box-shadow:0 9px 18px rgba(0,80,255,.22)
}
.admin-template .admin-order-product{font-size:14px;line-height:1.25;margin:2px 0 2px;color:var(--t);letter-spacing:-.02em}
.admin-template .admin-order-items-preview{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:9px
}
.admin-template .admin-order-items-preview span{
  display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:7px;align-items:center;
  min-height:42px;padding:6px;border-radius:14px;background:rgba(255,255,255,.78);
  border:1px solid rgba(11,31,53,.07)
}
.admin-template .admin-order-items-preview img{width:28px;height:28px;object-fit:contain;border-radius:10px;background:#f4f7ff;grid-row:1 / span 2}
.admin-template .admin-order-items-preview em{font-style:normal;font-size:11px;font-weight:900;color:var(--t);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-template .admin-order-items-preview small{font-size:10px;font-weight:800;color:#667085;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-template .admin-order-total strong{font-size:16px}
.admin-template .admin-timeline{margin-top:8px}

/* Sidebars: fixed/sticky presence without an independent scroll area */
.account-template .sidebar,
.admin-template .admin-sidebar,
body.admin-active .admin-template .admin-sidebar{
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  overflow-x:visible!important;
  overscroll-behavior:auto!important;
  scrollbar-gutter:auto!important;
}
.admin-template .admin-customer-card{grid-template-columns:44px minmax(0,1fr) auto;gap:10px}
.admin-template .admin-customer-avatar{width:44px;height:44px;border-radius:15px}
.admin-template .admin-customer-card strong{font-size:14px}
.admin-template .admin-coupon-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.admin-template .admin-coupon-card{min-height:auto}
.admin-template .admin-coupon-code{font-size:17px;margin-bottom:8px}
.admin-template .admin-coupon-preview{padding:15px;border-radius:20px}
.admin-template .admin-coupon-preview strong{font-size:23px}

@media(max-width:1180px){
  .admin-template .admin-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .admin-template .admin-overview-grid,.admin-template .admin-editor-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .admin-template .admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-template .admin-day-strip{grid-template-columns:repeat(4,1fr)}
  .admin-template .admin-insight-head{display:grid}
}

@media(max-width:980px){
  .admin-template .admin-filter-grid,.admin-template .admin-product-grid,.admin-template .admin-coupon-grid{grid-template-columns:1fr}
  .admin-template .admin-toolbar-split{grid-template-columns:1fr}
  .admin-template .admin-order-main,.admin-template .admin-customer-card{grid-template-columns:1fr}
  .admin-template .admin-order-total,.admin-template .admin-customer-badges{justify-items:stretch}
  .admin-template .admin-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-template .admin-config-row,.admin-template .admin-config-row.wide{grid-template-columns:1fr}
  .admin-template .admin-url-adder,.admin-template .admin-radio-grid{grid-template-columns:1fr}
  .admin-template .admin-option-toggles,.admin-template .admin-sticky-actions{grid-template-columns:1fr}
  .admin-template .admin-product-tile-meta{justify-content:stretch}
  .admin-template .admin-product-tile-meta .pill{flex:1 1 0;min-width:0}
  .admin-template .admin-sales-more{justify-content:stretch}
  .admin-template .admin-sales-more .small-btn{width:100%}
}
@media(max-width:640px){
  .admin-template .admin-product-tile-meta{gap:8px}
  .admin-template .admin-product-tile-meta .pill{
    flex:1 1 calc(50% - 4px);
    height:32px;
    padding:0 12px;
  }
  .admin-template .admin-insight-head{
    gap:10px;
  }
  .admin-template .admin-insight-head strong{font-size:24px}
  .admin-template .admin-sale-line{padding:7px 9px}
  .admin-template .admin-sale-preview{padding:4px 5px;gap:6px}
  .admin-template .admin-sale-preview img{width:34px;height:34px}
}

@media(max-width:520px){
  .admin-template .admin-product-tile{grid-template-columns:64px minmax(0,1fr);padding:10px}
  .admin-template .admin-product-tile img{width:64px;height:64px}
  .admin-template .admin-image-grid{grid-template-columns:1fr}
  .admin-template .admin-sticky-actions{position:static}
}

@media(max-height:780px){
  .auth-template-shell{max-height:calc(100vh - 12px);padding:0}
  .auth-template .auth-layout{padding:12px;gap:10px}
  .auth-template .form-zone{padding:0}
  .auth-template .form-card{padding:16px 18px 14px;border-radius:24px}
  .auth-template .form-head{margin-bottom:12px}
  .auth-template .form-head h1{font-size:28px}
  .auth-template .form-head p{font-size:12px;line-height:1.4}
  .auth-template .tab-switch{margin-bottom:14px}
  .auth-template .field-grid{gap:10px}
  .auth-template .field input,.auth-template .field select,.auth-template .field textarea{min-height:44px}
  .auth-template .form-row{margin:10px 0 12px}
  .auth-template .primary-btn,.auth-template .secondary-btn,.auth-template .ghost-btn,.auth-template .danger-btn{min-height:44px}
  .auth-template .mini-copy{margin-top:10px}
  #authRegisterForm .mini-copy{display:none}
  #authRegisterForm .register-grid{grid-template-columns:1fr;margin-top:8px !important;gap:10px}
}

@media(max-width:760px){
  #authModal .auth-template-shell{
    width:min(560px, calc(100vw - 20px));
    max-height:calc(100dvh - 20px);
    border-radius:28px;
  }
  #authModal .auth-template{
    border-radius:28px;
  }
  #authModal .auth-template .field input,
  #authModal .auth-template .field select,
  #authModal .auth-template .field textarea{
    font-size:16px;
  }
}

/* FAQ accordion */
.faq-item{border-bottom:1px solid var(--bd);padding:4px 0}
.faq-item:last-child{border-bottom:none}
.faq-q{
  font-weight:800;font-size:14px;color:var(--t);padding:12px 4px;cursor:pointer;
  list-style:none;display:flex;align-items:center;justify-content:space-between;gap:8px;
}
.faq-q::after{content:"﹀";font-size:12px;color:var(--t3);flex-shrink:0;transition:transform .2s}
details[open] .faq-q::after{transform:rotate(180deg)}
.faq-a{padding:0 4px 14px;font-size:13px;color:var(--t2);line-height:1.65}
.faq-a p{margin-bottom:8px}
.faq-a p:last-child{margin-bottom:0}
.faq-a ul,.faq-a ol{padding-left:18px;display:flex;flex-direction:column;gap:4px}

/* Orders modal specifics */
.orders-hint{font-size:13px;color:var(--t2);margin-bottom:14px;line-height:1.5}
.orders-form-row{display:flex;gap:8px;margin-bottom:10px}
.orders-form-row .fi{flex:1}
.orders-form-row .btnp{white-space:nowrap;flex-shrink:0;padding:13px 16px}
.orders-err{font-size:12px;color:var(--rd);padding:8px 12px;background:rgba(240,68,56,.08);border-radius:10px}
.orders-back-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.orders-back{background:none;border:none;color:var(--ac);font-size:12px;font-weight:700;cursor:pointer}
.orders-found{font-size:11px;color:var(--t3);font-weight:700}
.order-card-item{
  background:var(--sur2);border:1px solid var(--bd);border-radius:16px;
  padding:14px 16px;margin-bottom:10px;
}
.order-card-item:last-child{margin-bottom:0}
.ocit{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.ocnum{font-family:monospace;font-size:13px;font-weight:800;color:var(--t)}
.ocdate{font-size:11px;color:var(--t3)}
.ocst{font-size:12px;font-weight:800;margin-bottom:6px}
.ocmeta{display:flex;justify-content:space-between;font-size:12px;color:var(--t2);margin-bottom:4px}
.octot{font-weight:800;color:var(--t)}
.ocship{font-size:11px;color:var(--t3)}
/* Spin mobile size reduction */
@media(max-width:720px){
  .wheel-wrap{width:220px;height:220px}
  canvas#wheel{width:220px !important;height:220px !important}
  .wheel-pointer{top:-10px}
  .wheel-pointer-bar{width:12px;height:24px}
  .wheel-pointer-tip{border-left-width:6px;border-right-width:6px;border-top-width:8px}
}

@media(max-width:720px){
  input,textarea,select{font-size:16px}
  .logo-img{width:148px;height:48px}
  .mini-cart{display:none !important}
  .quick-wish,.cdc,.hmod-close,.gmod-close,.camod button,.scroll-btn{min-width:44px;min-height:44px}
  .pdp-cta-mobile{
    display:flex;align-items:center;gap:12px;
    position:fixed;left:0;right:0;bottom:0;z-index:var(--z-fixed);
    padding:12px 14px max(12px,env(safe-area-inset-bottom));
    background:rgba(255,255,255,.96);backdrop-filter:blur(18px);
    border-top:1px solid var(--bd);box-shadow:0 -18px 45px rgba(16,24,40,.12);
    transform:translateY(110%);transition:transform var(--dur-mid) var(--ease)
  }
  .pdp-cta-mobile.on{transform:translateY(0)}
  .pdp-cta-price{min-width:104px}
  .pdp-cta-price span{display:block;font-family:"Sora",sans-serif;font-weight:900;color:var(--t);font-size:17px}
  .pdp-cta-mobile .btnp{flex:1;min-height:50px}
  body.pdp-active{padding-bottom:88px}
  .bottom-nav{
    display:grid;grid-template-columns:repeat(5,1fr);
    position:fixed;left:0;right:0;bottom:0;z-index:calc(var(--z-fixed) - 1);
    background:rgba(255,255,255,.96);backdrop-filter:blur(20px);
    border-top:1px solid var(--bd);padding:6px 0 calc(6px + env(safe-area-inset-bottom));
    box-shadow:0 -12px 28px rgba(16,24,40,.08)
  }
  .bn-it{
    position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
    min-height:52px;color:var(--t2);font-size:10px;font-weight:850;cursor:pointer;
    transition:color var(--dur-fast) var(--ease)
  }
  .bn-it svg{width:22px;height:22px}
  .bn-it.active{color:var(--ac)}
  .bn-badge{
    position:absolute;top:2px;right:18px;min-width:17px;height:17px;padding:0 5px;border-radius:999px;
    background:var(--ac);color:#fff;font-size:10px;font-weight:900;display:flex;align-items:center;justify-content:center
  }
  body:not(.chk-active):not(.admin-active):not(.pdp-active){padding-bottom:72px}
  body.chk-active .bottom-nav,
  body.admin-active .bottom-nav,
  body.pdp-active .bottom-nav{display:none}
  .tcon{left:14px;right:14px;bottom:86px}
  .toast2{min-width:0;width:100%;transform:translateY(120%)}
  .toast2.sh{transform:translateY(0)}
}

/* Dashboard sidebar scroll reset — single page scroll, no nested sidebar scrollbar */
.account-template .sidebar,
.admin-template .admin-sidebar,
body.admin-active .admin-template .admin-sidebar{
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  overflow-x:visible!important;
  overscroll-behavior:auto!important;
  scrollbar-gutter:auto!important;
}

.trust-chip{border-color:rgba(0,80,255,.1);background:radial-gradient(circle at 100% 0%,rgba(0,80,255,.08),transparent 34%),linear-gradient(180deg,#fff 0%,#f8fbff 100%)}
.trust-chip::before{content:none}
.carousel-shell{padding:4px 0 12px;mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%)}
.carousel-shell::before,.carousel-shell::after{content:"";position:absolute;top:0;bottom:0;width:90px;z-index:2;pointer-events:none}
.carousel-shell::before{left:0;background:linear-gradient(90deg,var(--bg),rgba(246,248,252,0))}
.carousel-shell::after{right:0;background:linear-gradient(270deg,var(--bg),rgba(246,248,252,0))}
.review-carousel-track,.recent-carousel-track{animation-duration:56s;gap:18px}
.review-card,.recent-chip{box-shadow:0 16px 44px rgba(15,23,42,.08)}
.review-card:hover,.recent-chip:hover{box-shadow:0 26px 62px rgba(15,23,42,.12)}
.srow{mask-image:linear-gradient(90deg,transparent 0%,#000 5%,#000 95%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 5%,#000 95%,transparent 100%)}
#featuredGrid{grid-template-columns:repeat(5,minmax(0,1fr))}
.catpg-in{grid-template-columns:260px minmax(0,1fr)}
.fpanel{top:102px;max-height:calc(100dvh - 122px);overflow-y:auto;padding-right:4px;scrollbar-gutter:stable}
.fpanel,
.admin-template .admin-sidebar,
.admin-template .dashboard-main{
  scrollbar-width:thin;
  scrollbar-color:rgba(0,80,255,.16) transparent;
}
.fpanel::-webkit-scrollbar,.admin-template .admin-sidebar::-webkit-scrollbar,.admin-template .dashboard-main::-webkit-scrollbar{width:4px}
.fpanel::-webkit-scrollbar-track,.admin-template .admin-sidebar::-webkit-scrollbar-track,.admin-template .dashboard-main::-webkit-scrollbar-track{background:transparent}
.fpanel::-webkit-scrollbar-thumb,.admin-template .admin-sidebar::-webkit-scrollbar-thumb,.admin-template .dashboard-main::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,rgba(0,80,255,.14),rgba(0,80,255,.08));
  border-radius:999px;
  border:1px solid rgba(255,255,255,.5);
}
.fpanel::-webkit-scrollbar-thumb:hover,.admin-template .admin-sidebar::-webkit-scrollbar-thumb:hover,.admin-template .dashboard-main::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg,rgba(0,80,255,.24),rgba(0,80,255,.14));
}
.free-ship-bar small::after{content:" · Correo Argentino y Vía Cargo mantienen su costo salvo promo configurada."}
.gmod-backdrop{background:radial-gradient(circle at 50% 10%,rgba(94,144,255,.16),transparent 34%),rgba(5,10,24,.74);backdrop-filter:blur(22px) saturate(1.18);-webkit-backdrop-filter:blur(22px) saturate(1.18)}
.gmod-shell{width:min(1120px,calc(100vw - 24px))}
.gmod-stage{border:1px solid rgba(255,255,255,.14);background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.02));box-shadow:0 46px 130px rgba(0,0,0,.45)}
.gmod-img{object-fit:contain;background:rgba(255,255,255,.03)}
.gmod-nav{color:var(--ac);background:rgba(255,255,255,.86)}
.gthumb{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12)}
.pmm{position:relative;overflow:hidden;min-height:82px;align-items:center;border-radius:22px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 14px 32px rgba(15,23,42,.055)}
.pmm::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,80,255,.08),transparent 38%);opacity:0;transition:opacity .2s ease;pointer-events:none}
.pmm.on::after,.pmm:hover::after{opacity:1}
.pay-pill{border-radius:24px;border-color:rgba(0,80,255,.12);background:linear-gradient(180deg,#fff,#f6f9ff);box-shadow:0 18px 42px rgba(15,23,42,.07)}
.pay-pill-transfer{background:linear-gradient(180deg,#f1fff8,#fff)}
.cui-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.cui-opt span{border-radius:16px;min-height:46px}
.account-template #accountFavoritesList.favorites-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;align-items:stretch;justify-content:stretch}
.account-template .coupon-item-side{align-items:center;justify-items:center}
.account-template .coupon-item-side .small-btn{min-width:150px}
.account-template .coupon-code{justify-content:flex-start}
.admin-template .admin-order-detail-premium{display:grid;gap:14px;padding:16px;border-radius:24px;background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(0,80,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.admin-template .admin-order-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.admin-template .admin-detail-box{padding:14px;border-radius:18px;border:1px solid rgba(11,31,53,.08);background:#fff}
.admin-template .admin-detail-box span{display:block;color:var(--ac);font-size:10px;font-weight:950;letter-spacing:.09em;text-transform:uppercase;margin-bottom:6px}
.admin-template .admin-detail-box strong{display:block;color:var(--t);font-size:14px}
.admin-template .admin-detail-box small{display:block;color:#667085;font-size:12px;line-height:1.45;margin-top:5px}
.admin-template .admin-order-timeline-modern{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.admin-template .admin-order-timeline-modern span{display:grid;gap:6px;justify-items:center;color:#667085;font-size:11px;font-weight:850;text-align:center}
.admin-template .admin-order-timeline-modern i{width:100%;height:7px;border-radius:999px;background:#e8eef8}
.admin-template .admin-order-timeline-modern .done i{background:linear-gradient(90deg,var(--ac),#69a2ff);box-shadow:0 8px 18px rgba(0,80,255,.16)}
.admin-template .admin-order-detail-products{display:grid;gap:8px}
.admin-template .admin-order-detail-item{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px;border-radius:18px;background:#fff;border:1px solid rgba(11,31,53,.07)}
.admin-template .admin-order-detail-item img{width:54px;height:54px;object-fit:contain;border-radius:14px;background:#f4f7ff}
.admin-template .admin-order-detail-item strong{display:block;color:var(--t);font-size:13px}
.admin-template .admin-order-detail-item span{color:#667085;font-size:12px}
.admin-template .admin-order-detail-item em,.admin-template .admin-order-detail-total strong{font-style:normal;color:var(--t);font-weight:950}
.admin-template .admin-order-detail-total{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-radius:18px;background:rgba(0,80,255,.07);color:#667085;font-size:12px;font-weight:850}
.admin-template .order-details{margin-top:12px;padding-top:0;border-top:0}
.admin-template .order-summary{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  min-height:46px;padding:0 14px;border-radius:16px;cursor:pointer;list-style:none;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(246,250,255,.9));
  border:1px solid rgba(0,80,255,.1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 22px rgba(15,23,42,.04);
  color:var(--t);font-size:13px;font-weight:900;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease
}
.admin-template .order-summary:hover{transform:translateY(-1px);border-color:rgba(0,80,255,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.94),0 14px 28px rgba(15,23,42,.06)}
.admin-template .order-summary span:first-child{display:inline-flex;align-items:center;gap:8px}
.admin-template .order-summary span:first-child::before{
  content:"";width:8px;height:8px;border-radius:999px;background:linear-gradient(135deg,var(--ac),#69a2ff);box-shadow:0 0 0 5px rgba(0,80,255,.08)
}
.admin-template .order-summary-icon{
  width:24px;height:24px;display:grid;place-items:center;border-radius:50%;
  background:#eef4ff;color:var(--ac);font-size:14px;line-height:1;transition:transform .2s ease,background .2s ease
}
.admin-template .order-details[open] .order-summary{background:linear-gradient(180deg,#fff,#f7fbff);border-color:rgba(0,80,255,.16)}
.admin-template .order-details[open] .order-summary-icon{transform:rotate(180deg);background:#dfeaff}
.admin-template .order-details-body{display:grid;gap:10px;padding:12px 0 0}
body.admin-active .admin-template .admin-sidebar{height:calc(100dvh - 32px)!important;max-height:calc(100dvh - 32px)!important;overflow-y:auto!important;overflow-x:hidden!important;position:sticky!important;top:16px!important;overscroll-behavior:contain!important;scrollbar-gutter:stable!important}
body.admin-active .admin-template,body.admin-active .admin-template .admin-shell,body.admin-active .admin-template .admin-layout{height:100dvh;overflow:hidden}
body.admin-active .admin-template .dashboard-main{height:100dvh;overflow-y:auto;padding-bottom:56px;scrollbar-gutter:stable}
body.admin-active{overflow:hidden}

@media(max-width:1180px){#featuredGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){#featuredGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-template .admin-order-detail-grid{grid-template-columns:1fr}.admin-template .admin-order-timeline-modern{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.carousel-shell{mask-image:none;-webkit-mask-image:none}.carousel-shell::before,.carousel-shell::after{display:none}.catpg-in{grid-template-columns:1fr}.fpanel{max-height:none;overflow:visible}#featuredGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cui-list{grid-template-columns:1fr}.admin-template .admin-order-detail-item{grid-template-columns:48px minmax(0,1fr)}.admin-template .admin-order-detail-item em{grid-column:2}.pp-grid{grid-template-columns:1fr}.pp-actions{flex-direction:column}.pp-actions .btn-sec,.pp-actions .btnp{width:100%}#paymentCard .pmm{grid-template-columns:18px 28px minmax(0,1fr) auto;gap:10px;padding:14px}#paymentCard .pmbdgs{justify-self:end;margin-top:0}.cui-opt{grid-template-columns:1fr;align-items:start}.cui-tag{margin-left:0}}
.cgrid-home .ccard{min-height:138px;padding:16px 16px 15px}
.cgrid-home .cc-subcats{display:none}
.cgrid-home .cc{font-size:12px;line-height:1.45;max-width:34ch}
.cgrid-home .cn{font-size:20px}
@media(max-width:720px){.cgrid-home{grid-template-columns:1fr 1fr}.cgrid-home .ccard{min-height:124px}.cgrid-home .cc{display:none}}
button.pdmimg{width:100%;border:1px solid var(--bd);padding:0;color:inherit;cursor:zoom-in}
button.pdmimg:focus-visible{outline:3px solid var(--ac);outline-offset:3px}

/* Home polish */
#pg-home .hero{
  width:min(1200px,100%);
  aspect-ratio:1580 / 450;
  height:auto;
  margin:12px auto 0;
  padding:0 0 20px;
}
#pg-home .slide{
  inset:0 0 20px 0;
  border-radius:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
#pg-home .hero-banner-frame{
  padding:0;
  border-radius:0;
  overflow:hidden;
}
#pg-home .hero-banner-frame:focus-visible{
  border-radius:0;
}
#pg-home .hero-banner-img{
  width:calc(100% + 2px);
  height:calc(100% + 2px);
  margin:-1px;
  border-radius:0;
  object-fit:cover;
  object-position:center;
  background:transparent;
}
#pg-home .sec{
  padding:52px 20px;
}
#pg-home .quick-shop-section{padding-top:20px}
#pg-home .sec-hd{
  margin-bottom:22px;
}
#pg-home .sec-hd > div{
  min-width:0;
  max-width:760px;
}
#pg-home .sec-ti{
  margin-bottom:4px;
}
#pg-home .sec-su{
  max-width:64ch;
  line-height:1.55;
}
#pg-home .row-between{align-items:flex-end}
#pg-home .trust-section,#pg-home .reviews-section,#pg-home .benefits-section{
  padding-top:38px;
  padding-bottom:42px;
}
#pg-home .trust-strip,
#pg-home .category-showcase{
  gap:16px;
}
#pg-home .quick-shop-grid,
#pg-home .pgrid-home{
  gap:14px;
}
#pg-home .cgrid-home{
  gap:12px;
}
#pg-home .pgrid-home .pcard{
  min-height:164px;
}
#pg-home .trust-chip{
  min-height:150px;
  padding:17px;
}
#pg-home .trust-chip strong{font-size:20px}
#pg-home .trust-chip span{font-size:12.5px}
#pg-home .review-grid{gap:18px}
#pg-home .review-card{
  padding:22px;
}
#pg-home .review-card p{
  font-size:13px;
  line-height:1.68;
}
#pg-home .recent-purchases{
  padding:4px 2px 8px;
}
#pg-home .recent-carousel-track .recent-chip{
  width:min(250px,72vw);
}
#pg-home .recent-chip{
  padding:14px;
}
#pg-home .trow{
  gap:16px;
  margin-top:16px;
}
#pg-home .tc{
  min-height:154px;
  padding:20px;
}
#pg-home .quick-card{
  min-height:100%;
}
#pg-home .quick-shop-grid .quick-card{
  min-height:100%;
}

@media(max-width:720px){
  #pg-home .hero{
    width:100%;
    aspect-ratio:1580 / 450;
    height:auto;
    margin:4px auto 0;
    padding:0 0 16px;
  }
  #pg-home .slide{
    inset:0 0 16px 0;
  }
  #pg-home .sec{
    padding:38px 14px;
  }
  #pg-home .sec-hd{
    margin-bottom:18px;
  }
  #pg-home .sec-hd.row-between{
    align-items:flex-start;
  }
  #pg-home .sec-hd .va{
    margin-top:4px;
  }
  #pg-home .trust-section,#pg-home .reviews-section,#pg-home .benefits-section{
    padding-top:34px;
    padding-bottom:36px;
  }
  #pg-home .review-grid{
    grid-template-columns:1fr;
  }
  #pg-home .trust-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }
  #pg-home .quick-shop-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  #pg-home .pgrid-home{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  #pg-home .cgrid-home{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  #pg-home .trow{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  #pg-home .trust-chip{
    min-height:124px;
    padding:12px 12px 12px;
    gap:6px;
  }
  #pg-home .trust-chip-top{
    align-self:center;
    display:inline-flex;
    width:min(100%,200px);
    max-width:100%;
    justify-content:center;
    gap:8px;
    padding:0 14px;
    min-height:36px;
    margin-inline:auto;
    border-radius:16px;
    background:linear-gradient(135deg,var(--ac),var(--ac2));
    box-shadow:0 8px 18px rgba(0,80,255,.12);
  }
  #pg-home .trust-icon{
    width:20px;
    height:20px;
    border-radius:0;
    background:none;
    color:#fff;
    box-shadow:none;
    font-size:11px;
    line-height:1;
    flex-shrink:0;
    transform:translateY(1px);
  }
  #pg-home .trust-icon svg{
    width:17px;
    height:17px;
  }
  #pg-home .trust-chip:first-child .trust-icon,
  #pg-home .trust-chip:nth-child(n+2) .trust-icon{
    width:22px;
    height:22px;
    transform:translateY(2px);
  }
  #pg-home .trust-chip:first-child .trust-icon svg,
  #pg-home .trust-chip:nth-child(n+2) .trust-icon svg{
    width:18px;
    height:18px;
    transform:translateY(1px);
  }
  #pg-home .trust-chip small{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:20px;
    padding:0;
    background:transparent;
    color:#fff;
    font-size:10px;
    line-height:1;
    white-space:nowrap;
    letter-spacing:.02em;
    text-transform:none;
  }
  #pg-home .trust-chip strong{
    font-size:15.5px;
    line-height:1.12;
    min-height:2.1em;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
  }
  #pg-home .trust-chip span{
    font-size:10px;
    line-height:1.42;
    min-height:2.45em;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
  }
  #pg-home .review-card{padding:20px}
  #pg-home .recent-carousel-track .recent-chip{
    width:min(220px,72vw);
  }
  #pg-home .tc{
    min-height:140px;
    padding:18px;
  }
  #pg-home .scroll-row-wrap{
    gap:0;
  }
  #pg-home .scroll-row-wrap > .scroll-btn{
    display:none !important;
  }
  #pg-home .srow{
    mask-image:none;
    -webkit-mask-image:none;
    padding:2px 0 14px;
    gap:10px;
    overflow-x:auto;
    scroll-snap-type:x proximity;
    scroll-padding-inline:14px;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
    touch-action:pan-x;
  }
  #pg-home .home-scrollbar{
    display:none;
    width:100%;
    height:4px;
    margin-top:2px;
    border-radius:999px;
    background:rgba(14,77,197,.08);
    border:1px solid rgba(14,77,197,.08);
    overflow:hidden;
    pointer-events:none;
  }
  #pg-home .home-scrollbar.is-visible{
    display:block;
  }
  #pg-home .home-scrollbar span{
    display:block;
    height:100%;
    width:42px;
    border-radius:inherit;
    background:linear-gradient(90deg, rgba(14,77,197,.28), rgba(14,77,197,.92));
    box-shadow:0 2px 10px rgba(14,77,197,.16);
    will-change:transform,width;
  }
  #pg-home .srow .pc{
    width:200px;
    min-width:200px;
    max-width:200px;
    flex:0 0 200px;
    scroll-snap-align:start;
  }
}

@media(max-width:400px){
  #pg-home .quick-shop-grid,
  #pg-home .pgrid-home,
  #pg-home .cgrid-home,
  #pg-home .trow{
    grid-template-columns:1fr;
  }
  #pg-home .trust-strip{
    grid-template-columns:1fr;
  }
  #pg-home .hero{
    width:100%;
    aspect-ratio:1580 / 450;
    height:auto;
  }
  #pg-home .slide{
    inset:0 0 14px 0;
  }
}

@media(max-width:1120px){
  .account-template .sidebar{
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    right:auto !important;
    width:100vw !important;
    height:100dvh !important;
    min-height:100dvh !important;
    max-height:100dvh !important;
    padding:calc(env(safe-area-inset-top) + 12px) 14px calc(env(safe-area-inset-bottom) + 12px) !important;
    border-radius:0 !important;
    background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(245,248,255,.98)) !important;
    box-shadow:none !important;
    overflow:hidden !important;
    overflow-y:hidden !important;
    overflow-x:hidden !important;
    overscroll-behavior:contain !important;
    -webkit-overflow-scrolling:touch;
    scrollbar-gutter:auto !important;
    display:grid !important;
    grid-template-rows:auto auto minmax(0,1fr) auto !important;
    gap:8px !important;
    backdrop-filter:blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.08) !important;
  }
  .account-template .sidebar-bottom{
    margin-top:0 !important;
    padding-top:8px !important;
    padding-bottom:0 !important;
  }
  body.account-drawer-open .bottom-nav{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(24px);
  }
}

@media (max-width:760px){
  .account-template .favorites-grid,
  .account-template #accountFavoritesList.favorites-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .account-template .favorite-card{
    border-radius:18px;
  }
  .account-template .favorite-card .product-thumb{
    min-height:112px;
  }
  .account-template .favorite-card .favorite-card-copy{
    gap:8px;
    padding:10px 10px 12px;
  }
  .account-template .favorite-card-kicker{
    font-size:9px;
    letter-spacing:.06em;
  }
  .account-template .favorite-card h4{
    font-size:12px;
    line-height:1.16;
    min-height:2.32em;
  }
  .account-template .favorite-card p{
    font-size:10px;
    line-height:1.25;
    min-height:1.25em;
  }
  .account-template .favorite-card-badges{
    gap:4px 5px;
    min-height:22px;
  }
  .account-template .favorite-card-badges .pill{
    min-height:22px;
    padding:0 7px;
    font-size:8px;
  }
  .account-template .favorite-price-row{
    padding-top:8px;
    gap:6px;
  }
  .account-template .favorite-price-row strong{
    font-size:17px;
  }
  .account-template .favorite-price-before{
    font-size:9px;
  }
  .account-template .favorite-price-row small{
    min-height:20px;
    padding:0 7px;
    font-size:8px;
  }
  .account-template .favorite-card-actions{
    gap:6px;
  }
  .account-template .favorite-card .small-btn{
    min-height:34px;
    padding-inline:8px;
    font-size:10px;
  }
}
