@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
/* LUCREI — folha de estilo do SITE (v57, 08/09/2026).
   Tema CLARO, de propósito diferente do dashboard (que continua escuro):
   papel lavanda muito claro, ROXO #3AE0BF = marca e navegação,
   VERDE = dinheiro no bolso e o botão de comprar, LARANJA = só o lado ruim.
   Display em Inter, texto e números em Inter (tabular).
   As classes antigas continuam existindo — as páginas herdam o tema. */
:root{
  --fundo:#F2F7F8;--card:#FFFFFF;--card2:#EAF2F3;--gun:#DFEAEC;--gun2:#CFDEE1;
  --linha:#D7E4E7;--linha2:#C3D6DA;
  --ink:#102C36;--ink2:#35545E;--ink3:#516D78;
  --roxo:#007C68;--roxo-esc:#00604F;--roxo-2:#0E9C82;--roxo-claro:#DDF6F0;--roxo-tinta:#06463C;
  --verde:#166534;--verde-esc:#12522B;--verde-tinta:#166534;--verde-claro:#DCF2E4;--verde-vivo:#1E8E5A;
  --lime:#007C68;--lime2:#00866F;
  --menta:#34D6B5;--menta-ink:#102C36;--azul:#3E6FE8;
  --laranja:#A64B00;--laranja-claro:#FBEEE0;
  --amarelo:#8A5A00;--amarelo-claro:#FAF0DE;--ml:#FFE600;
  --escuro:#102C36;--escuro2:#163944;--escuro-ink:#F2F7F8;--escuro-ink2:#C2D7DB;
  --r:20px;--r2:13px;
  --sombra:0 10px 30px rgba(16,44,54,.07),0 1px 2px rgba(16,44,54,.05);
  --sombra2:0 26px 60px rgba(16,44,54,.14),0 2px 6px rgba(16,44,54,.05);
  --fonte:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  --fdisp:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  --fnum:Inter,system-ui,sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-color:var(--gun2) var(--fundo)}
body{margin:0;color:var(--ink);font:500 17px/1.6 var(--fonte);background:var(--fundo);
  -webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}
::selection{background:var(--roxo);color:#fff}
::-webkit-scrollbar{width:12px;height:12px}
::-webkit-scrollbar-track{background:var(--fundo)}
::-webkit-scrollbar-thumb{background:var(--gun2);border-radius:8px;border:3px solid var(--fundo)}
::-webkit-scrollbar-thumb:hover{background:var(--roxo-2)}
a{color:var(--roxo);text-decoration:none;text-underline-offset:3px}
a:hover{text-decoration:underline}
img{max-width:100%}
h1,h2,h3{font-family:var(--fdisp);line-height:1.06;letter-spacing:-.025em;margin:0 0 .4em;color:var(--ink);text-wrap:balance}
h1{font-size:clamp(38px,5.6vw,66px);font-weight:800}
h2{font-size:clamp(28px,3.8vw,42px);font-weight:750}
h3{font-size:21px;font-weight:700;letter-spacing:-.015em}
h4{font-family:var(--fonte);font-size:15px;font-weight:800;margin:0 0 .5em}
p{margin:0 0 1em}
.mudo{color:var(--ink2)}
.peq{font-size:14px;color:var(--ink3)}
.num,.v,.kpis b{font-family:var(--fnum);font-variant-numeric:tabular-nums}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}
.wrap.estreito{max-width:820px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:3px solid var(--roxo);outline-offset:3px;border-radius:8px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.centro{text-align:center}
.esconde{display:none!important}
.io{opacity:0;transform:translateY(14px);transition:opacity .55s cubic-bezier(.2,.7,.2,1),transform .55s cubic-bezier(.2,.7,.2,1)}
.io.vis{opacity:1;transform:none}

/* ---------- barra ---------- */
.barra{position:sticky;top:0;z-index:30;background:rgba(246,251,250,.86);backdrop-filter:blur(14px);border-bottom:1px solid var(--linha)}
.barra .wrap{display:flex;align-items:center;gap:14px;min-height:68px}
.logo{display:inline-flex;align-items:center;gap:9px;font-family:var(--fdisp);font-weight:800;font-size:23px;letter-spacing:-.03em;color:var(--ink)}
.logo img{width:34px;height:34px;border-radius:9px;display:block}
.logo:hover{text-decoration:none}
.barra nav{margin-left:auto;display:flex;gap:2px;align-items:center}
.barra nav a{color:var(--ink2);font-weight:700;font-size:14.5px;padding:9px 12px;border-radius:10px;transition:background .15s,color .15s}
.barra nav a:hover{background:var(--card2);color:var(--ink);text-decoration:none}
.barra nav a.btn{color:#fff;background:var(--roxo);margin-left:8px;box-shadow:none}
.barra nav a.btn:hover{background:var(--roxo-esc);color:#fff}
.barra nav a.atual{color:var(--roxo);background:var(--roxo-claro)}
.menu-btn{display:none;margin-left:auto;border:1px solid var(--linha2);background:var(--card);color:var(--ink);border-radius:10px;padding:9px 13px;font:inherit;font-weight:700;cursor:pointer}
@media(max-width:900px){
  .menu-btn{display:inline-flex}
  .barra nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;background:var(--card);border-bottom:1px solid var(--linha);padding:10px 14px 14px;gap:4px;box-shadow:var(--sombra)}
  .barra nav.aberto{display:flex}
  .barra nav a{padding:12px 14px;font-size:16px}
  .barra nav a.btn{margin:6px 0 0;text-align:center}
}

/* ---------- botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--roxo);color:#fff;border:0;border-radius:12px;
  padding:13px 20px;font:800 15.5px/1.15 var(--fonte);cursor:pointer;text-decoration:none;white-space:nowrap;
  box-shadow:0 6px 16px rgba(58,224,191,.22),0 1px 2px rgba(58,224,191,.2);transition:transform .15s,background .15s,box-shadow .15s}
.btn:hover{background:var(--roxo-esc);text-decoration:none;color:#fff;transform:translateY(-1px);box-shadow:0 10px 22px rgba(58,224,191,.26),0 1px 2px rgba(58,224,191,.2)}
.btn:active{transform:none}
.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}
.btn.verde{background:var(--verde);color:#fff;box-shadow:0 6px 16px rgba(17,129,107,.22),0 1px 2px rgba(17,129,107,.2)}
.btn.verde:hover{background:var(--verde-esc);color:#fff}
.btn.fantasma{background:transparent;color:var(--ink);border:1.5px solid var(--linha2);box-shadow:none}
.btn.fantasma:hover{background:var(--card2);color:var(--ink);border-color:var(--gun2)}
.btn.claro{background:var(--roxo-claro);color:var(--roxo-tinta);box-shadow:none}
.btn.claro:hover{background:#DDFBF5;color:var(--roxo-tinta)}
.btn.escuro{background:var(--ink);color:#fff;box-shadow:none}
.btn.escuro:hover{background:#275048;color:#fff}
.btn.grande{padding:16px 26px;font-size:17px;border-radius:14px}
.btn.peq{padding:9px 14px;font-size:13.5px;border-radius:10px}
.btn.zap{background:#0F7A65;color:#fff;box-shadow:none}
.btn.zap:hover{background:#0D6554;color:#fff}
.btn.bloco{width:100%}
.btn .seta{transition:transform .2s}
.btn:hover .seta{transform:translateX(3px)}
.ctas{display:flex;gap:12px;flex-wrap:wrap}

/* ---------- cartões e grades ---------- */
.card{background:var(--card);border:1px solid var(--linha);border-radius:var(--r);padding:26px;box-shadow:var(--sombra)}
.card.suave{background:var(--card2);box-shadow:none}
.card.roxa{background:var(--roxo-claro);border-color:#D8FAF3}
.card.verde{background:var(--verde-claro);border-color:#CDEBE5}
.card.escuro{background:var(--escuro);border-color:var(--escuro);color:var(--escuro-ink)}
.card.escuro h2,.card.escuro h3{color:#fff}
.card.escuro .mudo,.card.escuro .peq{color:var(--escuro-ink2)}
.grade{display:grid;gap:18px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.g2,.g3,.g4{grid-template-columns:1fr}}
.secao{padding:84px 0}
.secao.apertada{padding:48px 0}
.secao.clara{background:var(--card)}
.secao.escura{background:var(--escuro);color:var(--escuro-ink)}
.secao.escura h1,.secao.escura h2,.secao.escura h3{color:#fff}
.secao.escura .mudo{color:var(--escuro-ink2)}
.secao.escura .peq{color:#99CDC3}
.secao.escura .card{background:var(--escuro2);border-color:rgba(255,255,255,.08);box-shadow:none;color:var(--escuro-ink)}
.secao.escura a:not(.btn){color:#C2F8ED}
.secao.escura .btn.fantasma{color:#fff;border-color:rgba(255,255,255,.25)}
.secao.escura .btn.fantasma:hover{background:rgba(255,255,255,.08)}
.secao.roxa{background:var(--roxo);color:#fff}
.secao.roxa h2,.secao.roxa h3{color:#fff}
.secao.roxa .mudo{color:#DCFBF5}
.secao.roxa .btn{background:#fff;color:var(--roxo-tinta);box-shadow:none}
.secao.roxa .btn:hover{background:#F1FDFB}
.secao.roxa .btn.verde{background:#8EF0DC;color:#0A3D33}
.secao.roxa .btn.verde:hover{background:#A7F4E5}
.intro{max-width:640px;margin-bottom:38px}
.intro.centro{margin-left:auto;margin-right:auto}
.olho{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.02em;color:var(--roxo);margin-bottom:10px}
hr.fina{border:0;border-top:1px solid var(--linha);margin:26px 0}

/* ---------- selos e números ---------- */
.selo{display:inline-flex;align-items:center;gap:6px;background:var(--roxo-claro);color:var(--roxo-tinta);border-radius:999px;padding:5px 11px;font-size:12.5px;font-weight:800;line-height:1.2}
.selo.verde,.selo.lima{background:var(--verde-claro);color:var(--verde-tinta)}
.selo.laranja{background:var(--laranja-claro);color:var(--laranja)}
.selo.amarelo{background:var(--amarelo-claro);color:var(--amarelo)}
.selo.cinza{background:var(--card2);color:var(--ink2)}
.selo.breve{background:var(--card2);color:var(--ink3);border:1px dashed var(--linha2)}
.selo.escuro{background:var(--ink);color:#fff}
.num{font-family:var(--fdisp);font-weight:800;letter-spacing:-.03em;font-size:40px;line-height:1}
.num.verde{color:var(--verde-tinta)}
.num.laranja{color:var(--laranja)}
.num.roxo{color:var(--roxo)}

/* ---------- passos e listas ---------- */
.passos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;counter-reset:passo}
@media(max-width:800px){.passos{grid-template-columns:1fr}}
.passo{position:relative;background:var(--card);border:1px solid var(--linha);border-radius:var(--r);padding:22px 22px 22px 22px;counter-increment:passo}
.passo::before{content:counter(passo);display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--roxo);color:#fff;font:800 15px var(--fnum);margin-bottom:12px}
.passo h3{font-size:18px;margin-bottom:6px}
.passo p{margin:0;color:var(--ink2);font-size:15.5px}
.lista{list-style:none;padding:0;margin:0}
.lista li{position:relative;padding:8px 0 8px 30px;color:var(--ink2);font-size:15.5px;border-bottom:1px solid var(--linha)}
.lista li:last-child{border-bottom:0}
.lista li b{color:var(--ink)}
.lista li::before{content:"";position:absolute;left:0;top:11px;width:20px;height:20px;border-radius:50%;background:var(--verde-claro)}
.lista li::after{content:"";position:absolute;left:7px;top:15px;width:5px;height:9px;border:solid var(--verde-tinta);border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
.lista.x li::before{background:var(--laranja-claro)}
.lista.x li::after{width:8px;height:8px;border:0;left:6px;top:17px;transform:none;background:linear-gradient(var(--laranja),var(--laranja)) center/100% 2.5px no-repeat}

/* ---------- formulários ---------- */
label{display:block;font-size:13.5px;font-weight:800;color:var(--ink2);margin-bottom:6px}
input,select,textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--card);border:1.5px solid var(--linha2);border-radius:11px;padding:11px 13px;caret-color:var(--roxo);transition:border-color .15s,box-shadow .15s}
input::placeholder,textarea::placeholder{color:#7AA3B3}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--roxo);box-shadow:0 0 0 4px rgba(58,224,191,.14)}
input[type=number]{-moz-appearance:textfield}
input[type=file]{padding:9px}
.campo{margin-bottom:14px}
.campo .dica{font-size:13px;color:var(--ink3);margin-top:5px}
.prefixo,.sufixo{display:flex;align-items:stretch}
.prefixo span,.sufixo span{display:inline-flex;align-items:center;padding:0 12px;background:var(--card2);border:1.5px solid var(--linha2);color:var(--ink2);font-weight:800;font-size:14px}
.prefixo span{border-right:0;border-radius:11px 0 0 11px}
.prefixo input{border-radius:0 11px 11px 0}
.sufixo span{border-left:0;border-radius:0 11px 11px 0}
.sufixo input{border-radius:11px 0 0 11px}
.aviso{border-radius:12px;padding:12px 14px;font-size:14.5px;font-weight:600;margin:12px 0;border:1px solid transparent}
.aviso.erro{background:var(--laranja-claro);color:#8A4807;border-color:#F5D4B3}
.aviso.ok{background:var(--verde-claro);color:#0B5C4C;border-color:#BFE6DE}
.aviso.info{background:var(--roxo-claro);color:var(--roxo-tinta);border-color:#D8FAF3}
.aviso.amarelo{background:var(--amarelo-claro);color:#6B3600;border-color:#F0D0AF}

/* ---------- tabelas ---------- */
.tab{width:100%;border-collapse:collapse;font-size:14.5px}
.tab th,.tab td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--linha);vertical-align:top}
.tab th{font-size:12.5px;letter-spacing:.02em;color:var(--ink3);font-weight:800;background:var(--card2)}
.tab td.n,.tab th.n{text-align:right;font-variant-numeric:tabular-nums}
.tab tr:last-child td{border-bottom:0}
.rolagem{overflow-x:auto;-webkit-overflow-scrolling:touch}
.barra-h{height:8px;border-radius:999px;background:var(--card2);overflow:hidden}
.barra-h i{display:block;height:100%;background:var(--verde-vivo);border-radius:999px}
.barra-h i.laranja{background:var(--laranja)}
.barra-h i.roxo{background:var(--roxo)}

/* ---------- extrato (assinatura visual do LUCREI) ----------
   A conta de padaria: preço → tarifa → frete → imposto → produto → SOBRA.
   Cada linha entra em sequência; a última fica verde. */
.extrato{background:var(--card);border:1px solid var(--linha);border-radius:18px;padding:18px 20px;box-shadow:var(--sombra2);font-variant-numeric:tabular-nums;max-width:440px}
.extrato .cab{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:10px;border-bottom:1px dashed var(--linha2);margin-bottom:6px}
.extrato .cab b{font-family:var(--fdisp);font-size:17px;letter-spacing:-.01em}
.extrato .cab span{font-size:12.5px;color:var(--ink3);font-weight:700}
.extrato .li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:7px 0;font-size:15px;color:var(--ink2);border-bottom:1px solid var(--linha)}
.extrato .li span:first-child{display:flex;align-items:center;gap:8px}
.extrato .li small{font-size:12px;color:var(--ink3);font-weight:700}
.extrato .li b{font-weight:800;color:var(--ink);font-family:var(--fnum)}
.extrato .li.menos b{color:var(--laranja)}
.extrato .li.total{border-bottom:0;border-top:2px solid var(--ink);margin-top:6px;padding-top:12px;font-size:17px;color:var(--ink)}
.extrato .li.total b{color:var(--verde-tinta);font-family:var(--fdisp);font-size:28px;letter-spacing:-.03em}
.extrato .li.total.ruim b{color:var(--laranja)}
.extrato.anima .li{opacity:0;transform:translateY(8px);animation:extratoEntra .5s cubic-bezier(.2,.8,.2,1) forwards}
.extrato.anima .li:nth-child(2){animation-delay:.15s}.extrato.anima .li:nth-child(3){animation-delay:.3s}
.extrato.anima .li:nth-child(4){animation-delay:.45s}.extrato.anima .li:nth-child(5){animation-delay:.6s}
.extrato.anima .li:nth-child(6){animation-delay:.75s}.extrato.anima .li:nth-child(7){animation-delay:.95s}
@keyframes extratoEntra{to{opacity:1;transform:none}}

/* ---------- escada de produtos (landing e área de membro) ---------- */
.escada{display:grid;gap:12px}
.degrau{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:18px;align-items:center;background:var(--card);border:1px solid var(--linha);border-radius:18px;padding:18px 20px;color:inherit;transition:transform .18s,box-shadow .18s,border-color .18s;position:relative}
.degrau:hover{text-decoration:none;transform:translateY(-2px);box-shadow:var(--sombra2);border-color:var(--gun2)}
.degrau .n{width:56px;height:56px;border-radius:14px;display:grid;place-items:center;background:var(--roxo-claro);color:var(--roxo-tinta);font:800 20px var(--fdisp);letter-spacing:-.02em}
.degrau.gratis .n{background:var(--verde-claro);color:var(--verde-tinta)}
.degrau.topo .n{background:var(--ink);color:#fff}
.degrau b{display:block;font-family:var(--fdisp);font-size:20px;letter-spacing:-.02em;color:var(--ink);line-height:1.15}
.degrau span.d{display:block;color:var(--ink2);font-size:15px;margin-top:3px}
.degrau .preco{text-align:right;font-family:var(--fnum);font-weight:800;color:var(--ink);white-space:nowrap}
.degrau .preco small{display:block;font-size:12px;color:var(--ink3);font-weight:700}
.degrau .preco.gratis{color:var(--verde-tinta)}
@media(min-width:900px){
  .escada{grid-template-columns:repeat(7,1fr);gap:0;align-items:end}
  .degrau{grid-template-columns:1fr;grid-template-rows:auto auto 1fr auto;gap:10px;align-items:start;border-radius:0;padding:18px 16px 18px;min-height:calc(230px + var(--sobe,0px));border-right:0}
  .degrau:first-child{border-radius:18px 0 0 18px}
  .degrau:last-child{border-right:1px solid var(--linha);border-radius:0 18px 18px 0}
  .degrau:hover{transform:none;z-index:1;box-shadow:var(--sombra2)}
  .degrau .n{width:44px;height:44px;font-size:17px;border-radius:12px}
  .degrau b{font-size:17px}
  .degrau span.d{font-size:13.5px}
  .degrau .preco{text-align:left;align-self:end;font-size:15px}
}
@media(max-width:600px){.degrau{grid-template-columns:44px minmax(0,1fr);gap:12px}.degrau .n{width:44px;height:44px;font-size:17px}.degrau .preco{grid-column:2;text-align:left}}

/* ---------- prova (números de demonstração) ---------- */
.prova{display:flex;gap:26px;flex-wrap:wrap;color:var(--ink3);font-size:14px;font-weight:700}
.prova b{color:var(--ink);font-family:var(--fdisp);font-size:22px;letter-spacing:-.02em;display:block;line-height:1}
.marcas{display:flex;gap:10px 22px;flex-wrap:wrap;align-items:center}
.marcas span{font-family:var(--fdisp);font-weight:700;font-size:16px;color:var(--ink3);letter-spacing:-.01em;opacity:.9}
.mkts{display:flex;gap:8px;flex-wrap:wrap}
.mkt{display:inline-flex;align-items:center;gap:7px;background:var(--card);border:1px solid var(--linha);border-radius:999px;padding:7px 13px;font-size:13px;font-weight:800;color:var(--ink2)}
.mkt i{width:9px;height:9px;border-radius:50%;display:inline-block}
.mkt .ml{background:#1BDAB4}.mkt .sh{background:#E83348}.mkt .tt{background:#102C36}

/* ---------- mock do painel (usado nas páginas de produto) ---------- */
.painel-mock{background:var(--escuro);color:var(--escuro-ink);border-radius:16px;padding:14px;border:1px solid rgba(255,255,255,.06);font-size:12px;box-shadow:var(--sombra2)}
.painel-mock .topo{display:flex;gap:10px;align-items:center;margin-bottom:10px;color:var(--escuro-ink2);font-weight:700;font-size:11px}
.painel-mock .topo b{color:#fff;font-size:12px}
.painel-mock .topo span{padding:3px 8px;border-radius:999px;background:rgba(255,255,255,.06)}
.painel-mock .topo span.on{background:rgba(142,240,220,.15);color:#8EF0DC}
.painel-mock .kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.painel-mock .kpi{background:var(--escuro2);border-radius:10px;padding:10px 11px}
.painel-mock .kpi small{display:block;font-size:10px;color:var(--escuro-ink2);font-weight:700;letter-spacing:.02em}
.painel-mock .kpi b{display:block;font-family:var(--fdisp);font-size:19px;color:#fff;letter-spacing:-.02em;margin-top:2px}
.painel-mock .kpi b.lima{color:#8EF0DC}
.painel-mock .kpi b.lar{color:#FFB56B}
.painel-mock .kpi i{display:block;font-style:normal;font-size:10px;color:var(--escuro-ink2);margin-top:2px}
.painel-mock .linhas{display:grid;grid-template-columns:1.2fr 1fr;gap:8px;margin-top:8px}
.painel-mock .box{background:var(--escuro2);border-radius:10px;padding:10px 11px}
.painel-mock .box h4{margin:0 0 6px;font-size:10.5px;color:var(--escuro-ink2);letter-spacing:.03em;text-transform:uppercase}
.painel-mock .sku{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.06);font-weight:700;color:#fff}
.painel-mock .sku:last-child{border-bottom:0}
.painel-mock .sku em{display:block;font-style:normal;font-weight:600;color:var(--escuro-ink2);font-size:10px}
.painel-mock .pill{padding:2px 7px;border-radius:999px;font-weight:800;font-size:10.5px}
.painel-mock .pill.ok{background:rgba(142,240,220,.16);color:#8EF0DC}
.painel-mock .pill.ruim{background:rgba(255,181,107,.16);color:#FFB56B}
.painel-mock .pill.meh{background:rgba(135,240,219,.16);color:#87F0DB}
.painel-mock .bar{display:flex;align-items:flex-end;gap:3px;height:48px}
.painel-mock .bar i{flex:1;background:rgba(255,255,255,.18);border-radius:3px 3px 0 0}
.painel-mock .bar i.on{background:#8EF0DC}
.painel-mock .rod{display:flex;justify-content:space-between;font-size:9.5px;color:var(--escuro-ink2);margin-top:4px}
.painel-mock .cal{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center;font-size:9.5px}
.painel-mock .cal i{font-style:normal;padding:3px 0;border-radius:5px;color:var(--escuro-ink2)}
.painel-mock .cal i.ev{background:rgba(194,248,237,.2);color:#C2F8ED;font-weight:800}
.painel-mock .cal i.hoje{background:#8EF0DC;color:#0A3D33;font-weight:800}
@media(max-width:600px){.painel-mock .kpis{grid-template-columns:repeat(2,1fr)}.painel-mock .linhas{grid-template-columns:1fr}}
/* laptop/celular — mantidos para compatibilidade */
.palco{position:relative}
.laptop{background:#18302B;border-radius:18px 18px 6px 6px;padding:12px 12px 0;box-shadow:var(--sombra2)}
.laptop .tela{background:var(--escuro);border-radius:10px 10px 0 0;overflow:hidden}
.laptop .base{height:14px;background:linear-gradient(#254B43,#18302B);border-radius:0 0 14px 14px;margin:0 -12px}
.fone{position:absolute;right:-8px;bottom:-18px;width:150px;background:#18302B;border-radius:22px;padding:10px 6px;box-shadow:var(--sombra2)}
.fone .notch{display:flex;justify-content:center;margin-bottom:6px}
.fone .notch i{width:46px;height:5px;border-radius:3px;background:#32655B}
@keyframes foneFlutua{to{transform:translateY(-6px)}}
@media(max-width:900px){.fone{display:none}}

/* ---------- WhatsApp fixo ---------- */
.zap-fixo{position:fixed;right:18px;bottom:18px;z-index:40}
@media(max-width:600px){.zap-fixo{right:12px;bottom:12px}}

/* ---------- faixa de chamada ---------- */
.faixa{background:var(--roxo);color:#fff;border-radius:26px;padding:48px 40px;position:relative;overflow:hidden}
.faixa::after{content:"";position:absolute;right:-80px;top:-80px;width:320px;height:320px;border-radius:50%;background:rgba(255,255,255,.08)}
.faixa h2{color:#fff;position:relative}
.faixa .mudo{color:#DCFBF5;position:relative}
.faixa .btn{position:relative;background:#fff;color:var(--roxo-tinta);box-shadow:none}
.faixa .btn:hover{background:#F1FDFB}
.faixa .btn.verde{background:#8EF0DC;color:#0A3D33}
@media(max-width:600px){.faixa{padding:32px 22px}}

/* ---------- FAQ ---------- */
details.faq{border-bottom:1px solid var(--linha)}
details.faq summary{cursor:pointer;list-style:none;padding:16px 36px 16px 0;font-weight:800;font-size:16.5px;position:relative;color:var(--ink)}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:"+";position:absolute;right:4px;top:12px;font-size:24px;font-weight:600;color:var(--roxo);transition:transform .2s}
details.faq[open] summary::after{transform:rotate(45deg)}
details.faq p{color:var(--ink2);margin:0 0 16px;font-size:15.5px;max-width:70ch}

/* ---------- abas / chips / diversos ---------- */
.abas{display:inline-flex;gap:4px;background:var(--card2);padding:4px;border-radius:12px}
.abas button{border:0;background:transparent;color:var(--ink2);font:800 14px var(--fonte);padding:9px 14px;border-radius:9px;cursor:pointer;transition:background .15s,color .15s}
.abas button.on{background:var(--card);color:var(--ink);box-shadow:var(--sombra)}
.chip-plano{display:inline-flex;align-items:center;gap:7px;background:var(--card);border:1px solid var(--linha2);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:800;color:var(--ink2)}
.chip-plano i{width:9px;height:9px;border-radius:50%;background:var(--verde-vivo)}
.solta{background:var(--card2);border-radius:14px;padding:14px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.solta.sobre{background:var(--verde-claro)}
.solta b{font-family:var(--fdisp);font-size:22px;letter-spacing:-.02em}
.nota-loja{display:inline-grid;place-items:center;width:84px;height:84px;border-radius:22px;background:var(--verde-claro);color:var(--verde-tinta);position:relative}
.nota-loja b{font-family:var(--fdisp);font-size:34px;letter-spacing:-.03em}
.nota-loja.ruim{background:var(--laranja-claro);color:var(--laranja)}
.nota-loja.meh{background:var(--amarelo-claro);color:var(--amarelo)}
.agcard{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--linha);border-radius:14px;background:var(--card)}
.agcard .ic{width:38px;height:38px;border-radius:11px;background:var(--roxo-claro);color:var(--roxo-tinta);display:grid;place-items:center;font-weight:800;font-size:13px;flex:none;font-family:var(--fnum)}
.agcard b{display:block;font-size:15px}
.agcard span{color:var(--ink2);font-size:13.5px}
.kv{display:grid;grid-template-columns:120px 1fr;gap:6px 14px;margin:0;font-size:15px}
.kv dt{color:var(--ink3);font-weight:800;font-size:12.5px;letter-spacing:.02em;padding-top:3px}
.kv dd{margin:0;color:var(--ink2)}
.kv dd b{color:var(--ink)}
.linha-preco{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.linha-preco .v{font-family:var(--fdisp);font-size:44px;font-weight:800;letter-spacing:-.035em;line-height:1}
.linha-preco .v.gratis{color:var(--verde-tinta)}
.linha-preco small{color:var(--ink3);font-weight:700;font-size:14px}
.arquivo{display:flex;gap:12px;align-items:center;background:var(--card2);border:1px dashed var(--linha2);border-radius:14px;padding:12px 14px;font-size:14.5px}
.arquivo .ext{width:42px;height:42px;border-radius:10px;background:var(--verde-tinta);color:#fff;display:grid;place-items:center;font:800 11px var(--fnum);flex:none}
.arquivo .ext.pdf{background:var(--laranja)}
.arquivo .ext.md{background:var(--roxo)}
.arquivo b{display:block;color:var(--ink)}
.arquivo span{color:var(--ink3);font-size:13px}
.icone{width:22px;height:22px;flex:none;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.icone.g{width:28px;height:28px}
.titulo-ic{display:flex;align-items:center;gap:10px}
.titulo-ic .icone{color:var(--roxo)}
body[data-modo="operar"] .btn{box-shadow:none}
body[data-modo="operar"] .card{box-shadow:none}
body[data-modo="operar"] .card.suave{box-shadow:none}

/* ---------- rodapé ---------- */
footer[data-rodape]{background:var(--card);border-top:1px solid var(--linha);margin-top:40px;padding:48px 0 28px;color:var(--ink2);font-size:14.5px}
.rodape{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:28px}
@media(max-width:900px){.rodape{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.rodape{grid-template-columns:1fr}}
.rodape h4{margin:0 0 12px;font-size:13px;color:var(--ink3);letter-spacing:.03em;text-transform:uppercase}
.rodape ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.rodape a{color:var(--ink2);font-weight:600}
.rodape a:hover{color:var(--roxo)}
.rodape .marca p{max-width:34ch;margin-top:10px}
.rodape .sociais{display:flex;gap:8px;margin-top:8px}
.rodape .sociais a{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--card2);color:var(--ink2)}
.rodape .sociais a:hover{background:var(--roxo-claro);color:var(--roxo)}
.rodape .sociais svg{width:18px;height:18px;fill:currentColor}
.rodape-baixo{margin-top:32px;padding-top:16px;border-top:1px solid var(--linha);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--ink3)}
footer:not([data-rodape]){padding:28px 0;color:var(--ink3);font-size:13.5px}
footer:not([data-rodape]) .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
footer:not([data-rodape]) a{color:var(--ink2)}

/* ============================================================================
   CASCA DO APLICATIVO (v72)
   O site de vendas e claro e vende. O aplicativo e escuro e trabalha. A troca
   e so de casca: o conteudo de cada pagina continua o mesmo.
   Quem pinta isto: /site/aplicativo.js (e o servidor, marcando <html class="logado">).
   ========================================================================== */
.barra.barra-app{background:var(--escuro);border-bottom:1px solid rgba(255,255,255,.09);backdrop-filter:none}
.barra.barra-app .wrap{min-height:60px;gap:10px}
.barra.barra-app .logo{color:var(--escuro-ink)}
.barra.barra-app .logo span{color:#fff}
.barra.barra-app nav{margin-left:8px;gap:2px}
.barra.barra-app nav a{display:inline-flex;align-items:center;gap:8px;color:var(--escuro-ink2);font-weight:700;font-size:14.5px;
  padding:9px 12px;min-height:40px;border-radius:10px}
.barra.barra-app nav a svg{width:17px;height:17px;flex:none;opacity:.85}
.barra.barra-app nav a:hover{background:rgba(255,255,255,.08);color:#fff;text-decoration:none}
.barra.barra-app nav a.atual{background:rgba(99,236,208,.28);color:#fff}
.barra.barra-app nav a.atual svg{opacity:1}
.barra.barra-app .app-dir{margin-left:auto;display:flex;align-items:center;gap:8px}

.barra.barra-app .chip-loja{display:inline-flex;align-items:center;gap:7px;max-width:190px;min-height:36px;
  padding:6px 11px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);
  color:var(--escuro-ink2);font:700 13px var(--fonte)}
.barra.barra-app .chip-loja svg{width:15px;height:15px;flex:none}
.barra.barra-app .chip-loja span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.barra.barra-app .chip-loja:hover{background:rgba(255,255,255,.13);color:#fff;text-decoration:none}
.barra.barra-app .chip-loja.on{color:#B7F5E9;border-color:rgba(22,163,135,.5)}
.barra.barra-app .chip-loja.on svg{color:#4ADEC0}

.barra.barra-app .app-conta{position:relative}
.barra.barra-app .app-conta>button{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:4px 12px 4px 4px;
  border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);border-radius:999px;cursor:pointer;
  color:#fff;font:800 13.5px var(--fonte)}
.barra.barra-app .app-conta>button:hover{background:rgba(255,255,255,.13)}
.barra.barra-app .app-conta>button i{width:28px;height:28px;border-radius:50%;background:var(--roxo-2);color:#fff;
  display:grid;place-items:center;font:800 13px var(--fnum);font-style:normal;flex:none}
.barra.barra-app .app-conta>button span{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.app-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:236px;background:var(--card);border:1px solid var(--linha);
  border-radius:14px;box-shadow:var(--sombra2);padding:6px;z-index:60}
.app-menu[hidden]{display:none}
.app-menu .cab{padding:9px 11px 10px;border-bottom:1px solid var(--linha);margin-bottom:5px}
.app-menu .cab b{display:block;font-size:14.5px;color:var(--ink)}
.app-menu .cab small{display:block;font-size:12.5px;color:var(--ink3);font-weight:700;text-transform:capitalize}
.app-menu a{display:flex;align-items:center;gap:9px;padding:10px 11px;min-height:42px;border-radius:9px;
  color:var(--ink2);font-weight:700;font-size:14px}
.app-menu a svg{width:16px;height:16px;flex:none;opacity:.7}
.app-menu a:hover{background:var(--card2);color:var(--ink);text-decoration:none}
.app-menu a.sai{color:var(--laranja)}
.app-menu a.sai:hover{background:var(--laranja-claro)}

/* faixa que aparece quando quem ja comprou abre uma pagina de VENDA */
.faixa-volta{background:var(--roxo-claro);border-bottom:1px solid var(--linha)}
.faixa-volta .wrap{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:9px 0;
  font:700 14px var(--fonte);color:var(--roxo-tinta)}
.faixa-volta .btn{margin-left:auto}
@media(max-width:600px){.faixa-volta .btn{margin-left:0}}

/* rodape curto: dentro do aplicativo ninguem precisa do mapa do site */
.rodape-app{border-top:1px solid var(--linha);margin-top:34px;background:var(--card)}
.rodape-app .wrap{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:16px 0;
  font:700 13.5px var(--fonte);color:var(--ink3)}
.rodape-app a{color:var(--ink3)}
.rodape-app a:hover{color:var(--roxo)}
.rodape-app .sep{opacity:.5}

/* celular: o menu do aplicativo abre em coluna, igual ao do site */
@media(max-width:900px){
  .barra.barra-app nav{position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;
    background:var(--escuro2);border-bottom:1px solid rgba(255,255,255,.1);padding:8px;gap:2px;display:none;margin:0}
  .barra.barra-app nav.aberto{display:flex}
  .barra.barra-app nav a{min-height:46px;font-size:16px}
  .barra.barra-app .app-dir{gap:6px}
  .barra.barra-app .chip-loja{max-width:120px}
  .barra.barra-app .app-conta>button span{display:none}
  .barra.barra-app .app-conta>button{padding:4px;border-radius:50%}
  .barra.barra-app .menu-btn{margin-left:auto;background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.2)}
  .barra.barra-app .app-dir{margin-left:6px}
}
/* No celular a barra do aplicativo tinha logo + Menu + loja + conta em 390px:
   o botao Menu passava POR CIMA da palavra LUCREI. Some o que se repete em
   outro lugar — a palavra (o icone continua) e o chip da loja (que esta
   dentro do menu da conta). */
@media(max-width:560px){
  .barra.barra-app .logo span{display:none}
  .barra.barra-app .chip-loja{display:none}
  .barra.barra-app .menu-btn{padding:8px 11px;font-size:13.5px}
  .barra.barra-app .wrap{gap:8px}
}
/* O botao flutuante de WhatsApp e do site de VENDAS. Dentro do aplicativo ele
   fica em cima do menu lateral e nao serve para nada: quem ja e cliente fala
   pelo canal da conta. */
html.em-app #zapFixo,html.em-app .zap-fixo{display:none!important}

/* Bloco que existe só para VENDER. Quem já comprou não precisa ser convencido
   de novo: sai da tela. Por CSS, e não por hidden — as salas do escritório
   ligam e desligam seções por hidden e uma desfaria a outra. */
html.logado [data-venda]{display:none!important}

/* ==================================================== TABELA VIRA CARTÃO
   16/09/2026 — *"melhore e ajuste toda a versão para celular"*.

   Abaixo de 620px, cada LINHA de tabela vira um CARTÃO e cada célula mostra o
   nome da coluna ao lado. O conteúdo é o mesmo: deixa de ser grade e vira
   lista. Quem põe o nome da coluna em `data-rotulo` é o `L.tabelaCartao()`
   do lucrei.js — nenhuma tela precisou ser reescrita.

   POR QUE: o Raio-X tem 13 colunas. Num telefone, ler uma linha inteira exigia
   arrastar quatro telas para a direita — e a essa altura já não dava para
   saber de qual SKU era a linha. Rolagem horizontal dentro de uma página que
   rola na vertical é das coisas mais difíceis de usar no celular.

   O cabeçalho some porque cada célula passa a carregar o próprio rótulo.

   UM SELETOR SÓ: `.vira-cartao`. Quem carimba essa classe é o `L.tabelaCartao()`
   do lucrei.js, e só na tabela que TEM cabeçalho — porque só essa tem rótulo
   para dar às células. Tabela de duas colunas sem `<thead>` (as das Devoluções)
   fica como está: já cabe no telefone.

   Foi assim que este bloco parou de citar `.tab` e `.dre-sheet` em cada regra.
   A versão anterior repetia as duas classes linha a linha e uma tentativa de
   estender isso por busca-e-substitui transformou `.tab td:empty` em
   `.tab td, .dre-sheet td:empty` — que escondia TODA célula da tabela.
   Aconteceu. Com um seletor só, não tem o que reescrever em massa. */
@media (max-width: 620px) {
  .rolagem.tem-cartao { overflow-x: visible; }

  .vira-cartao thead { position: absolute; width: 1px; height: 1px; overflow: hidden;
                       clip: rect(0 0 0 0); white-space: nowrap; }

  .vira-cartao,
  .vira-cartao tbody,
  .vira-cartao tr,
  .vira-cartao td { display: block; width: auto; }

  .vira-cartao tr {
    border: 1px solid var(--linha); border-radius: 14px;
    padding: 4px 12px; margin-bottom: 10px; background: var(--card, #fff);
  }

  .vira-cartao td {
    border-bottom: 1px solid var(--linha);
    padding: 9px 0; display: flex; gap: 12px;
    align-items: baseline; justify-content: space-between;
    text-align: right;
  }

  .vira-cartao tr td:last-child { border-bottom: 0; }

  /* o rótulo da coluna, do lado esquerdo de cada célula */
  .vira-cartao td[data-rotulo]:before {
    content: attr(data-rotulo);
    flex: 0 0 auto; max-width: 52%;
    text-align: left; font-size: 11.5px; font-weight: 800;
    color: var(--ink3); letter-spacing: .01em;
  }

  /* célula vazia não vira linha em branco com um rótulo solto */
  .vira-cartao td:empty { display: none; }

  /* A primeira célula é o título do cartão: sem rótulo, maior e em BLOCO.
     Em bloco porque ela quase nunca tem só um texto — costuma trazer o SKU em
     <b> e o nome do produto num <span class="peq"> embaixo. Como flex, os dois
     viravam duas colunas espremidas, uma de cada lado da célula. Empilhados,
     leem-se como título e subtítulo, que é o que são. */
  .vira-cartao tr td:first-child {
    display: block; text-align: left;
    font-weight: 800; font-size: 14px;
    border-bottom: 1px solid var(--linha); padding-top: 12px;
  }
  .vira-cartao tr td:first-child:before { content: none; }
  .vira-cartao tr td:first-child .peq,
  .vira-cartao tr td:first-child .mudo { font-weight: 600; }

  .vira-cartao td.n { text-align: right; }
}


/* ==========================================================================
   16/09/2026 — MARCA LUCREI (manual Atlântico + Menta). Só cor e fonte.
   ========================================================================== */
.btn{background:var(--menta);color:var(--menta-ink);box-shadow:0 6px 16px rgba(16,44,54,.10),0 1px 2px rgba(16,44,54,.08)}
.btn:hover{background:#73E7CF;color:var(--menta-ink)}
.btn.verde{background:var(--verde);color:#fff}
.btn.claro{background:var(--roxo-claro);color:var(--roxo-tinta)}
.btn.escuro{background:var(--escuro);color:#fff}
.btn.fantasma{background:transparent;color:var(--ink)}
