/* ============ BurmaMart storefront — dark-first theme ============ */
/* Tokens: dark is the default; html[data-theme="light"] overrides.   */
:root{
  --gold:#E3A81E; --gold-deep:#B87A12; --gold-light:#F6D371;
  --green:#2E8B3D; --green-light:#43b657; --green-grad-deep:#1C6E2E;
  --red:#C1272D; --red-deep:#9d1c22;
  --ink:#141210; --ink-2:#1f1b16;
  --radius:18px; --ease:cubic-bezier(.34,1.56,.64,1);

  /* dark theme (default) */
  --bg:#12100B; --paper:#1E1A12; --paper-2:#282215;
  --text:#F1E9D6; --text-soft:#D8CDB2; --muted:#A2977C; --line:#37301F;
  --gold-ink:#F6D371; --green-deep:#58BE6E;
  --input-bg:#211C11; --sel-tint:rgba(227,168,30,.13); --err:#ff7b81;
  --shadow:0 6px 22px rgba(0,0,0,.35); --shadow-lg:0 22px 60px rgba(0,0,0,.55);
}
html[data-theme="light"]{
  --bg:#FBF6EA; --paper:#ffffff; --paper-2:#F3ECD9;
  --text:#241f18; --text-soft:#4b4438; --muted:#7c7466; --line:#ece3d0;
  --gold-ink:#5A3B0A; --green-deep:#1C6E2E;
  --input-bg:#ffffff; --sel-tint:#fff8e8; --err:#C1272D;
  --shadow:0 6px 22px rgba(20,15,5,.09); --shadow-lg:0 22px 60px rgba(20,15,5,.20);
}
*{box-sizing:border-box}
/* overflow-x:clip (not hidden) prevents sideways scroll WITHOUT creating a
   scroll container — so the sticky header keeps working on mobile. */
html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);background:var(--bg);line-height:1.55;transition:background .25s,color .25s;overflow-x:clip;max-width:100%}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{max-width:1220px;margin:0 auto;padding:0 20px}
.serif{font-family:'Playfair Display',Georgia,serif}
.flag-stripe{height:5px;background:linear-gradient(90deg,var(--gold) 0 33%,var(--green) 33% 66%,var(--red) 66% 100%)}

/* animations */
@keyframes fadeUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes pop{0%{transform:scale(.9);opacity:0}60%{transform:scale(1.04)}100%{transform:scale(1);opacity:1}}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes shine{0%{background-position:-200% 0}100%{background-position:200% 0}}
.reveal{opacity:0}
.reveal.in{animation:fadeUp .7s var(--ease) forwards}
.reveal.d1{animation-delay:.08s}.reveal.d2{animation-delay:.16s}.reveal.d3{animation-delay:.24s}.reveal.d4{animation-delay:.32s}

/* announcement */
.announce{background:var(--ink);color:#f0e4c6;text-align:center;font-size:12.5px;letter-spacing:.5px;padding:7px 12px}
.announce b{color:var(--gold-light)}

/* header — stays dark in both themes (brand chrome) */
.site-header{position:sticky;top:0;z-index:60;background:linear-gradient(180deg,#191510,#120f0b);color:#f4ecd8;box-shadow:0 2px 18px rgba(0,0,0,.35)}
.header-row{display:flex;align-items:center;gap:20px;padding:10px 0}
.brand{display:flex;align-items:center;flex-shrink:0}
.brand img{height:52px;width:auto}
.nav{display:flex;align-items:center;gap:24px;margin-left:6px}
.nav a{font-size:14.5px;font-weight:600;color:#e9ddc2;opacity:.92;position:relative;transition:.15s}
.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:2px;background:var(--gold);transition:right .25s var(--ease)}
.nav a:hover{color:var(--gold-light)}.nav a:hover:after{right:0}
.header-search{margin-left:auto;display:flex;align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(230,200,120,.25);border-radius:999px;padding:7px 8px 7px 16px;min-width:220px;transition:.2s}
.header-search:focus-within{border-color:var(--gold);background:rgba(255,255,255,.12)}
.header-search input{background:transparent;border:0;outline:0;color:#f4ecd8;font-size:14px;width:100%}
.header-search input::placeholder{color:#b7a988}
.header-search button{background:var(--gold);color:#2a1c05;border:0;border-radius:999px;width:32px;height:32px;font-size:15px;cursor:pointer;flex-shrink:0;transition:.15s}
.header-search button:hover{transform:scale(1.1)}
.header-actions{display:flex;align-items:center;gap:14px}
.icon-btn{position:relative;color:#e9ddc2;font-size:20px;display:flex;align-items:center;transition:.15s;background:none;border:0;cursor:pointer;padding:0}
.icon-btn:hover{color:var(--gold-light);transform:translateY(-1px)}
.theme-toggle{font-size:18px;width:36px;height:36px;border-radius:999px;border:1px solid rgba(230,200,120,.3);display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.06)}
.theme-toggle:hover{border-color:var(--gold)}
.cart-count{position:absolute;top:-8px;right:-10px;background:var(--red);color:#fff;font-size:10.5px;font-weight:800;min-width:17px;height:17px;border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0 4px;animation:pop .3s}
.hamburger{display:none;background:none;border:0;color:#f4ecd8;font-size:24px;cursor:pointer}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;cursor:pointer;font-weight:700;border-radius:999px;padding:12px 22px;font-size:14.5px;transition:transform .2s var(--ease),filter .15s,box-shadow .2s;text-align:center;font-family:inherit}
.btn:active{transform:scale(.96)}
.btn-gold{background:linear-gradient(180deg,var(--gold-light),var(--gold),var(--gold-deep));color:#3b2705;box-shadow:0 8px 18px rgba(184,122,18,.35)}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(184,122,18,.45)}
.btn-green{background:linear-gradient(180deg,var(--green-light),var(--green-grad-deep));color:#fff;box-shadow:0 8px 18px rgba(28,110,46,.3)}
.btn-green:hover{transform:translateY(-2px)}
.btn-ghost{background:transparent;border:1.5px solid rgba(255,255,255,.35);color:#fff}
.btn-ghost:hover{border-color:var(--gold-light);color:var(--gold-light)}
.btn-outline{background:var(--paper);border:1.5px solid var(--line);color:var(--text)}
.btn-outline:hover{border-color:var(--gold)}
.btn-block{width:100%}
.btn-sm{padding:9px 16px;font-size:13px}

/* toast */
.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--ink);color:#f4ecd8;padding:14px 22px;border-radius:14px;box-shadow:var(--shadow-lg);z-index:200;font-weight:600;opacity:0;transition:.3s var(--ease);border-left:4px solid var(--green-light)}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* hero — dark in both themes (brand chrome) */
.hero{position:relative;background:radial-gradient(1100px 380px at 72% -10%,rgba(227,168,30,.20),transparent),linear-gradient(160deg,#191510,#241d13 55%,#12100c);color:#f6eed6;overflow:hidden}
.hero:after{content:"";position:absolute;inset:auto 0 0 0;height:6px;background:linear-gradient(90deg,var(--gold) 0 33%,var(--green) 33% 66%,var(--red) 66% 100%)}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center;padding:66px 0 78px}
.hero h1{font-family:'Playfair Display',serif;font-weight:900;font-size:clamp(34px,5vw,58px);line-height:1.05;margin:0 0 16px}
.hero h1 .g{color:var(--gold-light)}.hero h1 .v{color:var(--green-light)}
.hero p{font-size:17px;color:#e2d6ba;max-width:520px;margin:0 0 26px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.hero-art{display:flex;justify-content:center;animation:floaty 6s ease-in-out infinite}
.hero-badge{background:rgba(255,255,255,.06);border:1px solid rgba(230,200,120,.25);border-radius:var(--radius);padding:24px;display:grid;grid-template-columns:repeat(2,1fr);gap:16px;min-width:330px;backdrop-filter:blur(4px)}
.hero-badge .stat{text-align:center}
.hero-badge .stat b{display:block;font-family:'Playfair Display',serif;font-size:32px;color:var(--gold-light)}
.hero-badge .stat span{font-size:12px;color:#cdbf9f;text-transform:uppercase;letter-spacing:1px}

/* sections */
section{padding:48px 0}
.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px;gap:16px}
.section-head h2{font-family:'Playfair Display',serif;font-size:29px;margin:0}
.section-head h2 small{display:block;font-family:'Inter';font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--green-deep);font-weight:700;margin-bottom:5px}
.section-head a{color:var(--green-deep);font-weight:700;font-size:14px;transition:.15s}
.section-head a:hover{color:var(--gold);transform:translateX(3px)}

/* categories */
.cat-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}
.cat-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:16px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow);transition:transform .25s var(--ease),box-shadow .25s,border-color .2s}
.cat-card:hover{transform:translateY(-5px) scale(1.02);border-color:var(--gold);box-shadow:var(--shadow-lg)}
.cat-card .ic{width:48px;height:48px;border-radius:12px;object-fit:cover;background:var(--paper-2);flex-shrink:0}
.cat-card b{font-size:14.5px;display:block}.cat-card span{font-size:12px;color:var(--muted)}

/* banners */
.banner-strip{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px}
.banner{border-radius:var(--radius);overflow:hidden;position:relative;box-shadow:var(--shadow);height:210px;background:var(--paper-2);transition:transform .3s var(--ease),box-shadow .3s}
.banner:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.banner img{width:100%;height:100%;object-fit:cover;transition:.4s var(--ease)}
.banner:hover img{transform:scale(1.06)}
.banner:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(10,8,4,.55))}
.banner .tag{position:absolute;left:14px;top:14px;background:var(--red);color:#fff;font-size:11px;font-weight:800;padding:5px 11px;border-radius:999px;text-transform:capitalize;letter-spacing:.4px;z-index:2}
.banner .cap{position:absolute;left:14px;bottom:12px;color:#fff;font-weight:700;font-size:15px;z-index:2;text-shadow:0 1px 6px rgba(0,0,0,.5)}

/* product grid + cards */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:22px}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .28s var(--ease),box-shadow .28s,border-color .2s;display:flex;flex-direction:column;position:relative}
.card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--gold)}
.card .thumb{position:relative;aspect-ratio:1;background:var(--paper-2);overflow:hidden}
.card .thumb img{width:100%;height:100%;object-fit:cover;transition:.5s var(--ease)}
.card:hover .thumb img{transform:scale(1.08)}
.badge-sale{position:absolute;left:11px;top:11px;background:var(--red);color:#fff;font-size:11px;font-weight:800;padding:4px 9px;border-radius:8px;z-index:2;box-shadow:0 3px 8px rgba(193,39,45,.4)}
.badge-out{position:absolute;right:11px;top:11px;background:#3a3a3a;color:#fff;font-size:11px;font-weight:700;padding:4px 9px;border-radius:8px;z-index:2}
.quick{position:absolute;left:12px;right:12px;bottom:12px;transform:translateY(130%);transition:transform .3s var(--ease);z-index:3}
.card:hover .quick{transform:translateY(0)}
.card .body{padding:14px 15px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.card .brand{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--green-deep);font-weight:700}
.card .name{font-weight:700;font-size:15px;line-height:1.3;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:39px}
.price{display:flex;align-items:baseline;gap:8px;margin-top:auto;padding-top:6px}
.price .now{font-family:'Playfair Display',serif;font-weight:800;font-size:19px;color:var(--gold-ink)}
.price .now.flash{color:var(--red)}
.price .was{font-size:13px;color:var(--muted);text-decoration:line-through}
.badge-flash{position:absolute;left:11px;bottom:11px;background:linear-gradient(180deg,var(--red),var(--red-deep));color:#fff;font-size:10px;font-weight:800;letter-spacing:.03em;padding:3px 8px;border-radius:7px;z-index:2;box-shadow:0 3px 8px rgba(193,39,45,.4)}
.card .social{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted);font-weight:600}
.card .social .star{color:var(--gold);font-size:12.5px}
.card .social .rc{color:var(--muted);font-weight:500}
.card .social .mid{opacity:.6}
.card .social .sold{color:var(--muted)}
.card .shop{display:flex;align-items:center;gap:6px;min-width:0}
.card .shop img{width:17px;height:17px;border-radius:50%;object-fit:cover;background:var(--paper-2);flex:none}
.card .shop .sname{font-size:11.5px;color:var(--text-soft);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card .shop .vtick{flex:none;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;background:var(--green);color:#fff;font-size:9px;font-weight:900}

/* chips */
.chips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}
.chip{background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:8px 17px;font-size:13.5px;font-weight:600;color:var(--text);transition:.18s var(--ease)}
.chip:hover{border-color:var(--gold);transform:translateY(-2px)}
.chip.active{background:linear-gradient(180deg,var(--gold),var(--gold-deep));color:#3b2705;border-color:transparent}

/* product detail */
.crumb{font-size:13px;color:var(--muted);padding-top:8px}
.crumb a:hover{color:var(--gold)}
.pd{display:grid;grid-template-columns:1fr 1fr;gap:44px;padding-top:26px}
.gal-main{position:relative;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:var(--paper-2);aspect-ratio:1;cursor:zoom-in}
.gal-main img{width:100%;height:100%;object-fit:cover;transition:.4s}
.gal-zoom{position:absolute;right:12px;bottom:12px;background:rgba(20,15,5,.7);color:#fff;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:600}
.gal-thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.gal-thumbs img{width:72px;height:72px;border-radius:12px;object-fit:cover;border:2px solid var(--line);cursor:pointer;transition:.15s}
.gal-thumbs img:hover{transform:translateY(-3px)}
.gal-thumbs img.active{border-color:var(--gold)}
.pd h1{font-family:'Playfair Display',serif;font-size:33px;margin:6px 0 10px;line-height:1.13}
.pd .meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:6px}
.pill{font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px}
.pill-green{background:rgba(46,139,61,.16);color:var(--green-deep)}
.pill-gold{background:rgba(227,168,30,.16);color:var(--gold-ink)}
.pill-red{background:var(--red);color:#fff}
.pd-price{display:flex;align-items:baseline;gap:12px;margin:18px 0}
.pd-price .now{font-family:'Playfair Display',serif;font-size:36px;font-weight:800;color:var(--gold-ink);transition:.2s}
.pd-price .now.flash{animation:pop .35s}
.pd-price .was{font-size:18px;color:var(--muted);text-decoration:line-through}
.pd .desc{color:var(--text-soft);margin:12px 0 18px}
.attr-row{margin:16px 0}
.attr-row .lbl{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-weight:700;margin-bottom:9px}
.opt{display:inline-flex;align-items:center;border:1.6px solid var(--line);border-radius:11px;padding:9px 15px;font-size:13.5px;font-weight:600;margin:0 9px 9px 0;cursor:pointer;background:var(--paper);color:var(--text);transition:.18s var(--ease);user-select:none}
.opt:hover{border-color:var(--gold);transform:translateY(-2px)}
.opt.sel{border-color:var(--gold);background:var(--sel-tint);box-shadow:0 4px 10px rgba(227,168,30,.25)}
.opt.disabled{opacity:.4;text-decoration:line-through;cursor:not-allowed}
.buybar{display:flex;gap:12px;margin:22px 0 12px;flex-wrap:wrap}
.qty{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:999px;overflow:hidden}
.qty button{background:var(--paper);border:0;width:42px;height:46px;font-size:20px;cursor:pointer;color:var(--gold-ink)}
.qty button:hover{background:var(--paper-2)}
.qty input{width:44px;text-align:center;border:0;outline:0;font-size:16px;font-weight:700;background:var(--paper);color:var(--text)}
.specs{width:100%;border-collapse:collapse;margin-top:12px;background:var(--paper);border-radius:var(--radius);overflow:hidden;border:1px solid var(--line)}
.specs td{padding:11px 15px;border-bottom:1px solid var(--line);font-size:14px}
.specs tr:last-child td{border-bottom:0}
.specs td:first-child{color:var(--muted);width:38%;font-weight:600}
.note{background:rgba(46,139,61,.10);border:1px dashed var(--green);border-radius:12px;padding:12px 16px;font-size:13.5px;color:var(--green-deep)}

/* lightbox */
.lightbox{position:fixed;inset:0;background:rgba(12,9,4,.92);z-index:300;display:none;align-items:center;justify-content:center}
.lightbox.open{display:flex;animation:fadeUp .25s}
.lightbox img{max-width:88vw;max-height:82vh;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.lb-btn{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;width:54px;height:54px;border-radius:999px;font-size:26px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s}
.lb-btn:hover{background:var(--gold);color:#2a1c05}
.lb-prev{left:3vw}.lb-next{right:3vw}.lb-close{top:3vh;right:3vw;width:46px;height:46px;font-size:22px}
.lb-count{position:absolute;bottom:4vh;left:50%;transform:translateX(-50%);color:#e9ddc2;font-size:14px}

/* forms / panels */
.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}
.field{margin-bottom:15px}
.field label{display:block;font-size:13px;font-weight:600;color:var(--muted);margin-bottom:6px}
.field input,.field select,.field textarea{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;font-size:15px;font-family:inherit;outline:0;transition:.15s;background:var(--input-bg);color:var(--text)}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(227,168,30,.15)}
.err{color:var(--err);font-size:13px;margin-top:6px}
.form-narrow{max-width:440px;margin:40px auto}

/* cart / checkout */
.two-col{display:grid;grid-template-columns:1.6fr .9fr;gap:26px;align-items:start}
.line{display:flex;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}
.line img{width:84px;height:84px;border-radius:12px;object-fit:cover;background:var(--paper-2);flex-shrink:0}
.line .ln-name{font-weight:700}
.line .ln-var{font-size:12.5px;color:var(--muted)}
.summary{position:sticky;top:90px}
.sum-row{display:flex;justify-content:space-between;padding:8px 0;font-size:14.5px;color:var(--text-soft)}
.sum-row.total{border-top:2px solid var(--line);margin-top:8px;padding-top:14px;font-size:19px;font-weight:800;color:var(--gold-ink);font-family:'Playfair Display',serif}
.addr-opt{border:1.6px solid var(--line);border-radius:14px;padding:14px 16px;margin-bottom:10px;cursor:pointer;transition:.15s;display:flex;gap:12px}
.addr-opt.sel{border-color:var(--gold);background:var(--sel-tint)}
.pay-opt{border:1.6px solid var(--line);border-radius:14px;padding:14px;cursor:pointer;transition:.15s;display:flex;gap:12px;align-items:center;margin-bottom:10px}
.pay-opt.sel{border-color:var(--green);background:rgba(46,139,61,.10)}
.pay-opt img{width:44px;height:44px;border-radius:10px;object-fit:cover}

/* order status */
.status-badge{display:inline-block;font-size:12px;font-weight:800;padding:5px 12px;border-radius:999px}
.st-new,.st-pending{background:rgba(227,168,30,.16);color:var(--gold-ink)}
.st-processing{background:rgba(46,139,61,.14);color:var(--green-deep)}
.st-shipped{background:rgba(30,110,180,.14);color:#5aa2e0}
html[data-theme="light"] .st-shipped{color:#1c5ea6}
.st-delivered{background:rgba(46,139,61,.16);color:var(--green-deep)}
.st-cancelled{background:rgba(193,39,45,.14);color:#ff7b81}
html[data-theme="light"] .st-cancelled{color:var(--red)}
.order-card{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);margin-bottom:12px;box-shadow:var(--shadow);transition:.2s}
.order-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}

/* pagination */
.pager{display:flex;gap:6px;justify-content:center;margin-top:36px;flex-wrap:wrap}
.pager a,.pager span{padding:9px 15px;border-radius:11px;border:1px solid var(--line);background:var(--paper);font-weight:600;font-size:14px;color:var(--text);transition:.15s}
.pager a:hover{border-color:var(--gold);transform:translateY(-2px)}
.pager .active span{background:var(--gold);border-color:transparent;color:#3b2705}
.pager .disabled span{opacity:.4}
.empty{text-align:center;padding:70px 20px;color:var(--muted)}

/* footer — dark in both themes (brand chrome) */
.site-footer{background:var(--ink);color:#cfc3a6;margin-top:44px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;padding:48px 0 30px}
.site-footer h4{color:#f2e6c8;font-size:14px;letter-spacing:1px;text-transform:uppercase;margin:0 0 14px}
.site-footer a{display:block;color:#bcae8e;font-size:14px;padding:4px 0;transition:.15s}
.site-footer a:hover{color:var(--gold-light);transform:translateX(3px)}
.footer-bottom{border-top:1px solid #2c2720;padding:16px 0;font-size:13px;color:#9a8e72;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
.footer-legal{display:flex;gap:18px}
.footer-legal a{display:inline;padding:0;font-size:13px}

/* mobile menu */
.mobile-menu{position:fixed;inset:0 0 0 auto;width:78%;max-width:320px;background:#1a1611;color:#f4ecd8;z-index:120;transform:translateX(100%);transition:transform .3s var(--ease);padding:22px;box-shadow:-10px 0 40px rgba(0,0,0,.4)}
.mobile-menu.open{transform:none}
.mobile-menu a{display:block;padding:13px 0;font-size:16px;font-weight:600;border-bottom:1px solid #2c2720;color:#e9ddc2}
.mobile-menu .theme-toggle{margin-top:16px;width:100%;border-radius:12px;height:44px;gap:8px;font-size:15px;font-weight:600;color:#e9ddc2}
.scrim{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:110;opacity:0;pointer-events:none;transition:.3s}
.scrim.open{opacity:1;pointer-events:auto}

/* ---------- responsive: tablet ---------- */
@media(max-width:940px){
  .hero-grid{grid-template-columns:1fr;gap:22px}.hero-art{order:-1}
  .pd{grid-template-columns:1fr;gap:26px}.banner-strip{grid-template-columns:1fr 1fr}
  .two-col{grid-template-columns:1fr}.summary{position:static}
  .footer-grid{grid-template-columns:1fr 1fr}
  .nav,.header-search{display:none}.hamburger{display:block}
}

/* ---------- responsive: phones (primary target) ---------- */
@media(max-width:560px){
  .container{padding:0 14px}
  section{padding:32px 0}
  .brand img{height:42px}
  .header-row{gap:12px}
  .hero-grid{padding:40px 0 52px}
  .hero p{font-size:15px}
  .hero-badge{min-width:0;width:100%;padding:18px}
  .grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .card .body{padding:10px 11px 12px}
  .card .name{font-size:13.5px;min-height:35px}
  .price .now{font-size:16px}
  .quick{position:static;transform:none;margin:0 10px 12px}
  .cat-row{grid-template-columns:repeat(2,1fr)}
  .banner-strip{grid-template-columns:1fr}.banner{height:170px}
  .section-head h2{font-size:23px}
  .footer-grid{grid-template-columns:1fr;gap:22px;padding:36px 0 24px}
  .pd h1{font-size:26px}
  .pd-price .now{font-size:29px}
  .buybar{flex-direction:column;align-items:stretch}
  .buybar .btn{width:100%}
  .qty{justify-content:space-between}
  .line img{width:68px;height:68px}
  .form-narrow{margin:24px auto}
  .lb-prev{left:2vw}.lb-next{right:2vw}
}

/* ---------- responsive form grid (address / multi-field forms) ---------- */
.form-grid{display:grid;gap:14px}
.form-grid-3{grid-template-columns:1fr 1fr 1fr}
.form-grid-3 .field-wide{grid-column:1 / 3}
@media(max-width:760px){
  .form-grid-3{grid-template-columns:1fr 1fr}
  .form-grid-3 .field-wide{grid-column:1 / -1}
}
@media(max-width:460px){
  .form-grid-3{grid-template-columns:1fr}
  .form-grid-3 .field-wide{grid-column:auto}
}
/* keep native selects from overflowing their cell */
.field select{max-width:100%;text-overflow:ellipsis}

/* ---------- custom dropdown (replaces native <select> chrome) ---------- */
.cs{position:relative}
.cs > select{position:absolute;left:0;top:0;width:1px;height:1px;opacity:0;pointer-events:none} /* hidden but submitted */
.cs-control{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg);color:var(--text);font-size:15px;font-family:inherit;cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s}
.cs-control:hover{border-color:var(--gold-deep)}
.cs.open .cs-control{border-color:var(--gold);box-shadow:0 0 0 3px rgba(227,168,30,.15)}
.cs-val{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cs-val.placeholder{color:var(--muted)}
.cs-chevron{flex-shrink:0;width:18px;height:18px;color:var(--muted);transition:transform .2s var(--ease),color .15s}
.cs.open .cs-chevron{transform:rotate(180deg);color:var(--gold)}
.cs-panel{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:90;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);max-height:264px;overflow-y:auto;padding:6px;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .16s,transform .16s}
.cs.open .cs-panel{opacity:1;transform:none;pointer-events:auto}
.cs-option{padding:11px 12px;border-radius:8px;font-size:14.5px;color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;transition:background .12s,color .12s}
.cs-option:hover,.cs-option.active{background:var(--sel-tint)}
.cs-option.selected{color:var(--gold-ink);font-weight:600}
.cs-option.selected:after{content:"✓";color:var(--gold);font-weight:700}
.cs-option.placeholder{color:var(--muted)}
.cs-empty{padding:14px 12px;color:var(--muted);font-size:13.5px;text-align:center}

/* ---------- cart line: theme-aware + wraps on phones ---------- */
.qty-btn{width:34px;height:34px;border-radius:8px;background:var(--paper);border:1px solid var(--line);color:var(--text);cursor:pointer;font-size:16px;flex-shrink:0}
.qty-btn:disabled{opacity:.45;cursor:not-allowed}
.ln-qty{display:flex;align-items:center;gap:4px;flex-shrink:0}
.ln-total{font-weight:800;min-width:96px;text-align:right;color:var(--gold-ink);flex-shrink:0}
.ln-remove{background:none;border:0;color:var(--red);cursor:pointer;font-size:18px;flex-shrink:0}
.line .ln-name{min-width:0;overflow-wrap:anywhere}
@media(max-width:560px){
  .line{flex-wrap:wrap;row-gap:10px}
  .line > div[style*="flex:1"], .line .ln-name{flex:1 1 100%}
  .line .ln-total{min-width:0;margin-left:auto;order:3}
  .ln-qty{order:2}
  .line form:last-child{order:4}
}

/* ---------- product gallery prev / next arrows ---------- */
.gal-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:999px;border:0;background:rgba(20,15,5,.62);color:#fff;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:4;transition:background .15s,transform .15s;backdrop-filter:blur(2px)}
.gal-nav:hover{background:var(--gold);color:#2a1c05}
.gal-nav:active{transform:translateY(-50%) scale(.92)}
.gal-nav-prev{left:12px}
.gal-nav-next{right:12px}
@media(max-width:560px){.gal-nav{width:38px;height:38px;font-size:22px}}

/* ── Product-detail parity with the mobile app (2026-07-10) ───────────────── */
.flash-ok{background:var(--green-light);color:var(--green-deep);border:1px solid var(--green);border-radius:10px;padding:10px 14px;margin:12px 0;font-size:14px}
.flash-err{background:#fdecec;color:var(--red-deep);border:1px solid var(--red);border-radius:10px;padding:10px 14px;margin:12px 0;font-size:14px}
html[data-theme="dark"] .flash-err{background:rgba(193,39,45,.14)}

.rating-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:6px 0 4px;font-size:14px}
.rating-row .stars{color:var(--gold);letter-spacing:1px}
.rating-row .stars.muted{color:var(--line)}
.rating-row .rating-num{font-weight:700;color:var(--text)}
.rating-row .rating-count{color:var(--muted);text-decoration:none;font-size:13px}
.rating-row .sold-count{color:var(--muted);font-size:13px}

.gal-main .flash-badge{position:absolute;top:12px;left:12px;z-index:3;background:var(--red);color:#fff;font-weight:800;font-size:12px;padding:4px 10px;border-radius:8px;letter-spacing:.5px}
.pd-price .flash-now{color:var(--red-deep)}
.flash-strip{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:linear-gradient(90deg,var(--red),var(--gold-deep));color:#fff;border-radius:10px;padding:9px 14px;margin:10px 0 14px;font-weight:700;font-size:13px}
.flash-strip .flash-left{background:rgba(255,255,255,.22);padding:2px 8px;border-radius:6px;font-weight:600}
.flash-strip .flash-timer{margin-left:auto;font-variant-numeric:tabular-nums}

.shop-card{display:flex;align-items:center;gap:12px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:14px 0}
.shop-card .shop-logo{width:42px;height:42px;border-radius:50%;overflow:hidden;background:var(--paper-2);display:flex;align-items:center;justify-content:center;font-size:20px;flex:0 0 auto}
.shop-card .shop-logo img{width:100%;height:100%;object-fit:cover}
.shop-card .shop-meta{flex:1;min-width:0}
.shop-card .shop-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}
.shop-card .shop-name{font-weight:700;color:var(--text)}
.shop-card .verified{color:var(--green);font-weight:800}

.buybar{display:flex;gap:12px;align-items:stretch}
.wish-btn{font-size:20px;line-height:1;min-width:52px;display:flex;align-items:center;justify-content:center;color:var(--red)}
.wish-btn.wished{background:var(--red);color:#fff;border-color:var(--red)}

.reviews{display:grid;grid-template-columns:220px 1fr;gap:28px;margin-top:14px}
@media(max-width:720px){.reviews{grid-template-columns:1fr}}
.rev-summary{text-align:center;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:18px}
.rev-avg{font-size:42px;font-weight:800;color:var(--text);line-height:1}
.rev-avg-stars{color:var(--gold);font-size:18px;letter-spacing:2px;margin:4px 0}
.rev-avg-count{color:var(--muted);font-size:13px;margin-bottom:12px}
.rev-bars{display:flex;flex-direction:column;gap:5px}
.rev-bar-row{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}
.rev-bar{flex:1;height:7px;background:var(--line);border-radius:6px;overflow:hidden}
.rev-bar>div{height:100%;background:var(--gold);border-radius:6px}
.rev-bar-c{width:22px;text-align:right}
.rev-item{border-bottom:1px solid var(--line);padding:14px 0}
.rev-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rev-stars{color:var(--gold);letter-spacing:1px}
.rev-name{font-weight:700;color:var(--text);font-size:13px}
/* PDP parity additions */
.pd-titlerow{display:flex;align-items:flex-start;gap:10px;justify-content:space-between}
.pd-titlerow h1{flex:1;min-width:0}
.share-btn{flex:0 0 auto;width:40px;height:40px;border-radius:50%;border:1.5px solid var(--line);background:var(--paper);color:var(--text);font-size:16px;cursor:pointer;transition:.18s var(--ease);margin-top:10px}
.share-btn:hover{border-color:var(--gold);color:var(--gold)}
.share-btn.copied{border-color:var(--green);color:var(--green)}
.shop-card .shop-stats{font-size:12px;color:var(--muted);margin-top:2px}
.shop-card .shop-stats .shop-star{color:var(--gold);font-weight:700}
.opt.swatch{width:30px;height:30px;padding:0;border-radius:50%}
.opt.swatch.sel{box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--gold)}
.desc-wrap.clamped{max-height:240px;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,#000 68%,transparent);mask-image:linear-gradient(180deg,#000 68%,transparent)}
.pd .desc img{max-width:100%;height:auto;border-radius:8px}
.pd .desc h2,.pd .desc h3,.pd .desc h4{font-family:'Playfair Display',serif;margin:14px 0 6px;line-height:1.2}
.pd .desc table{border-collapse:collapse;width:100%;margin:10px 0}
.pd .desc td,.pd .desc th{border:1px solid var(--line);padding:6px 10px;text-align:left}
.pd .desc a{color:var(--gold)}
.desc-toggle{background:none;border:0;color:var(--gold);font-weight:700;font-size:13.5px;cursor:pointer;padding:4px 0 14px}
.rev-head{display:flex;align-items:flex-start;gap:10px;flex-wrap:nowrap}
.rev-av{flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:var(--sel-tint);color:var(--gold-ink);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px}
.rev-hmeta{flex:1;min-width:0}
.rev-nameline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rev-subline{display:flex;align-items:center;gap:10px;margin-top:1px}
.rev-date{font-size:12px;color:var(--muted)}
.pdab-spacer{display:none}
.pd-actionbar{display:none}
@media (max-width:760px){
  .pdab-spacer{display:block;height:74px}
  .pd-actionbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;gap:8px;align-items:stretch;padding:9px 12px calc(9px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -6px 20px rgba(0,0,0,.18)}
  .pd-actionbar .pdab-chat{display:flex}
  .pd-actionbar .pdab-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:10px;color:var(--text-soft);min-width:44px;background:none;border:0;cursor:pointer;text-decoration:none;padding:0}
  .pd-actionbar .pdab-link .i{font-size:18px;line-height:1}
  .pd-actionbar .pdab-add,.pd-actionbar .pdab-buy{flex:1;padding:12px 6px}
}
.rev-verified{font-size:11px;color:var(--green-deep);background:var(--green-light);padding:1px 7px;border-radius:6px}
.rev-body{color:var(--text-soft);margin:6px 0 0;font-size:14px}
.rev-photos{display:flex;gap:8px;margin-top:8px}
.rev-photos img{width:60px;height:60px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}
.rev-reply{margin-top:8px;background:var(--paper-2);border-radius:8px;padding:8px 10px;font-size:13px;color:var(--text-soft)}
.rev-write{margin-top:16px}
.rev-write summary{cursor:pointer;font-weight:700;color:var(--gold-deep)}
.rev-form{margin-top:12px;display:flex;flex-direction:column;gap:10px;max-width:520px}
.rev-form textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--paper);color:var(--text);font:inherit}
.rev-rate{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;font-size:26px}
.rev-rate input{display:none}
.rev-rate label{color:var(--line);cursor:pointer;padding:0 2px}
.rev-rate input:checked ~ label,.rev-rate label:hover,.rev-rate label:hover ~ label{color:var(--gold)}

/* order tracking timeline (web parity) */
.track{display:flex;flex-direction:column}
.track-row{display:flex;gap:12px}
.track-dot{width:12px;height:12px;border-radius:50%;background:var(--line);margin-top:3px;position:relative;flex:0 0 auto}
.track-dot.on{background:var(--green);box-shadow:0 0 0 3px var(--green-light)}
.track-row:not(:last-child) .track-dot::after{content:"";position:absolute;left:5px;top:12px;width:2px;height:calc(100% + 14px);background:var(--line)}
.track-body{padding-bottom:16px}
.track-title{font-weight:700;color:var(--text);font-size:14px}
.track-note{color:var(--text-soft);font-size:13px;margin-top:2px}
.track-time{color:var(--muted);font-size:12px;margin-top:2px}

/* ── Home rails + shop/coins/vouchers pages (web parity, 2026-07-10) ──────── */
.flash-timer-inline{margin-left:auto;font-variant-numeric:tabular-nums;font-weight:800;color:var(--red);background:var(--red-light,rgba(193,39,45,.12));padding:4px 10px;border-radius:8px;font-size:14px}

.vouch-strip{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px}
.vouch-mini{position:relative;flex:0 0 auto;min-width:184px;background:linear-gradient(135deg,#f6c85a,var(--gold) 55%,var(--gold-deep));color:var(--gold-ink);border-radius:14px;padding:15px 17px;text-decoration:none;box-shadow:0 10px 22px -8px rgba(184,122,18,.55);overflow:hidden;transition:transform .22s var(--ease),box-shadow .22s}
.vouch-mini:hover{transform:translateY(-5px) rotate(-.6deg);box-shadow:0 16px 30px -8px rgba(184,122,18,.65)}
.vouch-mini::before{content:"🎟";position:absolute;right:-8px;bottom:-12px;font-size:58px;opacity:.16;transform:rotate(-16deg);pointer-events:none}
.vouch-mini::after{content:"";position:absolute;top:0;bottom:0;left:-70%;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);transition:left .6s var(--ease);pointer-events:none}
.vouch-mini:hover::after{left:130%}
.vouch-mini-label{position:relative;font-weight:900;font-size:19px;letter-spacing:-.3px}
.vouch-mini-code{position:relative;font-family:monospace;font-size:12.5px;margin-top:6px;background:rgba(255,255,255,.4);display:inline-block;padding:2px 9px;border-radius:6px;font-weight:700}
.vouch-mini-min{position:relative;font-size:11px;opacity:.9;margin-top:7px;font-weight:600}

.mall-strip{display:flex;gap:14px;overflow-x:auto;padding-bottom:6px}
.mall-shop{flex:0 0 auto;width:120px;text-align:center;text-decoration:none;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:16px 10px;transition:transform .2s,border-color .2s}
.mall-shop:hover{transform:translateY(-4px);border-color:var(--gold)}
.mall-logo{width:56px;height:56px;border-radius:50%;overflow:hidden;margin:0 auto 8px;background:var(--paper-2);display:flex;align-items:center;justify-content:center;font-size:24px}
.mall-logo img{width:100%;height:100%;object-fit:cover}
.mall-name{font-weight:700;color:var(--text);font-size:13px;line-height:1.25}
.mall-name .verified{color:var(--green);font-weight:800}
.mall-count{font-size:11px;color:var(--muted);margin-top:2px}

.shop-hero{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--paper);margin:12px 0 6px}
.shop-cover{aspect-ratio:4.2;overflow:hidden;background:var(--paper-2)}
.shop-cover img{width:100%;height:100%;object-fit:cover}
.shop-hero-row{display:flex;align-items:center;gap:16px;padding:16px;flex-wrap:wrap}
.shop-hero-logo{width:70px;height:70px;border-radius:50%;overflow:hidden;background:var(--paper-2);display:flex;align-items:center;justify-content:center;font-size:30px;flex:0 0 auto}
.shop-hero-logo img{width:100%;height:100%;object-fit:cover}
.shop-hero-meta{flex:1;min-width:200px}
.shop-hero-meta .verified{color:var(--green);font-weight:800;font-size:20px}
.shop-hero-stats{color:var(--muted);font-size:13.5px;margin-top:4px}
.shop-hero-stats .stars{color:var(--gold)}

.chip-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.chip{padding:6px 14px;border:1px solid var(--line);border-radius:20px;font-size:13px;color:var(--text-soft);text-decoration:none}
.chip.on{background:var(--gold);color:var(--gold-ink);border-color:var(--gold);font-weight:700}

.coin-card{background:linear-gradient(135deg,var(--gold),var(--gold-deep));color:var(--gold-ink);border-radius:16px;padding:24px;text-align:center;box-shadow:var(--shadow-lg)}
.coin-balance{font-size:42px;font-weight:800;line-height:1}
.coin-sub{opacity:.85;margin-top:2px}
.coin-hint{margin-top:12px;font-size:13px;opacity:.9}
.checkin-row{display:flex;gap:6px;overflow-x:auto}
.checkin-day{flex:1;min-width:52px;text-align:center;border:1px solid var(--line);border-radius:10px;padding:8px 4px}
.checkin-day.done{background:var(--green-light);border-color:var(--green)}
.checkin-day.next{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold-light)}
.cd-day{font-size:11px;color:var(--muted)}
.cd-reward{font-weight:800;color:var(--gold-deep)}
.ledger-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.ledger-note{font-size:14px;color:var(--text)}
.ledger-time{font-size:12px;color:var(--muted)}
.ledger-amt{font-weight:800}.ledger-amt.pos{color:var(--green-deep)}.ledger-amt.neg{color:var(--red)}

.vouch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(272px,1fr));gap:18px}
.vouch{position:relative;display:flex;background:linear-gradient(135deg,#fffaf0,#fdf1d6);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px -10px rgba(184,122,18,.4);transition:transform .2s var(--ease),box-shadow .2s}
html[data-theme="dark"] .vouch{background:linear-gradient(135deg,#2b2314,#221b10)}
.vouch:hover{transform:translateY(-4px);box-shadow:0 16px 34px -12px rgba(184,122,18,.5)}
.vouch::before,.vouch::after{content:"";position:absolute;right:98px;width:18px;height:18px;border-radius:50%;background:var(--bg);transform:translateX(50%);z-index:2}
.vouch::before{top:-9px}.vouch::after{bottom:-9px}
.vouch.is-used,.vouch.is-collected{opacity:.55}
.vouch-left{flex:1;padding:16px 18px;border-right:2px dashed var(--gold);position:relative;overflow:hidden}
.vouch-left::before{content:"%";position:absolute;right:12px;top:8px;font-family:'Playfair Display',serif;font-size:46px;font-weight:900;color:var(--gold);opacity:.14;line-height:1}
.vouch-label{font-family:'Playfair Display',serif;font-weight:900;color:var(--gold-deep);font-size:22px;line-height:1.1;position:relative}
html[data-theme="dark"] .vouch-label{color:var(--gold-light)}
.vouch-code{display:inline-block;font-family:monospace;font-size:12.5px;color:var(--text);margin-top:9px;background:rgba(184,122,18,.14);border:1px dashed var(--gold);padding:3px 9px;border-radius:6px;font-weight:700}
.vouch-terms{font-size:11.5px;color:var(--muted);margin-top:9px;position:relative}
.vouch-right{flex:0 0 98px;display:flex;align-items:center;justify-content:center;padding:0 12px;text-align:center}
.vouch-got,.vouch-used-tag{color:var(--muted);font-weight:700;font-size:13px}
.vouch-ready{color:var(--green-deep);font-weight:800;font-size:13px}

/* ── Chat / notifications / social (web parity, 2026-07-11) ──────────────── */
.conv-row{display:flex;align-items:center;gap:12px;padding:14px 16px;text-decoration:none;border-bottom:1px solid var(--line)}
.conv-row:hover{background:var(--paper-2)}
.conv-logo{width:44px;height:44px;border-radius:50%;overflow:hidden;background:var(--paper-2);display:flex;align-items:center;justify-content:center;font-size:20px;flex:0 0 auto}
.conv-logo img{width:100%;height:100%;object-fit:cover}
.conv-main{flex:1;min-width:0}
.conv-name{font-weight:700;color:var(--text)}.conv-name .verified{color:var(--green);font-weight:800}
.conv-last{color:var(--muted);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.conv-side{text-align:right;flex:0 0 auto}
.conv-time{font-size:11px;color:var(--muted)}
.conv-badge{display:inline-block;min-width:18px;height:18px;line-height:18px;text-align:center;background:var(--red);color:#fff;border-radius:9px;font-size:11px;font-weight:700;padding:0 5px;margin-top:4px}

.chat-head{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);margin-top:8px}
.chat-head .verified{color:var(--green);font-weight:800}
.chat-body{height:52vh;min-height:320px;overflow-y:auto;padding:16px 4px;display:flex;flex-direction:column;gap:8px}
.chat-empty{text-align:center;color:var(--muted);margin:auto}
.bubble{max-width:78%;padding:9px 13px;border-radius:14px;font-size:14px;line-height:1.4;word-wrap:break-word}
.bubble.mine{align-self:flex-end;background:linear-gradient(135deg,var(--gold),var(--gold-deep));color:var(--gold-ink);border-bottom-right-radius:4px}
.bubble.theirs{align-self:flex-start;background:var(--paper-2);color:var(--text);border-bottom-left-radius:4px}
.bubble-product{display:flex;align-items:center;gap:8px;background:rgba(0,0,0,.06);border-radius:8px;padding:5px 8px;margin-bottom:6px;text-decoration:none;color:inherit;font-size:12px}
.bubble-product img{width:30px;height:30px;border-radius:6px;object-fit:cover}
.chat-compose{display:flex;gap:10px;padding:12px 0;border-top:1px solid var(--line)}
.chat-compose input{flex:1;border:1px solid var(--line);border-radius:22px;padding:11px 16px;background:var(--paper);color:var(--text)}

.note-row{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;text-decoration:none;border-bottom:1px solid var(--line);position:relative}
.note-row:hover{background:var(--paper-2)}
.note-row.unread{background:color-mix(in srgb,var(--gold) 8%,transparent)}
.note-ico{font-size:20px;flex:0 0 auto}
.note-title{font-weight:700;color:var(--text)}
.note-body{color:var(--text-soft);font-size:13.5px;margin-top:2px}
.note-time{color:var(--muted);font-size:12px;margin-top:3px}
.note-dot{width:9px;height:9px;border-radius:50%;background:var(--gold);position:absolute;top:16px;right:14px}
.shop-actions{display:flex;gap:8px;flex-wrap:wrap}

.social-sep{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px;margin:18px 0 14px}
.social-sep::before,.social-sep::after{content:"";flex:1;height:1px;background:var(--line)}
.social-btns{display:flex;flex-direction:column;align-items:center;gap:10px}
.apple-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:320px;max-width:100%;height:40px;background:#000;color:#fff;border-radius:8px;font-weight:600;cursor:pointer;font-size:15px}
html[data-theme="light"] .apple-btn{background:#000}

/* ── Light-mode theme sync: hero, header, mobile menu (2026-07-16) ────────── */
html[data-theme="light"] .hero{background:radial-gradient(1100px 380px at 72% -10%,rgba(227,168,30,.16),transparent),linear-gradient(160deg,#fffaf0,#fdf4de 55%,var(--bg));color:var(--text)}
html[data-theme="light"] .hero p{color:var(--text-soft)}
html[data-theme="light"] .hero-badge{background:rgba(255,255,255,.72);border-color:rgba(184,122,18,.28)}
html[data-theme="light"] .hero-badge .stat span{color:var(--muted)}
html[data-theme="light"] .hero .btn-ghost{color:var(--text);border-color:rgba(20,18,16,.22)}
html[data-theme="light"] .hero .btn-ghost:hover{color:var(--gold-deep);border-color:var(--gold-deep)}
html[data-theme="light"] .site-header{background:linear-gradient(180deg,#ffffff,var(--bg));color:var(--ink);box-shadow:0 2px 16px rgba(90,66,20,.12)}
html[data-theme="light"] .nav a{color:var(--text)}
html[data-theme="light"] .nav a:hover{color:var(--gold-deep)}
html[data-theme="light"] .icon-btn{color:var(--text)}
html[data-theme="light"] .icon-btn:hover{color:var(--gold-deep)}
html[data-theme="light"] .hamburger{color:var(--ink)}
html[data-theme="light"] .header-search{background:rgba(20,18,16,.05);border-color:var(--line)}
html[data-theme="light"] .header-search input{color:var(--text)}
html[data-theme="light"] .header-search input::placeholder{color:var(--muted)}
html[data-theme="light"] .theme-toggle{border-color:var(--line);background:rgba(20,18,16,.05)}
html[data-theme="light"] .mobile-menu{background:#fff;color:var(--text)}
html[data-theme="light"] .mobile-menu a{color:var(--text);border-bottom-color:var(--line)}
html[data-theme="light"] .mobile-menu .theme-toggle{color:var(--text)}

/* ── Touch devices can't hover: always show the quick add-to-cart on cards ── */
@media (hover: none), (pointer: coarse), (max-width: 700px){
  .card .quick{transform:translateY(0)}
  .card .thumb::before{content:"";position:absolute;left:0;right:0;bottom:0;height:60px;background:linear-gradient(transparent,rgba(0,0,0,.32));z-index:2;pointer-events:none}
}
