:root{
  --bg:#fdf0f4; --bg2:#fde7ef; --card:#ffffff; --ink:#3d2b33; --muted:#9a7b86;
  --title:#831843; --title2:#9d174d; --cta:#e84a7a; --cta2:#db2777; --cta-soft:#fde3ec;
  --gold:#d4a24e; --wa:#22c55e; --wa-d:#16a34a; --line:#f3d3de; --shadow:0 8px 28px rgba(232,74,122,.12);
  --r:18px; --max:1200px;
  --store-primary:#e84a7a; --store-primary-hover:#db2777; --store-primary-dark:#9d174d;
  --store-primary-soft:#fde3ec; --store-primary-border:#f3d3de; --store-gradient:linear-gradient(120deg,#e84a7a,#9d174d);
  --store-title:#831843; --store-title2:#9d174d; --store-text-accent:#9d174d; --store-highlight:#e84a7a; --store-dot:#e9b9c9;
  --store-shadow-color:rgba(232,74,122,.12); --store-overlay:linear-gradient(90deg,rgba(131,24,67,.72),rgba(131,24,67,.15));
  --store-on-primary:#fff; --store-cta-contrast:#9d174d; --store-bg:#fdf0f4; --store-bg2:#fde7ef; --store-surface:#fff; --store-surface-2:#fff;
  --store-text:#3d2b33; --store-text-soft:#5b4750; --store-muted:#9a7b86; --store-nav-bg:rgba(255,255,255,.96);
  --store-border:var(--store-primary-border); --store-shadow:0 8px 28px var(--store-shadow-color);
}
html.store-themed{
  --bg:var(--store-bg); --bg2:var(--store-bg2); --card:var(--store-surface); --ink:var(--store-text);
  --muted:var(--store-muted); --title:var(--store-title); --title2:var(--store-title2);
  --cta:var(--store-primary); --cta2:var(--store-primary-hover); --cta-soft:var(--store-primary-soft);
  --line:var(--store-border); --shadow:var(--store-shadow); color-scheme:light;
}
html.store-themed[data-store-identity="dark"]{
  --store-bg:#0B1220; --store-bg2:#111827; --store-surface:#172033; --store-surface-2:#1E293B;
  --store-text:#F8FAFC; --store-text-soft:#CBD5E1; --store-muted:#94A3B8; --store-nav-bg:rgba(11,18,32,.92);
  --store-border:#2B3A50; --store-shadow:0 10px 30px rgba(0,0,0,.45); color-scheme:dark;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;font-family:'Nunito',system-ui,sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none} img{display:block;max-width:100%}
button{font-family:inherit;cursor:pointer}
input,select,textarea{font-family:inherit;font-size:15px;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;width:100%;background:#fff;color:var(--ink);outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--cta);box-shadow:0 0 0 3px var(--cta-soft)}
label{font-size:13px;font-weight:800;color:var(--title2);display:block;margin:12px 0 6px}
#toast-wrap{position:fixed;top:14px;left:50%;transform:translateX(-50%);z-index:9999;display:flex;flex-direction:column;gap:8px;width:min(92vw,420px)}
.toast{background:#3d2b33;color:#fff;padding:12px 16px;border-radius:14px;font-size:14px;font-weight:700;box-shadow:var(--shadow);animation:tin .25s}
.toast.err{background:#b91c1c}.toast.ok{background:#15803d}
@keyframes tin{from{opacity:0;transform:translateY(-8px)}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:999px;padding:13px 24px;font-weight:900;font-size:15px;background:var(--cta);color:#fff;box-shadow:0 6px 18px rgba(232,74,122,.35);transition:.15s}
.btn:hover{background:var(--cta2);transform:translateY(-1px)}
.btn.ghost{background:#fff;color:var(--cta);border:2px solid var(--cta);box-shadow:none}
.btn.wa{background:var(--wa);box-shadow:0 6px 18px rgba(34,197,94,.35)}
.btn.wa:hover{background:var(--wa-d)}
.btn.sm{padding:9px 16px;font-size:13px}
.btn.block{width:100%}
.btn:disabled{opacity:.6;cursor:not-allowed}
.wrap{max-width:var(--max);margin:0 auto;padding:0 16px}
/* LANDING */
.topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.topbar .wrap{display:flex;align-items:center;gap:14px;padding:12px 16px}
.logo{font-weight:900;font-size:22px;color:var(--title2)}
.logo span{color:var(--cta)}
.nav-links{display:none;gap:20px;font-weight:800;font-size:14px;color:var(--title2);margin-left:12px}
@media(min-width:860px){.nav-links{display:flex}}
.hero{background:linear-gradient(135deg,#ffe4ee,#fff 60%,#fff7ed);border-radius:0 0 36px 36px;overflow:hidden}
.hero .wrap{display:grid;gap:24px;padding:44px 16px 52px}
@media(min-width:900px){.hero .wrap{grid-template-columns:1.1fr .9fr;align-items:center}}
.hero h1{font-size:clamp(30px,5vw,52px);line-height:1.05;color:var(--title);margin:0 0 12px;font-weight:900}
.hero p{color:#7c5a66;font-size:17px;margin:0 0 22px}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap}
.badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.badge{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:800;color:var(--title2)}
.hero-mock{background:#fff;border-radius:26px;box-shadow:var(--shadow);overflow:hidden;border:1px solid var(--line)}
.hero-mock .mock-head{background:var(--title2);color:#fff;padding:12px 18px;font-weight:900;display:flex;justify-content:space-between}
.mock-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px}
.mock-card{background:var(--bg);border-radius:14px;overflow:hidden}
.mock-card img{height:120px;width:100%;object-fit:cover}
.mock-card div{padding:8px 10px;font-size:12px;font-weight:800}
.feats{padding:46px 16px}
.feats h2,.sec-title{color:var(--title);font-size:clamp(22px,3.4vw,32px);text-align:center;margin:0 0 8px;font-weight:900}
.sec-sub{text-align:center;color:var(--muted);margin:0 0 26px;font-weight:600}
.grid3{display:grid;gap:14px}
@media(min-width:820px){.grid3{grid-template-columns:repeat(3,1fr)}}
.feat{background:#fff;border-radius:var(--r);padding:22px;box-shadow:var(--shadow);border:1px solid #fff}
.feat .ic{font-size:28px}
.feat h3{margin:10px 0 6px;color:var(--title2)}
.feat p{margin:0;color:#7c5a66;font-size:14px}
.how{background:#fff;border-radius:28px;padding:34px 22px;margin:10px 0 40px;box-shadow:var(--shadow)}
.steps{display:grid;gap:12px;counter-reset:s}
@media(min-width:820px){.steps{grid-template-columns:repeat(4,1fr)}}
.step{background:var(--bg);border-radius:16px;padding:18px;font-weight:700;font-size:14px;color:var(--title2)}
.step b{display:block;font-size:22px;color:var(--cta)}
.cta-final{background:linear-gradient(135deg,var(--cta),#9d174d);color:#fff;border-radius:28px;padding:44px 22px;text-align:center;margin-bottom:40px}
.cta-final h2{margin:0 0 10px;font-size:clamp(24px,4vw,36px)}
.footer{padding:26px 16px 60px;text-align:center;color:var(--muted);font-size:13px}
/* AUTH */
.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#ffe4ee,#fff,#fff7ed)}
.auth-card{background:#fff;border-radius:24px;box-shadow:var(--shadow);padding:30px 26px;width:100%;max-width:430px}
.auth-card h1{color:var(--title);margin:0;font-size:26px}
.auth-card p{color:var(--muted);font-size:14px}
.link{color:var(--cta2);font-weight:800}
/* APP SHELL */
.shell{display:flex;min-height:100vh}
.side{width:238px;background:#fff;border-right:1px solid var(--line);padding:18px 14px;position:sticky;top:0;height:100vh;display:none;flex-direction:column;gap:4px}
@media(min-width:960px){.side{display:flex}}
.side .logo{padding:6px 10px 16px}
.mi{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;font-weight:800;font-size:14.5px;color:#6b4a56}
.mi svg{flex:none;color:#b98a97}
.mi.active svg{color:var(--cta2)}
.mi:hover{background:var(--bg)}
.mi.active{background:var(--cta-soft);color:var(--title2)}
.main{flex:1;min-width:0;background:var(--bg)}
.topm{display:flex;align-items:center;gap:10px;background:#fff;border-bottom:1px solid var(--line);padding:12px 16px;position:sticky;top:0;z-index:40}
@media(min-width:960px){.topm .menu-btn{display:none}}
.menu-btn{background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:8px 12px;font-size:18px}
.content{padding:18px 16px 90px;max-width:1240px;margin:0 auto}
.cards{display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}
@media(min-width:800px){.cards{grid-template-columns:repeat(4,1fr)}}
.kpi{background:#fff;border-radius:18px;padding:16px;box-shadow:var(--shadow)}
.kpi small{color:var(--muted);font-weight:800;text-transform:uppercase;font-size:11px;letter-spacing:.5px}
.kpi b{display:block;font-size:24px;color:var(--title);margin-top:4px}
.panel{background:#fff;border-radius:18px;padding:18px;box-shadow:var(--shadow);margin-top:14px}
.panel h3{margin:0 0 12px;color:var(--title2)}
table{width:100%;border-collapse:collapse;font-size:14px}
th{text-align:left;color:var(--muted);font-size:12px;text-transform:uppercase;padding:10px 8px;border-bottom:1px solid var(--line)}
td{padding:11px 8px;border-bottom:1px solid #fbe9f0;vertical-align:middle}
.tbl-wrap{overflow-x:auto}
.pill{display:inline-block;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:900;background:var(--cta-soft);color:var(--title2)}
.pill.green{background:#dcfce7;color:#15803d}.pill.red{background:#fee2e2;color:#b91c1c}.pill.gold{background:#fef3c7;color:#92400e}
.row-actions{display:flex;gap:6px;flex-wrap:wrap}
.iconbtn{border:1.5px solid var(--line);background:#fff;border-radius:10px;padding:7px 10px;font-size:13px;font-weight:800}
.iconbtn:hover{border-color:var(--cta);color:var(--cta2)}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.toolbar input,.toolbar select{width:auto;flex:1;min-width:150px}
.drawer{position:fixed;inset:0;z-index:200;display:none}
.drawer.open{display:block}
.drawer .scrim{position:absolute;inset:0;background:rgba(61,43,51,.45)}
.drawer .box{position:absolute;left:0;top:0;bottom:0;width:min(86vw,300px);background:#fff;padding:18px;overflow:auto}
/* STOREFRONT */
.sf-top{background:var(--store-surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:60}
.sf-top .wrap{display:flex;align-items:center;gap:10px;padding:10px 14px}
.sf-logo{width:42px;height:42px;border-radius:50%;object-fit:cover;background:var(--cta-soft);display:flex;align-items:center;justify-content:center;font-weight:900;color:var(--title2);font-size:20px;flex:none}
.sf-name{font-weight:900;color:var(--title);line-height:1.1}
.sf-name small{display:block;color:var(--muted);font-weight:700;font-size:12px}
.sf-search{flex:1;display:flex;align-items:center;background:var(--bg);border-radius:999px;padding:9px 14px;gap:8px;border:1px solid var(--line)}
.sf-search input{border:none;background:none;padding:0}
.sf-search input:focus{box-shadow:none}
.cartbtn{position:relative;border:none;background:var(--cta-soft);border-radius:50%;width:44px;height:44px;font-size:20px;flex:none}
.cartbtn i{position:absolute;top:-4px;right:-4px;background:var(--cta);color:var(--store-on-primary);font-size:11px;font-weight:900;min-width:20px;height:20px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-style:normal;padding:0 5px}
.sf-hero{position:relative;border-radius:22px;overflow:hidden;margin:14px auto;min-height:190px;background:var(--store-gradient);display:flex;align-items:center;color:#fff}
.sf-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sf-hero .ov{position:absolute;inset:0;background:var(--store-overlay)}
.sf-hero.has-img .ov{background:rgba(0,0,0,.38)}
.sf-hero .hero-cta{background:var(--store-on-primary);color:var(--store-cta-contrast);box-shadow:var(--shadow)}
.sf-hero .tx{position:relative;padding:26px 22px;max-width:520px}
.sf-hero h2{margin:0 0 6px;font-size:clamp(22px,4.5vw,36px)}
.sf-hero p{margin:0 0 14px;opacity:.95}
.dots{display:flex;gap:6px;justify-content:center;padding:8px}
.dots span{width:8px;height:8px;border-radius:99px;background:var(--store-dot)}
.dots span.on{background:var(--cta);width:22px}
.benefits{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:6px 0 4px}
@media(min-width:760px){.benefits{grid-template-columns:repeat(4,1fr)}}
.benefit{background:var(--store-surface);border-radius:12px;padding:6px 10px;font-size:11px;font-weight:800;color:var(--title2);display:flex;gap:6px;align-items:center;box-shadow:var(--shadow)}
.cats{display:flex;gap:14px;overflow-x:auto;padding:14px 4px;scrollbar-width:none}
.cats::-webkit-scrollbar{display:none}
.cat{flex:none;text-align:center;width:76px}
.cat .ph{width:68px;height:68px;border-radius:50%;object-fit:cover;border:3px solid var(--store-surface);box-shadow:var(--shadow);background:var(--cta-soft);margin:0 auto;display:flex;align-items:center;justify-content:center;font-size:26px;overflow:hidden}
.cat.active .ph{border-color:var(--cta)}
.cat small{font-size:12px;font-weight:800;color:var(--title2);display:block;margin-top:6px}
.psec{margin:18px 0}
.psec h3{color:var(--title);margin:0 0 2px;font-size:20px}
.psec p{margin:0 0 12px;color:var(--muted);font-size:13px;font-weight:700}
.pgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:stretch}
@media(min-width:700px){.pgrid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1020px){.pgrid{grid-template-columns:repeat(4,1fr)}}
.pcard{background:var(--store-surface);border-radius:18px;overflow:hidden;box-shadow:var(--shadow);position:relative;display:flex;flex-direction:column;height:100%}
.pcard .im{display:block;position:relative;aspect-ratio:1/1;background:var(--bg2);overflow:hidden;flex:none}
.pcard .im img{width:100%;height:100%;object-fit:cover;display:block}
.fav{position:absolute;top:10px;right:10px;background:var(--store-surface);border:none;border-radius:50%;width:34px;height:34px;font-size:16px;box-shadow:var(--shadow)}
.seal{position:absolute;top:10px;left:10px;background:linear-gradient(90deg,#f59e0b,#f97316);color:#fff;font-size:11px;font-weight:900;padding:4px 10px;border-radius:999px}
.pcard .bd{padding:12px 12px 14px;display:flex;flex-direction:column;gap:4px;flex:1}
.pcard .nm{font-weight:800;font-size:14px;color:var(--ink);line-height:1.25;min-height:35px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.stars{color:#f59e0b;font-size:12px;font-weight:800}
.price{font-weight:900;color:var(--title);font-size:17px}
.price s{color:var(--muted);font-weight:700;font-size:13px;margin-right:6px}
.parc{font-size:12px;color:var(--muted);font-weight:700;margin-bottom:4px}
.addbtn{margin-top:auto;border:none;background:var(--cta);color:var(--store-on-primary);border-radius:999px;padding:11px;font-weight:900;font-size:14px}
.addbtn:hover{background:var(--cta2)}
.sf-foot{background:var(--store-surface);border-top:1px solid var(--line);margin-top:26px;padding:26px 16px 90px;text-align:center;color:var(--muted);font-size:13px}
.sf-foot-name{color:var(--store-title)}
.wafloat{position:fixed;right:16px;bottom:18px;z-index:80;background:var(--wa);color:#fff;border:none;width:58px;height:58px;border-radius:50%;font-size:28px;box-shadow:0 10px 26px rgba(34,197,94,.45)}
/* PRODUCT */
.pd{display:grid;gap:16px}
@media(min-width:900px){.pd{grid-template-columns:1fr 1fr;align-items:start}}
.gal{background:var(--store-surface);border-radius:20px;overflow:hidden;box-shadow:var(--shadow)}
.gal .main-im{aspect-ratio:1;background:var(--bg2)}
.gal .main-im img{width:100%;height:100%;object-fit:cover}
.thumbs{display:flex;gap:8px;padding:12px}
.thumbs img{width:62px;height:62px;border-radius:12px;object-fit:cover;border:2px solid transparent;cursor:pointer}
.thumbs img.on{border-color:var(--cta)}
.pd-info{background:var(--store-surface);border-radius:20px;padding:20px;box-shadow:var(--shadow)}
.pd-desc-title{color:var(--title2);margin:18px 0 6px}
.pd-desc{margin:0;color:var(--store-text-soft)}
.pd-info h1{color:var(--title);margin:0 0 6px;font-size:24px}
.var-group{margin:12px 0}
.var-opts{display:flex;gap:8px;flex-wrap:wrap}
.var-opt{border:2px solid var(--line);border-radius:999px;padding:8px 16px;font-weight:800;font-size:13px;background:var(--store-surface)}
.var-opt.on{border-color:var(--cta);background:var(--cta-soft);color:var(--title2)}
.qty{display:flex;align-items:center;gap:12px;margin:12px 0}
.qty button{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--line);background:var(--store-surface);font-size:20px;font-weight:900}
.qty b{font-size:18px}
/* CART */
.cart-item{display:flex;gap:12px;background:var(--store-surface);border-radius:16px;padding:12px;box-shadow:var(--shadow);margin-bottom:10px}
.cart-item img{width:74px;height:74px;border-radius:12px;object-fit:cover}
.cart-item .grow{flex:1}
.cart-item b{font-size:14px}
.qmini{display:flex;align-items:center;gap:10px;margin-top:8px}
.qmini button{width:30px;height:30px;border-radius:50%;border:1.5px solid var(--line);background:var(--store-surface);font-weight:900}
.sum{background:var(--store-surface);border-radius:16px;padding:16px;box-shadow:var(--shadow);margin-top:12px}
.sum .line{display:flex;justify-content:space-between;padding:5px 0;font-size:14px;font-weight:700}
.sum .line.total{font-size:19px;color:var(--title);font-weight:900;border-top:1px dashed var(--line);margin-top:8px;padding-top:12px}
.cart-price{color:var(--store-title)}
html.store-themed .mbox{background:var(--store-surface);color:var(--store-text)}
html.store-themed .dcard{background:var(--store-surface)}
html.store-themed .btn:not(.ghost):not(.wa):not(.hero-cta){color:var(--store-on-primary);box-shadow:0 6px 18px var(--store-shadow-color)}
html.store-themed .btn.ghost{background:var(--store-surface);color:var(--store-primary);border-color:var(--store-primary)}
html.store-themed .btn.wa{color:#fff}
html.store-themed .iconbtn{background:var(--store-surface);color:var(--store-text);border-color:var(--store-border)}
html.store-themed[data-store-identity="dark"] .demo-tag{background:rgba(245,158,11,.18);color:#fcd34d}
html.store-themed input,html.store-themed select,html.store-themed textarea{background:var(--store-surface-2);color:var(--store-text);border-color:var(--store-border)}
html.store-themed input:focus,html.store-themed select:focus,html.store-themed textarea:focus{border-color:var(--store-primary);box-shadow:0 0 0 3px var(--store-primary-soft)}
html.store-themed .sf-search input{background:transparent;border:0;padding:0;color:var(--store-text)}
html.store-themed .sf-search input:focus{box-shadow:none}
/* MODAL */
#modal-root:empty{display:none}
.mback{position:fixed;inset:0;background:rgba(61,43,51,.5);z-index:300;display:flex;align-items:flex-end;justify-content:center}
@media(min-width:700px){.mback{align-items:center;padding:20px}}
.mbox{background:#fff;border-radius:22px 22px 0 0;width:100%;max-width:620px;max-height:92vh;overflow:auto;padding:22px}
@media(min-width:700px){.mbox{border-radius:22px}}
.mbox h2{margin:0 0 8px;color:var(--title)}
.f2{display:grid;gap:0 12px}
@media(min-width:640px){.f2{grid-template-columns:1fr 1fr}}
.demo-tag{background:#fef3c7;color:#92400e;font-weight:900;font-size:12px;padding:6px 14px;border-radius:999px;display:inline-block;margin-bottom:10px}
.empty{text-align:center;padding:40px 16px;color:var(--muted)}
.empty .big{font-size:48px}
.chipbar{display:flex;gap:8px;overflow-x:auto;padding:4px 0 12px}
.chip{flex:none;border:2px solid var(--line);background:#fff;border-radius:999px;padding:8px 16px;font-weight:800;font-size:13px}
.chip.on{border-color:var(--cta);background:var(--cta-soft);color:var(--title2)}
.ob-steps{display:flex;gap:6px;margin:14px 0}
.ob-steps span{flex:1;height:6px;border-radius:99px;background:var(--line)}
.ob-steps span.on{background:var(--cta)}
.kbd-hint{font-size:12px;color:var(--muted)}

/* ============ DASHBOARD ============ */
.dash-head{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;margin:2px 0 16px}
.dash-head h2{color:var(--title);margin:0;font-size:clamp(24px,3.4vw,32px);font-weight:900}
.dash-head p{color:var(--muted);margin:4px 0 0;font-weight:600}
.periodsel{margin-left:auto;max-width:100%;display:inline-flex;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:9px 14px;box-shadow:var(--shadow);color:var(--title2);font-weight:800;cursor:pointer;flex:none}
.periodsel select{border:none;padding:0;width:auto;font-weight:800;color:var(--title2);background:none;cursor:pointer}
.periodsel select:focus{box-shadow:none}
.kpis{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:900px){.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}}
.kpi{display:flex;gap:12px;align-items:flex-start}
.kpi-ic{width:52px;height:52px;flex:none;border-radius:16px;background:var(--cta-soft);color:var(--cta2);display:flex;align-items:center;justify-content:center}
.kpi-tx{min-width:0}
.kpi-tx small{color:var(--muted);font-weight:700;font-size:13px}
.kpi .v{font-size:25px;color:var(--title);font-weight:900;line-height:1.15;white-space:nowrap}
.delta{font-size:13px;font-weight:900;margin-top:2px}
.delta.up{color:#16a34a}.delta.down{color:#ef4444}
.dcap{font-size:12px;color:var(--muted);font-weight:600}
.d-grid{display:grid;gap:12px;margin-top:12px;grid-template-columns:minmax(0,1fr)}
@media(min-width:1020px){
  .d-grid.cols-chart{grid-template-columns:minmax(0,1.9fr) minmax(0,1fr)}
  .d-grid.cols-2eq{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .d-grid.cols-table{grid-template-columns:minmax(0,1.9fr) minmax(0,1fr)}
}
/* Desktop largo: composição da referência — linha 4 em 3 colunas reais */
@media(min-width:1200px){
  .d-grid.cols-chart{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
  .d-grid.cols-table{grid-template-columns:minmax(0,1.9fr) minmax(0,1fr) minmax(0,1fr)}
  .d-grid.cols-table > .d-side{display:contents}
}
.dcard{background:#fff;border-radius:20px;padding:18px;box-shadow:var(--shadow);min-width:0}
.dcard h3{margin:0 0 6px;color:var(--title2);font-size:16px;display:flex;align-items:center;gap:8px}
.dcard h3 svg{color:var(--cta2);flex:none}
.dcard h3 .grow{flex:1}
.dlink{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:800;color:var(--cta2);white-space:nowrap}
.d-total{font-size:18px;font-weight:900;color:var(--title)}
.chart-wrap svg{width:100%;height:auto;display:block}
.chart-empty{text-align:center;padding:34px 16px;color:var(--muted)}
.chart-empty svg{color:#e9b9c9;margin-bottom:6px}
.chart-empty p{margin:0;font-size:14px}
.chart-empty.small{padding:18px 10px}
.rank{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #fbe9f0}
.rank:last-child{border-bottom:none}
.rank-n{width:20px;flex:none;color:var(--muted);font-weight:900;font-size:14px}
.rank img{width:46px;height:46px;flex:none;border-radius:12px;object-fit:cover;background:var(--bg2)}
.rank-ph{width:46px;height:46px;flex:none;border-radius:12px;background:var(--cta-soft);color:var(--cta2);display:flex;align-items:center;justify-content:center}
.rank-nm{font-weight:800;font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis}
.rank-nm small{display:block;color:var(--muted);font-weight:700;font-size:12px}
.rank .qv{margin-left:auto;flex:none;font-weight:800;color:var(--muted);font-size:12.5px;text-align:right}
.promo{background:linear-gradient(135deg,#f472a6,#db2777 60%,#9d174d);color:#fff;border-radius:20px;padding:22px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:16px}
.promo-top{display:flex;gap:12px;align-items:center}
.promo-ic{width:52px;height:52px;flex:none;border-radius:16px;background:rgba(255,255,255,.22);display:flex;align-items:center;justify-content:center}
.promo b{font-size:18px}
.promo p{margin:4px 0 0;opacity:.92;font-size:14px}
.promo .btn{align-self:flex-start}
.linkbox{display:flex;gap:8px;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:8px 8px 8px 14px;margin-top:10px}
.linkbox span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;color:var(--title2)}
.shorts-card{margin-top:12px}
.shorts{display:flex;gap:10px;overflow-x:auto;padding:12px 2px 4px;scrollbar-width:thin}
.short{flex:none;display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:11px 20px;font-weight:900;font-size:14px;border:2px solid var(--cta);background:#fff;color:var(--cta2)}
.short.fill{background:var(--cta);border-color:var(--cta);color:#fff;box-shadow:0 6px 18px rgba(232,74,122,.35)}
.d-side{display:grid;gap:12px;grid-template-columns:1fr}
@media(min-width:760px) and (max-width:1019px){.d-side{grid-template-columns:1fr 1fr}}
.dtable td,.dtable th{white-space:nowrap}
.dtable td:nth-child(2){white-space:normal;min-width:130px}
.mut{color:var(--muted);font-size:12px}
.st{display:inline-block;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:900}
.st-novo{background:#fef3c7;color:#b45309}
.st-confirmado{background:#dbeafe;color:#1d4ed8}
.st-em_preparacao{background:#ede9fe;color:#6d28d9}
.st-pronto{background:#cffafe;color:#0e7490}
.st-enviado{background:#fce7f3;color:#be185d}
.st-entregue{background:#dcfce7;color:#15803d}
.st-cancelado{background:#fee2e2;color:#b91c1c}
.row-actions.nowrap{flex-wrap:nowrap}
.wa-mini{width:32px;height:32px;flex:none;border-radius:50%;background:var(--wa);color:#fff;border:none;display:inline-flex;align-items:center;justify-content:center}
.eye-mini{width:32px;height:32px;flex:none;border-radius:50%;background:#fff;border:1.5px solid var(--line);color:#6b4a56;display:inline-flex;align-items:center;justify-content:center;padding:0}
.eye-mini:hover{border-color:var(--cta);color:var(--cta2)}
button.eye-mini{cursor:pointer}
details.mini{position:relative;display:inline-block}
details.mini summary{list-style:none;cursor:pointer}
details.mini summary::-webkit-details-marker{display:none}
details.mini .mm{position:absolute;right:0;top:38px;z-index:30;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);min-width:190px;padding:6px;display:flex;flex-direction:column}
details.mini .mm a{padding:9px 12px;border-radius:9px;font-size:13px;font-weight:800;color:var(--ink);white-space:nowrap}
details.mini .mm a:hover{background:var(--bg);color:var(--cta2)}
.avatar{width:42px;height:42px;flex:none;border-radius:50%;background:var(--cta-soft);color:var(--title2);font-weight:900;font-size:18px;display:flex;align-items:center;justify-content:center}
.donut-wrap{position:relative;width:172px;margin:8px auto 4px}
.donut-wrap svg{display:block;width:100%;height:auto}
.donut-c{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.donut-c b{font-size:26px;color:var(--title)}
.donut-c small{color:var(--muted);font-weight:700}
.legend{display:flex;flex-direction:column;gap:7px;margin-top:10px}
.lg-row{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#6b4a56}
.lg-row .dot{width:10px;height:10px;flex:none;border-radius:50%}
.lg-row b{margin-left:auto;color:var(--title)}
@media(max-width:700px){
  .kpi .v{font-size:20px}
  .kpi-ic{width:44px;height:44px;border-radius:14px}
  .dcard{padding:15px}
  .donut-wrap{width:150px}
}

/* ============ VITRINE: HEADER CENTRALIZADO (busca única) ============ */
.sf-top .sf-head{display:grid;gap:10px;align-items:center;grid-template-columns:auto 1fr auto;grid-template-areas:'menu brand right' 'search search search'}
.sf-head #mmenu{grid-area:menu}
.sf-head .sfs{grid-area:search;min-width:0}
.sf-brand{grid-area:brand;justify-self:center;display:flex;align-items:center;gap:10px;text-align:center;min-width:0;overflow:hidden}
.sf-brand .sf-logo{width:44px;height:44px;flex:none}
.sf-bname{font-weight:900;color:var(--title);font-size:clamp(18px,2.6vw,24px);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-bname small{display:block;color:var(--muted);font-weight:700;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-right{grid-area:right;justify-self:end;display:flex;align-items:center;gap:10px}
.sf-info{font-size:12.5px;font-weight:800;color:var(--title2);background:var(--cta-soft);border-radius:999px;padding:8px 14px;white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis}
.sf-head .mmenu{grid-column:1/-1}
/* ============ VITRINE: CARROSSEL ============ */
.carousel{position:relative;border-radius:22px;overflow:hidden;margin:14px auto;box-shadow:var(--shadow);background:var(--bg2)}
.ctrack{display:flex;transition:transform .45s ease;height:clamp(190px,26vw,360px)}
.cslide{min-width:100%;height:100%;background:var(--bg2)}
.cslide a{display:block;width:100%;height:100%}
.cslide img{width:100%;height:100%;object-fit:cover;display:block}
.cprev,.cnext{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:none;background:var(--store-surface);color:var(--title2);font-size:22px;font-weight:900;box-shadow:var(--shadow);z-index:2}
.cprev{left:12px}.cnext{right:12px}
.cdots{position:absolute;left:0;right:0;bottom:12px;display:flex;gap:6px;justify-content:center;z-index:2}
/* ============ VITRINE: CATEGORIAS (anel delicado, tamanhos uniformes) ============ */
.cat{width:78px}
.cat .ph{width:68px;height:68px;flex:none;border:3px solid var(--store-surface);background:var(--cta-soft);box-shadow:0 0 0 2px var(--line),var(--shadow);transition:.15s}
.cat.active .ph{box-shadow:0 0 0 2px var(--store-surface),0 0 0 4px var(--cta),var(--shadow)}
.cat.active small{color:var(--cta2)}
.cat .ph img{width:100%;height:100%;object-fit:cover;border-radius:50%}
/* menu mobile da loja */
.mmenu{background:var(--store-surface);border:1px solid var(--line);border-radius:0 0 18px 18px;padding:14px 16px;box-shadow:var(--shadow)}
.mmenu b{color:var(--title2);font-size:14px}
.mm-cats{display:flex;gap:8px;overflow-x:auto;padding:10px 0}
.mm-cats button{flex:none;border:2px solid var(--line);background:var(--store-surface);border-radius:999px;padding:8px 16px;font-weight:800;font-size:13px;color:var(--title2)}
.mm-acts{display:flex;gap:10px}
.mm-acts a{flex:1;text-align:center;border-radius:999px;padding:11px;font-weight:900;font-size:14px;background:var(--cta-soft);color:var(--cta2)}
/* ============ PRODUTOS: respiro/Alinhamento ============ */
.pcard{border-radius:20px}
.pcard .bd{padding:13px 13px 15px;gap:5px}
.psec{margin:22px 0}
.psec h3{font-size:21px}
/* ============ ADMIN: PRESETS DE CATEGORIA ============ */
.cat-preview{display:flex;align-items:center;gap:14px;background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:14px 16px;margin:6px 0 4px}
.cat-preview .cat-ph{width:64px;height:64px;flex:none;border-radius:50%;overflow:hidden;border:3px solid #fff;box-shadow:0 0 0 2px var(--line);background:var(--cta-soft)}
.cat-preview b{color:var(--title2)}
.preset-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;max-height:300px;overflow:auto;padding:4px 2px}
@media(min-width:640px){.preset-grid{grid-template-columns:repeat(6,1fr)}}
.preset{border:2px solid var(--line);background:#fff;border-radius:14px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;gap:6px}
.preset img{width:52px;height:52px;border-radius:50%;object-fit:cover}
.preset small{font-size:10.5px;font-weight:800;color:var(--title2);text-align:center;line-height:1.2}
.preset.on{border-color:var(--cta);background:var(--cta-soft)}
/* ============ ADMIN: LISTA DE BANNERS ============ */
.bn-row{display:flex;gap:10px;align-items:flex-start;background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:10px;margin-bottom:10px}
.bn-row.drag{opacity:.5}
.bn-drag{cursor:grab;color:var(--muted);font-weight:900;padding-top:8px;flex:none;letter-spacing:2px}
.bn-thumb{width:96px;height:54px;flex:none;border-radius:8px;object-fit:cover;background:#fff;border:1px solid var(--line)}
.bn-fields{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}
.bn-fields input,.bn-fields select{padding:8px 10px;font-size:13px}
.bn-ops{display:flex;flex-direction:column;gap:4px;flex:none}
.bn-ops .iconbtn{padding:5px 9px}
/* ============ VITRINE: RESPONSIVO ============ */
@media(max-width:860px){
  .sf-info{display:none}
  .sf-bname{font-size:19px}
  .ctrack{height:200px}
  .cprev,.cnext{width:36px;height:36px;font-size:18px}
  .cat{width:70px}
  .cat .ph{width:60px;height:60px}
}
@media(max-width:430px){
  .ctrack{height:180px}
  .carousel{border-radius:16px;margin:10px auto}
  .sf-bname{font-size:17px;max-width:52vw}
  .sf-bname small{display:none}
  .bn-row{flex-wrap:wrap}
  .bn-thumb{width:100%;height:90px}
}
@media(min-width:861px){
  .sf-top .sf-head{grid-template-columns:1fr auto 1fr;grid-template-areas:'search brand right'}
  .sf-head .sfs{width:min(300px,100%);justify-self:start}
  .sf-menu{display:none}
  #mmenuP{display:none}
}
@media(min-width:1440px){
  .ctrack{height:360px}
}

/* ============ ESTOQUE ============ */
.count-pill{background:var(--cta);color:#fff;font-size:11px;font-weight:900;min-width:20px;height:20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px;margin-left:auto}
.stock-alert{display:flex;align-items:center;gap:12px;background:#fffbeb;border:1.5px solid #fcd34d;border-radius:18px;padding:14px 18px;box-shadow:var(--shadow);margin-bottom:12px}
.warn-dot{width:38px;height:38px;flex:none;border-radius:50%;background:#f59e0b;color:#fff;font-weight:900;font-size:20px;display:flex;align-items:center;justify-content:center}
.stock-alert div{flex:1}
.stock-alert b{color:#92400e}
.stock-alert p{margin:2px 0 0;color:#92600e;font-size:13px;font-weight:700}
.st{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:900;white-space:nowrap}
.st::before{content:'';width:8px;height:8px;border-radius:50%;background:currentColor;margin-right:6px;flex:none}
.st-ok{background:#dcfce7;color:#15803d}
.st-low{background:#fef3c7;color:#b45309}
.st-out{background:#fee2e2;color:#b91c1c}
.st-off{background:#f1f5f9;color:#64748b}
.st-warn{background:#fef3c7;color:#b45309}
.st-novo{background:#fef3c7;color:#b45309}
.st-confirmado{background:#dbeafe;color:#1d4ed8}
.st-em_preparacao{background:#ede9fe;color:#6d28d9}
.st-pronto{background:#cffafe;color:#0e7490}
.st-enviado{background:#fce7f3;color:#be185d}
.st-entregue{background:#dcfce7;color:#15803d}
.st-cancelado{background:#fee2e2;color:#b91c1c}
.mv-in{background:#dcfce7;color:#15803d}
.mv-out{background:#fee2e2;color:#b91c1c}
.mv-adjust{background:#fef3c7;color:#b45309}
/* ============ EDITOR DE VARIAÇÕES ============ */
.pm-group{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:12px;margin-bottom:10px}
.pm-ghead{display:flex;gap:8px;margin-bottom:8px}
.pm-ghead input{flex:1}
.pm-opts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.pm-chip{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:7px 8px 7px 14px;font-weight:800;font-size:13px;color:var(--title2)}
.pm-chip a{color:#b91c1c;font-weight:900;text-decoration:none;background:#fee2e2;border-radius:50%;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;font-size:13px}
.pm-add{display:inline-flex;gap:6px;align-items:center}
.pm-add input{width:150px;padding:8px 12px;font-size:13px}
.pm-price{display:flex;gap:4px}
.pm-price select{width:auto;padding:8px 6px;font-size:12px}
.pm-price input{width:76px;padding:8px 6px;font-size:12px}
.radio-row{display:flex;gap:16px;flex-wrap:wrap}
.radio-row label{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:14px;color:var(--title2);margin:0}
/* ============ ESTOQUE AGRUPADO ============ */
.stk-card{display:flex;align-items:center;gap:12px;background:#fff;border-radius:16px;padding:12px 14px;box-shadow:var(--shadow);margin-bottom:10px}
.stk-thumb{width:52px;height:52px;flex:none;border-radius:12px;object-fit:cover;background:var(--bg2)}
span.stk-thumb{display:inline-flex;align-items:center;justify-content:center;color:var(--cta2);background:var(--cta-soft)}
.stk-main{flex:1;min-width:0}
.stk-main b{color:var(--title2);font-size:15px}
.stk-flags{display:flex;gap:6px;margin-top:4px;flex-wrap:wrap}
.mini-chip{font-size:11.5px;font-weight:900;padding:3px 10px;border-radius:999px}
.mini-chip.warn{background:#fef3c7;color:#b45309}
.mini-chip.bad{background:#fee2e2;color:#b91c1c}
/* ============ GALERIA (ADMIN) ============ */
.gal-item{position:relative;display:flex;gap:10px;align-items:flex-start;background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:10px;margin-bottom:10px}
.gal-item.drag{opacity:.5}
.gal-item > img{width:96px;height:72px;flex:none;border-radius:10px;object-fit:cover;background:#fff;border:1px solid var(--line)}
.gal-main{position:absolute;top:4px;left:4px;background:var(--cta);color:#fff;font-size:10.5px;font-weight:900;padding:3px 10px;border-radius:999px}
.gal-ops{display:flex;gap:4px;flex-wrap:wrap;flex:none;max-width:150px}
.gal-ops .iconbtn{padding:5px 9px}
.gal-links{flex:1;display:flex;gap:6px;flex-wrap:wrap;align-items:center;min-width:0}
.gal-linkadd{display:inline-flex;gap:4px;align-items:center}
.gal-linkadd select{width:auto;padding:7px 6px;font-size:12px}
/* ============ GALERIA (VITRINE) ============ */
.main-im{touch-action:pan-y;user-select:none;-webkit-user-select:none}
.main-im img{pointer-events:none}
table.compact input,table.compact select{padding:8px 6px;font-size:12.5px}
table.compact td{padding:8px 6px}
/* ============ PEDIDO: PAGAMENTO E ENDEREÇO ============ */
.ord-sec{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:10px}
.ord-sec b{color:var(--title2)}
.ord-item{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #fbe9f0;font-size:14px}
.ord-item:last-child{border-bottom:none}
.paybox{background:#fff7ed;border-color:#fcd34d}
/* ============ FINANCEIRO ============ */
.method-row{padding:9px 0;border-bottom:1px solid #fbe9f0}
.method-row:last-child{border-bottom:none}
.method-top{display:flex;justify-content:space-between;font-size:14px;font-weight:800;color:var(--title2)}
.method-bar{height:9px;border-radius:99px;background:var(--bg2);margin:6px 0 3px;overflow:hidden}
.method-bar span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#f472a6,#db2777)}
/* ============ VITRINE: DISPONIBILIDADE ============ */
.avail{margin:10px 0 2px}
.var-opt:disabled{opacity:.38;cursor:not-allowed;text-decoration:line-through}
#add:disabled{cursor:not-allowed}

/* ============ LANDING FITNESS ============ */
.fit-hero{background:linear-gradient(135deg,#ffe4ee,#fff 55%,#fff1f5)}
.hero-grid3{display:grid;gap:26px;align-items:center}
@media(min-width:900px){.hero-grid3{grid-template-columns:1.05fr .85fr}}
@media(min-width:1220px){.hero-grid3{grid-template-columns:1fr .72fr .62fr}}
.hero-copy h1{font-size:clamp(30px,4.6vw,50px);line-height:1.06;color:var(--title);margin:10px 0 12px;font-weight:900}
.hero-copy p{color:#7c5a66;font-size:17px}
.hero-checks{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 20px}
.hero-checks span{background:#dcfce7;color:#15803d;font-weight:900;font-size:13.5px;border-radius:999px;padding:8px 15px}
/* mockup de celular */
.phone{width:min(280px,78vw);margin:0 auto;background:#2b2228;border-radius:42px;padding:12px;box-shadow:0 24px 60px rgba(157,23,77,.28)}
.ph-screen{background:#fdf0f4;border-radius:30px;overflow:hidden}
.ph-top{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;font-size:13px;font-weight:900;color:var(--title2)}
.ph-cart{position:relative}
.ph-cart i{position:absolute;top:-7px;right:-9px;background:var(--cta);color:#fff;font-size:9px;font-style:normal;font-weight:900;min-width:15px;height:15px;border-radius:99px;display:flex;align-items:center;justify-content:center}
.ph-banner{position:relative;margin:0 10px;border-radius:14px;overflow:hidden;height:96px}
.ph-banner img{width:100%;height:100%;object-fit:cover}
.ph-banner div{position:absolute;inset:0;background:linear-gradient(90deg,rgba(131,24,67,.65),transparent);color:#fff;padding:12px;font-size:13px;display:flex;flex-direction:column;justify-content:center}
.ph-banner small{opacity:.9}
.ph-cats{display:flex;gap:10px;padding:10px 12px 2px;overflow:hidden}
.ph-cats span{font-size:9.5px;font-weight:800;color:var(--title2);text-align:center}
.ph-cats i{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#fff;box-shadow:var(--shadow);font-style:normal;font-size:17px;margin:0 auto 2px}
.ph-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 12px}
.ph-card{background:#fff;border-radius:12px;overflow:hidden;position:relative;font-size:10px;font-weight:700;padding-bottom:8px}
.ph-card img{width:100%;height:86px;object-fit:cover}
.ph-card div{padding:5px 8px 0}
.ph-card b{color:var(--title)}
.ph-card button{display:block;width:calc(100% - 16px);margin:6px 8px 0;border:none;background:var(--cta);color:#fff;border-radius:99px;padding:6px;font-size:10.5px;font-weight:900}
.ph-fav{position:absolute;top:6px;right:6px;background:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:12px;color:var(--cta)}
.ph-nav{display:flex;justify-content:space-around;padding:9px 6px;background:#fff;border-top:1px solid var(--line);font-size:16px}
/* fluxo ao lado */
.flow{background:#fff;border-radius:22px;box-shadow:var(--shadow);padding:20px}
.flow h3{margin:0 0 12px;color:var(--title2);font-size:17px}
.flow-step{display:flex;gap:10px;align-items:center;background:var(--bg);border-radius:14px;padding:10px 12px;margin-bottom:8px;font-size:13.5px;font-weight:700;color:var(--title2)}
.flow-step b{width:26px;height:26px;flex:none;border-radius:50%;background:var(--cta);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px}
.flow .btn{margin-top:6px;width:100%}
/* para quem é */
.who-grid{display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}
@media(min-width:700px){.who-grid{grid-template-columns:repeat(4,1fr)}}
@media(min-width:1020px){.who-grid{grid-template-columns:repeat(7,1fr)}}
.who{background:#fff;border-radius:18px;box-shadow:var(--shadow);padding:16px 8px;text-align:center}
.who img{width:62px;height:62px;border-radius:50%;object-fit:cover;margin:0 auto 8px}
.who-ic{width:62px;height:62px;border-radius:50%;background:var(--cta-soft);color:var(--cta2);display:flex;align-items:center;justify-content:center;margin:0 auto 8px}
.who b{font-size:13px;color:var(--title2)}
/* destaque variantes */
.feat{position:relative}
.feat.hot{border:2px solid var(--cta)}
.hot-tag{position:absolute;top:-11px;left:16px;background:var(--cta);color:#fff;font-size:10.5px;font-weight:900;letter-spacing:.6px;border-radius:99px;padding:3px 12px}
/* variantes na prática */
.fit-grid{display:grid;gap:18px}
@media(min-width:860px){.fit-grid{grid-template-columns:1fr 1fr;align-items:start}}
.fit-gal{background:var(--bg);border-radius:18px;padding:14px}
.fit-gal #fitimg{width:100%;aspect-ratio:1;object-fit:cover;border-radius:14px;background:#fff}
.fit-thumbs{display:flex;gap:8px;margin-top:10px}
.fit-thumbs img{width:64px;height:64px;border-radius:12px;object-fit:cover;border:2px solid transparent;cursor:pointer;background:#fff}
.fit-thumbs img.on{border-color:var(--cta)}
.fit-info h3{margin:0;color:var(--title);font-size:22px}
#fitstock{margin:10px 0 14px}
/* fin preview */
.fin-grid{display:grid;gap:14px}
@media(min-width:860px){.fin-grid{grid-template-columns:.9fr 1.1fr}}
.fin-top{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fin-top div{background:var(--bg);border-radius:14px;padding:12px}
.fin-top small{color:var(--muted);font-weight:800;font-size:12px}
.fin-top b{display:block;color:var(--title);font-size:22px}
.fin-bars{display:flex;flex-direction:column;gap:10px;justify-content:center}
.fin-bars span{font-size:13px;font-weight:800;color:var(--title2)}
.fin-bars b{font-size:13px;color:var(--title)}
#finchart svg{width:100%;height:auto;display:block}
@media(max-width:640px){
  .hero-cta .btn{width:100%}
  .flow{order:3}
}
/* ============ VITRINE MOBILE: BOTTOM NAV + SINO + FAVORITOS ============ */
.cartbtn{display:inline-flex;align-items:center;justify-content:center;line-height:1}
.cartbtn svg{flex:none}
.cartbtn i{position:absolute;top:-4px;right:-4px;background:var(--cta);color:var(--store-on-primary);font-size:11px;font-weight:900;min-width:20px;height:20px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-style:normal;padding:0 5px;line-height:1}
.bellbtn{position:relative;border:none;background:var(--cta-soft);border-radius:50%;width:44px;height:44px;flex:none;display:inline-flex;align-items:center;justify-content:center;color:var(--title2)}
.bellbtn i{position:absolute;top:-4px;right:-4px;background:#ef4444;color:#fff;font-size:11px;font-weight:900;min-width:20px;height:20px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-style:normal;padding:0 5px;line-height:1}
.fav{display:inline-flex;align-items:center;justify-content:center;color:var(--store-muted)}
.fav svg{flex:none}
.fav.on{color:var(--store-primary)}
.fav.on svg{fill:currentColor}
.bnav{display:none}
.notif{display:block;padding:11px 4px;border-bottom:1px solid var(--line);font-size:14px}
.notif:last-child{border-bottom:none}
.notif.read{opacity:.6}
.notif b{color:var(--title2)}
#readall{font-size:13px;font-weight:800;color:var(--cta2)}
.store-card{padding:20px}
.store-head{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.store-head img{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none}
.store-logo-ph{width:56px;height:56px;flex:none;border-radius:50%;background:var(--cta-soft);color:var(--title2);font-weight:900;font-size:24px;display:flex;align-items:center;justify-content:center}
.store-head b{color:var(--title);font-size:19px}
.store-card p{color:var(--store-text-soft);font-size:14px}
.store-rows{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.store-row{display:flex;align-items:center;gap:12px;background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:12px 14px;color:var(--title2)}
.store-row svg{flex:none;color:var(--cta2)}
.store-row span{flex:1;font-weight:800;font-size:14px;min-width:0}
.store-row small{color:var(--muted);font-weight:700;word-break:break-word}
.store-row em{font-style:normal;font-size:12px;font-weight:900;color:var(--cta2);flex:none}
@media(max-width:860px){
  .bnav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:120;background:var(--store-nav-bg);backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:6px 4px calc(8px + env(safe-area-inset-bottom))}
  .bnav a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 2px;min-height:52px;justify-content:center;border-radius:12px;color:var(--store-muted);font-weight:800}
  .bnav a small{font-size:10.5px}
  .bnav a.on{color:var(--cta2)}
  .bnav a.on svg{stroke-width:2.2}
  .has-bnav{padding-bottom:12px}
  .sf-foot{padding-bottom:calc(120px + env(safe-area-inset-bottom))}
  .wafloat{bottom:calc(96px + env(safe-area-inset-bottom));right:14px;width:52px;height:52px}
}
@media(min-width:861px){
  .bellbtn{display:none}
}

/* ============ LANDING FITNESS ============ */
.fit-hero{background:linear-gradient(135deg,#ffe4ee,#fff 55%,#fff1f5)}
.hero-grid3{display:grid;gap:26px;align-items:center}
@media(min-width:900px){.hero-grid3{grid-template-columns:1.05fr .85fr}}
@media(min-width:1220px){.hero-grid3{grid-template-columns:1fr .72fr .62fr}}
.hero-copy h1{font-size:clamp(30px,4.6vw,50px);line-height:1.06;color:var(--title);margin:10px 0 12px;font-weight:900}
.hero-copy p{color:#7c5a66;font-size:17px}
.hero-checks{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 20px}
.hero-checks span{background:#dcfce7;color:#15803d;font-weight:900;font-size:13.5px;border-radius:999px;padding:8px 15px}
.phone{width:min(280px,78vw);margin:0 auto;background:#2b2228;border-radius:42px;padding:12px;box-shadow:0 24px 60px rgba(157,23,77,.28)}
.ph-screen{background:#fdf0f4;border-radius:30px;overflow:hidden}
.ph-top{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;font-size:13px;font-weight:900;color:var(--title2)}
.ph-cart{position:relative}
.ph-cart i{position:absolute;top:-7px;right:-9px;background:var(--cta);color:#fff;font-size:9px;font-style:normal;font-weight:900;min-width:15px;height:15px;border-radius:99px;display:flex;align-items:center;justify-content:center}
.ph-banner{position:relative;margin:0 10px;border-radius:14px;overflow:hidden;height:96px}
.ph-banner img{width:100%;height:100%;object-fit:cover}
.ph-banner div{position:absolute;inset:0;background:linear-gradient(90deg,rgba(131,24,67,.65),transparent);color:#fff;padding:12px;font-size:13px;display:flex;flex-direction:column;justify-content:center}
.ph-banner small{opacity:.9}
.ph-cats{display:flex;gap:10px;padding:10px 12px 2px;overflow:hidden}
.ph-cats span{font-size:9.5px;font-weight:800;color:var(--title2);text-align:center}
.ph-cats i{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#fff;box-shadow:var(--shadow);font-style:normal;font-size:17px;margin:0 auto 2px}
.ph-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 12px}
.ph-card{background:#fff;border-radius:12px;overflow:hidden;position:relative;font-size:10px;font-weight:700;padding-bottom:8px}
.ph-card img{width:100%;height:86px;object-fit:cover}
.ph-card div{padding:5px 8px 0}
.ph-card b{color:var(--title)}
.ph-card button{display:block;width:calc(100% - 16px);margin:6px 8px 0;border:none;background:var(--cta);color:#fff;border-radius:99px;padding:6px;font-size:10.5px;font-weight:900}
.ph-fav{position:absolute;top:6px;right:6px;background:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:12px;color:var(--cta)}
.ph-nav{display:flex;justify-content:space-around;padding:9px 6px;background:#fff;border-top:1px solid var(--line);font-size:16px}
.flow{background:#fff;border-radius:22px;box-shadow:var(--shadow);padding:20px}
.flow h3{margin:0 0 12px;color:var(--title2);font-size:17px}
.flow-step{display:flex;gap:10px;align-items:center;background:var(--bg);border-radius:14px;padding:10px 12px;margin-bottom:8px;font-size:13.5px;font-weight:700;color:var(--title2)}
.flow-step b{width:26px;height:26px;flex:none;border-radius:50%;background:var(--cta);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px}
.flow .btn{margin-top:6px;width:100%}
.who-grid{display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}
@media(min-width:700px){.who-grid{grid-template-columns:repeat(4,1fr)}}
@media(min-width:1020px){.who-grid{grid-template-columns:repeat(7,1fr)}}
.who{background:#fff;border-radius:18px;box-shadow:var(--shadow);padding:16px 8px;text-align:center}
.who img{width:62px;height:62px;border-radius:50%;object-fit:cover;margin:0 auto 8px}
.who-ic{width:62px;height:62px;border-radius:50%;background:var(--cta-soft);color:var(--cta2);display:flex;align-items:center;justify-content:center;margin:0 auto 8px}
.who b{font-size:13px;color:var(--title2)}
.feat{position:relative}
.feat.hot{border:2px solid var(--cta)}
.hot-tag{position:absolute;top:-11px;left:16px;background:var(--cta);color:#fff;font-size:10.5px;font-weight:900;letter-spacing:.6px;border-radius:99px;padding:3px 12px}
.fit-grid{display:grid;gap:18px}
@media(min-width:860px){.fit-grid{grid-template-columns:1fr 1fr;align-items:start}}
.fit-gal{background:var(--bg);border-radius:18px;padding:14px}
.fit-gal #fitimg{width:100%;aspect-ratio:1;object-fit:cover;border-radius:14px;background:#fff}
.fit-thumbs{display:flex;gap:8px;margin-top:10px}
.fit-thumbs img{width:64px;height:64px;border-radius:12px;object-fit:cover;border:2px solid transparent;cursor:pointer;background:#fff}
.fit-thumbs img.on{border-color:var(--cta)}
.fit-info h3{margin:0;color:var(--title);font-size:22px}
#fitstock{margin:10px 0 14px}
.fin-grid{display:grid;gap:14px}
@media(min-width:860px){.fin-grid{grid-template-columns:.9fr 1.1fr}}
.fin-top{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fin-top div{background:var(--bg);border-radius:14px;padding:12px}
.fin-top small{color:var(--muted);font-weight:800;font-size:12px}
.fin-top b{display:block;color:var(--title);font-size:22px}
.fin-bars{display:flex;flex-direction:column;gap:10px;justify-content:center}
.fin-bars span{font-size:13px;font-weight:800;color:var(--title2)}
.fin-bars b{font-size:13px;color:var(--title)}
#finchart svg{width:100%;height:auto;display:block}
/* ============ LANDING: FEATURES COMPACTAS ============ */
.grid3{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.feat{padding:14px}
.feat .ic{font-size:22px}
.feat h3{font-size:14px;margin:6px 0 4px}
.feat p{font-size:12.5px;margin:0}
@media(min-width:700px){
  .grid3{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .feat{padding:20px}
  .feat .ic{font-size:26px}
  .feat h3{font-size:16px}
  .feat p{font-size:14px}
}
@media(min-width:1020px){
  .grid3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .feat{padding:22px}
  .feat .ic{font-size:28px}
}
/* ============ LANDING: PARA QUEM E ============ */
.who-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.who{padding:12px 6px}
.who img,.who-ic{width:48px;height:48px}
.who-ic svg{width:24px;height:24px}
.who-e{font-size:34px;display:block;margin-bottom:6px;line-height:1}
.fit-tabs{display:flex;gap:8px;margin-bottom:12px}
.fit-tabs button{flex:1;border:2px solid var(--line);background:#fff;border-radius:999px;padding:10px;font-weight:900;font-size:13.5px;color:var(--title2)}
.fit-tabs button.on{border-color:var(--cta);background:var(--cta-soft)}
.who b{font-size:12px}
.who.hero{grid-column:span 2;display:flex;align-items:center;gap:12px;text-align:left;padding:12px 14px}
.who.hero img{width:64px;height:64px;margin:0;flex:none}
.who.hero b{display:block;font-size:15px}
.who.hero small{display:block;color:var(--muted);font-weight:700;font-size:12px}
@media(min-width:700px){.who-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:1020px){
  .who-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr))}
  .who.hero{grid-column:span 2}
  .who img,.who-ic{width:56px;height:56px}
}
/* ============ LANDING: COMO FUNCIONA PREMIUM ============ */
.how5{position:relative;border-radius:28px;padding:38px 26px;margin:14px 0 40px;overflow:hidden;
  background:linear-gradient(135deg,#fff5f8,#ffeef4 60%,#fff);
  border:1px solid #f9cddc;box-shadow:0 18px 50px rgba(232,74,122,.14)}
.how5::before{content:'';position:absolute;width:520px;height:520px;left:50%;top:-260px;transform:translateX(-50%);
  background:radial-gradient(closest-side,rgba(244,114,182,.22),transparent);pointer-events:none}
.how5 h2{text-align:center;color:var(--title);font-size:clamp(22px,3.4vw,32px);margin:0;font-weight:900;position:relative}
.how5 .sec-sub{position:relative}
.steps5{position:relative;display:grid;gap:12px;margin-top:26px}
.step5{position:relative;background:rgba(255,255,255,.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border:1px solid #f7c9da;border-radius:20px;padding:20px 16px 18px;text-align:center;
  box-shadow:0 10px 26px rgba(157,23,77,.08);transition:transform .18s ease,box-shadow .18s ease}
.medal{position:relative;display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;
  background:linear-gradient(135deg,#f472a6,#db2777);color:#fff;box-shadow:0 8px 20px rgba(219,39,119,.35);margin-bottom:10px}
.medal i{position:absolute;top:-7px;right:-7px;width:24px;height:24px;border-radius:50%;background:#831843;color:#fff;
  font-style:normal;font-size:12.5px;font-weight:900;display:flex;align-items:center;justify-content:center;border:2px solid #fff}
.step5 h3{margin:0 0 6px;color:var(--title2);font-size:15.5px}
.step5 p{margin:0;color:#7c5a66;font-size:13px}
@media(min-width:1020px){
  .steps5{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
  .steps5::before{content:'';position:absolute;top:63px;left:6%;right:6%;height:2px;
    background:linear-gradient(90deg,transparent,#f4a3c0 12%,#f4a3c0 88%,transparent)}
  .step5:nth-child(odd){transform:translateY(14px)}
  .step5:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(219,39,119,.18)}
  .step5:nth-child(odd):hover{transform:translateY(10px)}
}
@media(max-width:1019px){
  .steps5{grid-template-columns:minmax(0,1fr);gap:0}
  .steps5::before{content:'';position:absolute;top:18px;bottom:18px;left:43px;width:2px;
    background:linear-gradient(180deg,transparent,#f4a3c0 10%,#f4a3c0 90%,transparent)}
  .step5{display:grid;grid-template-columns:56px 1fr;gap:12px;text-align:left;padding:14px;margin-bottom:12px}
  .step5:last-child{margin-bottom:0}
  .step5 .medal{width:52px;height:52px;margin:0}
  .step5 h3{font-size:15px}
  .step5 p{font-size:12.5px}
}

@media(max-width:640px){
  .hero-cta .btn{width:100%}
  .flow{order:3}
}

/* ============ LANDING: DOR / TRANSFORMACAO / ANTES-DEPOIS / POR DENTRO ============ */
.pain{padding:34px 16px 8px;text-align:center}
.pain h2{color:var(--title);font-size:clamp(22px,3.6vw,34px);margin:0 auto 18px;max-width:760px;font-weight:900}
.chatmock{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:680px;margin:0 auto}
.chatmock span{background:#fff;border:1px solid var(--line);border-radius:18px 18px 18px 6px;padding:9px 15px;font-size:13.5px;font-weight:700;color:var(--title2);box-shadow:var(--shadow)}
.typing{display:inline-flex;gap:4px;align-items:center}
.typing i{width:7px;height:7px;border-radius:50%;background:var(--cta);animation:blink 1.2s infinite}
.typing i:nth-child(2){animation-delay:.2s}
.typing i:nth-child(3){animation-delay:.4s}
@keyframes blink{0%,100%{opacity:.3}50%{opacity:1}}
.pain-copy{color:#7c5a66;max-width:640px;margin:18px auto 0;font-size:15.5px}
.trans{padding:30px 16px 8px;text-align:center}
.trans h2{color:var(--title);font-size:clamp(22px,3.6vw,34px);margin:0 0 18px;font-weight:900}
.tflow{display:flex;align-items:stretch;gap:6px;justify-content:center;flex-wrap:wrap;max-width:1020px;margin:0 auto}
.tstep{flex:1 1 120px;max-width:150px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 8px;font-size:12px;font-weight:800;color:var(--title2);box-shadow:var(--shadow)}
.tstep b{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--cta-soft);color:var(--cta2);font-size:12px;margin:0 auto 6px}
.tarrow{align-self:center;color:var(--cta2);font-weight:900}
.tbox{max-width:760px;margin:20px auto 0;background:linear-gradient(135deg,#f472a6,#db2777);color:#fff;border-radius:22px;padding:24px 22px;box-shadow:0 16px 40px rgba(219,39,119,.3)}
.tbox b{font-size:clamp(17px,2.6vw,22px)}
.tbox.compact{padding:20px 22px}
.tbox.compact b{font-size:clamp(16px,2.4vw,20px)}
/* solução em 3 etapas (sem carrossel) */
.sflow{display:grid;gap:12px;max-width:1020px;margin:0 auto 20px}
@media(min-width:820px){.sflow{grid-template-columns:repeat(3,1fr)}}
.sstep{position:relative;display:flex;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;box-shadow:var(--shadow);text-align:left}
.snum{width:26px;height:26px;flex:none;border-radius:50%;background:var(--cta);color:#fff;font-size:13px;font-weight:900;display:flex;align-items:center;justify-content:center}
.sico{width:46px;height:46px;flex:none;border-radius:14px;background:var(--cta-soft);color:var(--cta2);display:flex;align-items:center;justify-content:center}
.stx b{display:block;color:var(--title2);font-size:15px}
.stx small{color:var(--muted);font-weight:700;font-size:13px}
@media(max-width:819px){
  .sflow{gap:0}
  .sstep:not(:last-child){margin-bottom:20px}
  .sstep:not(:last-child)::after{content:'↓';position:absolute;left:28px;bottom:-20px;color:var(--cta2);font-weight:900;font-size:14px}
}
.tbox p{opacity:.92;margin:8px 0 0;font-size:14px}
.tchips{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:14px}
.tchips span{background:rgba(255,255,255,.22);border-radius:999px;padding:6px 14px;font-size:12.5px;font-weight:800}
.ab{display:grid;gap:12px;padding:30px 16px 8px;max-width:900px}
@media(min-width:820px){.ab{grid-template-columns:1fr 1fr}}
.ab-col{border-radius:22px;padding:24px 22px;box-shadow:var(--shadow)}
.ab-col h3{margin:0 0 12px;font-size:18px}
.ab-col h3 small{display:block;font-size:13px;font-weight:700;opacity:.75;margin-top:2px}
.ab-col ul{margin:0;padding:0;list-style:none;font-size:14px;font-weight:600}
.ab-col li{padding:6px 0 6px 28px;position:relative}
.ab-col.before{background:#fff;border:1px solid var(--line);color:#7c5a66}
.ab-col.before h3{color:#b91c1c}
.ab-col.before li::before{content:'✕';position:absolute;left:4px;color:#ef4444;font-weight:900}
.ab-col.after{background:linear-gradient(135deg,#fdf2f7,#fff);border:2px solid var(--cta);color:var(--title2)}
.ab-col.after h3{color:var(--title)}
.ab-col.after li::before{content:'✓';position:absolute;left:4px;color:#16a34a;font-weight:900}
/* por dentro */
.inside{background:#fff;border-radius:28px;padding:34px 22px;margin:10px 0 40px;box-shadow:var(--shadow)}
.inside h2{color:var(--title);font-size:clamp(22px,3.4vw,32px);margin:0;text-align:center;font-weight:900}
.shots{display:grid;gap:12px;margin-top:22px;grid-template-columns:minmax(0,1fr)}
@media(min-width:700px){.shots{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.shots{grid-template-columns:repeat(3,minmax(0,1fr))}}
.shot{background:var(--bg);border:1px solid var(--line);border-radius:18px;padding:16px}
.shot-bar{display:flex;gap:5px;margin-bottom:10px}
.shot-bar i{width:9px;height:9px;border-radius:50%;background:#e9b9c9}
.shot > b{color:var(--title2);font-size:15px}
.shot p{font-size:12.5px;color:#7c5a66;margin:10px 0 0}
.shot p b{color:var(--title2)}
.shot-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}
.shot-kpis span{background:#fff;border-radius:10px;padding:8px 6px;font-size:10.5px;font-weight:800;color:var(--muted);text-align:center}
.shot-kpis b{display:block;color:var(--title);font-size:14px}
.shot-form{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.shot-form span{background:#fff;border:1px solid var(--line);border-radius:9px;padding:7px 10px;font-size:12px;color:var(--muted);font-weight:700}
.shot-form .shot-btn{background:var(--cta);color:#fff;text-align:center;font-weight:900}
.shot-table{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.shot-table span{display:flex;justify-content:space-between;background:#fff;border-radius:9px;padding:7px 10px;font-size:12px}
.shot-table em{font-style:normal;color:var(--muted);font-weight:800}
.shot-table em.out{color:#b91c1c}
.shot-alert{background:#fffbeb;border:1px solid #fcd34d;border-radius:10px;padding:9px 12px;font-size:12.5px;font-weight:800;color:#92400e;margin-top:10px}
.shot-bars{display:flex;flex-direction:column;gap:7px;margin-top:10px}
.shot-bars span{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:var(--title2)}
.shot-bars i{flex:1;height:8px;border-radius:99px;background:linear-gradient(90deg,#f472a6,#db2777)}
@media(max-width:640px){
  .tflow{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding-bottom:8px}
  .tstep{flex:0 0 128px}
  .ab{padding:22px 16px 4px}
}

/* ============ ADMIN MASTER ============ */
.mbadge{background:#831843;color:#fff;font-size:10.5px;font-weight:900;letter-spacing:1px;border-radius:999px;padding:3px 10px;vertical-align:middle}
.sys-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #fbe9f0;font-size:14px}
.sys-row:last-child{border-bottom:none}
.sys-row b{margin-left:auto;color:var(--title)}
.sys-dot{width:11px;height:11px;flex:none;border-radius:50%;background:#94a3b8}
.sys-dot.ok{background:#16a34a}
.sys-dot.warn{background:#f59e0b}
.mail-prev{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;font-size:14px}
.mail-prev p{color:#5b4750;white-space:pre-wrap}
.mail-cta{display:inline-block;background:var(--cta);color:#fff;font-weight:900;border-radius:999px;padding:11px 22px;margin-top:6px}
code{background:var(--cta-soft);color:var(--title2);border-radius:6px;padding:1px 7px;font-size:12.5px}

/* ============ ADMIN EMAILS ============ */
.tpl-grid{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media(min-width:760px){.tpl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tpl-card{background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:16px;display:flex;gap:12px;flex-wrap:wrap;align-items:flex-start}
.tpl-ic{width:46px;height:46px;flex:none;border-radius:14px;background:var(--cta-soft);color:var(--cta2);display:flex;align-items:center;justify-content:center}
.tpl-tx{flex:1;min-width:180px}
.tpl-tx b{color:var(--title2);font-size:15px}
.tpl-tx small{display:block;color:var(--muted);font-weight:700;margin-top:2px}
.tpl-acts{display:flex;gap:6px;flex-wrap:wrap;flex-basis:100%}
.ed-grid{display:grid;gap:16px}
@media(min-width:900px){.ed-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start}}
#varchips{margin:4px 0 2px}
#mprev{margin:0 auto;transition:max-width .2s}

/* ============ ORCAMENTOS ============ */
.bud-card{background:#fff;border-radius:18px;padding:16px 18px;box-shadow:var(--shadow);margin-bottom:12px}
.bud-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.bud-num{background:var(--bg);border:1px solid var(--line);color:var(--title2);font-weight:900;font-size:12.5px;border-radius:999px;padding:3px 11px}
.bud-card .mut{color:var(--muted);font-size:12.5px;font-weight:700}
.bud-total{font-size:24px;font-weight:900;color:var(--title);margin:6px 0 10px}
.iconbtn.ok{color:#15803d;border-color:#bbf7d0}
/* ============ ORCAMENTO IMPRESSO / PDF ============ */
#print-root{display:none}
.quote{background:#fff;color:#3d2b33;font-family:Arial,Helvetica,sans-serif;max-width:720px;margin:0 auto}
.q-head{display:flex;gap:14px;align-items:center;border-bottom:3px solid #e84a7a;padding-bottom:14px;margin-bottom:14px}
.q-head img{width:64px;height:64px;border-radius:50%;object-fit:cover;flex:none}
.q-logo-ph{width:64px;height:64px;flex:none;border-radius:50%;background:#fde3ec;color:#9d174d;font-weight:900;font-size:26px;display:inline-flex;align-items:center;justify-content:center}
.q-head b{font-size:20px;color:#831843}
.q-head small{color:#777}
.q-sec{margin:12px 0;font-size:14px;line-height:1.6}
.q-table{width:100%;border-collapse:collapse;font-size:14px;margin:10px 0}
.q-table th{text-align:left;color:#831843;border-bottom:2px solid #e84a7a;padding:8px 6px;font-size:12px;text-transform:uppercase}
.q-table td{padding:9px 6px;border-bottom:1px solid #f3d3de}
.q-totals{margin-left:auto;max-width:280px;font-size:14px}
.q-totals div{display:flex;justify-content:space-between;padding:5px 0}
.q-totals .gt{font-size:19px;font-weight:900;color:#831843;border-top:2px solid #e84a7a;margin-top:6px;padding-top:10px}
.q-foot{text-align:center;margin-top:26px;color:#777;font-size:13px}
@media print {
  body > *:not(#print-root){display:none !important}
  #print-root{display:block !important}
  .quote{max-width:100%}
}
/* ============ LANDING PRO: serifas, glow, vitrines ============ */
.hero-copy h1,.feats h2,.pain h2,.trans h2,.how5 h2,.inside h2,.cta-final h2{font-family:'Fraunces',Georgia,serif;letter-spacing:-.5px}
.hl{color:var(--cta2)}
.eyebrow{text-align:center;color:var(--cta2);font-weight:900;letter-spacing:3px;font-size:12px;margin:0 0 8px}
.btn.glow{box-shadow:0 14px 34px rgba(219,39,119,.45)}
.feat .fic{width:46px;height:46px;border-radius:50%;background:var(--cta-soft);color:var(--cta2);display:flex;align-items:center;justify-content:center;font-size:22px}
.mstores{display:grid;gap:14px;grid-template-columns:minmax(0,1fr);margin-top:20px}
@media(min-width:760px){.mstores{grid-template-columns:repeat(3,minmax(0,1fr))}}
.mstore{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow)}
.mstore-bar{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;font-weight:900;font-size:13.5px;color:var(--title2)}
.mstore-bar em{font-style:normal;font-size:10.5px;font-weight:800;color:var(--muted);border:1px solid var(--line);border-radius:99px;padding:2px 10px}
.mstore-banner{position:relative;height:110px}
.mstore-banner img{width:100%;height:100%;object-fit:cover}
.mstore-banner b{position:absolute;left:12px;bottom:8px;color:#fff;font-size:14px;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.mstore-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 12px}
.mstore-grid div{background:var(--bg);border-radius:12px;padding:6px;font-size:10.5px;font-weight:700}
.mstore-grid img{width:100%;height:64px;object-fit:cover;border-radius:8px}
.mstore-grid span{display:block;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mstore-grid b{color:var(--title);font-size:11.5px}
.mstore-nav{display:flex;justify-content:center;gap:14px;padding:8px;border-top:1px solid var(--line)}
.mstore-nav span{width:22px;height:6px;border-radius:99px;background:var(--line)}
.mstore-nav span:first-child{background:var(--cta)}
@media(max-width:1019px){
  .step5{display:grid;grid-template-columns:52px 1fr;grid-template-areas:'m t' 'd d';gap:4px 12px}
  .step5 .medal{grid-area:m;width:52px;height:52px;margin:0}
  .step5 h3{grid-area:t;align-self:center;text-align:left;margin:0}
  .step5 p{grid-area:d;text-align:left}
  .steps5::before{left:40px}
}
@media(max-width:440px){
  .topbar .logo{font-size:18px}
  .topbar .btn.sm{padding:8px 12px;font-size:12px}
  .hero-copy h1{font-size:29px}
}

/* ============ MOBILE: respiro lateral + anti-estouro ============ */
html,body{max-width:100%;overflow-x:clip}
img{max-width:100%}
@media(max-width:480px){
  .wrap{padding-left:18px;padding-right:18px}
  .topbar .wrap{flex-wrap:wrap;gap:8px;padding-top:10px;padding-bottom:10px}
  .who b{font-size:11.5px}
  .feat h3{font-size:13.5px}
  .mstore-grid{gap:6px}
}

/* ============ LANDING: reestruturação Vitrine Lucrativa (mantém identidade) ============ */
.demoband{display:flex;align-items:center;gap:16px;flex-wrap:wrap;background:#fff;border:2px solid var(--cta);border-radius:22px;padding:20px 22px;box-shadow:var(--shadow);margin:26px auto 0;max-width:var(--max);width:calc(100% - 32px)}
.demoband-tx{flex:1;min-width:220px}
.demoband-tx b{display:block;color:var(--title);font-size:17px}
.demoband-tx span{color:#7c5a66;font-size:14px;font-weight:600}
/* tour alternado print + copy */
.tour{padding:40px 16px 8px;text-align:center}
.tour h2{color:var(--title);font-size:clamp(24px,3.6vw,36px);margin:0 auto 8px;max-width:820px;font-weight:900;font-family:'Fraunces',Georgia,serif;letter-spacing:-.5px}
.trow{display:grid;gap:18px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);padding:26px 22px;margin:22px auto;max-width:1080px;align-items:center}
@media(min-width:920px){.trow{grid-template-columns:1fr 1.1fr;padding:32px}.trow.rev{grid-template-columns:1.1fr 1fr}.trow.rev .tcopy{order:2}.trow.rev .tvis{order:1}}
.tcopy .tag{display:inline-block;background:var(--cta-soft);color:var(--cta2);font-size:11px;font-weight:900;letter-spacing:1.5px;border-radius:999px;padding:5px 13px;margin-bottom:10px}
.tcopy h3{margin:0 0 8px;color:var(--title);font-size:clamp(20px,2.6vw,27px);font-family:'Fraunces',Georgia,serif}
.tcopy p{margin:0 0 12px;color:#7c5a66;font-size:15px}
.tbul{margin:0;padding:0;list-style:none}
.tbul li{position:relative;padding:6px 0 6px 30px;font-size:14px;font-weight:700;color:var(--title2)}
.tbul li::before{content:'✓';position:absolute;left:4px;top:6px;width:20px;height:20px;border-radius:50%;background:#dcfce7;color:#15803d;font-size:12px;font-weight:900;display:flex;align-items:center;justify-content:center}
.tvis{min-width:0}
.tvis .shot,.tvis .mstore,.tvis .fin-grid,.tvis .tbox{margin:0}
/* prints reais do painel, lado a lado */
.dashshots{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.dashshots img{width:100%;height:300px;object-fit:cover;object-position:top;border-radius:14px;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff}
@media(max-width:860px){.dashshots{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 10px}.dashshots img{flex:0 0 68%;scroll-snap-align:start;height:360px}}
/* prints reais de personalização, lado a lado */
.brandshots{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.brandshots img{width:100%;height:340px;object-fit:cover;object-position:top;border-radius:14px;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff}
@media(max-width:860px){.brandshots{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 10px}.brandshots img{flex:0 0 72%;scroll-snap-align:start;height:380px}}
.tvis .fit-grid{grid-template-columns:1fr}
@media(min-width:560px){.tvis .fit-grid{grid-template-columns:1fr 1fr}}
.tvis .fin-grid{grid-template-columns:1fr}
.steps5.four{grid-template-columns:minmax(0,1fr)}
@media(min-width:1020px){.steps5.four{grid-template-columns:repeat(4,minmax(0,1fr))}.steps5.four::before{left:8%;right:8%}}
/* incluso / benefícios / bônus */
.feats.compact{padding-top:34px}
.wrap.feats>.eyebrow{margin-top:54px}
.wrap.feats>.eyebrow:first-child{margin-top:0}
.wrap.feats .sec-sub{margin-bottom:30px}
.wrap.feats .who-grid{margin-bottom:6px}
.wrap.feats .mstores{margin-bottom:10px}
/* galeria de nichos (imagens reais enviadas) */
.nichos-gal{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 2px 16px;margin-top:20px;scrollbar-width:thin}
.nichos-wrap{position:relative}
.nprev,.nnext{position:absolute;top:38%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:none;background:rgba(255,255,255,.95);color:var(--title2);font-size:24px;font-weight:900;box-shadow:var(--shadow);z-index:2;line-height:1}
.nprev{left:8px}.nnext{right:8px}
.nprev:hover,.nnext:hover{background:var(--cta);color:#fff}
@media(max-width:640px){.nprev,.nnext{width:36px;height:36px;font-size:20px}}
.nicho{flex:0 0 min(76vw,290px);scroll-snap-align:start;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow);margin:0}
.nicho img{width:100%;height:400px;object-fit:cover;object-position:top;display:block;background:var(--bg)}
.nicho figcaption{padding:10px 14px;border-top:1px solid var(--line)}
@media(max-width:640px){.nicho img{height:330px}}

/* ============ VITRINE PÚBLICA: toast temático + barra do carrinho + como comprar ============ */
.toast.added{background:var(--cta);color:var(--store-on-primary)}
.cartbar{position:fixed;left:10px;right:10px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:110;border:none;border-radius:16px;background:var(--cta);color:var(--store-on-primary);font-weight:900;font-size:15px;padding:15px 18px;display:flex;justify-content:space-between;align-items:center;gap:10px;box-shadow:0 12px 30px rgba(0,0,0,.25)}
.cartbar[hidden]{display:none}
.cartbar b{font-size:16px}
@media(min-width:861px){.cartbar{left:auto;right:20px;bottom:20px;min-width:360px;border-radius:999px}}
@media(max-width:860px){
  .has-cartbar .wafloat{bottom:calc(146px + env(safe-area-inset-bottom))}
  .has-cartbar .sf-foot{padding-bottom:calc(200px + env(safe-area-inset-bottom))}
}
@media(min-width:861px){.has-cartbar .wafloat{bottom:92px}}
.howbuy{background:var(--store-surface);border-top:1px solid var(--line);margin-top:26px;padding:36px 18px 10px;text-align:center}
.hb-eyebrow{color:var(--store-highlight);font-weight:900;letter-spacing:2.5px;font-size:12px;text-transform:uppercase}
.howbuy h2{color:var(--title);font-size:clamp(24px,5vw,32px);margin:6px 0;font-weight:900}
.howbuy>p{color:var(--muted);font-weight:700;font-size:14px;margin:0 0 22px}
.howbuy-grid{display:grid;gap:14px;max-width:640px;margin:0 auto;text-align:left}
@media(min-width:700px){.howbuy-grid{grid-template-columns:1fr 1fr;max-width:880px}}
@media(min-width:1100px){.howbuy-grid{grid-template-columns:repeat(4,1fr);max-width:1200px}}
.hb-card{position:relative;display:flex;gap:14px;align-items:center;background:var(--bg);border:1.5px solid var(--line);border-radius:20px;padding:22px 16px;min-height:112px;box-shadow:var(--shadow)}
.hb-num{position:absolute;top:-11px;left:16px;width:24px;height:24px;border-radius:50%;background:var(--cta);color:var(--store-on-primary);font-size:13px;font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow)}
.hb-ic{width:58px;height:58px;flex:none;border-radius:18px;background:var(--cta);color:var(--store-on-primary);display:flex;align-items:center;justify-content:center}
.hb-tx b{display:block;color:var(--title);font-size:16.5px}
.hb-tx small{color:var(--muted);font-weight:700;font-size:13.5px}
.sfsocial{display:flex;gap:12px;justify-content:center;padding:20px 16px 4px;background:var(--store-surface)}
.sfsocial a{width:48px;height:48px;border-radius:50%;background:var(--cta);color:var(--store-on-primary);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow)}
/* ============ VITRINE PÚBLICA: cupons disponíveis ============ */
.couponsec{margin:14px 0 4px}
.couponsec h4{color:var(--title);font-size:16px;margin:0 0 10px;font-weight:900}
.couponrow{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 10px;scrollbar-width:thin}
.coupon{flex:0 0 70%;scroll-snap-align:start;display:flex;gap:12px;align-items:center;background:var(--store-surface);border:1.5px dashed var(--cta);border-radius:16px;padding:12px 14px;box-shadow:var(--shadow);cursor:pointer;font-family:inherit;text-align:left;color:inherit}
.coupon svg{flex:none;color:var(--cta)}
.coupon span{min-width:0}
.coupon b{display:block;color:var(--title);font-size:15px;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.coupon small{color:var(--cta);font-weight:900;font-size:14px}
.coupon em{display:block;font-style:normal;color:var(--muted);font-size:11.5px;font-weight:700}
@media(min-width:861px){.couponrow{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));overflow:visible}.coupon{flex:none}}
.nicho figcaption b{display:block;color:var(--title);font-size:15px}
.nicho figcaption span{color:var(--muted);font-size:12.5px;font-weight:700}
.wrap.benefits{display:block;padding:44px 16px 12px;text-align:center}
.benefits h2{color:var(--title);font-size:clamp(22px,3.4vw,32px);margin:0 0 8px;font-weight:900;font-family:'Fraunces',Georgia,serif}
.bonus{padding:30px 16px 8px}
.bonus-card{background:linear-gradient(135deg,#fff7ed,#fde3ec);border:2px dashed var(--gold);border-radius:24px;padding:32px 24px;text-align:center;box-shadow:var(--shadow);max-width:760px;margin:0 auto}
.bonus-card h2{color:var(--title);margin:12px 0 8px;font-family:'Fraunces',Georgia,serif}
.bonus-card p{color:#7c5a66;margin:0 0 18px}
/* oferta */
.offer{padding:34px 16px 8px;text-align:center}
.offer h2{color:var(--title);font-size:clamp(24px,3.6vw,36px);margin:0 0 8px;font-weight:900;font-family:'Fraunces',Georgia,serif}
.offer-card{position:relative;background:#fff;border:3px solid var(--cta);border-radius:28px;box-shadow:0 24px 60px rgba(219,39,119,.25);padding:38px 26px;max-width:560px;margin:24px auto 0}
.offer-card .hot-tag{position:absolute;top:-14px;left:50%;transform:translateX(-50%)}
.offer-card h3{color:var(--title2);font-size:20px;margin:6px 0 4px}
.offer-price s{color:var(--muted);font-size:17px;font-weight:700}
.offer-price b{display:block;color:var(--title);font-size:clamp(52px,9vw,72px);line-height:1;font-weight:900}
.offer-price small{color:var(--muted);font-weight:800}
.offer-list{list-style:none;margin:20px 0;padding:0;text-align:left}
.offer-list li{position:relative;padding:8px 0 8px 32px;font-size:14.5px;font-weight:700;color:var(--title2);border-bottom:1px solid #fbe9f0}
.offer-list li::before{content:'✓';position:absolute;left:2px;color:#16a34a;font-weight:900}
.offer-card .btn.block{margin-top:10px}
.offer-note{color:var(--muted);font-size:12.5px;font-weight:700;margin:14px 0 0}
/* garantia */
.guarantee{padding:26px 16px 8px}
.guarantee-card{display:flex;gap:16px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:26px 22px;max-width:760px;margin:0 auto}
.guarantee-card h2{color:var(--title);margin:0 0 6px;font-size:21px;font-family:'Fraunces',Georgia,serif}
.guarantee-card p{margin:0;color:#7c5a66;font-size:14.5px}
/* faq */
.faq{padding:30px 16px 8px;max-width:760px}
.faq h2{color:var(--title);text-align:center;font-size:clamp(22px,3.4vw,32px);margin:0 0 18px;font-weight:900;font-family:'Fraunces',Georgia,serif}
.faq details{background:#fff;border:1px solid var(--line);border-radius:16px;padding:15px 18px;margin-bottom:10px;box-shadow:var(--shadow)}
.faq summary{cursor:pointer;font-weight:900;color:var(--title2);font-size:15px}
.faq details p{margin:10px 0 0;color:#7c5a66;font-size:14px}
@media(max-width:640px){.trow{padding:20px 16px}.guarantee-card{flex-direction:column}.offer-card{padding:32px 18px}}
/* checkout mp */
.mp-wrap{min-height:100vh;display:flex;justify-content:center;padding:20px;background:linear-gradient(135deg,#ffe4ee,#fff,#fff7ed)}
.mp-shell{width:100%;max-width:980px;margin:auto;display:flex;flex-direction:column;gap:18px}
.mp-banner{border-radius:24px;padding:26px;color:#fff;background:linear-gradient(135deg,#ff5fa2,#e84a7a 45%,#c026d3);box-shadow:0 18px 40px rgba(232,74,122,.28);overflow:hidden}
.mp-banner-in{display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.mp-banner-logo{color:#fff;font-weight:900;font-size:22px;text-decoration:none}
.mp-banner-logo span{color:#ffe3ef}
.mp-selo{display:inline-block;margin-top:10px;background:rgba(255,255,255,.22);border:1px solid rgba(255,255,255,.45);color:#fff;font-size:11px;font-weight:900;letter-spacing:1px;border-radius:99px;padding:4px 12px}
.mp-banner-copy h1{color:#fff;margin:12px 0 6px;font-size:clamp(23px,3.6vw,34px);font-family:'Fraunces',Georgia,serif;font-weight:900}
.mp-banner-copy p{margin:0;color:#ffe9f2;font-size:14.5px;max-width:520px}
.mp-banner-price{text-align:right;display:flex;flex-direction:column;gap:2px;min-width:150px}
.mp-banner-price s{color:#ffd0e2;font-size:15px}
.mp-banner-price b{color:#fff;font-size:clamp(34px,5vw,52px);line-height:1;font-weight:900}
.mp-banner-price small{color:#ffe9f2;font-size:12.5px}
.mp-bn{width:100%}
.mp-bn img{display:block;width:100%;height:auto;border-radius:24px}
.mp-only-desk{display:none}
.mp-hide-desk{display:block}
@media(min-width:760px){.mp-only-desk{display:block}.mp-only-mob{display:none}.mp-hide-desk{display:none}.mp-hide-mob{display:block}}
@media(max-width:759px){.mp-hide-mob{display:none}}
.mp-grid{display:grid;gap:18px;align-items:start}
@media(min-width:900px){.mp-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.85fr)}}
.mp-main{display:flex;flex-direction:column;gap:16px;min-width:0}
.mp-side{min-width:0}
@media(min-width:900px){.mp-side{position:sticky;top:16px}}
.mp-shell.mp-pay-stage .mp-side{display:none}
.mp-shell.mp-pay-stage .mp-grid{grid-template-columns:minmax(0,1fr)}
.mp-sec{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:var(--shadow)}
.mp-sec-t{display:flex;align-items:center;gap:10px;margin:0 0 6px;color:var(--title2);font-size:18px;font-weight:900}
.mp-num{width:26px;height:26px;border-radius:50%;background:var(--cta);color:#fff;font-size:14px;font-weight:900;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.mp-sec-s{margin:0 0 12px;color:#8a6b77;font-size:13.5px}
.mp-pay{display:flex;align-items:center;gap:12px;border:1.5px solid var(--line);border-radius:16px;padding:14px;background:#fff}
.mp-pay.sel{border-color:var(--cta);background:var(--cta-soft)}
.mp-pay-ic{width:42px;height:42px;border-radius:12px;background:#fff;color:var(--cta);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:12px;border:1px solid var(--cta);flex:0 0 auto}
.mp-pay-tx{display:flex;flex-direction:column}
.mp-pay-tx b{color:var(--title2)}
.mp-pay-tx small{color:#8a6b77}
.mp-radio{width:20px;height:20px;border-radius:50%;border:2px solid var(--cta);margin-left:auto;flex:0 0 auto;position:relative}
.mp-pay.sel .mp-radio::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--cta)}
.mp-below{margin:10px 0 0;color:#96727f;font-size:12.5px}
.mp-sum-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:var(--shadow)}
.mp-sum-card h3{margin:0 0 12px;color:var(--title2)}
.mp-sum-item{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);color:#7c5a66;font-size:14.5px}
.mp-sum-item b{color:var(--title)}
.mp-sum-line{display:flex;justify-content:space-between;gap:10px;padding:6px 0;color:#7c5a66;font-size:14px}
.mp-sum-total{margin-top:6px;padding-top:12px;border-top:1.5px solid var(--line)}
.mp-sum-total b{color:var(--title);font-size:22px}
.mp-sum-card .btn{margin-top:14px}
.mp-secure{margin:12px 0 0;text-align:center;color:#96727f;font-size:12px}
.mp-err{background:#fee2e2;color:#b91c1c;font-weight:800;border-radius:14px;padding:12px 14px;font-size:14px}
.mp-ok{color:#15803d;font-weight:800;font-size:14px}
.mp-pix{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px 20px;box-shadow:var(--shadow)}
.mp-pix h2{color:var(--title)}
.mp-qr{display:block;width:220px;max-width:70vw;height:auto;margin:14px auto;border:1px solid var(--line);border-radius:16px;padding:10px;background:#fff}
.mp-spin{width:44px;height:44px;margin:14px auto 2px;border-radius:50%;border:3px solid var(--cta-soft);border-top-color:var(--cta);animation:mpspin .8s linear infinite}
@keyframes mpspin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.mp-spin{animation-duration:1.6s}}
.mp-total{display:flex;justify-content:space-between;align-items:center;background:var(--cta-soft);border-radius:14px;padding:12px 16px;margin:14px 0}
.mp-total b{color:var(--title);font-size:22px}
.mp-code{width:100%;font-size:12.5px;word-break:break-all;border:1.5px solid var(--line);border-radius:14px;padding:12px;background:#fff7ed}
.mp-main button[disabled],.mp-side button[disabled]{opacity:.6;cursor:wait}
@media(max-width:560px){.mp-banner-price{text-align:left}.mp-banner-in{gap:12px}}
/* master > banner do checkout */
.mp-mode{display:flex;gap:18px;flex-wrap:wrap;margin:4px 0 14px}
.mp-mode-opt{display:flex;align-items:center;gap:8px;font-weight:800;color:var(--title2);font-size:14px;cursor:pointer}
.mp-mode-opt input{width:auto;flex:0 0 auto;padding:0;margin:0}
.cb-fileprev img{display:block;max-width:220px;margin:8px 0 0;border:1px solid var(--line);border-radius:12px}
.cb-prev{margin-top:14px}
.cb-prev-grid{display:grid;gap:14px}
@media(min-width:820px){.cb-prev-grid{grid-template-columns:1fr 1fr}}
.cb-prev-box{border:1px solid var(--line);border-radius:16px;padding:12px;background:#fff7fa}
.cb-prev-lb{display:block;margin-bottom:8px;color:#96727f;font-size:11px;font-weight:900;letter-spacing:.8px;text-transform:uppercase}
.cb-prev-body img{display:block;width:100%;height:auto;border-radius:16px}
.cb-prev-body .mp-banner{padding:18px}
.cb-prev-body .mp-banner-copy p{font-size:12.5px}

/* ============ TEMAS DO PAINEL DO LOJISTA ============ */
:root{
  --primary:#e84a7a; --primary-dark:#9d174d; --primary-rgb:232,74,122; --accent:#f72585; --accent-text:#9d174d;
  --bg-soft:#fdf0f4; --surface:#ffffff; --surface-deep:#ffffff; --surface-secondary:#fde3ec;
  --border:#f3d3de; --line-soft:#fbe9f0; --chart-label:#b98a97; --text:#3d2b33; --text-muted:#9a7b86;
  --gradient-primary:linear-gradient(135deg,#e84a7a,#db2777);
}
body.panel-themed[data-panel-theme="blue"]{
  --primary:#2f80ed; --primary-dark:#175cd3; --primary-rgb:47,128,237; --accent:#4096ff; --accent-text:#175cd3;
  --bg:#f1f7ff; --bg2:#e7f1ff; --bg-soft:#f1f7ff; --card:#ffffff;
  --surface:#ffffff; --surface-deep:#ffffff; --surface-secondary:#e7f1ff;
  --border:#d6e6fb; --line:#d6e6fb; --line-soft:#eaf3ff; --chart-label:#5b7c99;
  --text:#163a5f; --ink:#163a5f; --text-muted:#5b7c99; --muted:#5b7c99;
  --title:#175cd3; --title2:#2f80ed; --cta:#2f80ed; --cta2:#175cd3; --cta-soft:#e7f1ff;
  --gradient-primary:linear-gradient(135deg,#4096ff,#175cd3);
  --shadow:0 8px 28px rgba(47,128,237,.14);
}
body.panel-themed[data-panel-theme="green"]{
  --primary:#20a464; --primary-dark:#087443; --primary-rgb:32,164,100; --accent:#35c77a; --accent-text:#087443;
  --bg:#f0fbf5; --bg2:#e4f7ec; --bg-soft:#f0fbf5; --card:#ffffff;
  --surface:#ffffff; --surface-deep:#ffffff; --surface-secondary:#e4f7ec;
  --border:#cfeddb; --line:#cfeddb; --line-soft:#e8f9f0; --chart-label:#4f7d66;
  --text:#145a3a; --ink:#145a3a; --text-muted:#4f7d66; --muted:#4f7d66;
  --title:#087443; --title2:#20a464; --cta:#20a464; --cta2:#087443; --cta-soft:#e4f7ec;
  --gradient-primary:linear-gradient(135deg,#35c77a,#087443);
  --shadow:0 8px 28px rgba(32,164,100,.14);
}
body.panel-themed[data-panel-theme="orange"]{
  --primary:#f97316; --primary-dark:#c2410c; --primary-rgb:249,115,22; --accent:#fb923c; --accent-text:#c2410c;
  --bg:#fff7ed; --bg2:#ffedd5; --bg-soft:#fff7ed; --card:#ffffff;
  --surface:#ffffff; --surface-deep:#ffffff; --surface-secondary:#ffedd5;
  --border:#fbddbf; --line:#fbddbf; --line-soft:#fff1e0; --chart-label:#9a6b4d;
  --text:#7c2d12; --ink:#7c2d12; --text-muted:#9a6b4d; --muted:#9a6b4d;
  --title:#c2410c; --title2:#f97316; --cta:#f97316; --cta2:#c2410c; --cta-soft:#ffedd5;
  --gradient-primary:linear-gradient(135deg,#fb923c,#ea580c);
  --shadow:0 8px 28px rgba(249,115,22,.14);
}
body.panel-themed[data-panel-theme="dark"]{
  --primary:#7c5cfc; --primary-dark:#5b3fd6; --primary-rgb:124,92,252; --accent:#38bdf8; --accent-text:#c7d2fe;
  --bg:#0b1220; --bg2:#111827; --bg-soft:#111827; --card:#172033;
  --surface:#172033; --surface-deep:#111827; --surface-secondary:#1e293b;
  --border:#2b3a50; --line:#2b3a50; --line-soft:#223149; --chart-label:#94a3b8;
  --text:#f8fafc; --ink:#f8fafc; --text-muted:#94a3b8; --muted:#94a3b8;
  --title:#f8fafc; --title2:#c7d2fe; --cta:#7c5cfc; --cta2:#5b3fd6; --cta-soft:#2a2350;
  --gradient-primary:linear-gradient(135deg,#2563eb,#7c3aed);
  --shadow:0 8px 28px rgba(0,0,0,.45);
}
body.panel-themed:not([data-panel-theme="pink"]) .side,
body.panel-themed:not([data-panel-theme="pink"]) .drawer .box{background:var(--surface-deep)}
body.panel-themed:not([data-panel-theme="pink"]) .topm,
body.panel-themed:not([data-panel-theme="pink"]) .menu-btn,
body.panel-themed:not([data-panel-theme="pink"]) .kpi,
body.panel-themed:not([data-panel-theme="pink"]) .panel,
body.panel-themed:not([data-panel-theme="pink"]) .dcard,
body.panel-themed:not([data-panel-theme="pink"]) .mbox,
body.panel-themed:not([data-panel-theme="pink"]) .iconbtn,
body.panel-themed:not([data-panel-theme="pink"]) .periodsel,
body.panel-themed:not([data-panel-theme="pink"]) .short,
body.panel-themed:not([data-panel-theme="pink"]) .eye-mini,
body.panel-themed:not([data-panel-theme="pink"]) details.mini .mm,
body.panel-themed:not([data-panel-theme="pink"]) .preset,
body.panel-themed:not([data-panel-theme="pink"]) .pm-chip,
body.panel-themed:not([data-panel-theme="pink"]) .stk-card,
body.panel-themed:not([data-panel-theme="pink"]) .bud-card,
body.panel-themed:not([data-panel-theme="pink"]) .gal,
body.panel-themed:not([data-panel-theme="pink"]) .pd-info,
body.panel-themed:not([data-panel-theme="pink"]) .cart-item,
body.panel-themed:not([data-panel-theme="pink"]) .sum,
body.panel-themed:not([data-panel-theme="pink"]) .var-opt,
body.panel-themed:not([data-panel-theme="pink"]) .chip,
body.panel-themed:not([data-panel-theme="pink"]) .qty button,
body.panel-themed:not([data-panel-theme="pink"]) .qmini button{background:var(--surface);border-color:var(--border)}
body.panel-themed:not([data-panel-theme="pink"]) .side{border-right-color:var(--border)}
body.panel-themed:not([data-panel-theme="pink"]) .topm{border-bottom-color:var(--border)}
body.panel-themed:not([data-panel-theme="pink"]) .mi{color:var(--text-muted)}
body.panel-themed:not([data-panel-theme="pink"]) .mi svg{color:var(--primary)}
body.panel-themed:not([data-panel-theme="pink"]) .mi:hover{background:var(--bg-soft)}
body.panel-themed:not([data-panel-theme="pink"]) .mi.active{background:var(--surface-secondary);color:var(--accent-text)}
body.panel-themed:not([data-panel-theme="pink"]) .mi.active svg{color:var(--primary)}
body.panel-themed:not([data-panel-theme="pink"]) .kpi-ic,
body.panel-themed:not([data-panel-theme="pink"]) .rank-ph,
body.panel-themed:not([data-panel-theme="pink"]) .dcard h3 svg{color:var(--accent-text)}
body.panel-themed:not([data-panel-theme="pink"]) .menu-btn,
body.panel-themed:not([data-panel-theme="pink"]) .iconbtn{color:var(--text);border-color:var(--border)}
body.panel-themed:not([data-panel-theme="pink"]) .iconbtn:hover{border-color:var(--primary);color:var(--primary)}
body.panel-themed:not([data-panel-theme="pink"]) .eye-mini{color:var(--text-muted)}
body.panel-themed:not([data-panel-theme="pink"]) details.mini .mm a{color:var(--text)}
body.panel-themed:not([data-panel-theme="pink"]) details.mini .mm a:hover{background:var(--bg-soft);color:var(--primary)}
body.panel-themed:not([data-panel-theme="pink"]) .short{color:var(--accent-text)}
body.panel-themed:not([data-panel-theme="pink"]) .short.fill{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 6px 18px rgba(var(--primary-rgb),.35)}
body.panel-themed:not([data-panel-theme="pink"]) .periodsel,
body.panel-themed:not([data-panel-theme="pink"]) .periodsel select{color:var(--accent-text)}
body.panel-themed:not([data-panel-theme="pink"]) .pill{background:var(--surface-secondary);color:var(--accent-text)}
body.panel-themed:not([data-panel-theme="pink"]) .pill.green{background:#dcfce7;color:#15803d}
body.panel-themed:not([data-panel-theme="pink"]) .pill.red{background:#fee2e2;color:#b91c1c}
body.panel-themed:not([data-panel-theme="pink"]) .pill.gold{background:#fef3c7;color:#92400e}
body.panel-themed:not([data-panel-theme="pink"]) .promo{background:var(--gradient-primary)}
body.panel-themed:not([data-panel-theme="pink"]) .method-bar span{background:var(--gradient-primary)}
body.panel-themed:not([data-panel-theme="pink"]) .btn{box-shadow:0 6px 18px rgba(var(--primary-rgb),.35)}
body.panel-themed:not([data-panel-theme="pink"]) .btn.ghost{background:var(--surface);color:var(--primary);border-color:var(--primary);box-shadow:none}
body.panel-themed:not([data-panel-theme="pink"]) .btn.wa{box-shadow:0 6px 18px rgba(34,197,94,.35)}
body.panel-themed:not([data-panel-theme="pink"]) .iconbtn.ok{color:#15803d;border-color:#bbf7d0}
body.panel-themed:not([data-panel-theme="pink"]) .lg-row{color:var(--text-muted)}
body.panel-themed:not([data-panel-theme="pink"]) .chart-empty svg{color:var(--border)}
body.panel-themed:not([data-panel-theme="pink"]) .linkbox{background:var(--bg-soft);border-color:var(--border)}
body.panel-themed:not([data-panel-theme="pink"]) .linkbox span{color:var(--accent-text)}
body.panel-themed:not([data-panel-theme="pink"]) input,
body.panel-themed:not([data-panel-theme="pink"]) select,
body.panel-themed:not([data-panel-theme="pink"]) textarea{background:var(--surface);border-color:var(--border);color:var(--text)}
body.panel-themed:not([data-panel-theme="pink"]) input:focus,
body.panel-themed:not([data-panel-theme="pink"]) select:focus,
body.panel-themed:not([data-panel-theme="pink"]) textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--surface-secondary)}
body.panel-themed:not([data-panel-theme="pink"]) td{border-bottom-color:var(--border)}
body.panel-themed:not([data-panel-theme="pink"]) .rank,
body.panel-themed:not([data-panel-theme="pink"]) .ord-item,
body.panel-themed:not([data-panel-theme="pink"]) .method-row,
body.panel-themed:not([data-panel-theme="pink"]) .notif{border-bottom-color:var(--border)}
body.panel-themed:not([data-panel-theme="pink"]) .gal-item > img,
body.panel-themed:not([data-panel-theme="pink"]) .bn-thumb{background:var(--surface-secondary);border-color:var(--border)}

/* Botão e popover do seletor de tema */
.theme-btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:0;line-height:1.05;padding:5px 12px;white-space:nowrap;border:1.5px solid var(--border);background:var(--surface);color:var(--title2);border-radius:10px;font-size:13px;font-weight:800;cursor:pointer}
.theme-btn:hover{border-color:var(--primary);color:var(--accent-text)}
.theme-btn small{font-size:10px;font-weight:800;color:var(--text-muted);letter-spacing:.1px}
.theme-btn:hover small{color:var(--accent-text)}
.topm .iconbtn{white-space:nowrap}
.theme-pop{position:fixed;z-index:120;width:min(300px,calc(100vw - 20px));background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:0 18px 50px rgba(16,24,39,.22);padding:12px;color:var(--text)}
.theme-pop[hidden]{display:none}
.theme-pop-head{padding:4px 6px 10px}
.theme-pop-head b{display:block;font-size:14px;color:var(--title)}
.theme-pop-head span{display:block;font-size:11.5px;color:var(--text-muted);font-weight:700;margin-top:2px;line-height:1.35}
.theme-opt{display:flex;align-items:center;gap:10px;width:100%;border:1.5px solid transparent;background:transparent;border-radius:12px;padding:9px 10px;font-weight:800;font-size:13.5px;color:var(--text);cursor:pointer;font-family:inherit;text-align:left}
.theme-opt:hover{background:var(--bg-soft)}
.theme-opt[aria-checked="true"]{border-color:var(--primary);background:var(--surface-secondary)}
.theme-swatch{width:26px;height:26px;border-radius:50%;flex:none;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12);background:var(--sw)}
.theme-opt .tname{flex:1;display:flex;flex-direction:column;line-height:1.2}
.theme-opt .tname small{font-size:10.5px;color:var(--text-muted);font-weight:700}
.theme-opt .tcheck{color:var(--accent-text);font-weight:900;opacity:0}
.theme-opt[aria-checked="true"] .tcheck{opacity:1}
body.panel-themed[data-panel-theme="dark"] .theme-swatch{box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
.topm-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:560px){
  .topm{gap:6px;padding:10px 12px}
  .topm-role{display:none}
  .theme-btn{padding:8px 10px;font-size:12.5px}
  .theme-btn small{display:none}
}