*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  /* ── EDITORIAL PALETTE ── */
  --black:#0a0a09;
  --white:#ffffff;
  --g1:#f4f4f5;
  --g2:#e4e4e7;
  --g3:#d4d4d8;
  --g4:#71717a;
  --g5:#3f3f46;
  --accent:#a9803a;      /* pared-back gold, used sparingly */
  --accent2:#8f6a2c;
  --accent3:#c9a25f;
  --accent-ink:#6b4e1f;
  --red:#a13328;
  --green:#256b46;
  --blue:#294f74;
  --top-h:76px;
  --r:12px;--r2:16px;    /* rounded corners everywhere (same as the dashboard tabs) */
  --shadow:none;
  --shadow-lg:0 2px 24px rgba(10,10,9,.08);
  --shadow-xl:0 12px 48px rgba(10,10,9,.16);
  --tr:all .35s cubic-bezier(.16,1,.3,1);
  --text-xs:.85rem;--text-sm:.95rem;--text-base:1.02rem;
  --text-lg:1.2rem;--text-xl:1.4rem;--text-2xl:1.7rem;--text-3xl:2.1rem;
  --lh-tight:1.15;--lh-normal:1.6;--lh-relaxed:1.8;
}
html{scroll-behavior:smooth;font-size:20px}
body{
  font-family:'Inter',sans-serif;
  font-size:var(--text-base);
  font-weight:400;
  background:var(--white);
  color:var(--black);
  min-height:100vh;
  overflow-x:hidden;
  line-height:var(--lh-normal);
  -webkit-font-smoothing:antialiased;
  letter-spacing:.005em;
}

a,button,input,select,textarea,[tabindex]{outline:none;font-family:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,
textarea:focus-visible,[tabindex]:focus-visible,.price-chip:focus-visible,
.pay-method:focus-visible,.event-interested-btn:focus-visible{
  outline:1.5px solid var(--black);
  outline-offset:3px;
}
.product-card:focus-within,.brand-card:focus-within,.event-card:focus-within{
  outline:1.5px solid var(--black);outline-offset:2px;
}

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

::-webkit-scrollbar{width:5px;height:5px}
::-webkit-scrollbar-track{background:var(--white)}
::-webkit-scrollbar-thumb{background:var(--g3);border-radius:var(--r)}
::-webkit-scrollbar-thumb:hover{background:var(--g4)}

/* ══════════════════════ TOPBAR - editorial nav ══════════════════════ */
#topbar{
  position:fixed;top:0;left:0;right:0;height:var(--top-h);
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(18px) saturate(1.1);-webkit-backdrop-filter:blur(18px) saturate(1.1);
  border-bottom:1px solid var(--g2);
  box-shadow:none;
  z-index:200;display:flex;align-items:center;padding:0 2.4rem;gap:1.4rem;
  transition:var(--tr);
}
.topbar-brand{display:flex;align-items:center;gap:.7rem;cursor:pointer;text-decoration:none}
.topbar-brand-name{
  font-family:'Bebas Neue',sans-serif;
  font-size:1.9rem;letter-spacing:.06em;
  color:var(--black);
}
.topbar-brand-sub{font-size:.7rem;letter-spacing:.26em;text-transform:uppercase;color:var(--g4);margin-top:1px;font-weight:500}
.topbar-nav{display:flex;gap:.3rem;margin:0 auto}
.tn-btn{
  background:none;border:none;cursor:pointer;
  font-family:'Inter',sans-serif;font-size:.88rem;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--g4);
  padding:.5rem 1.05rem;border-radius:var(--r);transition:var(--tr);
  position:relative;
}
.tn-btn::after{content:'';position:absolute;left:1.05rem;right:1.05rem;bottom:.28rem;height:1px;background:var(--black);transform:scaleX(0);transform-origin:left;transition:var(--tr)}
.tn-btn:hover{color:var(--black)}
.tn-btn:hover::after{transform:scaleX(1)}
.tn-btn.active{color:var(--black)}
.tn-btn.active::after{transform:scaleX(1)}
#search-results{
  max-height:60vh;overflow-y:auto;
  border-top:1px solid var(--g2);
}
.sr-item{
  display:flex;align-items:center;gap:.9rem;
  padding:.85rem 1.1rem;cursor:pointer;
  border-bottom:1px solid var(--g1);transition:var(--tr);
}
.sr-item:hover{background:var(--g1)}
.sr-thumb{
  width:52px;height:52px;border-radius:var(--r);overflow:hidden;
  background:var(--g2);display:flex;align-items:center;justify-content:center;
  font-size:1.5rem;flex-shrink:0;color:var(--g4);
}
.sr-thumb img{width:100%;height:100%;object-fit:cover}
.sr-name{font-size:1rem;color:var(--black);font-weight:600}
.sr-meta{font-size:.88rem;color:var(--g4);margin-top:2px;text-transform:uppercase;letter-spacing:.05em}
.sr-price{font-size:1rem;color:var(--black);margin-left:auto;font-weight:700;white-space:nowrap}

/* ══════════════════════ SEARCH OVERLAY ══════════════════════ */
.search-overlay{
  position:fixed;inset:0;z-index:500;
  background:rgba(10,10,9,.5);
  backdrop-filter:blur(3px);
  display:none;
  align-items:flex-start;justify-content:center;
  padding-top:calc(var(--top-h) + 24px);
}
.search-overlay.open{display:flex;animation:fadeUp .2s ease}
.search-overlay-panel{
  background:var(--white);
  width:640px;max-width:calc(100% - 32px);
  box-shadow:var(--shadow-xl);
  max-height:calc(100vh - var(--top-h) - 48px);
  display:flex;flex-direction:column;
  overflow:hidden;
}
.search-overlay-bar{
  display:flex;align-items:center;gap:.8rem;
  padding:1.1rem 1.3rem;
  border-bottom:1px solid var(--g2);
  flex-shrink:0;
}
.search-overlay-icon{display:flex;color:var(--g4);flex-shrink:0}
.search-overlay-input{
  flex:1;border:none;background:transparent;
  font-family:'Inter',sans-serif;font-size:1.05rem;color:var(--black);
}
.search-overlay-input:focus{outline:none}
.search-overlay-close{
  background:none;border:none;color:var(--g4);cursor:pointer;
  font-size:1.05rem;flex-shrink:0;transition:var(--tr);
  width:28px;height:28px;display:flex;align-items:center;justify-content:center;
}
.search-overlay-close:hover{color:var(--black)}

.topbar-actions{display:flex;gap:.3rem;align-items:center}
.tb-social{display:flex;gap:.25rem}
.tb-social-link{
  background:none;border:none;
  color:var(--g4);width:32px;height:32px;border-radius:var(--r);
  cursor:pointer;font-size:.95rem;font-weight:700;transition:var(--tr);
  display:flex;align-items:center;justify-content:center;
  text-decoration:none;overflow:hidden;padding:0;
}
.tb-social-link:hover{color:var(--black)}
.tb-icon-btn{
  background:none;border:none;
  color:var(--g5);width:36px;height:36px;border-radius:var(--r);
  cursor:pointer;font-size:1.05rem;transition:var(--tr);
  position:relative;display:flex;align-items:center;justify-content:center;
}
.tb-icon-btn:hover{color:var(--black)}
.tb-badge{
  position:absolute;top:2px;right:2px;
  background:var(--black);color:var(--white);font-size:.68rem;
  min-width:15px;height:15px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  opacity:0;font-weight:700;padding:0 3px;transition:opacity .2s;
  border:none;
}
.tb-badge.on{opacity:1}
.cart-btn{
  display:flex;align-items:center;gap:.5rem;
  background:var(--black);color:var(--white);border:none;cursor:pointer;
  padding:.6rem 1.3rem;font-family:'Inter',sans-serif;
  font-size:.88rem;font-weight:600;border-radius:var(--r);transition:var(--tr);
  letter-spacing:.12em;text-transform:uppercase;
}
.cart-btn:hover{background:var(--g5)}
#merchant-btn{
  display:flex;align-items:center;gap:.45rem;
  background:transparent;color:var(--g5);
  border:1px solid var(--g3);cursor:pointer;
  padding:.55rem 1.1rem;font-family:'Inter',sans-serif;
  font-size:.82rem;font-weight:600;border-radius:var(--r);transition:var(--tr);white-space:nowrap;
  letter-spacing:.12em;text-transform:uppercase;
}
#merchant-btn:hover{border-color:var(--black);color:var(--black)}
#merchant-btn.logged-in{background:var(--black);color:var(--white);border-color:var(--black);font-weight:600}
.notif-wrapper{position:relative}
.notif-dropdown{
  position:absolute;top:calc(100% + 16px);right:0;width:370px;
  background:var(--white);border:1px solid var(--g2);
  border-radius:var(--r);z-index:400;display:none;
  box-shadow:var(--shadow-xl);overflow:hidden;
}
.notif-dropdown.open{display:block;animation:fadeUp .22s ease}
.notif-hd{
  padding:1.1rem 1.3rem;border-bottom:1px solid var(--g2);
  display:flex;justify-content:space-between;align-items:center;
  background:var(--black);
}
.notif-hd-title{font-size:.82rem;font-weight:700;color:var(--white);letter-spacing:.18em;text-transform:uppercase}
.notif-clear-btn{
  font-size:.82rem;color:rgba(255,255,255,.5);
  background:none;border:1px solid rgba(255,255,255,.2);
  cursor:pointer;padding:.28rem .7rem;border-radius:var(--r);transition:var(--tr);
  letter-spacing:.05em;text-transform:uppercase;
}
.notif-clear-btn:hover{color:#fff;border-color:rgba(255,255,255,.5)}
.notif-item{
  padding:1rem 1.3rem;border-bottom:1px solid var(--g1);
  display:flex;gap:.9rem;cursor:pointer;transition:var(--tr);position:relative;
}
.notif-item:hover{background:var(--g1)}
.notif-item.unread{background:var(--white);border-left:2px solid var(--black)}
.notif-item.unread::after{content:'';position:absolute;top:1rem;right:1rem;width:5px;height:5px;background:var(--accent);border-radius:50%}
.notif-icon-c{font-size:1.05rem;flex-shrink:0;width:34px;height:34px;background:var(--g1);border-radius:var(--r);display:flex;align-items:center;justify-content:center}
.notif-text{font-size:.98rem;color:var(--black);line-height:1.5;flex:1}
.notif-time{font-size:.84rem;color:var(--g4);margin-top:.25rem;letter-spacing:.03em}
.notif-arrow{font-size:.9rem;color:var(--g3);flex-shrink:0;align-self:center}
.notif-empty-msg{padding:2.8rem 1rem;font-size:.98rem;color:var(--g4);text-align:center;display:flex;flex-direction:column;align-items:center;gap:.6rem;letter-spacing:.02em}
.notif-empty-icon{font-size:2rem;opacity:.3;display:flex}
.merch-notif-wrap{display:none}
.merch-notif-wrap.visible{display:block}
.spinner-overlay{position:fixed;inset:0;background:rgba(255,255,255,.94);z-index:9990;display:none;align-items:center;justify-content:center}
.spinner-overlay.on{display:flex}
.spinner{width:28px;height:28px;border:1.5px solid var(--g2);border-top-color:var(--black);border-radius:50%;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
#main{padding-top:var(--top-h)}   /* padding, not margin: a margin here added an empty strip at the bottom of short pages */
.page{display:none}
.page.active{display:block;animation:fadeUp .4s cubic-bezier(.16,1,.3,1)}
.merch-panel{grid-area:content;animation:fadeUp .35s cubic-bezier(.16,1,.3,1)}
::view-transition-old(root),::view-transition-new(root){animation-duration:.32s;animation-timing-function:cubic-bezier(.16,1,.3,1)}
@keyframes fadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}

/* ══════════════════════ CAROUSEL - big minimal hero ══════════════════════ */
.carousel-section{position:relative;overflow:hidden;height:78vh;min-height:520px}
.carousel-track{display:flex;height:100%;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.carousel-slide{min-width:100%;height:100%;display:flex;align-items:flex-end;padding:0 4vw 5.5rem;position:relative;overflow:hidden}
.cs-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 9s ease;filter:saturate(.92)}
.carousel-slide:hover .cs-bg{transform:scale(1.03)}
.cs-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,10,9,.72) 0%,rgba(10,10,9,.15) 45%,rgba(10,10,9,.05) 100%) !important}
.cs-content{position:relative;z-index:2;max-width:620px}
.cs-eyebrow{font-size:.82rem;letter-spacing:.36em;text-transform:uppercase;margin-bottom:1rem;display:flex;align-items:center;gap:.7rem;opacity:.85;font-weight:600;color:#fff !important}
.cs-eyebrow::before{content:'';width:30px;height:1px;background:currentColor}
.cs-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.8rem,7vw,5.4rem);line-height:.9;margin-bottom:1.1rem;letter-spacing:.005em;color:#fff !important}
.cs-desc{font-size:1rem;line-height:var(--lh-relaxed);margin-bottom:1.7rem;opacity:.78;max-width:420px;color:#fff !important}
.cs-btn{
  display:inline-block;padding:.9rem 2.1rem !important;
  font-family:'Inter',sans-serif;font-size:.88rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;
  border-radius:var(--r) !important;cursor:pointer;border:1px solid transparent;transition:var(--tr);
  background:#fff !important;color:var(--black) !important;
}
.cs-btn:hover{background:transparent !important;color:#fff !important;border-color:#fff !important}
.cs-slide-1 .cs-bg{background:url('https://images.unsplash.com/photo-1558618666-fcd25c85cd64?q=80&w=2070') center/cover}
.cs-slide-2 .cs-bg{background:url('https://images.unsplash.com/photo-1441986300917-64674bd600d8?q=80&w=2070') center/cover}
.cs-slide-3 .cs-bg{background:url('https://images.unsplash.com/photo-1601924994987-69e26d50dc26?q=80&w=2070') center/cover}
.cs-slide-4 .cs-bg{background:url('https://images.unsplash.com/photo-1472851294608-062f824d29cc?q=80&w=2070') center/cover}
.cs-countdown{display:flex;gap:.6rem;margin-bottom:1.3rem;align-items:center}
.cs-countdown-label{font-size:.8rem;letter-spacing:.16em;color:rgba(255,255,255,.55);margin-right:.3rem;font-weight:600;text-transform:uppercase}
.cs-cd-block{display:flex;flex-direction:column;align-items:center}
.cs-cd-num{
  font-family:'Bebas Neue',sans-serif;font-size:1.9rem;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);
  padding:.1rem .6rem;border-radius:var(--r);min-width:50px;text-align:center;line-height:1.2;color:#fff;
}
.cs-cd-label{font-size:.7rem;color:rgba(255,255,255,.45);margin-top:3px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.carousel-arrow{
  position:absolute;top:50%;transform:translateY(-50%);z-index:10;
  background:transparent;border:1px solid rgba(255,255,255,.35);
  color:#fff;width:42px;height:42px;border-radius:50%;cursor:pointer;
  font-size:1rem;transition:var(--tr);backdrop-filter:blur(6px);
}
.carousel-arrow:hover{background:rgba(255,255,255,.15);border-color:#fff}
.carousel-prev{left:2rem}.carousel-next{right:2rem}
.carousel-dots{position:absolute;bottom:1.6rem;left:4vw;display:flex;gap:.6rem;z-index:10}
.carousel-dot{width:22px;height:2px;border-radius:var(--r);background:rgba(255,255,255,.32);border:none;cursor:pointer;transition:var(--tr)}
.carousel-dot.active{background:#fff}

/* ══════════════════════ HOME HERO ══════════════════════ */
.home-hero{min-height:56vh;display:flex;align-items:center;position:relative;padding:3rem 1.5rem;background:var(--black);overflow:hidden}
.home-hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 65% 45%,rgba(169,128,58,.06) 0%,transparent 65%);pointer-events:none}
.home-hero-bg{position:absolute;inset:0;background:url('https://images.unsplash.com/photo-1523381210434-271e8be1f52b?q=80&w=2070') center/cover;filter:brightness(.16) saturate(1) grayscale(.15);transform:scale(1.02)}
.home-hero-content{position:relative;z-index:2;max-width:1800px;margin:0 auto;display:grid;grid-template-columns:1.15fr 1fr;gap:5rem;align-items:center;width:100%}
.home-hero-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(3.6rem,9vw,7.8rem);color:#fff;line-height:.85;margin-bottom:1.4rem;letter-spacing:0}
.home-hero-title span{color:var(--accent3);font-family:'Instrument Serif',serif;font-style:italic;display:block}
.home-hero-desc{font-size:1.02rem;color:rgba(255,255,255,.5);margin-bottom:2.3rem;line-height:var(--lh-relaxed);max-width:400px;font-weight:300}
.hero-btns{display:flex;gap:1rem;flex-wrap:wrap}
.hero-cta-primary{
  background:#fff;color:var(--black);border:1px solid #fff;cursor:pointer;
  padding:.95rem 2.5rem;font-family:'Inter',sans-serif;
  font-size:.88rem;font-weight:700;border-radius:var(--r);
  letter-spacing:.14em;text-transform:uppercase;transition:var(--tr);
}
.hero-cta-primary:hover{background:transparent;color:#fff}
.hero-cta-secondary{
  background:transparent;color:#fff;
  border:1px solid rgba(255,255,255,.3);cursor:pointer;
  padding:.95rem 2.5rem;font-family:'Inter',sans-serif;
  font-size:.88rem;font-weight:600;border-radius:var(--r);transition:var(--tr);
  letter-spacing:.14em;text-transform:uppercase;
}
.hero-cta-secondary:hover{border-color:#fff;background:rgba(255,255,255,.06)}
.hero-brand-pills{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.1)}
.hero-brand-pill{
  background:var(--black);border:none;
  padding:1.2rem 1.3rem;
  display:flex;align-items:center;gap:.9rem;cursor:pointer;transition:var(--tr);
}
.hero-brand-pill:hover{background:rgba(255,255,255,.04)}
.hbp-icon{width:44px;height:44px;border-radius:var(--r);overflow:hidden;background:rgba(255,255,255,.05);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.hbp-icon img{width:100%;height:100%;object-fit:cover;filter:grayscale(.15)}
.hbp-name{font-size:1rem;color:rgba(255,255,255,.9);font-weight:600;letter-spacing:.01em}
.hbp-tag{font-size:.76rem;color:rgba(255,255,255,.35);margin-top:2px;text-transform:uppercase;letter-spacing:.1em}

/* ══════════════════════ STATS STRIP ══════════════════════ */
.stats-strip{background:var(--black);padding:2.2rem 2rem;border-top:1px solid rgba(255,255,255,.06)}
.stats-strip-inner{max-width:1800px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}
.strip-stat{text-align:center;padding:.6rem;position:relative}
.strip-stat:not(:last-child)::after{content:'';position:absolute;right:0;top:25%;bottom:25%;width:1px;background:rgba(255,255,255,.08)}
.strip-val{font-family:'Bebas Neue',sans-serif;font-size:2.6rem;color:#fff;letter-spacing:.01em}
.strip-lbl{font-size:.76rem;letter-spacing:.24em;color:rgba(255,255,255,.35);text-transform:uppercase;margin-top:4px;font-weight:600}

/* ══════════════════════ PRODUCT CARD - dense editorial grid ══════════════════════ */
.product-grid{display:flex;flex-wrap:wrap;gap:6px;background:var(--white)}
.product-card{
  flex:1 1 calc(25% - 5px);
  background:var(--white);
  border:none;
  cursor:pointer;border-radius:var(--r);overflow:visible;
  transition:var(--tr);
  position:relative;
  box-shadow:none;
}
.product-card:hover{transform:none;box-shadow:none}
.card-img{
  width:100%;aspect-ratio:.85;
  background:var(--g1);
  display:flex;align-items:center;justify-content:center;
  position:relative;overflow:hidden;border-radius:var(--r);
}
.card-img img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .7s cubic-bezier(.16,1,.3,1);
  position:absolute;inset:0;
}
.product-card:hover .card-img img{transform:scale(1.045)}
.card-img::after{content:none}
.card-badges{position:absolute;top:0;left:0;display:flex;gap:1px;flex-direction:column;z-index:2}
.card-new-badge{
  background:var(--black);color:#fff;
  font-size:.7rem;font-weight:700;
  padding:.4rem .85rem;border-radius:var(--r);display:inline-block;
  letter-spacing:.16em;text-transform:uppercase;
}
.card-soldout-badge{
  background:var(--red);color:#fff;
  font-size:.7rem;font-weight:700;
  padding:.4rem .85rem;border-radius:var(--r);display:inline-block;
  letter-spacing:.16em;text-transform:uppercase;
}
.card-sale-badge{
  background:var(--red);color:#fff;
  font-size:.7rem;font-weight:700;
  padding:.4rem .85rem;border-radius:var(--r);display:inline-block;
  letter-spacing:.16em;text-transform:uppercase;
}
.card-stock-badge{display:none}
.card-size{display:none}
.stock-in{color:var(--g4)}
.stock-low{color:var(--accent-ink)}
.stock-out{color:var(--red)}
.card-actions{display:none}
.card-action-btn{
  position:absolute;bottom:.85rem;right:.85rem;z-index:3;
  background:#fff;
  backdrop-filter:none;
  border:1px solid var(--g2);
  font-size:.95rem;width:34px;height:34px;border-radius:50%;
  cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:var(--tr);box-shadow:0 2px 10px rgba(10,10,9,.1);
}
.card-action-btn:hover{background:var(--black);color:#fff;border-color:var(--black)}
.card-action-btn:disabled{opacity:.35;cursor:not-allowed}
.card-action-btn:disabled:hover{background:#fff;color:var(--black);border-color:var(--g2)}
.card-quick-add{display:none}
.card-body{padding:6px 8px 8px}
.card-brand{font-size:.68rem;color:var(--g4);text-transform:uppercase;letter-spacing:.12em;margin-bottom:.15rem;font-weight:600}
.card-name{font-size:.94rem;font-weight:700;margin-bottom:0;line-height:1.3;color:var(--black);text-transform:uppercase;letter-spacing:.01em}
.card-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.6rem;margin-top:0}
.card-price-wrap{display:flex;align-items:baseline;gap:.5rem;flex-shrink:0;white-space:nowrap}
.card-price-original{font-size:.84rem;color:var(--g4);text-decoration:line-through;font-weight:500}
.card-price{font-size:.96rem;font-weight:700;color:var(--black);letter-spacing:0;white-space:nowrap;flex-shrink:0}
.card-price.on-sale{color:var(--red)}
.card-avg-rating{font-size:.82rem;color:var(--accent-ink);margin-top:.45rem;font-weight:500;letter-spacing:.03em}
.trending-rank{
  position:absolute;bottom:.85rem;left:.85rem;
  background:transparent;color:#fff;
  font-family:'Bebas Neue',sans-serif;font-size:2.3rem;
  width:auto;height:auto;border-radius:var(--r);
  display:flex;align-items:center;justify-content:center;z-index:3;
  box-shadow:none;text-shadow:0 2px 12px rgba(0,0,0,.5);
  -webkit-text-stroke:1px rgba(255,255,255,.4);
}

/* ══════════════════════ BRAND CARD - editorial ══════════════════════ */
.brand-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:6px;background:transparent;
  width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;
}
.brand-card{
  position:relative;height:320px;
  background:var(--black);border:none;
  border-radius:var(--r);overflow:hidden;cursor:pointer;
  transition:var(--tr);
  box-shadow:none;
}
.brand-card:hover{transform:none;box-shadow:none}
.brand-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:1;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.brand-card:hover img{transform:scale(1.06)}
.brand-card-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,9,.05) 0%,rgba(10,10,9,.1) 45%,rgba(10,10,9,.82) 100%);transition:var(--tr)}
.brand-card:hover .brand-card-overlay{background:linear-gradient(180deg,rgba(10,10,9,.02) 0%,rgba(10,10,9,.08) 40%,rgba(10,10,9,.9) 100%)}
.brand-card-content{position:absolute;left:14px;right:14px;bottom:14px;z-index:2;color:#fff}
.brand-name{font-family:'Bebas Neue',sans-serif;font-size:1.4rem;letter-spacing:.02em;margin-bottom:.4rem;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff}
.brand-desc{font-size:.96rem;color:var(--g4);margin-bottom:1rem;line-height:var(--lh-relaxed);font-weight:400}
.brand-tag{
  font-size:.72rem;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.4);
  padding:.22rem .65rem;border-radius:var(--r);display:inline-block;
  font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#fff;
  backdrop-filter:blur(2px);
  margin-bottom:.5rem;
}
.brand-meta-row{font-size:.82rem;color:rgba(255,255,255,.7);margin-top:0;display:flex;align-items:center;gap:.35rem;letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ══════════════════════ HOME SECTIONS ══════════════════════ */
.home-section{padding:14px 10px}
.home-section-inner{max-width:1800px;margin:0 auto}
.section-hd{
  display:flex;justify-content:space-between;align-items:flex-end;
  margin-bottom:8px;padding-bottom:4px;
  border-bottom:1px solid var(--g2);
}
.section-hd h2{
  font-family:'Bebas Neue',sans-serif;
  font-size:clamp(2.2rem,4vw,3.2rem);letter-spacing:.01em;
  display:flex;align-items:center;gap:.7rem;line-height:.9;
}
.see-all-btn{
  background:none;border:none;
  padding:.3rem 0;font-family:'Inter',sans-serif;
  font-size:.86rem;font-weight:600;border-radius:0;
  cursor:pointer;transition:var(--tr);letter-spacing:.12em;text-transform:uppercase;
  border-bottom:1px solid var(--black);
}
.see-all-btn:hover{opacity:.55}
.trending-row{display:flex;gap:0;overflow-x:auto;padding-bottom:.5rem;scroll-snap-type:x mandatory;scrollbar-width:none}
.trending-row::-webkit-scrollbar{display:none}
.trending-row .product-card{flex:0 0 255px;min-width:255px;scroll-snap-align:start;flex-shrink:0}

/* ══════════════════════ TESTIMONIALS ══════════════════════ */
.testimonials-section{background:var(--black);padding:3rem 1.5rem}
.testimonials-inner{max-width:1800px;margin:0 auto}
.testimonials-inner .section-hd{border-bottom-color:rgba(255,255,255,.1)}
.testimonials-inner .section-hd h2{color:#fff}
.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:1px;background:rgba(255,255,255,.08)}
.testimonial-card{
  background:var(--black);
  border:none;
  border-radius:var(--r);padding:2rem;transition:var(--tr);
}
.testimonial-card:hover{background:rgba(255,255,255,.02)}
.t-stars{color:var(--accent3);font-size:1rem;margin-bottom:1.2rem;letter-spacing:.1em}
.t-text{font-size:1.05rem;color:rgba(255,255,255,.65);line-height:var(--lh-relaxed);margin-bottom:1.6rem;font-style:italic;font-family:'Instrument Serif',serif}
.t-author{display:flex;align-items:center;gap:.85rem}
.t-avatar{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:600;color:var(--accent3);letter-spacing:.02em}
.t-name{font-size:1rem;color:#fff;font-weight:600;letter-spacing:.02em}
.t-location{font-size:.84rem;color:rgba(255,255,255,.32);margin-top:2px;letter-spacing:.05em;display:flex;align-items:center;gap:.3rem;text-transform:uppercase}

/* ══════════════════════ NEWSLETTER ══════════════════════ */
.newsletter-section{background:var(--g1);padding:2.6rem 1.5rem;border-top:1px solid var(--g2)}
.newsletter-inner{max-width:560px;margin:0 auto;text-align:center}
.newsletter-inner h3{font-family:'Bebas Neue',sans-serif;font-size:2.6rem;margin-bottom:.8rem;letter-spacing:.01em}
.newsletter-inner p{font-size:.95rem;color:var(--g5);margin-bottom:2rem;line-height:var(--lh-relaxed);font-weight:400}
.newsletter-form{display:flex;gap:0;max-width:440px;margin:0 auto;border-bottom:1px solid var(--g5)}
.newsletter-form input{
  flex:1;background:transparent;border:none;
  padding:.85rem .2rem;font-family:'Inter',sans-serif;font-size:.95rem;border-radius:0;transition:var(--tr);
}
.newsletter-form input:focus{outline:none}
.newsletter-submit{
  background:transparent;color:var(--black);border:none;
  padding:.85rem 1rem;font-family:'Inter',sans-serif;
  font-size:.86rem;font-weight:700;border-radius:var(--r);
  cursor:pointer;transition:var(--tr);white-space:nowrap;letter-spacing:.14em;text-transform:uppercase;
}
.newsletter-submit:hover{opacity:.55}

/* ══════════════════════ FOOTER ══════════════════════ */
footer{background:var(--black);padding:2.6rem 1.5rem 1.4rem;color:#fff}
.footer-inner{max-width:1800px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem}
.footer-brand-name{font-family:'Bebas Neue',sans-serif;font-size:2rem;color:#fff;margin-bottom:.7rem;letter-spacing:.03em}
.footer-desc{font-size:.96rem;color:rgba(255,255,255,.35);line-height:var(--lh-relaxed);font-weight:300}
.footer-col h4{font-size:.76rem;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:1.4rem;font-weight:700}
.footer-col ul{list-style:none}
.footer-col ul li{margin-bottom:.75rem}
.footer-col ul li a,.footer-col ul li span{font-size:.96rem;color:rgba(255,255,255,.5);cursor:pointer;text-decoration:none;transition:var(--tr)}
.footer-col ul li a:hover,.footer-col ul li span:hover{color:#fff}
.footer-social{display:flex;gap:.7rem;margin-top:1.2rem}
.footer-social-link{
  display:flex;align-items:center;justify-content:center;
  width:34px;height:34px;border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
  color:rgba(255,255,255,.5);text-decoration:none;
  font-size:.95rem;font-weight:700;transition:var(--tr);
}
.footer-social-link:hover{border-color:#fff;color:#fff}
.footer-bottom{
  max-width:1800px;margin:2.6rem auto 0;padding-top:1.6rem;
  border-top:1px solid rgba(255,255,255,.08);
  display:flex;justify-content:space-between;
  font-size:.84rem;color:rgba(255,255,255,.25);flex-wrap:wrap;gap:.5rem;letter-spacing:.03em;
}

/* ══════════════════════ PAGE CONTAINER ══════════════════════ */
.page-container{max-width:1800px;margin:0 auto;padding:18px 14px}
.breadcrumb{
  display:flex;align-items:center;gap:.5rem;
  font-size:.88rem;color:var(--g4);padding:1.3rem 0;flex-wrap:wrap;
  letter-spacing:.04em;text-transform:uppercase;
}
.breadcrumb a{color:inherit;text-decoration:none;cursor:pointer;transition:var(--tr)}
.breadcrumb a:hover{color:var(--black)}

/* ══════════════════════ FILTERS ══════════════════════ */
.filter-sort-bar{display:flex;gap:0;margin-bottom:1.1rem;flex-wrap:wrap;align-items:center;border-bottom:1px solid var(--g2)}
.f-btn{
  background:none;border:none;border-bottom:2px solid transparent;
  padding:.75rem 1.1rem;font-family:'Inter',sans-serif;
  font-size:.88rem;font-weight:600;border-radius:0;cursor:pointer;transition:var(--tr);
  letter-spacing:.1em;text-transform:uppercase;color:var(--g4);
}
.f-btn:hover{color:var(--black)}
.f-btn.on{color:var(--black);border-bottom-color:var(--black)}
.sort-select{
  margin-left:auto;background:transparent;border:none;
  padding:.6rem .2rem;font-family:'Inter',sans-serif;font-size:.88rem;border-radius:0;cursor:pointer;
  letter-spacing:.06em;text-transform:uppercase;color:var(--g5);
}
.price-chip{background:transparent;border:1px solid var(--g3);padding:.4rem 1rem;font-family:'Inter',sans-serif;font-size:.88rem;font-weight:600;border-radius:var(--r);cursor:pointer;transition:var(--tr);letter-spacing:.05em}
.price-chip:hover{border-color:var(--black)}
.price-chip.on{background:var(--black);color:#fff;border-color:var(--black)}
.brand-selected-header{
  display:none;align-items:center;gap:0;padding:0;
  background:var(--black);color:#fff;border-radius:var(--r);
  margin-bottom:1.2rem;overflow:hidden;position:relative;
}
.brand-selected-header.show{display:flex}
.bsh-thumb{width:54px;height:54px;border-radius:var(--r);overflow:hidden;background:#1a1a1a;display:flex;align-items:center;justify-content:center;font-size:1.9rem}
.bsh-thumb img{width:100%;height:100%;object-fit:cover}
.bsh-name{font-family:'Bebas Neue',sans-serif;font-size:1.7rem}
.bsh-count{font-size:.92rem;color:rgba(255,255,255,.4)}
.bsh-back{
  margin-left:auto;background:none;border:1px solid rgba(255,255,255,.2);
  color:rgba(255,255,255,.6);padding:.55rem 1.2rem;font-family:'Inter',sans-serif;
  font-size:.82rem;font-weight:600;border-radius:var(--r);cursor:pointer;transition:var(--tr);
  letter-spacing:.1em;text-transform:uppercase;
}
.bsh-back:hover{border-color:#fff;color:#fff}
.pagination{display:flex;justify-content:center;gap:.4rem;margin-top:3rem;flex-wrap:wrap}
.page-num{
  background:none;border:1px solid var(--g2);
  padding:.5rem 1rem;font-family:'Inter',sans-serif;
  font-size:.92rem;font-weight:500;border-radius:var(--r);cursor:pointer;transition:var(--tr);
}
.page-num:hover,.page-num.active{background:var(--black);color:#fff;border-color:var(--black)}

/* ══════════════════════ HOME - NEW ARRIVALS MARQUEE + COLLAGE ══════════════════════ */
.arrivals-banner-section{width:100%}
.arrivals-marquee-wrap{background:var(--black);overflow:hidden;padding:1rem 0;position:relative;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.rv-static-title{
  background:var(--black);color:#fff;
  padding:1.6rem 1.5rem;
  text-align:center;
  font-family:'Instrument Serif',serif;font-style:italic;font-size:2.6rem;letter-spacing:.01em;text-transform:none;
  border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);
}
.arrivals-marquee-track{display:flex;white-space:nowrap;width:max-content;animation:arrivalsMarquee 26s linear infinite}
.arrivals-marquee-track .amq-item{font-family:'Instrument Serif',serif;font-style:italic;font-size:2.4rem;letter-spacing:.01em;color:#fff;padding:0 1.6rem;display:inline-flex;align-items:center;gap:1.6rem;flex-shrink:0}
@keyframes arrivalsMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.arrivals-collage{display:flex;height:620px;overflow:hidden;background:var(--black)}
.arrivals-collage-col{flex:0 0 33.333%;max-width:33.333%;position:relative;cursor:pointer;overflow:hidden;border-right:1px solid rgba(255,255,255,.08);min-width:0}
.arrivals-collage-col:last-child{border-right:none}
.arrivals-collage-col img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.16,1,.3,1);filter:saturate(.92)}
.arrivals-collage-col:hover img{transform:scale(1.07)}
.arrivals-collage-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,9,.1) 0%,rgba(10,10,9,.15) 45%,rgba(10,10,9,.7) 100%);transition:var(--tr)}
.arrivals-collage-col:hover .arrivals-collage-overlay{background:linear-gradient(180deg,rgba(10,10,9,.05) 0%,rgba(10,10,9,.1) 40%,rgba(10,10,9,.78) 100%)}
.arrivals-collage-content{position:absolute;left:1.8rem;right:1.8rem;bottom:2.2rem;z-index:2;color:#fff}
.arrivals-collage-eyebrow{font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-bottom:.5rem;font-weight:600}
.arrivals-collage-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(1.6rem,2.4vw,2.1rem);letter-spacing:.01em;margin-bottom:1.1rem;text-transform:uppercase;line-height:1.05}
.arrivals-collage-btn{display:inline-block;border:1px solid rgba(255,255,255,.75);color:#fff;background:rgba(10,10,9,.15);backdrop-filter:blur(2px);padding:.7rem 1.6rem;font-family:'Inter',sans-serif;font-size:.84rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;transition:var(--tr)}
.arrivals-collage-col:hover .arrivals-collage-btn{background:#fff;color:var(--black);border-color:#fff}
.arrivals-viewall-bar{background:var(--white);text-align:center;padding:1.3rem 1rem;border-bottom:1px solid var(--g2)}
.arrivals-viewall-bar span{font-family:'Inter',sans-serif;font-size:.86rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--black);cursor:pointer;padding-bottom:.2rem;border-bottom:1px solid var(--black);transition:var(--tr)}
.arrivals-viewall-bar span:hover{opacity:.55}
@media(max-width:900px){
  .arrivals-collage{flex-direction:column;height:auto}
  .arrivals-collage-col{height:300px;border-right:none;border-bottom:1px solid rgba(255,255,255,.08)}
  .arrivals-collage-col:last-child{border-bottom:none}
}

/* ══════════════════════ ARRIVALS BANNER ══════════════════════ */
.arrivals-banner{min-height:260px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:var(--black)}
.arrivals-banner-bg{position:absolute;inset:0;background:url('https://images.unsplash.com/photo-1567401893414-76b7b1e5a7a5?q=80&w=2070') center/cover;filter:brightness(.28) saturate(.9)}
.arrivals-banner-content{position:relative;z-index:2;text-align:center;color:#fff;padding:3rem 2rem}
.arrivals-banner h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(3rem,7vw,5.2rem);margin-bottom:.7rem;letter-spacing:0}
.arr-badge{
  background:transparent;color:#fff;display:inline-block;
  padding:.5rem 1.3rem;border-radius:var(--r);font-size:.82rem;border:1px solid rgba(255,255,255,.35);
  letter-spacing:.18em;font-weight:600;text-transform:uppercase;
}

/* ══════════════════════ PRODUCT DETAIL ══════════════════════ */
.pd-container{max-width:1800px;margin:0 auto;padding:1.2rem 1.5rem}
.pd-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:2.4rem;align-items:start}
.pd-main-img{
  aspect-ratio:.82;background:var(--g1);border-radius:var(--r);
  display:flex;align-items:center;justify-content:center;font-size:9rem;
  overflow:hidden;position:relative;box-shadow:none;
}
.pd-main-img img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.pd-brand-link{font-size:.86rem;color:var(--g4);text-transform:uppercase;letter-spacing:.16em;margin-bottom:.9rem;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:.4rem}
.pd-brand-link:hover{color:var(--black)}
.pd-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.4rem,4vw,3.6rem);line-height:.95;margin-bottom:1.1rem;letter-spacing:.005em}
.pd-price{font-size:1.7rem;font-weight:600;margin-bottom:.8rem;letter-spacing:0}
.pd-stock{display:inline-block;font-size:.86rem;font-weight:600;padding:0;border-radius:var(--r);margin-bottom:1.8rem;letter-spacing:.1em;text-transform:uppercase;background:transparent !important}
.pd-detail-rows{border-top:1px solid var(--g2);border-bottom:none;border-radius:0;overflow:hidden;margin-bottom:2rem;box-shadow:none}
.pd-detail-row{display:flex;justify-content:space-between;padding:.9rem 0;border-bottom:1px solid var(--g1);font-size:.98rem}
.pd-detail-row:last-child{border-bottom:none}
.pd-detail-row span:first-child{color:var(--g4);font-weight:500;letter-spacing:.06em;text-transform:uppercase;font-size:.86rem}
.pd-detail-row .size-val{color:var(--black);font-weight:600}
.pd-atc-btn{
  width:100%;background:var(--black);color:#fff;border:1px solid var(--black);
  padding:1.05rem;font-family:'Inter',sans-serif;
  font-size:.92rem;font-weight:700;border-radius:var(--r);cursor:pointer;
  transition:var(--tr);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.8rem;
}
.pd-atc-btn:hover:not(:disabled){background:transparent;color:var(--black)}
.pd-atc-btn:disabled{opacity:.4;cursor:not-allowed}
.pd-bin-btn{
  width:100%;background:transparent;color:var(--black);border:1px solid var(--black);
  padding:1.05rem;font-family:'Inter',sans-serif;
  font-size:.92rem;font-weight:700;border-radius:var(--r);cursor:pointer;
  transition:var(--tr);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.8rem;
}
.pd-bin-btn:hover:not(:disabled){background:var(--black);color:#fff}
.pd-bin-btn:disabled{opacity:.4;cursor:not-allowed}
.pd-section-title{font-family:'Bebas Neue',sans-serif;font-size:2rem;margin:3rem 0 1.4rem;letter-spacing:.01em}
.recommendations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.6rem}

/* ══════════════════════ REVIEWS ══════════════════════ */
.review-section{margin-top:3.5rem;border-top:1px solid var(--g2);padding-top:2.6rem}
.review-section h3{font-family:'Bebas Neue',sans-serif;font-size:2rem;margin-bottom:1.8rem;letter-spacing:.01em}
.review-summary{
  display:flex;gap:2.4rem;align-items:center;
  background:transparent;border-radius:0;
  padding:0 0 2rem;margin-bottom:2rem;flex-wrap:wrap;
  border:none;border-bottom:1px solid var(--g2);
}
.review-big-score{font-family:'Bebas Neue',sans-serif;font-size:4.2rem;line-height:1;color:var(--black)}
.review-stars-bar{flex:1;min-width:150px}
.review-star-row{display:flex;align-items:center;gap:.7rem;font-size:.9rem;margin-bottom:.35rem;color:var(--g4)}
.review-star-track{flex:1;height:2px;background:var(--g2);border-radius:var(--r);overflow:hidden}
.review-star-fill{height:100%;border-radius:var(--r);background:var(--black)}
.review-write-btn{
  background:transparent;color:var(--black);border:1px solid var(--black);
  padding:.8rem 1.8rem;font-family:'Inter',sans-serif;
  font-size:.86rem;font-weight:700;border-radius:var(--r);cursor:pointer;
  transition:var(--tr);letter-spacing:.12em;text-transform:uppercase;
}
.review-write-btn:hover{background:var(--black);color:#fff}
.review-card{background:transparent;border:none;border-bottom:1px solid var(--g1);border-radius:0;padding:1.6rem 0;margin-bottom:0;box-shadow:none}
.review-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.7rem;flex-wrap:wrap;gap:.3rem}
.review-card-author{font-size:1rem;font-weight:700}
.review-card-date{font-size:.86rem;color:var(--g4);letter-spacing:.03em}
.review-card-stars{color:var(--accent-ink);font-size:.98rem;margin-bottom:.6rem;letter-spacing:.08em}
.review-card-text{font-size:1rem;color:var(--g5);line-height:var(--lh-relaxed)}
.review-card-img{width:78px;height:78px;object-fit:cover;border-radius:var(--r);margin-top:.9rem;cursor:pointer}
.review-reply{
  background:var(--g1);border-radius:var(--r);border-left:2px solid var(--black);
  padding:.9rem 1.1rem;margin-top:.9rem;font-size:.96rem;color:var(--g4);line-height:var(--lh-normal);
}
.review-actions{display:flex;gap:.9rem;margin-top:.9rem;flex-wrap:wrap}
.review-action-btn{
  background:none;border:none;
  padding:0;font-family:'Inter',sans-serif;
  font-size:.84rem;font-weight:600;border-radius:0;cursor:pointer;transition:var(--tr);
  letter-spacing:.08em;text-transform:uppercase;color:var(--g4);border-bottom:1px solid transparent;
}
.review-action-btn:hover{color:var(--black);border-bottom-color:var(--black)}
.review-action-btn.danger:hover{color:var(--red);border-bottom-color:var(--red)}

/* ══════════════════════ ORDERS ══════════════════════ */
.orders-hd{font-family:'Bebas Neue',sans-serif;font-size:2.7rem;margin-bottom:1rem;letter-spacing:.01em}
.order-card{background:var(--white);border:1px solid var(--g2);border-radius:var(--r);margin-bottom:1px;overflow:hidden;box-shadow:none}
.order-card-summary{
  padding:1.6rem 1.8rem;cursor:pointer;
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:.5rem;transition:var(--tr);
}
.order-card-summary:hover{background:var(--g1)}
.order-id{font-family:'Bebas Neue',sans-serif;font-size:1.2rem;letter-spacing:.03em}
.order-date{font-size:.9rem;color:var(--g4);margin-top:2px}
.order-status{font-size:.76rem;padding:.3rem .9rem;border-radius:var(--r);font-weight:700;letter-spacing:.1em;text-transform:uppercase;border:1px solid currentColor;background:transparent !important}
.status-pending{color:#92400e}
.status-confirmed{color:#076a35}
.status-packed{color:#0c5460}
.status-shipped{color:#1e40af}
.status-delivered{color:#076a35}
.status-cancelled{color:#b91c1c}
.order-expand-btn{font-size:1rem;color:var(--g4);background:none;border:none;cursor:pointer;transition:var(--tr)}
.order-expand-btn.open{transform:rotate(180deg)}
.order-details{display:none;border-top:1px solid var(--g2);padding:1.8rem}
.order-details.open{display:block}
.order-progress{display:flex;gap:0;margin-bottom:2rem;position:relative}
.order-progress::before{content:'';position:absolute;top:10px;left:0;right:0;height:1px;background:var(--g2);z-index:0}
.progress-step{flex:1;text-align:center;position:relative;z-index:1}
.ps-dot{width:20px;height:20px;border-radius:50%;background:var(--white);border:1px solid var(--g3);margin:0 auto .5rem;display:flex;align-items:center;justify-content:center;font-size:.8rem;color:var(--g4)}
.progress-step.done .ps-dot{background:var(--black);border-color:var(--black);color:#fff}
.progress-step.active .ps-dot{background:var(--white);border-color:var(--black);color:var(--black);box-shadow:0 0 0 3px var(--g1)}
.ps-label{font-size:.74rem;color:var(--g4);text-transform:uppercase;letter-spacing:.1em;font-weight:600}
.progress-step.done .ps-label,.progress-step.active .ps-label{color:var(--black);font-weight:700}
.order-tracking-box{background:var(--g1);border:none;border-radius:var(--r);padding:1.2rem;margin-bottom:1.2rem}
.tracking-link{color:var(--black);font-size:.96rem;cursor:pointer;text-decoration:underline}
.order-item-row{display:flex;align-items:center;gap:.9rem;padding:.7rem 0;border-bottom:1px solid var(--g1);font-size:.98rem}
.order-item-thumb{width:52px;height:52px;border-radius:var(--r);overflow:hidden;background:var(--g2);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}
.order-item-thumb img{width:100%;height:100%;object-fit:cover}
.order-actions{display:flex;gap:1.1rem;flex-wrap:wrap;margin-top:1.2rem}
.order-action-btn{
  background:none;border:none;border-bottom:1px solid var(--g4);
  padding:0 0 .1rem;font-family:'Inter',sans-serif;
  font-size:.86rem;font-weight:600;border-radius:0;cursor:pointer;transition:var(--tr);
  letter-spacing:.08em;text-transform:uppercase;color:var(--g5);
}
.order-action-btn:hover{color:var(--black);border-color:var(--black)}

/* ══════════════════════ CART DRAWER ══════════════════════ */
.overlay{position:fixed;inset:0;background:rgba(10,10,9,.5);z-index:300;opacity:0;pointer-events:none;transition:opacity .4s ease;backdrop-filter:blur(2px)}
.overlay.on{opacity:1;pointer-events:all}
.cart-drawer{
  position:fixed;top:0;right:-440px;width:420px;height:100vh;
  background:var(--white);z-index:301;display:flex;flex-direction:column;
  transition:right .45s cubic-bezier(.16,1,.3,1);
  box-shadow:none;border-left:1px solid var(--g2);
}
.cart-drawer.on{right:0}
.cd-header{background:var(--white);color:var(--black);padding:1.7rem 1.8rem;display:flex;justify-content:space-between;align-items:center;flex-shrink:0;border-bottom:1px solid var(--g2)}
.cd-header-title{font-family:'Bebas Neue',sans-serif;font-size:1.5rem;letter-spacing:.03em}
.cd-close{background:none;border:none;color:var(--g4);cursor:pointer;font-size:1.3rem;transition:var(--tr)}
.cd-close:hover{color:var(--black)}
.cd-items{flex:1;overflow-y:auto;padding:0 1.8rem}
.cd-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--g4);font-size:1rem;gap:.7rem;text-align:center;padding:2rem}
.cart-item{display:flex;align-items:center;gap:1rem;padding:1.4rem 0;border-bottom:1px solid var(--g1)}
.cart-item-thumb{width:70px;height:70px;background:var(--g2);border-radius:var(--r);display:flex;align-items:center;justify-content:center;font-size:1.7rem;flex-shrink:0;overflow:hidden;color:var(--g4)}
.cart-item-thumb img{width:100%;height:100%;object-fit:cover}
.cart-item-info{flex:1;min-width:0}
.cart-item-name{font-size:1rem;font-weight:600;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cart-item-brand{font-size:.86rem;color:var(--g4);text-transform:uppercase;letter-spacing:.04em}
.cart-item-price{font-size:1rem;font-weight:700;letter-spacing:0;margin-top:.3rem}
.qty-control{display:flex;align-items:center;gap:.7rem;margin-top:.55rem}
.qty-btn{
  background:transparent;border:1px solid var(--g3);width:24px;height:24px;
  border-radius:50%;cursor:pointer;font-size:1rem;transition:var(--tr);
  display:flex;align-items:center;justify-content:center;font-weight:600;
}
.qty-btn:hover{border-color:var(--black)}
.cart-item-remove{background:none;border:none;color:var(--g3);cursor:pointer;font-size:1rem;transition:var(--tr);flex-shrink:0}
.cart-item-remove:hover{color:var(--red)}
.cd-summary{padding:1.4rem 1.8rem 1.8rem;border-top:1px solid var(--g2);flex-shrink:0;background:var(--white)}
.cd-summary-row{display:flex;justify-content:space-between;font-size:.96rem;margin-bottom:.6rem;color:var(--g4)}
.cd-total{font-weight:700;font-size:1.1rem;color:var(--black)}
.cd-actions{display:flex;flex-direction:column;gap:.7rem;margin-top:1rem}
.cd-checkout{
  width:100%;background:var(--black);color:#fff;border:1px solid var(--black);
  padding:1rem;border-radius:var(--r);cursor:pointer;
  font-family:'Inter',sans-serif;font-size:.9rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;transition:var(--tr);
}
.cd-checkout:hover{background:transparent;color:var(--black)}
.cd-clear{
  width:100%;background:transparent;color:var(--g4);
  border:1px solid var(--g2);padding:.85rem;
  border-radius:var(--r);cursor:pointer;font-family:'Inter',sans-serif;
  font-size:.84rem;font-weight:600;transition:var(--tr);letter-spacing:.08em;text-transform:uppercase;
}
.cd-clear:hover{border-color:var(--red);color:var(--red)}

/* ══════════════════════ CHECKOUT MODAL ══════════════════════ */
.pay-modal{position:fixed;inset:0;background:rgba(10,10,9,.55);z-index:400;display:none;align-items:center;justify-content:center;padding:1rem;backdrop-filter:blur(4px)}
.pay-modal.on{display:flex}
.pay-card{background:var(--white);width:640px;max-width:100%;border-radius:var(--r);overflow:hidden;max-height:92vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}
.pay-head{background:var(--white);padding:1.7rem 2rem;display:flex;justify-content:space-between;align-items:center;color:var(--black);flex-shrink:0;border-bottom:1px solid var(--g2)}
.pay-head h3{font-family:'Bebas Neue',sans-serif;font-size:1.6rem;letter-spacing:.03em}
.pay-head-close{background:none;border:none;color:var(--g4);cursor:pointer;font-size:1.3rem;transition:var(--tr)}
.pay-head-close:hover{color:var(--black)}
.pay-steps{display:flex;background:var(--white);border-bottom:1px solid var(--g2);flex-shrink:0}
.pay-step-btn{
  flex:1;padding:1rem;text-align:center;font-size:.82rem;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;border:none;background:none;
  cursor:pointer;position:relative;transition:var(--tr);color:var(--g4);
  font-family:'Inter',sans-serif;
}
.pay-step-btn::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:transparent;transition:var(--tr)}
.pay-step-btn.active{color:var(--black)}
.pay-step-btn.active::after{background:var(--black)}
.pay-step-btn.done{color:var(--g5)}
.pay-body{flex:1;overflow-y:auto}
.pay-section{display:none;padding:2rem}
.pay-section.active{display:block}
.receipt-box{background:transparent;border:none;border-bottom:1px solid var(--g2);border-radius:0;padding:0 0 1.4rem;margin-bottom:1.4rem}
.receipt-item{display:flex;justify-content:space-between;padding:.6rem 0;border-bottom:1px solid var(--g1);font-size:.96rem}
.receipt-item:last-child{border-bottom:none}
.receipt-totals{margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--g2)}
.receipt-total-row{display:flex;justify-content:space-between;font-size:.96rem;margin-bottom:.5rem}
.receipt-grand{font-weight:700;font-size:1.1rem}
.pay-label{font-size:.82rem;color:var(--g4);display:block;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.12em;font-weight:600}
.pay-input{
  width:100%;background:transparent;border:none;border-bottom:1px solid var(--g3);
  padding:.7rem .1rem;font-family:'Inter',sans-serif;font-size:.95rem;
  border-radius:0;margin-bottom:1.1rem;transition:var(--tr);
}
.pay-input:focus{border-color:var(--black);outline:none}
.pay-select{
  width:100%;background:transparent;border:none;border-bottom:1px solid var(--g3);
  padding:.7rem .1rem;font-family:'Inter',sans-serif;font-size:.95rem;
  border-radius:0;margin-bottom:1.1rem;cursor:pointer;
}
.delivery-estimate{font-size:.92rem;color:var(--g4);margin-top:-.5rem;margin-bottom:1rem;padding:0;background:transparent;border-radius:var(--r);border:none;display:flex;align-items:center;gap:.4rem}
.pay-methods-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-bottom:1.4rem;background:var(--g2)}
.pay-method{
  border:none;padding:1.5rem;text-align:center;
  cursor:pointer;border-radius:var(--r);transition:var(--tr);background:var(--white);
}
.pay-method:hover{background:var(--g1)}
.pay-method.selected{background:var(--black);color:#fff;box-shadow:none}
.pay-method-icon{font-size:1.9rem;margin-bottom:.5rem}
.pay-method-name{font-size:1rem;font-weight:700}
.pay-method-desc{font-size:.86rem;color:var(--g4);margin-top:.3rem}
.pay-method.selected .pay-method-desc{color:rgba(255,255,255,.5)}
.no-cod-notice{background:transparent;border:1px solid var(--g3);border-radius:var(--r);padding:1rem 1.2rem;font-size:.94rem;color:var(--g5);margin-bottom:1.3rem;line-height:var(--lh-relaxed)}
.pay-qr{display:none;margin-top:1.4rem;text-align:center}
.pay-qr.show{display:block}
.qr-box{background:transparent;border:1px solid var(--g2);border-radius:var(--r);padding:1.8rem;display:inline-block;box-shadow:none}
.qr-grid{display:grid;grid-template-columns:repeat(10,17px);gap:2px;margin:0 auto 1rem}
.qr-cell{width:17px;height:17px;background:var(--black);border-radius:0}
.qr-cell.w{background:transparent}
.pay-qr-amount{font-family:'Bebas Neue',sans-serif;font-size:1.7rem;color:var(--black);letter-spacing:.02em}
.i-have-paid-btn{
  width:100%;background:var(--black);color:#fff;border:1px solid var(--black);
  padding:1rem;border-radius:var(--r);cursor:pointer;
  font-family:'Inter',sans-serif;font-size:.95rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;transition:var(--tr);margin-top:1rem;
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
}
.i-have-paid-btn:hover{background:transparent;color:var(--black)}
.pay-nav{display:flex;gap:1rem;padding:1.5rem 2rem;border-top:1px solid var(--g2);flex-shrink:0;background:var(--white)}
.pay-nav-back{
  flex:1;background:transparent;color:var(--g4);
  border:1px solid var(--g3);padding:.9rem;border-radius:var(--r);
  cursor:pointer;font-family:'Inter',sans-serif;font-size:.88rem;font-weight:500;transition:var(--tr);
  letter-spacing:.08em;text-transform:uppercase;
}
.pay-nav-back:hover{border-color:var(--black);color:var(--black)}
.pay-nav-next{
  flex:2;background:var(--black);color:#fff;border:1px solid var(--black);
  padding:.9rem;border-radius:var(--r);cursor:pointer;
  font-family:'Inter',sans-serif;font-size:.9rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;transition:var(--tr);
}
.pay-nav-next:hover{background:transparent;color:var(--black)}

/* ══════════════════════ CONFIRM MODAL ══════════════════════ */
.confirm-modal{position:fixed;inset:0;background:rgba(10,10,9,.6);z-index:500;display:none;align-items:center;justify-content:center;padding:1rem;backdrop-filter:blur(4px)}
.confirm-modal.on{display:flex}
.confirm-card{background:var(--white);width:560px;max-width:100%;border-radius:var(--r);overflow:hidden;text-align:center;box-shadow:var(--shadow-xl)}
.confirm-head{background:var(--black);padding:2.6rem 2rem;color:#fff}
.confirm-icon{margin-bottom:1rem;display:flex;justify-content:center;color:#fff}
.confirm-head h3{font-family:'Bebas Neue',sans-serif;font-size:2.2rem;letter-spacing:.01em}
.confirm-body{padding:2.4rem}
.confirm-order-id{font-family:'Bebas Neue',sans-serif;font-size:1.3rem;color:var(--g4);margin-bottom:1.5rem;letter-spacing:.05em}
.confirm-items{background:var(--g1);border-radius:var(--r);padding:1.2rem;text-align:left;margin-bottom:1.5rem;font-size:.98rem;max-height:210px;overflow-y:auto}
.confirm-total{font-size:1.1rem;font-weight:700;margin-bottom:1.8rem}
.confirm-ok-btn{
  background:var(--black);color:#fff;border:1px solid var(--black);
  padding:1rem 3rem;border-radius:var(--r);cursor:pointer;
  font-family:'Inter',sans-serif;font-size:.9rem;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;transition:var(--tr);
}
.confirm-ok-btn:hover{background:transparent;color:var(--black)}

/* ══════════════════════ MERCHANT MODAL ══════════════════════ */
.merchant-modal{position:fixed;inset:0;background:rgba(10,10,9,.6);z-index:500;display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.merchant-modal.on{display:flex}
.merchant-modal-card{background:var(--white);width:460px;max-width:100%;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-xl)}
.mm-head{background:var(--black);padding:2.6rem;text-align:center;color:#fff}
.mm-head-icon{margin-bottom:.7rem;display:flex;justify-content:center;color:var(--accent3)}
.mm-head h3{font-family:'Bebas Neue',sans-serif;font-size:1.75rem;letter-spacing:.03em}
.mm-body{padding:2.2rem}
.mm-label{font-size:.82rem;color:var(--g4);display:block;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.14em;font-weight:600}
.mm-select,.mm-input{
  width:100%;background:transparent;border:none;border-bottom:1px solid var(--g3);
  padding:.75rem .1rem;font-family:'Inter',sans-serif;font-size:.95rem;
  border-radius:0;margin-bottom:1.3rem;transition:var(--tr);
}
.mm-select:focus,.mm-input:focus{border-color:var(--black);outline:none}
.mm-submit{
  width:100%;background:var(--black);color:#fff;border:1px solid var(--black);
  padding:1rem;border-radius:var(--r);cursor:pointer;
  font-family:'Inter',sans-serif;font-size:.92rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;margin-bottom:.9rem;transition:var(--tr);
}
.mm-submit:hover{background:transparent;color:var(--black)}
.mm-cancel{width:100%;background:transparent;border:none;color:var(--g4);cursor:pointer;font-family:'Inter',sans-serif;font-size:.88rem;padding:.55rem;letter-spacing:.06em;text-transform:uppercase}
.mm-hint{font-size:.9rem;color:var(--g4);margin-bottom:1.2rem;line-height:1.6}
.mm-error{background:transparent;border:1px solid var(--red);border-radius:var(--r);padding:.7rem 1.1rem;font-size:.94rem;color:var(--red);margin-bottom:1rem;display:none}

/* ══════════════════════ MERCHANT DASHBOARD ══════════════════════ */
.merch-page-hd{grid-area:header;display:flex;justify-content:space-between;align-items:center;margin-bottom:0;flex-wrap:wrap;gap:.6rem;border-bottom:1px solid var(--g2);padding-bottom:.8rem}
.merch-page-title{font-family:'Bebas Neue',sans-serif;font-size:2.6rem;letter-spacing:.01em}
.merch-logout-btn{
  background:none;border:1px solid var(--g3);color:var(--g5);
  padding:.5rem 1.2rem;font-family:'Inter',sans-serif;font-size:.82rem;font-weight:600;
  border-radius:20px;cursor:pointer;transition:var(--tr);letter-spacing:.1em;text-transform:uppercase;
}
.merch-logout-btn:hover{border-color:var(--red);color:var(--red)}
#page-merchant .page-container{
  max-width:none;margin:0;padding:28px 32px 48px;
  display:grid;grid-template-columns:300px 1fr;
  grid-template-areas:"sidebar header" "sidebar stats" "sidebar content";
  grid-template-rows:auto auto 1fr;gap:1.6rem 2.2rem;align-items:start;
}
.merch-stats{grid-area:stats;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:0;background:transparent}
.merch-stat-card{
  background:var(--white);border:1px solid var(--g2);border-radius:16px;
  padding:1.5rem 1.4rem;text-align:left;box-shadow:0 2px 10px rgba(12,11,9,.04);
  transition:var(--tr);
}
.merch-stat-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(12,11,9,.09)}
.merch-stat-val{font-family:'Bebas Neue',sans-serif;font-size:2.2rem;color:var(--black);letter-spacing:.01em}
.merch-stat-lbl{font-size:.74rem;color:var(--g4);text-transform:uppercase;letter-spacing:.16em;margin-top:5px;font-weight:600}
.merch-tabs{
  grid-area:sidebar;display:flex;flex-direction:column;gap:.3rem;
  background:var(--black);border-radius:20px;padding:1.5rem 1.1rem 1.7rem;
  border-bottom:none;position:sticky;top:calc(var(--top-h) + 20px);align-self:start;
  max-height:calc(100vh - var(--top-h) - 40px);overflow-y:auto;overflow-x:hidden;
  scrollbar-width:thin;
}
.ms-brand{
  color:#fff;font-family:'Bebas Neue',sans-serif;font-size:1.4rem;letter-spacing:.06em;
  padding:.4rem .8rem 1.3rem;border-bottom:1px solid rgba(255,255,255,.09);margin-bottom:.7rem;
  display:flex;align-items:center;gap:.6rem;text-transform:uppercase;
}
.mt-tab-indicator{
  position:absolute;left:1.1rem;right:1.1rem;top:0;height:0;
  background:var(--g1);border-radius:12px;
  transform:translateY(0);
  transition:transform .38s cubic-bezier(.16,1,.3,1),height .38s cubic-bezier(.16,1,.3,1);
  z-index:0;pointer-events:none;
}
.mt-tab{
  position:relative;z-index:1;
  background:none;border:none;border-bottom:none;border-radius:12px;
  padding:.85rem 1rem;font-family:'Inter',sans-serif;width:100%;text-align:left;
  font-size:.96rem;font-weight:600;cursor:pointer;transition:color .2s ease,background-color .2s ease;
  display:flex;align-items:center;gap:.7rem;letter-spacing:.01em;text-transform:none;color:#a39d91;
}
.mt-tab.active{color:var(--black);background:transparent}
.mt-tab.active svg{color:var(--accent-ink)}
.mt-tab:hover:not(.active){color:#fff;background:rgba(255,255,255,.07)}
.ms-divider{height:1px;background:rgba(255,255,255,.09);margin:.6rem .3rem}
.mgmt-home-btn{background:#fff;color:#0c0b09}
.mgmt-home-btn:hover{background:#eee;color:#0c0b09}
@media(max-width:900px){
  #page-merchant .page-container{grid-template-columns:1fr;grid-template-areas:"header" "sidebar" "stats" "content";padding:18px 16px 32px}
  .merch-tabs{position:static;flex-direction:row;overflow-x:auto;overflow-y:hidden;max-height:none;flex-wrap:nowrap}
  .mt-tab{flex:0 0 auto;white-space:nowrap}
  .mt-tab-indicator{display:none}
  .mt-tab.active{background:var(--g1);color:var(--black)}
  .ms-brand,.ms-divider{display:none}
  .merch-stats{grid-template-columns:repeat(2,1fr)}
}
.merch-add-btn{
  background:var(--black);color:#fff;border:1px solid var(--black);
  padding:.7rem 1.5rem;font-family:'Inter',sans-serif;
  font-size:.86rem;font-weight:700;border-radius:var(--r);cursor:pointer;
  margin-bottom:1.2rem;transition:var(--tr);letter-spacing:.1em;text-transform:uppercase;
}
.merch-add-btn:hover{background:transparent;color:var(--black)}
.merch-product-toolbar{display:flex;align-items:center;gap:.8rem;margin-bottom:1.2rem;flex-wrap:wrap}
.merch-search-wrap{position:relative;flex:1;min-width:220px;max-width:360px}
.merch-search-wrap input{
  width:100%;background:transparent;border:none;border-bottom:1px solid var(--g3);
  padding:.65rem .1rem .65rem 1.8rem;font-family:'Inter',sans-serif;
  font-size:.98rem;border-radius:0;transition:var(--tr);
}
.merch-search-wrap input:focus{border-color:var(--black);outline:none}
.merch-search-icon{position:absolute;left:0;top:50%;transform:translateY(-50%);color:var(--g4);font-size:1rem;pointer-events:none;display:flex;align-items:center}
.merch-table{width:100%;border-collapse:collapse;font-size:1rem}
.merch-table th,.merch-table td{border:none;border-bottom:1px solid var(--g2);padding:.9rem .8rem;text-align:left;vertical-align:middle}
.merch-table th{background:transparent;font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;color:var(--g4);font-weight:700;border-bottom:1px solid var(--black)}
.merch-table tr:hover td{background:var(--g1)}
.tbl-action{
  background:none;border:none;border-bottom:1px solid var(--g4);
  padding:0;font-family:'Inter',sans-serif;
  font-size:.84rem;font-weight:600;border-radius:0;cursor:pointer;transition:var(--tr);margin-right:.9rem;
  letter-spacing:.05em;text-transform:uppercase;color:var(--g5);
}
.tbl-action:hover{color:var(--black);border-color:var(--black)}
.tbl-action.danger:hover{color:var(--red);border-color:var(--red)}
.status-select{background:transparent;border:1px solid var(--g3);padding:.3rem .6rem;font-family:'Inter',sans-serif;font-size:.92rem;border-radius:var(--r)}
.prod-id-badge{display:inline-block;background:transparent;color:var(--g4);font-size:.8rem;font-weight:600;padding:0;border-radius:var(--r);font-family:'Inter',monospace;letter-spacing:.06em}

/* ══════════════════════ ORDER STATUS TABS ══════════════════════ */
.order-status-nav{
  display:flex;gap:0;margin-bottom:2rem;
  background:var(--white);border:none;border-bottom:1px solid var(--g2);
  border-radius:0;overflow:hidden;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;
  box-shadow:none;
}
.order-status-nav::-webkit-scrollbar{display:none}
.osn-tab{
  flex:1;min-width:110px;padding:.9rem .6rem;
  font-family:'Inter',sans-serif;font-size:.86rem;font-weight:600;
  text-align:center;cursor:pointer;background:none;border:none;border-bottom:2px solid transparent;
  color:var(--g4);transition:var(--tr);
  display:flex;flex-direction:column;align-items:center;gap:3px;white-space:nowrap;
  letter-spacing:.04em;text-transform:uppercase;
}
.osn-tab:hover{color:var(--black)}
.osn-tab.active{color:var(--black);border-bottom-color:var(--black)}
.osn-tab.active .osn-count{background:var(--black);color:#fff}
.osn-icon{font-size:1.1rem;line-height:1;display:flex}
.osn-label{font-size:.82rem;letter-spacing:.02em}
.osn-count{background:var(--g2);color:var(--g5);font-size:.72rem;font-weight:700;min-width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0 4px}
.osn-count.has-items{background:var(--red);color:#fff}

/* ══════════════════════ INVENTORY ══════════════════════ */
.inv-bar{display:flex;align-items:center;gap:1rem;margin-bottom:.9rem;font-size:.96rem}
.inv-label{min-width:150px;color:var(--black);font-weight:500}
.inv-track{flex:1;height:2px;background:var(--g2);border-radius:var(--r);overflow:hidden}
.inv-fill{height:100%;border-radius:var(--r);background:var(--black)}
.inv-fill.low{background:var(--accent-ink)}
.inv-fill.out{background:var(--red)}
.inv-num{font-size:.9rem;color:var(--g4);min-width:70px;text-align:right;font-weight:600}
.inv-edit{background:#fff;border:1px solid var(--g3);padding:.3rem .85rem;font-family:'Inter',sans-serif;font-size:.86rem;font-weight:600;border-radius:999px;cursor:pointer;transition:var(--tr);line-height:1.3}
.inv-edit:hover{background:var(--black);color:#fff;border-color:var(--black)}
.merch-order-detail{background:transparent;border:1px solid var(--g2);border-radius:var(--r);padding:1.5rem;margin-bottom:1px;box-shadow:none}
.mod-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}
.mod-id{font-family:'Bebas Neue',sans-serif;font-size:1.3rem;letter-spacing:.03em}
.mod-customer-info{font-size:.96rem;color:var(--g4);margin-bottom:1rem;line-height:var(--lh-relaxed)}
.mod-tracking-input{display:flex;gap:.6rem;margin-bottom:1rem;flex-wrap:wrap}
.mod-tracking-input input{
  flex:1;min-width:0;background:transparent;border:none;border-bottom:1px solid var(--g3);
  padding:.6rem .1rem;font-family:'Inter',sans-serif;font-size:.96rem;
  border-radius:0;transition:var(--tr);
}
.mod-tracking-input input:focus{border-color:var(--black);outline:none}
.mod-send-btn{
  background:var(--black);color:#fff;border:1px solid var(--black);
  padding:.6rem 1.2rem;font-family:'Inter',sans-serif;
  font-size:.84rem;font-weight:700;border-radius:var(--r);
  cursor:pointer;white-space:nowrap;transition:var(--tr);letter-spacing:.06em;text-transform:uppercase;
}
.mod-send-btn:hover{background:transparent;color:var(--black)}
.review-respond-btn{
  background:none;border:none;border-bottom:1px solid var(--g4);
  padding:0;font-family:'Inter',sans-serif;
  font-size:.84rem;font-weight:600;border-radius:0;cursor:pointer;transition:var(--tr);margin-top:.6rem;
  letter-spacing:.06em;text-transform:uppercase;color:var(--g5);
}
.review-respond-btn:hover{color:var(--black);border-color:var(--black)}
.review-respond-area{display:none;margin-top:.6rem}
.review-respond-area.open{display:block}
.review-respond-area textarea{
  width:100%;background:transparent;border:1px solid var(--g3);
  padding:.7rem;font-family:'Inter',sans-serif;font-size:.96rem;
  border-radius:var(--r);resize:vertical;min-height:75px;transition:var(--tr);
}
.review-respond-area textarea:focus{border-color:var(--black);outline:none}
.review-respond-submit{
  background:var(--black);color:#fff;border:1px solid var(--black);
  padding:.5rem 1.1rem;font-family:'Inter',sans-serif;font-size:.84rem;font-weight:700;
  border-radius:var(--r);cursor:pointer;margin-top:.5rem;letter-spacing:.06em;text-transform:uppercase;
}
.review-respond-submit:hover{background:transparent;color:var(--black)}
.chart-container{background:var(--white);border:1px solid var(--g2);border-radius:var(--r);padding:1.8rem;margin-bottom:2.6rem;height:290px;box-shadow:none}
.top-products-list{list-style:none}
.top-product-item{display:flex;align-items:center;gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--g1)}
.tp-rank{font-family:'Bebas Neue',sans-serif;font-size:1.5rem;color:var(--g3);width:26px;flex-shrink:0}
.tp-name{flex:1;font-size:1rem;font-weight:600}

/* ══════════════════════ EDIT MODALS ══════════════════════ */
.edit-modal{position:fixed;inset:0;background:rgba(10,10,9,.55);z-index:600;display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px);padding:1rem}
.edit-modal.on{display:flex}
.edit-card{background:var(--white);width:580px;max-width:100%;border-radius:var(--r);overflow:hidden;max-height:92vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}
.edit-head{background:var(--white);padding:1.6rem 1.9rem;display:flex;justify-content:space-between;align-items:center;color:var(--black);flex-shrink:0;border-bottom:1px solid var(--g2)}
.edit-head h3{font-family:'Bebas Neue',sans-serif;font-size:1.45rem;letter-spacing:.03em}
.edit-close{background:none;border:none;color:var(--g4);cursor:pointer;font-size:1.2rem;transition:var(--tr)}
.edit-close:hover{color:var(--black)}
.edit-body{padding:1.9rem;overflow-y:auto;flex:1 1 auto;min-height:0;-webkit-overflow-scrolling:touch}
.edit-row{margin-bottom:1.3rem}
.edit-row label{font-size:.82rem;color:var(--g4);display:block;margin-bottom:.55rem;text-transform:uppercase;letter-spacing:.12em;font-weight:600}
.edit-row input,.edit-row select,.edit-row textarea{
  width:100%;background:transparent;border:none;border-bottom:1px solid var(--g3);
  padding:.7rem .1rem;font-family:'Inter',sans-serif;font-size:.95rem;
  border-radius:0;transition:var(--tr);
}
.edit-row input:focus,.edit-row select:focus,.edit-row textarea:focus{border-color:var(--black);outline:none}
.edit-row textarea{min-height:95px;resize:vertical}
.edit-row-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.img-upload-area{border:1px dashed var(--g3);border-radius:var(--r);padding:1.8rem;text-align:center;cursor:pointer;transition:var(--tr)}
.img-upload-area:hover{border-color:var(--black)}
.img-upload-icon{margin-bottom:.5rem;display:flex;justify-content:center;color:var(--g4)}
.img-preview{width:84px;height:84px;object-fit:cover;border-radius:var(--r);margin:0 auto .6rem;display:none}
.edit-actions{display:flex;gap:1rem;margin-top:1.6rem;padding-top:1.2rem;border-top:1px solid var(--g2)}
.edit-save-btn{
  flex:2;background:var(--black);color:#fff;border:1px solid var(--black);
  padding:.9rem;border-radius:var(--r);cursor:pointer;
  font-family:'Inter',sans-serif;font-size:.9rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;transition:var(--tr);
}
.edit-save-btn:hover{background:transparent;color:var(--black)}
.edit-cancel-btn{
  flex:1;background:transparent;border:1px solid var(--g3);
  color:var(--g4);padding:.9rem;border-radius:var(--r);cursor:pointer;
  font-family:'Inter',sans-serif;font-size:.88rem;font-weight:500;transition:var(--tr);
  letter-spacing:.06em;text-transform:uppercase;
}
.edit-cancel-btn:hover{border-color:var(--black);color:var(--black)}

/* ══════════════════════ BRAND IMAGE UPLOAD ══════════════════════ */
.brand-img-upload-area{border:1px dashed var(--g3);border-radius:var(--r);padding:1.4rem;text-align:center;cursor:pointer;transition:var(--tr);background:var(--g1);position:relative;overflow:hidden}
.brand-img-upload-area:hover{border-color:var(--black)}
.brand-img-upload-area.has-image{padding:0;border-style:solid;border-color:var(--black)}
.brand-img-preview-full{width:100%;height:145px;object-fit:cover;display:none;border-radius:var(--r)}
.brand-img-upload-area.has-image .brand-img-preview-full{display:block}
.brand-img-upload-area.has-image .brand-upload-placeholder{display:none}
.brand-upload-placeholder{padding:.9rem}
.brand-upload-change-overlay{display:none;position:absolute;inset:0;background:rgba(10,10,9,.6);align-items:center;justify-content:center;flex-direction:column;gap:.3rem;color:#fff;font-size:.95rem;letter-spacing:.08em;border-radius:var(--r)}
.brand-img-upload-area.has-image:hover .brand-upload-change-overlay{display:flex}

/* ══════════════════════ REVIEW MODAL ══════════════════════ */
.review-modal{position:fixed;inset:0;background:rgba(10,10,9,.55);z-index:600;display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px);padding:1rem}
.review-modal.on{display:flex}
.review-modal-card{background:var(--white);width:540px;max-width:100%;border-radius:var(--r);overflow:hidden;max-height:92vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}
.review-modal-head{background:var(--black);padding:1.6rem 1.9rem;display:flex;justify-content:space-between;align-items:center;color:#fff;flex-shrink:0}
.review-modal-head h3{font-family:'Bebas Neue',sans-serif;font-size:1.45rem;letter-spacing:.03em}
.star-picker{display:flex;gap:.5rem;font-size:2.2rem;cursor:pointer;margin:1rem 0}
.star-picker span{color:var(--g2);transition:var(--tr);border-radius:0}
.star-picker span.on{color:var(--accent-ink)}
.review-img-upload{border:1px dashed var(--g3);border-radius:var(--r);padding:1.2rem;text-align:center;cursor:pointer;transition:var(--tr);margin-bottom:1rem}
.review-img-upload:hover{border-color:var(--black)}
.review-img-preview{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.6rem}
.review-img-preview img{width:66px;height:66px;object-fit:cover;border-radius:var(--r)}

/* ══════════════════════ TOAST ══════════════════════ */
.toast{
  position:fixed;bottom:2rem;right:2rem;
  background:var(--white);color:var(--black);
  padding:1.1rem 1.4rem 1.1rem 1.2rem;font-size:1rem;
  border-left:2px solid var(--black);
  opacity:0;z-index:9999;border-radius:var(--r);
  transform:translateY(14px);
  transition:opacity .3s cubic-bezier(.16,1,.3,1),transform .3s cubic-bezier(.16,1,.3,1);
  pointer-events:none;max-width:320px;
  font-family:'Inter',sans-serif;
  box-shadow:var(--shadow-xl);
  border:1px solid var(--g2);border-left-width:2px;
  display:flex;align-items:flex-start;gap:.8rem;line-height:1.5;
}
.toast.on{opacity:1;transform:translateY(0)}
.toast.success{border-left-color:var(--green)}
.toast.error{border-left-color:var(--red)}
.toast-icon{flex-shrink:0;margin-top:-.05rem;display:flex;align-items:center}
.toast-text{flex:1;font-size:.98rem;color:var(--g5);line-height:1.5}

.pd-gallery{position:relative;user-select:none}
.pd-img-track{display:flex;transition:transform .45s cubic-bezier(.16,1,.3,1);height:100%}
.pd-img-slide{min-width:100%;aspect-ratio:1;object-fit:cover;flex-shrink:0}
.pd-gallery-wrap{aspect-ratio:.82;border-radius:var(--r);overflow:hidden;position:relative;box-shadow:none;background:var(--g2);touch-action:pan-y}
.pd-gallery-dots{display:flex;gap:.5rem;justify-content:center;margin-top:.9rem}
.pd-gallery-dot{width:6px;height:6px;border-radius:50%;background:var(--g3);border:none;cursor:pointer;transition:var(--tr);padding:0}
.pd-gallery-dot.active{width:6px;background:var(--black)}
.pd-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;background:rgba(255,255,255,.9);backdrop-filter:blur(4px);border:none;width:38px;height:38px;border-radius:50%;cursor:pointer;font-size:.95rem;display:flex;align-items:center;justify-content:center;transition:var(--tr);box-shadow:none}
.pd-gallery-arrow:hover{background:var(--white)}
.pd-gallery-prev{left:.9rem}.pd-gallery-next{right:.9rem}
.pd-img-counter{position:absolute;bottom:.9rem;right:.9rem;background:rgba(10,10,9,.65);color:#fff;font-size:.84rem;font-weight:600;padding:.28rem .7rem;border-radius:var(--r);backdrop-filter:blur(3px);letter-spacing:.06em}

/* ══════════════════════ BACK TO TOP ══════════════════════ */
#back-to-top{
  position:fixed;bottom:2rem;right:2rem;
  background:var(--black);color:#fff;border:none;
  width:42px;height:42px;border-radius:50%;font-size:1.2rem;
  cursor:pointer;z-index:100;opacity:0;transform:translateY(14px);
  transition:var(--tr);box-shadow:var(--shadow-lg);
}
#back-to-top.show{opacity:1;transform:translateY(0)}
#back-to-top:hover{background:var(--g5)}

/* ══════════════════════ SKELETON ══════════════════════ */
.skeleton{
  background:linear-gradient(90deg,var(--g2) 25%,var(--g1) 50%,var(--g2) 75%);
  background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--r);
}
@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}

/* ══════════════════════ SITE BADGE ══════════════════════ */
.site-badge{
  position:fixed;bottom:1rem;left:50%;transform:translateX(-50%);
  background:var(--black);color:var(--accent3);
  padding:.45rem 1.4rem;font-size:.74rem;font-weight:700;
  letter-spacing:.24em;text-transform:uppercase;border-radius:var(--r);
  z-index:9997;pointer-events:none;white-space:nowrap;
  border:none;font-family:'Inter',sans-serif;
  backdrop-filter:none;
}

/* ══════════════════════ EVENTS ══════════════════════ */
.events-banner{min-height:220px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:var(--black)}
.events-banner-bg{position:absolute;inset:0;background:url('https://images.unsplash.com/photo-1533174072545-7a4b6ad7a6c3?q=80&w=2070') center/cover;filter:brightness(.26) saturate(.9)}
.events-banner-content{position:relative;z-index:2;text-align:center;color:#fff;padding:2.5rem 2rem}
.events-banner h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.6rem,6vw,4.4rem);margin-bottom:.6rem;letter-spacing:0}
.events-badge{background:transparent;color:#fff;display:inline-block;padding:.5rem 1.3rem;border-radius:var(--r);font-size:.82rem;letter-spacing:.18em;font-weight:600;text-transform:uppercase;border:1px solid rgba(255,255,255,.35)}
.event-card{background:var(--white);border:1px solid var(--g2);border-radius:var(--r);overflow:hidden;margin-bottom:1px;transition:var(--tr);box-shadow:none}
.event-card:hover{transform:none;box-shadow:none;border-color:var(--g4)}
.event-card-banner{height:190px;background:var(--black);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.event-card-banner img{width:100%;height:100%;object-fit:cover;opacity:.85;transition:transform .5s ease}
.event-card:hover .event-card-banner img{transform:scale(1.04)}
.event-card-banner-placeholder{font-size:3.7rem}
.event-card-body{padding:1.5rem 1.7rem}
.event-card-meta{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.9rem}
.event-meta-pill{font-size:.8rem;font-weight:600;padding:.24rem .8rem;border-radius:var(--r);display:inline-flex;align-items:center;gap:.3rem;letter-spacing:.05em;border:1px solid currentColor;background:transparent}
.event-meta-date{color:#92400e}
.event-meta-location{color:#0c5460}
.event-meta-brand{color:var(--g5);border-color:var(--g3)}
.event-card-title{font-family:'Bebas Neue',sans-serif;font-size:1.7rem;line-height:1.1;margin-bottom:.6rem;letter-spacing:.01em}
.event-card-desc{font-size:1rem;color:var(--g4);line-height:var(--lh-relaxed);margin-bottom:1rem}
.event-card-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding-top:.9rem;border-top:1px solid var(--g1)}
.event-card-posted-by{font-size:.9rem;color:var(--g4)}
.event-card-posted-by strong{color:var(--black)}
.event-interested-btn{
  background:none;border:1px solid var(--g3);
  padding:.4rem 1rem;font-family:'Inter',sans-serif;
  font-size:.86rem;font-weight:600;border-radius:var(--r);cursor:pointer;transition:var(--tr);
  letter-spacing:.05em;text-transform:uppercase;
}
.event-interested-btn:hover,.event-interested-btn.on{background:var(--black);color:#fff;border-color:var(--black)}
.events-empty{text-align:center;padding:5rem 2rem;color:var(--g4)}
.events-empty-icon{margin-bottom:1.2rem;opacity:.4;display:flex;justify-content:center}
.events-empty-text{font-size:.95rem;line-height:1.7}
.add-event-form{background:var(--white);border:1px solid var(--g2);border-radius:var(--r);padding:1.9rem;margin-bottom:2.2rem;box-shadow:none}
.add-event-form h3{font-family:'Bebas Neue',sans-serif;font-size:1.6rem;margin-bottom:1.2rem;letter-spacing:.03em}
.event-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}

/* ══════════════════════ WELCOME POPUP ══════════════════════ */
.wm-backdrop{position:fixed;inset:0;background:rgba(12,11,9,.72);z-index:9995;display:none;padding:1.5rem 1rem;backdrop-filter:blur(10px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;align-items:flex-start;justify-content:center}
.wm-backdrop.show{display:flex;animation:wlFade .25s ease}
body:has(.wm-backdrop.show) .site-badge,body:has(.wm-backdrop.show) #feedback-btn{display:none}
@keyframes wlFade{from{opacity:0}to{opacity:1}}
@keyframes wlRise{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}

.wl-card{position:relative;margin:auto;flex-shrink:0;width:880px;max-width:100%;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);background:var(--white,#ffffff);border-radius:26px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.45);animation:wlRise .35s cubic-bezier(.2,.8,.2,1)}
.wl-close{position:absolute;top:14px;right:14px;z-index:5;width:38px;height:38px;border-radius:50%;border:1px solid var(--g2);background:rgba(255,255,255,.9);color:var(--g5);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--tr)}
.wl-close:hover{background:var(--black);color:#fff;border-color:var(--black)}

/* left: photo collage */
.wl-art{position:relative;background:#0c0b09;min-height:560px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:1.6rem}
.wl-mosaic{position:absolute;inset:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:8px;padding:8px;overflow:hidden}
.wl-tile{position:relative;min-width:0;min-height:0;border-radius:16px;overflow:hidden;background:#18181b}
.wl-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block;transform:scale(1.02);transition:transform 6s ease}
.wm-backdrop.show .wl-tile img{transform:scale(1.09)}
.wl-t0{grid-row:1 / 3}
.wl-t3{grid-row:2 / 4;grid-column:2}
.wl-t4{display:none}
.wl-empty{background:linear-gradient(135deg,#27272a,#18181b)}
.wl-art-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,11,9,.78) 0%,rgba(12,11,9,.15) 38%,rgba(12,11,9,.2) 58%,rgba(12,11,9,.88) 100%);pointer-events:none}
.wl-brand{position:relative;z-index:2;display:flex;align-items:center;gap:.8rem}
.wl-logo{width:52px;height:52px;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;box-shadow:0 6px 18px rgba(0,0,0,.3)}
.wl-logo img{width:100%;height:100%;object-fit:contain}
.wl-word{font-family:'Bebas Neue',sans-serif;font-size:1.75rem;letter-spacing:.06em;color:#fff;line-height:1}
.wl-place{display:flex;align-items:center;gap:.4rem;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.75);font-weight:700;margin-top:.3rem}
.wl-dot{width:6px;height:6px;border-radius:50%;background:#38bdf8;box-shadow:0 0 0 3px rgba(56,189,248,.25)}
.wl-quote{position:relative;z-index:2;margin:0;font-family:'Instrument Serif','Playfair Display',Georgia,serif;font-size:1.55rem;line-height:1.25;color:#fff;font-style:italic}
.wl-quote em{color:#7dd3fc}

/* right: content */
.wl-body{padding:2.1rem 2.1rem 1.8rem;display:flex;flex-direction:column;min-width:0}
.wl-eyebrow{font-size:.76rem;letter-spacing:.22em;text-transform:uppercase;color:#0284c7;font-weight:800;margin-bottom:.55rem}
.wl-title{font-family:'Bebas Neue',sans-serif;font-size:3.3rem;line-height:.95;letter-spacing:.02em;margin:0 0 .5rem;color:var(--black)}
.wl-lead{font-size:1rem;line-height:1.55;color:var(--g5);margin:0 0 .9rem}
.wl-lead b{color:var(--black)}

.wl-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1.1rem}
.wl-chip{display:inline-flex;align-items:center;gap:.4rem;background:#fff;border:1px solid var(--g2);border-radius:999px;padding:.32rem .75rem;font-size:.84rem;font-weight:600;color:var(--g5);white-space:nowrap}
.wl-chip .lf-logo{margin:0}
.wl-chip .lf-logo img{height:15px;max-width:58px;padding:0;background:none}
.wl-chip .lf-logo + .lf-logo-txt{display:none}
.wl-chip .lf-logo.missing + .lf-logo-txt{display:inline}

/* featured shop - big */
.wl-shop{border-radius:20px;overflow:hidden;background:#fff;border:1px solid var(--g2);box-shadow:0 10px 30px rgba(12,11,9,.08);margin-bottom:1.1rem}
.wl-shop-cover{position:relative;height:118px;background:#18181b center/cover no-repeat}
.wl-shop-cover::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,11,9,.15),rgba(12,11,9,.55))}
.wl-shop-tag{position:absolute;z-index:1;top:12px;left:12px;background:rgba(255,255,255,.95);color:#0c0b09;box-shadow:0 4px 12px rgba(0,0,0,.18);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;border-radius:999px;padding:.32rem .75rem}
.wl-shop-body{padding:0 1.1rem 1.1rem;position:relative}
.wl-shop-head{display:flex;align-items:flex-start;gap:.85rem;margin-top:-34px;position:relative;z-index:1}
.wl-pick-thumb{width:68px;height:68px;border-radius:16px;background:#fff;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--g4);border:3px solid #fff;box-shadow:0 6px 16px rgba(0,0,0,.18)}
.wl-pick-thumb img{width:100%;height:100%;object-fit:cover}
.wl-shop-id{min-width:0;padding-top:40px}
.wl-pick-name{font-family:'Bebas Neue',sans-serif;font-size:1.9rem;letter-spacing:.03em;line-height:1;color:var(--black);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wl-pick-sub{font-size:.86rem;color:var(--g4);display:flex;align-items:center;gap:.25rem;margin-top:.2rem;text-transform:capitalize}
.wl-pick-sub svg{width:12px;height:12px}
.wl-shop-desc{font-size:.94rem;line-height:1.55;color:var(--g5);margin:.75rem 0 .55rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.wl-shop-meta{display:flex;flex-wrap:wrap;gap:.35rem .9rem;font-size:.82rem;color:var(--g4);margin-bottom:.8rem}
.wl-shop-meta span{display:inline-flex;align-items:center;gap:.3rem}
.wl-shop-meta svg{width:13px;height:13px}
.wl-shop-prods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;margin-bottom:.9rem}
.wl-shop-prods:empty{display:none}
.wl-prod{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;border:none;padding:0;background:var(--g1);cursor:pointer}
.wl-prod img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.wl-prod:hover img{transform:scale(1.07)}
.wl-prod span{position:absolute;left:4px;bottom:4px;background:rgba(12,11,9,.78);color:#fff;font-size:.7rem;font-weight:700;border-radius:999px;padding:.12rem .45rem}
.wl-pick-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--black,#0c0b09);color:#fff;border:none;border-radius:999px;padding:.8rem 1rem;box-shadow:0 6px 16px rgba(12,11,9,.18);font:inherit;font-size:.92rem;font-weight:800;letter-spacing:.04em;cursor:pointer;transition:var(--tr)}
.wl-pick-btn:hover{background:#27272a;transform:translateY(-1px)}
.wl-shop{border-color:var(--g2)}
.wl-shop:hover{border-color:#bae6fd}
.wl-pick-btn span{max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.wl-ctas{display:flex;gap:.6rem;margin-top:auto}
.wl-cta-main,.wl-cta-alt{border-radius:999px;padding:.95rem 1.2rem;font:inherit;font-size:.9rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:var(--tr)}
.wl-cta-main{flex:1.6;background:var(--black);color:#fff;border:1px solid var(--black)}
.wl-cta-main:hover{background:#27272a}
.wl-cta-alt{flex:1;background:transparent;color:var(--black);border:1px solid var(--g3)}
.wl-cta-alt:hover{border-color:var(--black)}

/* tablet / phone: one column, short photo strip on top */
@media(max-width:760px){
  .wl-card{grid-template-columns:minmax(0,1fr);width:480px;border-radius:22px}
  .wl-art{min-height:210px;padding:1.2rem}
  .wl-mosaic{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:minmax(0,1fr);gap:6px;padding:6px}
  .wl-t0,.wl-t3{grid-row:auto;grid-column:auto}
  .wl-quote{font-size:1.2rem}
  .wl-body{padding:1.6rem 1.3rem 1.3rem}
  .wl-title{font-size:2.6rem}
  .wl-shop-cover{height:96px}
  .wl-pick-name{font-size:1.6rem}
  .wl-close{background:rgba(255,255,255,.92)}
  .wl-brand{padding-right:2.8rem}
  .wl-word{font-size:1.45rem}
  .wl-pick-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media(max-width:400px){
  .wl-pick-btn{padding:.45rem .7rem}
  .wl-ctas{flex-direction:column}
}

/* Fallback icon for logo image failing to load */
.logo-fallback{position:relative}
.logo-fallback::after{
  content:'';
  position:absolute;inset:0;
  background:center/60% no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9803a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2l1.5 4h9L18 2'/%3E%3Cpath d='M3.5 6h17l-1.4 14.2a2 2 0 0 1-2 1.8H6.9a2 2 0 0 1-2-1.8z'/%3E%3Cline x1='9' y1='10' x2='9' y2='13'/%3E%3Cline x1='15' y1='10' x2='15' y2='13'/%3E%3C/svg%3E");
}

/* ══════════════════════ RESPONSIVE ══════════════════════ */
@media(max-width:1024px){
  .footer-inner{grid-template-columns:1fr 1fr;gap:2.4rem}
  .merch-stats{grid-template-columns:repeat(2,1fr)}
  .pd-layout{gap:3rem}
}
@media(max-width:900px){
  .topbar-nav{display:none}
  .home-hero-content{grid-template-columns:1fr}
  .pd-layout{grid-template-columns:1fr}
  .hero-brand-pills{display:none}
  .footer-inner{grid-template-columns:1fr}
  .product-card{flex-basis:calc(33.333% - 4px)}
  .brand-grid{grid-template-columns:repeat(3,1fr)}
  .brand-card{height:280px}
}
@media(max-width:640px){
  html{font-size:19px}
  #topbar{padding:0 1.2rem}
  .search-overlay-panel{width:100%;max-width:calc(100% - 24px)}
  .cart-drawer{width:100%;right:-100%}
  .carousel-section{height:64vh;min-height:420px}
  .carousel-slide{padding:0 1.5rem 3.5rem}
  .home-hero{padding:4rem 1.5rem;min-height:56vh}
  .home-section{padding:24px 14px}
  .page-container{padding:16px 14px}
  .pay-card{width:100%;border-radius:var(--r2) var(--r2) 0 0;position:fixed;bottom:0;max-height:92vh}
  .pay-modal{align-items:flex-end;padding:0}
  .merch-stats{grid-template-columns:1fr 1fr}
  .tb-social{display:none}
  .edit-row-2{grid-template-columns:1fr}
  .order-status-nav{flex-wrap:nowrap}
  .event-form-grid{grid-template-columns:1fr}
  .product-card{flex-basis:calc(50% - 4px)}
  .brand-grid{grid-template-columns:repeat(2,1fr)}
  .brand-card{height:260px}
  .section-hd{flex-direction:column;align-items:flex-start;gap:.6rem}
}
/* ============================================================
   MANAGEMENT MODE - visually separates the Merchant/Admin
   dashboard from the customer-facing storefront.
   ============================================================ */
body.management-mode .customer-nav{display:none}
body.management-mode #topbar{background:#111111;border-bottom:2px solid #c8a96e}
/* !important: the logo text has its own inline black colour */
body.management-mode .topbar-brand > div > div:first-child{color:#fff !important}
body.management-mode .topbar-brand > div > div:last-child{color:#c8a96e !important}
body.management-mode .tb-icon-btn{color:#fff}
body.management-mode .tb-social{display:none}

/* ── arrow icons (line icons instead of text arrows) ── */
.ic{display:inline-block;vertical-align:-.18em;flex-shrink:0}
.carousel-arrow,#back-to-top{display:flex;align-items:center;justify-content:center;padding:0}
.bsh-back,.pay-nav-back{display:inline-flex;align-items:center;gap:.35rem}
.bc-sep{display:inline-flex;align-items:center;color:var(--g3)}
.order-expand-btn{display:inline-flex;align-items:center;justify-content:center;padding:.25rem}
.notif-arrow{display:inline-flex;align-items:center}

/* ── coloured status badges: New = green, Sale = gold, Sold Out = red ── */
:root{--badge-new:#2f7a4f;--badge-sale:#8f6a2c;--badge-sold:#b3261e}
.card-new-badge{background:var(--badge-new)}
.card-sale-badge{background:var(--badge-sale)}
.card-soldout-badge{background:var(--badge-sold)}
.lfso-stamp{background:var(--badge-sold) !important}
/* product page stock line: coloured dot + text */
.pd-stock::before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:.45rem;vertical-align:1px;background:currentColor}
.pd-stock.stock-in{color:var(--badge-new)}
.pd-stock.stock-low{color:var(--badge-sale)}
.pd-stock.stock-out{color:var(--badge-sold)}
/* merchant product table: show the stock status as a coloured pill */
.merch-table .card-stock-badge{display:inline-block;font-size:.82rem;font-weight:700;padding:.25rem .6rem;border-radius:999px;letter-spacing:.03em;white-space:nowrap}
.merch-table .card-stock-badge.stock-in{background:#e3f1e8;color:var(--badge-new)}
.merch-table .card-stock-badge.stock-low{background:#f6ecd9;color:var(--badge-sale)}
.merch-table .card-stock-badge.stock-out{background:#f7e1df;color:var(--badge-sold)}

/* ── scrolling banners: big word, small word, big word… (like a fashion ticker) ── */
.arrivals-marquee-track .amq-item.amq-lg{font-family:'Bebas Neue',sans-serif;font-style:normal;font-size:3rem;letter-spacing:.02em;line-height:1}
.arrivals-marquee-track .amq-item.amq-sm{font-family:'Inter',sans-serif;font-style:normal;font-size:.9rem;font-weight:600;letter-spacing:.14em;line-height:1;color:rgba(255,255,255,.85)}
.arrivals-marquee-track .amq-item{align-self:center}
.arrivals-marquee-track{align-items:center}
@media(max-width:600px){.arrivals-marquee-track .amq-item.amq-lg{font-size:2.1rem}.arrivals-marquee-track .amq-item.amq-sm{font-size:.76rem}}

/* ── product grids: always 4 equal columns (3 on tablet, 2 on phone).
      Cards no longer stretch when a shop has only 1-3 products. ── */
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;align-items:start}
.product-grid > .product-card{flex:none;width:auto;min-width:0}
.product-grid > :not(.product-card){grid-column:1 / -1}          /* "no products" messages span the row */
@media(max-width:1024px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ── management dashboard: sidebar is a full-height column on the left
      edge (no empty space under it, also when zoomed out) ── */
@media(min-width:901px){
  #page-merchant .page-container{padding:0 32px 0 0;column-gap:2.4rem;min-height:calc(100vh - var(--top-h));align-items:stretch}
  #page-merchant .merch-panel{padding-bottom:48px}          /* bottom spacing lives inside the content, so the sidebar reaches the footer */
  #page-merchant.page,#page-merchant{padding-bottom:0 !important}   /* no empty strip under the black menu when you scroll to the very bottom */
  #page-merchant .merch-panel{padding-bottom:84px}
  #page-merchant .merch-tabs{align-self:start}
  #page-merchant .merch-page-hd{margin-top:28px}
  #page-merchant .merch-tabs{
    grid-row:1 / -1;border-radius:0;top:var(--top-h);
    height:calc(100vh - var(--top-h));max-height:none;padding:1.6rem 1.1rem 1.6rem;
  }
  #page-merchant .ms-divider{margin-top:auto}               /* "Customer Homepage" sits at the bottom */
}

/* ── product grids go edge to edge, like the homepage and the brand list ── */
.product-grid{width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}

/* cart: can't go above the stock */
.qty-btn:disabled{opacity:.35;cursor:not-allowed}
.cart-max{font-size:.82rem;color:#92400e;margin-top:.35rem;font-weight:600}

/* J&T tracking box on customer orders */
.lf-track{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;background:#fff !important;border:1px solid var(--g2) !important;border-radius:var(--r2,16px) !important;padding:1rem 1.1rem !important}
.lf-track-logo{flex-shrink:0;width:86px;height:52px;display:flex;align-items:center;justify-content:center;border:1px solid var(--g2);border-radius:12px;background:#fff}
.lf-track-logo .lf-logo{margin:0}
.lf-track-logo .lf-logo img{height:22px;max-width:74px;padding:0;background:none}
.lf-track-logo .lf-logo-txt{font-size:.82rem;font-weight:700;text-align:center}
.lf-track-info{flex:1;min-width:150px}
.lf-track-lbl{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--g4);font-weight:600;margin-bottom:.15rem}
.lf-track-num{font-size:1.05rem;font-weight:700;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.lf-track-actions{display:flex;gap:.45rem;flex-wrap:wrap}
.lf-track-copy,.lf-track-btn{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.5rem 1rem;font:inherit;font-size:.88rem;font-weight:700;cursor:pointer;text-decoration:none;transition:var(--tr)}
.lf-track-copy{background:#fff;color:var(--black);border:1px solid var(--g3)}
.lf-track-copy:hover{border-color:var(--black)}
.lf-track-btn{background:var(--black);color:#fff;border:1px solid var(--black)}
.lf-track-btn:hover{opacity:.85}

/* ══════════════════════ SIGN-IN (merchants + admin) - black & white ══════════════════════ */
.merchant-modal{background:rgba(12,11,9,.66);backdrop-filter:blur(10px);padding:1rem;z-index:500}
.merchant-modal.on{animation:siFade .2s ease}
.merchant-modal-card.si-card{position:relative;width:420px;max-width:100%;border-radius:24px;overflow:hidden;background:var(--white,#ffffff);box-shadow:0 30px 90px rgba(0,0,0,.45);animation:siRise .3s cubic-bezier(.2,.8,.2,1)}
@keyframes siFade{from{opacity:0}to{opacity:1}}
@keyframes siRise{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}
.si-close{position:absolute;top:14px;right:14px;z-index:2;width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--tr)}
.si-close:hover{background:#fff;color:var(--black)}
.si-head{position:relative;text-align:center;color:#fff;padding:2.2rem 2rem 1.8rem;background:radial-gradient(120% 90% at 50% 0%,rgba(255,255,255,.1) 0%,rgba(255,255,255,0) 60%),linear-gradient(180deg,#1c1b19,#0c0b09)}
.si-logo{width:64px;height:64px;margin:0 auto .8rem;border-radius:18px;background:#fff;overflow:hidden;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,.35)}
.si-logo img{width:100%;height:100%;object-fit:contain}
.si-brand{font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.6);font-weight:700;margin-bottom:.35rem}
.si-title{font-family:'Bebas Neue',sans-serif;font-size:2.2rem;letter-spacing:.03em;line-height:1;margin:0}
.si-sub{font-size:.94rem;color:rgba(255,255,255,.6);margin:.4rem 0 0}
.mm-body.si-body{padding:1.7rem 1.8rem 1.5rem}
.si-body .mm-label{margin-bottom:.45rem}
.si-row{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-top:.2rem}
.si-field{position:relative;margin-bottom:1rem}
.si-field .si-ic{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--g4);pointer-events:none;z-index:1}
.si-body .mm-input{width:100%;box-sizing:border-box;margin:0;background:#fff;border:1.5px solid var(--g2);border-radius:14px;padding:.85rem 1rem .85rem 2.6rem;font-size:1rem;transition:border-color .15s,box-shadow .15s}
.si-body .mm-input:focus{border-color:var(--black);box-shadow:0 0 0 4px rgba(12,11,9,.08)}
.si-body .lf-pw-wrap > .mm-input{padding-right:2.8rem !important}
.si-body .lf-eye{right:.45rem}
.si-body .mm-submit.si-submit{width:100%;margin-top:.4rem;border-radius:999px;padding:.95rem;background:var(--black);color:#fff;border:1.5px solid var(--black);font-weight:700;letter-spacing:.14em;transition:background .15s,transform .15s}
.si-body .mm-submit.si-submit:hover{background:#27272a;color:#fff;transform:translateY(-1px)}
#mm-forgot-slot #lf-forgot-btn{width:auto !important;margin:0 !important;padding:0 !important;background:none;border:none;font-size:.86rem;text-transform:none;letter-spacing:0;color:var(--black) !important;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
#mm-forgot-slot #lf-forgot-btn:hover{color:var(--g5) !important}
.si-note{display:flex;gap:.55rem;align-items:flex-start;margin:1.2rem 0 0;padding-top:1.1rem;border-top:1px solid var(--g2);font-size:.86rem;line-height:1.55;color:var(--g4)}
.si-note svg{flex-shrink:0;margin-top:2px;color:var(--g4)}
.si-note b{color:var(--g5)}
.si-body .mm-error{border-radius:12px;background:#fdecec;border-color:#f3c2c2}
@media(max-width:480px){.si-head{padding:1.9rem 1.4rem 1.5rem}.mm-body.si-body{padding:1.4rem 1.3rem 1.3rem}.merchant-modal{align-items:flex-end;padding:0}.merchant-modal-card.si-card{border-radius:24px 24px 0 0}}
body:has(.merchant-modal.on) .site-badge,body:has(.merchant-modal.on) #feedback-btn{display:none}

/* ══════════════════════ DASHBOARD - clean white / grey / black (no beige) ══════════════════════ */
body.management-mode{
  --white:#ffffff;--g1:#f4f4f5;--g2:#e4e4e7;--g3:#d4d4d8;--g4:#71717a;--g5:#3f3f46;
  --accent-ink:#18181b;background:#f6f6f7}
body.management-mode #main,body.management-mode .page,body.management-mode #page-merchant{background:#f6f6f7}
body.management-mode .site-badge,body.management-mode #feedback-btn{display:none !important}
/* sidebar */
body.management-mode .merch-tabs{background:#0c0c0d;box-shadow:0 10px 30px rgba(0,0,0,.12)}
body.management-mode .mt-tab{color:#a1a1aa}
body.management-mode .mt-tab:hover:not(.active){color:#fff;background:rgba(255,255,255,.07)}
body.management-mode .mt-tab-indicator{background:#ffffff}
body.management-mode .mt-tab.active{color:#0c0c0d}
body.management-mode .mt-tab.active svg{color:#0c0c0d}
body.management-mode .mgmt-home-btn{background:#ffffff !important;color:#0c0c0d !important}
/* header */
body.management-mode .merch-page-hd{border-bottom-color:#e4e4e7}
body.management-mode .merch-page-title span[style*="linear-gradient"]{background:#0c0c0d !important;color:#fff !important}
body.management-mode .merch-logout-btn,body.management-mode .merch-page-hd button{background:#fff;border:1px solid #e4e4e7;border-radius:999px;color:#18181b}
body.management-mode .merch-logout-btn:hover{border-color:#b91c1c;color:#b91c1c}
/* stat cards */
body.management-mode .merch-stat-card{background:#fff;border:1px solid #e4e4e7;border-radius:18px;box-shadow:0 1px 2px rgba(0,0,0,.04);padding:1.3rem 1.4rem;display:flex;flex-direction:column;align-items:flex-start}
body.management-mode .merch-stat-card:hover{box-shadow:0 10px 24px rgba(0,0,0,.07)}
.dp-stat-ic{width:40px;height:40px;border-radius:12px;background:#f4f4f5;color:#18181b;display:flex;align-items:center;justify-content:center;margin-bottom:.8rem}
body.management-mode .merch-stat-val{font-size:2.1rem;line-height:1;color:#0c0c0d}
body.management-mode .merch-stat-lbl{color:#71717a;margin-top:.45rem}
/* toolbar */
body.management-mode .merch-product-toolbar{background:#fff;border:1px solid #e4e4e7;border-radius:18px;padding:.75rem;margin-bottom:1rem}
body.management-mode .merch-add-btn{border-radius:999px;background:#0c0c0d;color:#fff;border:1px solid #0c0c0d;padding:.65rem 1.3rem}
body.management-mode .merch-add-btn:hover{background:#27272a;color:#fff}
body.management-mode .merch-search-wrap{max-width:none}
body.management-mode .merch-search-wrap input{background:#f4f4f5;border:1px solid transparent;border-radius:999px;padding:.65rem 1rem .65rem 2.4rem;width:100%;box-sizing:border-box}
body.management-mode .merch-search-wrap input:focus{background:#fff;border-color:#18181b}
body.management-mode .merch-search-icon{left:.9rem}
/* product table */
.dp-table-card{background:#fff;border:1px solid #e4e4e7;border-radius:18px;box-shadow:0 1px 2px rgba(0,0,0,.04)}
body.management-mode .merch-table th{background:#fafafa;color:#71717a;border-bottom:1px solid #e4e4e7;padding:.85rem 1rem;position:sticky;top:0;z-index:1}
body.management-mode .merch-table th:first-child{border-top-left-radius:18px}
body.management-mode .merch-table th:last-child{border-top-right-radius:18px}
body.management-mode .merch-table td{border-bottom:1px solid #f0f0f1;padding:.8rem 1rem}
body.management-mode .merch-table tr:last-child td{border-bottom:none}
body.management-mode .merch-table tr:hover td{background:#fafafa}
.dp-prod{display:flex;align-items:center;gap:.85rem;min-width:200px}
.dp-thumb{width:46px;height:46px;border-radius:12px;overflow:hidden;background:#f4f4f5;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#a1a1aa;border:1px solid #ececee}
.dp-thumb img{width:100%;height:100%;object-fit:cover}
.dp-name{display:flex;flex-direction:column;min-width:0}
.dp-name b{font-size:1rem;font-weight:600;color:#18181b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:280px}
.dp-name span{font-size:.82rem;color:#a1a1aa;font-weight:500;margin-top:2px}
.dp-tag{display:inline-block;font-size:.86rem;font-weight:600;color:#3f3f46;background:#f4f4f5;border-radius:999px;padding:.25rem .7rem;white-space:nowrap}
.dp-price{font-weight:700;color:#18181b;white-space:nowrap}
.dp-size{color:#52525b;font-size:.96rem}
body.management-mode .merch-table .card-stock-badge.stock-low{background:#fef3c7;color:#92400e}
.dp-actions{display:flex;gap:.45rem;justify-content:flex-end;align-items:center}
.dp-actions .tbl-action{margin:0}
.tbl-action.dp-icon{width:34px;height:34px;padding:0 !important;display:inline-flex;align-items:center;justify-content:center;border:1px solid #e4e4e7 !important;border-radius:50%;background:#fff;color:#3f3f46;text-transform:none}
.tbl-action.dp-icon:hover{background:#18181b;color:#fff;border-color:#18181b !important}
.tbl-action.dp-icon.danger:hover{background:#b91c1c;border-color:#b91c1c !important;color:#fff}
body.management-mode .tbl-action.lf-sold{background:#fff;color:#b91c1c;border-color:#f1c4c4}
body.management-mode .tbl-action.lf-restock{background:#ecfdf3;color:#076a35;border-color:#a7e3c2}
/* other panels in the dashboard: white cards, grey lines */
body.management-mode .merch-panel > div[style*="background:#fff"],body.management-mode .merch-panel > div[style*="background: #fff"]{border-color:#e4e4e7 !important;border-radius:18px !important}
body.management-mode .merch-panel [style*="background:var(--g1)"]{background:#f4f4f5 !important}
body.management-mode .merch-order-detail{background:#fff !important;border:1px solid #e4e4e7 !important;border-radius:18px !important;box-shadow:0 1px 2px rgba(0,0,0,.04)}
body.management-mode .order-filter-tabs,body.management-mode .order-status-tabs{background:#fff;border:1px solid #e4e4e7;border-radius:18px}

/* signed-in button (admin + merchants): sky blue */
#merchant-btn.logged-in{background:#0ea5e9 !important;color:#fff !important;border-color:#0ea5e9 !important}
#merchant-btn.logged-in:hover{background:#0284c7 !important;border-color:#0284c7 !important}
#merchant-btn.logged-in svg{color:#fff}
body.management-mode .merch-page-title span[style*="linear-gradient"]{background:#0ea5e9 !important;color:#fff !important}
/* cart on the dark dashboard bar: outlined */
body.management-mode .cart-btn{background:transparent;border:1.5px solid rgba(255,255,255,.55);color:#fff}
body.management-mode .cart-btn:hover{background:rgba(255,255,255,.1);border-color:#fff}

/* "Today's featured shop" tag - alive: shine sweep, twinkling star */
.wl-shop .wl-shop-tag{display:inline-flex;align-items:center;gap:.45rem;overflow:hidden;background:#0c0b09;color:#fff;border:1px solid rgba(255,255,255,.18);padding:.42rem .85rem;font-size:.74rem;letter-spacing:.16em;box-shadow:0 6px 18px rgba(0,0,0,.35);animation:wlTagIn .6s cubic-bezier(.2,.9,.3,1.3) .25s both}
.wl-shop .wl-shop-tag::before{content:'';position:absolute;top:0;bottom:0;left:-60%;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);animation:wlShine 3.2s ease-in-out 1s infinite}
.wl-star{font-style:normal;display:inline-block;color:#fde047;font-size:.9rem;line-height:1;animation:wlTwinkle 2.4s ease-in-out infinite}
@keyframes wlTagIn{from{opacity:0;transform:translateY(-8px) scale(.9)}to{opacity:1;transform:none}}
@keyframes wlShine{0%{left:-60%}55%,100%{left:130%}}
@keyframes wlPing{0%{transform:scale(1);opacity:.7}100%{transform:scale(2.8);opacity:0}}
@keyframes wlTwinkle{0%,100%{transform:scale(1) rotate(0);opacity:1}50%{transform:scale(1.25) rotate(72deg);opacity:.85}}
@media (prefers-reduced-motion:reduce){.wl-shop .wl-shop-tag,.wl-shop .wl-shop-tag::before,.wl-star{animation:none}}

/* welcome popup: living background on the right side (soft moving colour + dots) */
.wl-body{position:relative;isolation:isolate;background:#f7f9fc;overflow:hidden}
.wl-body::before{content:'';position:absolute;inset:-25%;z-index:-2;pointer-events:none;
  background:
    radial-gradient(38% 34% at 18% 12%,rgba(56,189,248,.38),transparent 70%),
    radial-gradient(34% 30% at 88% 22%,rgba(244,114,182,.30),transparent 70%),
    radial-gradient(40% 36% at 78% 92%,rgba(167,139,250,.32),transparent 70%),
    radial-gradient(36% 32% at 10% 86%,color-mix(in srgb,var(--wl-shop,#38bdf8) 45%,transparent),transparent 70%);
  filter:blur(6px);animation:wlDrift 16s ease-in-out infinite alternate}
.wl-body::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:radial-gradient(rgba(12,11,9,.09) 1px,transparent 1.3px);background-size:16px 16px;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.35) 45%,transparent 75%);mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.35) 45%,transparent 75%)}
@keyframes wlDrift{0%{transform:translate(0,0) rotate(0deg) scale(1)}50%{transform:translate(3%,-2%) rotate(8deg) scale(1.06)}100%{transform:translate(-3%,3%) rotate(-6deg) scale(1.03)}}
.wl-body .wl-chip{background:rgba(255,255,255,.82);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.wl-body .wl-shop{background:rgba(255,255,255,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-color:rgba(255,255,255,.9);box-shadow:0 18px 40px rgba(12,11,9,.12),0 0 0 1px rgba(12,11,9,.04)}
.wl-body .wl-cta-alt{background:rgba(255,255,255,.75);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
/* content slides in one after another */
.wm-backdrop.show .wl-body>*{animation:wlRise .55s cubic-bezier(.2,.8,.3,1) both}
.wm-backdrop.show .wl-body>*:nth-child(2){animation-delay:.06s}
.wm-backdrop.show .wl-body>*:nth-child(3){animation-delay:.12s}
.wm-backdrop.show .wl-body>*:nth-child(4){animation-delay:.18s}
.wm-backdrop.show .wl-body>*:nth-child(5){animation-delay:.24s}
.wm-backdrop.show .wl-body>*:nth-child(6){animation-delay:.3s}
.wm-backdrop.show .wl-body>*:nth-child(7){animation-delay:.36s}
@keyframes wlRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.wl-body .wl-shop{transition:transform .3s ease,box-shadow .3s ease}
.wl-body .wl-shop:hover{transform:translateY(-3px);box-shadow:0 24px 50px rgba(12,11,9,.16),0 0 0 1px rgba(12,11,9,.05)}
@media (prefers-reduced-motion:reduce){.wl-body::before,.wm-backdrop.show .wl-body>*{animation:none}}

/* event length choice: One day / Two or more days */
.ev-days{display:flex;gap:.5rem;flex-wrap:wrap}
.ev-day-opt{position:relative;cursor:pointer;margin:0 !important}
.ev-day-opt input{position:absolute;opacity:0;pointer-events:none}
.ev-day-opt span{display:inline-block;padding:.6rem 1.1rem;border:1.5px solid var(--g3);border-radius:999px;font-size:.95rem;font-weight:600;color:var(--g5);background:#fff;text-transform:none;letter-spacing:0;transition:all .15s}
.ev-day-opt input:checked + span{background:var(--black);border-color:var(--black);color:#fff}
.ev-day-opt input:focus-visible + span{outline:2px solid #0ea5e9;outline-offset:2px}

/* when something was posted (dashboard lists, events) */
.lf-posted{display:inline-flex;align-items:center;gap:.3rem;font-size:.82rem;color:var(--g4);line-height:1.3;flex-wrap:wrap}
.lf-posted svg{width:12px;height:12px;flex-shrink:0}
.lf-fresh{background:#0ea5e9;color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:.1rem .45rem}
.dp-name .lf-posted{display:flex;margin-top:.25rem;max-width:300px}
.dp-name .lf-posted span{margin:0;font-size:.8rem;color:var(--g4);font-weight:500}
.dp-name b.lf-fresh{font-size:.66rem;font-weight:800;color:#fff;max-width:none;overflow:visible;padding:.08rem .42rem;line-height:1.4}
.event-card .lf-posted,.edm-posted .lf-posted{margin-top:.2rem}

/* event pictures: always the WHOLE picture, with a soft blurred copy filling the empty space */
.lf-whole{position:relative;isolation:isolate}
.lf-whole::before{content:'';position:absolute;inset:-24px;background:var(--ev-bg) center/cover no-repeat;filter:blur(22px) brightness(.62) saturate(1.15);transform:scale(1.08);z-index:0}
.lf-whole > img{position:relative;z-index:1;object-fit:contain !important;opacity:1 !important}
.event-card-banner.lf-whole img{width:100%;height:100%}
.event-card:hover .event-card-banner.lf-whole img{transform:scale(1.02)}
.event-card-banner.lf-whole > div{z-index:2}
#edm-banner.edm-whole{height:auto !important;max-height:58vh;min-height:220px;display:flex;align-items:center;justify-content:center}
#edm-banner.edm-whole #edm-img{width:100%;height:auto !important;max-height:58vh;object-fit:contain !important}
#edm-banner.edm-whole > div:not(#edm-placeholder){z-index:2}
#edm-banner.edm-whole > div[style*="linear-gradient"]{background:linear-gradient(to top,rgba(0,0,0,.55) 0%,transparent 35%) !important;pointer-events:none}
#edm-banner > *:not(img){position:absolute}

/* welcome popup: the newest event */
.wl-event{display:flex;align-items:center;gap:.8rem;width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer;margin:0 0 .9rem;padding:.55rem .7rem .55rem .55rem;border-radius:16px;border:1px solid rgba(255,255,255,.9);background:rgba(255,255,255,.88);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 8px 22px rgba(12,11,9,.08);transition:transform .25s ease,box-shadow .25s ease}
.wl-event:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(12,11,9,.13)}
.wl-event:focus-visible{outline:2px solid #0ea5e9;outline-offset:2px}
.wl-ev-thumb{width:54px;height:54px;border-radius:12px;overflow:hidden;flex-shrink:0;background:#18181b;color:#fff;display:flex;align-items:center;justify-content:center}
.wl-ev-thumb img{width:100%;height:100%;object-fit:cover}
.wl-ev-info{display:flex;flex-direction:column;min-width:0;flex:1}
.wl-ev-info b{font-size:1rem;font-weight:700;color:var(--black);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wl-ev-label{display:inline-flex;align-items:center;gap:.35rem;font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#0284c7;margin-bottom:.1rem}
.wl-ev-label.now{color:#dc2626}
.wl-ev-label.now i{width:7px;height:7px;border-radius:50%;background:#ef4444;animation:wlBlink 1.4s ease-in-out infinite}
@keyframes wlBlink{0%,100%{opacity:1}50%{opacity:.25}}
.wl-ev-meta{font-size:.84rem;color:var(--g4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wl-ev-go{width:32px;height:32px;border-radius:50%;background:var(--black);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s}
.wl-event:hover .wl-ev-go{transform:translateX(2px)}
@media (prefers-reduced-motion:reduce){.wl-ev-label.now i{animation:none}}

/* event pop up: buttons and labels always on top of the picture (so the X can be pressed) */
#edm-banner > button, #edm-banner #edm-status-badge, #edm-banner #edm-brand-pill{z-index:5 !important}
#edm-banner > button{cursor:pointer}
.edm-promo{display:inline-flex;align-items:center;gap:.4rem;font-size:.76rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#0284c7;margin:0 0 .45rem}
.edm-promo.now{color:#dc2626}
.edm-promo.now i{width:8px;height:8px;border-radius:50%;background:#ef4444;animation:wlBlink 1.4s ease-in-out infinite}
@keyframes wlBlink{0%,100%{opacity:1}50%{opacity:.25}}

/* shop logo next to who posted an event */
.lf-blogo{width:28px;height:28px;border-radius:50%;object-fit:cover;background:#fff;vertical-align:middle;flex-shrink:0;box-shadow:0 0 0 2px #fff,0 2px 6px rgba(0,0,0,.25)}
.lf-blogo-md{width:32px;height:32px;margin:0 .45rem 0 .3rem;box-shadow:0 0 0 1px var(--g2),0 2px 6px rgba(0,0,0,.12)}
.event-card-posted-by{display:flex;align-items:center;flex-wrap:wrap}
.event-card-posted-by > div{flex-basis:100%}
#edm-brand-pill{align-items:center;gap:.55rem;padding:.3rem .9rem .3rem .3rem !important;background:rgba(12,11,9,.62) !important;border:1px solid rgba(255,255,255,.35) !important;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.event-meta-brand{display:inline-flex;align-items:center;gap:.4rem}
.event-meta-brand .lf-blogo{width:24px;height:24px;box-shadow:0 0 0 1px var(--g2)}

/* event pop up: clean layout */
#edm-brand-pill{display:inline-flex !important;align-items:center;gap:.6rem;padding:.35rem 1rem .35rem .35rem !important;background:rgba(12,11,9,.6) !important;border:1px solid rgba(255,255,255,.3) !important;border-radius:999px !important;color:#fff;font-size:.95rem !important;font-weight:700 !important;letter-spacing:.01em;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 6px 18px rgba(0,0,0,.3)}
#edm-brand-pill .lf-blogo.edm-pill-logo{width:44px;height:44px;margin:0;box-shadow:0 0 0 2px #fff}
.edm-title{font-family:'Bebas Neue',sans-serif;font-size:2.5rem;line-height:1;margin:0 0 .35rem;color:var(--black);letter-spacing:.01em}
.edm-host{margin-bottom:1rem}
.edm-host:empty{display:none}
.edm-host .lf-posted{font-size:.88rem}
.edm-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.2rem}
.edm-chip{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .85rem;border-radius:12px;background:var(--g1);border:1px solid var(--g2);font-size:.96rem;font-weight:600;color:var(--black)}
.edm-chip svg{width:16px;height:16px;color:var(--g4);flex-shrink:0}
.edm-desc{font-size:1.06rem;color:#27272a;line-height:1.75;margin-bottom:1.5rem;white-space:pre-line}
.edm-actions{display:flex;gap:.7rem;align-items:center}
.edm-btn-main,.edm-btn-alt{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.9rem 1.3rem;border-radius:999px;font:inherit;font-size:.96rem;font-weight:700;letter-spacing:.03em;cursor:pointer;transition:all .18s}
.edm-btn-main{flex:2;background:var(--black);color:#fff;border:1.5px solid var(--black)}
.edm-btn-main:hover{background:#27272a}
.edm-btn-main.on{background:#fff;color:var(--black)}
.edm-btn-main.on svg{fill:currentColor}
.edm-btn-alt{flex:1;background:#fff;color:var(--g5);border:1.5px solid var(--g3)}
.edm-btn-alt:hover{border-color:var(--black);color:var(--black)}
.edm-promo{margin-bottom:.4rem !important}
@media(max-width:520px){.edm-title{font-size:2.1rem}#edm-brand-pill .lf-blogo.edm-pill-logo{width:38px;height:38px}.edm-desc{font-size:1rem}}

/* event pop up: bigger text in the lower part */
.edm-host .lf-posted{font-size:1rem}
.edm-host .lf-posted svg{width:15px;height:15px}
.edm-host .lf-fresh{font-size:.8rem;padding:.15rem .55rem}
.edm-chip{font-size:1rem;padding:.6rem 1rem}
.edm-chip svg{width:18px;height:18px}
.edm-desc{font-size:1.18rem;line-height:1.7}
.edm-btn-main,.edm-btn-alt{font-size:1rem;padding:1rem 1.4rem}
.edm-btn-main svg{width:18px;height:18px}
.edm-promo{font-size:.88rem !important}
@media(max-width:520px){.edm-desc{font-size:1.08rem}.edm-chip{font-size:.95rem}}

/* bigger text: keep the top bar on one line on laptops and phones */
@media(min-width:1025px) and (max-width:1500px){
  #topbar{padding:0 1.3rem;gap:.8rem}
  .topbar-nav{gap:0}
  .tn-btn{padding:.5rem .62rem;letter-spacing:.08em;font-size:.84rem}
  .tn-btn::after{left:.62rem;right:.62rem}
  .topbar-brand-sub{letter-spacing:.16em}
}
@media(max-width:640px){
  #topbar{gap:.5rem}
  #merchant-btn{padding-left:.7rem !important;padding-right:.7rem !important}
}
@media(max-width:420px){
  #merchant-btn{font-size:0 !important;gap:0 !important}
  #merchant-btn svg{width:18px;height:18px}
}

/* icons sit in the middle of the text next to them (not too low, not too high) */
svg.ic, svg.lf-real-ic, svg[style*="vertical-align"], .lf-cal-wrap svg{vertical-align:middle !important;position:relative;top:-.1em;flex-shrink:0}
:is(button,a,span,div,label,p,b,strong,li,td,th) > svg:only-child{top:0}

/* fine tuning: buttons that already centre their icon */
.cart-btn svg, #merchant-btn svg{top:0 !important}
#feedback-btn svg{top:-.16em !important}
.pd-atc-btn svg{top:-.16em !important}

/* homepage hero: shop list as bright cards (not flat black) */
.hero-brand-pills{gap:.75rem !important;background:none !important}
.hero-brand-pill{background:#fff !important;border:1px solid rgba(255,255,255,.9) !important;border-radius:18px !important;padding:.8rem .95rem !important;display:flex !important;align-items:center;gap:.85rem;box-shadow:0 10px 28px rgba(0,0,0,.35);cursor:pointer;transition:transform .25s ease,box-shadow .25s ease;position:relative;overflow:hidden}
.hero-brand-pill::after{content:'';position:absolute;right:1rem;top:50%;width:9px;height:9px;border-top:2px solid #0c0b09;border-right:2px solid #0c0b09;transform:translateY(-50%) rotate(45deg);opacity:0;transition:opacity .2s,right .2s}
.hero-brand-pill:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(0,0,0,.45);background:#fff !important}
.hero-brand-pill:hover::after{opacity:1;right:.85rem}
.hero-brand-pill .hbp-icon{width:52px;height:52px;border-radius:14px;background:#f4f4f5;border:1px solid #e4e4e7}
.hero-brand-pill .hbp-icon img{filter:none}
.hero-brand-pill .hbp-name{color:#0c0b09;font-weight:700;font-size:1.02rem;padding-right:1.2rem}
.hero-brand-pill .hbp-tag{display:inline-block;margin-top:.3rem;color:#0369a1;background:#e0f2fe;border-radius:999px;padding:.12rem .55rem;font-size:.72rem;font-weight:700;letter-spacing:.08em}

/* home page collages: the shop's logo at the bottom right of every card */
.acl-logo{position:absolute;right:1.4rem;bottom:2.2rem;z-index:3;width:64px;height:64px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 3px rgba(255,255,255,.9),0 8px 22px rgba(0,0,0,.45);overflow:hidden;transition:transform .3s ease;pointer-events:none}
.acl-logo svg{width:28px;height:28px;color:#0c0b09;top:0 !important}
.acl-logo .lf-blogo.acl-logo-img{width:100%;height:100%;border-radius:50%;box-shadow:none;margin:0;object-fit:cover}
.arrivals-collage-col:hover .acl-logo{transform:scale(1.06)}
.arrivals-collage-col .arrivals-collage-content{right:6.2rem}
@media(max-width:640px){.acl-logo{width:52px;height:52px;right:1rem;bottom:1.6rem}.arrivals-collage-col .arrivals-collage-content{right:5rem}}

/* home page picture rows: scroll sideways with the arrows (or swipe on a phone) */
.acl-wrap{position:relative}
.arrivals-collage{overflow-x:auto !important;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}
.arrivals-collage::-webkit-scrollbar{display:none}
.arrivals-collage-col{scroll-snap-align:start}
.acl-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:6;width:58px;height:58px;border-radius:50%;
  border:1.5px solid rgba(255,255,255,.55);background:rgba(12,11,9,.45);color:#fff;
  backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2);
  display:none;align-items:center;justify-content:center;cursor:pointer;
  box-shadow:0 12px 30px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.18);
  transition:background .25s ease,color .25s ease,transform .25s ease,opacity .25s ease,border-color .25s ease}
.acl-arrow svg{top:0 !important;width:22px;height:22px;transition:transform .25s ease}
.acl-wrap.acl-can-scroll .acl-arrow{display:flex}
.acl-prev{left:1.4rem}.acl-next{right:1.4rem}
.acl-arrow:hover{background:#fff;color:#0c0b09;border-color:#fff;transform:translateY(-50%) scale(1.06)}
.acl-prev:hover svg{transform:translateX(-3px)}.acl-next:hover svg{transform:translateX(3px)}
.acl-arrow:active{transform:translateY(-50%) scale(.96)}
.acl-arrow:focus-visible{outline:2px solid #fff;outline-offset:3px}
.acl-arrow:disabled{opacity:0;pointer-events:none;transform:translateY(-50%) scale(.85)}
/* thin progress line at the bottom + counter at the top right */
.acl-progress{position:absolute;left:0;right:0;bottom:0;height:4px;background:rgba(255,255,255,.18);z-index:5;display:none}
.acl-progress i{display:block;height:100%;width:0;background:#fff;transition:width .35s ease}
.acl-count{position:absolute;top:1.2rem;right:1.4rem;z-index:5;display:none;align-items:baseline;gap:.25rem;padding:.35rem .8rem;border-radius:999px;background:rgba(12,11,9,.45);border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:rgba(255,255,255,.7);font-size:.8rem;font-weight:600;letter-spacing:.06em;font-variant-numeric:tabular-nums}
.acl-count b{color:#fff;font-size:.95rem}
.acl-count span{opacity:.6}
.acl-wrap.acl-can-scroll .acl-progress{display:block}
.acl-wrap.acl-can-scroll .acl-count{display:inline-flex}
@media(max-width:900px){
  .arrivals-collage{flex-direction:row !important;height:430px !important}
  .arrivals-collage-col{flex:0 0 86% !important;max-width:86% !important;height:100% !important;border-bottom:none !important;border-right:1px solid rgba(255,255,255,.08) !important}
  .acl-arrow{width:46px;height:46px}
  .acl-arrow svg{width:18px;height:18px}
  .acl-prev{left:.7rem}.acl-next{right:.7rem}
  .acl-count{top:.8rem;right:.8rem}
}

/* arrows: soft grey circle with a white chevron (like the picture) */
.acl-arrow{width:48px !important;height:48px !important;border:none !important;background:rgba(82,82,91,.72) !important;color:#fff !important;box-shadow:0 4px 14px rgba(0,0,0,.25) !important;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.acl-arrow svg{width:24px !important;height:24px !important}
.acl-arrow:hover{background:rgba(63,63,70,.92) !important;color:#fff !important;transform:translateY(-50%) scale(1.06)}
.acl-prev:hover svg,.acl-next:hover svg{transform:none}
.acl-count{display:none !important}
@media(max-width:900px){.acl-arrow{width:42px !important;height:42px !important}.acl-arrow svg{width:20px !important;height:20px !important}}

/* one clean icon style everywhere: the calendar is a plain line icon too */
.lf-cal [fill="#ff5446"], .lf-cal [fill="#fff"], .lf-cal [fill="#ffffff"]{fill:none !important}
.lf-cal rect[width="2.5"]{fill:currentColor !important;stroke:none !important}

/* sign in paused after too many tries */
.si-submit:disabled,.mm-submit:disabled{opacity:.45;cursor:not-allowed}

/* product page: the shop's own logo next to its name */
.pd-brand-link{gap:.6rem !important;font-size:.95rem !important;color:var(--g5) !important}
.pd-brand-link .lf-blogo.pd-brand-logo{width:40px;height:40px;border-radius:50%;box-shadow:0 0 0 1px var(--g2),0 2px 8px rgba(0,0,0,.1);margin:0;top:0 !important}
.pd-brand-link:hover span{text-decoration:underline;text-underline-offset:3px}

/* product page: bigger shop logo */
.pd-brand-link{gap:.85rem !important;font-size:1.05rem !important;margin-bottom:1.1rem !important}
.pd-brand-link .lf-blogo.pd-brand-logo{width:64px !important;height:64px !important;box-shadow:0 0 0 2px #fff,0 0 0 3px var(--g2),0 6px 16px rgba(0,0,0,.12) !important}
@media(max-width:640px){.pd-brand-link .lf-blogo.pd-brand-logo{width:54px !important;height:54px !important}}

/* forms (Add / Edit product, My Brand, events...): bigger, easier to read */
.edit-card{width:680px !important}
.edit-row label,.pay-label{font-size:.95rem !important;letter-spacing:.06em !important;color:var(--g5) !important;line-height:1.35}
.edit-row input,.edit-row select,.edit-row textarea,.pay-input{font-size:1.02rem !important}
.edit-row label span,.edit-row label small{font-size:.9em}
.edit-head h3{font-size:1.9rem !important}
#pm-imgs-preview .pmi{width:132px !important}
#pm-imgs-preview .pmi img{height:132px !important}
#pm-imgs-preview .pmi-bar button{font-size:.9rem !important;padding:.55rem 0 !important}
#pm-imgs-preview .pmi-tag{font-size:.72rem !important}
#pm-imgs-preview .pmi-x{width:28px !important;height:28px !important;font-size:.9rem !important}
.price-chip,.pm-price-chip,[class*="price-preset"] button{font-size:.95rem !important}
/* top bar stays on one line with the bigger text */
@media(min-width:1025px) and (max-width:1500px){
  .tn-btn{padding:.5rem .5rem !important;letter-spacing:.06em !important;font-size:.8rem !important}
  .tn-btn::after{left:.5rem !important;right:.5rem !important}
}

@media(max-width:420px){
  #topbar{padding:0 .75rem !important;gap:.35rem !important}
  .cart-btn{padding-left:.85rem !important;padding-right:.85rem !important;letter-spacing:.06em !important}
  .topbar-brand-name{font-size:1.5rem !important}
}
@media(max-width:380px){.cart-btn{font-size:.78rem !important;padding-left:.7rem !important;padding-right:.7rem !important}#topbar{gap:.25rem !important}.topbar-brand-name{font-size:1.35rem !important}}


/* keep icons centred next to their text at the bigger size */
.mt-tab{display:flex !important;align-items:center;gap:.65rem;padding-top:.75rem !important;padding-bottom:.75rem !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mt-tab svg{top:0 !important;flex-shrink:0}
.edm-chip svg,.lf-posted svg{top:0 !important}

/* all icons BIG (about 1.6x), everywhere */
svg[width="10"][height="10"]{width:16px;height:16px}
svg[width="11"][height="11"]{width:17px;height:17px}
svg[width="12"][height="12"]{width:19px;height:19px}
svg[width="13"][height="13"]{width:20px;height:20px}
svg[width="14"][height="14"]{width:22px;height:22px}
svg[width="15"][height="15"]{width:23px;height:23px}
svg[width="16"][height="16"]{width:24px;height:24px}
svg[width="17"][height="17"]{width:25px;height:25px}
svg[width="18"][height="18"]{width:26px;height:26px}
svg[width="20"][height="20"]{width:28px;height:28px}
svg[width="22"][height="22"]{width:30px;height:30px}
/* round icon buttons (dashboard rows: crop, edit, delete...) grow with them */
.tbl-action.dp-icon{width:46px !important;height:46px !important}
.tbl-action.dp-icon svg{width:22px !important;height:22px !important}
.tbl-action{font-size:.95rem !important;padding:.5rem 1rem !important}
.dp-actions{gap:.55rem !important}
#topbar svg{width:24px;height:24px}
.qty-btn{width:36px !important;height:36px !important;font-size:1.1rem !important}
@media(max-width:420px){#topbar svg{width:20px;height:20px}#topbar .tb-icon-btn{padding:.3rem !important}}
@media(max-width:380px){.topbar-actions{gap:.3rem !important}.cart-btn{padding-left:.6rem !important;padding-right:.6rem !important}.cart-btn svg{width:18px !important;height:18px !important}#merchant-btn{padding-left:.55rem !important;padding-right:.55rem !important}}

/* ===== Add / Edit product form: cleaner, bigger ===== */
#product-modal .edit-card{width:720px !important}
#product-modal .edit-body{padding:1.8rem 2rem 2rem}
#product-modal .edit-row{margin-bottom:1.35rem}
#product-modal .edit-row label,#product-modal .pm-sub-label{display:block;font-size:.95rem !important;font-weight:700;letter-spacing:.06em !important;text-transform:uppercase;color:#3f3f46 !important;margin-bottom:.55rem}
#product-modal .pm-sub-label{margin-top:1rem}
/* every field is the same rounded box */
#product-modal .edit-row input,#product-modal .pm-price-box input,#product-modal #pm-img{width:100%;box-sizing:border-box;background:#fff !important;border:1.5px solid #d4d4d8 !important;border-radius:12px !important;padding:.85rem 1rem !important;font-size:1.05rem !important;font-family:'Inter',sans-serif;color:#0c0b09;transition:border-color .15s,box-shadow .15s}
#product-modal input:focus{border-color:#0c0b09 !important;box-shadow:0 0 0 3px rgba(12,11,9,.08);outline:none}
#product-modal input::placeholder{color:#a1a1aa}
/* price box */
.pm-price-box{background:#fafafa;border:1px solid #e4e4e7;border-radius:16px;padding:1.1rem 1.2rem 1.2rem;margin-bottom:1.35rem}
.pm-price-box .edit-row{margin:0 !important}
.pm-chips{display:flex;gap:.55rem;flex-wrap:wrap;margin-bottom:.75rem}
#product-modal .price-chip{font-size:1rem !important;padding:.6rem 1.15rem !important;border-radius:999px !important;border:1.5px solid #d4d4d8 !important;background:#fff;font-weight:700}
#product-modal .price-chip:hover{border-color:#0c0b09 !important}
#product-modal .price-chip.on{background:#0c0b09;color:#fff;border-color:#0c0b09 !important}
/* category / size / stock side by side */
.edit-row-3{display:grid;grid-template-columns:1.3fr 1fr .8fr;gap:1rem}
@media(max-width:640px){.edit-row-3{grid-template-columns:1fr 1fr}.edit-row-3 > :first-child{grid-column:1 / -1}#product-modal .edit-body{padding:1.3rem 1.2rem 1.5rem}}
/* "Show as New Arrival": a big card with a switch */
label[for="pm-new"]{display:flex !important;align-items:center !important;gap:1rem !important;margin:0 0 1.35rem !important;padding:1rem 1.15rem !important;border:1.5px solid #d4d4d8;border-radius:16px;background:#fff;cursor:pointer;transition:border-color .2s,background .2s}
label[for="pm-new"]:has(#pm-new:checked){border-color:#0ea5e9;background:#f0f9ff}
#pm-new{appearance:none;-webkit-appearance:none;flex-shrink:0;width:56px !important;height:32px !important;border-radius:999px;background:#d4d4d8;position:relative;cursor:pointer;transition:background .2s;margin:0 !important;border:none !important;padding:0 !important}
#pm-new::after{content:'';position:absolute;top:4px;left:4px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.25);transition:transform .2s}
#pm-new:checked{background:#0ea5e9}
#pm-new:checked::after{transform:translateX(24px)}
#pm-new:focus-visible{outline:2px solid #0c0b09;outline-offset:3px}
label[for="pm-new"] > span{font-size:1.1rem !important;font-weight:700 !important;color:#0c0b09}
label[for="pm-new"] #pm-new-note{font-size:.92rem !important;font-weight:400 !important;color:#52525b !important;margin-top:.2rem;line-height:1.45}
/* photos + upload box */
#product-modal .img-upload-area{border:2px dashed #d4d4d8;border-radius:16px;padding:1.6rem 1rem;text-align:center;background:#fafafa;cursor:pointer;transition:border-color .2s,background .2s}
#product-modal .img-upload-area:hover{border-color:#0c0b09;background:#fff}
#product-modal .img-upload-area .img-upload-icon svg{width:34px !important;height:34px !important}
#product-modal .img-upload-area div{font-size:1.02rem !important;color:#52525b !important}
/* buttons */
#product-modal .edit-actions{display:flex;gap:.8rem;margin-top:1.6rem}
#product-modal .edit-save-btn,#product-modal .edit-cancel-btn{padding:1rem 1.4rem !important;font-size:1rem !important;border-radius:999px !important}
#product-modal .edit-save-btn{flex:2}
#product-modal .edit-cancel-btn{flex:1}

/* welcome popup: bigger text */
.wl-card{width:940px !important}
.wl-eyebrow{font-size:.85rem !important}
.wl-lead{font-size:1.08rem !important;line-height:1.55 !important}
.wl-chip{font-size:.92rem !important;padding:.42rem .9rem !important}
.wl-chip .lf-logo img{height:18px !important;max-width:70px !important}
.wl-shop .wl-shop-tag{font-size:.78rem !important;padding:.5rem 1rem !important}
.wl-pick-sub{font-size:.95rem !important}
.wl-pick-sub svg{width:16px !important;height:16px !important}
.wl-shop-desc{font-size:1.02rem !important;line-height:1.55 !important}
.wl-shop-meta{font-size:.92rem !important}
.wl-shop-meta svg{width:16px !important;height:16px !important}
.wl-prod span{font-size:.8rem !important;padding:.18rem .55rem !important}
.wl-pick-btn{font-size:1rem !important;padding:.95rem 1.2rem !important}
.wl-cta-main,.wl-cta-alt{font-size:.98rem !important;padding:1.05rem 1.3rem !important}
.wl-place{font-size:.78rem !important}
.wl-word{font-size:2rem !important}
.wl-quote{font-size:1.75rem !important}
@media(max-width:760px){.wl-card{width:520px !important}.wl-lead{font-size:1.02rem !important}.wl-quote{font-size:1.3rem !important}.wl-word{font-size:1.6rem !important}}

/* Trending now: still (no moving) and red */
#trending-marquee-track{animation:none !important;width:100% !important;justify-content:center;gap:0}
#trending-marquee-track .amq-item:nth-child(n+3){display:none !important}
#trending-marquee-track .amq-item,#trending-marquee-track .amq-item.amq-sm{color:#ef4444 !important}
/* event pop up: the picture and the details scroll together */
#event-detail-modal > div{overflow-y:auto !important;display:block !important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
#event-detail-modal > div > div:not(#edm-banner){overflow:visible !important;flex:none !important}

#product-modal #pm-desc{width:100%;box-sizing:border-box;background:#fff !important;border:1.5px solid #d4d4d8 !important;border-radius:12px !important;padding:.85rem 1rem !important;font-size:1.05rem !important;font-family:'Inter',sans-serif;line-height:1.55;min-height:96px;resize:vertical}
#product-modal #pm-desc:focus{border-color:#0c0b09 !important;box-shadow:0 0 0 3px rgba(12,11,9,.08);outline:none}
/* product page description */
.pd-desc{font-size:1.05rem;line-height:1.7;color:#27272a;white-space:pre-line;margin:0 0 1.3rem;padding:1rem 1.1rem;background:#fafafa;border:1px solid #e4e4e7;border-radius:14px}
.pd-desc-h{font-size:.85rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#52525b;margin:0 0 .45rem}

/* ===== customer note (initials) + order messages ===== */
.lf-ask-row{background:var(--g1);border:1px solid var(--g2);border-radius:14px;padding:1rem 1.1rem}
.lf-ask-switch{display:flex!important;align-items:flex-start;gap:.85rem;cursor:pointer;text-transform:none!important;letter-spacing:0!important;font-weight:400!important;margin:0!important}
.lf-ask-switch input{position:absolute;opacity:0;width:1px;height:1px}
.lf-ask-track{flex:0 0 52px;height:30px;border-radius:30px;background:#cfcfcf;position:relative;transition:background .2s;margin-top:.1rem}
.lf-ask-track::after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .2s}
.lf-ask-switch input:checked+.lf-ask-track{background:#111}
.lf-ask-switch input:checked+.lf-ask-track::after{transform:translateX(22px)}
.lf-ask-switch input:focus-visible+.lf-ask-track{outline:3px solid #111;outline-offset:2px}
.lf-ask-switch b{display:block;font-size:1.02rem;color:var(--black)}
.lf-ask-switch small{display:block;font-size:.9rem;color:var(--g4);line-height:1.45;margin-top:.15rem}
#pm-ask-box{margin-top:.85rem}
.lf-note-box{border:2px solid #111;border-radius:14px;padding:1rem 1.1rem;margin:0 0 1rem;background:#fff}
.lf-note-box label{display:block;font-weight:700;font-size:1.05rem;margin-bottom:.5rem;color:var(--black)}
.lf-note-box .req{color:#dc2626}
.lf-note-box input{width:100%;box-sizing:border-box;font-size:1.15rem;font-weight:600;letter-spacing:.06em;padding:.75rem .9rem;border:1.5px solid var(--g3);border-radius:10px;font-family:inherit}
.lf-note-box input:focus{outline:none;border-color:#111;box-shadow:0 0 0 3px rgba(0,0,0,.1)}
.lf-note-box input.bad{border-color:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.15)}
.lf-note-help{margin-top:.6rem;font-size:.92rem;line-height:1.55;color:var(--g5);background:#fef9c3;border-radius:10px;padding:.65rem .8rem}
.lf-note-help a{color:#111;font-weight:700;text-decoration:underline}
.lf-item-note{margin-top:.3rem;font-size:.9rem;background:#fef9c3;color:#3f3a00;border-radius:8px;padding:.3rem .55rem;display:inline-block;word-break:break-word}
.lf-item-note.merch{display:block;margin:0 0 .6rem;font-size:.95rem}
.lf-chat{background:var(--g1);border-radius:var(--r2);padding:.9rem;margin-bottom:1.1rem;font-size:.975rem;color:var(--g5)}
.lf-chat-msg{margin-bottom:.45rem;padding:.45rem .65rem;border-radius:10px;background:#fff;max-width:92%;width:fit-content}
.lf-chat-msg.me{margin-left:auto;background:#111;color:#fff}
.lf-chat-msg.me .lf-chat-time{color:#bbb}
.lf-chat-time{font-size:.8rem;color:var(--g4);margin-left:.3rem}
.lf-chat-empty{color:var(--g4);margin-bottom:.6rem}
.lf-chat-send{display:flex;gap:.5rem;margin-top:.55rem}
.lf-chat-send input{flex:1;min-width:0;padding:.65rem .8rem;border:1.5px solid var(--g3);border-radius:10px;font-size:1rem;font-family:inherit}
.lf-chat-send button{padding:.6rem 1.2rem;border:0;border-radius:10px;background:#111;color:#fff;font-weight:700;font-size:1rem;cursor:pointer}
.lf-chat-send button:disabled{opacity:.5}

/* ===== finished events: slanted "That's a Wrap" ribbon that sticks out of the box ===== */
.event-card.ev-done{position:relative;overflow:visible;margin-top:.6rem}
.event-card.ev-done .event-card-banner{border-radius:var(--r) var(--r) 0 0;overflow:hidden}
.event-card.ev-done .event-card-banner img{filter:grayscale(.55) brightness(.92)}
.ev-wrap-ribbon,#edm-status-badge.edm-wrap{position:absolute;z-index:6;top:-12px;left:-16px;background:#5b21b6;color:#fff;
  font-weight:800;font-size:.95rem;letter-spacing:.1em;text-transform:uppercase;padding:.5rem 1.4rem .5rem 1.2rem;
  transform:rotate(-7deg);transform-origin:left center;border-radius:4px 10px 10px 4px;
  box-shadow:0 6px 16px rgba(91,33,182,.35),inset 0 0 0 2px rgba(255,255,255,.22);white-space:nowrap;pointer-events:none}
.ev-wrap-ribbon::after,#edm-status-badge.edm-wrap::after{content:"";position:absolute;left:0;bottom:-9px;border-style:solid;border-width:0 14px 9px 0;border-color:transparent #3b0f7a transparent transparent}
#edm-status-badge.edm-wrap{top:1rem;left:-8px}
.ev-done-note{display:flex;align-items:flex-start;gap:.55rem;background:#ede9fe;color:#3b0f7a;border:1px solid #c4b5fd;border-radius:12px;padding:.7rem .9rem;margin:.7rem 0 .9rem;font-size:.98rem;line-height:1.5}
.ev-done-note svg{flex:0 0 auto;margin-top:.15rem;color:#5b21b6}
.ev-ended-tag{display:inline-block;padding:.55rem 1.1rem;border-radius:10px;background:#ede9fe;color:#5b21b6;font-weight:800;font-size:.9rem;letter-spacing:.08em;text-transform:uppercase}

/* option photo: click or drag */
#lf-ov .phw{position:relative}
#lf-ov .phw.lf-drop-on::after,#lf-ov .lf-ov-manyw.lf-drop-on::after{content:'Drop';font-size:.75rem;padding:.3rem .5rem}
#lf-ov .ph.busy{opacity:.5;pointer-events:none;animation:lfOvPulse 1s ease-in-out infinite}
@keyframes lfOvPulse{50%{opacity:.25}}
.lf-ov-manyw{display:inline-flex;position:relative}

/* ===== checkout: Order Review item cards ===== */
.lf-ci-h{font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--g4);margin-bottom:.4rem}
.receipt-item.lf-ci{display:flex;justify-content:flex-start;gap:.9rem;align-items:flex-start;padding:.85rem 0}
.lf-ci-ph{flex:0 0 76px;width:76px;height:95px;border-radius:12px;overflow:hidden;background:var(--g1);border:1px solid var(--g2)}
.lf-ci-ph img{width:100%;height:100%;object-fit:cover;display:block}
.lf-ci-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.3rem}
.lf-ci-shop{display:flex;align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;color:var(--g4)}
.lf-ci-shop .lf-ci-logo,.lf-ci-shop img{width:20px!important;height:20px!important;border-radius:50%;object-fit:cover}
.lf-ci-name{font-weight:700;font-size:1.02rem;line-height:1.3;color:var(--black)}
.lf-ci-opt{display:inline-flex;align-items:center;gap:.4rem;align-self:flex-start;background:var(--g1);border:1px solid var(--g2);border-radius:999px;padding:.2rem .7rem;font-size:.9rem;color:var(--g5)}
.lf-ci-opt i{width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.15);display:inline-block}
.lf-ci-row{display:flex;justify-content:space-between;align-items:baseline;margin-top:.15rem}
.lf-ci-qty{font-size:.92rem;color:var(--g4)}
.lf-ci-price{font-weight:800;font-size:1.05rem}

/* ===== merchant order card (Orders tab) ===== */
.mo-card{padding:1.4rem 1.5rem !important;margin-bottom:1rem !important}
.mo-head{align-items:flex-start;border-bottom:1px solid var(--g2);padding-bottom:1rem;margin-bottom:1.1rem}
.mo-head .mod-id{font-size:1.5rem}
.mo-date{font-size:.92rem;color:var(--g4)}
.mo-head-r{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}
.mo-status{font-weight:800;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;padding:.4rem .9rem;border-radius:999px}
.mo-select{display:flex;align-items:center;gap:.5rem;margin:0}
.mo-select span{font-size:.82rem;font-weight:700;color:var(--g4);text-transform:uppercase;letter-spacing:.06em}
.mo-select select{padding:.5rem .8rem;border-radius:10px;border:1.5px solid var(--g3);font:inherit;font-weight:600;background:#fff;cursor:pointer}
.mo-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:1rem;margin-bottom:1rem}
@media(max-width:820px){.mo-grid{grid-template-columns:1fr}}
.mo-box{border:1px solid var(--g2);border-radius:14px;padding:1rem 1.1rem;background:#fff}
.mo-h{display:flex;align-items:center;gap:.5rem;font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--g4);margin-bottom:.75rem}
.mo-h span{background:var(--g1);color:var(--black);border-radius:999px;padding:.05rem .55rem;letter-spacing:0}
.mo-box .mod-customer-info{margin:0;color:var(--g5)}
.mo-cust-name{font-weight:800;font-size:1.1rem;color:var(--black);margin-bottom:.45rem}
.mo-line{display:flex;gap:.5rem;align-items:flex-start;font-size:.95rem;line-height:1.45;margin-bottom:.35rem;word-break:break-word}
.mo-line svg{flex:0 0 auto;margin-top:.15rem;color:var(--g4)}
.mo-line a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.mo-pay{margin-top:.55rem;padding-top:.55rem;border-top:1px dashed var(--g2);align-items:center}
.mo-item{display:flex;gap:.8rem;align-items:center;padding:.6rem 0;border-bottom:1px solid var(--g1)}
.mo-item-ph{flex:0 0 56px;width:56px;height:70px;border-radius:10px;overflow:hidden;background:var(--g1)}
.mo-item-ph img{width:100%;height:100%;object-fit:cover;display:block}
.mo-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem;align-items:flex-start}
.mo-item-name{font-weight:700;font-size:.98rem;line-height:1.3}
.mo-item-opt{display:inline-flex;align-items:center;gap:.35rem;background:var(--g1);border:1px solid var(--g2);border-radius:999px;padding:.15rem .6rem;font-size:.86rem}
.mo-item-opt i{width:12px;height:12px;border-radius:50%;display:inline-block;border:1px solid rgba(0,0,0,.15)}
.mo-item-size{font-size:.85rem;color:var(--g4)}
.mo-item-q{font-size:.95rem;color:var(--g4);font-weight:600}
.mo-item-p{font-weight:800;min-width:70px;text-align:right}
.mo-sum{margin-top:.6rem;font-size:.95rem}
.mo-sum div{display:flex;justify-content:space-between;padding:.2rem 0;color:var(--g5)}
.mo-sum .mo-total{border-top:1px solid var(--g2);margin-top:.3rem;padding-top:.5rem;font-weight:800;font-size:1.08rem;color:var(--black)}
.mo-pay-box{margin-bottom:1rem}
.mo-pay-box .lf-proofs{margin:0;display:flex;flex-wrap:wrap;gap:.8rem;align-items:flex-start}
.mo-send{display:flex;gap:.7rem;align-items:flex-end;flex-wrap:wrap;margin-bottom:.9rem}
.mo-send label{display:flex;flex-direction:column;gap:.3rem;margin:0;min-width:200px}
.mo-send label.grow{flex:1;min-width:240px}
.mo-send label span{font-size:.8rem;font-weight:700;color:var(--g4);text-transform:uppercase;letter-spacing:.06em}
.mo-send input{border:1.5px solid var(--g3) !important;border-radius:10px !important;padding:.65rem .8rem !important;font:inherit;font-size:.98rem !important;background:#fff !important;width:100%;box-sizing:border-box}
.mo-send input:focus{border-color:var(--black) !important;outline:none}
.mo-send .mod-send-btn{border-radius:10px;padding:.7rem 1.4rem;height:auto}
.mo-thread{display:flex;flex-direction:column;gap:.5rem;max-height:240px;overflow-y:auto;background:var(--g1);border-radius:12px;padding:.8rem}
.mo-msg{max-width:85%;padding:.55rem .8rem;border-radius:12px;background:#fff;font-size:.95rem;line-height:1.45;border:1px solid var(--g2)}
.mo-msg.me{align-self:flex-end;background:#111;color:#fff;border-color:#111}
.mo-msg-who{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.15rem;opacity:.75;display:flex;gap:.5rem}
.mo-msg-who span{font-weight:500;text-transform:none;letter-spacing:0}
.mo-empty{color:var(--g4);font-size:.92rem}

/* order tab numbers: bold red so they stand out */
.osn-count{font-size:.95rem !important;font-weight:900 !important;min-width:26px !important;height:26px !important;border-radius:999px !important;padding:0 7px !important;margin-top:.2rem}
.osn-count.has-items,.osn-tab.active .osn-count.has-items{background:#dc2626 !important;color:#fff !important;box-shadow:0 2px 6px rgba(220,38,38,.35)}
.osn-count:not(.has-items){background:var(--g2) !important;color:var(--g4) !important}

/* ===== catalog: category chips ===== */
#page-catalog .breadcrumb{margin-bottom:1.1rem}
#brand-grid-wrap .filter-sort-bar,#brand-prods-wrap .filter-sort-bar{border-bottom:0;gap:.55rem;margin-bottom:1.6rem;padding:.35rem 0 .2rem}
#brand-grid-wrap .filter-sort-bar::before{content:'Shop by category';flex-basis:100%;font-size:.8rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--g4);margin-bottom:.15rem}
#brand-grid-wrap .f-btn,#brand-prods-wrap .f-btn{display:inline-flex;align-items:center;gap:.5rem;border:1.5px solid var(--g2) !important;background:#fff;border-radius:999px !important;padding:.6rem 1.1rem !important;margin:0 !important;font-size:.92rem;font-weight:700;letter-spacing:.06em;color:var(--g5);transition:background .15s,color .15s,border-color .15s,transform .15s,box-shadow .15s}
#brand-grid-wrap .f-btn:hover,#brand-prods-wrap .f-btn:hover{border-color:var(--black) !important;color:var(--black);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.08)}
#brand-grid-wrap .f-btn.on,#brand-prods-wrap .f-btn.on{background:var(--black);border-color:var(--black) !important;color:#fff;box-shadow:0 4px 14px rgba(0,0,0,.18)}
.f-btn .f-n{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 .4rem;border-radius:999px;background:var(--g1);color:var(--g5);font-size:.8rem;font-weight:800;letter-spacing:0}
.f-btn.on .f-n{background:rgba(255,255,255,.18);color:#fff}
#brand-grid-wrap .sort-select{margin-left:auto;border:1.5px solid var(--g2);border-radius:999px;padding:.55rem 2.2rem .55rem 1rem;font:inherit;font-size:.9rem;font-weight:600;background-color:#fff;cursor:pointer}
@media(max-width:640px){
  #brand-grid-wrap .filter-sort-bar{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin-right:-16px;padding-right:16px}
  #brand-grid-wrap .filter-sort-bar::-webkit-scrollbar{display:none}
  #brand-grid-wrap .filter-sort-bar::before{display:none}
  #brand-grid-wrap .f-btn{flex:0 0 auto}
  #brand-grid-wrap .sort-select{flex:0 0 auto;margin-left:.2rem}
}
#brand-grid-wrap .f-btn,#brand-prods-wrap .f-btn{padding:.5rem .95rem !important;font-size:.86rem}
#brand-grid-wrap .sort-select{text-transform:none;letter-spacing:0}
.notif-item.unread::after{right:auto !important;left:.45rem;top:.55rem;width:7px !important;height:7px !important;background:#dc2626 !important}

/* ===== My Orders: shop logo, item photo and names on each order ===== */
.order-card-summary .oh{display:flex;align-items:center;gap:1rem;min-width:0;flex:1}
.oh-ph{position:relative;flex:0 0 72px;width:72px;height:72px;border-radius:14px;overflow:visible;background:var(--g1);border:1px solid var(--g2);display:flex;align-items:center;justify-content:center}
.oh-ph img{width:100%;height:100%;object-fit:cover;border-radius:13px;display:block}
.oh-n{position:absolute;top:-7px;right:-7px;min-width:24px;height:24px;border-radius:999px;background:#111;color:#fff;font-size:.78rem;font-weight:800;display:flex;align-items:center;justify-content:center;padding:0 6px;border:2px solid #fff}
.oh-info{min-width:0;display:flex;flex-direction:column;gap:.3rem}
.oh-shops{display:flex;flex-wrap:wrap;gap:.4rem}
.oh-shop{display:inline-flex;align-items:center;gap:.4rem;font-weight:800;font-size:.95rem;color:var(--black)}
.oh-shop .oh-logo,.oh-shop img{width:26px!important;height:26px!important;border-radius:50%;object-fit:cover;border:1px solid var(--g2)}
.oh-shop+.oh-shop::before{content:'·';color:var(--g3);margin-right:.1rem}
.oh-items{font-size:.98rem;color:var(--g5);line-height:1.35;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.oh-more{font-size:.85rem;font-weight:700;color:var(--g4)}
.oh-id{display:flex;gap:.6rem;align-items:baseline;flex-wrap:wrap}
.oh-id .order-id{font-size:1rem}
.oh-id .order-date{font-size:.85rem}
@media(max-width:640px){.order-card-summary{flex-wrap:wrap;gap:.8rem}.oh-ph{flex-basis:60px;width:60px;height:60px}}
@media(max-width:640px){
  .order-card-summary{display:flex !important;flex-direction:column !important;align-items:stretch !important;gap:.75rem !important}
  .order-card-summary .oh{width:100%;flex:none}
  .order-card-summary .oh-info{flex:1}
  .order-card-summary>div:last-child{display:flex !important;justify-content:space-between !important;align-items:center;width:100%}
}

/* notification lists scroll inside the box (customer bell and Merchant Alerts) */
.notif-dropdown.open{display:flex !important;flex-direction:column;max-height:min(75vh,620px)}
#notif-list,#merch-notif-list{flex:1 1 auto;min-height:0;max-height:min(68vh,560px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
#notif-list::-webkit-scrollbar,#merch-notif-list::-webkit-scrollbar{width:8px}
#notif-list::-webkit-scrollbar-thumb,#merch-notif-list::-webkit-scrollbar-thumb{background:#d4d4d8;border-radius:8px}
@media(max-width:640px){
  .notif-dropdown.open{position:fixed !important;left:12px !important;right:12px !important;top:72px !important;width:auto !important;max-height:calc(100vh - 90px)}
  #notif-list,#merch-notif-list{max-height:calc(100vh - 160px)}
}

/* ===== search: shops section + shop logos ===== */
.sr-sec{padding:.7rem 1.1rem .35rem;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--g4);background:var(--g1);border-bottom:1px solid var(--g2)}
.sr-shop .sr-logo{border-radius:50%;overflow:hidden;background:#fff}
.sr-shop .sr-logo .sr-logo-img,.sr-shop .sr-logo img{width:100%!important;height:100%!important;border-radius:50%;object-fit:cover}
.sr-visit{flex:0 0 auto;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border:1.5px solid var(--black);border-radius:999px;padding:.35rem .8rem;color:var(--black);white-space:nowrap}
.sr-shop:hover .sr-visit{background:var(--black);color:#fff}
.sr-shopline{display:inline-flex;align-items:center;gap:.35rem;vertical-align:middle}
.sr-shopline .sr-mini-logo,.sr-shopline img{width:18px!important;height:18px!important;border-radius:50%;object-fit:cover;border:1px solid var(--g2)}

/* ===== every Delete / Remove / Reject button: the same red outlined pill ===== */
.tbl-action.danger,.review-action-btn.danger,.lf-fb-del,button.danger:not(.lfc-card){
  display:inline-flex !important;align-items:center;justify-content:center;gap:.35rem;
  background:#fff !important;color:#dc2626 !important;border:1.5px solid #fecaca !important;border-radius:999px !important;
  padding:.45rem 1.05rem !important;font:inherit;font-size:.88rem !important;font-weight:700 !important;letter-spacing:.01em !important;text-transform:none !important;
  line-height:1.2;height:auto !important;width:auto !important;min-width:0 !important;cursor:pointer;box-shadow:none !important;
  transition:background .15s,border-color .15s,color .15s}
.tbl-action.danger:hover,.review-action-btn.danger:hover,.lf-fb-del:hover,button.danger:not(.lfc-card):hover{background:#dc2626 !important;border-color:#dc2626 !important;color:#fff !important}
.tbl-action.danger:focus-visible,.review-action-btn.danger:focus-visible,.lf-fb-del:focus-visible{outline:3px solid #fca5a5;outline-offset:2px}
.tbl-action.danger svg,.review-action-btn.danger svg{width:14px;height:14px}
.tbl-action.danger:disabled,.lf-fb-del:disabled{opacity:.5;cursor:not-allowed}

/* ===== My Orders: order details ===== */
.order-details .oc-sec{font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--g4);margin:0 0 .8rem}
.op{position:relative;display:flex;justify-content:space-between;margin:0 0 1.6rem;padding:0 .5rem}
.op-line{position:absolute;top:17px;left:10%;right:10%;height:4px;border-radius:4px;background:var(--g2)}
.op-line i{display:block;height:100%;border-radius:4px;background:#16a34a;transition:width .6s ease}
.op-step{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.3rem}
.op-dot{width:38px;height:38px;border-radius:50%;background:#fff;border:2px solid var(--g3);color:var(--g4);font-weight:800;font-size:.9rem;display:flex;align-items:center;justify-content:center}
.op-step.done .op-dot{background:#16a34a;border-color:#16a34a;color:#fff;box-shadow:0 4px 12px rgba(22,163,74,.3)}
.op-step.cur .op-dot{border-color:#16a34a;color:#16a34a;box-shadow:0 0 0 5px rgba(22,163,74,.15);animation:opPulse 1.8s ease-in-out infinite}
.op-step.cur .op-dot svg{color:#16a34a}
.op-step.cur:first-child .op-dot{background:#16a34a;color:#fff}
.op-step.cur:first-child .op-dot svg{color:#fff}
@keyframes opPulse{50%{box-shadow:0 0 0 9px rgba(22,163,74,.08)}}
.op-name{font-size:.82rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--g4)}
.op-step.done .op-name,.op-step.cur .op-name{color:var(--black)}
.op-date{font-size:.8rem;color:#16a34a;font-weight:600;min-height:1em}
.op-cancel{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;border-radius:12px;padding:.8rem 1rem;font-weight:700;margin-bottom:1.4rem}
.oc-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:1rem;margin-bottom:1rem}
@media(max-width:760px){.oc-grid{grid-template-columns:1fr}.op-name{font-size:.68rem}.op-dot{width:32px;height:32px}.op-line{top:14px}}
.oc-box{background:#fff;border:1px solid var(--g2);border-radius:16px;padding:1rem 1.1rem}
.oc-item{display:flex;align-items:center;gap:.85rem;padding:.65rem 0;border-bottom:1px solid var(--g1)}
.oc-ph{flex:0 0 60px;width:60px;height:60px;border-radius:12px;overflow:hidden;background:var(--g1);display:flex;align-items:center;justify-content:center}
.oc-ph img{width:100%;height:100%;object-fit:cover}
.oc-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem;align-items:flex-start}
.oc-name{font-weight:700;font-size:1rem;line-height:1.3}
.oc-meta{display:flex;flex-wrap:wrap;gap:.35rem .8rem;font-size:.85rem;color:var(--g4);align-items:center}
.oc-shop{display:inline-flex;align-items:center;gap:.35rem;font-weight:700;color:var(--g5)}
.oc-shop .oc-logo,.oc-shop img{width:20px!important;height:20px!important;border-radius:50%;object-fit:cover;border:1px solid var(--g2)}
.oc-price{font-weight:800;white-space:nowrap}
.oc-sum{margin-top:.6rem;font-size:.95rem}
.oc-sum div{display:flex;justify-content:space-between;padding:.2rem 0;color:var(--g5)}
.oc-sum .oc-total{border-top:1px solid var(--g2);margin-top:.35rem;padding-top:.55rem;font-weight:800;font-size:1.1rem;color:var(--black)}
.oc-line{display:flex;gap:.55rem;align-items:flex-start;font-size:.95rem;line-height:1.45;margin-bottom:.5rem;word-break:break-word;color:var(--g5)}
.oc-line svg{flex:0 0 auto;margin-top:.15rem;color:var(--g4)}
.oc-pay{align-items:center;padding-top:.5rem;border-top:1px dashed var(--g2)}
.oc-box .lf-track{margin-top:.8rem}
.oc-chatbox{margin-bottom:1rem}
.oc-chatbox .lf-chat{margin:0}
.oc-actions{display:flex;flex-wrap:wrap;gap:.6rem}
.oc-btn{border:0;border-radius:999px;background:var(--black);color:#fff;font:inherit;font-weight:800;font-size:.9rem;padding:.65rem 1.3rem;cursor:pointer;letter-spacing:.02em}
.oc-btn:hover{opacity:.88}
.oc-btn.ghost{background:#fff;color:var(--black);border:1.5px solid var(--g3)}
.oc-btn.ghost:hover{border-color:var(--black);opacity:1}
.op-step.cur .op-dot{background:#16a34a;color:#fff}
.op-step.cur .op-dot svg{color:#fff !important}
.op-step{min-width:0}
@media(max-width:560px){
  .op{padding:0}
  .op-name{font-size:.56rem;letter-spacing:0;line-height:1.2;word-break:break-word}
  .op-date{font-size:.68rem}
  .op-dot{width:28px;height:28px}
  .op-dot svg{width:13px;height:13px}
  .op-line{top:12px}
  .oc-item{flex-wrap:wrap}
  .oc-info{flex:1 1 calc(100% - 80px)}
  .oc-price{margin-left:auto}
}

/* ===== merchant orders: fold up / open, NEW and pending in red ===== */
.mo-card{padding:0 !important;overflow:hidden}
.mo-card .mo-toggle{cursor:pointer;margin:0 !important;padding:1.1rem 1.3rem !important;border-bottom:0 !important;align-items:center !important;gap:1rem;transition:background .15s}
.mo-card .mo-toggle:hover{background:#fafafa}
.mo-card.open .mo-toggle{border-bottom:1px solid var(--g2) !important}
.mo-body{display:none;padding:1.1rem 1.3rem 1.3rem}
.mo-card.open .mo-body{display:block}
.mo-sum-l{display:flex;align-items:center;gap:.9rem;min-width:0;flex:1}
.mo-sum-ph{position:relative;flex:0 0 58px;width:58px;height:58px;border-radius:12px;background:var(--g1);border:1px solid var(--g2);display:flex;align-items:center;justify-content:center}
.mo-sum-ph img{width:100%;height:100%;object-fit:cover;border-radius:11px}
.mo-sum-ph span{position:absolute;top:-7px;right:-7px;min-width:22px;height:22px;border-radius:999px;background:#111;color:#fff;font-size:.75rem;font-weight:800;display:flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid #fff}
.mo-sum-info{min-width:0;display:flex;flex-direction:column;gap:.15rem}
.mo-sum-top{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}
.mo-sum-top .mod-id{font-size:1.2rem !important}
.mo-sum-cust{font-weight:700;font-size:.98rem}
.mo-sum-items{font-size:.9rem;color:var(--g4);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:520px}
.mo-sum-total{font-weight:800;font-size:1.05rem}
.mo-chev{display:flex;transition:transform .2s;color:var(--g4)}
.mo-card.open .mo-chev{transform:rotate(180deg)}
.mo-flag{font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:.2rem .6rem;line-height:1.2}
.mo-flag.new{background:#dc2626;color:#fff;animation:moBlink 1.6s ease-in-out infinite}
.mo-flag.pend{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}
@keyframes moBlink{50%{box-shadow:0 0 0 5px rgba(220,38,38,.18)}}
.mo-card.mo-pending,.mo-card.mo-new{border-left:5px solid #dc2626 !important}
.mo-card.mo-new .mo-toggle{background:#fff5f5}
.mo-card.mo-new .mo-toggle:hover{background:#ffecec}
@media(max-width:760px){
  .mo-card .mo-toggle{flex-wrap:wrap}
  .mo-head-r{width:100%;justify-content:space-between}
  .mo-sum-items{max-width:none;white-space:normal}
}
body .merch-order-detail.mo-card.mo-pending,body .merch-order-detail.mo-card.mo-new,body.management-mode .merch-order-detail.mo-card.mo-pending,body.management-mode .merch-order-detail.mo-card.mo-new{border-left:6px solid #dc2626 !important}
body.management-mode .merch-order-detail.mo-card.mo-new{box-shadow:0 0 0 1px #fecaca,0 6px 18px rgba(220,38,38,.12) !important}
.mo-card .mo-toggle .mo-head-r{flex:0 0 auto}
.mo-sum-l{flex:1 1 auto;min-width:240px}
.mo-sum-items{max-width:100%}

/* admin-only tabs (Manage Merchants, Categories, Approvals) stay hidden for merchants */
.mt-tab[style*="display: none"],.mt-tab[style*="display:none"]{display:none !important}
body:not(.lf-is-admin) .mt-tab.admin-only-tab{display:none !important}

/* ===== homepage section headers: still, not moving ===== */
.arrivals-marquee-track.amq-static{animation:none !important;width:100% !important;display:block !important;white-space:normal !important;transform:none !important}
.amq-head{max-width:1400px;margin:0 auto;padding:.4rem clamp(16px,3vw,40px);display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}
.amq-head>div:first-child{flex:0 0 auto}
.amq-kicker{font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--accent,#c8a96e)}
.amq-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.2rem,4vw,3.2rem);line-height:1;color:#fff;letter-spacing:.02em}
.amq-meta{flex:1 1 220px;color:rgba(255,255,255,.75);font-size:1rem;line-height:1.4}
.amq-meta b{color:#fff}
.amq-cta{flex:0 0 auto;border:1.5px solid rgba(255,255,255,.85);background:transparent;color:#fff;border-radius:999px;padding:.7rem 1.4rem;font:inherit;font-weight:800;font-size:.88rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s,color .15s}
.amq-cta:hover{background:#fff;color:#111}
@media(max-width:600px){.amq-head{gap:.6rem}.amq-cta{width:100%}}
/* Recently Viewed / Picked For You: same header as New Arrivals (not the italic serif) */
.rv-static-title.lf-sec-head{font-family:'Inter',sans-serif !important;font-style:normal !important;font-size:1rem !important;background:var(--black);padding:1rem 0 !important;margin:0 !important;text-align:left !important;letter-spacing:0 !important;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.rv-static-title.lf-sec-head .amq-title{font-family:'Bebas Neue',sans-serif !important;font-style:normal !important}

/* ===== Categories: click to see the products ===== */
.cat-card{background:#fff;border:1px solid var(--g2);border-radius:16px;margin-bottom:.8rem;overflow:hidden}
.cat-head{width:100%;display:flex;align-items:center;gap:1rem;padding:.9rem 1.1rem;background:none;border:0;font:inherit;color:inherit;cursor:pointer;text-align:left}
.cat-head:hover{background:#fafafa}
.cat-peek{display:flex;flex:0 0 auto}
.cat-peek img{width:46px;height:46px;border-radius:10px;object-fit:cover;border:2px solid #fff;margin-left:-12px;box-shadow:0 1px 4px rgba(0,0,0,.15);background:var(--g1)}
.cat-peek img:first-child{margin-left:0}
.cat-peek-empty{font-size:.8rem;color:var(--g4);width:46px}
.cat-txt{flex:1;min-width:0}
.cat-name{font-weight:800;font-size:1.08rem}
.cat-meta{font-size:.9rem;color:var(--g4)}
.cat-chev{display:flex;color:var(--g4);transition:transform .2s}
.cat-card.open .cat-chev{transform:rotate(180deg)}
.cat-body{display:none;border-top:1px solid var(--g2);padding:1rem;background:#fafafa}
.cat-card.open .cat-body{display:block}
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.8rem}
.cat-item{display:flex;flex-direction:column;gap:.3rem;background:#fff;border:1px solid var(--g2);border-radius:14px;padding:.5rem .5rem .7rem;text-align:left;cursor:pointer;font:inherit;color:inherit;transition:transform .15s,box-shadow .15s,border-color .15s}
.cat-item:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.08);border-color:var(--black)}
.cat-item-ph{display:flex;align-items:center;justify-content:center;aspect-ratio:4/5;border-radius:10px;overflow:hidden;background:var(--g1)}
.cat-item-ph img{width:100%;height:100%;object-fit:cover}
.cat-item-name{font-weight:700;font-size:.95rem;line-height:1.25;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.cat-item-shop{display:flex;align-items:center;gap:.35rem;font-size:.8rem;color:var(--g4);font-weight:600}
.cat-item-shop .cat-logo,.cat-item-shop img{width:18px!important;height:18px!important;border-radius:50%;object-fit:cover}
.cat-item-row{display:flex;justify-content:space-between;align-items:center;gap:.3rem;flex-wrap:wrap;font-size:.9rem}
.cat-item-row .card-stock-badge{font-size:.7rem}
.cat-stock{font-size:.75rem;font-weight:800;padding:.15rem .5rem;border-radius:999px;background:#dcfce7;color:#166534}
.cat-stock.low{background:#fef3c7;color:#92400e}
.cat-stock.out{background:#fee2e2;color:#991b1b}
/* admin-only parts inside pages merchants can open (testimonial management, site logos, homepage socials) */
body:not(.lf-is-admin) .lf-admin-only{display:none !important}

/* friendly stock line on the product page (lfCheer) */
.pd-stock{text-transform:none !important;letter-spacing:0 !important;font-size:.95rem !important;font-weight:700 !important;padding:.4rem .9rem !important;border-radius:999px !important}
.pd-stock::before{display:none !important}
.pd-stock.stock-in{background:#ecfdf3 !important;color:#166534 !important}
.pd-stock.stock-low{background:#fff7e6 !important;color:#9a5b00 !important}
.pd-stock.stock-out{background:#f4f4f5 !important;color:#52525b !important}

/* stars: warm gold, empty ones light grey (everywhere) */
:root{--star:#f5b301;--star-off:#e4e4e7}
.lf-st-on{color:var(--star) !important;font-weight:inherit;text-shadow:0 1px 0 rgba(180,120,0,.25)}
.lf-st-off{color:var(--star-off) !important;font-style:normal}
.review-card-stars,.card-avg-rating,.t-stars,.lf-tp-stars{color:var(--star) !important;letter-spacing:.08em}
.review-card-stars{font-size:1.1rem}
.card-avg-rating .lf-st-on,.card-avg-rating .lf-st-off{letter-spacing:.04em}
.review-star-fill{background:linear-gradient(90deg,#fbbf24,#f59e0b) !important}
.review-star-track{height:6px !important;background:#f4f4f5 !important}
.star-picker span.on{color:var(--star) !important}

/* "What customers say": no grey block in the empty space after the last card */
.testimonials-grid{background:transparent !important;gap:1rem !important}
.testimonial-card{border:1px solid rgba(255,255,255,.08) !important;border-radius:var(--r2,16px) !important}
.testimonial-card:hover{background:rgba(255,255,255,.03) !important;border-color:rgba(255,255,255,.16) !important}
.testimonials-section .lf-st-off{color:rgba(255,255,255,.2) !important}

/* cart: just the bag icon, the number of items in a small red dot */
.lf-cart-ico{width:40px !important;height:40px !important;color:var(--black)}
.lf-cart-ico .tb-badge{top:1px;right:0;background:#dc2626;color:#fff;min-width:18px;height:18px;border-radius:999px;font-size:.7rem;font-weight:800;box-shadow:0 0 0 2px #fff}
body.management-mode .lf-cart-ico{color:#fff}
body.management-mode .lf-cart-ico .tb-badge{box-shadow:0 0 0 2px #0a0a09}
#topbar .lf-cart-ico svg{width:22px !important;height:22px !important}

/* ===== Top bar icons: one size, evenly spaced, round hover (search · socials | bell · login · cart) ===== */
#topbar .tb-icon-btn,#topbar .tb-social-link,#topbar #merchant-btn.lf-login-ico{
  width:40px !important;height:40px !important;padding:0 !important;border:0 !important;border-radius:999px !important;
  background:transparent !important;color:#27272a !important;display:inline-flex !important;align-items:center;justify-content:center;
  transition:background .15s,color .15s,transform .15s;box-shadow:none !important}
#topbar .tb-icon-btn:hover,#topbar .tb-social-link:hover,#topbar #merchant-btn.lf-login-ico:hover{background:#f4f4f5 !important;color:#0a0a09 !important}
#topbar .tb-icon-btn:active,#topbar #merchant-btn.lf-login-ico:active{transform:scale(.94)}
#topbar .tb-icon-btn svg,#topbar .tb-social-link svg,#topbar #merchant-btn.lf-login-ico svg{width:20px !important;height:20px !important;vertical-align:0 !important;top:0 !important}
#topbar .tb-icon-btn svg[stroke],#topbar #merchant-btn.lf-login-ico svg[stroke]{stroke-width:1.8}
#topbar .tb-social-link svg{width:18px !important;height:18px !important}
.topbar-actions{gap:.15rem !important}
#search-toggle-btn{margin-right:.15rem}
/* a thin line between the socials and your own buttons */
#topbar .tb-social{gap:.1rem !important;padding-right:.45rem;margin-right:.3rem;border-right:1px solid #e4e4e7;height:24px;align-items:center}
/* the red numbers on the bell and the bag look the same */
#topbar .tb-badge{top:3px !important;right:2px !important;min-width:17px !important;height:17px !important;padding:0 4px !important;border-radius:999px !important;background:#dc2626 !important;color:#fff !important;font-size:.66rem !important;font-weight:800 !important;box-shadow:0 0 0 2px #fff !important;line-height:1}
/* dashboard (black top bar) */
body.management-mode #topbar .tb-icon-btn,body.management-mode #topbar #merchant-btn.lf-login-ico{color:#fff !important}
body.management-mode #topbar .tb-icon-btn:hover,body.management-mode #topbar #merchant-btn.lf-login-ico:hover{background:rgba(255,255,255,.12) !important;color:#fff !important}
body.management-mode #topbar .tb-badge{box-shadow:0 0 0 2px #111 !important}
@media(max-width:420px){#topbar .tb-icon-btn,#topbar #merchant-btn.lf-login-ico{width:36px !important;height:36px !important}#topbar .tb-icon-btn svg,#topbar #merchant-btn.lf-login-ico svg{width:19px !important;height:19px !important}}

/* ===== Notifications dropdown: clean white card ===== */
.notif-dropdown{border-radius:18px !important;border:1px solid #e4e4e7 !important;box-shadow:0 20px 50px rgba(0,0,0,.16) !important;width:360px !important;max-width:calc(100vw - 24px)}
.notif-hd{background:#fff !important;padding:1rem 1.15rem .85rem !important;border-bottom:1px solid #f0f0f1 !important}
.notif-hd-title{color:#0a0a09 !important;font-size:1.05rem !important;font-weight:800 !important;letter-spacing:0 !important;text-transform:none !important;display:inline-flex;align-items:center;gap:.5rem}
.notif-hd-count{background:#dc2626;color:#fff;font-size:.72rem;font-weight:800;border-radius:999px;padding:.18rem .55rem;letter-spacing:0}
.notif-clear-btn{border:0 !important;color:#71717a !important;text-transform:none !important;letter-spacing:0 !important;font-size:.86rem !important;font-weight:700;padding:.35rem .7rem !important;border-radius:999px !important}
.notif-clear-btn:hover{background:#f4f4f5 !important;color:#0a0a09 !important}
.notif-empty-msg{padding:2.2rem 1.6rem 2.4rem !important;gap:.35rem !important;color:#71717a !important}
.notif-empty-icon{opacity:1 !important;width:56px;height:56px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fbf3e4,#f1e2c3);color:#6b4e1f;align-items:center;justify-content:center;margin-bottom:.55rem}
.notif-empty-icon svg{width:24px !important;height:24px !important}
.notif-empty-t{font-size:1rem;color:#0a0a09;font-weight:800}
.notif-empty-s{font-size:.88rem;line-height:1.5;max-width:250px}
.notif-dropdown{width:390px !important}
.notif-item.unread{background:#fffbeb !important;border-left:0 !important}
.notif-item.unread::after{top:50% !important;left:.45rem !important;right:auto !important;width:7px !important;height:7px !important;background:#dc2626 !important;transform:translateY(-50%)}
.notif-item.unread:hover{background:#fef3c7 !important}
.notif-item{padding-left:1.35rem !important}

/* ===== Top bar icons a bit bigger and bolder; search sits with the others ===== */
#topbar .tb-icon-btn,#topbar .tb-social-link,#topbar #merchant-btn.lf-login-ico{width:46px !important;height:46px !important}
#topbar .tb-icon-btn svg,#topbar #merchant-btn.lf-login-ico svg{width:24px !important;height:24px !important}
#topbar .tb-icon-btn svg[stroke],#topbar #merchant-btn.lf-login-ico svg[stroke]{stroke-width:2}
#topbar .tb-social-link svg{width:21px !important;height:21px !important}
#topbar .lf-cart-ico svg{width:25px !important;height:25px !important}
#topbar .tb-badge{top:4px !important;right:3px !important;min-width:19px !important;height:19px !important;font-size:.72rem !important}
#topbar .tb-social{height:28px;padding-right:.55rem;margin-right:.35rem}
.topbar-actions{gap:.2rem !important}
@media(min-width:1101px){#search-toggle-btn{margin-right:-1.05rem !important}}
@media(max-width:420px){#topbar .tb-icon-btn,#topbar #merchant-btn.lf-login-ico{width:38px !important;height:38px !important}#topbar .tb-icon-btn svg,#topbar #merchant-btn.lf-login-ico svg{width:21px !important;height:21px !important}#topbar .lf-cart-ico svg{width:22px !important;height:22px !important}}
/* menu words stay on one line on medium screens */
.tn-btn{white-space:nowrap}
@media(max-width:1280px){.tn-btn{letter-spacing:.08em !important;padding-left:.6rem !important;padding-right:.6rem !important;font-size:.82rem !important}#topbar{gap:.8rem !important}}
@media(max-width:1020px){.tn-btn{letter-spacing:.04em !important;padding-left:.45rem !important;padding-right:.45rem !important}#topbar .tb-social{display:none !important}}
@media(min-width:901px){.topbar-brand,.topbar-brand *{white-space:nowrap}}
@media(max-width:1180px){#topbar .tb-social{display:none !important}}

/* ===== Bigger top bar (taller bar, bigger menu words and name) ===== */
:root{--top-h:96px}
#topbar{padding:0 3rem !important}
.topbar-brand>div>div:first-child{font-size:2.2rem !important;letter-spacing:.05em !important;line-height:1}
.topbar-brand>div>div:last-child{font-size:.8rem !important;letter-spacing:.24em !important;margin-top:3px !important}
.tn-btn{font-size:1.06rem !important;font-weight:600 !important;letter-spacing:.07em !important;color:#3f3f46 !important;padding:.6rem 1.1rem !important}
.tn-btn.active,.tn-btn:hover{color:#0a0a09 !important}
.tn-btn::after{left:1.1rem !important;right:1.1rem !important;height:2px !important;bottom:.2rem !important}
.topbar-nav{gap:.5rem !important}
@media(max-width:1440px){.tn-btn{font-size:.98rem !important;padding:.55rem .8rem !important}.tn-btn::after{left:.8rem !important;right:.8rem !important}#topbar{padding:0 2rem !important}}
@media(max-width:1180px){.tn-btn{font-size:.9rem !important;letter-spacing:.04em !important;padding:.5rem .55rem !important}.tn-btn::after{left:.55rem !important;right:.55rem !important}.topbar-brand>div>div:first-child{font-size:2rem !important}.topbar-brand>div>div:last-child{font-size:.7rem !important}}
@media(max-width:900px){:root{--top-h:72px}#topbar{padding:0 1rem !important}.topbar-brand>div>div:first-child{font-size:1.7rem !important}.topbar-brand>div>div:last-child{font-size:.62rem !important;letter-spacing:.16em !important}}
@media(max-width:1180px){.tn-btn{font-size:.84rem !important;padding:.45rem .45rem !important}.tn-btn::after{left:.45rem !important;right:.45rem !important}.topbar-brand>div>div:first-child{font-size:1.8rem !important}#topbar{padding:0 1.2rem !important;gap:.6rem !important}.topbar-nav{gap:.1rem !important}}
@media(max-width:900px){.topbar-brand,.topbar-brand *{white-space:nowrap}.topbar-brand{min-width:0;overflow:hidden}.topbar-brand>div>div:first-child{font-size:1.45rem !important}.topbar-brand>div>div:last-child{font-size:.56rem !important;letter-spacing:.1em !important}}
@media(max-width:420px){.topbar-brand>div>div:first-child{font-size:1.3rem !important}.topbar-brand>div>div:last-child{font-size:.5rem !important;letter-spacing:.08em !important}}

/* product names show exactly as the shop typed them (not all capitals) */
.card-name{text-transform:none !important;letter-spacing:0 !important;font-weight:600 !important;font-size:1rem !important;line-height:1.35 !important}

/* ===== "You might also like": full row of cards, tidy text ===== */
.recommendations-grid{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:1.4rem !important;margin-bottom:1rem}
.recommendations-grid>.product-card{width:auto !important;max-width:none !important;min-width:0 !important;flex:none !important;border-radius:16px;transition:transform .25s ease}
.recommendations-grid>.product-card:hover{transform:translateY(-4px)}
.recommendations-grid .card-img{aspect-ratio:1/1 !important;border-radius:16px !important}
.recommendations-grid .card-img img{transition:transform .5s ease}
.recommendations-grid>.product-card:hover .card-img img{transform:scale(1.05)}
.recommendations-grid .card-body{padding:.75rem .15rem 0 !important}
.recommendations-grid .card-row{display:flex !important;flex-direction:column !important;align-items:flex-start !important;gap:.3rem !important}
.recommendations-grid .card-row>div:first-child{width:100%;min-width:0}
.recommendations-grid .card-brand{font-size:.72rem !important;letter-spacing:.1em !important;margin-bottom:.2rem !important}
.recommendations-grid .card-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:1rem !important;min-height:2.7em}
.recommendations-grid .card-price-wrap{display:flex;align-items:baseline;gap:.45rem}
.recommendations-grid .card-price{font-size:1.05rem !important;font-weight:800 !important}
.pd-section-title{display:flex;align-items:center;gap:.8rem}
.pd-section-title::after{content:'';flex:1;height:1px;background:var(--g2,#e4e4e7)}
@media(max-width:900px){.recommendations-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:1rem !important}}

/* product page title: exactly as the shop typed it (the old font only had capital letters) */
.pd-title{font-family:'Inter',sans-serif !important;font-weight:800 !important;text-transform:none !important;font-size:clamp(1.9rem,3vw,2.7rem) !important;line-height:1.15 !important;letter-spacing:-.015em !important}

/* event titles: exactly as the shop typed them (not the capitals-only font) */
#edm-title,.edm-title,.event-card-title,.evc-title{font-family:'Inter',sans-serif !important;font-weight:800 !important;text-transform:none !important;letter-spacing:-.01em !important;line-height:1.2 !important}
#edm-title,.edm-title{font-size:clamp(1.6rem,2.6vw,2.1rem) !important}
.event-card-title{font-size:1.3rem !important}
.evc-title{font-size:1.2rem !important}

/* the "Lost & Found · Flea Market · Batangas" bar never covers the last row of a page */
.page{padding-bottom:84px}