:root{--carvao:#1B1813;--papel:#F5F1E8;--cartao:#FFFFFF;--linha:#E3DCCD;--linha2:#EFE9DC;--tinta:#1B1813;--suave:#5E574B;--ouro:#C9962B;--ouro-tinta:#7A5A12;--ouro-claro:#E3B341;--vendido:#0B5446;--vendido-bg:#DDF0EA;--cond:#8A4105;--cond-bg:#FBE8D6;--sem:#4A4640;--sem-bg:#ECE8E1}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:'IBM Plex Sans',system-ui,sans-serif;color:var(--tinta);background:var(--papel)}
a{color:inherit}
h1{margin:0;font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:clamp(26px,3vw,38px);letter-spacing:-.5px;line-height:1.05}
h2{margin:0 0 12px;font-size:18px;font-weight:600}
.mono{font-family:'IBM Plex Mono',ui-monospace,monospace;font-variant-numeric:tabular-nums}
.sub{color:var(--suave);font-size:15px;margin:6px 0 0}
.fraco{color:var(--suave)}
.forte{font-weight:600}
.ouro{color:var(--ouro-tinta);font-weight:600}
.dir{text-align:right}
.oculto{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.topo{height:64px;background:var(--carvao);color:var(--papel);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,4vw,48px)}
.topo-esq{display:flex;align-items:center;gap:40px}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--papel)}
.marca b{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:20px}
.marca b span{font-weight:500;color:var(--ouro)}
.topo nav{display:flex;gap:24px;font-size:15px}
.topo nav a{text-decoration:none;color:#CFC7B8;min-height:44px;display:flex;align-items:center}
.topo nav a[aria-current]{color:var(--papel);font-weight:600;box-shadow:inset 0 -2px 0 var(--ouro)}
.topo form button{background:none;border:0;color:#CFC7B8;font:inherit;font-size:14px;cursor:pointer;min-height:44px}
main{padding:28px clamp(16px,4vw,48px) 48px;display:flex;flex-direction:column;gap:24px;max-width:1440px;margin:0 auto}
.titulo{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.sufixo{font-weight:500;color:var(--suave);font-size:.65em}
.voltar{font-size:14px;color:var(--suave);text-decoration:none;min-height:32px;display:inline-flex;align-items:center}
.painel{background:var(--cartao);border:1px solid var(--linha);border-radius:14px;overflow:hidden}
.linha{display:grid;gap:16px;align-items:center;padding:10px 20px;border-top:1px solid var(--linha2);text-decoration:none;color:inherit}
a.linha:hover{background:#FBF8F1}
.linha.cab{background:var(--linha2);font-size:13px;font-weight:600;color:var(--suave);border-top:0;padding:12px 20px}
.linha[hidden]{display:none}
.g-prox{grid-template-columns:72px minmax(0,1fr) 90px 220px 20px}
.g-enc{grid-template-columns:72px minmax(0,1fr) 100px 110px 100px 150px 20px}
.g-lotes{grid-template-columns:96px minmax(0,1fr) 52px 110px 96px 110px 96px 96px 96px 64px;column-gap:12px}
.g-bens{grid-template-columns:96px minmax(0,1fr) 140px 110px 110px 120px 120px;column-gap:12px}
.g-res{grid-template-columns:96px minmax(0,1fr) 52px 104px 96px 96px 96px 118px 70px 96px 64px;column-gap:12px}
.nome{font-size:16px}
.seta{color:var(--ouro-tinta);font-size:18px;text-align:right}
.vendido{color:var(--vendido);font-weight:600}.cond{color:var(--cond);font-weight:600}
.vazio{padding:20px;margin:0;color:var(--suave)}
.thumb,.semfoto{width:96px;height:72px;border-radius:8px;display:block;background:var(--linha2);object-fit:cover}
.semfoto{display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--suave)}
.veic b{display:block;font-size:16px;font-weight:600}
.veic .versao{font-weight:500;font-size:14px;color:var(--suave)}
.veic small{font-size:12px;color:var(--suave)}
.rotulo{font-size:13px;font-weight:600}
.barra{display:flex;align-items:center;gap:10px}
.barra progress{flex:1;height:6px;border:0;border-radius:3px;background:var(--linha2);overflow:hidden;-webkit-appearance:none;appearance:none}
.barra progress::-webkit-progress-bar{background:var(--linha2)}
.barra progress::-webkit-progress-value{background:var(--ouro)}
.barra progress::-moz-progress-bar{background:var(--ouro)}
.barra small{width:64px;text-align:right;color:var(--suave);font-size:13px}
.chip{display:inline-block;padding:4px 10px;border-radius:999px;font-size:13px;font-weight:600;white-space:nowrap}
.chip.sold{background:var(--vendido-bg);color:var(--vendido)}.chip.conditional{background:var(--cond-bg);color:var(--cond)}.chip.no_sale,.chip.open{background:var(--sem-bg);color:var(--sem)}
.filtros{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.filtros input,.filtros select{max-width:100%;min-width:0;height:44px;padding:0 14px;border:1px solid #CFC5B2;border-radius:10px;background:#fff;font:inherit;font-size:15px;color:var(--tinta)}
.filtros input{width:min(360px,100%)}
.pill{padding:8px 14px;border-radius:999px;background:#FBEFD2;color:var(--ouro-tinta);font-size:14px;font-weight:600}
.resumo{display:flex;gap:12px;flex-wrap:wrap}
.resumo span{padding:10px 16px;border-radius:10px;font-size:15px;font-weight:600}
.vendido-bg{background:var(--vendido-bg);color:var(--vendido)}.cond-bg{background:var(--cond-bg);color:var(--cond)}.sem-bg{background:var(--sem-bg);color:var(--sem)}
.aviso{font-size:14px;line-height:1.5;color:var(--suave);padding:12px 14px;background:var(--linha2);border-radius:10px;margin:0}
.cartao-valores,.so-estreito,.so-celular,.canto,.cel-bloco{display:none}
.detalhe{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px;align-items:start}
.foto-grande{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;display:block;background:var(--linha2)}
.miniaturas{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin-top:12px}
.miniaturas button{padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:none;cursor:pointer;aspect-ratio:4/3;min-height:44px}
.miniaturas button[aria-pressed=true]{border-color:var(--ouro)}
.miniaturas img{width:100%;height:100%;object-fit:cover;display:block}
.info{display:flex;flex-direction:column;gap:20px}
.numeros{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.numeros>div{padding:16px;background:var(--cartao);border:1px solid var(--linha);border-radius:12px;display:flex;flex-direction:column;gap:6px}
.numeros .escuro{background:var(--carvao);border-color:var(--carvao);color:var(--papel)}
.numeros small{font-size:13px;color:var(--suave)}.numeros .escuro small{color:#CFC7B8}
.numeros strong{font-family:'IBM Plex Mono',monospace;font-size:22px;font-weight:600}.numeros .escuro strong{color:var(--ouro-claro)}
.ficha{margin:0}
.ficha div{display:grid;grid-template-columns:170px minmax(0,1fr);gap:12px;padding:10px 16px;border-top:1px solid #F1ECE1;font-size:14px}
.ficha div:first-child{border-top:0}
.ficha dt{color:var(--suave)}.ficha dd{margin:0;font-weight:500}
.historico{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:14px}
.historico .mono{color:var(--suave);margin-right:8px}
.botao-ouro{min-height:54px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--ouro);color:var(--carvao);border-radius:10px;font-weight:700;font-size:16px;text-decoration:none}
.botao-ouro:hover{background:var(--ouro-claro)}
.sem-topo{background:var(--papel)}
.entrada{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}
.entrada .lado{background:var(--carvao);color:var(--papel);padding:clamp(28px,6vw,72px);display:flex;flex-direction:column;justify-content:space-between;gap:32px}
.entrada .lado-meio{display:flex;flex-direction:column;gap:24px}
.entrada h1{font-size:clamp(36px,5vw,60px);line-height:1.02;max-width:560px}
.entrada .lado p{font-size:19px;line-height:1.55;color:#CFC7B8;max-width:520px;margin:0}
.entrada small{color:#A8A196;font-size:13px}
.entrada form{width:min(420px,100%);display:flex;flex-direction:column;gap:20px;margin:auto;padding:32px 16px}
.entrada h2{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:34px;margin:0}
.entrada label{font-size:14px;font-weight:600;display:flex;flex-direction:column;gap:8px}
.entrada input[type=text],.entrada input[type=email],.entrada input[type=password]{height:52px;padding:0 16px;font:inherit;font-size:16px;border:1px solid #CFC5B2;border-radius:10px;background:#fff}
.entrada .check{flex-direction:row;align-items:center;gap:10px;font-weight:400;color:var(--suave);font-size:15px;min-height:44px}
.entrada .check input{width:18px;height:18px}
.entrada button{height:54px;background:var(--carvao);color:var(--papel);border:0;border-radius:10px;font:inherit;font-weight:600;font-size:16px;cursor:pointer}
.entrada .entrada-links{margin:0;font-size:15px;color:var(--suave);text-align:center}
.entrada .entrada-links a{color:inherit}
.entrada-msg{width:min(420px,100%);display:flex;flex-direction:column;gap:20px;margin:auto;padding:32px 16px}
.entrada-texto{font-size:15px;line-height:1.5;color:var(--suave);margin:0}
.entrada .botao{display:flex;align-items:center;justify-content:center;height:54px;background:var(--carvao);color:var(--papel);border-radius:10px;font-weight:600;text-decoration:none}
.entrada .erro p{margin:0}
.erro{color:#9B1C1C;background:#FBE4E4;padding:10px 14px;border-radius:10px;font-size:14px;margin:0}
.g-bprox{grid-template-columns:96px minmax(0,1fr) 52px 104px 86px 136px 96px 96px 96px 64px;column-gap:12px}
.g-fav{grid-template-columns:96px minmax(0,1fr) 48px 52px 104px 120px 116px 92px 92px 92px 60px;column-gap:12px}
.quebra{overflow-wrap:anywhere;min-width:0}
.g-benc{grid-template-columns:96px minmax(0,1fr) 52px 104px 86px 130px 96px 118px 64px 96px 64px;column-gap:12px}
.bloco{display:block;font-size:12px}
.busca-topo,.busca-linha{display:flex;gap:10px;width:100%}
.busca-topo input,.busca-linha input{flex:1;min-width:0;height:52px;padding:0 16px;border:1px solid #CFC5B2;border-radius:12px;background:#fff;font:inherit;font-size:16px}
.busca-topo button,.busca-linha button{height:52px;padding:0 22px;border:0;border-radius:12px;background:var(--carvao);color:var(--papel);font:inherit;font-weight:600;font-size:16px;cursor:pointer}
.busca{display:flex;flex-direction:column;gap:12px}
.filtros input[type=number]{width:104px}
.entendi{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.chip-f{display:inline-flex;gap:4px;align-items:center;padding:6px 12px;border-radius:999px;background:#FBEFD2;color:var(--ouro-tinta);font-size:14px;text-decoration:none}
.selo{display:inline-block;padding:1px 7px;border-radius:6px;font-size:11px;font-weight:600;letter-spacing:.3px;vertical-align:1px;font-family:'IBM Plex Sans',sans-serif}
.selo-copart{background:#E8EEF7;color:#1F3B63}.selo-vip{background:#F3E6F4;color:#5B2167}.selo-leilo{background:#E3F2EA;color:#1E5E3B}.selo-guariglia{background:#FBEBDD;color:#7A3B0C}.selo-joaoemilio{background:#E4EEF6;color:#0F3F66}.selo-sodresantoro{background:#FBE4E6;color:#8A1C24}.selo-rogeriomenezes{background:#EDE7F6;color:#3F2A78}.selo-claudiokuss{background:#FFF4CC;color:#6A4B00}.selo-pestana{background:#DDF0F2;color:#00525D}.selo-freitas{background:#EDF2DA;color:#4A5A0E}.selo-leilaosantos{background:#E6EEF0;color:#21434D}.selo-leilaovip{background:#F6E9EE;color:#6B1F3A}.selo-zuk{background:#E9F1E4;color:#2E5A1C}.selo-megaleiloes{background:#FDECE2;color:#8A3A10}.selo-ajleiloes{background:#E5EEF8;color:#1C3F70}.selo-favareto{background:#F1ECDD;color:#5C4A12}.selo-aplleiloes{background:#E8F0EC;color:#245238}.selo-tudoleilao{background:#FCEBDD;color:#7A3410}.selo-lancese{background:#E6EAF5;color:#2B3A6B}
.chip.conditional_denied{background:var(--cond-bg);color:var(--cond);opacity:.85}.chip.withdrawn,.chip.cancelled{background:var(--sem-bg);color:var(--sem)}
.avisos{display:flex;flex-wrap:wrap;gap:4px;margin:3px 0}
.aviso-chip{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11.5px;font-weight:600;background:#FDE7C8;color:#7A3D00}
.aviso-chip.queda{background:#E3F0E8;color:#1E5E3B}
.alerta-op{font-size:14px;line-height:1.5;padding:12px 14px;border-radius:10px;background:#FDE7C8;color:#5A2E00;border:1px solid #F2C98F}
.lote-num{margin:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:17px}
.lote-num b{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:22px}
@media (max-width:900px){
  .entrada{grid-template-columns:1fr}
  .detalhe{grid-template-columns:1fr}
  .miniaturas{grid-template-columns:repeat(5,minmax(0,1fr))}
  .linha.cab{display:none}
  .so-largo{display:none}
  .so-estreito{display:block;color:var(--suave);font-size:13px;margin-top:2px}
  .g-prox,.g-enc{grid-template-columns:58px minmax(0,1fr) 20px;padding:12px 16px}
  .g-lotes,.g-res,.g-bprox,.g-benc,.g-bens,.g-fav{grid-template-columns:104px minmax(0,1fr);padding:10px;row-gap:8px}
  .thumb,.semfoto{width:104px;height:78px}
  .veic b{font-size:15px}
  .topo-esq{gap:16px}
  .topo nav{gap:14px}
  .topo form button{padding-left:12px}
  .filtros>input,.filtros>select{flex:1 1 100%}
  .cartao-valores{display:grid;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 12px;padding-top:8px;border-top:1px solid var(--linha2);font-size:13px;font-family:'IBM Plex Mono',monospace}
  .so-celular{display:inline}
  .cel-bloco{display:block;font-size:12px}
  .canto{float:right;display:flex;flex-direction:column;align-items:flex-end;gap:4px;max-width:96px;margin:0 0 4px 8px;text-align:right}
  .canto .selo{font-size:12px;padding:2px 9px}
  .canto small{font-size:11.5px;line-height:1.25;color:var(--suave)}
  .cartao-valores>span{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;font-size:13px;overflow-wrap:anywhere}
  .cartao-valores .chip{font-size:12px;padding:3px 9px;line-height:1.25;white-space:normal;max-width:100%}
  .cartao-valores .fraco{font-family:'IBM Plex Sans',sans-serif}
  .cartao-valores small{font-family:'IBM Plex Sans',sans-serif;font-size:11px}
  .numeros strong{font-size:18px}
  .ficha div{grid-template-columns:130px minmax(0,1fr)}
}
/* Visor de fotos em tela cheia */
.abre-visor{cursor:zoom-in}
.sem-rolagem,.sem-rolagem body{overflow:hidden}
.visor{position:fixed;inset:0;z-index:1000;background:#0F0D0A;color:#F5F1E8}
.visor[hidden]{display:none}
.visor-palco{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none}
.visor-img{max-width:100vw;max-height:100vh;transform-origin:0 0;user-select:none;touch-action:none;cursor:zoom-in;will-change:transform}
.visor.com-zoom .visor-img{cursor:grab}
.visor.arrastando .visor-img{cursor:grabbing}
.visor-btn{position:absolute;border:0;background:rgba(245,241,232,.14);color:#F5F1E8;font-size:34px;line-height:1;width:56px;height:56px;border-radius:999px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.visor-btn:hover,.visor-btn:focus-visible{background:rgba(245,241,232,.28);outline:2px solid #C9962B;outline-offset:2px}
.visor-fechar{top:16px;right:16px;font-size:30px}
.visor-ant{left:16px;top:50%;margin-top:-28px}
.visor-prox{right:16px;top:50%;margin-top:-28px}
.visor-rodape{position:absolute;left:0;right:0;bottom:14px;display:flex;justify-content:center;gap:16px;font-size:14px;pointer-events:none}
.visor-cont{font-family:'IBM Plex Mono',monospace;background:rgba(0,0,0,.45);padding:4px 10px;border-radius:999px}
.visor-dica{color:#CFC7B8;background:rgba(0,0,0,.45);padding:4px 10px;border-radius:999px}
@media (max-width:900px),(hover:none){.visor-dica{display:none}.visor-ant,.visor-prox{top:auto;bottom:12px;margin-top:0}}

/* Credenciais */
.cred-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-top:16px}
.cred{padding:16px 18px}
.cred-cab{display:flex;justify-content:space-between;align-items:center;gap:8px}
.cred-cab h2{margin:0;font-size:18px}
.cred form{display:grid;gap:6px;margin-top:10px}
.cred label{font-size:13px;color:var(--suave)}
.cred input{font:inherit;padding:10px 12px;border:1px solid var(--linha);border-radius:8px;background:#fff;width:100%;box-sizing:border-box}
.cred form button{margin-top:6px;height:48px;border:0;border-radius:10px;background:var(--carvao);color:var(--papel);font:inherit;font-weight:600;font-size:15px;cursor:pointer}
.cred input{font-size:16px}
.conta-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:16px;margin-top:16px}
.conta{padding:16px 18px;min-width:0}
.conta h2{margin:0 0 6px;font-size:18px}
.conta form{display:grid;gap:10px}
.conta label{display:grid;gap:6px;font-size:14px;font-weight:600}
.conta input{width:100%;box-sizing:border-box;height:44px;padding:0 12px;font:inherit;font-size:16px;border:1px solid #CFC5B2;border-radius:10px;background:#fff}
.conta input:disabled{background:var(--linha2);color:var(--suave)}
.conta button{height:44px;border:0;border-radius:10px;background:var(--carvao);color:var(--papel);font:inherit;font-weight:600;cursor:pointer}
.conta button.secundario{background:transparent;color:#9B1C1C;border:1px solid #E7B4B4}
.cred .cred-apagar button{height:auto;margin-top:2px;background:none;border:0;color:var(--suave);text-decoration:underline;padding:6px 0;font-weight:400;font-size:14px}
.aviso.ok{background:#E3F2EA;border-color:#9CCBB0;color:#1E5E3B}
.cred .cred-testar{margin-top:14px;padding-top:12px;border-top:1px solid var(--linha2)}
.cred .cred-testar button{background:var(--ouro);color:var(--carvao)}
.cred-rel{margin-top:10px;padding:10px 12px;border-radius:10px;background:var(--linha2);font-size:13px}
.cred-rel.falhou{background:var(--cond-bg);color:var(--cond)}
.cred-rel ul{margin:6px 0 0;padding-left:18px}
.cred-rel li{margin:3px 0;overflow-wrap:anywhere}
.cred .cred-coleta{margin-top:14px;padding-top:12px;border-top:1px solid var(--linha2)}
.cred .cred-coleta button{background:var(--vendido);color:#fff}
.cred .cred-coleta button.desligar{background:var(--sem-bg);color:var(--sem)}

/* Ao vivo agora */
.vivo h2{display:flex;align-items:center;gap:10px}
.vivo-ponto,.vivo-selo i{width:10px;height:10px;border-radius:50%;background:#E5484D;box-shadow:0 0 0 0 rgba(229,72,77,.6);animation:pulso 1.6s infinite;display:inline-block}
@keyframes pulso{0%{box-shadow:0 0 0 0 rgba(229,72,77,.55)}70%{box-shadow:0 0 0 10px rgba(229,72,77,0)}100%{box-shadow:0 0 0 0 rgba(229,72,77,0)}}
@media (prefers-reduced-motion:reduce){.vivo-ponto,.vivo-selo i{animation:none}}
.vivo-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.vivo-card{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:8px;padding:16px 18px 14px;border-radius:16px;text-decoration:none;color:inherit;
  background:linear-gradient(180deg,#FFFFFF 0%,#FFFBF4 100%);border:1px solid var(--linha);box-shadow:0 1px 2px rgba(27,24,19,.04),0 8px 24px -12px rgba(27,24,19,.18);
  transition:transform .15s ease,box-shadow .15s ease}
.vivo-card::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;border-radius:16px 16px 0 0;background:linear-gradient(90deg,#E5484D,var(--ouro))}
.vivo-card:hover{transform:translateY(-2px);box-shadow:0 1px 2px rgba(27,24,19,.06),0 14px 30px -14px rgba(27,24,19,.28)}
.vivo-topo{display:flex;justify-content:space-between;align-items:center;gap:8px}
.vivo-selo{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:700;letter-spacing:.08em;color:#B4232A;background:#FDECEC;border-radius:999px;padding:4px 10px 4px 8px}
.vivo-selo i{width:8px;height:8px}
.vivo-nome{font-size:16px;font-weight:650;line-height:1.3}
.vivo-lote{margin:0;font-size:14px;font-weight:600;color:var(--ouro-tinta)}
.vivo-barra progress{width:100%;height:8px;border:0;border-radius:999px;overflow:hidden;background:var(--linha2);appearance:none}
.vivo-barra progress::-webkit-progress-bar{background:var(--linha2);border-radius:999px}
.vivo-barra progress::-webkit-progress-value{background:linear-gradient(90deg,var(--ouro),#E5484D);border-radius:999px}
.vivo-barra progress::-moz-progress-bar{background:linear-gradient(90deg,var(--ouro),#E5484D);border-radius:999px}
.vivo-prog{margin:0;font-size:12.5px;color:var(--suave)}
.vivo-nums{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding-top:8px;border-top:1px solid var(--linha2)}
.vivo-nums span{display:flex;flex-direction:column}
.vivo-nums b{font-family:'IBM Plex Mono',monospace;font-size:20px;font-weight:600}
.vivo-nums b.vendido{color:var(--vendido)}.vivo-nums b.cond{color:var(--cond)}
.vivo-nums small{font-size:12px;color:var(--suave)}
.vivo-rodape{margin:auto 0 0;font-size:12px;color:var(--suave)}
@media (max-width:900px){
  /* Celular: carrossel horizontal (desliza), o próximo cartão aparece na borda */
  .vivo-grade{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:2px 2px 10px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .vivo-grade::-webkit-scrollbar{display:none}
  .vivo-card{flex:0 0 86%;scroll-snap-align:start}
  .vivo-card:hover{transform:none}
}

/* Etiqueta do lote no card do pregão: resultado ou "Em pregão" (tempo real) */
.etiqueta{display:block;margin:4px 0 2px;line-height:1}
.etiqueta:empty{display:none}
.etiqueta .chip{font-size:12px;padding:3px 10px}
.chip.aovivo{display:inline-flex;align-items:center;gap:6px;background:#FDECEC;color:#B4232A}
.chip.aovivo i{width:7px;height:7px;border-radius:50%;background:#E5484D;animation:pulso 1.6s infinite}
@media (prefers-reduced-motion:reduce){.chip.aovivo i{animation:none}}
.linha:has(.chip.aovivo){background:#FFF7F6;box-shadow:inset 3px 0 0 #E5484D}

/* Favoritos: coração sobre a foto do card e botão na página do lote */
.fotobox{position:relative;display:block;line-height:0}
.fav{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent}
.fotobox .fav{position:absolute;top:6px;right:6px;width:34px;height:34px;border-radius:50%;background:rgba(27,24,19,.55);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:transform .12s ease,background .12s ease}
.fav svg{fill:none;stroke:#fff;stroke-width:2;transition:fill .12s ease,stroke .12s ease}
.fav.on svg{fill:var(--ouro-claro);stroke:var(--ouro-claro)}
.fotobox .fav:hover{transform:scale(1.08);background:rgba(27,24,19,.72)}
.fav:focus-visible{outline:2px solid var(--ouro);outline-offset:2px}
.fav-botao{gap:8px;margin-top:10px;padding:9px 16px;border-radius:999px;border:1px solid var(--linha);background:var(--cartao);font:inherit;font-weight:600;color:var(--tinta)}
.fav-botao svg{stroke:var(--tinta)}
.fav-botao.on{background:#FFF6DF;border-color:var(--ouro-claro);color:var(--ouro-tinta)}
.fav-botao.on svg{fill:var(--ouro);stroke:var(--ouro)}
.nav-fav{color:var(--ouro-claro);margin-right:5px}
[data-linha].saindo{opacity:0;transform:translateX(-12px);transition:opacity .25s ease,transform .25s ease}
@media (max-width:900px){
  .fotobox .fav{top:4px;right:4px;width:30px;height:30px}
  .topo nav{gap:12px;font-size:14px}
  .marca b{font-size:17px}
}
.nav-ico{display:none;fill:none;stroke:currentColor;stroke-width:2}
@media (max-width:480px){
  .nav-fav{margin-right:0;font-size:20px}
  .topo nav .nav-rotulo{display:none}
  .nav-ico{display:block}
  .topo nav{gap:16px}
}

/* Avisos push (página Favoritos) */
.avisos{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:14px 16px;margin:0 0 18px}
.avisos[hidden]{display:none}
.avisos-txt{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1 260px}
.avisos-txt small{color:var(--suave);line-height:1.4}
.avisos-acoes{display:flex;gap:8px;flex-wrap:wrap}
.avisos .botao{padding:9px 16px;border-radius:999px;border:1px solid var(--ouro);background:var(--ouro);color:var(--carvao);font:inherit;font-weight:700;cursor:pointer}
.avisos .botao.leve{background:var(--cartao);border-color:var(--linha);color:var(--tinta);font-weight:600}
.avisos .botao[hidden]{display:none}
.avisos .botao:disabled{opacity:.6;cursor:default}
.avisos.ligado .avisos-txt b::after{content:" · ligados";color:var(--ouro-tinta)}

/* Análise por IA (página do lote) */
.ia{padding:16px 18px;display:flex;flex-direction:column;gap:12px}
.ia h2{margin:0}
.ia h3{margin:6px 0 2px;font-size:15px}
.ia-lista{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:3px}
.ia-cab{display:flex;gap:10px;align-items:center}
.ia-numeros{margin:0}
.ia-tabela{display:flex;flex-direction:column;border-top:1px solid var(--linha)}
.ia-avaria{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.3fr) auto;gap:4px 12px;padding:8px 0;border-bottom:1px solid var(--linha);align-items:baseline}
.ia-avaria small{grid-column:1/-1}
.ia-sinais{margin:0}
.ia-status{display:flex;align-items:center;gap:8px;margin:0;font-weight:600}
.ia-form{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.botao-ia{padding:11px 18px;border-radius:10px;border:1px solid var(--carvao);background:var(--carvao);color:#fff;font:inherit;font-weight:700;cursor:pointer}
.botao-ia:disabled{opacity:.5;cursor:default}
.ia-versao p{margin:2px 0}
@media (max-width:560px){.ia-avaria{grid-template-columns:1fr}.ia-avaria .dir{text-align:left}}

/* Abas de segmento (Pregões) */
.abas{display:flex;gap:8px;flex-wrap:wrap;margin:-4px 0 18px}
.abas .aba{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid var(--linha);background:var(--cartao);color:var(--tinta);text-decoration:none;font-weight:600;font-size:14px;white-space:nowrap}
.abas .aba small{font-weight:500;color:var(--suave)}
.abas .aba.on{background:var(--carvao);border-color:var(--carvao);color:#fff}
.abas .aba.on small{color:#e9dfc8}
.filtro-sites{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:-8px 0 18px}
.sites{position:relative}
.sites summary{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:999px;border:1px dashed var(--linha);background:var(--cartao);color:var(--suave);font-size:14px;cursor:pointer;list-style:none;user-select:none}
.sites summary::-webkit-details-marker{display:none}
.sites summary b{color:var(--tinta);font-weight:600}
.sites summary:focus-visible{outline:2px solid var(--carvao);outline-offset:2px}
.sites[open] summary{border-style:solid;color:var(--tinta)}
.seta-sites{font-size:11px;transition:transform .15s ease}
.sites[open] .seta-sites{transform:rotate(180deg)}
.sites-grade{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding:12px;border:1px solid var(--linha);border-radius:14px;background:var(--cartao);max-width:760px}
.site-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 6px;border-radius:10px;border:1px solid transparent;text-decoration:none;color:var(--tinta)}
.site-chip .selo{font-size:12px;padding:2px 8px}
.site-chip small{color:var(--suave);font-variant-numeric:tabular-nums}
.site-chip:hover{border-color:var(--linha)}
.site-chip.on{border-color:var(--carvao);box-shadow:inset 0 0 0 1px var(--carvao)}
.site-chip.todos{padding:5px 12px;font-size:13px;font-weight:600}
.sites-limpar{font-size:13px;color:var(--suave)}
@media (prefers-reduced-motion:reduce){.seta-sites{transition:none}}
@media (max-width:560px){.abas{flex-wrap:nowrap;overflow-x:auto;margin-left:-16px;margin-right:-16px;padding:0 16px 4px;scrollbar-width:none}.abas::-webkit-scrollbar{display:none}}

/* Pregões: carregar mais (fatias de 7 dias) */
.mais{display:flex;justify-content:center;padding:14px 12px;border-top:1px solid var(--linha2)}
.botao-mais{display:inline-block;padding:9px 18px;border-radius:999px;border:1px solid var(--linha);background:var(--cartao);color:var(--tinta);text-decoration:none;font-weight:600;font-size:14px}
.botao-mais:hover{border-color:var(--ouro)}

/* Pregões: abas Próximos | Encerrados (grudam no topo ao rolar) e separadores por dia */
.lista-abas{position:sticky;top:0;z-index:5;display:flex;gap:6px;padding:8px;margin:6px 0 14px;background:var(--papel);border-radius:14px;box-shadow:0 1px 0 var(--linha)}
.lista-aba{flex:1 1 0;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 14px;border-radius:10px;border:1px solid var(--linha);background:var(--cartao);color:var(--tinta);font-weight:700;font-size:15px;text-decoration:none;transition:background .15s ease,color .15s ease,border-color .15s ease}
.lista-aba small{font-family:'IBM Plex Mono',monospace;font-weight:500;font-size:12px;padding:1px 8px;border-radius:999px;background:var(--linha2);color:var(--suave)}
.lista-aba:hover{border-color:var(--ouro)}
.lista-aba.on{background:var(--carvao);border-color:var(--carvao);color:#fff}
.lista-aba.on small{background:rgba(255,255,255,.14);color:#efe6cf}
[data-painel][hidden]{display:none}
.dia-sep{position:sticky;top:60px;z-index:4;display:flex;align-items:baseline;gap:10px;padding:9px 16px;background:var(--fundo-cab, #EFE8DA);border-top:1px solid var(--linha);border-bottom:1px solid var(--linha2);font-weight:700;font-size:14px;color:var(--tinta);text-transform:capitalize}
.dia-sep small{font-weight:500;color:var(--suave);text-transform:none}
@media (prefers-reduced-motion:reduce){.lista-aba{transition:none}}
[data-painel] .painel{overflow:clip}
