
/* ===== loja pública ===== */
/* environe.pt/loja — mockups LojaInicio e LojaCheckout. Páginas em environe_app/src/site/loja/ (prefixo .lj-).
   Usa os tokens de publico.css (--sp-*). */
body.lj{background:var(--sp-bg)}
.lj-main{padding-bottom:72px}
.lj .sp-wrap{max-width:1440px}

/* faixa superior */
.lj-strip{background:var(--sp-orange);color:var(--sp-ink);font-size:14px;font-weight:600}
.lj-strip-in{min-height:36px;padding:6px 16px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 24px;text-align:center}
.lj-strip i{font-style:normal}
.lj-strip small{font-size:12px;font-weight:500}
.lj .lj-strip a{color:var(--sp-forest);text-decoration:underline}

/* cabeçalho */
.lj-top{background:var(--sp-forest);color:#fff;position:relative;z-index:20}
.lj-top-in{min-height:84px;display:flex;align-items:center;gap:28px;padding-top:12px;padding-bottom:12px}
.lj-logo{display:flex;align-items:flex-end;gap:8px;flex-shrink:0}
.lj-logo img{height:28px;width:auto;display:block}
.lj-logo span{font:800 12px var(--sp-h);letter-spacing:2px;color:var(--sp-orange);line-height:1;padding-bottom:2px}
.lj-search{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:10px;height:48px;padding:0 6px 0 18px;border-radius:999px;background:#fff;color:#5C6A61}
.lj-search svg{flex-shrink:0}
.lj-search input{flex:1 1 auto;min-width:0;border:0;outline:0;font:400 17px var(--sp-b);background:transparent;color:var(--sp-ink);height:100%}
.lj-search input::-webkit-search-cancel-button{display:none}
.lj-search button{height:36px;padding:0 18px;border:0;border-radius:999px;background:var(--sp-orange);color:var(--sp-ink);font:600 15px var(--sp-b);cursor:pointer;flex-shrink:0}
.lj-search:focus-within{box-shadow:0 0 0 3px rgba(245,158,11,.5)}
.lj-top-r{display:flex;align-items:center;gap:20px;font-size:15px;font-weight:600;flex-shrink:0}
.lj .lj-acc{display:flex;align-items:center;gap:6px;color:#E3F2E7}
.lj .lj-acc:hover{color:#fff}
.lj .lj-cartbtn{display:flex;align-items:center;gap:8px;height:44px;padding:0 14px 0 16px;border-radius:999px;background:#14502F;color:#fff}
.lj .lj-cartbtn:hover{background:#1A5E38;color:#fff}
.lj-cartbtn b{min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--sp-orange);color:var(--sp-ink);font-size:12px;display:flex;align-items:center;justify-content:center}
.lj-cartbtn.bump b{animation:ljbump .5s}
@keyframes ljbump{40%{transform:scale(1.35)}}

/* checkout: passos */
.lj-top-co .lj-top-in{min-height:72px}
.lj-steps{flex:1;display:flex;justify-content:center;align-items:center;gap:12px;font-size:15px;font-weight:600;color:#9DBBA8}
.lj-steps i{font-style:normal;color:#4E7A60}
.lj-steps .on{color:#fff}
.lj .lj-steps a{color:#9DBBA8}
.lj .lj-steps a:hover{color:#fff}
.lj-steps .n{display:none}
.lj-secure{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--sp-mint);flex-shrink:0}

/* categorias */
.lj-cats{background:#fff;border-bottom:1px solid var(--sp-line)}
.lj-cats-in{height:52px;display:flex;align-items:center;gap:30px}
.lj-cats-l{display:flex;align-items:center;gap:30px;overflow-x:auto;scrollbar-width:none;min-width:0;flex:1 1 auto;height:100%}
.lj-cats-l::-webkit-scrollbar{display:none}
.lj .lj-cats a{color:var(--sp-ink-2);font-size:16px;font-weight:500;white-space:nowrap;display:flex;align-items:center;height:100%;border-bottom:2px solid transparent}
.lj .lj-cats-l a:first-child{color:var(--sp-ink);font-weight:600}
.lj .lj-cats a.on{color:var(--sp-forest);border-bottom-color:var(--sp-orange)}
.lj .lj-cats a:hover{color:var(--sp-forest)}
.lj .lj-cats .lj-cats-shops{color:var(--sp-orange-d);font-weight:600;flex-shrink:0}

.lj-flash{margin-top:20px}
.lj-closed{margin-top:20px;background:var(--sp-cream);color:var(--sp-brown)}

/* início: destaque */
.lj-hero{padding-top:40px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.lj-hero-main{grid-column:span 2;min-height:360px;padding:48px;border-radius:24px;background:var(--sp-forest);color:#fff;display:flex;flex-direction:column;justify-content:center;gap:18px}
.lj-pill{align-self:flex-start;padding:5px 12px;border:1px solid var(--sp-orange);border-radius:999px;font:700 12px var(--sp-h);letter-spacing:2px;text-transform:uppercase;color:var(--sp-orange)}
.lj-hero-main h1{font:800 54px/1.05 var(--sp-h);letter-spacing:-1.5px;max-width:640px}
.lj-hero-main h1 span{color:var(--sp-orange)}
.lj-hero-main p{font-size:19px;line-height:1.5;color:var(--sp-mint);max-width:560px}
.lj-hero-btns{display:flex;flex-wrap:wrap;gap:12px;padding-top:6px}
.lj-hero-btns .sp-btn{height:50px}
.lj-hero-side{display:flex;flex-direction:column;gap:20px}
.lj .lj-hcard{flex:1 1 auto;padding:28px;border-radius:24px;display:flex;flex-direction:column;justify-content:space-between;gap:10px;color:var(--sp-forest)}
.lj-hcard.or{background:var(--sp-orange)}
.lj-hcard.gr{background:#E3F2E7}
.lj-hcard-e{font:800 12px var(--sp-h);letter-spacing:2px;text-transform:uppercase}
.lj-hcard.gr .lj-hcard-e,.lj-hcard.gr .lj-hcard-l{color:var(--sp-green)}
.lj-hcard-t{font:800 26px/1.15 var(--sp-h)}
.lj-hcard-t.s{font-size:22px;line-height:1.2}
.lj-hcard-l{font-size:16px;font-weight:600}
.lj .lj-hcard:hover{filter:brightness(.98)}

.lj-catgrid{padding-top:32px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.lj .lj-catc{padding:18px;border-radius:16px;background:#fff;border:1px solid var(--sp-line);display:flex;flex-direction:column;gap:10px;color:var(--sp-ink)}
.lj .lj-catc:hover{border-color:#F3C877;color:var(--sp-ink)}
.lj-catc-i{width:44px;height:44px;border-radius:12px;background:var(--sp-cream);color:var(--sp-orange-d);display:flex;align-items:center;justify-content:center}
.lj-catc b{font-weight:600}

.lj-sec{padding-top:56px;display:flex;flex-direction:column;gap:22px}
.lj-sec-h{display:flex;align-items:flex-end;gap:16px}
.lj-sec-h h2,.lj-h1{flex-grow:1;font:800 34px/1.15 var(--sp-h);color:var(--sp-forest);letter-spacing:-.5px}
.lj-sec-h a{font-size:16px;font-weight:600;white-space:nowrap}
.lj-note{color:var(--sp-muted);font-size:15px}

/* cartões de produto */
.lj-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.lj .lj-card{background:#fff;border:1px solid var(--sp-line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;color:var(--sp-ink);transition:border-color .15s,box-shadow .15s}
.lj .lj-card:hover{border-color:#CFC9B6;box-shadow:0 6px 20px rgba(13,58,34,.07);color:var(--sp-ink)}
.lj-card-img{height:220px;background:#F1EEE4;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.lj-card-img img{width:100%;height:100%;object-fit:cover;display:block}
.lj-card-img .lj-badge{position:absolute;top:12px;left:12px}
.lj-sale{position:absolute;top:12px;right:12px;padding:3px 8px;border-radius:6px;background:var(--sp-red);color:#fff;font-size:12px;font-weight:700}
.lj-noimg{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#B9B29C;background:#F1EEE4}
.lj-card-b{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.lj-by{font-size:13px;color:#5C6A61}
.lj-by .env{color:var(--sp-green)}
.lj-by .sel{color:var(--sp-orange-d)}
.lj-card-t{font:600 17px/1.3 var(--sp-b);color:var(--sp-ink)}
.lj-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;padding-top:4px}
.lj-price b{font:800 22px var(--sp-h);color:var(--sp-forest)}
.lj-price s{font-size:15px;color:var(--sp-muted)}
.lj-quote{font:700 16px var(--sp-h);color:var(--sp-orange-d)}
.lj-avail{font-size:13px;font-weight:600;color:var(--sp-green);margin-top:auto}
.lj-avail.soft{color:var(--sp-ink-2)}
.lj-avail.out{color:var(--sp-red)}
.lj-badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:6px;font-size:12px;font-weight:600;line-height:1.4;white-space:nowrap}
.lj-badge.environe{background:var(--sp-forest);color:#fff}
.lj .lj-badge.seller{background:var(--sp-orange);color:var(--sp-ink)}
.lj-badge.dropship{background:#E3F2E7;color:var(--sp-forest)}

.lj-empty{padding:48px 24px;border:1px dashed #D9D3C1;border-radius:18px;background:#fff;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}
.lj-empty-i{width:56px;height:56px;border-radius:16px;background:var(--sp-cream);color:var(--sp-orange-d);display:flex;align-items:center;justify-content:center}
.lj-empty h3{font:800 20px var(--sp-h);color:var(--sp-forest)}
.lj-empty p{color:var(--sp-ink-2);max-width:520px}
.lj-empty .sp-btn{margin-top:8px}

/* lojas */
.lj-shops{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.lj .lj-shop{padding:22px;background:#fff;border:1px solid var(--sp-line);border-radius:18px;display:flex;gap:16px;align-items:center;color:var(--sp-ink)}
.lj .lj-shop:hover{border-color:#CFC9B6;color:var(--sp-ink)}
.lj-shop-av{width:64px;height:64px;border-radius:16px;background:var(--sp-cream);color:var(--sp-orange-d);font:800 22px var(--sp-h);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}
.lj-shop-av.env{background:#E3F2E7;color:var(--sp-green)}
.lj-shop-av img{width:100%;height:100%;object-fit:cover}
.lj-shop-b{display:flex;flex-direction:column;min-width:0}
.lj-shop-b b{font-size:18px;font-weight:600}
.lj-shop-b span{font-size:14px;color:#5C6A61}
.lj-shop-b small{font-size:13px;color:var(--sp-green);font-weight:600}
.lj .lj-shop-join{border:2px dashed #F3C877;background:#FFF9EE}
.lj-shop-join .lj-shop-av{background:var(--sp-orange);color:var(--sp-forest);font-size:30px}
.lj-shop-join .lj-shop-b span{color:var(--sp-ink-2)}

.lj-trust{margin-top:56px;padding:40px 48px;border-radius:24px;background:#fff;border:1px solid var(--sp-line);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.lj-trust h3{font:800 18px var(--sp-h);color:var(--sp-forest);margin-bottom:6px}
.lj-trust p{font-size:15px;line-height:1.5;color:var(--sp-ink-2)}

/* linha própria do rodapé */
.lj-footline{background:var(--sp-forest);border-bottom:1px solid var(--sp-forest-3);margin-top:auto}
.lj-footline-in{min-height:88px;display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding-top:20px;padding-bottom:20px}
.lj-footline nav{margin-left:auto;display:flex;flex-wrap:wrap;gap:8px 24px;font-size:15px}
.lj .lj-footline nav a{color:var(--sp-mint)}
.lj .lj-footline nav a:hover{color:#fff}
.lj-footline + .sp-foot{margin-top:0}

/* páginas de lista */
.lj-crumbs{padding-top:24px}
.lj-head{padding-top:14px;display:flex;flex-direction:column;gap:8px}
.lj-head p{color:var(--sp-ink-2);font-size:17px;max-width:760px}
.lj-list{padding-top:24px;display:flex;flex-direction:column;gap:18px}
.lj-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 14px;padding:16px 18px;background:#fff;border:1px solid var(--sp-line);border-radius:16px}
.lj-f{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;color:var(--sp-ink-2);min-width:0}
.lj-f .sp-input{height:42px;font-size:15px;border-radius:10px}
.lj-f select.sp-input{min-width:170px}
.lj-f-price div{display:flex;align-items:center;gap:6px}
.lj-f-price .sp-input{width:84px}
.lj-f-price i{font-style:normal;color:var(--sp-muted)}
.lj-chk{display:flex;align-items:center;gap:8px;height:42px;font-size:15px;font-weight:500;color:var(--sp-ink-2);cursor:pointer}
.lj-chk input{width:18px;height:18px;accent-color:var(--sp-green)}
.lj-f-ord{margin-left:auto}
.lj-f-go{display:flex;align-items:center;gap:14px;font-size:14px;font-weight:600}
.lj-f-go .sp-btn{height:42px}
.lj-count{font-size:14px;color:var(--sp-muted)}
.lj-pager{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;padding-top:12px}
.lj-pager a,.lj-pager span{min-width:40px;height:40px;padding:0 12px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:600;font-size:15px;border:1px solid var(--sp-line);background:#fff}
.lj-pager .on{background:var(--sp-forest);border-color:var(--sp-forest);color:#fff}
.lj-pager .off{color:#B5BDB7}
.lj-pager .gap{border:0;background:none}
.lj-shopres{display:flex;flex-direction:column;gap:12px}
.lj-shopres h2{font:800 20px var(--sp-h);color:var(--sp-forest)}

/* página de loja */
.lj-sh{margin-top:14px;padding:28px;border-radius:24px;background:#fff;border:1px solid var(--sp-line);display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.lj-sh .lj-shop-av{width:84px;height:84px;font-size:28px;border-radius:20px}
.lj-sh-b{flex:1 1 340px;display:flex;flex-direction:column;gap:6px;min-width:0}
.lj-sh-b h1{font:800 32px/1.15 var(--sp-h);color:var(--sp-forest)}
.lj-sh-b p{color:var(--sp-ink-2)}
.lj-sh-facts{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:14px;color:var(--sp-ink-2)}
.lj-sh-facts span{display:inline-flex;align-items:center;gap:6px}
.lj-sh-facts svg{color:var(--sp-green)}

/* produto */
.lj-prod{padding-top:16px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:start}
.lj-gal{display:flex;flex-direction:column;gap:12px;position:sticky;top:16px}
.lj-gal-main{aspect-ratio:4/3;border-radius:22px;background:#F1EEE4;overflow:hidden;display:flex;align-items:center;justify-content:center;border:1px solid var(--sp-line)}
.lj-gal-main img{width:100%;height:100%;object-fit:cover;background:#fff}
.lj-thumbs{display:flex;gap:10px;flex-wrap:wrap}
.lj-thumbs a{width:76px;height:76px;border-radius:12px;overflow:hidden;border:2px solid transparent;background:#fff;display:block}
.lj-thumbs a.on{border-color:var(--sp-green)}
.lj-thumbs img{width:100%;height:100%;object-fit:cover}
.lj-buy{display:flex;flex-direction:column;gap:16px}
.lj-buy h1{font:800 34px/1.15 var(--sp-h);color:var(--sp-forest);letter-spacing:-.5px}
.lj-buy-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:14px;color:var(--sp-muted)}
.lj-buy-sum{font-size:17px;line-height:1.55;color:var(--sp-ink-2)}
.lj-buybox{padding:24px;border-radius:20px;background:#fff;border:1px solid var(--sp-line);display:flex;flex-direction:column;gap:14px}
.lj-buybox .lj-price b{font-size:34px}
.lj-buybox .lj-price s{font-size:17px}
.lj-save{align-self:flex-start;padding:3px 10px;border-radius:999px;background:var(--sp-red-bg);color:var(--sp-red);font-size:13px;font-weight:700}
.lj-vat{font-size:13px;color:var(--sp-muted)}
.lj-facts{display:flex;flex-direction:column;gap:8px;font-size:15px;color:var(--sp-ink-2)}
.lj-facts>div{display:flex;gap:10px;align-items:flex-start}
.lj-facts svg{color:var(--sp-green);flex-shrink:0;margin-top:2px}
.lj-facts b{color:var(--sp-ink);font-weight:600}
.lj-facts .out{color:var(--sp-red);font-weight:600}
.lj-addrow{display:flex;gap:12px;align-items:stretch;flex-wrap:wrap}
.lj-qty{display:flex;align-items:center;border:1px solid var(--sp-field);border-radius:999px;background:#fff;height:56px;flex-shrink:0}
.lj-qty button{width:44px;height:100%;border:0;background:none;color:var(--sp-forest);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:999px}
.lj-qty input{width:46px;border:0;text-align:center;font:600 17px var(--sp-b);color:var(--sp-ink);background:transparent;-moz-appearance:textfield}
.lj-qty input::-webkit-inner-spin-button,.lj-qty input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.lj-qty.sm{height:40px}
.lj-qty.sm button{width:34px}
.lj-qty.sm input{width:36px;font-size:15px}
.lj-addrow .sp-btn{flex:1 1 220px}
.lj-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:60;max-width:calc(100% - 32px);padding:12px 14px 12px 18px;border-radius:14px;background:var(--sp-forest);color:#fff;display:flex;align-items:center;gap:14px;box-shadow:0 10px 30px rgba(0,0,0,.2);font-weight:500}
.lj .lj-toast a{color:var(--sp-orange);font-weight:700;white-space:nowrap}
.lj-toast.err{background:var(--sp-red)}
.lj-sold{font-size:14px;color:var(--sp-ink-2);display:flex;align-items:center;gap:10px;padding-top:4px;border-top:1px solid var(--sp-line-2)}
.lj-sold a{font-weight:600}
.lj-psec{margin-top:48px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px}
.lj-desc h2,.lj-specs h2,.lj-quotebox h2{font:800 22px var(--sp-h);color:var(--sp-forest);margin-bottom:12px}
.lj-desc-t{font-size:16px;line-height:1.65;color:var(--sp-ink-2);white-space:normal}
.lj-desc-t p+p{margin-top:12px}
.lj-specs table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--sp-line);border-radius:14px;overflow:hidden;font-size:15px}
.lj-specs th,.lj-specs td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--sp-line-2);vertical-align:top}
.lj-specs th{width:42%;color:var(--sp-muted);font-weight:500}
.lj-specs tr:last-child th,.lj-specs tr:last-child td{border-bottom:0}
.lj-quotebox{padding:24px;border-radius:20px;background:#fff;border:1px solid var(--sp-line);display:flex;flex-direction:column;gap:14px}
.lj-quotebox p{color:var(--sp-ink-2)}
.lj-form{display:flex;flex-direction:column;gap:14px}
.lj-form .sp-ta{height:auto;padding:12px 14px;resize:vertical}

/* carrinho */
.lj-cart{padding-top:14px;display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:32px;align-items:start}
.lj-box{padding:26px 28px;background:#fff;border:1px solid var(--sp-line);border-radius:20px;display:flex;flex-direction:column;gap:16px}
.lj-box h2{font:800 22px var(--sp-h);color:var(--sp-forest)}
.lj-groups{display:flex;flex-direction:column;gap:18px}
.lj-group{padding:20px 22px;background:#fff;border:1px solid var(--sp-line);border-radius:20px;display:flex;flex-direction:column;gap:12px}
.lj-gh{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;font-weight:600;color:#5C6A61}
.lj-gh .lj-badge{font-size:13px;padding:2px 8px}
.lj-line{display:flex;gap:14px;align-items:center;padding:10px 0;border-top:1px solid var(--sp-line-2)}
.lj-line:first-of-type{border-top:0}
.lj-line-img{width:72px;height:72px;border-radius:12px;overflow:hidden;background:#F1EEE4;flex-shrink:0;display:block}
.lj-line-img img,.lj-line-img .lj-noimg{width:100%;height:100%;object-fit:cover}
.lj-line-img .lj-noimg svg{width:22px;height:22px}
.lj-line-b{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
.lj .lj-line-b a{font-weight:600;color:var(--sp-ink)}
.lj-line-b small{font-size:13px;color:var(--sp-muted)}
.lj-line-q{display:flex;align-items:center;gap:6px}
.lj-line-p{font-weight:700;white-space:nowrap;min-width:92px;text-align:right}
.lj-iconbtn{width:36px;height:36px;border:0;border-radius:10px;background:none;color:var(--sp-muted);cursor:pointer;display:flex;align-items:center;justify-content:center}
.lj-iconbtn:hover{background:var(--sp-red-bg);color:var(--sp-red)}
.lj-upd{height:36px;padding:0 10px;border:1px solid var(--sp-field);border-radius:10px;background:#fff;font:600 13px var(--sp-b);color:var(--sp-forest);cursor:pointer}
.js .lj-upd{display:none}
.lj-gfoot{display:flex;flex-wrap:wrap;gap:4px 16px;justify-content:space-between;font-size:14px;color:#5C6A61;padding-top:10px;border-top:1px solid var(--sp-line-2)}
.lj-free{font-size:13px;color:var(--sp-orange-d);font-weight:600}
.lj-free.ok{color:var(--sp-green)}
.lj-promo{display:flex;gap:8px}
.lj-promo .sp-input{height:42px;font-size:15px;border-radius:10px}
.lj-promo button{height:42px;padding:0 14px;border:1px solid var(--sp-field);border-radius:10px;background:#fff;font:600 14px var(--sp-b);color:var(--sp-forest);cursor:pointer;flex-shrink:0}
.lj-promo-on{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-radius:10px;background:var(--sp-green-bg);color:var(--sp-forest);font-size:14px;font-weight:600}
.lj-promo-on button{border:0;background:none;color:var(--sp-green);font:600 14px var(--sp-b);cursor:pointer;text-decoration:underline}
.lj-sum{display:flex;flex-direction:column;gap:6px;font-size:15px}
.lj-sum>div{display:flex;gap:10px}
.lj-sum>div>span:first-child{flex-grow:1;color:var(--sp-ink-2)}
.lj-sum .disc{color:var(--sp-green)}
.lj-total{display:flex;align-items:baseline;gap:10px;padding-top:10px;border-top:1px solid var(--sp-line)}
.lj-total span{flex-grow:1;font-weight:600}
.lj-total b{font:800 28px var(--sp-h);color:var(--sp-forest);white-space:nowrap}
.lj-fine{font-size:13px;color:#5C6A61;text-align:center}
.lj-aside{position:sticky;top:16px}
.lj-mini{display:flex;flex-direction:column;gap:10px;padding-bottom:16px;border-bottom:1px solid #F1EEE4}
.lj-mini-l{display:flex;gap:12px;align-items:center}
.lj-mini-l .lj-line-img{width:52px;height:52px;border-radius:10px}
.lj-mini-l>div{flex-grow:1;min-width:0}
.lj-mini-l b{font-weight:600;display:block}
.lj-mini-l small{font-size:13px;color:#5C6A61}
.lj-mini-l>span{font-weight:600;white-space:nowrap}
.lj-mini-s{display:flex;font-size:14px;color:#5C6A61}
.lj-mini-s span:first-child{flex-grow:1}

/* checkout */
.lj-co{padding-top:36px;display:grid;grid-template-columns:minmax(0,1fr) 470px;gap:32px;align-items:start}
.lj-co-main{display:flex;flex-direction:column;gap:22px;min-width:0}
.lj-co .sp-grid2{gap:14px}
.lj-co .sp-input{height:46px;font-size:16px}
.lj-co .span2{grid-column:span 2}
.lj-hint{font-size:14px;color:#5C6A61}
.lj-details summary{cursor:pointer;font-weight:600;color:var(--sp-green);list-style:none;display:inline-flex;align-items:center;gap:6px}
.lj-details summary::-webkit-details-marker{display:none}
.lj-details[open] summary{margin-bottom:14px}
.lj-pays{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;border:0;padding:0;margin:0;min-width:0}
.lj-pays legend{padding:0}
.lj-pay{position:relative;cursor:pointer}
.lj-pay input{position:absolute;opacity:0;pointer-events:none}
.lj-pay span{height:74px;padding:6px;border:1px solid var(--sp-field);border-radius:14px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center;font:600 16px var(--sp-b);color:var(--sp-ink)}
.lj-pay small{font-size:12px;font-weight:500;color:#5C6A61;line-height:1.3}
.lj-pay input:checked+span{border:2px solid var(--sp-green);background:#E3F2E7;color:var(--sp-forest)}
.lj-pay input:checked+span small{color:var(--sp-green)}
.lj-pay input:focus-visible+span{outline:3px solid var(--sp-orange);outline-offset:2px}
.lj-mbw{max-width:360px}
.lj-terms{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--sp-ink-2);cursor:pointer}
.lj-terms input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--sp-green);flex-shrink:0}
.lj-paybtn{height:56px;border:0;border-radius:999px;background:var(--sp-orange);color:var(--sp-ink);font:600 18px var(--sp-b);cursor:pointer;width:100%}
.lj-paybtn:hover{filter:brightness(.96)}
.lj-paybtn[disabled]{opacity:.6;cursor:default}
.lj-err{margin-bottom:0}

/* encomenda */
.lj-ord{padding-top:36px;display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:32px;align-items:start}
.lj-ord-h{display:flex;flex-direction:column;gap:8px}
.lj-ord-h h1{font:800 32px/1.15 var(--sp-h);color:var(--sp-forest)}
.lj-ord-h p{color:var(--sp-ink-2);font-size:17px}
.lj-st{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:13px;font-weight:700;white-space:nowrap}
.lj-st.orange{background:var(--sp-cream);color:var(--sp-orange-d)}
.lj-st.green{background:var(--sp-green-bg);color:var(--sp-green)}
.lj-st.dark{background:var(--sp-forest);color:#fff}
.lj-st.red{background:var(--sp-red-bg);color:var(--sp-red)}
.lj-st.grey{background:#EFEDE6;color:var(--sp-ink-2)}
.lj-paybox{border:1px solid var(--sp-line);border-radius:14px;background:var(--sp-bg);overflow:hidden}
.lj-paybox div{display:flex;gap:16px;padding:10px 16px;border-top:1px solid var(--sp-line-2)}
.lj-paybox div:first-child{border-top:0}
.lj-paybox span{flex:0 0 140px;color:var(--sp-muted)}
.lj-paybox b{font-size:17px;word-break:break-word}
.lj-wait{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:var(--sp-cream);color:var(--sp-brown);font-weight:600}
.lj-spin{width:20px;height:20px;border-radius:50%;border:3px solid #F3C877;border-top-color:var(--sp-orange-d);animation:ljspin 1s linear infinite;flex-shrink:0}
@keyframes ljspin{to{transform:rotate(360deg)}}
.lj-sim{padding:14px 16px;border:1px dashed #F3C877;border-radius:14px;display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:14px;color:var(--sp-brown)}
.lj-sub{border-top:1px solid var(--sp-line-2);padding-top:14px;display:flex;flex-direction:column;gap:10px}
.lj-sub:first-of-type{border-top:0;padding-top:0}
.lj-sub-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
.lj-sub-h b{font:800 16px var(--sp-h);color:var(--sp-forest)}
.lj-track{font-size:14px;color:var(--sp-ink-2);display:flex;flex-wrap:wrap;gap:4px 12px}
.lj-tl{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}
.lj-tl li{position:relative;padding:0 0 16px 22px;font-size:15px;color:var(--sp-ink-2)}
.lj-tl li::before{content:"";position:absolute;left:4px;top:7px;width:9px;height:9px;border-radius:50%;background:var(--sp-green)}
.lj-tl li::after{content:"";position:absolute;left:8px;top:18px;bottom:0;width:1px;background:var(--sp-line)}
.lj-tl li:last-child::after{display:none}
.lj-tl small{display:block;color:var(--sp-muted);font-size:13px}
.lj-doclink{display:inline-flex;align-items:center;gap:8px;font-weight:600}

/* vender */
.lj-vhero{margin-top:14px;padding:48px;border-radius:24px;background:var(--sp-forest);color:#fff;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:center}
.lj-vhero h1{font:800 46px/1.08 var(--sp-h);letter-spacing:-1px}
.lj-vhero h1 span{color:var(--sp-orange)}
.lj-vhero p{font-size:18px;line-height:1.5;color:var(--sp-mint);margin-top:14px}
.lj-vnums{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lj-vnums div{padding:18px;border-radius:16px;background:var(--sp-forest-2)}
.lj-vnums b{display:block;font:800 30px var(--sp-h);color:var(--sp-orange)}
.lj-vnums span{font-size:14px;color:var(--sp-mint)}
.lj-steps4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.lj-step{padding:22px;border-radius:18px;background:#fff;border:1px solid var(--sp-line);display:flex;flex-direction:column;gap:8px}
.lj-step-n{width:36px;height:36px;border-radius:10px;background:var(--sp-cream);color:var(--sp-orange-d);font:800 16px var(--sp-h);display:flex;align-items:center;justify-content:center}
.lj-step h3{font:800 18px var(--sp-h);color:var(--sp-forest)}
.lj-step p{font-size:15px;line-height:1.5;color:var(--sp-ink-2)}
.lj-vgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}
.lj-ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.lj-ul li{display:flex;gap:10px;color:var(--sp-ink-2);line-height:1.5}
.lj-ul svg{color:var(--sp-green);flex-shrink:0;margin-top:3px}

/* condições */
.lj-doc{max-width:860px;padding-top:14px;display:flex;flex-direction:column;gap:14px}
.lj-doc h1{font:800 38px/1.12 var(--sp-h);color:var(--sp-forest)}
.lj-doc h2{font:800 22px var(--sp-h);color:var(--sp-forest);margin-top:18px;scroll-margin-top:16px}
.lj-doc p,.lj-doc li{font-size:16px;line-height:1.65;color:var(--sp-ink-2)}
.lj-doc ul{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:6px}
.lj-doc .lj-toc{display:flex;flex-wrap:wrap;gap:8px 16px;padding:14px 18px;background:#fff;border:1px solid var(--sp-line);border-radius:14px;font-size:15px;font-weight:600}

/* extras */
.lj-sold .lj-shop-av{width:36px;height:36px;font-size:13px;border-radius:10px}
.lj-sh-desc{margin-top:22px}
.lj-vhero h1{margin-top:14px}
.lj-vhero .lj-hero-btns{margin-top:22px}
.lj-qmsg:empty{display:none}
.lj-nw{white-space:nowrap}
.lj-toast[hidden]{display:none}
.lj-box .sp-faq{margin-top:8px}
/* checkout sem JavaScript: morada de faturação e telemóvel MB WAY só quando fazem falta */
.lj-box:has([data-lj-billtoggle]:not(:checked)) [data-lj-bill]{display:none}
.lj-box:has(input[name=method][value=mbway]:not(:checked)) [data-lj-mbw]{display:none}

/* ---------- responsivo ---------- */
@media (max-width:1280px){
  .lj-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lj-catgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lj-cart,.lj-ord{grid-template-columns:minmax(0,1fr) 380px}
  .lj-co{grid-template-columns:minmax(0,1fr) 420px}
  .lj-pays{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1100px){
  .lj-hero{grid-template-columns:minmax(0,1fr)}
  .lj-hero-main{grid-column:auto;min-height:0}
  .lj-hero-side{flex-direction:row}
  .lj-hcard{flex:1 1 0}
  .lj-shops,.lj-trust{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lj-prod,.lj-psec,.lj-vgrid,.lj-vhero{grid-template-columns:minmax(0,1fr)}
  .lj-gal{position:static}
  .lj-steps4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .lj-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .lj-cart,.lj-co,.lj-ord{grid-template-columns:minmax(0,1fr)}
  .lj-aside{position:static}
  .lj-top-in{flex-wrap:wrap;gap:12px 16px}
  .lj-search{order:3;flex-basis:100%}
  .lj-top-r{margin-left:auto}
  .lj-top-co .lj-steps{order:3;flex-basis:100%;justify-content:flex-start}
  .lj-f-ord{margin-left:0}
}
@media (max-width:640px){
  .lj-strip{font-size:12px}
  .lj-strip-in{gap:2px 10px;padding:5px 12px}
  .lj-strip small{display:none}
  .lj-top-in{min-height:0;padding:12px 16px}
  .lj-logo img{height:22px}
  .lj-logo span{font-size:10px;letter-spacing:1.5px;padding-bottom:1px}
  .lj-search{height:44px;padding-left:14px}
  .lj-search input{font-size:16px}
  .lj-search button{padding:0 14px;height:34px}
  .lj-top-r{gap:10px}
  .lj-acc span{display:none}
  .lj .lj-acc{width:40px;height:40px;border-radius:999px;background:var(--sp-forest-2);justify-content:center}
  .lj .lj-cartbtn{height:40px;padding:0 10px 0 12px}
  .lj-cartbtn-t{display:none}
  .lj-cats-in{height:46px;gap:18px;padding-left:16px;padding-right:16px}
  .lj-cats-l{gap:18px}
  .lj .lj-cats a{font-size:15px}
  .lj-steps{gap:8px;font-size:13px}
  .lj-steps .n{display:inline-flex}
  .lj-secure{display:none}
  .lj-hero{padding-top:20px;gap:14px}
  .lj-hero-main{padding:28px 22px;border-radius:20px;gap:14px}
  .lj-hero-main h1{font-size:34px;letter-spacing:-1px}
  .lj-hero-main p{font-size:17px}
  .lj-hero-btns .sp-btn{flex:1 1 auto;height:48px;padding:0 16px}
  .lj-hero-side{flex-direction:column;gap:14px}
  .lj .lj-hcard{padding:22px;border-radius:20px}
  .lj-hcard-t{font-size:22px}
  .lj-hcard-t.s{font-size:19px}
  .lj-catgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:20px}
  .lj .lj-catc{padding:14px;flex-direction:row;align-items:center}
  .lj-catc-i{width:38px;height:38px;flex-shrink:0}
  .lj-catc b{font-size:15px;line-height:1.25}
  .lj-sec{padding-top:40px;gap:16px}
  .lj-sec-h h2,.lj-h1{font-size:26px}
  .lj-grid{gap:10px}
  .lj-card-img{height:150px}
  .lj-card-img .lj-badge{top:8px;left:8px;font-size:11px;padding:2px 6px;white-space:normal;max-width:calc(100% - 16px)}
  .lj-card-b{padding:12px 12px 14px;gap:4px}
  .lj-by{font-size:12px}
  .lj-card-t{font-size:15px}
  .lj-price b{font-size:18px}
  .lj-price s{font-size:13px}
  .lj-avail{font-size:12px}
  .lj-shops,.lj-trust{grid-template-columns:minmax(0,1fr)}
  .lj-trust{margin-top:40px;padding:24px 22px;gap:20px}
  .lj .lj-shop{padding:16px}
  .lj-shop-av{width:54px;height:54px;font-size:19px}
  .lj-footline-in{flex-direction:column;align-items:flex-start;gap:14px}
  .lj-footline nav{margin-left:0;gap:8px 18px;font-size:14px}
  .lj-filters{padding:14px;gap:10px}
  .lj-f{flex:1 1 calc(50% - 10px)}
  .lj-f select.sp-input{min-width:0;width:100%}
  .lj-f-price{flex-basis:100%}
  .lj-f-price .sp-input{width:100%}
  .lj-f-go{flex-basis:100%}
  .lj-prod{gap:22px;padding-top:10px}
  .lj-gal-main{border-radius:16px}
  .lj-thumbs a{width:60px;height:60px}
  .lj-buy h1{font-size:26px}
  .lj-buybox{padding:18px}
  .lj-buybox .lj-price b{font-size:28px}
  .lj-psec{margin-top:32px;gap:28px}
  .lj-box,.lj-group{padding:18px 16px;border-radius:18px}
  .lj-line{flex-wrap:wrap;gap:10px 12px}
  .lj-line-img{width:60px;height:60px}
  .lj-line-b{flex-basis:calc(100% - 72px)}
  .lj-line-q{margin-left:72px}
  .lj-line-p{margin-left:auto;min-width:0}
  .lj-co{padding-top:20px;gap:18px}
  .lj-co .span2{grid-column:auto}
  .lj-pays{gap:8px}
  .lj-pay span{height:66px;font-size:15px}
  .lj-total b{font-size:24px}
  .lj-ord{padding-top:20px;gap:18px}
  .lj-ord-h h1{font-size:26px}
  .lj-paybox div{flex-direction:column;gap:0}
  .lj-paybox span{flex-basis:auto}
  .lj-vhero{padding:28px 22px;gap:24px;border-radius:20px}
  .lj-vhero h1{font-size:32px}
  .lj-steps4{grid-template-columns:minmax(0,1fr)}
  .lj-sh{padding:20px;gap:14px}
  .lj-sh .lj-shop-av{width:64px;height:64px;font-size:22px}
  .lj-sh-b h1{font-size:26px}
  .lj-doc h1{font-size:30px}
}

/* ===== painel do vendedor ===== */
/* Painel do vendedor (/vendedor) — mockup LojaVendedor. Usa ui.css (classes ui-*); aqui só o que é do painel (prefixo .vd-). */
body.vd{margin:0;background:#FAF8F2;font-family:var(--ui-text);font-size:15px;color:var(--ui-ink);-webkit-text-size-adjust:100%}
body.vd *{box-sizing:border-box}
@media (min-width:901px){body.vd{background:linear-gradient(to right,var(--ui-forest) 264px,#FAF8F2 264px)}}
.vd-test{background:var(--ui-orange);color:var(--ui-ink);text-align:center;font-size:12px;font-weight:600;padding:3px 8px}
.vd-shell{display:flex;min-height:100vh}
.vd-side{width:264px;flex-shrink:0;padding:28px 20px;background:var(--ui-forest);color:#CFE3D6;display:flex;flex-direction:column;gap:26px;position:sticky;top:0;height:100vh;overflow-y:auto}
.vd-logo{padding:0 12px;display:flex;flex-direction:column;gap:6px;text-decoration:none}
.vd-logo img{display:block;width:130px;height:auto}
.vd-logo span{font-family:var(--ui-title);font-size:11px;font-weight:800;letter-spacing:2px;color:var(--ui-orange)}
.vd-shop{padding:14px;border-radius:14px;background:var(--ui-green-2);display:flex;gap:12px;align-items:center}
.vd-shop-av{width:42px;height:42px;flex-shrink:0;border-radius:12px;background:var(--ui-orange);color:var(--ui-forest);font-family:var(--ui-title);font-weight:800;display:flex;align-items:center;justify-content:center;overflow:hidden}
.vd-shop-av img{width:100%;height:100%;object-fit:cover;background:#fff}
.vd-shop-av.lg{width:72px;height:72px;border-radius:16px;font-size:24px}
.vd-shop-n{font-weight:600;color:#fff;line-height:1.25;overflow-wrap:anywhere}
.vd-shop-s{font-size:13px;color:#9DBBA8}
.vd-shop-s.st-pending{color:var(--ui-orange)} .vd-shop-s.st-suspended,.vd-shop-s.st-rejected{color:#F4A79D}
.vd-nav{display:flex;flex-direction:column;gap:4px;font-weight:500}
.ui .vd-nav a{height:42px;padding:0 12px;display:flex;align-items:center;gap:10px;border-radius:10px;color:#CFE3D6;text-decoration:none}
.ui .vd-nav a svg{opacity:.8;flex-shrink:0}
.ui .vd-nav a:hover{background:rgba(255,255,255,.06);color:#fff}
.ui .vd-nav a.on{background:var(--ui-green);color:#fff;font-weight:600}
.vd-count{margin-left:auto;padding:0 8px;min-width:22px;text-align:center;border-radius:999px;background:var(--ui-orange);color:var(--ui-ink);font-size:12px;font-weight:600;line-height:20px}
.ui a.vd-cross{margin-top:auto;padding:14px;border-radius:14px;background:var(--ui-green-2);color:#fff;font-size:14px;line-height:1.45;text-decoration:none;display:block}
.vd-cross span{color:var(--ui-orange);font-weight:600}
.vd-side-links{display:flex;flex-direction:column;gap:2px;margin-top:-12px}
.ui .vd-side-links a{display:flex;align-items:center;gap:8px;padding:6px 12px;color:#9DBBA8;font-size:14px;border-radius:8px}
.ui .vd-side-links a:hover{color:#fff}
.vd-top,.vd-drawer{display:none}
.vd-main{flex:1;min-width:0;padding:34px 44px 24px;display:flex;flex-direction:column;gap:22px;max-width:1400px}
.vd-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.vd-head .grow{flex:1;min-width:260px;display:flex;flex-direction:column;gap:4px}
.vd-h1{font-size:34px}
.vd-head .ui-sub{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}
.vd-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.vd-actions form{margin:0}
.ui-btn.vd-btn-lg{height:46px;padding:0 20px;font-size:15px}
.ui-btn[disabled]{opacity:.5;cursor:not-allowed}
.vd-kpis{gap:14px}
.vd-kpi{padding:18px;border-radius:16px;text-decoration:none}
.vd-kpi-v-sm{font-size:24px;white-space:normal}
.vd-neg{color:var(--ui-orange-2)!important}
.vd-sec-h{padding:16px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--ui-track)}
.vd-sec-h .ui-h2{flex:1;display:flex;align-items:center;gap:8px}
.vd-sec-h a{font-weight:600}
.vd-sec .ui-table th,.vd-sec .ui-table td{padding-left:20px;padding-right:20px}
.vd-td-act{text-align:right;white-space:nowrap}
.vd-small{font-size:13px}
.vd-nw{white-space:nowrap}
.vd-g2{gap:16px}
.ui a.vd-prow{display:flex;align-items:center;gap:10px;color:var(--ui-ink);padding:2px 0}
.vd-prow .grow{flex:1;min-width:0}
.ui a.vd-prow:hover .grow{color:var(--ui-green)}
.vd-prow-st{width:92px;text-align:right;color:var(--ui-ink-2);font-size:14px;white-space:nowrap}
.vd-prow-st.low{color:var(--ui-orange-2);font-weight:600}
.vd-how{background:var(--ui-orange-soft);border-color:var(--ui-orange-soft)}
.vd-how p{margin:0;line-height:1.55;color:var(--ui-ink-2)}
.vd-how a{font-weight:600}
.vd-flow{display:flex;flex-wrap:wrap;gap:6px 8px;font-size:13px;font-weight:600;color:var(--ui-orange-ink)}
.vd-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:8px;line-height:1.5;color:var(--ui-ink-2);font-size:14px}
.vd-state{align-items:flex-start}
.vd-row{gap:16px}
.vd-steps span{font-size:13px}
.ui a.vd-item,.vd-item{display:flex;align-items:center;gap:12px;color:var(--ui-ink);min-width:0}
.vd-item img,.vd-noimg{width:44px;height:44px;border-radius:10px;object-fit:cover;flex-shrink:0;background:var(--ui-track)}
.vd-noimg{display:flex;align-items:center;justify-content:center;color:var(--ui-faint)}
.vd-sum{display:grid;grid-template-columns:1fr auto;gap:8px 16px;margin:0;font-size:15px}
.vd-sum dt{color:var(--ui-ink-2)} .vd-sum dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.vd-sum .tot{padding-top:10px;border-top:1px solid var(--ui-line);font-family:var(--ui-title);font-weight:800;font-size:18px;color:var(--ui-forest)}
.vd-addr{line-height:1.5}
.vd-stock{display:flex;gap:6px;align-items:center;margin:0}
.vd-stock .ui-input{width:78px;height:34px;text-align:right}
.vd-stock .ui-input.low{border-color:#F3C877;color:var(--ui-orange-2);font-weight:600}
.vd-specs{display:flex;flex-direction:column;gap:8px}
.vd-spec{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:8px}
.vd-spec .ui-input{width:100%;height:40px;font-size:15px;font-weight:400}
.vd-seg-radio{display:flex;width:100%}
.vd-seg-radio label{flex:1;position:relative;cursor:pointer}
.vd-seg-radio input{position:absolute;opacity:0;pointer-events:none}
.vd-seg-radio span{height:32px;display:flex;align-items:center;justify-content:center;border-radius:7px;font-weight:600;color:var(--ui-ink-2)}
.vd-seg-radio input:checked+span{background:var(--ui-forest);color:#fff}
.vd-seg-radio input:focus-visible+span{outline:2px solid var(--ui-green)}
.vd-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}
.vd-ph{position:relative;border:1px solid var(--ui-line);border-radius:12px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.vd-ph img{width:100%;aspect-ratio:1;object-fit:cover;display:block;background:var(--ui-track)}
.vd-ph-main{position:absolute;top:8px;left:8px;background:var(--ui-forest);color:#fff;font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px}
.vd-ph-b{display:flex;gap:4px;padding:6px;justify-content:center}
.vd-ph-b .ui-btn{padding:0 10px}
.vd-drop{display:flex;align-items:center;justify-content:center;gap:8px;min-height:64px}
.vd-drop span{display:inline-flex;align-items:center;gap:8px}
.vd-preview{display:flex;flex-wrap:wrap;gap:8px}
.vd-preview img{width:72px;height:72px;object-fit:cover;border-radius:10px;border:1px solid var(--ui-line)}
.vd-net{font-size:14px;color:var(--ui-ink-2);background:var(--ui-mint);border-radius:10px;padding:10px 12px;line-height:1.45}
.vd-save{gap:8px}
.vd-logo-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.vd-logo-row .grow{flex:1;min-width:200px}
.ui-input.vd-file{padding:7px 10px;height:auto}
.vd-comm{font-family:var(--ui-title);font-size:30px;font-weight:800;color:var(--ui-forest)}
.vd-flash{position:fixed;right:20px;bottom:20px;z-index:1100;max-width:min(520px,calc(100vw - 32px));padding:12px 16px;border-radius:12px;background:var(--ui-forest);color:#fff;box-shadow:0 10px 30px rgba(0,0,0,.18);font-weight:600;line-height:1.4;transition:opacity .4s}
.vd-flash.bad{background:var(--ui-red)} .vd-flash.out{opacity:0;pointer-events:none}
.ui-steps.vd-steps span{cursor:default}
@media (max-width:1100px){.vd-main{padding:28px 24px}}
@media (max-width:900px){
  .vd-side{display:none}
  .vd-shell{display:block}
  .vd-top{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--ui-forest);position:sticky;top:0;z-index:40}
  .vd-top .vd-logo{padding:0;gap:3px}
  .vd-top .vd-logo img{width:110px}
  .vd-top .vd-logo span{font-size:9px;letter-spacing:1.6px}
  .vd-menu{position:relative;width:42px;height:42px;border:0;border-radius:12px;background:var(--ui-green-2);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}
  .vd-menu .dot{position:absolute;top:9px;right:9px;width:8px;height:8px;border-radius:9px;background:var(--ui-orange)}
  .vd-drawer{display:block;position:fixed;inset:0;z-index:1000;background:rgba(13,38,27,.5);opacity:0;pointer-events:none;transition:opacity .2s}
  .vd-drawer.open{opacity:1;pointer-events:auto}
  .vd-drawer>div{position:absolute;top:0;right:0;bottom:0;width:min(320px,86vw);background:var(--ui-forest);color:#CFE3D6;padding:16px;display:flex;flex-direction:column;gap:18px;overflow-y:auto;transform:translateX(100%);transition:transform .2s}
  .vd-drawer.open>div{transform:none}
  .vd-drawer-h{display:flex;align-items:center;justify-content:space-between}
  .vd-drawer-h .vd-logo{padding:0}
  .vd-drawer .vd-cross{margin-top:0}
  .vd-side-links{margin-top:0}
  .vd-main{padding:20px 16px 16px;gap:18px}
}
@media (max-width:720px){
  .vd-h1{font-size:26px}
  .vd-head{align-items:flex-start}
  .vd-actions{width:100%}
  .vd-actions>.ui-btn,.vd-actions>form{flex:1}
  .vd-actions>form .ui-btn{width:100%}
  .ui-btn.vd-btn-lg{height:44px;padding:0 14px}
  .vd-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .vd-kpi{padding:14px}
  .vd-kpis .ui-kpi-v{font-size:22px;white-space:normal;overflow-wrap:anywhere}
  .vd-kpi-v-sm{font-size:19px!important}
  .vd-g2{grid-template-columns:1fr}
  /* tabelas em cartões */
  .vd-table-cards thead{display:none}
  .vd-table-cards,.vd-table-cards tbody,.vd-table-cards tr,.vd-table-cards td{display:block;width:100%}
  .vd-table-cards tr{padding:12px 16px;border-bottom:1px solid var(--ui-track)}
  .vd-table-cards tr:last-child{border-bottom:0}
  .ui-table.vd-table-cards td{padding:3px 0;border:0;text-align:left}
  .vd-table-cards td[data-l]{display:flex;gap:12px;justify-content:space-between;align-items:baseline}
  .vd-table-cards td[data-l]::before{content:attr(data-l);font-family:var(--ui-title);font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--ui-muted);flex-shrink:0;padding-top:2px}
  .vd-table-cards td[data-l]>*{text-align:right}
  .vd-table-cards td[data-l]:first-child{display:block}
  .vd-table-cards td[data-l]:first-child::before{display:none}
  .vd-table-cards td[data-l]:first-child>*{text-align:left}
  .vd-table-cards td.vd-td-act{text-align:left;padding-top:8px}
  .vd-table-cards td.vd-td-act:empty{display:none}
  .vd-table-cards td.vd-td-act .ui-btn{width:100%;height:40px}
  .vd-table-cards tbody tr:hover td{background:transparent}
  .vd-ptable td[data-l="Stock"]{align-items:center}
  .vd-sec .ui-table th,.vd-sec .ui-table td{padding-left:0;padding-right:0}
  .vd-sec .vd-table-cards tr{padding:12px 16px}
  .vd-sec-h{padding:14px 16px}
  .vd-spec{grid-template-columns:1fr 1fr}
  .vd-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vd-sum .tot{font-size:17px}
  .vd-flash{left:16px;right:16px;bottom:16px}
}
/* ===== fim do painel do vendedor ===== */
