/* Boi Na Conta - visual do aplicativo (verde dinheiro) */

:root{
  --fundo:#F4F7F5;
  --carta:#FFFFFF;
  --carta-2:#F0F4F1;
  --borda:#E2E8E4;
  --borda-2:#CFD9D3;
  --texto:#0E1A14;
  --apagado:#6B7A72;
  --verde:#059669;
  --verde-2:#047857;
  --verde-3:#065F46;
  --verde-luz:#ECFDF5;
  --entra:#059669;
  --sai:#DC2626;
  --raio:16px;
  --raio-g:20px;
  --sombra:0 1px 2px rgba(14,26,20,.05), 0 8px 24px -16px rgba(14,26,20,.18);
}

*{box-sizing:border-box}

html,body{margin:0;padding:0}

body{
  background:var(--fundo);
  color:var(--texto);
  font-family:'Sora',system-ui,-apple-system,sans-serif;
  font-size:16px;
  line-height:1.5;
  min-height:100dvh;
  -webkit-font-smoothing:antialiased;
}

.oculto{display:none !important}

/* ---------- barra de cima ---------- */

.appbar{
  display:none;
  position:sticky; top:0; z-index:20;
  align-items:center; justify-content:space-between; gap:12px;
  padding:13px 16px calc(13px + env(safe-area-inset-top));
  background:rgba(255,255,255,.9);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--borda);
}
.appbar-esq{display:flex; align-items:center; gap:11px; min-width:0}
.avatar{
  width:40px; height:40px; flex:none;
  display:grid; place-items:center;
  border-radius:50%;
  background:linear-gradient(140deg,var(--verde),var(--verde-3));
  color:#fff; font-weight:700; font-size:14px; letter-spacing:.02em;
}
.appbar-ola{margin:0; font-size:15px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.appbar-sub{margin:0; font-size:12px; color:var(--apagado)}
.icone-topo{
  width:38px; height:38px; flex:none; padding:0;
  border:1px solid var(--borda); border-radius:12px;
  background:var(--carta); color:var(--apagado); font-size:17px; cursor:pointer;
}
.icone-topo:hover{color:var(--verde); border-color:var(--verde)}

/* ---------- conteudo ---------- */

.conteudo{
  width:100%; max-width:480px;
  margin:0 auto;
  padding:18px 16px 24px;
}

.tela-auth{
  min-height:88dvh;
  display:flex; flex-direction:column; justify-content:center;
  padding:18px 0;
}
.marca{text-align:center; margin-bottom:22px}
.marca-selo{
  width:66px; height:66px; margin:0 auto 12px;
  display:grid; place-items:center;
  font-size:32px;
  border-radius:20px;
  background:linear-gradient(145deg,var(--verde),var(--verde-3));
  box-shadow:0 12px 26px -12px rgba(5,150,105,.7);
}
.marca-nome{margin:0; font-size:22px; font-weight:700; letter-spacing:-.02em; color:var(--verde-3)}
.marca-frase{margin:4px 0 0; font-size:13.5px; color:var(--apagado)}

/* ---------- cartoes ---------- */

.cartao{
  background:var(--carta);
  border:1px solid var(--borda);
  border-radius:var(--raio-g);
  padding:20px;
  margin-bottom:14px;
  box-shadow:var(--sombra);
}
.cartao h1{margin:0; font-size:22px; font-weight:700; letter-spacing:-.02em}
.cartao h2{margin:0; font-size:16px; font-weight:600}
.secao{margin:0 0 2px !important}
.linha-titulo{display:flex; align-items:center; justify-content:space-between; gap:10px}
.etiqueta{
  font-size:11px; letter-spacing:.07em; text-transform:uppercase;
  color:var(--verde-2); background:var(--verde-luz);
  border-radius:999px; padding:4px 10px; font-weight:600;
}
.sub{margin:6px 0 0; color:var(--apagado); font-size:13.5px}
.rotulo{margin:0; font-size:11.5px; letter-spacing:.09em; text-transform:uppercase; color:var(--apagado)}
.valor-grande{margin:8px 0 10px; font-size:26px; font-weight:700; font-family:'IBM Plex Mono',monospace}
.barra{height:7px; border-radius:99px; background:var(--carta-2); overflow:hidden}
.barra span{display:block; height:100%; width:38%; border-radius:99px; background:linear-gradient(90deg,var(--verde),var(--verde-3))}

/* cartao do saldo */
.cartao-saldo{
  position:relative; overflow:hidden;
  border-radius:24px;
  padding:22px 20px 20px;
  margin-bottom:16px;
  color:#fff;
  background:
    radial-gradient(360px 200px at 108% -30%, rgba(255,255,255,.28), transparent 62%),
    linear-gradient(145deg,#0AA575 0%,#059669 42%,#04624A 100%);
  box-shadow:0 18px 34px -20px rgba(4,120,87,.8);
}
.cartao-saldo .rotulo{color:rgba(255,255,255,.78)}
.saldo-topo{display:flex; align-items:center; justify-content:space-between}
.olho{
  width:34px; height:34px; padding:0;
  border:1px solid rgba(255,255,255,.35); border-radius:10px;
  background:rgba(255,255,255,.14); color:#fff; font-size:14px; cursor:pointer;
}
.saldo{
  margin:10px 0 2px;
  font-family:'IBM Plex Mono',monospace;
  font-size:34px; font-weight:600; letter-spacing:-.02em;
  cursor:pointer; user-select:none;
}
.saldo-conta{margin:6px 0 0; font-size:13px; color:rgba(255,255,255,.8); font-family:'IBM Plex Mono',monospace}
.saldo-boi{
  position:absolute; right:-8px; bottom:-16px;
  font-size:92px; opacity:.16; pointer-events:none;
}

/* ---------- atalhos ---------- */

.acoes{
  display:grid; grid-template-columns:repeat(4,1fr); gap:10px;
  margin-bottom:16px;
}
.acoes button{
  display:flex; flex-direction:column; align-items:center; gap:7px;
  padding:14px 4px;
  background:var(--carta); border:1px solid var(--borda); border-radius:var(--raio);
  color:var(--texto); font-size:11.5px; font-weight:500; font-family:inherit;
  cursor:pointer; box-shadow:var(--sombra);
  transition:border-color .15s, transform .12s;
}
.acoes button:hover{border-color:var(--verde); transform:translateY(-1px)}
.acoes button em{
  width:40px; height:40px; display:grid; place-items:center;
  border-radius:50%; font-style:normal; font-size:17px;
  background:var(--verde-luz); color:var(--verde-2);
}

.atalhos{display:flex; flex-wrap:wrap; gap:8px; margin-top:10px}
.atalhos button{
  padding:9px 14px; border-radius:999px;
  background:var(--carta-2); border:1px solid var(--borda);
  color:var(--texto); font-size:13px; font-family:inherit; cursor:pointer;
}
.atalhos button:hover{background:var(--verde-luz); border-color:var(--verde); color:var(--verde-2)}

/* ---------- campos ---------- */

.campo{margin-top:14px}
.campo label{
  display:block; margin-bottom:6px;
  font-size:11.5px; letter-spacing:.07em; text-transform:uppercase; color:var(--apagado);
}
.campo input, .campo select{
  width:100%; padding:13px 14px;
  background:var(--carta); color:var(--texto);
  border:1px solid var(--borda-2); border-radius:13px;
  font-size:16px; font-family:inherit;
  transition:border-color .15s, box-shadow .15s;
}
.campo input::placeholder{color:#A3AFA8}
.campo input:focus, .campo select:focus{
  outline:none; border-color:var(--verde);
  box-shadow:0 0 0 3px rgba(5,150,105,.16);
}
.campo-valor{font-family:'IBM Plex Mono',monospace; font-size:20px !important}
.campo-codigo{
  font-family:'IBM Plex Mono',monospace;
  letter-spacing:10px; text-align:center; font-size:24px !important;
}
.dupla{display:flex; gap:10px}
.dupla .campo{flex:1; min-width:0}

/* ---------- botoes ---------- */

button{font-family:inherit}

.cartao > button, .tela-auth button, .conteudo > section > button{
  width:100%; margin-top:16px; padding:15px;
  border:0; border-radius:14px; cursor:pointer;
  background:linear-gradient(95deg,var(--verde),var(--verde-2));
  color:#fff; font-size:16px; font-weight:700; font-family:inherit;
  box-shadow:0 10px 20px -12px rgba(4,120,87,.9);
  transition:filter .15s, transform .12s;
}
.cartao > button:hover, .conteudo > section > button:hover{filter:brightness(1.06)}
.cartao > button:active, .conteudo > section > button:active{transform:translateY(1px)}
.conteudo > section > button{margin-top:6px}
.conteudo > section > button + button{margin-top:10px}

.fantasma{
  background:var(--carta) !important;
  border:1px solid var(--borda-2) !important;
  color:var(--texto) !important;
  font-weight:600 !important;
  box-shadow:none !important;
}
.fantasma:hover{border-color:var(--verde) !important; color:var(--verde-2) !important}

.perigo{
  background:var(--carta) !important;
  border:1px solid rgba(220,38,38,.35) !important;
  color:var(--sai) !important;
  font-weight:600 !important;
  box-shadow:none !important;
}

button:disabled{opacity:.55; cursor:not-allowed}

/* ---------- avisos ---------- */

.erro{
  margin:14px 0 0; padding:11px 13px;
  background:#FEF2F2; border:1px solid #FECACA;
  border-radius:12px; color:#B91C1C; font-size:13.5px;
}
.aviso-ok{
  margin:14px 0 0; padding:11px 13px;
  background:var(--verde-luz); border:1px solid #A7F3D0;
  border-radius:12px; color:var(--verde-3); font-size:13.5px;
}

/* ---------- destino ---------- */

.destino{
  margin-top:16px; padding:14px;
  border:1px solid #A7F3D0; border-radius:14px;
  background:var(--verde-luz);
}
.destino-nome{margin:6px 0 0; font-size:18px; font-weight:600; color:var(--verde-3)}

/* ---------- listas ---------- */

.linha-item{
  display:flex; align-items:flex-start; justify-content:space-between; gap:12px;
  padding:14px 0;
  border-bottom:1px solid var(--borda);
  cursor:pointer;
}
.linha-item:last-child{border-bottom:0}
.quem{font-size:14.5px; font-weight:500}
.quando{margin-top:2px; font-size:12px; color:var(--apagado)}
.detalhe{
  margin-top:8px; padding:9px 11px;
  background:var(--carta-2); border:1px solid var(--borda); border-radius:10px;
  font-size:12px; color:var(--apagado); word-break:break-all;
}
.valor-entrada{color:var(--entra); font-weight:700; font-family:'IBM Plex Mono',monospace; white-space:nowrap}
.valor-saida{color:var(--sai); font-weight:700; font-family:'IBM Plex Mono',monospace; white-space:nowrap}
.copia{
  margin-top:10px; padding:10px;
  background:var(--carta-2); border:1px solid var(--borda); border-radius:10px;
  font-family:'IBM Plex Mono',monospace; font-size:11.5px; word-break:break-all; color:var(--apagado);
}
#cobranca-resultado img{
  display:block; margin:12px auto 0;
  border-radius:14px; background:#fff; padding:10px;
  border:1px solid var(--borda);
}
#perfil-dados p:first-child{font-weight:700; font-size:18px; margin:0}

.rodape{margin:20px 0 0; text-align:center; font-size:12px; color:#8A968F; line-height:1.7}

/* ---------- barra de baixo ---------- */

.navbar{
  display:none;
  position:fixed; left:0; right:0; bottom:0; z-index:30;
  padding:8px 6px calc(8px + env(safe-area-inset-bottom));
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(14px);
  border-top:1px solid var(--borda);
}
.navbar button{
  flex:1; display:flex; flex-direction:column; align-items:center; gap:3px;
  padding:7px 2px; background:none; border:0; cursor:pointer;
  color:#9AA69F; font-size:10.5px; font-family:inherit;
}
.navbar button em{font-style:normal; font-size:18px; line-height:1}
/* Sete abas agora. O nome quebra em duas linhas em vez de estourar a barra. */
.navbar button span{
  display:block; min-width:0; max-width:100%;
  font-size:9.5px; line-height:1.15; text-align:center;
  overflow-wrap:anywhere;
}
@media (max-width:360px){ .navbar button span{font-size:9px} }
.navbar button:hover{color:var(--verde)}

body:has(#tela-inicio:not(.oculto)) .appbar,
body:has(#tela-transferir:not(.oculto)) .appbar,
body:has(#tela-pix:not(.oculto)) .appbar,
body:has(#tela-extrato:not(.oculto)) .appbar,
body:has(#tela-jogo:not(.oculto)) .appbar,
body:has(#tela-perfil:not(.oculto)) .appbar{display:flex}

body:has(#tela-inicio:not(.oculto)) .navbar,
body:has(#tela-transferir:not(.oculto)) .navbar,
body:has(#tela-pix:not(.oculto)) .navbar,
body:has(#tela-extrato:not(.oculto)) .navbar,
body:has(#tela-jogo:not(.oculto)) .navbar,
body:has(#tela-perfil:not(.oculto)) .navbar{display:flex}

body:has(.navbar) .conteudo{padding-bottom:96px}

body:has(#tela-inicio:not(.oculto)) .navbar button[data-t="inicio"],
body:has(#tela-transferir:not(.oculto)) .navbar button[data-t="transferir"],
body:has(#tela-pix:not(.oculto)) .navbar button[data-t="pix"],
body:has(#tela-extrato:not(.oculto)) .navbar button[data-t="extrato"],
body:has(#tela-jogo:not(.oculto)) .navbar button[data-t="jogo"],
body:has(#tela-perfil:not(.oculto)) .navbar button[data-t="perfil"]{color:var(--verde-2); font-weight:600}

.cartao .secao{margin:20px 0 2px !important}
.cartao > .secao:first-child{margin-top:0 !important}
.cartao h1 + .secao{margin-top:20px !important}

@media (min-width:560px){
  .saldo{font-size:38px}
}
/* ---------- Lastreamento Vivo ---------- */

.selo{
  display:inline-block; padding:5px 11px; border-radius:999px;
  font-size:11.5px; font-weight:700; letter-spacing:.03em; white-space:nowrap;
}
.selo.grande{font-size:13px; padding:7px 14px}
.selo-verde{background:#ECFDF5; color:#047857; border:1px solid #A7F3D0}
.selo-amarelo{background:#FEF9C3; color:#854D0E; border:1px solid #FDE68A}
.selo-vermelho{background:#FEF2F2; color:#B91C1C; border:1px solid #FECACA}
.selo-cinza{background:#F0F4F1; color:#6B7A72; border:1px solid #E2E8E4}

.destaque-lastr{
  margin-top:16px; padding:16px; border-radius:16px;
  background:var(--verde-luz); border:1px solid #A7F3D0;
}
.destaque-lastr .valor-grande{margin:6px 0 4px; color:var(--verde-3)}

.placar{display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:16px}
.placar-item{
  text-align:center; padding:14px 6px; border-radius:14px;
  background:var(--carta-2); border:1px solid var(--borda);
}
.placar-item strong{
  display:block; margin-top:6px; font-size:22px;
  font-family:'IBM Plex Mono',monospace; font-weight:600;
}

.campo input[type=file]{padding:11px 12px; font-size:14px; background:var(--carta-2)}
/* ---------- Dinheiro Vivo ---------- */

.dv-palco{
  position:relative; overflow:hidden;
  border-radius:24px; margin-bottom:14px;
  aspect-ratio:3/4; max-height:62vh;
  background:linear-gradient(160deg,#0E2B1F,#07150F);
  box-shadow:0 20px 40px -24px rgba(4,60,40,.8);
}
#dv-video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
.dv-sombra{
  position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(4,30,20,.55) 0%, rgba(4,30,20,.05) 34%, rgba(3,20,14,.88) 100%);
}
.dv-topo{
  position:absolute; top:14px; left:14px; right:14px;
  display:flex; align-items:center; justify-content:space-between;
}
.dv-marca{
  font-size:11px; font-weight:700; letter-spacing:.14em; color:#fff;
  background:rgba(0,0,0,.42); border:1px solid rgba(255,255,255,.28);
  border-radius:999px; padding:6px 12px; backdrop-filter:blur(6px);
}
.dv-ponto{
  width:11px; height:11px; border-radius:50%; background:#F87171;
  box-shadow:0 0 0 4px rgba(248,113,113,.28);
  animation:dvPisca 1.6s ease-in-out infinite;
}
@keyframes dvPisca{0%,100%{opacity:1}50%{opacity:.25}}

.dv-painel{position:absolute; left:16px; right:16px; bottom:16px; color:#fff}
.dv-rotulo{
  font-size:11px; letter-spacing:.12em; text-transform:uppercase;
  color:rgba(255,255,255,.78);
}
.dv-valor{
  margin:4px 0 2px; font-family:'IBM Plex Mono',monospace;
  font-size:34px; font-weight:600; letter-spacing:-.02em;
  text-shadow:0 2px 14px rgba(0,0,0,.6);
}
.dv-nota{margin:0 0 12px; font-size:12px; color:rgba(255,255,255,.8)}
.dv-numeros{display:grid; grid-template-columns:repeat(3,1fr); gap:8px}
.dv-numeros div{
  text-align:center; padding:9px 4px; border-radius:12px;
  background:rgba(255,255,255,.13); border:1px solid rgba(255,255,255,.2);
  backdrop-filter:blur(8px);
}
.dv-numeros strong{display:block; font-size:16px; font-family:'IBM Plex Mono',monospace}
.dv-numeros span{font-size:10px; color:rgba(255,255,255,.78)}
.dv-chips{display:flex; flex-wrap:wrap; gap:6px; margin-top:10px}
.dv-chip{
  font-size:11px; padding:5px 10px; border-radius:999px; color:#fff;
  background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(8px);
}

button.mini{
  padding:7px 12px; border-radius:10px; font-size:12px; font-weight:600;
  background:var(--carta-2); border:1px solid var(--borda); color:var(--sai);
  cursor:pointer; font-family:inherit; white-space:nowrap;
}
button.mini:hover{border-color:var(--sai)}
#dv-canvas{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; pointer-events:none}
.dv-vistos-caixa{
  font-size:11px; font-weight:600; color:#fff;
  background:rgba(0,0,0,.42); border:1px solid rgba(59,232,111,.5);
  border-radius:999px; padding:6px 11px; backdrop-filter:blur(6px);
}
.dv-vistos-caixa b{color:#3BE86F; font-family:'IBM Plex Mono',monospace}

/* ================= JOGO: CACE O BOI ================= */
/* Visual de jogo leve. Nada aqui representa dinheiro de verdade. */

.jg-palco{
  position:relative; overflow:hidden;
  border-radius:24px; margin-bottom:14px;
  aspect-ratio:3/4; max-height:66vh;
  background:radial-gradient(120% 90% at 50% 0%, #10352A, #06120D);
  box-shadow:0 22px 44px -24px rgba(4,60,40,.85);
  user-select:none; -webkit-user-select:none;
}
#jg-video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
#jg-canvas{position:absolute; inset:0; width:100%; height:100%; pointer-events:none}

.jg-flash{
  position:absolute; inset:0; background:#fff; opacity:0; pointer-events:none;
}
.jg-flash.bate{animation:jgFlash .42s ease-out}
@keyframes jgFlash{0%{opacity:.92}100%{opacity:0}}

.jg-palco.tremer{animation:jgTremer .5s ease-in-out}
@keyframes jgTremer{
  0%,100%{transform:translate(0,0)}
  20%{transform:translate(-3px,2px)}
  40%{transform:translate(3px,-2px)}
  60%{transform:translate(-2px,-2px)}
  80%{transform:translate(2px,2px)}
}

.jg-topo{
  position:absolute; top:14px; left:14px; right:14px; z-index:3;
  display:flex; align-items:center; gap:8px;
}
.jg-marca{
  font-size:11px; font-weight:700; letter-spacing:.14em; color:#fff;
  background:rgba(0,0,0,.45); border:1px solid rgba(255,255,255,.3);
  border-radius:999px; padding:6px 12px; backdrop-filter:blur(6px);
}
.jg-placar{
  margin-left:auto;
  font-size:11px; color:#fff; padding:6px 12px; border-radius:999px;
  background:rgba(0,0,0,.45); border:1px solid rgba(255,255,255,.3);
  backdrop-filter:blur(6px);
}
.jg-placar b{color:#3BE86F; font-family:'IBM Plex Mono',monospace; font-size:13px}
.jg-virar{
  width:38px; height:38px; padding:0; border-radius:50%;
  font-size:17px; line-height:1; color:#fff;
  background:rgba(0,0,0,.45); border:1px solid rgba(255,255,255,.3);
  backdrop-filter:blur(6px); cursor:pointer;
}

.jg-fala{
  position:absolute; z-index:3; left:16px; right:16px; top:64px;
  text-align:center; color:#fff; font-size:15px; font-weight:600;
  text-shadow:0 2px 10px rgba(0,0,0,.75);
  transition:color .2s ease;
}
.jg-fala.achou{color:#3BE86F; font-size:19px; letter-spacing:.02em}

.jg-rodape{position:absolute; z-index:3; left:16px; right:16px; bottom:16px; text-align:center}
.jg-capturar{
  width:100%; margin:0 0 8px; padding:17px 18px;
  font-size:19px; font-weight:700; letter-spacing:.06em; color:#05271A;
  background:linear-gradient(180deg,#5FF29A,#22C55E);
  border:0; border-radius:16px; cursor:pointer;
  box-shadow:0 10px 26px -8px rgba(34,197,94,.9), inset 0 -3px 0 rgba(0,0,0,.18);
  animation:jgPulsa 1.1s ease-in-out infinite;
}
.jg-capturar:active{transform:translateY(2px)}
@keyframes jgPulsa{0%,100%{transform:scale(1)}50%{transform:scale(1.035)}}
.jg-ilustrativo{
  margin:0; font-size:11px; color:rgba(255,255,255,.85);
  text-shadow:0 1px 6px rgba(0,0,0,.8);
}

.jg-cobre{
  position:absolute; inset:0; z-index:4;
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px;
  padding:24px; text-align:center;
  background:rgba(6,18,13,.88); backdrop-filter:blur(4px);
}
.jg-cobre-texto{margin:0; color:#fff; font-size:15px; line-height:1.5}
.jg-retry{
  width:auto; padding:12px 22px; border-radius:14px; border:0; cursor:pointer;
  background:#059669; color:#fff; font-weight:600;
}

.jg-cartao{animation:jgEntra .35s ease-out}
@keyframes jgEntra{from{opacity:0; transform:translateY(12px) scale(.97)}to{opacity:1; transform:none}}
.jg-cartao-topo{display:flex; gap:14px; align-items:center}
#jg-cartao-foto{
  width:96px; height:96px; flex:none; object-fit:cover;
  border-radius:16px; background:var(--carta-2); border:1px solid var(--borda);
}
.jg-cartao-titulo{margin:0; font-size:13px; font-weight:700; color:var(--verde-2); letter-spacing:.04em}
.jg-cartao-valor{
  margin:2px 0 4px; font-family:'IBM Plex Mono',monospace;
  font-size:26px; font-weight:600; color:var(--texto);
}
.jg-nota{
  margin:12px 0 0; font-size:11px; line-height:1.5; color:var(--apagado);
  background:var(--verde-luz); border:1px solid var(--borda);
  border-radius:12px; padding:9px 11px;
}

.jg-item{
  display:flex; align-items:center; gap:12px;
  padding:10px 0; border-bottom:1px solid var(--borda);
}
.jg-item:last-child{border-bottom:0}
.jg-item img{
  width:52px; height:52px; flex:none; object-fit:cover;
  border-radius:12px; background:var(--carta-2); border:1px solid var(--borda);
}
.jg-item-nome{font-weight:600; font-size:14px}
.jg-item-sub{font-size:12px; color:var(--apagado)}
.jg-item-valor{
  margin-left:auto; text-align:right;
  font-family:'IBM Plex Mono',monospace; font-weight:600; font-size:14px; color:var(--verde-2);
}

/* ---------- saude do rebanho ---------- */
.sd-previa{display:block; width:100%; max-height:320px; object-fit:cover; border-radius:14px; margin:0 0 14px; border:1px solid var(--borda)}
.sd-checks{display:grid; gap:8px; margin:4px 0 14px}
.sd-check{display:flex; align-items:center; gap:10px; padding:11px 13px; border:1px solid var(--borda-2); border-radius:13px; background:var(--carta); font-size:14.5px; cursor:pointer}
.sd-check input{width:20px; height:20px; padding:0; margin:0; flex:none; accent-color:var(--verde)}
.sd-topo{display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-bottom:10px}
.sd-selo{display:inline-block; font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; border-radius:999px; padding:5px 11px; white-space:nowrap}
.sd-verde{background:#ECFDF5; color:#065F46}
.sd-amarelo{background:#FFFBEB; color:#92400E}
.sd-vermelho{background:#FEF2F2; color:#B91C1C}
.sd-resumo{margin:0 0 12px; font-size:15px}
.sd-dado{display:flex; justify-content:space-between; gap:10px; padding:10px 0; border-top:1px solid var(--borda); border-bottom:1px solid var(--borda); margin-bottom:10px}
.sd-sinais{margin:0 0 12px; padding-left:20px; font-size:14.5px}
.sd-sinais li{margin:3px 0}
.sd-reco{padding:12px 13px; border-radius:12px; font-size:14.5px}
.sd-aviso{margin:0 0 12px; padding:10px 12px; border-radius:12px; background:var(--carta-2); color:var(--apagado); font-size:13.5px}
.sd-nota-rodape{margin-top:12px}

/* ---------- marketplace de gado (inicio) ---------- */
.mercado-cartao{position:relative; overflow:hidden}
.mercado-cartao::after{content:""; position:absolute; right:-60px; top:-60px; width:180px; height:180px; border-radius:50%; background:radial-gradient(circle, rgba(5,150,105,.10), transparent 70%); pointer-events:none}
.mercado-sub{margin:8px 0 0}
.mercado-numeros{display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:16px 0 14px}
.mercado-num{background:var(--carta-2); border:1px solid var(--borda); border-radius:14px; padding:12px 13px; min-width:0}
.mercado-num strong{display:block; margin-top:4px; font-family:'IBM Plex Mono',monospace; font-size:18px; font-weight:600; font-variant-numeric:tabular-nums; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.mercado-num small{display:block; margin-top:2px; font-size:12px; color:var(--apagado)}
.mercado-acoes{display:grid; grid-template-columns:1fr 1fr; gap:10px}
.cartao .mercado-acoes .mercado-btn{display:flex !important; flex-direction:row !important; align-items:center; justify-content:center; width:100%; margin:0; padding:13px 10px !important; border-radius:13px !important; font-size:14px !important; font-weight:600 !important; font-family:inherit; text-align:center; text-decoration:none; cursor:pointer; box-shadow:none !important; background:var(--carta) !important; color:var(--verde-3) !important; border:1px solid var(--borda-2) !important; transition:border-color .15s, transform .12s}
.cartao .mercado-acoes .mercado-btn.principal{background:linear-gradient(145deg,#0AA575 0%,#059669 45%,#04624A 100%) !important; color:#fff !important; border-color:transparent !important; box-shadow:0 10px 20px -14px rgba(4,120,87,.9) !important}
.cartao .mercado-acoes .mercado-btn:hover{transform:translateY(-1px); border-color:var(--verde) !important}
.mini.mini-verde{color:var(--verde-2)}

/* ---------- marketplace: vitrine, anuncio e lojas (estilo loja online) ---------- */
#tela-mercado, #tela-anuncio, #tela-loja{--mc-verde:#059669; --mc-verde-e:#04624A; --mc-ouro:#F5B301}

/* topo verde com busca, como nas grandes lojas */
.mc-topo{
  margin:-18px -16px 0; padding:14px 16px 16px;
  background:linear-gradient(160deg,#0AA575 0%,#059669 55%,#04624A 100%);
}
.mc-busca{display:flex; align-items:center; gap:0; background:#fff; border-radius:14px; padding:4px 4px 4px 12px; box-shadow:0 6px 18px -10px rgba(0,0,0,.45)}
.mc-lupa{font-size:15px; opacity:.55}
.mc-busca input{flex:1; min-width:0; border:0; outline:none; background:transparent; padding:11px 8px; font-size:15.5px; font-family:inherit; color:var(--texto)}
.mc-busca input::-webkit-search-cancel-button{display:none}
.mc-busca button{flex:none; border:0; border-radius:11px; padding:10px 14px; background:var(--mc-verde-e); color:#fff; font-weight:700; font-size:13.5px; font-family:inherit; cursor:pointer}
.mc-onde{display:flex; align-items:center; gap:6px; margin-top:10px; color:#fff; font-size:13px}
.mc-onde select{appearance:none; -webkit-appearance:none; background:transparent; border:0; color:#fff; font-weight:600; font-size:13.5px; font-family:inherit; padding:2px 16px 2px 0; cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,#fff 50%),linear-gradient(135deg,#fff 50%,transparent 50%); background-position:right 5px center,right 0 center; background-size:5px 5px; background-repeat:no-repeat}
.mc-onde select option{color:var(--texto)}

/* categorias em bolinhas, com rolagem de lado */
.mc-cats{display:flex; gap:6px; overflow-x:auto; margin:0 -16px; padding:14px 16px 6px; scrollbar-width:none; background:var(--carta); border-bottom:1px solid var(--borda)}
.mc-cats::-webkit-scrollbar{display:none}
.mc-cat{flex:none; display:flex; flex-direction:column; align-items:center; gap:6px; width:68px; padding:0 0 8px; background:none; border:0; border-bottom:2px solid transparent; cursor:pointer; font-family:inherit; color:var(--apagado); font-size:11.5px; font-weight:600}
.mc-cat em{width:48px; height:48px; display:grid; place-items:center; border-radius:50%; font-style:normal; font-size:22px; background:var(--carta-2); border:1px solid var(--borda); transition:transform .12s}
.mc-cat.ativo{color:var(--verde-3); border-bottom-color:var(--mc-verde)}
.mc-cat.ativo em{background:var(--verde-luz); border-color:#A7F3D0; transform:scale(1.04)}

/* faixa de destaque */
.mc-banner{display:flex; align-items:center; justify-content:space-between; gap:12px; margin:14px 0 4px; padding:14px 14px 14px 16px; border-radius:16px;
  background:linear-gradient(120deg,#FFF7DB 0%,#FFFBEB 60%); border:1px solid #FCE7A6}
.mc-banner-titulo{margin:0; font-weight:700; font-size:14.5px; color:#5B4300}
.mc-banner-txt{margin:3px 0 0; font-size:12.5px; color:#7A5D0B; line-height:1.4}
.mc-banner button{flex:none; border:0; border-radius:11px; padding:10px 12px; background:var(--mc-ouro); color:#3D2D00; font-weight:700; font-size:12.5px; font-family:inherit; cursor:pointer; box-shadow:0 6px 14px -8px rgba(160,110,0,.7)}

.mc-barra{display:flex; align-items:center; justify-content:space-between; gap:10px; margin:14px 2px 10px}
.mc-contagem{margin:0; font-size:12.5px; color:var(--apagado)}
.mc-ordenar{display:flex; align-items:center; gap:6px; font-size:12.5px; color:var(--apagado)}
.mc-ordenar select{border:1px solid var(--borda-2); border-radius:10px; padding:7px 10px; background:var(--carta); font-family:inherit; font-size:13px; color:var(--texto)}

/* grade de produtos */
.mc-grade{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-bottom:14px}
.mc-prod{background:var(--carta); border:1px solid var(--borda); border-radius:14px; overflow:hidden; cursor:pointer; display:flex; flex-direction:column; transition:box-shadow .15s, transform .12s}
.mc-prod:hover{box-shadow:0 12px 26px -16px rgba(14,26,20,.35); transform:translateY(-2px)}
.mc-prod-img{position:relative; aspect-ratio:1/1; max-width:100%; background:var(--carta-2)}
.mc-prod-foto{position:absolute; inset:0; background-size:cover; background-position:center}
.mc-sem-foto{display:grid; place-items:center; align-content:center; gap:6px;
  background:radial-gradient(circle at 30% 20%, #F0FDF4, #DCFCE7 55%, #BBF7D0) !important}
.mc-sem-foto span{font-size:44px; filter:saturate(.9)}
.mc-sem-foto small{font-size:12px; color:var(--verde-3)}
.mc-prod-qtd{position:absolute; left:8px; bottom:8px; padding:3px 8px; border-radius:8px; background:rgba(14,26,20,.72); color:#fff; font-size:11.5px; font-weight:600}
.mc-prod-ok{position:absolute; left:8px; top:8px; padding:3px 8px; border-radius:8px; background:var(--mc-verde); color:#fff; font-size:10.5px; font-weight:700; letter-spacing:.02em}
.mc-prod-nfotos{position:absolute; right:8px; bottom:8px; padding:3px 7px; border-radius:8px; background:rgba(255,255,255,.9); font-size:11px}
.mc-prod-info{padding:10px 11px 12px; display:flex; flex-direction:column; gap:2px}
.mc-prod-titulo{margin:0; font-size:13.5px; line-height:1.3; color:var(--texto); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:2.6em}
.mc-prod-preco{margin:6px 0 0; font-size:20px; font-weight:600; letter-spacing:-.01em; color:var(--texto); font-variant-numeric:tabular-nums; white-space:nowrap}
.mc-prod-preco sup, .mc-det-preco sup, .mc-item-preco sup{font-size:.5em; margin-left:1px; top:-.85em}
.mc-rs{font-size:.7em}
.mc-prod-apoio{margin:0; font-size:11.5px; color:var(--apagado)}
.mc-prod-retira{margin:5px 0 0; font-size:12px; font-weight:700; color:#00A650}
.mc-prod-local{margin:0; font-size:11.5px; color:var(--apagado); white-space:nowrap; overflow:hidden; text-overflow:ellipsis}

.mc-carregando{display:grid; grid-template-columns:repeat(2,1fr); gap:10px}
.mc-carregando div, .mc-pulsa{height:230px; border-radius:14px; background:linear-gradient(90deg,var(--carta-2),#fff,var(--carta-2)); background-size:200% 100%; animation:mcBrilho 1.2s linear infinite}
@keyframes mcBrilho{to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.mc-carregando div,.mc-pulsa{animation:none}}
.mc-vazio{text-align:center; padding:34px 18px; background:var(--carta); border:1px dashed var(--borda-2); border-radius:16px; margin-bottom:12px}
.mc-vazio span{font-size:34px}
.mc-vazio p{margin:8px 0 0}

/* pagina do anuncio */
.mc-galeria{position:relative; margin:-18px -16px 14px; aspect-ratio:1/1; max-height:420px; background:#0E1A14; overflow:hidden}
.mc-galeria.mc-sem-foto{max-height:300px}
.mc-galeria-trilho{display:flex; height:100%; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none}
.mc-galeria-trilho::-webkit-scrollbar{display:none}
.mc-galeria-trilho img{flex:0 0 100%; width:100%; height:100%; object-fit:cover; scroll-snap-align:start}
.mc-galeria-cont{position:absolute; right:12px; bottom:12px; padding:4px 10px; border-radius:999px; background:rgba(0,0,0,.6); color:#fff; font-size:12px; font-weight:600}
.mc-det{padding-top:18px}
.mc-det-meta{margin:0 0 6px; font-size:12.5px; color:var(--apagado)}
.cartao h1.mc-det-titulo{margin:0 0 8px; font-size:20px; font-weight:600; line-height:1.3; letter-spacing:-.01em}
.mc-det-preco{margin:10px 0 0; font-size:32px; font-weight:500; letter-spacing:-.02em; font-variant-numeric:tabular-nums}
.mc-det-apoio{margin:2px 0 14px; font-size:13.5px; color:var(--apagado)}
.mc-entrega{display:flex; gap:12px; align-items:flex-start; padding:12px 0; border-top:1px solid var(--borda)}
.mc-entrega > span{font-size:20px; line-height:1}
.mc-entrega strong{display:block; font-size:14px; color:#00A650}
.mc-entrega small{display:block; margin-top:2px; font-size:12.5px; color:var(--apagado)}
.mc-seguro strong{color:var(--texto)}
.cartao > .mc-cta{margin-top:12px !important; font-size:16px}
.mc-tabela{margin-top:10px; border:1px solid var(--borda); border-radius:12px; overflow:hidden}
.mc-tabela div{display:flex; justify-content:space-between; gap:12px; padding:11px 13px; font-size:14px}
.mc-tabela div:nth-child(odd){background:var(--carta-2)}
.mc-tabela span{color:var(--apagado)}
.mc-tabela strong{font-weight:600; text-align:right}
.mc-descricao{margin:10px 0 0; font-size:14.5px; line-height:1.6; white-space:pre-line}

/* vendedor */
.mc-vendedor{display:flex; align-items:center; gap:12px; margin-top:12px}
.mc-vend-sigla{width:48px; height:48px; flex:none; display:grid; place-items:center; border-radius:50%; background:linear-gradient(140deg,var(--verde),var(--verde-3)); color:#fff; font-weight:700}
.mc-vend-txt{flex:1; min-width:0}
.mc-vend-nome{margin:0; font-weight:700; font-size:15px}
.mc-vend-local{margin:2px 0 0; font-size:12.5px; color:var(--apagado)}
.mc-vend-ver{flex:none; padding:9px 14px; border-radius:10px; border:1px solid var(--verde); background:var(--carta); color:var(--verde-2); font-weight:700; font-size:13px; font-family:inherit; cursor:pointer}
.mc-reputacao{display:grid; grid-template-columns:repeat(3,1fr); margin-top:14px; border:1px solid var(--borda); border-radius:12px; overflow:hidden}
.mc-reputacao div{padding:10px 6px; text-align:center}
.mc-reputacao div + div{border-left:1px solid var(--borda)}
.mc-reputacao strong{display:block; font-size:15px}
.mc-reputacao span{display:block; font-size:11.5px; color:var(--apagado)}
.mc-comprovado{margin:12px 0 0; padding:10px 12px; border-radius:12px; background:#ECFDF5; color:#065F46; font-size:13px; font-weight:600}

/* capa da loja */
.mc-loja-capa{
  position:relative; overflow:hidden; border-radius:24px; padding:20px; margin-bottom:12px; color:#fff;
  background:radial-gradient(360px 200px at 108% -30%, rgba(255,255,255,.26), transparent 62%), linear-gradient(145deg,#0AA575 0%,#059669 42%,#04624A 100%);
  box-shadow:0 18px 34px -20px rgba(4,120,87,.8);
}
.mc-loja-id{display:flex; align-items:center; gap:12px}
.mc-sigla{width:56px; height:56px; flex:none; display:grid; place-items:center; border-radius:50%; background:#fff; color:var(--verde-3); font-weight:800; font-size:18px; box-shadow:0 6px 16px -8px rgba(0,0,0,.5)}
.mc-loja-nome{margin:0; font-size:20px; font-weight:700; letter-spacing:-.01em}
.mc-loja-local{margin:2px 0 0; font-size:13px; opacity:.85}
.mc-capa-selo{display:inline-block; margin-top:12px; padding:5px 10px; border-radius:999px; background:rgba(255,255,255,.2); border:1px solid rgba(255,255,255,.35); font-size:12px; font-weight:700}
.mc-loja-numeros{display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:16px}
.mc-loja-numeros div{background:rgba(255,255,255,.14); border-radius:14px; padding:10px 6px; text-align:center}
.mc-loja-numeros strong{display:block; font-size:18px; font-variant-numeric:tabular-nums}
.mc-loja-numeros span{display:block; font-size:11px; opacity:.85; line-height:1.25}
.mc-loja-sobre{margin:0 2px 6px; font-size:14px; color:var(--apagado); line-height:1.5}

/* minha loja */
.mc-duas{display:grid; grid-template-columns:1.4fr 1fr; gap:10px; margin-bottom:6px}
.mc-duas button{display:flex; align-items:center; justify-content:center; padding:14px 10px; border-radius:14px; font-family:inherit; font-size:14.5px; font-weight:700; cursor:pointer}
.mc-duas .mc-grande{border:0; background:linear-gradient(95deg,var(--verde),var(--verde-2)); color:#fff; box-shadow:0 10px 20px -12px rgba(4,120,87,.9)}
.conteudo > section > button.mc-link, .mc-link{display:block; width:100%; margin:4px 0 14px !important; padding:10px !important; background:none !important; border:0 !important; box-shadow:none !important; color:var(--verde-2) !important; font-weight:600 !important; font-size:13.5px !important; font-family:inherit; cursor:pointer}
.mc-boi-grande{display:grid; place-items:center; width:56px; height:56px; margin-bottom:12px; border-radius:16px; font-size:28px; background:var(--verde-luz)}
.mc-item{padding:12px 0; border-bottom:1px solid var(--borda)}
.mc-item:last-child{border-bottom:0; padding-bottom:0}
.mc-item-linha{display:flex; gap:12px; align-items:flex-start; cursor:pointer}
.mc-item-foto{position:relative; width:76px; height:76px; flex:none; border-radius:12px; background-size:cover; background-position:center; overflow:hidden}
.mc-item-foto.mc-sem-foto span{font-size:28px}
.mc-item-txt{flex:1; min-width:0}
.mc-item-titulo{margin:0; font-size:14.5px; font-weight:600; line-height:1.3}
.mc-item-sub{margin:2px 0 0; font-size:12.5px; color:var(--apagado)}
.mc-item-preco{margin:4px 0 6px; font-size:17px; font-variant-numeric:tabular-nums}
.mc-item-preco small{font-size:12px; color:var(--apagado)}
.mc-recado{margin:10px 0 0; padding:10px 12px; border-radius:12px; background:var(--carta-2); font-size:13.5px}
.mc-selo{display:inline-block; font-size:10.5px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; border-radius:999px; padding:4px 9px; white-space:nowrap}
.mc-st-verde{background:#ECFDF5; color:#065F46}
.mc-st-amarelo{background:#FFFBEB; color:#92400E}
.mc-st-cinza{background:var(--carta-2); color:var(--apagado)}
.mc-acoes{display:flex; gap:8px; margin-top:12px}
.mc-acoes .mc-acao{flex:1; display:flex; align-items:center; justify-content:center; padding:11px 10px; border-radius:12px; cursor:pointer; font-family:inherit; font-size:13.5px; font-weight:600; background:var(--carta); color:var(--texto); border:1px solid var(--borda-2); box-shadow:none}
.mc-acoes .mc-acao.verde{background:linear-gradient(95deg,var(--verde),var(--verde-2)); color:#fff; border-color:transparent}
.mc-contato{display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:12px; padding:12px 14px; border-radius:14px; background:#ECFDF5; border:1px solid #A7F3D0}
.mc-contato strong{display:block; font-size:15px}
.mc-contato small{display:block; font-size:12.5px; color:var(--apagado)}
.mc-whats{flex:none; padding:10px 14px; border-radius:12px; background:#16A34A; color:#fff; font-weight:700; font-size:13.5px; text-decoration:none}

/* fotos do novo anuncio */
.mc-fotos-up{display:grid; grid-template-columns:repeat(3,1fr); gap:8px}
.mc-foto-mini{position:relative; aspect-ratio:1/1; max-width:100%; border-radius:12px; background-size:cover; background-position:center; border:1px solid var(--borda)}
.mc-foto-capa{position:absolute; left:6px; bottom:6px; padding:2px 7px; border-radius:7px; background:var(--verde); color:#fff; font-size:10.5px; font-weight:700}
.mc-foto-tirar{position:absolute; right:5px; top:5px; width:26px; height:26px; display:grid; place-items:center; padding:0; border-radius:50%; border:0; background:rgba(0,0,0,.6); color:#fff; font-size:17px; line-height:1; cursor:pointer}
.mc-foto-add{aspect-ratio:1/1; display:flex !important; flex-direction:column; align-items:center; justify-content:center; gap:4px; margin:0 !important; border:1.5px dashed var(--borda-2); border-radius:12px; background:var(--carta-2); color:var(--verde-2) !important; font-size:11.5px !important; letter-spacing:0 !important; text-transform:none !important; font-weight:600; cursor:pointer; text-align:center}
.mc-foto-add span{font-size:22px}
.mc-arquivo{position:absolute !important; width:1px !important; height:1px !important; opacity:0; pointer-events:none}
.mc-dica{margin:8px 0 0; font-size:12px; color:var(--apagado)}
.mc-sugestao{display:flex; align-items:center; justify-content:space-between; gap:10px; margin:-2px 0 14px; padding:10px 12px; border-radius:12px; background:var(--verde-luz); color:var(--verde-3); font-size:13px}
.mc-sugestao button{flex:none; padding:7px 14px; border-radius:10px; border:1px solid #A7F3D0; background:#fff; color:var(--verde-3); font-weight:700; font-family:inherit; cursor:pointer}

/* ---------- quanto vale meu gado ---------- */
.av-topo{margin:-18px -16px 14px; padding:22px 18px 26px; color:#fff; background:radial-gradient(420px 220px at 110% -20%, rgba(255,255,255,.22), transparent 60%), linear-gradient(160deg,#0AA575 0%,#059669 55%,#04624A 100%)}
.av-topo h1{margin:6px 0 6px; font-size:25px; font-weight:800; letter-spacing:-.02em; line-height:1.15}
.av-topo p{margin:0; font-size:14px; opacity:.9; line-height:1.45; max-width:34ch}
.av-topo .av-topo-selo{display:inline-block; padding:4px 10px; border-radius:999px; background:rgba(255,255,255,.18); font-size:12px; font-weight:700; opacity:1}

.av-passos{display:flex; align-items:flex-start; margin:0 0 14px; padding:12px 10px; background:var(--carta); border:1px solid var(--borda); border-radius:16px}
.av-passos i{flex:1; height:2px; margin-top:13px; background:var(--borda-2)}
.av-passo{display:flex; flex-direction:column; align-items:center; gap:4px; width:52px; flex:none}
.av-passo span{width:28px; height:28px; display:grid; place-items:center; border-radius:50%; background:var(--carta-2); border:1px solid var(--borda-2); font-size:12.5px; font-weight:700; color:var(--apagado)}
.av-passo small{font-size:10.5px; color:var(--apagado); text-align:center; line-height:1.15}
.av-passo.agora span{background:var(--verde); border-color:var(--verde); color:#fff; box-shadow:0 0 0 4px rgba(5,150,105,.15)}
.av-passo.agora small{color:var(--verde-3); font-weight:700}
.av-passo.feito span{background:var(--verde-luz); border-color:#A7F3D0; color:var(--verde-2)}

.av-bloco{padding:18px}
.cartao h2.av-t{font-size:17px; font-weight:700; margin:0}
.av-cats{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:14px}
.av-cat{position:relative; display:flex; flex-direction:column; align-items:center; gap:3px; padding:14px 6px 12px; border:1.5px solid var(--borda); border-radius:14px; background:var(--carta); cursor:pointer; font-family:inherit; color:var(--texto); transition:border-color .12s, transform .12s}
.av-cat em{font-style:normal; font-size:28px; line-height:1.1}
.av-cat strong{font-size:13.5px}
.av-cat small{font-size:11px; color:var(--apagado); text-align:center; line-height:1.2}
.av-cat.ativo{border-color:var(--verde); background:var(--verde-luz); box-shadow:0 8px 18px -12px rgba(4,120,87,.7)}
.av-check{position:absolute; right:6px; top:6px; width:20px; height:20px; display:grid; place-items:center; border-radius:50%; background:var(--verde); color:#fff; font-size:11px; font-weight:800}
.av-chips{display:flex; flex-wrap:wrap; gap:8px; margin-top:12px}
.av-chip{padding:9px 14px; border-radius:999px; border:1.5px solid var(--borda-2); background:var(--carta); font-family:inherit; font-size:13.5px; font-weight:600; color:var(--texto); cursor:pointer}
.av-chip.ativo{border-color:var(--verde); background:var(--verde); color:#fff}
.av-linha{display:flex; align-items:center; justify-content:space-between; gap:12px}
.av-qtd{display:flex; align-items:center; border:1.5px solid var(--borda-2); border-radius:14px; overflow:hidden; flex:none}
.av-qtd button{width:42px; height:44px; border:0; background:var(--carta-2); font-size:20px; font-weight:700; color:var(--verde-3); cursor:pointer; font-family:inherit}
.av-qtd input{width:56px; height:44px; border:0; text-align:center; font-size:17px; font-weight:700; font-family:inherit; background:var(--carta)}

.av-peso{display:flex; align-items:baseline; gap:8px; margin:14px 0 12px; padding:6px 16px; border:2px solid var(--verde); border-radius:16px; background:var(--carta)}
.av-peso input{flex:1; min-width:0; border:0; outline:none; font-size:40px; font-weight:700; font-family:'IBM Plex Mono',monospace; color:var(--texto); background:transparent; padding:6px 0}
.av-peso span{font-size:18px; font-weight:700; color:var(--apagado)}
.av-seg{display:grid; grid-template-columns:repeat(3,1fr); gap:6px; padding:4px; border-radius:14px; background:var(--carta-2)}
.av-seg button{display:flex; flex-direction:column; align-items:center; gap:1px; padding:9px 4px; border:0; border-radius:11px; background:transparent; font-family:inherit; cursor:pointer; color:var(--apagado)}
.av-seg button strong{font-size:13.5px; color:var(--texto)}
.av-seg button small{font-size:11px}
.av-seg button.ativo{background:var(--carta); box-shadow:0 2px 8px -3px rgba(14,26,20,.25)}
.av-seg button.ativo strong{color:var(--verde-3)}
.av-ecc{display:grid; gap:8px; margin-top:12px}
.av-ecc-op{display:grid; grid-template-columns:34px 1fr; grid-template-rows:auto auto; column-gap:12px; align-items:center; text-align:left; padding:10px 12px; border:1.5px solid var(--borda); border-radius:14px; background:var(--carta); font-family:inherit; cursor:pointer; color:var(--texto)}
.av-ecc-op span{grid-row:1/3; width:34px; height:34px; display:grid; place-items:center; border-radius:10px; background:var(--carta-2); font-weight:800}
.av-ecc-op strong{font-size:14px}
.av-ecc-op small{font-size:12px; color:var(--apagado)}
.av-ecc-op.ativo{border-color:var(--verde); background:var(--verde-luz)}
.av-ecc-op.ativo span{background:var(--verde); color:#fff}
.av-toggle{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 0; border-bottom:1px solid var(--borda); cursor:pointer}
.av-toggle:last-child{border-bottom:0}
.av-toggle strong{display:block; font-size:14.5px}
.av-toggle small{display:block; font-size:12px; color:var(--apagado)}
.av-toggle input{position:absolute; opacity:0; width:1px; height:1px}
.av-switch{position:relative; flex:none; width:48px; height:28px; border-radius:999px; background:var(--borda-2); transition:background .15s}
.av-switch::after{content:""; position:absolute; left:3px; top:3px; width:22px; height:22px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.3); transition:transform .15s}
.av-toggle input:checked + .av-switch{background:var(--verde)}
.av-toggle input:checked + .av-switch::after{transform:translateX(20px)}
.av-toggle input:focus-visible + .av-switch{outline:2px solid var(--verde); outline-offset:2px}

.av-fotos{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:14px}
.av-foto{position:relative; aspect-ratio:1/1; max-width:100%; border-radius:12px; background-size:cover; background-position:center; border:1px solid var(--borda); overflow:hidden}
.av-foto.vazio{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; border:1.5px dashed var(--borda-2); background:var(--carta-2); color:var(--verde-2); cursor:pointer; text-align:center; padding:4px}
.av-foto.vazio em{font-style:normal; font-size:22px}
.av-foto.vazio span{font-size:11.5px; font-weight:600}
.av-foto-nome{position:absolute; left:6px; bottom:6px; padding:2px 7px; border-radius:7px; background:rgba(0,0,0,.6); color:#fff; font-size:10.5px; font-weight:600}
.av-video-add{display:flex; flex-direction:column; align-items:center; gap:4px; margin-top:12px; padding:22px 12px; border:1.5px dashed var(--borda-2); border-radius:14px; background:var(--carta-2); color:var(--verde-3); cursor:pointer; text-align:center}
.av-video-add em{font-style:normal; font-size:28px}
.av-video-add strong{font-size:14px}
.av-video-add small{font-size:12px; color:var(--apagado)}
.av-video{display:grid; gap:8px; margin-top:12px}
.av-video video{width:100%; max-height:280px; border-radius:14px; background:#000}
.av-video .mc-acao{padding:10px; border-radius:12px; border:1px solid var(--borda-2); background:var(--carta); font-family:inherit; font-weight:600; cursor:pointer}
.av-cot{display:flex; margin:4px 0 2px; padding:12px 14px; border-radius:14px; background:var(--verde-luz); border:1px solid #A7F3D0}
.av-cot strong{display:block; font-family:'IBM Plex Mono',monospace; font-size:20px; color:var(--verde-3)}
.av-cot small{display:block; font-size:12px; color:var(--apagado)}

.av-rodape{position:sticky; bottom:calc(12px + env(safe-area-inset-bottom)); z-index:5; display:flex; align-items:center; justify-content:space-between; gap:10px; margin:6px -6px 14px; padding:10px 10px 10px 14px; border-radius:18px; background:rgba(255,255,255,.96); backdrop-filter:blur(10px); border:1px solid var(--borda); box-shadow:0 12px 30px -14px rgba(14,26,20,.4)}
.av-rodape-info{min-width:0; font-size:13px; font-weight:600; color:var(--texto); white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.av-rodape-info em{font-style:normal; margin-right:4px}
.av-rodape-bt{display:flex; gap:6px; flex:none}
.av-rodape-bt button{padding:13px 18px; border-radius:13px; border:0; font-family:inherit; font-size:15px; font-weight:700; cursor:pointer}
#av-continuar{background:linear-gradient(95deg,var(--verde),var(--verde-2)); color:#fff; box-shadow:0 10px 20px -12px rgba(4,120,87,.9)}
.av-voltar{background:var(--carta-2) !important; color:var(--texto)}

/* resultado: etiqueta de preco */
.av-etiqueta{display:flex; gap:14px; align-items:center; margin-bottom:12px; padding:14px; border-radius:22px; background:var(--carta); border:1px solid var(--borda); box-shadow:var(--sombra)}
.av-etiqueta-foto{position:relative; width:104px; height:104px; flex:none; border-radius:16px; background-size:cover; background-position:center; overflow:hidden}
.av-etiqueta-foto.mc-sem-foto span{font-size:40px}
.av-etiqueta-txt{min-width:0}
.av-etiqueta-sobre{margin:0; font-size:12.5px; color:var(--apagado)}
.av-etiqueta-rotulo{margin:6px 0 0; font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--verde-2)}
.av-etiqueta-preco{margin:0 0 6px; font-size:30px; font-weight:600; letter-spacing:-.02em; line-height:1.1; font-variant-numeric:tabular-nums}
.av-etiqueta-preco sup{font-size:.5em; top:-.9em}
.av-etiqueta-preco small{font-size:12.5px; font-weight:500; color:var(--apagado); letter-spacing:0}
.av-faixa-barra{position:relative; height:10px; border-radius:99px; background:linear-gradient(90deg,#FDE68A,#34D399,#FDE68A)}
.av-faixa-barra i{position:absolute; top:50%; width:22px; height:22px; margin-left:-11px; border-radius:50%; background:#fff; border:4px solid var(--verde); transform:translateY(-50%); box-shadow:0 2px 6px rgba(0,0,0,.25)}
.av-faixa-num{display:flex; justify-content:space-between; margin-top:10px; font-weight:700; font-size:14.5px; font-variant-numeric:tabular-nums}
.av-faixa-num small{display:block; font-size:11.5px; font-weight:500; color:var(--apagado)}
.av-faixa-num span:last-child{text-align:right}
.av-resumo{display:grid; grid-template-columns:repeat(auto-fit,minmax(90px,1fr)); gap:8px; margin:16px 0 4px}
.av-resumo div{padding:10px; border-radius:12px; background:var(--carta-2); text-align:center}
.av-resumo span{display:block; font-size:11.5px; color:var(--apagado)}
.av-resumo strong{display:block; font-size:15px; font-variant-numeric:tabular-nums}
.cartao > button.av-outra{margin-top:10px !important}
.av-avisos{margin-bottom:14px; padding:12px 14px; border-radius:16px; background:#FFFBEB; border:1px solid #FCE7A6}
.av-avisos p{margin:0; font-size:13px; color:#7A5D0B; line-height:1.45}
.av-avisos p + p{margin-top:8px}
.av-como summary{cursor:pointer; font-weight:700; font-size:15px; list-style:none}
.av-como summary::-webkit-details-marker{display:none}
.av-como summary::after{content:" \25BE"; color:var(--apagado)}
.av-etiqueta-preco small{display:block; margin-top:2px}
