.elementor-31603 .elementor-element.elementor-element-2c4df85{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Arial;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-31603 .elementor-element.elementor-element-8b70b4a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-31603 .elementor-element.elementor-element-e9b096c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-31603 .elementor-element.elementor-element-ebc5ca0{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-31603 .elementor-element.elementor-element-4c73f2c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-31603 .elementor-element.elementor-element-c4a15aa{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-31603 .elementor-element.elementor-element-6b1a20a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-31603 .elementor-element.elementor-element-6b1a20a.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-31603 .elementor-element.elementor-element-572966d7{--display:flex;}@media(min-width:768px){.elementor-31603 .elementor-element.elementor-element-6b1a20a{--width:98.207%;}}@media(max-width:1024px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}}/* Start custom CSS *//* Escopo seguro (não vaza para a página inteira) */
.byd-rt-wrap,
.byd-rt-wrap *{box-sizing:border-box}

.byd-rt-wrap{
  --blue:#3498db;
  --border:#dbe7fb;
  --soft:#eef2f5;
  --head:#e9eaee;
  --red:#d51f1f;

  width:100%;
  font-weight:500;
  font-family:inherit;
}

/* Importante p/ não “apertar” no AEM */
.byd-rt-inner{
  max-width:1100px;   /* mais largo que antes */
  margin:0 auto;
  padding:0 18px;
}

.byd-rt-topbar{
  background:var(--soft);
  border-radius:999px;
  padding:12px 20px;
  margin:0 0 20px 0;
}
.byd-rt-topbar-title{
  color:var(--blue);
  font-size:15px;
  line-height:1.2;
}

/* ✅ Aqui é o principal: grid 2 colunas no desktop */
.byd-rt-grid{
  display:grid;
  grid-template-columns:minmax(360px, 1fr) minmax(360px, 1fr);
  gap:34px;
  align-items:start;
}

/* Mobile: vira 1 coluna */
@media (max-width: 860px){
  .byd-rt-grid{grid-template-columns:1fr}
}

.byd-rt-card{
  border:1px solid var(--border);
  border-radius:16px;
  overflow:hidden;
  background:#fff;
  min-width:0; /* evita overflow estranho do grid */
}

.byd-rt-card-head{
  padding:18px 18px 10px;
}
.byd-rt-card-h1{
  margin:0 0 10px 0;
  font-size:20px;
  line-height:1.2;
}

.byd-rt-cat{
  display:flex;
  align-items:center;
  gap:10px;
}
.byd-rt-icon{
  width:22px;
  height:22px;
  transform:scale(1.0);
}
.byd-rt-cat-title{
  font-size:13px;
  letter-spacing:.01em;
}

/* tabela */
.byd-rt-tablewrap{
  padding:0 16px 16px;
}
.byd-rt-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  font-size:14px;
  table-layout:auto; /* evita “quebrar” layout */
}

.byd-rt-table thead th{
  background:var(--head);
  padding:9px 10px;
  text-align:left;
  border-bottom:1px solid rgba(0,0,0,.12);
}

.byd-rt-col-rank{width:52px}
.byd-rt-th-num{text-align:right}
.byd-rt-td-num{text-align:right;white-space:nowrap}

.byd-rt-table tbody td{
  padding:8px 10px; /* ✅ mais compacto (altura menor) */
  border-bottom:1px solid rgba(0,0,0,.08);
  vertical-align:middle;
}

.byd-rt-table tbody tr:nth-child(odd) td{
  background:rgba(0,0,0,.03);
}

/* ✅ Destaque BYD com borda vermelha em toda a linha */
.byd-rt-highlight > td{
  border-top:2px solid var(--red) !important;
  border-bottom:2px solid var(--red) !important;
  background:#fff !important;
}
.byd-rt-highlight > td:first-child{
  border-left:2px solid var(--red) !important;
}
.byd-rt-highlight > td:last-child{
  border-right:2px solid var(--red) !important;
}
/* =========================================================
   BYD — Tabelas Duplas (Híbridos / Elétricos) — AEM SAFE
   ========================================================= */

.byd-ranktbl-aem{
  width: min(52vw, 920px);
  min-width: 360px;
  margin-inline: auto;
  font-family: inherit;
}

@media (max-width: 768px){
  .byd-ranktbl-aem{
    width: 100%;
    min-width: 0;
  }
}

/* Top bar no mesmo tom/peso da tabela do gráfico */
.byd-ranktbl-aem__topbar{
  background: #eef2f5;
  border-radius: 16px 16px 0 0;
  padding: clamp(12px, 1.4vw, 18px);
  color: #4aa3a6;
  font-weight: 500;
  font-size: clamp(14px, 1.3vw, 18px);
  line-height: 1.25;
}

/* Container interno */
.byd-ranktbl-aem__content{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(24px, 4vw, 56px);
  width: 100%;
  background: #ffffff;
  padding: clamp(14px, 2vw, 20px);
  border-radius: 0 0 16px 16px;
}

.byd-ranktbl-aem__content--compact{
  padding-top: clamp(12px, 1.6vw, 18px);
}

@media (max-width: 900px){
  .byd-ranktbl-aem__content{
    grid-template-columns: 1fr;
  }
}

/* Card simples (mais parecido com a referência cinza) */
.byd-ranktbl-aem__card{
  border: 1px solid #e6ebf2;
  border-radius: 14px;
  background: #ffffff;
  overflow: hidden; /* evita cortes estranhos */
}

.byd-ranktbl-aem__card--simple{
  box-shadow: none;
}

/* Cabeçalho simples */
.byd-ranktbl-aem__head{
  padding: clamp(12px, 1.6vw, 16px);
  border-bottom: 1px solid #eef2f6;
}

.byd-ranktbl-aem__head--simple{
  padding: clamp(10px, 1.3vw, 14px);
}

.byd-ranktbl-aem__cap{
  margin: 0;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #111827;
  font-size: clamp(13px, 1.2vw, 16px);
  line-height: 1.2;
}

/* Table */
.byd-ranktbl-aem__table{
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed; /* evita "estouro" e mantém colunas firmes */
  font-size: clamp(12px, 1.05vw, 13px);
}

.byd-ranktbl-aem__table--simple thead th{
  background: #e5e7eb;
  border-bottom: 1px solid #d1d5db;
}

/* TH */
.byd-ranktbl-aem__th{
  padding: 10px 12px;
  text-align: left;
  font-weight: 800;
  color: #111827;
  white-space: nowrap;
}

.byd-ranktbl-aem__th--pos{
  width: 56px;
  text-align: center;
}

.byd-ranktbl-aem__th--num{
  width: 110px;
  text-align: right;
}

/* TD */
.byd-ranktbl-aem__td{
  padding: 10px 12px;
  border-bottom: 1px solid #e5e7eb;
  color: #111827;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.byd-ranktbl-aem__td--pos{
  width: 56px;
  text-align: center;
}

.byd-ranktbl-aem__td--num{
  text-align: right;
}

.byd-ranktbl-aem__td--brand{
  font-weight: 600;
}

/* Zebra */
.byd-ranktbl-aem__table tbody tr:nth-child(odd){
  background: #f3f4f6;
}

/* Destaque BYD (contorno vermelho na linha toda) */
.byd-ranktbl-aem__highlight{
  outline: 2px solid #e11d2e;
  outline-offset: -2px;
  background: #ffffff !important;
}

/* Célula BYD (leve amarelo como referência) */
.byd-ranktbl-aem__td--byd{
  background: #fff3b0; /* amarelo suave */
}

/* Mobile: dá mais respiro nas colunas numéricas */
@media (max-width: 420px){
  .byd-ranktbl-aem__th--num{ width: 96px; }
  .byd-ranktbl-aem__td{ padding: 9px 10px; }
}
.byd-rank-chart{
  width:50%;
  min-width:320px;
  margin:0 auto;
  font-family:inherit;
}

@media (max-width:768px){
  .byd-rank-chart{ width:100%; min-width:0; }
}

.byd-rank-topbar{
  background:#eef2f5;
  padding:18px 22px;
  border-radius:16px 16px 0 0;
}

.byd-rank-topbar-title{
  font-size:18px !important;
  line-height:1.25 !important;
  font-weight:500;
  color:#4aa3a6;
  margin:0;
}

.byd-rank-card{
  background:#ffffff;
  border-radius:0 0 16px 16px;
  padding:22px;
}

.byd-rank-header{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:14px;
  line-height:1;
}

/* ícone seguro (novo SVG) */
.byd-rank-icon{
  width:28px;
  height:28px;
  flex:0 0 28px;
  background-image:url("/content/dam/byd-site/br/news-byd-brasil/car2.svg");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}

.byd-rank-section{
  font-size:clamp(16px, 1.7vw, 20px);
  line-height:1.1;
  font-weight:700;
  color:#111827;
  letter-spacing:0.15px;
}

.byd-rank-chart-wrap{ width:100%; }

/* ✅ CRÍTICO no AEM: garante altura sempre */
.byd-rank-svg{
  width:100%;
  display:block;
  aspect-ratio: 900 / 660;
  min-height:420px;
  height:auto;
}

@media (max-width:768px){
  .byd-rank-svg{ min-height:360px; }
}

/* ===== CORREÇÕES TABELA RANKING ACUMULADO ===== */

/* 1. Igualar largura com as outras tabelas */
.byd-ranktbl-aem {
  width: 100% !important;
  max-width: 1100px !important;
  min-width: 320px !important;
}

/* 2. Permitir quebra de texto no mobile */
.byd-ranktbl-aem__td,
.byd-ranktbl-aem__th {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* 3. Ajustar largura da coluna de marca */
.byd-ranktbl-aem__td--brand {
  min-width: 100px;
  word-break: break-word;
}

/* 4. Melhorar responsividade mobile */
@media (max-width: 600px) {
  .byd-ranktbl-aem__content {
    gap: 16px !important;
  }
  
  .byd-ranktbl-aem__table {
    font-size: 11px !important;
  }
  
  .byd-ranktbl-aem__td,
  .byd-ranktbl-aem__th {
    padding: 8px 6px !important;
  }
  
  .byd-ranktbl-aem__th--num,
  .byd-ranktbl-aem__td--num {
    width: 70px !important;
  }
}/* End custom CSS */