/* ══════════════════════════════════════════
   vixi-shared.css  –  Vixi Maria Kids
   Main CSS extracted from index.html (lines 9-376)
   + Admin CSS (lines 1554-1668)
   + Visual editor CSS (lines 2680-2724)
   ══════════════════════════════════════════ */

:root{
  --pink:#F2276E;
  --pink-mid:#FF6FA0;
  --pink-soft:#FFAEC8;
  --pink-pale:#FFF0F6;
  --pink-xpale:#FFF7FA;
  --coral:#FF7A6E;
  --yellow:#FFD43B;
  --yellow-soft:#FFF3B0;
  --mint:#3DD6C3;
  --mint-soft:#D4F7F3;
  --purple:#B66BFF;
  --purple-soft:#EEE0FF;
  --sky:#5CC8FF;
  --sky-soft:#E0F5FF;
  --ink:#1E001A;
  --ink-mid:#5C1040;
  --gray:#9A7585;
  --line:#F5D7E5;
  --white:#FFFFFF;
  --bg:#FFFAFB;
  --font-d:'Fredoka',sans-serif;
  --font-b:'Nunito',sans-serif;
  --r4:4px;--r8:8px;--r12:12px;--r16:16px;--r24:24px;--r32:32px;--r99:999px;
  --sh1:0 2px 12px rgba(242,39,110,.10);
  --sh2:0 8px 32px rgba(242,39,110,.16);
  --sh3:0 20px 60px rgba(242,39,110,.22);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-b);background:var(--bg);color:var(--ink);overflow-x:hidden;line-height:1.5}

/* ──── ANNOUNCE ──── */
.ann{background:var(--pink);color:#fff;padding:9px 0;overflow:hidden;position:relative;z-index:60}
.ann-track{display:flex;gap:0;white-space:nowrap;animation:annscroll 28s linear infinite}
.ann-item{display:flex;align-items:center;gap:8px;padding:0 40px;font-size:13px;font-weight:700;letter-spacing:.3px}
.ann-item span{opacity:.75;font-size:16px}
.ann-copy{opacity:1!important;font-size:13px!important}
@keyframes annscroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ──── HEADER ──── */
header{position:sticky;top:0;z-index:50;background:rgba(255,250,251,.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:2px solid var(--line)}
.hdr{max-width:1360px;margin:0 auto;padding:0 28px;display:flex;align-items:center;gap:24px;height:72px}
.logo{text-decoration:none;display:flex;align-items:center;gap:0;flex-shrink:0}
.logo-icon{width:44px;height:44px;background:linear-gradient(135deg,var(--pink),var(--pink-mid));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;margin-right:10px;flex-shrink:0;box-shadow:var(--sh1);overflow:hidden;background-size:cover;background-position:center}
.logo-icon.has-custom-image{color:transparent;text-shadow:none}
.logo-text{line-height:1}
.logo-name{font-family:var(--font-d);font-size:26px;font-weight:700;color:var(--pink);display:block;letter-spacing:-.3px}
.logo-sub{font-size:10px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--ink-mid);opacity:.7}

nav{display:flex;gap:2px;flex:1;justify-content:center}
nav a{text-decoration:none;padding:9px 16px;border-radius:var(--r99);font-size:15px;font-weight:700;color:var(--ink-mid);transition:all .2s;white-space:nowrap}
nav a:hover{background:var(--pink-pale);color:var(--pink)}
nav a.hot{color:var(--pink)}

.hdr-icons{display:flex;gap:6px;align-items:center;flex-shrink:0}
.ibt{width:44px;height:44px;border-radius:50%;background:var(--pink-pale);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ink-mid);transition:all .2s;position:relative;font-size:20px}
.ibt:hover{background:var(--pink);color:#fff;transform:scale(1.08)}
.ibt .badge{position:absolute;top:-2px;right:-2px;background:var(--yellow);color:var(--ink);font-size:10px;font-weight:900;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid #fff}
.hdr-cta{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--pink);color:#fff;border-radius:var(--r99);font-weight:800;font-size:14px;text-decoration:none;border:none;cursor:pointer;transition:all .2s;flex-shrink:0}
.hdr-cta:hover{background:var(--ink-mid);transform:translateY(-1px)}
.burger{display:none;font-size:24px;background:none;border:none;cursor:pointer;color:var(--ink-mid)}
.acct-dd{position:relative;display:inline-block;flex-shrink:0}
.acct-in{background:var(--pink)!important;color:#fff!important}
.acct-menu{position:absolute;right:0;top:calc(100% + 10px);background:#fff;border-radius:20px;box-shadow:0 8px 36px rgba(30,0,26,.16);border:1.5px solid var(--line);min-width:230px;z-index:400;display:none;padding:8px}
.acct-dd.open .acct-menu{display:block}
.acct-hd{padding:10px 14px;font-weight:800;font-size:13px;color:var(--gray);border-bottom:1px solid var(--line);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.acct-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;text-decoration:none;color:var(--ink);font-weight:700;font-size:14px;cursor:pointer;background:none;border:none;width:100%;text-align:left;transition:background .15s;white-space:nowrap}
.acct-item:hover{background:var(--pink-pale);color:var(--pink)}
.acct-sep{height:1px;background:var(--line);margin:4px 8px}

/* mobile nav */
.mob-menu{display:none;position:fixed;inset:0;background:var(--pink-pale);z-index:200;flex-direction:column;align-items:center;justify-content:center;gap:28px}
.mob-menu.open{display:flex}
.mob-menu a{font-family:var(--font-d);font-size:36px;color:var(--ink-mid);text-decoration:none;font-weight:700;transition:color .2s}
.mob-menu a:hover{color:var(--pink)}
.mob-close{position:absolute;top:24px;right:28px;font-size:36px;color:var(--ink-mid);background:none;border:none;cursor:pointer}

/* ──── HERO ──── */
.hero{position:relative;overflow:hidden;background:var(--pink-pale);min-height:580px;display:flex;align-items:center}
.hero-bg{position:absolute;inset:0;z-index:0;overflow:hidden}
.blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.55}
.blob.b1{width:500px;height:500px;background:var(--pink-soft);top:-100px;right:-80px}
.blob.b2{width:380px;height:380px;background:var(--yellow-soft);bottom:-80px;left:20%}
.blob.b3{width:300px;height:300px;background:var(--purple-soft);top:60px;left:-60px}

.hero-inner{max-width:1360px;margin:0 auto;padding:60px 28px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;position:relative;z-index:1;width:100%}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:#fff;border:2px solid var(--pink-soft);border-radius:var(--r99);padding:7px 16px;font-size:13px;font-weight:800;color:var(--pink);margin-bottom:20px;box-shadow:var(--sh1)}
.hero h1{font-family:var(--font-d);font-size:clamp(40px,5.5vw,72px);font-weight:700;line-height:1.05;color:var(--ink);margin-bottom:20px;letter-spacing:-.5px}
.hero h1 .hi{color:var(--pink)}
.hero h1 .wave{display:inline-block;animation:wave 2s ease-in-out infinite}
@keyframes wave{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}
.hero-sub{font-size:18px;color:var(--ink-mid);margin-bottom:32px;max-width:480px;font-weight:500}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap}
.btn-main{display:inline-flex;align-items:center;gap:10px;padding:16px 32px;background:var(--pink);color:#fff;border-radius:var(--r99);font-family:var(--font-d);font-weight:700;font-size:17px;text-decoration:none;box-shadow:var(--sh2);transition:all .25s;border:none;cursor:pointer}
.btn-main:hover{background:var(--ink-mid);transform:translateY(-3px);box-shadow:var(--sh3)}
.btn-ghost{display:inline-flex;align-items:center;gap:10px;padding:15px 28px;background:transparent;color:var(--ink-mid);border:2.5px solid var(--line);border-radius:var(--r99);font-family:var(--font-d);font-weight:700;font-size:17px;text-decoration:none;transition:all .25s}
.btn-ghost:hover{border-color:var(--pink);color:var(--pink);background:var(--pink-pale)}
.hero-trust{display:flex;gap:20px;margin-top:28px;flex-wrap:wrap}
.trust-item{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--gray)}
.trust-item .dot{width:8px;height:8px;border-radius:50%;background:var(--mint);flex-shrink:0}

/* Hero illustration */
.hero-art{position:relative;display:flex;align-items:center;justify-content:center}
.hero-art .main-card{
  background:#fff;border-radius:var(--r32);padding:32px;
  box-shadow:var(--sh3);
  width:340px;max-width:100%;
  text-align:center;position:relative;
  animation:cardFloat 4s ease-in-out infinite
}
@keyframes cardFloat{0%,100%{transform:translateY(0) rotate(1deg)}50%{transform:translateY(-16px) rotate(-1deg)}}
.hero-art .main-card .ribbon{position:absolute;top:18px;left:18px;background:var(--yellow);color:var(--ink);padding:5px 14px;border-radius:var(--r99);font-size:11px;font-weight:900;letter-spacing:.5px}
.hero-art .main-card .item-img{font-size:120px;display:block;line-height:1;margin-bottom:16px}
.hero-art .main-card .item-name{font-family:var(--font-d);font-size:20px;font-weight:600;color:var(--ink-mid);margin-bottom:4px}
.hero-art .main-card .item-price{font-family:var(--font-d);font-size:28px;font-weight:700;color:var(--pink)}

.float-el{position:absolute;font-size:36px;animation:floatEl 3s ease-in-out infinite}
.float-el.f1{top:-20px;right:20px;animation-delay:.4s}
.float-el.f2{bottom:20px;left:-20px;animation-delay:.8s;font-size:28px}
.float-el.f3{top:50%;right:-30px;animation-delay:1.2s;font-size:24px}
.float-el.f4{top:10px;left:0;font-size:20px;animation-delay:0s}
@keyframes floatEl{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-12px) rotate(15deg)}}
.bubbles{position:absolute;inset:0;pointer-events:none}
.bub{position:absolute;border-radius:50%;opacity:.7}

/* ──── PROMISES BAR ──── */
.promises{background:#fff;border-bottom:2px solid var(--line);padding:0}
.prom-grid{max-width:1360px;margin:0 auto;padding:0 28px;display:grid;grid-template-columns:repeat(4,1fr)}
.prom-item{display:flex;align-items:center;gap:14px;padding:22px 20px;border-right:1px solid var(--line)}
.prom-item:last-child{border-right:none}
.prom-icon{font-size:32px;flex-shrink:0}
.prom-text .pt{font-weight:900;font-size:14px;color:var(--ink);display:block}
.prom-text .ps{font-size:12px;color:var(--gray);font-weight:600}

/* ──── SECTION BASE ──── */
.section{padding:80px 28px}
.section.tight{padding:60px 28px}
.wrap{max-width:1360px;margin:0 auto}
.sec-head{margin-bottom:48px}
.sec-head .eyebrow{font-size:12px;font-weight:900;letter-spacing:3px;text-transform:uppercase;color:var(--pink);display:block;margin-bottom:8px}
.sec-head h2{font-family:var(--font-d);font-size:clamp(30px,3.5vw,48px);font-weight:700;color:var(--ink);letter-spacing:-.5px;line-height:1.1}
.sec-head p{margin-top:12px;color:var(--gray);font-size:16px;font-weight:500}

/* ──── CATEGORIES ──── */
.cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.cat-tile{text-decoration:none;border-radius:var(--r24);overflow:hidden;position:relative;aspect-ratio:3/4;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;transition:transform .3s,box-shadow .3s;cursor:pointer}
.cat-tile:hover{transform:translateY(-6px) scale(1.01);box-shadow:var(--sh3)}
.cat-tile .bg-illust{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:120px;opacity:.85;transition:transform .5s}
.cat-tile:hover .bg-illust{transform:scale(1.1) rotate(-5deg)}
.cat-tile.has-custom-image{background-size:cover;background-position:center}
.cat-tile.has-custom-image .bg-illust{opacity:0}
.cat-tile::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.55) 0%,transparent 60%)}
.cat-tile .cat-label{position:relative;z-index:1}
.cat-tile .cat-name{font-family:var(--font-d);font-size:26px;font-weight:700;color:#fff;display:block;line-height:1.1}
.cat-tile .cat-range{font-size:13px;color:rgba(255,255,255,.8);font-weight:700;margin-top:3px;display:block}
.cat-tile .cat-arrow{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:#fff;border-radius:50%;margin-top:12px;color:var(--pink);font-size:18px;transition:transform .2s}
.cat-tile:hover .cat-arrow{transform:translate(3px,-3px)}
.cat-photo-hint{display:none}
.vixi-editing .cat-photo-hint{display:block;position:absolute;top:8px;left:8px;background:rgba(0,0,0,.5);color:#fff;font-size:11px;border-radius:8px;padding:4px 8px;z-index:10}

.ct-girl{background:linear-gradient(135deg,#FFB3CC,#FF6FA0)}
.ct-boy{background:linear-gradient(135deg,#5CC8FF,#2D9FE0)}
.ct-baby{background:linear-gradient(135deg,#B8F5C8,#3DD6C3)}
.ct-teen{background:linear-gradient(135deg,#D4A5FF,#9B59B6)}
.ct-colecao{background:linear-gradient(135deg,#FFE580,#FF7E00)}

/* ──── SIZE NAVIGATOR ──── */
.sizes-section{background:linear-gradient(135deg,#fff0f8,#f3eeff);border-radius:var(--r32);margin:0 28px;padding:52px 44px;border:2px solid rgba(242,39,110,.1);box-shadow:0 8px 40px rgba(242,39,110,.07)}
.sizes-section .sec-head{margin-bottom:36px}
.size-bubbles{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.sz-btn{width:72px;height:72px;border-radius:50%;background:#fff;border:2.5px solid var(--line);display:flex;align-items:center;justify-content:center;font-family:var(--font-d);font-size:17px;font-weight:700;color:var(--ink-mid);cursor:pointer;transition:all .25s;box-shadow:0 4px 16px rgba(0,0,0,.06);text-decoration:none;flex-shrink:0}
.sz-btn:hover{background:var(--pink);color:#fff;border-color:var(--pink);transform:scale(1.15) translateY(-3px);box-shadow:0 8px 24px rgba(242,39,110,.35)}
.sz-btn.active,.sz-btn:active{background:var(--pink);color:#fff;border-color:var(--pink);box-shadow:0 8px 24px rgba(242,39,110,.35)}
.sz-divider{width:2px;height:56px;background:var(--line);border-radius:2px;align-self:center;margin:0 6px;flex-shrink:0}
.sizes-section-hint{font-size:13px;color:var(--gray);font-weight:600;margin-top:20px;display:block}

/* ──── CATEGORY GROUP SECTIONS ──── */
.cat-group-sec{margin-bottom:64px;padding-top:8px}
.cat-group-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;gap:16px;flex-wrap:wrap;padding-bottom:16px;border-bottom:2.5px solid var(--line)}
.cat-group-title{font-family:var(--font-d);font-size:28px;font-weight:800;color:var(--ink);display:flex;align-items:center;gap:10px;letter-spacing:-.3px}
.cat-group-title::after{display:none}
.cat-group-more{flex-shrink:0;padding:9px 22px;border-radius:99px;border:none;background:var(--pink);color:#fff;font-family:var(--font-b);font-weight:800;font-size:13px;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-flex;align-items:center;gap:6px;box-shadow:0 2px 10px rgba(242,39,110,.25)}
.cat-group-more:hover{background:var(--ink-mid);transform:translateY(-2px);box-shadow:0 4px 16px rgba(242,39,110,.35)}

/* ──── PRODUCTS ──── */
.prod-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:36px}
.tab{padding:10px 22px;border-radius:var(--r99);border:2.5px solid var(--line);background:transparent;font-family:var(--font-b);font-size:14px;font-weight:800;color:var(--gray);cursor:pointer;transition:all .2s}
.tab:hover{border-color:var(--pink-soft);color:var(--pink)}
.tab.on{background:var(--pink);color:#fff;border-color:var(--pink)}

.prod-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.prod-card{background:#fff;border-radius:var(--r24);overflow:hidden;transition:all .3s;border:2px solid transparent;cursor:pointer}
.prod-card:hover{transform:translateY(-5px);box-shadow:var(--sh2);border-color:var(--pink-soft)}
.prod-img{position:relative;aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:100px;transition:transform .4s}
.prod-card:hover .prod-img{transform:scale(1.06)}
.prod-img .pbadge,.prod-img-wrap .pbadge{position:absolute;top:10px;left:10px;z-index:2;padding:5px 13px;border-radius:99px;font-size:11px;font-weight:900;letter-spacing:.3px;line-height:1.4;display:inline-flex;align-items:center;gap:4px;box-shadow:0 3px 10px rgba(0,0,0,.18);backdrop-filter:blur(4px)}
.pbadge.novo{background:linear-gradient(135deg,#F2276E 0%,#B66BFF 100%);color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.2)}
.pbadge.off{background:linear-gradient(135deg,#FF8C00 0%,#FFD43B 100%);color:#5a3a00;text-shadow:none}
.pbadge.fav{display:none!important}
[data-badge-style="soft"] .pbadge.novo{background:linear-gradient(135deg,rgba(242,39,110,.85),rgba(182,107,255,.85));color:#fff}
[data-badge-style="soft"] .pbadge.off{background:linear-gradient(135deg,rgba(255,140,0,.88),rgba(255,211,59,.88));color:#5a3a00}
[data-badge-style="outline"] .pbadge.novo{background:transparent;color:var(--pink);box-shadow:inset 0 0 0 2px var(--pink),0 2px 8px rgba(242,39,110,.15)}
[data-badge-style="outline"] .pbadge.off{background:transparent;color:#cc6600;box-shadow:inset 0 0 0 2px #FF8C00,0 2px 8px rgba(255,140,0,.15)}
.prod-img .fav-btn{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.9);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--pink-soft);transition:all .2s}
.prod-img .fav-btn:hover{background:#fff;color:var(--pink);transform:scale(1.15)}
.prod-img .fav-btn.liked{color:var(--pink)}
.prod-info{padding:16px 18px 20px}
.prod-cat{font-size:11px;font-weight:900;letter-spacing:2px;text-transform:uppercase;color:var(--pink);margin-bottom:4px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.prod-colecao-tag{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;background:linear-gradient(135deg,#FFE580,#FF7E00);color:#5a2500;border-radius:99px;font-size:10px;font-weight:900;letter-spacing:.5px;cursor:pointer;transition:opacity .15s}
.prod-colecao-tag:hover{opacity:.8}
.prod-name{font-family:var(--font-d);font-size:17px;font-weight:600;color:var(--ink);margin-bottom:10px;line-height:1.2}
.prod-sizes{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:12px}
.psz{width:26px;height:26px;border-radius:50%;border:1.5px solid var(--line);font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center;color:var(--gray);transition:all .2s;cursor:pointer}
.psz:hover{border-color:var(--pink);color:var(--pink)}
.prod-price{display:flex;flex-direction:column;margin-bottom:10px}
.pold{font-size:12px;color:var(--gray);text-decoration:line-through;line-height:1}
.pnew{font-family:var(--font-d);font-size:22px;font-weight:700;color:var(--pink)}
.prod-foot-btns{display:flex;align-items:center;gap:8px}
.pbuy-btn{flex:1;background:var(--pink);color:#fff;border:none;border-radius:99px;padding:10px 14px;font-family:var(--font-b);font-weight:800;font-size:13px;cursor:pointer;text-align:center;text-decoration:none;transition:all .2s;box-shadow:var(--sh1);white-space:nowrap}
.pbuy-btn:hover{background:var(--ink-mid);box-shadow:var(--sh2);transform:translateY(-1px)}
.padd{width:38px;height:38px;border-radius:50%;background:var(--pink-pale);border:2px solid var(--pink);cursor:pointer;color:var(--pink);font-size:18px;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}
.padd:hover{background:var(--pink);color:#fff;transform:scale(1.1);box-shadow:var(--sh1)}
.view-more{display:flex;justify-content:center;margin-top:40px}

/* bg combos */
.bg-p1{background:linear-gradient(135deg,#FFE4EE,#FFB3CC)}
.bg-p2{background:linear-gradient(135deg,#FFF0F6,#FFAEC8)}
.bg-p3{background:linear-gradient(135deg,#FFD6E6,#FF9EC0)}
.bg-p4{background:linear-gradient(135deg,#E0F5FF,#B3E5FC)}
.bg-p5{background:linear-gradient(135deg,#F3E5FF,#CE93D8)}
.bg-p6{background:linear-gradient(135deg,#E8FFF5,#B2DFDB)}
.bg-p7{background:linear-gradient(135deg,#FFF8D6,#FFE082)}
.bg-p8{background:linear-gradient(135deg,#FFE8E6,#FFCDD2)}

/* ──── PROMO BANNERS ──── */
.promo-row{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}
.promo-card{border-radius:var(--r32);padding:48px 40px;position:relative;overflow:hidden;min-height:280px;display:flex;flex-direction:column;justify-content:flex-end}
.promo-card .deco{position:absolute;font-size:200px;opacity:.15;right:-30px;top:-40px;line-height:1}
.promo-card .eyebrow{font-size:11px;font-weight:900;letter-spacing:3px;text-transform:uppercase;margin-bottom:10px;display:block;opacity:.75}
.promo-card h3{font-family:var(--font-d);font-size:clamp(24px,2.5vw,36px);font-weight:700;line-height:1.1;margin-bottom:16px}
.promo-card .btn-main{align-self:flex-start;font-size:15px;padding:12px 24px}
.pc-pink{background:linear-gradient(135deg,var(--pink),#FF3D7F);color:#fff}
.pc-yellow{background:linear-gradient(135deg,var(--yellow),#FFA500);color:var(--ink)}
.pc-pink .btn-main{background:#fff;color:var(--pink)}
.pc-pink .btn-main:hover{background:var(--pink-pale)}
.pc-yellow .btn-main{background:var(--ink);color:#fff}

/* ──── SOBRE / ABOUT ──── */
.about-wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.about-card{border-radius:var(--r32);overflow:hidden;position:relative;aspect-ratio:4/5;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end;padding:28px;box-shadow:var(--sh3)}
.about-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}
.about-card .giant-initial{display:none}
.about-card .name-pill{background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-radius:var(--r24);padding:18px 24px;text-align:center;position:relative;box-shadow:var(--sh2);width:100%}
.about-card .np-role{font-size:10px;letter-spacing:3px;font-weight:900;text-transform:uppercase;color:var(--gray);margin-bottom:4px}
.about-card .np-name{font-family:var(--font-d);font-size:19px;font-weight:700;color:var(--pink)}
.about-card .np-loc{font-size:13px;color:var(--gray);font-weight:600;margin-top:2px}

.about-text .eyebrow{font-size:12px;font-weight:900;letter-spacing:3px;text-transform:uppercase;color:var(--pink);display:block;margin-bottom:12px}
.about-text h2{font-family:var(--font-d);font-size:clamp(30px,3vw,44px);font-weight:700;color:var(--ink);letter-spacing:-.5px;line-height:1.1;margin-bottom:20px}
.about-text p{color:var(--gray);font-size:16px;margin-bottom:14px;font-weight:500}
.about-pills{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}
.about-pill{padding:8px 18px;border-radius:var(--r99);font-size:13px;font-weight:800;background:var(--pink-pale);color:var(--pink)}
.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:24px;border-top:2px solid var(--line)}
.stat-box .snum{font-family:var(--font-d);font-size:34px;font-weight:700;color:var(--pink);line-height:1}
.stat-box .slbl{font-size:12px;font-weight:800;color:var(--gray);letter-spacing:.5px;text-transform:uppercase}

/* ──── INSTAGRAM BAR ──── */
.ig-bar{background:var(--pink);padding:40px 28px;text-align:center}
.ig-bar h3{font-family:var(--font-d);font-size:clamp(24px,3vw,36px);font-weight:700;color:#fff;margin-bottom:8px}
.ig-bar p{color:rgba(255,255,255,.85);font-size:16px;font-weight:600;margin-bottom:24px}
.ig-grid{max-width:900px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.ig-tile{aspect-ratio:1;border-radius:var(--r12);background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:48px;transition:all .3s;cursor:pointer}
.ig-tile:hover{background:rgba(255,255,255,.35);transform:scale(1.05)}
.ig-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;transition:all .3s}
.ig-icon{font-size:44px;transition:transform .3s}
.ig-hover{font-size:11px;font-weight:900;letter-spacing:1px;color:#fff;opacity:0;transition:opacity .3s;text-transform:uppercase}
.ig-tile:hover .ig-icon{transform:scale(1.2)}
.ig-tile:hover .ig-hover{opacity:1}
.ig-tile:hover{background:rgba(255,255,255,.3)}
.ig-btn{display:inline-flex;align-items:center;gap:8px;margin-top:24px;padding:12px 28px;background:#fff;color:var(--pink);border-radius:var(--r99);font-weight:900;font-size:15px;text-decoration:none;transition:all .2s}
.ig-btn:hover{background:var(--pink-pale);transform:translateY(-2px)}
.ig-desc-bubble{display:inline-block;background:var(--pink);background:linear-gradient(135deg,#f2276e,#b66bff);border-radius:16px;padding:10px 20px;color:#fff;font-size:14px;font-weight:700;margin:0 auto 24px;max-width:480px;box-shadow:0 4px 16px rgba(242,39,110,.3)}

/* ──── NEWSLETTER ──── */
.news-wrap{background:linear-gradient(135deg,var(--pink-pale),var(--purple-soft));border:2px solid var(--line);border-radius:var(--r32);padding:64px 48px;text-align:center;position:relative;overflow:hidden;margin:0 28px}
.news-wrap .deco-l,.news-wrap .deco-r{position:absolute;font-size:180px;opacity:.12;color:var(--pink);top:-20px;line-height:1}
.news-wrap .deco-l{left:-20px}
.news-wrap .deco-r{right:-20px;transform:scaleX(-1)}
.news-wrap .eyebrow{font-size:12px;font-weight:900;letter-spacing:3px;text-transform:uppercase;color:var(--pink);display:block;margin-bottom:12px}
.news-wrap h2{font-family:var(--font-d);font-size:clamp(28px,3vw,44px);font-weight:700;color:var(--ink);margin-bottom:10px;letter-spacing:-.5px}
.news-wrap p{color:var(--gray);margin-bottom:30px;font-size:16px;font-weight:500}
.news-form{display:flex;max-width:460px;margin:0 auto;gap:8px}
.news-form input{flex:1;padding:16px 22px;border-radius:var(--r99);border:2px solid var(--line);font-family:var(--font-b);font-size:14px;background:#fff;color:var(--ink)}
.news-form input::placeholder{color:var(--gray)}
.news-form input:focus{outline:none;border-color:var(--pink)}
.news-form button{padding:16px 26px;background:var(--pink);color:#fff;border:none;border-radius:var(--r99);font-family:var(--font-b);font-weight:900;font-size:14px;cursor:pointer;transition:all .2s;white-space:nowrap}
.news-form button:hover{background:var(--pink-mid)}

/* ──── FOOTER ──── */
footer,.footer-sec{background:var(--pink-pale);color:var(--ink-mid);padding:64px 28px 28px;border-top:2px solid var(--line)}
.foot-grid{max-width:1360px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:50px;padding-bottom:48px;border-bottom:1px solid var(--line)}
.foot-brand .logo{margin-bottom:18px;display:inline-flex}
.foot-brand .logo .logo-name{color:var(--pink)}
.foot-brand .logo .logo-sub{color:var(--gray)}
.foot-brand p{font-size:14px;line-height:1.7;max-width:280px;margin-bottom:20px;color:var(--gray)}
.foot-socials{display:flex;gap:8px}
.fsoc{width:40px;height:40px;border-radius:50%;background:var(--line);display:flex;align-items:center;justify-content:center;text-decoration:none;color:var(--ink-mid);font-size:17px;transition:all .2s}
.fsoc:hover{background:var(--pink);color:#fff;transform:translateY(-2px)}
footer h5,.footer-sec h5{font-family:var(--font-d);font-size:18px;font-weight:600;color:var(--ink-mid);margin-bottom:18px}
footer ul,.footer-sec ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
footer ul li a,.footer-sec ul li a{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;background:var(--pink-pale);text-decoration:none;color:var(--ink-mid);font-size:13px;font-weight:700;transition:all .2s;border:1.5px solid var(--line)}
footer ul li a:hover,.footer-sec ul li a:hover{background:var(--pink);color:#fff;border-color:var(--pink)}
.foot-contact p{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--gray);margin-bottom:10px;font-weight:600}
.foot-contact p .ic{flex-shrink:0;font-size:16px}
.foot-bot{max-width:1360px;margin:24px auto 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--gray)}

/* ──── MINI BUTTON BASE ──── */
.mini-btn{border:none;border-radius:999px;padding:10px 18px;font-weight:900;cursor:pointer;font-family:var(--font-b);font-size:13px;background:var(--pink-pale);color:var(--pink);transition:all .2s}
.mini-btn:hover{filter:brightness(.92)}

/* ──── FLOATING WA ──── */
.wa-float{position:fixed;bottom:28px;right:28px;width:60px;height:60px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(37,211,102,.45);text-decoration:none;font-size:28px;z-index:100;transition:all .25s;animation:waBounce 3s ease-in-out infinite}
.wa-float:hover{transform:scale(1.12);box-shadow:0 6px 30px rgba(37,211,102,.6)}
@keyframes waBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.wa-float .wa-tip{position:absolute;right:72px;background:#fff;padding:8px 14px;border-radius:var(--r99);box-shadow:var(--sh2);font-size:13px;font-weight:800;color:var(--ink);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .25s}
.wa-float:hover .wa-tip{opacity:1}

/* ──── TOAST ──── */
.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,120px);background:var(--ink);color:#fff;padding:14px 24px;border-radius:var(--r99);font-size:14px;font-weight:700;z-index:200;box-shadow:var(--sh3);display:flex;align-items:center;gap:10px;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.toast.on{transform:translate(-50%,0)}

/* ──── RESPONSIVE ──── */
@media(max-width:1100px){
  .prod-grid{grid-template-columns:repeat(3,1fr)}
  .foot-grid{grid-template-columns:repeat(2,1fr);gap:36px}
}
@media(max-width:900px){
  .cat-grid{grid-template-columns:repeat(2,1fr)}
  .about-wrap{grid-template-columns:1fr;gap:36px}
  .promo-row{grid-template-columns:1fr}
  .prom-grid{grid-template-columns:repeat(2,1fr)}
  .ig-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:768px){
  nav{display:none}
  .hdr-cta{display:none}
  .burger{display:block}
  .acct-entry{padding:8px 14px;font-size:13px}
  .hero-inner{grid-template-columns:1fr;gap:40px;padding:48px 20px 60px}
  .hero-art{justify-content:center}
  .prod-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .prod-info{padding:12px 14px 16px}
  .foot-grid{grid-template-columns:1fr;gap:28px;text-align:center}
  .foot-socials{justify-content:center}
  .foot-contact p{justify-content:center}
  .news-form{flex-direction:column}
  .section{padding:60px 20px}
  .sizes-section{margin:0 20px;padding:36px 24px}
  .news-wrap{margin:0 20px;padding:48px 28px}
}
@media(max-width:480px){
  .cat-grid{grid-template-columns:1fr 1fr}
  .prod-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .prom-grid{grid-template-columns:1fr}
  .ig-grid{grid-template-columns:repeat(2,1fr)}
  .hero h1{font-size:36px}
  .hdr{padding:0 16px;height:64px}
}

.prod-img-wrap{position:relative;aspect-ratio:1;overflow:hidden;background:#f8f8f8}
.prod-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.prod-card:hover .prod-img-wrap img{transform:scale(1.07)}
.prod-img-wrap .fav-btn{position:absolute;top:12px;right:12px;z-index:2;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.9);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--pink-soft);transition:all .2s}
.prod-img-wrap .fav-btn:hover{background:#fff;color:var(--pink);transform:scale(1.15)}
.prod-img-wrap .fav-btn.liked{color:var(--pink)}
.psz.active-sz{background:var(--pink);color:#fff;border-color:var(--pink)}
#favoritos .fav-list{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:24px}
#favoritos .fav-card{padding:22px 20px;border-radius:24px;background:#fff;box-shadow:0 18px 45px rgba(0,0,0,.05);border:1px solid rgba(229,229,229,.9)}
#favoritos .fav-card .fav-title{font-size:1.1rem;font-weight:700;margin-bottom:10px;color:var(--dark)}
#favoritos .fav-card .fav-note{line-height:1.7;color:#555}
#favoritos .fav-cta{display:inline-flex;align-items:center;gap:10px;margin-top:16px;padding:12px 18px;border-radius:999px;background:rgba(255,221,237,.95);color:var(--pink);font-weight:700;text-decoration:none}
.ig-tile{position:relative;overflow:hidden;border-radius:var(--r12)}
.ig-tile img{width:100%;height:100%;object-fit:cover;transition:transform .4s;display:block}
.ig-tile:hover img{transform:scale(1.08)}
.ig-overlay{position:absolute;inset:0;background:rgba(242,39,110,.5);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s}
.ig-overlay span{color:#fff;font-weight:900;font-size:13px;letter-spacing:1px;text-transform:uppercase}
.ig-tile:hover .ig-overlay{opacity:1}

/* Functional store overlays and admin improvements */
.store-modal{position:fixed;inset:0;background:rgba(30,0,26,.46);z-index:260;display:none;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(4px)}
.store-modal.open{display:flex}.store-box{width:min(760px,96vw);max-height:86vh;overflow:auto;background:#fff;border-radius:28px;box-shadow:var(--sh3);padding:24px;border:1px solid var(--line)}
.store-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.store-title h3{font-family:var(--font-d);font-size:26px;color:var(--ink)}
.store-close{border:none;background:var(--pink-pale);color:var(--pink);border-radius:50%;width:38px;height:38px;cursor:pointer;font-weight:900}.store-input{width:100%;padding:15px 18px;border:2px solid var(--line);border-radius:18px;font:inherit;outline:none}.store-input:focus{border-color:var(--pink)}
.store-list{display:grid;gap:12px;margin-top:16px}.store-row{display:grid;grid-template-columns:70px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:18px;padding:10px;background:var(--pink-xpale)}
.store-row img{width:70px;height:70px;object-fit:cover;border-radius:14px}.store-row h4{font-size:15px;margin:0;color:var(--ink)}.store-row p{margin:3px 0 0;color:var(--gray);font-weight:800}.store-actions{display:flex;gap:8px;align-items:center}
.store-mini{border:none;border-radius:999px;padding:8px 12px;background:var(--pink);color:#fff;font-weight:900;cursor:pointer}.store-mini.light{background:#fff;color:var(--pink);border:1px solid var(--line)}
.empty-state{text-align:center;color:var(--gray);padding:28px;font-weight:800}.admin-extra{padding:18px 24px;border-bottom:1px solid var(--line);background:var(--pink-xpale)}
.admin-extra-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.admin-extra-tabs button,.admin-extra .mini-btn{border:none;border-radius:999px;padding:10px 16px;font-weight:900;cursor:pointer;background:#fff;color:var(--pink);box-shadow:var(--sh1)}.admin-extra-tabs button.on{background:var(--pink);color:#fff}
.admin-extra-panel{display:none}.admin-extra-panel.on{display:block}.adm-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.adm-textarea{min-height:82px;resize:vertical}.cat-editor{display:grid;gap:10px}.cat-row{display:grid;grid-template-columns:70px 1fr 1fr auto;gap:8px;align-items:center}.cat-row input{padding:10px;border:1px solid var(--line);border-radius:12px}.cat-row button{border:none;border-radius:12px;padding:10px;background:#ffe4ef;color:var(--pink);font-weight:900;cursor:pointer}
@media(max-width:620px){.store-row{grid-template-columns:56px 1fr}.store-actions{grid-column:1/-1}.store-row img{width:56px;height:56px}.cat-row{grid-template-columns:1fr}.store-box{padding:18px}}

/* ══════════════════════════════════════════
   ADMIN CSS (lines 1554-1668)
   ══════════════════════════════════════════ */

/* ── Admin trigger ── */
#adminTrigger{display:none!important}

/* ── Password modal ── */
#adminPwModal{position:fixed;inset:0;background:rgba(255,240,246,.97);backdrop-filter:blur(20px);z-index:300;display:none;align-items:center;justify-content:center;flex-direction:column;padding:24px}
#adminPwModal.open{display:flex}
.pw-card{background:#fff;border-radius:32px;padding:48px 40px;text-align:center;box-shadow:0 20px 60px rgba(242,39,110,.2);max-width:380px;width:100%}
.pw-logo{font-size:48px;margin-bottom:16px}
.pw-title{font-family:'Fredoka',sans-serif;font-size:28px;font-weight:700;color:var(--pink);margin-bottom:4px}
.pw-sub{font-size:14px;color:var(--gray);margin-bottom:28px;font-weight:500}
.pw-input{width:100%;padding:16px 20px;border:2.5px solid var(--line);border-radius:var(--r99);font-family:'Nunito',sans-serif;font-size:16px;text-align:center;letter-spacing:3px;outline:none;transition:border .2s;margin-bottom:14px}
.pw-input:focus{border-color:var(--pink)}
.pw-btn{width:100%;padding:16px;background:var(--pink);color:#fff;border:none;border-radius:var(--r99);font-family:'Fredoka',sans-serif;font-size:18px;font-weight:700;cursor:pointer;transition:all .2s}
.pw-btn:hover{background:var(--ink-mid)}
.pw-err{color:#e74c3c;font-size:13px;font-weight:700;margin-top:8px;display:none}
.pw-cancel{margin-top:16px;background:none;border:none;color:var(--gray);cursor:pointer;font-size:14px;font-weight:700;font-family:'Nunito',sans-serif}

/* ── Admin Dashboard ── */
#adminDash{position:fixed;inset:0;background:#fff;z-index:290;display:none;flex-direction:column;overflow:hidden}
#adminDash.open{display:flex}

.adm-hdr{background:var(--pink);color:#fff;padding:0 20px;height:64px;display:flex;align-items:center;gap:12px;flex-shrink:0}
.adm-hdr .logo-adm{font-family:'Fredoka',sans-serif;font-size:20px;font-weight:700;flex:1}
.adm-badge{background:rgba(255,255,255,.25);padding:4px 12px;border-radius:var(--r99);font-size:11px;font-weight:900;letter-spacing:2px}
.adm-hdr-btns{display:flex;gap:8px}
.adm-hbtn{padding:8px 16px;border-radius:var(--r99);border:2px solid rgba(255,255,255,.5);background:transparent;color:#fff;font-family:'Fredoka',sans-serif;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px}
.adm-hbtn:hover{background:rgba(255,255,255,.2)}
.adm-hbtn.export{background:#fff;color:var(--pink);border-color:#fff}
.adm-hbtn.export:hover{background:var(--pink-pale)}

.adm-stats{background:var(--pink-pale);padding:14px 20px;display:flex;gap:20px;flex-wrap:wrap;border-bottom:2px solid var(--line)}
.adm-stat{text-align:center}
.adm-stat .sn{font-family:'Fredoka',sans-serif;font-size:22px;font-weight:700;color:var(--pink);display:block}
.adm-stat .sl{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:1px;color:var(--gray)}

.adm-search{padding:16px 20px;background:#fff;border-bottom:2px solid var(--line);flex-shrink:0;display:flex;gap:10px}
.adm-search input{flex:1;padding:12px 18px;border:2px solid var(--line);border-radius:var(--r99);font-family:'Nunito',sans-serif;font-size:14px;outline:none}
.adm-search input:focus{border-color:var(--pink)}
.adm-add-btn{padding:12px 20px;background:var(--pink);color:#fff;border:none;border-radius:var(--r99);font-family:'Fredoka',sans-serif;font-size:16px;font-weight:700;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:6px;transition:all .2s}
.adm-add-btn:hover{background:var(--ink-mid)}

.adm-body{flex:1;overflow-y:auto;padding:16px 20px 80px}
.adm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}

.adm-pcard{background:#fff;border:2px solid var(--line);border-radius:20px;overflow:hidden;transition:all .25s;position:relative}
.adm-pcard:hover{border-color:var(--pink-soft);box-shadow:var(--sh2)}
.adm-pcard img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.adm-pcard .apc-body{padding:10px 12px 12px}
.adm-pcard .apc-cat{font-size:9px;font-weight:900;letter-spacing:2px;text-transform:uppercase;color:var(--pink);margin-bottom:2px}
.adm-pcard .apc-name{font-family:'Fredoka',sans-serif;font-size:14px;font-weight:600;color:var(--ink);line-height:1.2;margin-bottom:6px}
.adm-pcard .apc-price{font-family:'Fredoka',sans-serif;font-size:18px;font-weight:700;color:var(--pink);margin-bottom:8px}
.adm-pcard .apc-btns{display:flex;gap:6px}
.apc-btn{flex:1;padding:8px 0;border-radius:var(--r99);font-family:'Nunito',sans-serif;font-size:12px;font-weight:900;cursor:pointer;transition:all .2s;border:none}
.apc-btn.edit{background:var(--pink-pale);color:var(--pink)}
.apc-btn.edit:hover{background:var(--pink);color:#fff}
.apc-btn.del{background:#FFF0F0;color:#e74c3c}
.apc-btn.del:hover{background:#e74c3c;color:#fff}
.apc-btn.move{background:#f5f5f5;color:var(--gray);flex:0;padding:8px 10px}
.apc-btn.move:hover{background:var(--pink-pale);color:var(--pink)}
.adm-pcard .apc-badge{position:absolute;top:8px;left:8px;background:var(--pink);color:#fff;padding:3px 10px;border-radius:var(--r99);font-size:10px;font-weight:900}
.apc-drag-handle{text-align:center;padding:7px 0 4px;color:#ccc;font-size:16px;letter-spacing:4px;user-select:none;cursor:grab;transition:color .15s}
.adm-pcard:hover .apc-drag-handle{color:var(--pink-soft)}
.adm-pcard[draggable=true]:active{cursor:grabbing}
.adm-pcard.adm-dragging{opacity:.3;border-style:dashed;transform:scale(.96);transition:none}
.adm-pcard.adm-drag-over{border-color:var(--pink)!important;box-shadow:0 0 0 4px rgba(242,39,110,.18);transform:scale(1.03)}

/* ── Edit/Add Modal ── */
#admModal{position:fixed;inset:0;background:rgba(30,0,26,.6);backdrop-filter:blur(6px);z-index:400;display:none;align-items:flex-end;justify-content:center}
#admModal.open{display:flex}
@media(min-width:600px){#admModal{align-items:center}}
.adm-modal-box{background:#fff;border-radius:32px 32px 0 0;padding:28px 24px 40px;width:100%;max-width:540px;max-height:90vh;overflow-y:auto}
@media(min-width:600px){.adm-modal-box{border-radius:32px;padding:36px;max-height:85vh}}
.adm-modal-title{font-family:'Fredoka',sans-serif;font-size:22px;font-weight:700;color:var(--ink);margin-bottom:20px;display:flex;align-items:center;justify-content:space-between}
.adm-modal-close{width:36px;height:36px;border-radius:50%;background:var(--pink-pale);border:none;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center}

.adm-field{margin-bottom:18px}
.adm-label{display:block;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:1.5px;color:var(--gray);margin-bottom:8px}
.adm-input{width:100%;padding:14px 18px;border:2.5px solid var(--line);border-radius:16px;font-family:'Nunito',sans-serif;font-size:15px;outline:none;transition:border .2s;background:#fff}
.adm-input:focus{border-color:var(--pink)}
.adm-input.small{max-width:160px}
.adm-row{display:flex;gap:14px}
.adm-row .adm-field{flex:1}
select.adm-input{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F2276E' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;padding-right:40px}

.adm-photo-upload{border:3px dashed var(--line);border-radius:20px;padding:24px;text-align:center;cursor:pointer;transition:all .25s;position:relative;overflow:hidden}
.adm-photo-upload:hover{border-color:var(--pink);background:var(--pink-pale)}
.adm-photo-upload.has-img{border-style:solid;border-color:var(--pink-soft)}
.adm-photo-upload img{width:100%;max-height:200px;object-fit:contain;border-radius:12px;display:none}
.adm-photo-upload.has-img img{display:block;margin-bottom:10px}
.adm-photo-upload input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.adm-photo-placeholder{color:var(--gray);font-size:14px;font-weight:600}
.adm-photo-placeholder .big{font-size:40px;display:block;margin-bottom:8px}
.adm-photo-upload.has-img .adm-photo-placeholder{display:none}

.adm-sizes-grid{display:flex;flex-wrap:wrap;gap:8px}
.sz-check{position:relative}
.sz-check input{position:absolute;opacity:0;width:0;height:0}
.sz-check label{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:2px solid var(--line);font-size:12px;font-weight:800;color:var(--gray);cursor:pointer;transition:all .2s;user-select:none}
.sz-check input:checked + label{background:var(--pink);color:#fff;border-color:var(--pink)}

.adm-modal-btns{display:flex;gap:12px;margin-top:24px}
.adm-save-btn{flex:1;padding:16px;background:var(--pink);color:#fff;border:none;border-radius:var(--r99);font-family:'Fredoka',sans-serif;font-size:18px;font-weight:700;cursor:pointer;transition:all .2s}
.adm-save-btn:hover{background:var(--ink-mid)}
.adm-cancel-btn{padding:16px 24px;background:var(--pink-pale);color:var(--pink);border:none;border-radius:var(--r99);font-family:'Fredoka',sans-serif;font-size:18px;font-weight:700;cursor:pointer}

/* ── Confirm delete ── */
#admConfirm{position:fixed;inset:0;background:rgba(30,0,26,.7);z-index:500;display:none;align-items:center;justify-content:center;padding:24px}
#admConfirm.open{display:flex}
.adm-confirm-box{background:#fff;border-radius:28px;padding:36px 28px;text-align:center;max-width:340px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,.2)}
.adm-confirm-box h3{font-family:'Fredoka',sans-serif;font-size:22px;color:var(--ink);margin-bottom:8px}
.adm-confirm-box p{color:var(--gray);font-size:14px;font-weight:600;margin-bottom:24px}
.adm-confirm-btns{display:flex;gap:12px}
.adm-confirm-del{flex:1;padding:14px;background:#e74c3c;color:#fff;border:none;border-radius:var(--r99);font-family:'Fredoka',sans-serif;font-size:16px;font-weight:700;cursor:pointer}
.adm-confirm-cancel{flex:1;padding:14px;background:var(--pink-pale);color:var(--ink-mid);border:none;border-radius:var(--r99);font-family:'Fredoka',sans-serif;font-size:16px;font-weight:700;cursor:pointer}

/* ── Export loading ── */
#admExportToast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,120px);background:var(--ink);color:#fff;padding:14px 24px;border-radius:var(--r99);font-weight:700;z-index:600;transition:transform .35s;display:flex;align-items:center;gap:10px;font-size:14px}
#admExportToast.show{transform:translate(-50%,0)}

/* ══════════════════════════════════════════
   VISUAL EDITOR CSS (lines 2680-2724)
   ══════════════════════════════════════════ */

/* Modern editable admin + UX polish */
.blob{display:none}
.hero{background:linear-gradient(135deg,#fff7fa 0%,#fff 52%,#e8fff8 100%);min-height:520px}
.hero-inner{gap:44px}.hero-art .main-card,.prod-card,.promo-card,.store-box,.adm-pcard,.about-card{border-radius:8px}
.hero-art .main-card{overflow:hidden;min-height:420px}
.hero-fav-carousel{position:relative;display:grid;gap:12px}
.hero-fav-slide{display:grid;gap:12px;opacity:1;transform:translateY(0);transition:opacity .28s ease,transform .28s ease}
.hero-fav-slide.swap{opacity:0;transform:translateY(8px)}
.hero-fav-img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;background:var(--pink-pale)}
.hero-fav-cat{font-size:11px;font-weight:900;letter-spacing:2px;text-transform:uppercase;color:var(--gray)}
.hero-fav-name{font-family:var(--font-d);font-size:22px;font-weight:700;color:var(--ink-mid);line-height:1.12}
.hero-fav-price{font-family:var(--font-d);font-size:30px;font-weight:700;color:var(--pink)}
.hero-fav-actions{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap}
.hero-fav-actions button,.hero-fav-actions a{border:none;border-radius:999px;padding:10px 14px;font-weight:900;cursor:pointer;text-decoration:none}
.hero-fav-actions button{background:var(--pink);color:#fff}.hero-fav-actions a{background:var(--pink-pale);color:var(--pink)}
.hero-fav-dots{display:flex;gap:6px;justify-content:center}.hero-fav-dots span{width:7px;height:7px;border-radius:50%;background:var(--line)}.hero-fav-dots span.on{background:var(--pink)}
.prod-card{box-shadow:0 8px 24px rgba(30,0,26,.06);border:1px solid rgba(245,215,229,.9)}
.prod-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(30,0,26,.12)}
.prod-desc{font-size:13px;color:var(--gray);font-weight:700;margin:-4px 0 10px;line-height:1.35}
body.vixi-editing .prod-desc:empty::before{content:"Descrição do produto";color:#b99aaa}
nav.vixi-main-nav{align-items:center;gap:8px}
.nav-link-hot{padding:9px 16px;border-radius:var(--r99);font-size:15px;font-weight:800;color:var(--pink);text-decoration:none;transition:background .2s}
.nav-link-hot:hover{background:var(--pink-pale)}
.nav-dd{position:relative}.nav-dd-btn{border:none;background:transparent;padding:9px 16px;border-radius:var(--r99);font:inherit;font-size:15px;font-weight:800;color:var(--ink-mid);cursor:pointer}
.nav-dd-btn:hover,.nav-dd:focus-within .nav-dd-btn{background:var(--pink-pale);color:var(--pink)}
.nav-dd-menu{position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,-6px);min-width:210px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 42px rgba(30,0,26,.14);padding:8px;opacity:0;visibility:hidden;transition:.18s ease;z-index:80}
.nav-dd:hover .nav-dd-menu,.nav-dd:focus-within .nav-dd-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.nav-dd-menu a{display:flex;border-radius:6px;padding:10px 12px}
.nav-admin-btn{color:var(--pink)!important;font-weight:900!important}
.nav-admin-dd .nav-dd-menu{border-top:3px solid var(--pink)}
.nav-dd.open .nav-dd-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.nav-dd-sep{height:1px;background:var(--line);margin:6px 8px}
.nav-dd-label{font-size:10px;font-weight:900;color:var(--gray);letter-spacing:1.5px;text-transform:uppercase;padding:10px 12px 4px;display:block;pointer-events:none}
.nav-menu-dd .nav-dd-menu{left:0;transform:translateY(-6px);min-width:240px;border-radius:16px;box-shadow:0 12px 48px rgba(30,0,26,.18)}
.nav-menu-dd:hover .nav-dd-menu,.nav-menu-dd:focus-within .nav-dd-menu,.nav-menu-dd.open .nav-dd-menu{transform:translateY(0)}
#favoritos{display:none!important}
.hdr{gap:18px}.hdr-icons{margin-left:auto}.hdr-cta{background:#25d366}.hdr-cta:hover{background:#128c4a}
.store-modal.open .store-box{animation:vixiModalIn .22s ease both}@keyframes vixiModalIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.admin-extra{display:grid;gap:14px}.admin-extra-tabs{align-items:center}
.size-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.size-tab{border:2px solid var(--line);background:#fff;color:var(--gray);font-weight:800;font-size:13px;padding:8px 16px;border-radius:100px;cursor:pointer}.size-tab.on{background:var(--pink);border-color:var(--pink);color:#fff}
.size-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:14px}.size-table th,.size-table td{padding:10px 8px;text-align:center;border-bottom:1px solid var(--line)}.size-table th{color:var(--gray);font-size:11px;text-transform:uppercase;letter-spacing:.03em}.size-table td:first-child,.size-table th:first-child{text-align:left;font-weight:800;color:var(--ink)}.size-table tbody tr:hover{background:var(--pink-xpale)}
.size-guide-panel{display:none}.size-guide-panel.on{display:block}
.size-tip{background:var(--pink-xpale);border-radius:14px;padding:12px 16px;font-size:13px;color:var(--gray);font-weight:600;margin-bottom:16px}
.admin-visual-actions{display:flex;gap:10px;flex-wrap:wrap}.mini-btn.primary{background:var(--pink);color:#fff}.mini-btn.soft{background:#fff;color:var(--ink-mid);border:1.5px solid var(--line)}
.reviews-summary{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:var(--pink-xpale);border-radius:20px;padding:20px 24px;margin-bottom:24px}
.reviews-avg{font-family:var(--font-d);font-size:36px;color:var(--ink);line-height:1}
.reviews-stars{color:var(--pink);font-size:20px;letter-spacing:2px}
.reviews-count{color:var(--gray);font-weight:700;font-size:13px}
.reviews-list{display:grid;gap:14px}
.review-card{border:1px solid var(--line);border-radius:16px;padding:16px 18px;background:#fff}
.review-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.review-card-head strong{color:var(--ink);font-size:14px}
.review-stars{color:var(--pink);letter-spacing:1px}
.review-date{font-size:11px;color:var(--gray);font-weight:600;margin-top:2px}
.review-comment{font-size:14px;color:var(--ink-mid);margin-top:8px;line-height:1.5}
.star-picker{display:flex;gap:6px;font-size:32px;color:var(--pink);cursor:pointer}
.star-picker span{cursor:pointer;transition:transform .1s}
.star-picker span:hover{transform:scale(1.15)}
.cat-editor{overflow-x:auto}
.cat-row{display:grid;grid-template-columns:56px 1fr 1fr auto;gap:8px;margin-bottom:8px;align-items:center;min-width:320px}
.cat-row input{min-width:0}
.cat-row .move{background:#fff;color:var(--ink-mid);border:1px solid var(--line)}
/* ── Visual Editor Bar (top of page) ── */
.vixi-editor-bar{position:fixed;top:0;left:0;right:0;height:56px;z-index:9999;background:#1e001a;color:#fff;display:none;align-items:center;padding:0 14px;gap:8px;box-shadow:0 4px 32px rgba(30,0,26,.5);border-bottom:2.5px solid var(--pink)}
body.vixi-editing .vixi-editor-bar{display:flex}
body.vixi-editing{padding-top:56px!important}
body.vixi-editing header{top:56px!important}
.ve-brand{font-family:var(--font-d);font-size:15px;font-weight:800;color:rgba(255,255,255,.9);white-space:nowrap;letter-spacing:.3px}
.ve-spacer{flex:1;min-width:4px}
.ve-mode-toggle{display:flex;background:rgba(255,255,255,.1);border-radius:999px;padding:3px;gap:2px;flex-shrink:0}
.ve-toggle-btn{border:none;background:transparent;color:rgba(255,255,255,.55);border-radius:999px;padding:6px 14px;font-weight:700;font-size:13px;cursor:pointer;transition:all .2s;white-space:nowrap}
.ve-toggle-btn.ve-active{background:var(--pink);color:#fff;box-shadow:0 2px 10px rgba(242,39,110,.4)}
.ve-btn{border:none;border-radius:999px;padding:8px 16px;font-weight:800;font-size:13px;cursor:pointer;white-space:nowrap;transition:all .15s}
.ve-back-btn,.ve-exit-btn{background:rgba(255,255,255,.1);color:rgba(255,255,255,.9)}.ve-back-btn:hover,.ve-exit-btn:hover{background:rgba(255,255,255,.22)}
.ve-save-btn{background:var(--mint);color:#062b26}.ve-save-btn:hover{filter:brightness(1.1)}
body.vixi-editing [data-vixi-edit],body.vixi-editing [data-edit-product],body.vixi-editing [data-image-key],body.vixi-editing [data-banner-key],body.vixi-editing [data-visual-bg-key]{outline:2px dashed transparent;outline-offset:5px;transition:outline-color .15s,background .15s,box-shadow .15s}
body.vixi-editing [data-vixi-edit]:hover,body.vixi-editing [data-edit-product]:hover,body.vixi-editing [data-image-key]:hover,body.vixi-editing [data-banner-key]:hover,body.vixi-editing [data-visual-bg-key]:hover{outline-color:var(--pink);background-color:rgba(255,240,246,.65);box-shadow:0 0 0 8px rgba(255,240,246,.35)}
body.vixi-editing [contenteditable="true"]{cursor:text}
body.vixi-editing img[data-image-key],body.vixi-editing [data-banner-key],body.vixi-editing [data-visual-bg-key]{cursor:pointer}
body.vixi-editing .ann-track{animation:none;white-space:normal;flex-wrap:wrap;gap:8px;padding:6px 12px}
body.vixi-editing .ann-item{background:rgba(255,255,255,.16);border-radius:8px;padding:8px 12px}
.vixi-section-handle{display:none;position:absolute;top:10px;left:10px;z-index:20;background:#1e001a;color:#fff;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900;box-shadow:0 8px 24px rgba(0,0,0,.2)}
body.vixi-editing [data-section-key]{position:relative}
body.vixi-editing .vixi-section-handle{display:inline-flex}

/* ══════════════════════════════════════════
   ENHANCEMENTS — back-to-top, LGPD, sticky buy bar, PIX badge, WA pulse
   ══════════════════════════════════════════ */

/* ──── BACK TO TOP ──── */
.back-to-top{position:fixed;bottom:96px;right:28px;width:44px;height:44px;border-radius:50%;background:var(--pink);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:900;z-index:95;box-shadow:var(--sh2);opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .3s,transform .3s;line-height:1}
.back-to-top.show{opacity:1;pointer-events:auto;transform:translateY(0)}
.back-to-top:hover{background:var(--ink-mid);transform:scale(1.1)!important}

/* ──── LGPD COOKIE BANNER ──── */
.lgpd-bar{position:fixed;bottom:0;left:0;right:0;z-index:500;background:var(--ink);color:#fff;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:13px;font-weight:600;transform:translateY(100%);transition:transform .4s cubic-bezier(.2,.8,.2,1);box-shadow:0 -4px 30px rgba(30,0,26,.3)}
.lgpd-bar.show{transform:translateY(0)}
.lgpd-bar p{margin:0;flex:1;line-height:1.6}
.lgpd-bar a{color:#FFAEC8;text-decoration:underline}
.lgpd-bar-btns{display:flex;gap:8px;flex-shrink:0}
.lgpd-btn-ok{background:var(--pink);color:#fff;border:none;border-radius:var(--r99);padding:10px 20px;font-family:var(--font-b);font-weight:900;cursor:pointer;font-size:13px;transition:background .2s}
.lgpd-btn-ok:hover{background:var(--pink-mid)}
.lgpd-btn-ess{background:transparent;color:rgba(255,255,255,.65);border:1.5px solid rgba(255,255,255,.3);border-radius:var(--r99);padding:10px 16px;font-family:var(--font-b);font-weight:700;cursor:pointer;font-size:13px;transition:all .2s}
.lgpd-btn-ess:hover{background:rgba(255,255,255,.1);color:#fff}
@media(max-width:600px){.lgpd-bar{padding:12px 16px;font-size:12px}.lgpd-bar-btns{width:100%;justify-content:flex-end}}

/* ──── STICKY MOBILE BUY BAR ──── */
.sticky-buy{position:fixed;bottom:0;left:0;right:0;z-index:149;background:#fff;border-top:2px solid var(--line);padding:12px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 -4px 24px rgba(30,0,26,.12);transform:translateY(100%);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.sticky-buy.show{transform:translateY(0)}
.sticky-buy .sb-info{flex:1;min-width:0}
.sticky-buy .sb-old{font-size:12px;color:var(--gray);text-decoration:line-through;display:block;line-height:1.2}
.sticky-buy .sb-price{font-family:var(--font-d);font-size:22px;font-weight:700;color:var(--pink);line-height:1.1}
.sticky-buy .sb-pix{font-size:11px;font-weight:900;color:#128c4a}
.sticky-buy .sb-btn{background:var(--pink);color:#fff;border:none;border-radius:var(--r99);padding:14px 22px;font-family:var(--font-d);font-size:15px;font-weight:700;cursor:pointer;flex-shrink:0;white-space:nowrap;transition:all .2s;box-shadow:var(--sh1)}
.sticky-buy .sb-btn:hover{background:var(--ink-mid)}
@media(min-width:768px){.sticky-buy{display:none!important}}

/* ──── PIX PRICE BADGE ──── */
.pix-price{font-size:11px;font-weight:900;color:#128c4a;background:#e8fff3;border-radius:6px;padding:2px 7px;display:inline-block;margin-top:4px;white-space:nowrap}

/* ──── WA FLOAT PULSE RING ──── */
.wa-float::after{content:'';position:absolute;inset:0;border-radius:50%;border:3px solid #25D366;opacity:0;animation:waPulse 3s ease-out 1.5s infinite;pointer-events:none}
@keyframes waPulse{0%{transform:scale(1);opacity:.8}80%,100%{transform:scale(1.75);opacity:0}}

/* ──── CART BADGE PULSE ──── */
@keyframes badgePop{0%,100%{transform:scale(1)}30%{transform:scale(1.4)}60%{transform:scale(.9)}}
.badge.pop{animation:badgePop .35s ease}

/* ──── IMAGE SKELETON SHIMMER ──── */
.prod-img-wrap img[data-loading]{background:linear-gradient(90deg,#f5e8ee 25%,#fce4ec 50%,#f5e8ee 75%);background-size:200% 100%;animation:skelShimmer 1.5s ease-in-out infinite}
@keyframes skelShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}

/* ──── NAV ACTIVE STATE ──── */
nav a.active{color:var(--pink);background:var(--pink-pale)}

/* ──── SORT + COUNT FILTER BAR ──── */
.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.prod-count{font-size:14px;font-weight:800;color:var(--gray)}
.sort-wrap{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--gray)}
.sort-sel{padding:8px 36px 8px 14px;border:2px solid var(--line);border-radius:var(--r99);font-family:var(--font-b);font-size:14px;font-weight:700;color:var(--ink-mid);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F2276E' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 10px center / 16px;appearance:none;cursor:pointer;outline:none;transition:border-color .2s}
.sort-sel:focus{border-color:var(--pink)}

/* ──── FREE SHIPPING PROGRESS BAR ──── */
.ship-progress{background:var(--pink-pale);border-radius:var(--r12);padding:14px 16px;margin-bottom:16px;border:1.5px solid var(--line)}
.ship-progress-text{font-size:13px;font-weight:700;color:var(--ink-mid);margin-bottom:10px}
.ship-progress-text strong{color:var(--pink)}
.ship-free{color:var(--pink)}
.ship-progress-bar{height:8px;background:var(--line);border-radius:var(--r99);overflow:hidden}
.ship-progress-fill{height:100%;background:linear-gradient(90deg,var(--pink),var(--pink-mid));border-radius:var(--r99);transition:width .5s ease}
.ship-progress.ship-unlocked{background:linear-gradient(135deg,#e8fff3,#d4f7e8);border-color:#b2f5d4;font-size:14px;font-weight:800;color:#128c4a;text-align:center}

/* ──── CART PIX BADGE IN MODAL ──── */
#cartTotal{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.cart-pix-badge{font-size:12px;font-weight:900;color:#128c4a;background:#e8fff3;border-radius:6px;padding:3px 8px}

/* ──── CLOTHES / COLECAO PAGE HERO (shared style) ──── */
.clothes-hero{background:linear-gradient(135deg,var(--pink) 0%,#a0004a 100%);padding:52px 0 44px;text-align:center;color:#fff;position:relative;overflow:hidden}
.clothes-hero::before{content:'🌸';position:absolute;font-size:180px;opacity:.07;top:-30px;left:-20px;pointer-events:none;line-height:1}
.clothes-hero::after{content:'✨';position:absolute;font-size:160px;opacity:.07;bottom:-30px;right:-10px;pointer-events:none;line-height:1}
.clothes-hero-inner{max-width:1360px;margin:0 auto;padding:0 24px;position:relative;z-index:1}
.clothes-hero h1{font-family:var(--font-d);font-size:clamp(28px,5vw,48px);color:#fff;margin:14px 0 8px;font-weight:700;line-height:1.1}
.clothes-hero p{color:rgba(255,255,255,.88);font-size:clamp(14px,2.5vw,17px);font-weight:600;margin:0}
.clothes-hero .breadcrumb-row{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:16px}
.clothes-hero .back-btn{background:rgba(255,255,255,.18);color:#fff;border:none;border-radius:99px;padding:7px 16px;font-weight:900;font-size:13px;cursor:pointer;transition:.2s;font-family:inherit}
.clothes-hero .back-btn:hover{background:rgba(255,255,255,.3)}
.clothes-hero .breadcrumb{color:rgba(255,255,255,.75);font-size:13px;font-weight:700}
.clothes-hero .breadcrumb a{color:#fff;text-decoration:none}
/* Cat pills bar below hero */
.clothes-cat-pills{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;padding:18px 20px 0;background:linear-gradient(to bottom,#a0004a,transparent);position:relative;z-index:1}
.clothes-cat-pill{border:2px solid rgba(255,255,255,.5);background:rgba(255,255,255,.12);color:#fff;border-radius:99px;padding:8px 20px;font-family:inherit;font-size:13px;font-weight:800;cursor:pointer;text-decoration:none;transition:.18s;display:inline-flex;align-items:center;gap:5px}
.clothes-cat-pill:hover,.clothes-cat-pill.on{background:#fff;color:var(--pink);border-color:#fff}
/* keep legacy .back-btn outside hero */
.back-btn{background:var(--pink-pale);border:none;border-radius:var(--r99);padding:8px 16px;font-family:var(--font-b);font-size:14px;font-weight:800;color:var(--pink);cursor:pointer;transition:all .2s;flex-shrink:0}
.back-btn:hover{background:var(--pink);color:#fff}
.breadcrumb{font-size:13px;font-weight:700;color:var(--gray)}
.breadcrumb a{color:var(--pink);text-decoration:none}
.breadcrumb a:hover{text-decoration:underline}

/* ──── CHECKOUT PAGES REDESIGN ──── */
.checkout-page-bg{min-height:100vh;background:linear-gradient(135deg,var(--pink-pale) 0%,#fff 50%,var(--purple-soft) 100%);display:flex;flex-direction:column}
.checkout-card{background:#fff;border-radius:28px;padding:48px 40px;text-align:center;max-width:520px;width:100%;margin:auto;box-shadow:0 20px 60px rgba(242,39,110,.12);border:1.5px solid var(--line)}
@media(max-width:600px){.checkout-card{border-radius:24px;padding:36px 24px;margin:20px}}
.checkout-icon-big{font-size:72px;margin-bottom:8px;display:block}
.checkout-card h1{font-family:var(--font-d);font-size:clamp(26px,5vw,38px);color:var(--ink);margin-bottom:12px;line-height:1.1}
.checkout-card p{color:var(--gray);font-size:16px;line-height:1.7;margin-bottom:8px;font-weight:500}
.checkout-card .actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:28px}
.checkout-step{display:flex;align-items:flex-start;gap:12px;text-align:left;background:var(--pink-xpale);border-radius:12px;padding:12px 16px;margin-bottom:10px}
.checkout-step-icon{font-size:22px;flex-shrink:0}
.checkout-step-text{font-size:13px;font-weight:700;color:var(--ink-mid);line-height:1.5}

/* ──── CART PAGE LAYOUT ──── */
.cart-page-wrap{max-width:1100px;margin:0 auto}
#cartPageContent{display:grid;grid-template-columns:1fr 360px;gap:28px;align-items:start}
@media(max-width:900px){#cartPageContent{grid-template-columns:1fr}}
.cart-page-list{display:flex;flex-direction:column;gap:14px}
.cart-page-row{display:grid;grid-template-columns:100px 1fr auto;gap:16px;align-items:start;background:#fff;border:1.5px solid var(--line);border-radius:20px;padding:16px;transition:box-shadow .2s}
.cart-page-row:hover{box-shadow:var(--sh1)}
.cart-page-row img{width:100px;height:100px;object-fit:cover;border-radius:14px;display:block}
.cart-page-row-info{min-width:0}
.cpcat{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:2px;color:var(--pink);margin-bottom:4px}
.cart-page-row-info h4{font-family:var(--font-d);font-size:16px;font-weight:600;color:var(--ink);margin-bottom:4px;line-height:1.2}
.cpprice{font-family:var(--font-d);font-size:20px;font-weight:700;color:var(--pink);margin-bottom:10px}
.cart-qty-row{display:flex;align-items:center;gap:8px}
.cart-qty-btn{width:32px;height:32px;border-radius:50%;border:2px solid var(--line);background:#fff;font-size:18px;font-weight:700;color:var(--pink);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:1}
.cart-qty-btn:hover{background:var(--pink);color:#fff;border-color:var(--pink)}
.cart-qty-num{font-weight:900;font-size:16px;color:var(--ink);min-width:24px;text-align:center}
.cart-remove-btn{background:none;border:none;color:var(--gray);cursor:pointer;font-size:18px;padding:4px 8px;border-radius:8px;transition:all .2s;align-self:flex-start}
.cart-remove-btn:hover{background:#fff0f3;color:#e74c3c}
.cart-page-summary{background:#fff;border-radius:20px;border:1.5px solid var(--line);padding:24px;position:sticky;top:90px}
.cart-page-total{font-family:var(--font-d);font-size:26px;font-weight:700;color:var(--ink);margin-bottom:8px}
.cart-page-total span{color:var(--pink)}
.cart-empty-state{text-align:center;padding:72px 24px;color:var(--gray)}
.cart-empty-state h2{font-family:var(--font-d);font-size:28px;color:var(--ink);margin-bottom:8px}
@media(max-width:600px){.cart-page-row{grid-template-columns:80px 1fr;}.cart-page-row img{width:80px;height:80px}.cart-remove-btn{grid-column:2;justify-self:end}}

/* ──── PRODUCT QUICK-VIEW LINK ──── */
.prod-quick-link{position:absolute;bottom:0;left:0;right:0;background:rgba(242,39,110,.92);color:#fff;text-align:center;padding:10px;font-weight:900;font-size:13px;text-decoration:none;transform:translateY(100%);transition:transform .25s ease;z-index:3;letter-spacing:.3px}
.prod-card:hover .prod-quick-link{transform:translateY(0)}

/* ──── SIZE FILTER CLEAR BUTTON ──── */
.size-clear-btn{display:none;padding:8px 18px;border-radius:var(--r99);background:var(--pink-pale);border:1.5px solid var(--pink-soft);color:var(--pink);font-family:var(--font-b);font-size:13px;font-weight:800;cursor:pointer;transition:all .2s;align-items:center;gap:6px}
.size-clear-btn.show{display:inline-flex}
.size-clear-btn:hover{background:var(--pink);color:#fff;border-color:var(--pink)}

/* ──── RECENTLY VIEWED ──── */
.recent-section{padding:40px 28px;background:var(--pink-xpale);border-top:2px solid var(--line)}
.recent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;max-width:1360px;margin:0 auto}
.recent-title{font-family:var(--font-d);font-size:22px;font-weight:700;color:var(--ink);margin-bottom:16px;max-width:1360px;margin-left:auto;margin-right:auto}

/* ──── CONFETTI ──── */
.confetti-wrap{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}
.conf-piece{position:absolute;top:-20px;width:10px;height:10px;border-radius:2px;animation:confettiFall linear forwards}
@keyframes confettiFall{0%{transform:translateY(0) rotate(0deg);opacity:1}100%{transform:translateY(110vh) rotate(720deg);opacity:0}}
body.vixi-editing [data-section-key].drag-over{outline:3px solid var(--mint);outline-offset:8px}
/* ──── VISUAL EDITOR ENHANCEMENTS ──── */
body.vixi-editing .prod-card img{pointer-events:auto}
.vixi-drag-mode .prod-card{cursor:grab;box-shadow:0 0 0 2.5px var(--pink-soft),var(--sh2) !important;transition:transform .15s,box-shadow .15s}
.vixi-drag-mode .prod-card:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 0 0 2.5px var(--pink),var(--sh3) !important}
.prod-card.vixi-dragging{opacity:.38;transform:scale(.96) !important;cursor:grabbing;transition:none !important}
.prod-card.vixi-drag-target{outline:3px dashed var(--pink);outline-offset:5px;background:var(--pink-xpale);transform:scale(1.02) !important}
/* ── Editor preview mode (bar stays, editing disabled) ── */
body.vixi-editing.vixi-preview [data-vixi-edit],
body.vixi-editing.vixi-preview [data-edit-product],
body.vixi-editing.vixi-preview [data-section-key]{outline:none!important;background:transparent!important;box-shadow:none!important;cursor:default}
body.vixi-editing.vixi-preview [contenteditable]{pointer-events:none!important}
body.vixi-editing.vixi-preview .vixi-section-arrows,
body.vixi-editing.vixi-preview .vixi-sort-arrows,
body.vixi-editing.vixi-preview .vixi-section-insert,
body.vixi-editing.vixi-preview .vixi-add-section-row,
body.vixi-editing.vixi-preview .vixi-section-handle,
body.vixi-editing.vixi-preview .vixi-cb-controls{display:none!important}
/* ── Section move arrows ── */
.vixi-section-arrows{display:none;position:absolute;top:10px;right:10px;z-index:200;background:rgba(30,0,26,.88);border-radius:8px;padding:4px 6px;gap:4px;align-items:center}
body.vixi-editing [data-section-key]:hover .vixi-section-arrows{display:flex}
.vs-arr-btn{border:none;background:rgba(255,255,255,.12);color:#fff;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:800;cursor:pointer;line-height:1;transition:background .15s;white-space:nowrap}
.vs-arr-btn:hover{background:var(--pink-soft)}
.vs-arr-del{background:rgba(220,40,40,.3)!important}.vs-arr-del:hover{background:#d02!important}
.vs-arr-sep{width:1px;height:14px;background:rgba(255,255,255,.2);margin:0 2px;flex-shrink:0}
/* ── Section insert zone ── */
.vixi-section-insert{display:none;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;padding:10px 16px;border-top:1.5px dashed rgba(242,39,110,.3);margin-top:8px;background:rgba(255,240,246,.45)}
body.vixi-editing [data-section-key]:hover .vixi-section-insert,
body.vixi-editing .vixi-section-insert:focus-within{display:flex}
.vsi-label{font-size:11px;font-weight:800;color:var(--pink);white-space:nowrap;opacity:.8}
.vsi-btn{border:1.5px solid rgba(242,39,110,.4);background:rgba(255,255,255,.7);color:var(--pink);border-radius:8px;padding:6px 14px;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s;white-space:nowrap}
.vsi-btn:hover{background:var(--pink);color:#fff;border-color:var(--pink)}
/* ── Custom content blocks ── */
.vixi-custom-blocks{display:flex;flex-direction:column;gap:10px;padding:8px 0}
.vixi-custom-block{position:relative;border-radius:10px}
body.vixi-editing .vixi-custom-block{outline:1.5px dashed rgba(242,39,110,.32)}
body.vixi-editing .vixi-custom-block:hover{outline-color:var(--pink)}
.vixi-cb-controls{display:none;position:absolute;top:-18px;right:6px;z-index:100;background:#1e001a;border-radius:6px;padding:3px;gap:2px;flex-direction:row;align-items:center}
body.vixi-editing .vixi-custom-block:hover .vixi-cb-controls{display:flex}
.vcb-btn{border:none;background:rgba(255,255,255,.1);color:#fff;border-radius:4px;padding:4px 9px;font-size:11px;font-weight:700;cursor:pointer;line-height:1;transition:background .15s}
.vcb-btn:hover{background:var(--pink-soft)}
.vcb-del{background:rgba(220,40,40,.25)!important}.vcb-del:hover{background:#d02!important}
.vixi-cb-text{min-height:36px;padding:10px 16px;font-size:15px;line-height:1.7;color:var(--ink);background:rgba(255,255,255,.6);border-radius:8px;word-break:break-word}
.vixi-cb-image{width:100%;max-height:420px;object-fit:cover;display:block;border-radius:8px}
body.vixi-editing .vixi-cb-image:hover{opacity:.78;cursor:pointer}
.vixi-cb-img-placeholder{width:100%;height:160px;background:var(--pink-pale);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--pink);cursor:pointer;border:2px dashed rgba(242,39,110,.35)}
.vixi-cb-btn-wrap{display:flex;justify-content:center;padding:8px 0}
.vixi-cb-button{display:inline-block;padding:13px 36px;border-radius:999px;background:var(--pink);color:#fff;font-weight:800;font-size:15px;text-decoration:none;border:none;cursor:pointer;transition:filter .15s}
.vixi-cb-button:hover{filter:brightness(1.1)}
/* ── Add section row ── */
.vixi-add-section-row{display:none;padding:20px 28px;text-align:center}
body.vixi-editing .vixi-add-section-row{display:block}
.vas-btn{border:2px dashed rgba(242,39,110,.35);background:rgba(255,255,255,.55);color:var(--pink);border-radius:12px;padding:14px 28px;font-size:14px;font-weight:800;cursor:pointer;transition:all .2s;max-width:340px;width:100%}
.vas-btn:hover{background:var(--pink-pale);border-color:var(--pink);transform:translateY(-2px)}
/* ── Section templates modal ── */
#vixiSectionModal{display:none;position:fixed;inset:0;z-index:10100;background:rgba(30,0,26,.72);align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(4px)}
#vixiSectionModal.open{display:flex}
.vsm-box{background:#fff;border-radius:20px;padding:28px;max-width:660px;width:100%;box-shadow:0 24px 80px rgba(30,0,26,.3);max-height:88vh;overflow-y:auto}
.vsm-title{font-family:var(--font-d);font-size:20px;font-weight:700;color:var(--ink)}
.vsm-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}
.vsm-tab{border:none;background:var(--line);color:var(--gray);border-radius:99px;padding:6px 14px;font-family:var(--font-b);font-weight:800;font-size:12px;cursor:pointer;transition:all .2s}
.vsm-tab.on{background:var(--pink);color:#fff}
.vsm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-bottom:18px}
.vsm-card{border:2px solid var(--line);border-radius:14px;padding:16px 10px 12px;text-align:center;cursor:pointer;transition:all .2s;background:#fff}
.vsm-card:hover{border-color:var(--pink);background:var(--pink-pale);transform:translateY(-2px);box-shadow:0 4px 16px rgba(242,39,110,.15)}
.vsm-icon{font-size:28px;display:block;margin-bottom:6px}
.vsm-label{font-size:12px;font-weight:800;color:var(--ink);margin-bottom:3px}
.vsm-desc{font-size:10px;color:var(--gray);font-weight:600;line-height:1.3}
.vsm-cancel{width:100%;border:none;background:var(--pink-pale);color:var(--ink-mid);border-radius:10px;padding:12px;font-weight:800;cursor:pointer;font-size:14px}
.vixi-cs-spacer{height:60px;background:transparent;border:2px dashed var(--line);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--gray);font-size:12px;font-weight:700}
/* ── Custom sections ── */
.vixi-cs{padding:48px 28px;position:relative}
.vixi-cs-inner{max-width:900px;margin:0 auto}
.vixi-cs-text{background:var(--pink-xpale)}
.vixi-cs-title{font-family:var(--font-d);font-size:clamp(24px,3.5vw,38px);font-weight:700;color:var(--ink);margin-bottom:14px}
.vixi-cs-body{font-size:16px;color:var(--gray);line-height:1.7;max-width:680px}
.vixi-cs-banner{background:var(--ink-mid);overflow:hidden;padding:0}
.vixi-cs-banner-wrap{min-height:260px;background:var(--pink-pale) center/cover no-repeat;display:flex;align-items:flex-end;padding:28px;cursor:pointer}
.vixi-cs-banner-overlay{background:rgba(30,0,26,.52);padding:14px 20px;border-radius:10px;display:inline-block}
.vixi-cs-banner-title{color:#fff;font-family:var(--font-d);font-size:clamp(20px,3vw,34px);font-weight:700}
.vixi-cs-cta{background:var(--pink);padding:56px 28px;text-align:center}
.vixi-cs-cta .vixi-cs-title{color:#fff}
.vixi-cs-cta .vixi-cs-body{color:rgba(255,255,255,.9);margin:0 auto 24px}
.vixi-crop-modal{position:fixed;inset:0;z-index:9999;background:rgba(30,0,26,.72);display:none;align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(6px)}
.vixi-crop-modal.open{display:flex}
.vixi-crop-box{width:min(680px,96vw);background:#fff;border-radius:20px;box-shadow:var(--sh3);overflow:hidden;display:flex;flex-direction:column;max-height:92vh}
.vixi-crop-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line);flex-shrink:0}
.vixi-crop-head h3{font-family:var(--font-d);font-size:20px;color:var(--ink);margin:0}
.vixi-crop-close{width:36px;height:36px;border:0;border-radius:50%;background:var(--pink-pale);color:var(--pink);font-weight:900;cursor:pointer;font-size:16px;flex-shrink:0}
.vixi-crop-frame{width:100%;height:min(420px,52vh);overflow:hidden;position:relative;background:#111;flex-shrink:0}
.vixi-crop-frame img{display:block;max-width:100%}
.vixi-crop-tools{display:flex;gap:6px;padding:10px 14px;flex-wrap:wrap;justify-content:center;border-top:1px solid var(--line);flex-shrink:0;background:#fafafa}
.vcTool{border:none;background:var(--pink-pale);color:var(--pink);border-radius:99px;padding:6px 13px;font-size:12px;font-weight:800;cursor:pointer;font-family:var(--font-b);transition:all .15s}
.vcTool:hover{background:var(--pink);color:#fff}
.vixi-crop-actions{display:flex;justify-content:flex-end;gap:10px;padding:12px 16px;border-top:1px solid var(--line);flex-shrink:0}
.vixi-crop-actions button{border:0;border-radius:999px;padding:11px 20px;font-weight:900;cursor:pointer;font-family:var(--font-b)}
.vixi-crop-actions .cancel{background:var(--pink-pale);color:var(--ink-mid)}
.vixi-crop-actions .save{background:var(--pink);color:#fff}
@media(max-width:760px){.hero-inner{grid-template-columns:1fr}.hero-art{order:-1}.hdr{height:auto;min-height:68px}.hdr-cta{display:none}.vixi-editor-bar{padding:0 8px;gap:4px}.ve-brand{display:none}.ve-toggle-btn{padding:6px 10px;font-size:12px}.ve-btn{padding:7px 12px;font-size:12px}.cat-row{grid-template-columns:1fr}.nav-dd-menu{position:static;transform:none;box-shadow:none;margin-top:6px}.nav-dd:hover .nav-dd-menu,.nav-dd:focus-within .nav-dd-menu{transform:none}}

/* ──── PRODUCT DETAIL PAGE ──── */
.product-detail-wrap{max-width:1100px;margin:0 auto;padding:48px 28px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.product-detail-img{border-radius:var(--r24);overflow:hidden;aspect-ratio:1;background:var(--pink-pale)}
.product-detail-img img{width:100%;height:100%;object-fit:cover}
.product-detail-info{display:flex;flex-direction:column;gap:18px}
.product-detail-cat{font-size:11px;font-weight:900;letter-spacing:2px;text-transform:uppercase;color:var(--pink)}
.product-detail-name{font-family:var(--font-d);font-size:clamp(24px,3vw,36px);font-weight:700;color:var(--ink);line-height:1.1}
.product-detail-price-row{display:flex;align-items:center;gap:14px}
.product-detail-old{font-size:16px;color:var(--gray);text-decoration:line-through}
.product-detail-price{font-family:var(--font-d);font-size:36px;font-weight:700;color:var(--pink)}
.product-detail-sizes{display:flex;flex-wrap:wrap;gap:10px}
.product-detail-size-btn{min-width:48px;height:48px;border-radius:var(--r99);border:2.5px solid var(--line);background:#fff;font-family:var(--font-b);font-size:14px;font-weight:800;color:var(--ink-mid);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;padding:0 12px}
.product-detail-size-btn:hover{border-color:var(--pink);color:var(--pink)}
.product-detail-size-btn.selected{background:var(--pink);color:#fff;border-color:var(--pink)}
.product-detail-actions{display:flex;gap:12px}
.product-detail-actions .btn-main{flex:1;justify-content:center}
.product-detail-fav-btn{width:52px;height:52px;border-radius:50%;background:var(--pink-pale);border:2px solid var(--line);cursor:pointer;font-size:22px;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}
.product-detail-fav-btn:hover,.product-detail-fav-btn.liked{background:var(--pink);border-color:var(--pink)}
.related-section{padding:60px 28px}
.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:900px){.product-detail-wrap{grid-template-columns:1fr;gap:32px}.related-grid{grid-template-columns:repeat(2,1fr)}}

/* ──── CART PAGE ──── */
.cart-page-wrap{max-width:900px;margin:0 auto;padding:48px 28px}
.cart-page-title{font-family:var(--font-d);font-size:36px;font-weight:700;color:var(--ink);margin-bottom:32px}
.cart-page-list{display:grid;gap:16px;margin-bottom:32px}
.cart-page-row{display:grid;grid-template-columns:90px 1fr auto;gap:16px;align-items:center;background:#fff;border-radius:var(--r16);padding:16px;border:1px solid var(--line);box-shadow:var(--sh1)}
.cart-page-row img{width:90px;height:90px;object-fit:cover;border-radius:var(--r12)}
.cart-page-row-info h4{font-family:var(--font-d);font-size:16px;font-weight:600;color:var(--ink);margin-bottom:4px}
.cart-page-row-info .cpcat{font-size:11px;font-weight:900;letter-spacing:2px;text-transform:uppercase;color:var(--pink)}
.cart-page-row-info .cpprice{font-family:var(--font-d);font-size:20px;font-weight:700;color:var(--pink);margin-top:6px}
.cart-qty-row{display:flex;align-items:center;gap:10px;margin-top:10px}
.cart-qty-btn{width:32px;height:32px;border-radius:50%;background:var(--pink-pale);border:none;cursor:pointer;font-size:16px;font-weight:900;color:var(--pink);transition:all .2s}
.cart-qty-btn:hover{background:var(--pink);color:#fff}
.cart-qty-num{font-family:var(--font-d);font-size:18px;font-weight:700;color:var(--ink);min-width:28px;text-align:center}
.cart-remove-btn{background:none;border:none;cursor:pointer;color:var(--gray);font-size:20px;padding:4px;transition:color .2s}
.cart-remove-btn:hover{color:var(--pink)}
.cart-page-summary{background:#fff;border-radius:var(--r24);padding:28px 32px;border:2px solid var(--line);box-shadow:var(--sh2);margin-top:28px}
.cart-page-total{font-family:var(--font-d);font-size:28px;font-weight:700;color:var(--ink);margin-bottom:20px}
.cart-page-total span{color:var(--pink)}
.cart-empty-state{text-align:center;padding:80px 20px;color:var(--gray)}
.cart-empty-state h2{font-family:var(--font-d);font-size:28px;font-weight:700;color:var(--ink-mid);margin:16px 0 12px}
@media(max-width:600px){.cart-page-row{grid-template-columns:70px 1fr}.cart-page-row img{width:70px;height:70px}}

/* ──── CLOTHES PAGE (duplicate removed — styles now at line ~676) ──── */

/* ──── BREADCRUMB ──── */
.breadcrumb{max-width:1360px;margin:0 auto;padding:16px 28px;font-size:13px;color:var(--gray);font-weight:600}
.breadcrumb a{color:var(--pink);text-decoration:none}
.breadcrumb a:hover{text-decoration:underline}

/* ──── BACK BUTTON ──── */
.back-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;background:#fff;border:2px solid var(--line);border-radius:var(--r99);font-family:var(--font-b);font-size:14px;font-weight:800;color:var(--ink-mid);cursor:pointer;text-decoration:none;transition:all .2s;box-shadow:var(--sh1);line-height:1}
.back-btn:hover{border-color:var(--pink);color:var(--pink);background:var(--pink-pale);transform:translateX(-3px)}
.back-btn-row{padding:20px 28px 0;max-width:1360px;margin:0 auto;display:flex;align-items:center}

/* ──── DRAG PREVENTION ──── */
img{-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none}
.prod-card,.prod-grid,.hero,.section,.hdr,header,footer{-webkit-user-select:none;user-select:none}
.prod-card img,.adm-pcard img{pointer-events:none}

/* ──── BACKUP UI ──── */
.backup-item{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1.5px solid var(--line);border-radius:var(--r12);padding:12px 14px;flex-wrap:wrap}
.backup-info{display:flex;flex-direction:column;gap:4px}
.backup-info strong{font-family:var(--font-d);font-size:14px;font-weight:700;color:var(--ink)}
.backup-info span{font-size:12px;color:var(--gray);font-weight:600}
.backup-btns{display:flex;gap:8px;align-items:center;flex-shrink:0}
.mini-btn.danger{background:#fff0f0;color:#e53935;border:1.5px solid #ffcdd2}
.mini-btn.danger:hover{background:#e53935;color:#fff;border-color:#e53935}

/* ──── SELETOR DE CATEGORIA NOS PRODUTOS ──── */
.prod-cat-selector{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.cat-dropdown-select{padding:10px 16px;border:2px solid var(--line);border-radius:14px;font:inherit;font-size:14px;font-weight:700;outline:none;color:var(--ink);background:#fff;cursor:pointer;transition:border-color .2s;min-width:180px}
.cat-dropdown-select:focus{border-color:var(--pink)}
.cat-mini-boxes{display:flex;gap:8px;flex-wrap:wrap}
.cat-mini-box{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:12px;border:2px solid var(--line);background:#fff;font-family:var(--font-b);font-size:13px;font-weight:800;cursor:pointer;transition:all .2s;color:var(--ink-mid)}
.cat-mini-box:hover{border-color:var(--cat-color,var(--pink));color:var(--cat-color,var(--pink));background:color-mix(in srgb,var(--cat-color,var(--pink)) 8%,#fff)}
.cat-mini-box.on{background:var(--cat-color,var(--pink));color:#fff;border-color:var(--cat-color,var(--pink))}

/* ──── PRODUTO: animação de entrada suave ──── */
@keyframes prodFadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.prod-card{animation:prodFadeIn .3s ease both}
.prod-grid .prod-card:nth-child(1){animation-delay:.03s}
.prod-grid .prod-card:nth-child(2){animation-delay:.06s}
.prod-grid .prod-card:nth-child(3){animation-delay:.09s}
.prod-grid .prod-card:nth-child(4){animation-delay:.12s}

/* ──── SKELETON LOADING ──── */
.prod-skeleton{border-radius:var(--r24);overflow:hidden;background:#fff;border:2px solid var(--line)}
.prod-skeleton .sk-img{aspect-ratio:1;background:linear-gradient(90deg,#f0e8ef 25%,#e8dde6 50%,#f0e8ef 75%);background-size:200% 100%;animation:skShimmer 1.4s infinite}
.prod-skeleton .sk-line{height:12px;margin:14px 16px 6px;border-radius:6px;background:linear-gradient(90deg,#f0e8ef 25%,#e8dde6 50%,#f0e8ef 75%);background-size:200% 100%;animation:skShimmer 1.4s infinite}
.prod-skeleton .sk-line.short{width:60%;height:10px;margin-top:4px}
.prod-skeleton .sk-btn{height:36px;margin:12px 16px 16px;border-radius:99px;background:linear-gradient(90deg,#f0e8ef 25%,#e8dde6 50%,#f0e8ef 75%);background-size:200% 100%;animation:skShimmer 1.4s infinite}
@keyframes skShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}

/* ──── SUBCATEGORIAS TABS ──── */
#subcatTabs{display:none;gap:8px;flex-wrap:wrap;margin-top:10px;padding:4px 0}
#subcatTabs .tab{font-size:13px;padding:7px 16px}

/* ──── EDIT MODE: ALLOW TEXT SELECTION IN EDITABLE NODES ──── */
body.vixi-editing [contenteditable="true"]{
  -webkit-user-select:text!important;
  user-select:text!important;
}

/* ──── COLEÇÕES SHOWCASE — CARDS FLUTUANTES ──── */
.colecao-float-wrap{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:24px 20px 16px}
/* wrapper que ancora os float-el de cada card */
.colsec-art{position:relative;display:flex;align-items:center;justify-content:center}
.colsec-art .float-el{pointer-events:none}
/* o card em si — igual ao .main-card do hero */
.colsec-float-card{position:relative;background:#fff;border-radius:var(--r32);padding:28px 24px 24px;box-shadow:var(--sh3);width:100%;max-width:320px;text-align:center;overflow:hidden;animation:cardFloat 4.2s ease-in-out infinite;will-change:transform;display:flex;flex-direction:column;gap:10px}
.colsec-art:nth-child(2) .colsec-float-card{animation-delay:1.6s}
/* ribbon como no Queridinha — fundo amarelo */
.colsec-float-card .colsec-ribbon{position:absolute;top:16px;left:50%;transform:translateX(-50%);white-space:nowrap;background:var(--yellow);color:var(--ink);padding:5px 16px;border-radius:var(--r99);font-size:11px;font-weight:900;letter-spacing:.6px;text-transform:uppercase}
/* imagem do carrossel */
.colsec-float-card .colsec-img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:16px;background:var(--pink-pale);margin-top:30px}
.colsec-float-card .colsec-slide{display:grid;gap:8px;opacity:1;transform:translateY(0);transition:opacity .28s ease,transform .28s ease}
.colsec-float-card .colsec-slide.swap{opacity:0;transform:translateY(8px)}
.colsec-float-card .colsec-name{font-family:var(--font-d);font-size:17px;font-weight:700;color:var(--ink-mid);line-height:1.2}
.colsec-float-card .colsec-price{font-family:var(--font-d);font-size:26px;font-weight:700;color:var(--pink)}
.colsec-float-card .colsec-dots{display:flex;gap:5px;justify-content:center}
.colsec-float-card .colsec-dots span{width:6px;height:6px;border-radius:50%;background:var(--line)}
.colsec-float-card .colsec-dots span.on{background:var(--pink)}
.colsec-float-card .colsec-count{font-size:12px;font-weight:700;color:var(--gray)}
.colsec-float-card .col-btn{margin-top:4px;background:var(--pink);color:#fff;border:none;border-radius:99px;padding:12px 24px;font-family:var(--font-b);font-weight:900;font-size:13px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:all .2s;box-shadow:0 4px 14px rgba(242,39,110,.3)}
.colsec-float-card .col-btn:hover{background:var(--ink-mid);transform:translateY(-2px)}
@media(max-width:720px){.colecao-float-wrap{grid-template-columns:1fr;gap:48px}}

/* ──── PERFORMANCE HINTS (continuously animating elements) ──── */
.ann-track{will-change:transform}
.hero-art .main-card,.float-el{will-change:transform}
.wa-float{will-change:transform}

/* ──── EDITOR MODE: FLOATING ELEMENT ADJUSTMENTS ──── */
body.vixi-editing .lgpd-bar{display:none!important}

/* ──── MOBILE SORT ARROWS (visible only on touch devices in drag mode) ──── */
.vixi-drag-mode .prod-card{position:relative}
.vixi-sort-arrows{position:absolute;top:8px;left:8px;z-index:10;display:none;flex-direction:column;gap:3px;pointer-events:auto}
.vixi-drag-mode .prod-card .vixi-sort-arrows{display:flex}
@media(min-width:769px){.vixi-drag-mode .prod-card .vixi-sort-arrows{display:none}}
.vixi-sort-btn{width:26px;height:26px;border-radius:50%;background:rgba(255,240,246,.95);border:1.5px solid var(--pink-soft);color:var(--pink);font-size:13px;font-weight:900;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s;line-height:1;padding:0;box-shadow:0 2px 8px rgba(242,39,110,.18)}
.vixi-sort-btn:hover,.vixi-sort-btn:active{background:var(--pink);color:#fff;border-color:var(--pink)}

/* ──── ACCESSIBILITY: REDUCED MOTION ──── */
@media(prefers-reduced-motion:reduce){
  *,::before,::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
    scroll-behavior:auto!important;
  }
}

/* ═══════════════════════════════════════════════════════════
   VISUAL EDITOR SIDEBAR (Nuvemshop-style)
   ═══════════════════════════════════════════════════════════ */

/* ── Sidebar container ── */
.vixi-sidebar{
  position:fixed;top:56px;left:0;bottom:0;width:280px;
  background:#fff;z-index:8500;
  transform:translateX(-100%);transition:transform .26s cubic-bezier(.4,0,.2,1);
  box-shadow:4px 0 36px rgba(30,0,26,.14);
  border-right:1.5px solid var(--line);
  display:none;flex-direction:column;overflow:hidden;
}
body.vixi-editing .vixi-sidebar{display:flex}
body.vixi-sidebar-open .vixi-sidebar{transform:translateX(0)}
/* Dim page when sidebar open (subtle overlay on right side) */
body.vixi-sidebar-open::after{
  content:'';position:fixed;top:56px;left:280px;right:0;bottom:0;
  background:rgba(30,0,26,.12);z-index:8000;pointer-events:none;
}

/* ── Top bar sidebar toggle ── */
.ve-sidebar-btn{
  background:rgba(255,255,255,.12);color:rgba(255,255,255,.9);
  border:none;border-radius:8px;padding:8px 12px;font-size:18px;
  cursor:pointer;transition:all .15s;flex-shrink:0;line-height:1;
}
.ve-sidebar-btn:hover{background:rgba(255,255,255,.22)}
body.vixi-sidebar-open .ve-sidebar-btn{background:var(--pink);color:#fff}

/* ── Page tabs ── */
.vsb-pages{
  display:grid;grid-template-columns:repeat(3,1fr);gap:5px;
  padding:10px 10px 8px;background:var(--pink-xpale);
  border-bottom:1.5px solid var(--line);flex-shrink:0;
}
.vsb-page-tab{
  border:1.5px solid var(--line);background:#fff;border-radius:9px;
  padding:7px 4px;font-size:11px;font-weight:800;color:var(--ink-mid);
  cursor:pointer;text-align:center;text-decoration:none;transition:all .15s;
  display:flex;flex-direction:column;align-items:center;gap:2px;line-height:1.2;
}
.vsb-page-tab:hover{border-color:var(--pink);color:var(--pink);background:var(--pink-pale)}
.vsb-page-tab.vsb-active{background:var(--pink);color:#fff;border-color:var(--pink)}
.vsb-page-tab .vsb-pt-icon{font-size:16px}

/* ── Sidebar header row ── */
.vsb-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 12px 6px;flex-shrink:0;
}
.vsb-title{font-size:10px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase;color:var(--gray)}
.vsb-hdr-btn{
  border:none;background:var(--pink-pale);color:var(--pink);
  border-radius:6px;padding:3px 9px;font-size:16px;font-weight:900;
  cursor:pointer;transition:all .15s;line-height:1;
}
.vsb-hdr-btn:hover{background:var(--pink);color:#fff}

/* ── Scrollable section list ── */
.vsb-scroll{flex:1;overflow-y:auto;overflow-x:hidden}
.vsb-scroll::-webkit-scrollbar{width:4px}
.vsb-scroll::-webkit-scrollbar-thumb{background:var(--pink-soft);border-radius:2px}

/* ── Section item ── */
.vsb-item{border-bottom:1px solid var(--line)}
.vsb-item-row{
  display:flex;align-items:center;padding:9px 10px 9px 4px;
  gap:6px;cursor:pointer;transition:background .1s;user-select:none;
}
.vsb-item-row:hover{background:var(--pink-xpale)}
.vsb-item-row.vsb-selected{background:var(--pink-pale)}
.vsb-item.vsb-drag-over .vsb-item-row{background:var(--pink-pale);outline:2px dashed var(--pink);outline-offset:-2px;border-radius:4px}
.vsb-item.vsb-dragging{opacity:.35}

.vsb-grip{
  color:#ccc;cursor:grab;font-size:16px;letter-spacing:3px;
  padding:3px 6px;user-select:none;flex-shrink:0;line-height:1;
}
.vsb-grip:active{cursor:grabbing}
.vsb-item-icon{font-size:15px;flex-shrink:0}
.vsb-item-name{
  flex:1;font-size:13px;font-weight:700;color:var(--ink);
  min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.vsb-item-btns{display:flex;gap:2px;align-items:center;flex-shrink:0}
.vsb-ib{
  border:none;background:none;color:#ccc;border-radius:5px;
  padding:3px 6px;font-size:13px;cursor:pointer;transition:all .12s;line-height:1;
}
.vsb-ib:hover{background:var(--pink-pale);color:var(--pink)}
.vsb-ib.del:hover{background:#ffe4e4;color:#d02}
.vsb-exp{transition:transform .2s;display:inline-block;font-size:12px}
.vsb-item.vsb-open .vsb-exp{transform:rotate(90deg)}

/* ── Sub-content (blocks / products) ── */
.vsb-sub{display:none;background:var(--pink-xpale);border-top:1px solid var(--line)}
.vsb-item.vsb-open .vsb-sub{display:block}

.vsb-sub-item{
  display:flex;align-items:center;padding:7px 10px 7px 22px;
  gap:6px;font-size:12px;color:var(--ink-mid);cursor:pointer;
  transition:background .1s;border-bottom:1px solid rgba(242,39,110,.08);
  user-select:none;
}
.vsb-sub-item:hover{background:var(--pink-pale)}
.vsb-sub-item.vsb-drag-over{background:var(--pink-pale);outline:1.5px dashed var(--pink);outline-offset:-2px}
.vsb-sub-item.vsb-dragging{opacity:.35}
.vsb-sub-grip{color:#ccc;cursor:grab;font-size:13px;letter-spacing:2px;user-select:none;flex-shrink:0;line-height:1}
.vsb-sub-grip:active{cursor:grabbing}
.vsb-sub-icon{font-size:13px;flex-shrink:0}
.vsb-sub-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.vsb-sub-del{border:none;background:none;color:#ccc;border-radius:4px;padding:2px 5px;cursor:pointer;font-size:11px;transition:all .1s;line-height:1}
.vsb-sub-del:hover{background:#ffe4e4;color:#d02}

.vsb-sub-actions{
  display:flex;gap:6px;padding:8px 12px 8px 22px;
  flex-wrap:wrap;
}
.vsb-sub-add{
  border:1px solid rgba(242,39,110,.4);background:rgba(255,255,255,.8);
  color:var(--pink);border-radius:7px;padding:4px 10px;font-size:11px;
  font-weight:700;cursor:pointer;transition:all .12s;white-space:nowrap;
}
.vsb-sub-add:hover{background:var(--pink);color:#fff;border-color:var(--pink)}

/* ── Sidebar footer ── */
.vsb-footer{padding:10px 10px;border-top:1.5px solid var(--line);flex-shrink:0}
.vsb-add-section-btn{
  width:100%;border:1.5px dashed rgba(242,39,110,.4);
  background:rgba(255,255,255,.6);color:var(--pink);
  border-radius:10px;padding:10px;font-size:13px;font-weight:800;
  cursor:pointer;transition:all .15s;
}
.vsb-add-section-btn:hover{background:var(--pink-pale);border-color:var(--pink);transform:translateY(-1px)}

/* ── Product drag handle visible grip ── */
.vixi-drag-mode .prod-card img{pointer-events:none;-webkit-user-drag:none}
.vixi-prod-grip{
  display:none;position:absolute;top:0;left:0;right:0;
  height:34px;background:rgba(30,0,26,.72);
  align-items:center;justify-content:center;gap:4px;
  cursor:grab;user-select:none;touch-action:none;z-index:12;border-radius:var(--r16) var(--r16) 0 0;
  color:#fff;font-size:15px;letter-spacing:3px;
  transition:background .15s;
}
.vixi-drag-mode .prod-card .vixi-prod-grip{display:flex}
.vixi-prod-grip:hover{background:rgba(242,39,110,.85)}
.vixi-prod-grip:active{cursor:grabbing;background:rgba(242,39,110,.95)}
@media(max-width:760px){
  .vixi-prod-grip{height:40px;font-size:18px;letter-spacing:4px}
}

/* ── Save pill (appears after product reorder) ── */
.vixi-save-pill{
  position:fixed;bottom:calc(76px + env(safe-area-inset-bottom, 0px));left:50%;transform:translateX(-50%) translateY(12px);
  background:var(--ink);color:#fff;border-radius:50px;
  padding:10px 18px;display:flex;align-items:center;gap:12px;
  font-size:13px;font-weight:700;z-index:8300;white-space:nowrap;
  box-shadow:0 6px 24px rgba(30,0,26,.35);
  opacity:0;pointer-events:none;transition:opacity .22s,transform .22s;
}
.vixi-save-pill.show{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.vixi-save-pill .vsp-btn{
  background:var(--pink);color:#fff;border:none;border-radius:20px;
  padding:6px 16px;font-size:13px;font-weight:800;cursor:pointer;
  transition:background .15s;
}
.vixi-save-pill .vsp-btn:hover{background:#d41a5e}
.vixi-save-pill .vsp-dismiss{background:none;border:none;color:rgba(255,255,255,.5);cursor:pointer;font-size:16px;padding:0 2px;line-height:1}

/* ── Custom block drag ── */
.vixi-cb-drag-row{
  display:none;align-items:center;justify-content:center;
  padding:4px 8px;background:rgba(30,0,26,.06);
  border-radius:8px 8px 0 0;cursor:grab;user-select:none;touch-action:none;gap:6px;
}
body.vixi-editing .vixi-custom-block:hover .vixi-cb-drag-row{display:flex}
/* always visible on touch screens — no hover available */
@media(hover:none){
  body.vixi-editing .vixi-custom-block .vixi-cb-drag-row{display:flex;padding:8px 12px}
}
.vixi-cb-drag-lbl{font-size:11px;color:#aaa;font-weight:600;letter-spacing:.5px}
.vixi-cb-drag-dots{font-size:14px;color:#bbb;letter-spacing:3px;line-height:1}
.vixi-custom-block.vcb-dragging{opacity:.3;outline:2px dashed rgba(242,39,110,.5)!important}
.vixi-custom-block.vcb-drag-over{outline:2px dashed var(--pink)!important;background:var(--pink-xpale)}

/* ── Section highlight animation (when clicked in sidebar) ── */
@keyframes vsb-sect-flash{
  0%,100%{outline:3px solid transparent;outline-offset:6px}
  30%,70%{outline:3px solid var(--pink);outline-offset:6px}
}
.vsb-flash{animation:vsb-sect-flash 1.2s ease-out}
