
/* ── Design Tokens ─────────────────────────────────────── */
:root {
  --c-bg:         #03070d;
  --c-surface:    rgba(15, 30, 50, 0.75);
  --c-border:     rgba(255, 255, 255, 0.08);
  --c-border-hi:  rgba(255, 255, 255, 0.16);
  --c-gold:       #f59e0b;
  --c-gold-hi:    #fde68a;
  --c-gold-glow:  rgba(245, 158, 11, 0.3);
  --c-silver:     #94a3b8;
  --c-silver-hi:  #e2e8f0;
  --c-silver-glow:rgba(148, 163, 184, 0.22);
  --c-bronze:     #cd7f32;
  --c-bronze-hi:  #fbbf24;
  --c-bronze-glow:rgba(205, 127, 50, 0.22);
  --c-accent:     #FF6600;
  --c-accent-hi:  #FF8833;
  --c-green:      #10b981;
  --c-green-hi:   #6ee7b7;
  --c-red:        #ef4444;
  --c-red-hi:     #fca5a5;
  --c-amber:      #f59e0b;
  --c-text:       #f8fafc;
  --c-text-sub:   #cbd5e1;
  --c-text-muted: #94a3b8;

  /* Layout */
  --px:      52px;
  --r:       14px;
  --gap:     9px;
  --hdr-h:   84px;
  --ftr-h:   50px;
  --timer-h: 4px;

  /* Typography */
  --f-title:   'Montserrat', sans-serif;
  --f-display: 'Outfit', sans-serif;
  --f-body:    'Inter', sans-serif;

  /* Easing */
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --ease-out:    cubic-bezier(0.22, 1, 0.36, 1);
}

/* ── Reset ─────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html, body {
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  font-family: var(--f-body);
  background-color: var(--c-bg);
  color: var(--c-text);
  -webkit-font-smoothing: antialiased;
}
::-webkit-scrollbar { display: none; }

/* ── Background ────────────────────────────────────────── */
.bg-canvas { position: fixed; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }

.grid-overlay {
  position: absolute; inset: 0;
  background-image: radial-gradient(circle, rgba(255,255,255,0.035) 1px, transparent 1px);
  background-size: 52px 52px;
  mask-image: radial-gradient(ellipse at 50% 50%, black 20%, transparent 75%);
  -webkit-mask-image: radial-gradient(ellipse at 50% 50%, black 20%, transparent 75%);
}

.orb {
  position: absolute; border-radius: 50%;
  filter: blur(120px); opacity: 0;
  animation: orb-appear 2s var(--ease-out) forwards, orb-drift 30s ease-in-out infinite;
}
.orb-blue   { width:900px;height:900px; background:radial-gradient(circle,rgba(255,102,0,.15) 0%,transparent 70%); top:-320px;left:-200px; animation-delay:0s,0s; }
.orb-amber  { width:700px;height:700px; background:radial-gradient(circle,rgba(255,136,51,.1) 0%,transparent 70%); top:20%;right:-200px; animation-delay:.5s,-10s; }
.orb-purple { width:600px;height:600px; background:radial-gradient(circle,rgba(255,102,0,.08) 0%,transparent 70%); bottom:-180px;left:35%; animation-delay:1s,-20s; }

@keyframes orb-appear { to { opacity: 1; } }
@keyframes orb-drift {
  0%,100% { transform:translate(0,0) scale(1); }
  25%      { transform:translate(50px,-50px) scale(1.07); }
  50%      { transform:translate(-30px,40px) scale(0.94); }
  75%      { transform:translate(35px,25px) scale(1.04); }
}

/* ── App Shell ─────────────────────────────────────────── */
.tv-app {
  position: relative; z-index: 1;
  width: 100vw; height: 100vh;
  display: flex; flex-direction: column;
  overflow: hidden;
}

/* ── Timer Bar ─────────────────────────────────────────── */
.slide-timer { height: var(--timer-h); flex-shrink: 0; background: rgba(255,255,255,.06); }
.slide-timer-fill { height: 100%; width: 0%; background: linear-gradient(90deg, var(--c-accent), var(--c-gold)); }

/* ── Shared Header ─────────────────────────────────────── */
.tv-header {
  height: var(--hdr-h);
  flex-shrink: 0;
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 var(--px);
  border-bottom: 1px solid var(--c-border);
  background-color: #061222; /* Tom de azul marinho da logo */
  gap: 20px;
}

.brand { display:flex; align-items:center; gap:13px; min-width:240px; flex-shrink:0; }
.brand-logo-wrap {
  height: 56px;
  background-color: #ffffff;
  padding: 6px 14px;
  border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  position: relative;
  box-shadow: 0 4px 12px rgba(0,0,0,0.25);
}
.brand-logo { 
  width: auto; height: 100%; max-width: 220px; object-fit: contain;
}
.brand-name { font-family:var(--f-display); font-size:20px; font-weight:700; display:block; line-height:1.2; }
.brand-sub  { font-size:11px; color:#ffffff; letter-spacing:.04em; display:block; margin-top:2px; }

.slide-title-wrap { text-align:center; flex:1; min-width:0; }
.slide-title {
  font-family:var(--f-title); font-size:32px; font-weight:700;
  letter-spacing:1px; color:#ffffff;
  line-height:1; white-space:nowrap; transition:opacity .4s ease;
}
.slide-subtitle { font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:var(--c-accent-hi); font-weight:500; margin-top:4px; }

.clock { min-width:240px; text-align:right; flex-shrink:0; }
.clock-time { font-family:var(--f-display); font-size:42px; font-weight:700; font-variant-numeric:tabular-nums; letter-spacing:.04em; line-height:1; }
.clock-date { font-size:12px; color:var(--c-text-sub); letter-spacing:.06em; margin-top:3px; }

/* ── Slides ────────────────────────────────────────────── */
.slides-wrap { flex:1; position:relative; overflow:hidden; min-height:0; }

.slide {
  position:absolute; inset:0;
  padding: 0 var(--px);
  opacity:0; pointer-events:none;
  transform:scale(0.985);
  transition:opacity .75s ease, transform .75s ease;
  display:flex; flex-direction:column;
}
.slide.active { opacity:1; pointer-events:auto; transform:scale(1); }

.page-frame-wrap {
  padding: 0;
}

/* Ranking anual de captadores */
#slide-captacoes-ano { background:radial-gradient(ellipse at 70% -10%,rgba(59,130,246,.07) 0%,transparent 60%); }

.cap-year-wrap {
  width:100%;
  margin:0;
  padding:14px 0;
}
.cap-year-head {
  display:grid;
  grid-template-columns:80px 84px minmax(180px,1fr) 120px 42px 118px 42px 92px;
  align-items:center;
  padding:0 22px 4px 0;
  color:var(--c-text-muted);
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.cap-year-head span:first-child { grid-column:3; }
.cap-year-head span:nth-child(2) { grid-column:4; }
.cap-year-head span:nth-child(3) { grid-column:6; }
.cap-year-head span:last-child { grid-column:8; }
.cap-year-head span:nth-child(2),
.cap-year-head span:nth-child(3),
.cap-year-head span:last-child { text-align:right; }
.cap-year-grid {
  flex:1;
  display:grid;
  grid-template-columns:1fr;
  gap:6px;
  min-height:0;
  overflow:hidden;
  scroll-behavior:auto;
}

.cap-year-card {
  min-height:96px;
  padding:0 22px 0 0;
  display:grid !important;
  grid-template-columns:80px 84px minmax(180px,1fr) 120px 42px 118px 42px 92px;
  column-gap:0;
  align-items:center;
}

.cap-year-card.rank-1 {
  min-height:96px;
  background:linear-gradient(90deg,rgba(113,63,18,.96),rgba(250,204,21,.48),rgba(10,14,30,.86));
  border:1px solid rgba(250,204,21,.78);
  box-shadow:inset 0 0 0 1px rgba(253,230,138,.26), 0 0 28px rgba(250,204,21,.18);
}

.cap-year-card.rank-2 {
  min-height:96px;
  background:linear-gradient(90deg,rgba(71,85,105,.92),rgba(226,232,240,.36),rgba(10,14,30,.84));
  border:1px solid rgba(226,232,240,.62);
  box-shadow:inset 0 0 0 1px rgba(248,250,252,.18), 0 0 18px rgba(226,232,240,.10);
}

.cap-year-card.rank-3 {
  min-height:96px;
  background:linear-gradient(90deg,rgba(92,37,18,.86),rgba(154,52,18,.22),rgba(10,14,30,.84));
  border:1px solid rgba(251,146,60,.42);
  box-shadow:inset 0 0 0 1px rgba(253,186,116,.10);
}

.cap-year-card .cap-pos { grid-column:1; width:80px; text-align:center; }
.cap-year-card .cap-medal { font-size:24px; }
.cap-year-card .cap-num { font-size:42px; color:#ffffff; line-height:1; }
.cap-year-card .cap-avatar { grid-column:2; width:64px; height:64px; margin:0; font-size:18px; justify-self:center; }
.cap-year-card .cap-info { grid-column:3; flex:initial; min-width:0; align-self:center; padding-right:16px; }
.cap-year-card .cap-name { font-size:24px; font-weight:600; }
.cap-year-card .cap-badge {
  display:block;
  margin-top:0;
  font-size:8px;
  color:var(--c-text-muted);
  text-transform:uppercase;
  letter-spacing:.08em;
}

.cap-year-stat {
  grid-column:4;
  min-width:0;
  text-align:right;
  font-family:var(--f-display);
  font-variant-numeric:tabular-nums;
}

.cap-year-value {
  display:block;
  font-size:40px;
  line-height:1;
  font-weight:900;
  color:var(--c-text);
}

.cap-year-gap {
  grid-column:6;
  min-width:0;
  text-align:right;
  font-family:var(--f-display);
  font-size:30px;
  line-height:1;
  font-weight:900;
  color:var(--c-red-hi);
  font-variant-numeric:tabular-nums;
}

.cap-year-gap.is-leader {
  font-size:18px;
  color:var(--c-green-hi);
  text-transform:uppercase;
  letter-spacing:.08em;
}

.cap-year-movement {
  grid-column:8;
  min-width:0;
  text-align:right;
  font-family:var(--f-display);
  font-size:31px;
  line-height:1;
  font-weight:900;
  font-variant-numeric:tabular-nums;
}

.cap-year-movement.up { color:var(--c-green-hi); text-shadow:0 0 14px rgba(110,231,183,.28); }
.cap-year-movement.down { color:var(--c-red-hi); text-shadow:0 0 14px rgba(252,165,165,.24); }
.cap-year-movement.same { color:var(--c-text-muted); font-size:30px; }

.cap-year-label {
  display:block;
  margin-top:0;
  font-size:8px;
  color:var(--c-text-muted);
  text-transform:uppercase;
  letter-spacing:.08em;
}

.cap-year-card.rank-1 .cap-num,
.cap-year-card.rank-1 .cap-year-value { color:#fde68a; text-shadow:0 0 18px rgba(250,204,21,.28); }
.cap-year-card.rank-2 .cap-num,
.cap-year-card.rank-2 .cap-year-value { color:#f8fafc; text-shadow:0 0 12px rgba(226,232,240,.18); }
.cap-year-card.rank-3 .cap-num,
.cap-year-card.rank-3 .cap-year-value { color:#fdba74; text-shadow:none; }

@media (max-width: 900px) {
  .cap-year-wrap { width:100%; }
  .cap-year-head { padding:0 22px 4px 0; grid-template-columns:60px 50px minmax(110px,1fr) 82px 16px 88px 16px 70px; }
  .cap-year-card { grid-template-columns:60px 50px minmax(110px,1fr) 82px 16px 88px 16px 70px; min-height:50px; }
  .cap-year-card .cap-year-gap { min-width:80px; font-size:22px; }
  .cap-year-card .cap-year-movement { min-width:62px; font-size:24px; }
  .historico-table-head,
  .hist-card { grid-template-columns:minmax(150px,1fr) 170px 105px 140px; }
  .hist-card { min-height:86px; padding-right:14px; }
  .hist-period { font-size:22px; }
  .hist-value strong, .hist-delta strong { font-size:24px; }
}

.page-frame {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  background:transparent;
  opacity:0;
  transform:scale(.985);
  transition:opacity .55s ease, transform .55s ease;
}

.page-frame.active {
  opacity:1;
  transform:scale(1);
}

/* Configurações */
#settings-page {
  background:
    radial-gradient(ellipse at 18% -12%,rgba(255,102,0,.08) 0%,transparent 54%),
    radial-gradient(ellipse at 86% 95%,rgba(59,130,246,.07) 0%,transparent 52%);
}

.settings-wrap {
  height:100%;
  display:grid;
  grid-template-columns:220px 1fr;
  gap:18px;
  padding:18px 0;
  min-height:0;
  overflow:hidden;
}

.settings-nav,
.settings-panel {
  border:1px solid var(--c-border);
  background:rgba(12,18,44,.72);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border-radius:var(--r);
}

.settings-nav {
  padding:16px;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.settings-nav-title,
.settings-kicker {
  font-size:11px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--c-accent-hi);
}

.settings-nav-item {
  height:42px;
  border:1px solid transparent;
  border-radius:8px;
  background:transparent;
  color:var(--c-text-sub);
  text-align:left;
  padding:0 12px;
  font-weight:800;
  cursor:default;
}

.settings-nav-item.active {
  color:var(--c-text);
  border-color:rgba(255,102,0,.32);
  background:rgba(255,102,0,.12);
}

.settings-main {
  min-width:0;
  min-height:0;
  display:flex;
  flex-direction:column;
  gap:14px;
}

.settings-head,
.settings-panel-head,
.settings-actions {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}

.settings-title {
  font-family:var(--f-display);
  font-size:42px;
  line-height:1;
  color:var(--c-text);
}

.settings-actions button,
.settings-panel-head button,
.settings-icon-btn {
  border:1px solid var(--c-border-hi);
  border-radius:8px;
  background:rgba(255,255,255,.06);
  color:var(--c-text);
  font-weight:800;
  height:38px;
  padding:0 13px;
  cursor:default;
}

.settings-actions .primary {
  border-color:rgba(255,102,0,.42);
  background:linear-gradient(135deg,var(--c-accent),var(--c-gold));
  color:#111827;
}

.settings-grid {
  flex:1;
  min-height:0;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  grid-template-rows:1fr 1fr;
  gap:12px;
}

.settings-panel {
  min-width:0;
  min-height:0;
  padding:14px;
  display:flex;
  flex-direction:column;
  gap:12px;
  overflow:hidden;
  opacity:0;
  transform:translateY(14px);
  transition:opacity .45s var(--ease-out), transform .45s var(--ease-out);
}

.settings-panel.visible,
#settings-page article.visible {
  opacity:1;
  transform:translateY(0);
}

.settings-panel-large {
  grid-row:1 / span 2;
}

.settings-panel-head {
  flex-shrink:0;
  align-items:flex-start;
  padding-bottom:10px;
  border-bottom:1px solid var(--c-border);
}

.settings-panel-head h3 {
  font-family:var(--f-display);
  font-size:25px;
  line-height:1;
}

.settings-panel-head p {
  color:var(--c-text-muted);
  font-size:12px;
  margin-top:5px;
}

.settings-agent-list,
.settings-prize-list,
.settings-sound-list {
  min-height:0;
  display:flex;
  flex-direction:column;
  gap:8px;
  overflow:hidden;
}

.settings-agent-row,
.settings-prize-row,
.settings-sound-row {
  display:flex;
  align-items:center;
  gap:10px;
  min-height:66px;
  padding:9px 10px;
  border:1px solid var(--c-border);
  border-radius:10px;
  background:rgba(255,255,255,.04);
  opacity:0;
  transform:translateY(12px);
  transition:opacity .4s var(--ease-out), transform .4s var(--ease-out);
}

.settings-agent-avatar,
.settings-sound-icon {
  width:44px;
  height:44px;
  flex-shrink:0;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border:1px solid var(--c-border-hi);
  background:rgba(255,255,255,.07);
  font-family:var(--f-display);
  font-weight:900;
}

.settings-agent-avatar img {
  width:100%;
  height:100%;
  object-fit:cover;
}

.settings-agent-main,
.settings-prize-main,
.settings-sound-main {
  flex:1;
  min-width:0;
}

.settings-agent-name,
.settings-prize-name,
.settings-sound-name {
  font-family:var(--f-display);
  font-size:17px;
  font-weight:900;
  color:var(--c-text);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.settings-agent-meta,
.settings-prize-meta,
.settings-sound-trigger {
  color:var(--c-text-muted);
  font-size:11px;
  margin-top:2px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.settings-type-pill {
  flex-shrink:0;
  min-width:88px;
  text-align:center;
  border-radius:999px;
  padding:6px 9px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  border:1px solid var(--c-border-hi);
}

.settings-type-pill.sale {
  color:var(--c-gold-hi);
  background:rgba(245,158,11,.11);
  border-color:rgba(245,158,11,.25);
}

.settings-type-pill.rent {
  color:#a5b4fc;
  background:rgba(99,102,241,.13);
  border-color:rgba(99,102,241,.25);
}

.settings-type-pill.both {
  color:var(--c-green-hi);
  background:rgba(16,185,129,.12);
  border-color:rgba(16,185,129,.25);
}

.settings-icon-btn {
  width:38px;
  padding:0;
  flex-shrink:0;
  font-size:16px;
}

.settings-prize-img {
  width:58px;
  height:46px;
  flex-shrink:0;
  overflow:hidden;
  border-radius:8px;
  border:1px solid var(--c-border-hi);
  background:rgba(0,0,0,.18);
}

.settings-prize-img img {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.settings-sound-icon {
  border-radius:10px;
  font-size:24px;
}

.settings-file-chip {
  display:inline-flex;
  max-width:100%;
  margin-top:6px;
  padding:4px 7px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  color:var(--c-text-sub);
  font-size:10px;
  font-variant-numeric:tabular-nums;
}

.settings-volume {
  width:94px;
  flex-shrink:0;
  display:flex;
  flex-direction:column;
  gap:6px;
  color:var(--c-text-sub);
  font-family:var(--f-display);
  font-weight:900;
  font-size:14px;
}

.settings-volume-track {
  height:8px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.08);
}

.settings-volume-track div {
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--c-accent),var(--c-gold));
}

/* Admin Config Prototype */
.admin-config-body {
  overflow:hidden;
}

.admin-config-app {
  position:relative;
  z-index:1;
  width:100vw;
  height:100vh;
  display:grid;
  grid-template-columns:260px 1fr;
  gap:0;
  color:var(--c-text);
  background:
    radial-gradient(ellipse at 22% -12%,rgba(255,102,0,.10) 0%,transparent 54%),
    radial-gradient(ellipse at 86% 95%,rgba(59,130,246,.08) 0%,transparent 52%);
}

.admin-sidebar {
  min-height:0;
  padding:28px 18px;
  border-right:1px solid var(--c-border);
  background:rgba(6,18,34,.86);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  display:flex;
  flex-direction:column;
  gap:28px;
}

.admin-brand {
  height:72px;
  border-radius:10px;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px 18px;
  box-shadow:0 16px 40px rgba(0,0,0,.26);
}

.admin-brand img {
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}

.admin-nav {
  display:flex;
  flex-direction:column;
  gap:8px;
}

.admin-nav button,
.admin-actions button,
.admin-card-head button,
.admin-icon-btn {
  border:1px solid var(--c-border-hi);
  background:rgba(255,255,255,.055);
  color:var(--c-text);
  border-radius:8px;
  font-family:var(--f-body);
  font-weight:800;
  cursor:default;
}

.admin-nav button {
  height:44px;
  padding:0 14px;
  text-align:left;
  color:var(--c-text-sub);
}

.admin-nav button.active {
  color:var(--c-text);
  border-color:rgba(255,102,0,.38);
  background:rgba(255,102,0,.13);
}

.admin-main {
  min-width:0;
  min-height:0;
  padding:30px;
  display:flex;
  flex-direction:column;
  gap:18px;
  overflow:hidden;
}

.admin-page-head {
  flex-shrink:0;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
}

.admin-kicker {
  font-size:12px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--c-accent-hi);
  margin-bottom:8px;
}

.admin-page-head h1 {
  font-family:var(--f-display);
  font-size:46px;
  line-height:1;
  color:var(--c-text);
}

.admin-page-head p {
  margin-top:8px;
  color:var(--c-text-sub);
  font-size:15px;
}

.admin-actions {
  display:flex;
  gap:10px;
  flex-shrink:0;
}

.admin-actions button,
.admin-card-head button {
  height:40px;
  padding:0 14px;
}

.admin-actions button.primary {
  border-color:rgba(255,102,0,.42);
  background:linear-gradient(135deg,var(--c-accent),var(--c-gold));
  color:#111827;
}

.admin-grid {
  flex:1;
  min-height:0;
  display:grid;
  grid-template-columns:1.08fr .92fr;
  grid-template-rows:1fr 1fr;
  gap:14px;
}

.admin-card {
  min-width:0;
  min-height:0;
  padding:16px;
  border:1px solid var(--c-border);
  border-radius:var(--r);
  background:rgba(12,18,44,.76);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  display:flex;
  flex-direction:column;
  gap:13px;
  overflow:hidden;
  opacity:0;
  transform:translateY(14px);
  transition:opacity .45s var(--ease-out), transform .45s var(--ease-out);
}

.admin-card.visible,
.admin-row.visible {
  opacity:1;
  transform:translateY(0);
}

.admin-card-large {
  grid-row:1 / span 2;
}

.admin-card-head {
  flex-shrink:0;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding-bottom:12px;
  border-bottom:1px solid var(--c-border);
}

.admin-card-head h2 {
  font-family:var(--f-display);
  font-size:26px;
  line-height:1;
  color:var(--c-text);
}

.admin-card-head p {
  color:var(--c-text-muted);
  font-size:12px;
  margin-top:5px;
}

.admin-list {
  min-height:0;
  display:flex;
  flex-direction:column;
  gap:8px;
  overflow:hidden;
}

.admin-row {
  min-height:66px;
  padding:9px 10px;
  border:1px solid var(--c-border);
  border-radius:10px;
  background:rgba(255,255,255,.045);
  display:flex;
  align-items:center;
  gap:10px;
  opacity:0;
  transform:translateY(12px);
  transition:opacity .4s var(--ease-out), transform .4s var(--ease-out);
}

.admin-avatar,
.admin-sound-icon {
  width:44px;
  height:44px;
  flex-shrink:0;
  border-radius:50%;
  overflow:hidden;
  border:1px solid var(--c-border-hi);
  background:rgba(255,255,255,.07);
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:var(--f-display);
  font-weight:900;
}

.admin-avatar img {
  width:100%;
  height:100%;
  object-fit:cover;
}

.admin-row-main {
  flex:1;
  min-width:0;
}

.admin-row-title {
  font-family:var(--f-display);
  font-size:17px;
  font-weight:900;
  color:var(--c-text);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.admin-row-sub {
  color:var(--c-text-muted);
  font-size:11px;
  margin-top:2px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.admin-pill {
  flex-shrink:0;
  min-width:88px;
  padding:6px 9px;
  border-radius:999px;
  border:1px solid var(--c-border-hi);
  text-align:center;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.admin-pill.sale {
  color:var(--c-gold-hi);
  background:rgba(245,158,11,.11);
  border-color:rgba(245,158,11,.25);
}

.admin-pill.rent {
  color:#a5b4fc;
  background:rgba(99,102,241,.13);
  border-color:rgba(99,102,241,.25);
}

.admin-pill.both {
  color:var(--c-green-hi);
  background:rgba(16,185,129,.12);
  border-color:rgba(16,185,129,.25);
}

.admin-icon-btn {
  width:38px;
  height:38px;
  flex-shrink:0;
  padding:0;
  font-size:16px;
}

.admin-prize-img {
  width:58px;
  height:46px;
  flex-shrink:0;
  overflow:hidden;
  border-radius:8px;
  border:1px solid var(--c-border-hi);
  background:rgba(0,0,0,.18);
}

.admin-prize-img img {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.admin-sound-icon {
  border-radius:10px;
  font-size:24px;
}

.admin-file-chip {
  display:inline-flex;
  max-width:100%;
  margin-top:6px;
  padding:4px 7px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  color:var(--c-text-sub);
  font-size:10px;
}

.admin-volume {
  width:94px;
  flex-shrink:0;
  display:flex;
  flex-direction:column;
  gap:6px;
  color:var(--c-text-sub);
  font-family:var(--f-display);
  font-weight:900;
  font-size:14px;
}

.admin-volume-track {
  height:8px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.08);
}

.admin-volume-track div {
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--c-accent),var(--c-gold));
}

/* ════════════════════════════════════════════════════════
   SLIDE 1 — PÓDIO PRINCIPAL
   ════════════════════════════════════════════════════════ */
#slide-1 { background: radial-gradient(ellipse at 50% -10%, rgba(245,158,11,.06) 0%, transparent 60%); }

.s1-wrap { display:flex; flex-direction:column; height:100%; }

/* ── Podium section ─────── */
.podium-section {
  flex: 1;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 16px;
  /* Extra top padding so crown emoji never clips */
  padding: 48px 20px 0;
  min-height: 0;
  overflow: visible;
}

.podium-item {
  display: flex; flex-direction: column; align-items: center;
  flex: 1; max-width: 320px;
  opacity: 0; transform: translateY(36px);
  transition: opacity .55s var(--ease-out), transform .55s var(--ease-out);
}
.podium-item.visible { opacity:1; transform:translateY(0); }

.podium-avatar-wrap { position:relative; margin-bottom:9px; }

/* Crown — 1st place only */
.podium-item-1 .podium-avatar-wrap::before {
  content: '👑';
  position: absolute;
  top: -46px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 26px;
  animation: crown-float 2.5s ease-in-out infinite;
  filter: drop-shadow(0 4px 10px rgba(245,158,11,.6));
}
@keyframes crown-float {
  0%,100% { transform:translateX(-50%) translateY(0) rotate(-3deg); }
  50%      { transform:translateX(-50%) translateY(-8px) rotate(3deg); }
}

.podium-avatar {
  border-radius:50%; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
  font-family:var(--f-display); font-weight:700; color:var(--c-text-sub);
}
.podium-item-1 .podium-avatar {
  width:120px; height:120px; font-size:36px;
  border:4px solid #facc15;
  box-shadow:0 0 36px rgba(250,204,21,.34), 0 0 72px rgba(245,158,11,.08);
  animation:gold-halo 3s ease-in-out infinite;
}
.podium-item-2 .podium-avatar {
  width:100px; height:100px; font-size:28px;
  border:3px solid #e2e8f0;
  box-shadow:0 0 28px rgba(226,232,240,.24);
}
.podium-item-3 .podium-avatar {
  width:90px; height:90px; font-size:24px;
  border:3px solid #fb923c;
  box-shadow:0 0 24px rgba(251,146,60,.20);
}
.podium-avatar img { width:100%; height:100%; object-fit:cover; display:block; }

@keyframes gold-halo {
  0%,100% { box-shadow:0 0 36px var(--c-gold-glow), 0 0 72px rgba(245,158,11,.07); }
  50%      { box-shadow:0 0 52px var(--c-gold-glow), 0 0 110px rgba(245,158,11,.14), 0 0 0 2px rgba(245,158,11,.18); }
}

.podium-medal { position:absolute; bottom:-4px; right:-6px; font-size:22px; }

.podium-name {
  font-family:var(--f-display); font-size:24px; font-weight:700;
  text-align:center; color:var(--c-text);
  margin-top:9px; margin-bottom:3px;
  white-space:nowrap;
}
.podium-item-1 .podium-name { font-size:30px; }

.podium-value {
  font-family:var(--f-display); font-weight:800; font-variant-numeric:tabular-nums;
  text-align:center; font-size:30px; margin-bottom:3px;
}
.podium-item-1 .podium-value { font-size:40px; color:var(--c-gold); }
.podium-item-2 .podium-value { color:var(--c-silver-hi); }
.podium-item-3 .podium-value { color:var(--c-bronze-hi); }

.podium-vendas { font-size:18px; color:var(--c-text-muted); margin-bottom:12px; }

.podium-base {
  width:100%; display:flex; align-items:center; justify-content:center;
  border-radius:8px 8px 0 0;
  font-family:var(--f-display); font-size:24px; font-weight:800; letter-spacing:.07em;
}
.podium-item-1 .podium-base {
  height:110px;
  background:linear-gradient(180deg,rgba(250,204,21,.48),rgba(113,63,18,.96));
  border:1px solid rgba(250,204,21,.78);
  box-shadow:inset 0 0 0 1px rgba(253,230,138,.26), 0 0 28px rgba(250,204,21,.18);
  color:#fde68a;
  border-bottom:none;
}
.podium-item-2 .podium-base {
  height:74px;
  background:linear-gradient(180deg,rgba(226,232,240,.36),rgba(71,85,105,.92));
  border:1px solid rgba(226,232,240,.62);
  box-shadow:inset 0 0 0 1px rgba(248,250,252,.18), 0 0 18px rgba(226,232,240,.10);
  color:#f8fafc;
  border-bottom:none;
}
.podium-item-3 .podium-base {
  height:52px;
  background:linear-gradient(180deg,rgba(154,52,18,.22),rgba(92,37,18,.86));
  border:1px solid rgba(251,146,60,.42);
  box-shadow:inset 0 0 0 1px rgba(253,186,116,.10);
  color:#fdba74;
  border-bottom:none;
}

/* ── Chasers (2-column grid for desktop) ────── */
.chaser-section {
  flex-shrink:0;
  padding:10px 12px 12px;
  border-top:1px solid var(--c-border);
  background:rgba(0,0,0,.15);
}

.chaser-header {
  font-size:10.5px; font-weight:700; letter-spacing:.17em;
  color:var(--c-text-muted); text-align:center; margin-bottom:10px;
}

/* 2 columns on desktop → 4 rows for 7 items = much less vertical space */
.chaser-list {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  max-height:236px;
  overflow:hidden;
}

.chaser-card { min-height:72px; padding-right:14px; border-radius:10px; }
.chaser-card .cap-pos { width:60px; }
.chaser-card .cap-num { font-size:36px; }
.chaser-card .cap-avatar { width:54px; height:54px; margin:0 10px 0 0; }
.chaser-card .cap-info { min-width:138px; }
.chaser-card .cap-name { font-size:20px; }
.chaser-card .cap-badge { display:none; }
.chaser-card .cap-bar-wrap { padding:0 10px; }
.chaser-card .cap-bar-track-inner { height:32px; }
.chaser-card .cap-bar-current-line { height:40px; }
.chaser-card .cap-bar-current-label { font-size:14px; padding:2px 6px; }
.chaser-card .cap-bar-meta-num { font-size:9px; min-width:38px; padding:2px 5px; }
.chaser-card .cap-ratio { font-size:22px; }
.chaser-card .cap-goal-num { font-size:16px; }
.chaser-card .cap-label { font-size:8px; }
.chaser-card .cap-meta-tag { font-size:8px; padding:2px 5px; }

/* Correndo pelo Pódio — tela própria */
#slide-11 {
  background: radial-gradient(ellipse at 70% -10%,rgba(59,130,246,.08) 0%,transparent 60%),
              radial-gradient(ellipse at 15% 90%,rgba(245,158,11,.06) 0%,transparent 50%);
}

.podium-section-solo { padding-bottom:0; }

.corrida-wrap {
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:16px 0;
  overflow:hidden;
}

.corrida-head {
  flex-shrink:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.corrida-note {
  color:var(--c-text-muted);
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}

.corrida-board {
  flex:1;
  min-height:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:16px;
  overflow:hidden;
  mask-image:linear-gradient(90deg,transparent 0%,black 7%,black 93%,transparent 100%);
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,black 7%,black 93%,transparent 100%);
}
.corrida-board.no-mask {
  mask-image: none;
  -webkit-mask-image: none;
}
@keyframes apply-mask-anim {
  0%, 99% { 
    mask-image: none; 
    -webkit-mask-image: none; 
  }
  100% { 
    mask-image: linear-gradient(90deg,transparent 0%,black 7%,black 93%,transparent 100%); 
    -webkit-mask-image: linear-gradient(90deg,transparent 0%,black 7%,black 93%,transparent 100%); 
  }
}
.corrida-board.delayed-mask {
  mask-image: none;
  -webkit-mask-image: none;
  animation: apply-mask-anim 4s forwards;
}

.corrida-lane { overflow:hidden; flex-shrink:0; }

.corrida-track {
  display:flex;
  width:max-content;
  gap:14px;
  animation:corrida-scroll 38s linear infinite;
}
.corrida-track.no-scroll {
  animation:none;
}

.corrida-lane.reverse .corrida-track {
  animation-direction:reverse;
  animation-duration:44s;
}

@keyframes corrida-scroll {
  from { transform:translateX(0); }
  to   { transform:translateX(-50%); }
}

.corrida-card {
  flex: 0 0 calc((100vw - 120px - 28px) / 3);
  min-height:86px;
  padding-right:18px;
}

.corrida-card .cap-info { flex:1; min-width:0; margin-right:12px; }
.corrida-card .cap-name { font-size:22px; }
.corrida-card .cap-badge { display:none; }
.corrida-card .cap-bar-wrap { padding:0 13px; }
.corrida-card .cap-ratio { font-size:28px; }
.corrida-card .cap-goal-num { font-size:20px; }
.corrida-card .cap-meta-tag { font-size:9px; padding:3px 7px; }

/* ════════════════════════════════════════════════════════
   SLIDE 2 — MOTOR DAS VENDAS (CAPTAÇÕES)
   ════════════════════════════════════════════════════════ */
#slide-2 { background:radial-gradient(ellipse at 70% -10%,rgba(59,130,246,.07) 0%,transparent 60%); }

.s2-wrap { display:flex; flex-direction:column; height:100%; padding:14px 0; gap:12px; }
.s2-label { text-align:center; font-size:11.5px; font-weight:700; letter-spacing:.16em; color:var(--c-text-muted); }

.cap-list { flex:1; display:flex; flex-direction:column; gap:10px; justify-content:center; }

.cap-card {
  display:flex; align-items:center;
  padding:0 22px 0 0; min-height:96px;
  background:var(--c-surface); border:1px solid var(--c-border);
  border-radius:var(--r); backdrop-filter:blur(24px); -webkit-backdrop-filter:blur(24px);
  position:relative; overflow:hidden; flex-shrink:0;
  opacity:0; transform:translateX(-26px);
  transition:opacity .5s var(--ease-out), transform .5s var(--ease-out);
}
.cap-card.visible { opacity:1; transform:translateX(0); }

.cap-card::before { content:''; position:absolute; left:0;top:18%;bottom:18%; width:3px; border-radius:0 3px 3px 0; background:var(--c-accent); }
.cap-card.rank-1::before { background:linear-gradient(to bottom,#92400e,var(--c-gold),var(--c-gold-hi)); width:4px; }
.cap-card.rank-2::before { background:linear-gradient(to bottom,#334155,var(--c-silver),var(--c-silver-hi)); }
.cap-card.rank-3::before { background:linear-gradient(to bottom,#78350f,var(--c-bronze),var(--c-bronze-hi)); }
.cap-card.rank-1 { border-color:rgba(245,158,11,.22); }
.cap-card.rank-2 { border-color:rgba(148,163,184,.18); }
.cap-card.rank-3 { border-color:rgba(205,127,50,.18); }

.cap-pos { width:80px; text-align:center; flex-shrink:0; }
.cap-medal { font-size:32px; }
.cap-num   { font-family:var(--f-display); font-size:42px; font-weight:900; color:#ffffff; }

.cap-avatar { width:64px;height:64px; border-radius:50%; overflow:hidden; border:2px solid var(--c-border-hi); background:rgba(30,41,59,.8); display:flex;align-items:center;justify-content:center; flex-shrink:0; margin:0 14px 0 6px; font-family:var(--f-display); font-size:18px; font-weight:700; color:var(--c-text-sub); }
.cap-avatar img { width:100%;height:100%;object-fit:cover; }
.cap-card.rank-1 .cap-avatar { border-color:rgba(245,158,11,.5); }
.cap-card.rank-2 .cap-avatar { border-color:rgba(148,163,184,.4); }
.cap-card.rank-3 .cap-avatar { border-color:rgba(205,127,50,.4); }

.cap-info { min-width:168px; flex-shrink:0; }
.cap-name  { font-family:var(--f-display); font-size:24px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cap-badge { display:none; }

.cap-bar-wrap { flex:1; padding:0 16px; min-width:0; }
.cap-bar-row { display:flex; align-items:center; gap:10px; }
.cap-bar-track { position:relative; flex:1; padding-bottom:0; min-width:0; }
.cap-bar-track-inner {
  height:48px; background:rgba(255,255,255,.05); border-radius:100px; overflow:hidden;
  border:1px solid rgba(255,255,255,.06);
}
.cap-bar-fill { height:100%; width:0%; border-radius:100px; transition:width 1.7s var(--ease-spring); position:relative;
  background:linear-gradient(90deg,#1d4ed8,var(--c-accent),var(--c-accent-hi)); opacity:.85; }
.cap-bar-fill::after { content:''; position:absolute; right:0;top:0;bottom:0; width:44px; background:linear-gradient(90deg,transparent,rgba(255,255,255,.35)); }
.cap-bar-fill.meta-hit { background:linear-gradient(90deg,#065f46,var(--c-green),var(--c-green-hi)); }
.cap-card.rank-1 .cap-bar-fill { background:linear-gradient(90deg,#78350f,var(--c-gold),var(--c-gold-hi)); }
.cap-card.rank-1 .cap-bar-fill.meta-hit { background:linear-gradient(90deg,#78350f,var(--c-gold),var(--c-green-hi)); }
.cap-card.rank-2 .cap-bar-fill { background:linear-gradient(90deg,#334155,var(--c-silver),var(--c-silver-hi)); }
.cap-card.rank-2 .cap-bar-fill.meta-hit { background:linear-gradient(90deg,#334155,var(--c-silver),var(--c-green-hi)); }
.cap-card.rank-3 .cap-bar-fill { background:linear-gradient(90deg,#78350f,var(--c-bronze),var(--c-bronze-hi)); }
.cap-card.rank-3 .cap-bar-fill.meta-hit { background:linear-gradient(90deg,#78350f,var(--c-bronze),var(--c-green-hi)); }

.cap-bar-current {
  position:absolute; top:-4px; transform:translateX(-50%);
  display:flex; align-items:center; justify-content:center; z-index:2;
  transition:left 1.7s var(--ease-spring);
}
.cap-bar-current.at-max {
  transform: translateX(-100%);
}
.cap-bar-current.at-max .cap-bar-current-label {
  right: -2px;
}
.cap-bar-current-line {
  display:block; width:4px; height:56px; border-radius:2px;
  background:#fff; box-shadow:0 0 10px rgba(255,255,255,.65), 0 0 4px var(--c-accent-hi);
}
.cap-bar-current-label {
  position:absolute;
  font-family:var(--f-display); font-size:18px; font-weight:800;
  color:var(--c-text); font-variant-numeric:tabular-nums; line-height:1;
  background:rgba(7,9,28,1); padding:4px 8px; border-radius:6px;
  border:2px solid rgba(255,255,255,0.15); box-shadow:0 4px 12px rgba(0,0,0,0.6);
}
.cap-bar-track.meta-hit .cap-bar-current-line {
  box-shadow:0 0 10px rgba(110,231,183,.7), 0 0 4px var(--c-green);
}

.cap-bar-meta-num {
  flex-shrink:0; min-width:28px; text-align:center;
  font-family:var(--f-display); font-size:14px; font-weight:700;
  color:var(--c-gold-hi); font-variant-numeric:tabular-nums;
  padding:2px 6px; border-radius:6px;
  background:rgba(245,158,11,.1); border:1px solid rgba(245,158,11,.25);
}

.cap-legend-item { display:flex; align-items:center; gap:5px; }
.cap-legend-dot { width:8px; height:8px; border-radius:2px; flex-shrink:0; }
.cap-legend-fill { background:linear-gradient(90deg,#1d4ed8,var(--c-accent)); }
.cap-legend-current { background:#fff; box-shadow:0 0 4px rgba(255,255,255,.5); width:3px; height:12px; border-radius:1px; }
.cap-legend-meta { background:rgba(245,158,11,.35); border:1px solid rgba(245,158,11,.5); border-radius:4px; width:10px; height:10px; }

.cap-stat { min-width:118px; text-align:right; flex-shrink:0; }
.cap-ratio {
  font-family:var(--f-display); font-size:36px; font-weight:800;
  display:block; font-variant-numeric:tabular-nums; line-height:1;
}
.cap-achieved { color:var(--c-text); }
.cap-sep { color:var(--c-text-muted); font-weight:500; margin:0 1px; }
.cap-goal-num { color:var(--c-text-sub); font-weight:600; font-size:28px; }
.cap-ratio.meta-hit .cap-achieved { color:var(--c-green-hi); }
.cap-card.rank-1 .cap-achieved { color:var(--c-gold); }
.cap-card.rank-2 .cap-achieved { color:var(--c-silver-hi); }
.cap-card.rank-3 .cap-achieved { color:var(--c-bronze-hi); }
.cap-label { font-size:11px; color:var(--c-text-muted); display:block; margin-top:3px; }
.cap-meta-tag {
  display:inline-block; margin-top:4px; font-size:10px; font-weight:600;
  letter-spacing:.06em; color:var(--c-text-muted);
  padding:2px 7px; border-radius:100px; background:rgba(255,255,255,.04);
}
.cap-meta-tag.meta-hit { color:var(--c-green-hi); background:rgba(16,185,129,.12); }

.cap-total {
  flex-shrink:0; padding:14px 18px 10px;
  background:rgba(255,255,255,.03); border:1px solid var(--c-border);
  border-radius:var(--r);
}
.cap-team-row {
  display:flex; align-items:baseline; justify-content:space-between; gap:16px;
  margin-bottom:10px;
}
.cap-team-title {
  font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
  color:var(--c-text-muted);
}
.cap-team-ratio {
  font-family:var(--f-display); font-size:26px; font-weight:800;
  font-variant-numeric:tabular-nums; white-space:nowrap;
}
.cap-team-ratio.meta-hit .cap-achieved { color:var(--c-green-hi); }
.cap-team-unit { font-size:13px; font-weight:500; color:var(--c-text-muted); margin-left:6px; }
.cap-team-bar { padding:0; max-width:100%; }
.cap-team-track { padding-bottom:18px; }
.cap-team-fill { background:linear-gradient(90deg,#1e3a8a,var(--c-accent),var(--c-accent-hi)); }
.cap-team-fill.meta-hit { background:linear-gradient(90deg,#065f46,var(--c-green),var(--c-green-hi)); }
.cap-team-footer { text-align:center; margin-top:2px; }
.cap-team-footer .cap-meta-tag { font-size:11px; }

.s2-legend {
  display:flex; justify-content:center; gap:20px;
  font-size:10px; color:var(--c-text-muted); letter-spacing:.04em;
}

/* ════════════════════════════════════════════════════════
   SLIDE 3 — VENDAS POR QUANTIDADE
   ════════════════════════════════════════════════════════ */
#slide-3 { background:radial-gradient(ellipse at 30% -10%,rgba(59,130,246,.08) 0%,transparent 60%); }

/* ════════════════════════════════════════════════════════
   SLIDE 4 — VENDAS POR VGV
   ════════════════════════════════════════════════════════ */
#slide-4 { background:radial-gradient(ellipse at 70% -10%,rgba(245,158,11,.08) 0%,transparent 60%); }

/* Metas da equipe — blocos de resumo */
.vnd-team-block { display:flex; flex-direction:column; gap:6px; }
.vnd-team-block-head {
  display:flex; align-items:baseline; justify-content:space-between; gap:10px;
}
.vnd-team-block-title {
  font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
  color:var(--c-text-muted);
}
.vnd-team-block .cap-ratio { font-size:26px; }
.vnd-team-block .cap-goal-num { font-size:20px; }
.vnd-team-block .cap-bar-wrap { padding:0; }
.vnd-team-block .cap-meta-tag { font-size:10px; text-align:center; }

/* ════════════════════════════════════════════════════════
   SLIDE 5 — METAS DA EQUIPE
   ════════════════════════════════════════════════════════ */
#slide-5 {
  background: radial-gradient(ellipse at 40% -10%, rgba(16,185,129,.08) 0%, transparent 55%),
              radial-gradient(ellipse at 80% 100%, rgba(59,130,246,.07) 0%, transparent 50%);
}

.metas-wrap {
  display:flex; flex-direction:column; height:100%;
  padding:8px 0 6px; gap:8px; min-height:0; overflow:hidden;
}
.metas-grid-4 {
  display:grid; grid-template-columns:1fr 1fr; grid-template-rows:1fr 1fr;
  gap:10px; flex:1; min-height:0;
}
.metas-grid-2 {
  display:grid; grid-template-columns:1fr; grid-template-rows:1fr 1fr;
  gap:20px; flex:1; min-height:0;
}
.metas-grid-2.metas-grid-delta {
  grid-template-rows:1fr 1fr 1fr;
  gap:28px;
}
.metas-grid-2.metas-grid-delta .metas-section {
  display:flex;
  align-items:center;
  padding:20px 34px;
}
.metas-grid-delta .metas-section-body {
  width:100%;
}
.metas-grid-delta .vnd-team-block {
  width:100%;
}
.metas-grid-delta .vnd-team-block-row {
  display:grid;
  grid-template-columns:1fr auto;
  align-items:baseline;
  gap:14px 28px;
}
.metas-grid-delta .vnd-team-block-title {
  grid-column:1;
  grid-row:1;
  font-family:var(--f-display);
  font-size:28px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--c-text);
  white-space:nowrap;
}
.metas-grid-delta .cap-bar-wrap {
  grid-column:1 / -1;
  grid-row:2;
  padding:0;
  min-width:0;
}
.metas-grid-delta .cap-ratio {
  grid-column:2;
  grid-row:1;
  text-align:right;
}
.metas-grid-delta .delta-kpi-block {
  display:grid;
  grid-template-columns:1fr auto;
  grid-template-rows:auto 1fr auto;
  align-items:center;
  gap:4px 24px;
}
.metas-grid-delta .delta-kpi-block .vnd-team-block-title {
  grid-column:1;
  grid-row:1;
}
.delta-kpi-value {
  grid-column:1;
  grid-row:2 / span 2;
  font-family:var(--f-display);
  font-size:76px;
  line-height:1;
  font-weight:900;
  color:var(--c-text);
  font-variant-numeric:tabular-nums;
}
.delta-kpi-trend {
  grid-column:2;
  grid-row:2;
  font-family:var(--f-display);
  font-size:34px;
  line-height:1;
  font-weight:900;
  text-align:right;
  font-variant-numeric:tabular-nums;
}
.delta-kpi-trend.positive { color:var(--c-green-hi); text-shadow:0 0 14px rgba(110,231,183,.24); }
.delta-kpi-trend.negative { color:var(--c-red-hi); text-shadow:0 0 14px rgba(252,165,165,.22); }
.delta-kpi-target {
  grid-column:2;
  grid-row:3;
  color:var(--c-text-muted);
  font-size:16px;
  font-weight:700;
  text-align:right;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.metas-section {
  background:var(--c-surface); border:1px solid var(--c-border);
  border-radius:var(--r); padding:12px 14px 10px;
  backdrop-filter:blur(24px); -webkit-backdrop-filter:blur(24px);
  opacity:0; transform:translateY(14px);
  transition:opacity .5s var(--ease-out), transform .5s var(--ease-out);
  display:flex; flex-direction:column; gap:8px; min-height:0; overflow:hidden;
}
.metas-grid-2 .metas-section { padding: 30px 40px; border-radius: 20px; border-width: 2px; }
.metas-section.visible { opacity:1; transform:translateY(0); }
.metas-section-head {
  display:flex; align-items:center; gap:8px; flex-shrink:0;
  padding-bottom:6px; border-bottom:1px solid var(--c-border);
}
.metas-grid-2 .metas-section-head { padding-bottom:16px; margin-bottom:12px; gap:16px; }
.metas-section-icon { font-size:18px; line-height:1; }
.metas-grid-2 .metas-section-icon { font-size:36px; }
.metas-section-title {
  font-family:var(--f-display); font-size:20px; font-weight:800;
  letter-spacing:.08em; text-transform:uppercase;
}
.metas-grid-2 .metas-section-title { font-size:36px; }
.metas-section-body {
  display:flex; flex-direction:column; gap:8px; flex:1; min-height:0; justify-content:center;
}
.metas-grid-2 .metas-section-body { gap: 24px; }
.metas-section .vnd-team-block { gap:4px; }
.metas-section .vnd-team-block-head { gap:8px; }
.metas-section .vnd-team-block-title { font-size:13px; letter-spacing:.1em; flex:1; min-width:0; }
.metas-grid-2 .vnd-team-block-title { font-size:24px; }

.vnd-team-dual-bar { display:flex; flex-direction:column; gap:4px; margin-top:2px; }
.vnd-team-dual-label { display:flex; justify-content:space-between; align-items:baseline; margin-bottom:2px; }
.vnd-dual-name { font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.1em; color:var(--c-text-muted); }
.metas-grid-2 .vnd-dual-name { font-size:16px; }

.metas-section .cap-ratio { font-size:28px; white-space:nowrap; }
.metas-grid-2 .cap-ratio { font-size:64px; }
.metas-section .cap-goal-num { font-size:24px; }
.metas-grid-2 .cap-goal-num { font-size:48px; }

.metas-section .cap-bar-current-label { font-size:16px; padding:0 4px; }
.metas-grid-2 .cap-bar-current-label { font-size:28px; padding:2px 6px; }
.metas-section .cap-bar-meta-num { font-size:10px; min-width:20px; padding:0 4px; }
.metas-grid-2 .cap-bar-meta-num { font-size:18px; min-width:36px; padding:2px 8px; }
.metas-section .cap-meta-tag { font-size:9px; padding:2px 6px; }
.metas-grid-2 .cap-meta-tag { font-size:14px; padding:4px 12px; }

.metas-fill-capt-v  { background:linear-gradient(90deg,#065f46,var(--c-green),var(--c-green-hi)); }
.metas-fill-capt-l  { background:linear-gradient(90deg,#1e3a8a,var(--c-accent),var(--c-accent-hi)); }
.metas-fill-vendas  { background:linear-gradient(90deg,#78350f,var(--c-gold),var(--c-gold-hi)); }
.metas-fill-vgv     { background:linear-gradient(90deg,#78350f,var(--c-gold),var(--c-gold-hi)); }
.metas-fill-delta   { background:linear-gradient(90deg,#7c2d12,#f97316,#fde68a); }
.metas-fill-vgl     { background:linear-gradient(90deg,#4c1d95,#8b5cf6,#c4b5fd); }
.metas-fill-loc-qtd { background:linear-gradient(90deg,#1e3a8a,#6366f1,#a5b4fc); }

/* ════════════════════════════════════════════════════════
   SLIDE 6 — TERMÔMETRO
   ════════════════════════════════════════════════════════ */
#slide-6 { background:radial-gradient(ellipse at 50% -10%,rgba(16,185,129,.07) 0%,transparent 60%); }

.s3-wrap { display:flex; flex-direction:column; height:100%; padding:18px 0 14px; gap:18px; }

.meta-hero { display:flex; flex-direction:column; gap:12px; flex-shrink:0; padding-bottom:18px; border-bottom:1px solid var(--c-border); }

.meta-numbers-row { display:flex; justify-content:space-between; align-items:flex-end; }
.meta-achieved-label, .meta-pct-label { font-size:11.5px; letter-spacing:.14em; color:var(--c-text-muted); text-transform:uppercase; display:block; margin-bottom:4px; }
.meta-achieved-val { font-family:var(--f-display); font-size:58px; font-weight:900; font-variant-numeric:tabular-nums; line-height:1; color:var(--c-text); }
.meta-pct-block { text-align:right; }
.meta-pct-val { font-family:var(--f-display); font-size:58px; font-weight:900; line-height:1; font-variant-numeric:tabular-nums; }
.meta-pct-val.pct-low    { color:var(--c-red);     }
.meta-pct-val.pct-medium { color:var(--c-amber);   }
.meta-pct-val.pct-good   { color:var(--c-green);   }
.meta-pct-val.pct-great  { color:var(--c-green-hi);}

.meta-goal-note { font-size:13.5px; color:var(--c-text-sub); text-align:center; font-variant-numeric:tabular-nums; }

.meta-giant-wrap { position:relative; }
.meta-giant-track { height:68px; background:rgba(255,255,255,.05); border-radius:100px; overflow:hidden; position:relative; }
.meta-giant-fill { height:100%; width:0%; border-radius:100px; transition:width 2.5s var(--ease-spring); }
.meta-giant-fill.pct-low    { background:linear-gradient(90deg,#7f1d1d,var(--c-red),var(--c-red-hi));             }
.meta-giant-fill.pct-medium { background:linear-gradient(90deg,#78350f,var(--c-amber),#fde68a);                   }
.meta-giant-fill.pct-good   { background:linear-gradient(90deg,#064e3b,var(--c-green),var(--c-green-hi));         }
.meta-giant-fill.pct-great  { background:linear-gradient(90deg,#1e1b4b,#6366f1,var(--c-green),var(--c-green-hi));}
.meta-goal-marker { position:absolute; right:8px;top:50%; transform:translateY(-50%); font-size:10.5px; font-weight:700; letter-spacing:.12em; color:rgba(255,255,255,.3); }

.meta-achieved-badge { display:none; text-align:center; font-family:var(--f-display); font-size:20px; font-weight:800; color:var(--c-green-hi); letter-spacing:.08em; padding:8px 0 0; animation:badge-pop .5s var(--ease-spring) forwards; }
.meta-achieved-badge.show { display:block; }
@keyframes badge-pop { 0%{transform:scale(.7);opacity:0} 100%{transform:scale(1);opacity:1} }

.negocios-section { flex:1; display:flex; flex-direction:column; gap:9px; min-height:0; overflow:hidden; }
.negocios-header { font-size:11px; font-weight:700; letter-spacing:.18em; color:var(--c-text-muted); text-transform:uppercase; display:flex; align-items:center; gap:10px; }
.negocios-header::after { content:''; flex:1; height:1px; background:var(--c-border); }

.negocio-row {
  display:flex; align-items:center; gap:12px;
  padding:10px 16px; background:var(--c-surface); border:1px solid var(--c-border); border-radius:12px;
  backdrop-filter:blur(16px); flex-shrink:0;
  opacity:0; transform:translateY(14px);
  transition:opacity .4s ease, transform .4s ease;
}
.negocio-row.visible { opacity:1; transform:translateY(0); }
.negocio-row.urgencia-alta  { border-left:3px solid var(--c-red);  }
.negocio-row.urgencia-media { border-left:3px solid var(--c-amber);}

.negocio-avatar { width:52px;height:52px; border-radius:50%; overflow:hidden; flex-shrink:0; border:2px solid var(--c-border-hi); background:rgba(30,41,59,.8); display:flex;align-items:center;justify-content:center; font-family:var(--f-display); font-size:16px;font-weight:700;color:var(--c-text-sub); }
.negocio-avatar img { width:100%;height:100%;object-fit:cover; }
.negocio-info { flex:1; min-width:0; }
.negocio-corretor { font-family:var(--f-display); font-size:15px; font-weight:600; }
.negocio-imovel   { font-size:12.5px; color:var(--c-text-sub); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin-top:2px; }
.negocio-valor    { font-family:var(--f-display); font-size:18px; font-weight:700; font-variant-numeric:tabular-nums; flex-shrink:0; }

.negocio-status { padding:4px 12px; border-radius:100px; font-size:11.5px; font-weight:700; letter-spacing:.04em; white-space:nowrap; flex-shrink:0; }
.status-alta  { background:rgba(239,68,68,.14);  color:var(--c-red-hi); border:1px solid rgba(239,68,68,.3); }
.status-media { background:rgba(245,158,11,.14); color:#fde68a;          border:1px solid rgba(245,158,11,.3);}

/* ════════════════════════════════════════════════════════
   SLIDE 7 — MOMENTO GONGO 🎉
   ════════════════════════════════════════════════════════ */
#slide-7 {
  background: radial-gradient(ellipse at 50% 30%,rgba(99,102,241,.2) 0%,transparent 60%),
              radial-gradient(ellipse at 80% 80%,rgba(245,158,11,.1) 0%,transparent 50%);
}

.s4-wrap { display:flex; flex-direction:column; align-items:center; justify-content:center; height:100%; position:relative; gap:22px; }

.confetti-container { position:absolute; inset:0; pointer-events:none; z-index:0; overflow:hidden; }
.confetti-piece { position:absolute; top:-30px; animation:confetti-fall linear infinite; will-change:transform; }
@keyframes confetti-fall {
  0%   { transform:translateY(0) translateX(0) rotate(0deg); opacity:1; }
  80%  { opacity:.9; }
  100% { transform:translateY(110vh) translateX(var(--drift,0px)) rotate(540deg); opacity:0; }
}

.gongo-header { position:relative; z-index:1; text-align:center; }
.gongo-bells { font-size:42px; display:block; margin-bottom:5px; animation:bell-ring .8s ease-in-out infinite; }
@keyframes bell-ring { 0%,100%{transform:rotate(-12deg)} 50%{transform:rotate(12deg)} }

.gongo-title-text {
  font-family:var(--f-display); font-size:78px; font-weight:900; letter-spacing:.12em;
  background:linear-gradient(135deg,var(--c-gold),#fff 50%,var(--c-gold));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
  line-height:1; animation:gongo-pulse 1.8s ease-in-out infinite;
}
@keyframes gongo-pulse { 0%,100%{transform:scale(1)} 50%{transform:scale(1.04)} }

.gongo-content { position:relative; z-index:1; display:flex; align-items:center; gap:44px; }

.gongo-photo-wrap { position:relative; flex-shrink:0; }
.gongo-photo {
  width:210px; height:210px; border-radius:50%;
  border:4px solid var(--c-gold);
  box-shadow:0 0 50px var(--c-gold-glow), 0 0 100px rgba(245,158,11,.1);
  overflow:hidden; display:flex;align-items:center;justify-content:center;
  font-family:var(--f-display); font-size:46px; font-weight:700; color:var(--c-text-sub);
  background:rgba(30,41,59,.9);
}
.gongo-photo img { width:100%;height:100%;object-fit:cover; }

.gongo-ring  { position:absolute;inset:-12px;border-radius:50%;border:2px solid rgba(245,158,11,.35); animation:ring-pulse 2s ease-in-out infinite; }
.gongo-ring-2 { inset:-24px; border-color:rgba(245,158,11,.2); animation-delay:1s; }
@keyframes ring-pulse { 0%{transform:scale(1);opacity:.6} 100%{transform:scale(1.14);opacity:0} }

.gongo-details { display:flex; flex-direction:column; gap:12px; max-width:480px; }
.gongo-message { font-family:var(--f-display); font-size:26px; font-weight:800; color:var(--c-text); line-height:1.25; }

.gongo-stats-row { display:flex; gap:24px; padding-top:12px; border-top:1px solid rgba(255,255,255,.1); flex-wrap:wrap; }
.gongo-stat-item { display:flex; flex-direction:column; gap:3px; }
.gongo-stat-label { font-size:10.5px; letter-spacing:.12em; color:var(--c-text-muted); text-transform:uppercase; }
.gongo-stat-val { font-family:var(--f-display); font-size:16px; font-weight:600; color:var(--c-text); }
.gongo-stat-val.big { font-size:32px; font-weight:900; color:var(--c-gold); font-variant-numeric:tabular-nums; }

.gongo-imovel-photo { width:210px;height:132px; border-radius:11px; overflow:hidden; border:1px solid var(--c-border-hi); flex-shrink:0; }
.gongo-imovel-photo img { width:100%;height:100%;object-fit:cover;display:block; }

/* ════════════════════════════════════════════════════════
   SLIDE 8 — META BATIDA
   ════════════════════════════════════════════════════════ */
#slide-8 {
  background: radial-gradient(ellipse at 50% 20%,rgba(16,185,129,.18) 0%,transparent 58%),
              radial-gradient(ellipse at 82% 86%,rgba(245,158,11,.11) 0%,transparent 50%);
}

.meta-hit-wrap { position:relative; height:100%; display:flex; flex-direction:column; justify-content:center; gap:24px; overflow:hidden; }
.meta-hit-empty { align-items:center; text-align:center; }
.meta-hit-reveal { opacity:0; transform:translateY(22px); transition:opacity .55s var(--ease-out), transform .55s var(--ease-out); }
.meta-hit-reveal.visible { opacity:1; transform:translateY(0); }

.meta-hit-spotlight { position:relative; z-index:1; display:flex; align-items:center; justify-content:center; gap:44px; }
.meta-hit-photo-wrap { position:relative; flex-shrink:0; }
.meta-hit-photo {
  width:230px; height:230px; border-radius:50%; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
  border:5px solid var(--c-green); background:rgba(30,41,59,.9);
  box-shadow:0 0 60px rgba(16,185,129,.32), 0 0 120px rgba(245,158,11,.08);
  font-family:var(--f-display); font-size:52px; font-weight:800; color:var(--c-text-sub);
}
.meta-hit-photo img { width:100%;height:100%;object-fit:cover;display:block; }
.meta-hit-ring { position:absolute; inset:-14px; border-radius:50%; border:2px solid rgba(16,185,129,.4); animation:ring-pulse 2s ease-in-out infinite; }
.meta-hit-ring-2 { inset:-30px; border-color:rgba(245,158,11,.22); animation-delay:1s; }
.meta-hit-badge {
  position:absolute; right:-18px; bottom:10px; padding:8px 12px; border-radius:999px;
  font-family:var(--f-display); font-size:13px; font-weight:900; letter-spacing:.12em;
  color:#052e16; background:linear-gradient(135deg,var(--c-green-hi),#fff,var(--c-gold-hi));
  box-shadow:0 10px 30px rgba(0,0,0,.36); animation:badge-pop .65s var(--ease-spring) .45s both;
}

.meta-hit-copy { max-width:640px; }
.meta-hit-kicker { font-size:13px; font-weight:800; letter-spacing:.2em; color:var(--c-green-hi); text-transform:uppercase; margin-bottom:8px; }
.meta-hit-title {
  font-family:var(--f-display); font-size:78px; font-weight:900; line-height:.96; letter-spacing:.02em;
  background:linear-gradient(135deg,var(--c-green-hi),#fff 42%,var(--c-gold-hi));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.meta-hit-message { margin-top:12px; font-family:var(--f-display); font-size:26px; font-weight:800; line-height:1.18; color:var(--c-text); }
.meta-hit-sub { max-width:560px; color:var(--c-text-sub); font-size:18px; margin-top:12px; }

.meta-hit-progress {
  position:relative; z-index:1; width:min(920px,100%); align-self:center;
  padding:18px 22px; border:1px solid var(--c-border-hi); border-radius:var(--r);
  background:rgba(12,18,44,.64); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px);
}
.meta-hit-progress-head { display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:12px; }
.meta-hit-progress-head span { font-size:12px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; color:var(--c-text-muted); }
.meta-hit-progress-head strong { font-family:var(--f-display); font-size:44px; line-height:1; color:var(--c-green-hi); }
.meta-hit-track { position:relative; height:50px; border-radius:999px; overflow:hidden; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.08); }
.meta-hit-fill { width:0%; height:100%; border-radius:999px; background:linear-gradient(90deg,#065f46,var(--c-green),var(--c-green-hi),var(--c-gold-hi)); transition:width 2.1s var(--ease-spring); }
.meta-hit-marker { position:absolute; top:50%; left:80%; transform:translate(-50%,-50%); font-size:10px; font-weight:900; letter-spacing:.14em; color:rgba(5,46,22,.72); }
.meta-hit-numbers { display:flex; justify-content:space-between; gap:18px; margin-top:12px; color:var(--c-text-sub); font-size:14px; }
.meta-hit-numbers strong { font-family:var(--f-display); color:var(--c-text); font-size:18px; }

.meta-hit-actions { position:relative; z-index:1; display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:12px; width:min(920px,100%); align-self:center; }
.meta-hit-action {
  min-height:56px; display:flex; align-items:center; justify-content:center; text-align:center;
  padding:10px 16px; border-radius:var(--r); border:1px solid var(--c-border); background:rgba(255,255,255,.045);
  font-family:var(--f-display); font-size:18px; font-weight:800; color:var(--c-text);
}
.meta-hit-action.primary { color:#052e16; background:linear-gradient(135deg,var(--c-green-hi),#fff,var(--c-gold-hi)); border-color:transparent; }

/* ════════════════════════════════════════════════════════
   SLIDE 9 — PREMIAÇÕES
   ════════════════════════════════════════════════════════ */
#slide-9, #slide-11, #slide-11b {
  background: radial-gradient(ellipse at 20% 0%,rgba(255,102,0,.13) 0%,transparent 52%),
              radial-gradient(ellipse at 82% 92%,rgba(6,18,34,.3) 0%,transparent 54%);
}

.premios-wrap { height:100%; display:flex; flex-direction:column; gap:16px; padding:18px 0 16px; min-height:0; }
.premios-empty { align-items:center; justify-content:center; text-align:center; }
.premios-head { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; flex-shrink:0; }
.premios-kicker { font-size:12px; font-weight:800; letter-spacing:.2em; text-transform:uppercase; color:var(--c-gold-hi); margin-bottom:6px; }
.premios-title { font-family:var(--f-display); font-size:42px; font-weight:900; line-height:1; color:var(--c-text); }
.premios-sub { max-width:430px; color:var(--c-text-sub); font-size:15px; line-height:1.35; }

.premios-grid {
  flex:1;
  min-height:0;
  display:grid;
  grid-template-columns:1.25fr 1fr 1fr;
  gap:14px;
}
.premios-grid.podium-grid {
  grid-template-columns: 1fr 1.2fr 1fr;
}
.premio-card {
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:0;
  border:1px solid var(--c-border);
  border-radius:var(--r);
  background:rgba(12,18,44,.72);
  overflow:hidden;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  opacity:0;
  transform:translateY(22px);
  transition:opacity .55s var(--ease-out), transform .55s var(--ease-out), border-color .35s ease;
}
.premio-card.visible { opacity:1; transform:translateY(0); }
.premio-card.featured { border-color:rgba(255,102,0,.32); box-shadow:0 0 50px rgba(255,102,0,.12); }

.premio-img { position:relative; min-height:0; flex:1.15; overflow:hidden; background:rgba(0,0,0,.18); }
.premio-img img { width:100%; height:100%; object-fit:cover; display:block; transform:scale(1.02); }
.premio-img::after { content:''; position:absolute; inset:auto 0 0; height:44%; background:linear-gradient(0deg,rgba(7,9,28,.82),transparent); }
.premio-category {
  position:absolute;
  top:12px;
  left:12px;
  z-index:1;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(7,9,28,.74);
  border:1px solid rgba(255,255,255,.14);
  color:var(--c-gold-hi);
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.premio-info { flex:.85; display:flex; flex-direction:column; gap:8px; padding:16px; min-height:0; }
.premio-meta { font-size:11px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--c-accent-hi); }
.premio-pix-card .premio-info { position:relative; }
.premio-pix-card .premio-img img { filter:saturate(.92) contrast(1.04); }
.premio-pix-card .premio-img::after {
  height:62%;
  background:linear-gradient(0deg,rgba(7,9,28,.96) 0%,rgba(7,9,28,.18) 78%,transparent 100%);
}
.premio-pix-value {
  display:flex;
  align-items:center;
  gap:9px;
  color:var(--c-gold-hi);
  font-family:var(--f-display);
  font-size:26px;
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1;
  text-transform:none;
}
.premio-pix-value span {
  padding:5px 8px;
  border:1px solid rgba(86,235,196,.32);
  border-radius:999px;
  background:rgba(23,196,153,.1);
  color:#5eebc4;
  font-family:var(--f-body);
  font-size:9px;
  font-weight:900;
  letter-spacing:.16em;
}
.premio-pix-card.featured .premio-pix-value { font-size:34px; }
.premio-pix-card.featured {
  border-color:rgba(255,194,74,.42);
  box-shadow:0 0 50px rgba(255,166,35,.14), inset 0 1px rgba(255,255,255,.04);
}
.premio-name { font-family:var(--f-display); font-size:25px; font-weight:900; line-height:1.05; color:var(--c-text); }
.premio-card.featured .premio-name { font-size:32px; }
.premio-desc { color:var(--c-text-sub); font-size:14px; line-height:1.35; flex:1; overflow:hidden; }
.premio-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-top:10px; border-top:1px solid var(--c-border); }
.premio-footer span { color:var(--c-text-muted); font-size:12px; }
.premio-footer strong { color:var(--c-gold-hi); font-size:12px; text-align:right; }

/* ════════════════════════════════════════════════════════
   SLIDE 10 — HISTÓRICO DE METAS
   ════════════════════════════════════════════════════════ */
#slide-12 {
  background: radial-gradient(ellipse at 50% -10%,rgba(255,102,0,.11) 0%,transparent 58%),
              radial-gradient(ellipse at 88% 88%,rgba(6,18,34,.2) 0%,transparent 52%);
}

.historico-wrap { height:100%; display:flex; flex-direction:column; gap:6px; padding:14px 0; min-height:0; overflow:hidden; }
.historico-empty { align-items:center; justify-content:center; text-align:center; }
.historico-kicker { font-size:12px; font-weight:800; letter-spacing:.2em; text-transform:uppercase; color:var(--c-accent-hi); margin-bottom:6px; }
.historico-title { font-family:var(--f-display); font-size:42px; font-weight:900; line-height:1; color:var(--c-text); }
.historico-sub { max-width:520px; color:var(--c-text-sub); font-size:15px; line-height:1.35; }

.historico-table-head {
  flex-shrink:0;
  display:grid;
  grid-template-columns:minmax(190px,1fr) 260px 170px 210px;
  align-items:center;
  padding:0 24px 5px 0;
  color:var(--c-text-muted);
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.historico-table-head span:first-child { grid-column:1; padding-left:24px; }
.historico-table-head span:nth-child(2) { grid-column:2; }
.historico-table-head span:nth-child(3) { grid-column:3; }
.historico-table-head span:last-child { grid-column:4; }
.historico-table-head span:not(:first-child) { text-align:right; }

.historico-grid {
  flex:1;
  min-height:0;
  display:grid;
  grid-template-columns:1fr;
  align-content:start;
  gap:7px;
  overflow:hidden;
  scroll-behavior:auto;
}
.hist-card {
  position:relative;
  display:grid;
  grid-template-columns:minmax(190px,1fr) 260px 170px 210px;
  align-items:center;
  min-width:0;
  min-height:112px;
  padding:0 24px 0 0;
  border:1px solid var(--c-border);
  border-radius:var(--r);
  background:linear-gradient(90deg,rgba(14,27,46,.96),rgba(10,18,33,.86));
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  overflow:hidden;
  opacity:0;
  transform:translateY(18px);
  transition:opacity .5s var(--ease-out), transform .5s var(--ease-out);
}
.hist-card::before {
  content:'';
  position:absolute;
  inset:18px auto 18px 0;
  width:4px;
  border-radius:0 999px 999px 0;
  background:var(--c-accent);
  box-shadow:0 0 14px rgba(255,102,0,.38);
}
.hist-card.visible { opacity:1; transform:translateY(0); }
.hist-card.status-hit { border-color:rgba(16,185,129,.32); }
.hist-card.status-hit::before { background:var(--c-green-hi); box-shadow:0 0 14px rgba(110,231,183,.34); }
.hist-card.status-near { border-color:rgba(245,158,11,.3); }
.hist-card.status-near::before { background:var(--c-gold-hi); box-shadow:0 0 14px rgba(251,191,36,.3); }
.hist-card.status-open { border-color:rgba(239,68,68,.24); }
.hist-card.status-open::before { background:var(--c-red-hi); box-shadow:0 0 14px rgba(252,165,165,.26); }

.hist-month-info { grid-column:1; min-width:0; padding-left:24px; padding-right:20px; }
.hist-period { font-family:var(--f-display); font-size:29px; font-weight:800; line-height:1; color:var(--c-text); }
.hist-status { margin-top:7px; color:var(--c-text-sub); font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }

.hist-value,
.hist-delta { min-width:0; text-align:right; font-variant-numeric:tabular-nums; }
.hist-vgv { grid-column:2; }
.hist-captacoes { grid-column:3; }
.hist-value strong,
.hist-delta strong { display:block; font-family:var(--f-display); font-size:32px; font-weight:900; line-height:1; color:var(--c-text); }
.hist-value span,
.hist-delta small { display:block; margin-top:7px; color:var(--c-text-muted); font-size:10px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.hist-delta { grid-column:4; }
.hist-delta strong { color:var(--c-gold-hi); }
.hist-delta span { display:block; margin-top:5px; font-family:var(--f-display); font-size:15px; font-weight:900; }
.hist-delta.up span { color:var(--c-green-hi); }
.hist-delta.down span { color:var(--c-red-hi); }
.hist-delta.same span { color:var(--c-text-muted); }

/* ════════════════════════════════════════════════════════
   OVERLAY — TROCA NO PÓDIO 🏆
   ════════════════════════════════════════════════════════ */
.podium-change-overlay {
  position: fixed; inset: 0; z-index: 100;
  display: flex; align-items: center; justify-content: center;
  background: rgba(4, 6, 18, 0.92);
  backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px);
  opacity: 0; pointer-events: none;
  transition: opacity .6s var(--ease-out);
}
.podium-change-overlay.active {
  opacity: 1; pointer-events: auto;
}

.pc-wrap {
  width: 100%; max-width: 920px;
  padding: 0 var(--px);
  display: flex; flex-direction: column; align-items: center;
  position: relative; gap: 24px;
}

.pc-confetti { position: absolute; inset: -20vh -10vw; pointer-events: none; z-index: 0; overflow: hidden; }

.pc-header { position: relative; z-index: 1; text-align: center; }
.pc-eyebrow {
  font-size: 13px; letter-spacing: .22em; text-transform: uppercase;
  color: var(--c-gold-hi); font-weight: 600; margin-bottom: 8px;
  opacity: 0; transform: translateY(12px);
  transition: opacity .5s var(--ease-out), transform .5s var(--ease-out);
}
.pc-title {
  font-family: var(--f-display); font-size: 72px; font-weight: 900;
  letter-spacing: .1em; line-height: 1;
  background: linear-gradient(135deg, var(--c-gold), #fff 45%, var(--c-gold));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
  opacity: 0; transform: scale(.88);
  transition: opacity .55s var(--ease-out) .1s, transform .55s var(--ease-spring) .1s;
}
.pc-title.rank-silver {
  background: linear-gradient(135deg, var(--c-silver-hi), #fff 45%, var(--c-silver));
  -webkit-background-clip: text; background-clip: text;
}
.pc-title.rank-bronze {
  background: linear-gradient(135deg, var(--c-bronze-hi), #fff 45%, var(--c-bronze));
  -webkit-background-clip: text; background-clip: text;
}

.pc-body {
  position: relative; z-index: 1;
  display: flex; align-items: center; gap: 48px;
  opacity: 0; transform: translateY(28px);
  transition: opacity .6s var(--ease-out) .25s, transform .6s var(--ease-out) .25s;
}

.pc-photo-wrap { position: relative; flex-shrink: 0; }
.pc-photo {
  width: 180px; height: 180px; border-radius: 50%;
  overflow: hidden; display: flex; align-items: center; justify-content: center;
  font-family: var(--f-display); font-size: 50px; font-weight: 700;
  color: var(--c-text-sub); background: rgba(30, 41, 59, .9);
}
.pc-photo.rank-gold   { border: 5px solid var(--c-gold);   box-shadow: 0 0 60px var(--c-gold-glow), 0 0 120px rgba(245,158,11,.12); }
.pc-photo.rank-silver { border: 5px solid var(--c-silver); box-shadow: 0 0 50px var(--c-silver-glow); }
.pc-photo.rank-bronze { border: 5px solid var(--c-bronze); box-shadow: 0 0 50px var(--c-bronze-glow); }
.pc-photo img { width: 100%; height: 100%; object-fit: cover; }

.pc-photo-wrap.rank-gold::before {
  content: '👑'; position: absolute; top: -38px; left: 50%;
  transform: translateX(-50%); font-size: 32px;
  animation: crown-float 2.5s ease-in-out infinite;
  filter: drop-shadow(0 4px 12px rgba(245,158,11,.7));
}

.pc-ring  { position: absolute; inset: -14px; border-radius: 50%; border: 2px solid rgba(245,158,11,.4); animation: ring-pulse 2s ease-in-out infinite; }
.pc-ring-2 { inset: -28px; border-color: rgba(245,158,11,.22); animation-delay: 1s; }
.pc-photo-wrap.rank-silver .pc-ring  { border-color: rgba(148,163,184,.4); }
.pc-photo-wrap.rank-silver .pc-ring-2 { border-color: rgba(148,163,184,.2); }
.pc-photo-wrap.rank-bronze .pc-ring  { border-color: rgba(205,127,50,.4); }
.pc-photo-wrap.rank-bronze .pc-ring-2 { border-color: rgba(205,127,50,.2); }

.pc-medal-badge {
  position: absolute; bottom: -6px; right: -6px;
  font-size: 36px; filter: drop-shadow(0 4px 8px rgba(0,0,0,.5));
  animation: badge-pop .6s var(--ease-spring) .5s both;
}
@keyframes badge-pop {
  0%   { transform: scale(0) rotate(-20deg); opacity: 0; }
  100% { transform: scale(1) rotate(0); opacity: 1; }
}

.pc-details { display: flex; flex-direction: column; gap: 16px; max-width: 460px; }
.pc-name {
  font-family: var(--f-display); font-size: 34px; font-weight: 800;
  color: var(--c-text); line-height: 1.15;
}
.pc-message { font-size: 20px; color: var(--c-text-sub); line-height: 1.35; }

.pc-rank-shift {
  display: flex; align-items: center; gap: 14px;
  padding: 14px 20px; border-radius: var(--r);
  background: rgba(255,255,255,.04); border: 1px solid var(--c-border-hi);
}
.pc-rank-from, .pc-rank-to {
  display: flex; flex-direction: column; align-items: center; gap: 4px; min-width: 64px;
}
.pc-rank-label { font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--c-text-muted); }
.pc-rank-num {
  font-family: var(--f-display); font-size: 32px; font-weight: 900;
  font-variant-numeric: tabular-nums;
}
.pc-rank-from .pc-rank-num { color: var(--c-text-muted); text-decoration: line-through; text-decoration-color: rgba(239,68,68,.5); }
.pc-rank-to .pc-rank-num   { color: var(--c-green-hi); }
.pc-rank-to.rank-gold .pc-rank-num   { color: var(--c-gold); }
.pc-rank-to.rank-silver .pc-rank-num { color: var(--c-silver-hi); }
.pc-rank-to.rank-bronze .pc-rank-num { color: var(--c-bronze-hi); }

.pc-arrow {
  font-size: 28px; color: var(--c-green);
  animation: arrow-bounce 1.2s ease-in-out infinite;
}
@keyframes arrow-bounce {
  0%, 100% { transform: translateY(0); }
  50%      { transform: translateY(-6px); }
}

.pc-stats {
  display: flex; gap: 28px; padding-top: 12px;
  border-top: 1px solid rgba(255,255,255,.08);
}
.pc-stat { display: flex; flex-direction: column; gap: 3px; }
.pc-stat-label { font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--c-text-muted); }
.pc-stat-val { font-family: var(--f-display); font-size: 22px; font-weight: 700; color: var(--c-text); }
.pc-stat-val.highlight { font-size: 28px; color: var(--c-gold); }

.pc-footer-note {
  position: relative; z-index: 1;
  font-size: 11px; letter-spacing: .16em; text-transform: uppercase;
  color: var(--c-text-muted); opacity: 0;
  transition: opacity .5s ease .6s;
}

/* Entrance when overlay opens */
.podium-change-overlay.active .pc-eyebrow, .slide.active .pc-eyebrow  { opacity: 1; transform: translateY(0); }
.podium-change-overlay.active .pc-title, .slide.active .pc-title    { opacity: 1; transform: scale(1); }
.podium-change-overlay.active .pc-body, .slide.active .pc-body     { opacity: 1; transform: translateY(0); }
.podium-change-overlay.active .pc-footer-note, .slide.active .pc-footer-note { opacity: 1; }

/* ── Footer ────────────────────────────────────────────── */
.tv-footer {
  height:var(--ftr-h); flex-shrink:0;
  display:flex; align-items:center; justify-content:center; gap:20px;
  border-top:1px solid var(--c-border); padding:0 var(--px);
}

.slide-dots { display:flex; gap:9px; }
.slide-dot { width:9px;height:9px; border-radius:100px; background:rgba(255,255,255,.2); border:none; cursor:pointer; transition:all .35s var(--ease-out); padding:0; }
.slide-dot.active { background:white; width:26px; }

.live-indicator { display:flex;align-items:center;gap:7px;padding:5px 13px;border:1px solid rgba(16,185,129,.22);border-radius:100px;background:rgba(16,185,129,.06); }
.live-dot { width:7px;height:7px;border-radius:50%;background:var(--c-green);box-shadow:0 0 9px var(--c-green);animation:dot-pulse 2s ease-in-out infinite; }
.live-text { font-size:10.5px;font-weight:700;letter-spacing:.15em;color:var(--c-green); }
@keyframes dot-pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.4;transform:scale(.85)} }

/* ══════════════════════════════════════════════════════════
   TV FULLSCREEN — (≥ 1400px × ≥ 900px)
   Escala tudo para cima para preencher a tela da TV 1080p
   ══════════════════════════════════════════════════════════ */
@media (min-width: 1400px) and (min-height: 900px) {
  :root { --px:64px; --hdr-h:100px; --ftr-h:56px; }

  .brand-name { font-size:24px; }
  .slide-title { font-size:42px; }
  .clock-time  { font-size:52px; }
  .clock-date  { font-size:13px; }

  /* Podium — avatares e bases grandes */
  .podium-section { padding:54px 40px 0; gap:20px; }

  .podium-item-1 .podium-avatar { width:140px; height:140px; font-size:42px; border-width:5px; }
  .podium-item-2 .podium-avatar { width:112px; height:112px; font-size:32px; }
  .podium-item-3 .podium-avatar { width:100px; height:100px; font-size:28px; }

  .podium-item-1 .podium-avatar-wrap::before { top:-46px; font-size:36px; }

  .podium-medal { font-size:28px; }

  .podium-item-1 .podium-name { font-size:42px; }
  .podium-name { font-size:32px; }
  .podium-item-1 .podium-value { font-size:56px; }
  .podium-value { font-size:42px; }
  .podium-vendas { font-size:24px; }
  .podium-base { font-size:26px; }
  .podium-item-1 .podium-base { height:180px; font-size:28px; border-radius:12px 12px 0 0; }
  .podium-item-2 .podium-base { height:120px; }
  .podium-item-3 .podium-base { height:85px; }

  /* Chasers — volta pra 1 coluna na TV */
  .chaser-list  { grid-template-columns: 1fr; }
  .chaser-section { padding:16px 40px 20px; }
  .chaser-card { min-height:86px; }
  .chaser-card .cap-name { font-size:26px; }
  .chaser-card .cap-ratio { font-size:22px; }
  .chaser-card .cap-goal-num { font-size:16px; }
  .corrida-card { flex-basis:620px; min-height:140px; }
  .corrida-card .cap-name { font-size:28px; }
  .corrida-card .cap-ratio { font-size:28px; }
  .corrida-card .cap-goal-num { font-size:20px; }

  /* Captações */
  .cap-name  { font-size:30px; }
  .cap-ratio { font-size:32px; }
  .cap-goal-num { font-size:26px; }
  .cap-card  { min-height:90px; }



  /* Termômetro */
  .meta-achieved-val { font-size:68px; }
  .meta-pct-val      { font-size:68px; }
  .meta-giant-track  { height:54px; }

  /* Gongo */
  .gongo-title-text { font-size:140px; }
  .gongo-bells      { font-size:64px; }
  .gongo-content    { gap:64px; }
  .gongo-photo      { width:300px; height:300px; font-size:72px; }
  .gongo-message    { font-size:44px; }
  .gongo-stat-label { font-size:15px; }
  .gongo-stat-val   { font-size:26px; }
  .gongo-stat-val.big { font-size:58px; }
  .gongo-imovel-photo { width:360px; height:226px; }
  .gongo-ring       { inset:-16px; border-width:3px; }
  .gongo-ring-2     { inset:-32px; border-width:3px; }
  .meta-hit-photo { width:230px; height:230px; font-size:64px; }
  .meta-hit-title { font-size:94px; }
  .meta-hit-message { font-size:32px; }
  .meta-hit-progress-head strong { font-size:54px; }
  .premios-title { font-size:52px; }
  .premio-name { font-size:30px; }
  .premio-card.featured .premio-name { font-size:40px; }
  .premio-desc { font-size:16px; }
  .historico-title { font-size:52px; }
  .hist-period { font-size:30px; }
  .hist-value strong, .hist-delta strong { font-size:38px; }

  /* Troca no Pódio */
  .pc-title  { font-size: 88px; }
  .pc-photo  { width: 220px; height: 220px; font-size: 60px; }
  .pc-name   { font-size: 40px; }
  .pc-message { font-size: 24px; }
  .pc-stat-val.highlight { font-size: 34px; }
}

/* ══════════════════════════════════════════════════════════
   MOBILE (≤ 599px)
   ══════════════════════════════════════════════════════════ */
@media (max-width: 599px) {
  :root { --px:12px; --hdr-h:auto; }

  .tv-header { flex-wrap:wrap; padding:10px var(--px); height:auto; gap:7px; }
  .brand { min-width:unset; }
  .brand-icon { font-size:26px; }
  .brand-name { font-size:14px; }
  .brand-sub { display:none; }
  .slide-title-wrap { order:3; width:100%; text-align:left; }
  .slide-title  { font-size:16px; letter-spacing:.06em; }
  .slide-subtitle { font-size:10px; }
  .clock { min-width:unset; }
  .clock-time { font-size:26px; }
  .clock-date { font-size:9.5px; }

  /* Podium mobile — 3 columns, smaller */
  .podium-section { padding:38px 6px 0; gap:6px; }
  .podium-item-1 .podium-avatar { width:72px;height:72px;font-size:20px;border-width:3px; }
  .podium-item-2 .podium-avatar { width:58px;height:58px;font-size:16px; }
  .podium-item-3 .podium-avatar { width:52px;height:52px;font-size:14px; }
  .podium-item-1 .podium-avatar-wrap::before { top:-26px;font-size:20px; }
  .podium-item-1 .podium-name { font-size:13px; } .podium-name { font-size:11px; }
  .podium-item-1 .podium-value { font-size:18px; } .podium-value { font-size:13px; }
  .podium-vendas { font-size:10px; margin-bottom:8px; }
  .podium-item-1 .podium-base { height:72px;font-size:12px; }
  .podium-item-2 .podium-base { height:48px;font-size:11px; }
  .podium-item-3 .podium-base { height:36px;font-size:11px; }

  /* Chasers mobile — 1 coluna, fonte menor */
  .chaser-list { grid-template-columns:1fr; }
  .chaser-section { padding:8px 6px 10px; }
  .chaser-card { min-height:58px; padding-right:8px; }
  .chaser-card .cap-pos { width:40px; }
  .chaser-card .cap-num { font-size:24px; }
  .chaser-card .cap-avatar { width:30px; height:30px; margin-right:7px; }
  .chaser-card .cap-info { min-width:110px; }
  .chaser-card .cap-name { font-size:12px; }
  .chaser-card .cap-badge { font-size:9px; }
  .chaser-card .cap-bar-wrap { display:block; padding:0 7px; }
  .chaser-card .cap-ratio { font-size:15px; }
  .chaser-card .cap-goal-num { font-size:11px; }
  .corrida-wrap { padding:10px 0; gap:8px; }
  .corrida-head { align-items:flex-start; flex-direction:column; gap:4px; }
  .corrida-note { font-size:9px; white-space:normal; }
  .corrida-board { gap:9px; mask-image:none; -webkit-mask-image:none; }
  .corrida-track { gap:9px; animation-duration:32s; }
  .corrida-card { flex-basis:330px; min-height:92px; padding-right:9px; }
  .corrida-card .cap-pos { width:38px; }
  .corrida-card .cap-avatar { width:34px; height:34px; margin-right:8px; }
  .corrida-card .cap-info { min-width:116px; }
  .corrida-card .cap-name { font-size:13px; }
  .corrida-card .cap-badge { font-size:9px; }
  .corrida-card .cap-bar-wrap { display:block; padding:0 7px; }
  .corrida-card .cap-ratio { font-size:15px; }
  .corrida-card .cap-goal-num { font-size:11px; }

  /* Captações mobile */
  .cap-bar-wrap { display:none; }
  .s2-legend { display:none; }
  .cap-name  { font-size:14px; }
  .cap-ratio { font-size:20px; }
  .cap-goal-num { font-size:16px; }
  .cap-info  { min-width:130px; }
  .cap-meta-tag { font-size:9px; }
  .cap-team-ratio { font-size:20px; }

  /* Metas mobile */
  .metas-grid-4 { grid-template-columns:1fr; grid-template-rows:auto; gap:8px; overflow-y:auto; }
  .metas-section { padding:10px 12px; }

  /* Termômetro mobile */
  .meta-achieved-val { font-size:36px; }
  .meta-pct-val      { font-size:36px; }
  .meta-giant-track  { height:28px; }

  /* Gongo mobile */
  .gongo-content { flex-direction:column; gap:14px; }
  .gongo-photo   { width:110px;height:110px;font-size:30px; }
  .gongo-title-text { font-size:48px; }
  .gongo-message { font-size:16px; }
  .gongo-imovel-photo { display:none; }
  .gongo-stat-val.big { font-size:24px; }
  .meta-hit-wrap { gap:12px; padding:10px 0; justify-content:center; }
  .meta-hit-spotlight { flex-direction:column; gap:12px; text-align:center; }
  .meta-hit-photo { width:112px; height:112px; font-size:30px; border-width:3px; }
  .meta-hit-ring { inset:-8px; }
  .meta-hit-ring-2 { inset:-16px; }
  .meta-hit-badge { right:-12px; bottom:2px; font-size:10px; padding:6px 8px; }
  .meta-hit-kicker { font-size:10px; letter-spacing:.14em; margin-bottom:5px; }
  .meta-hit-title { font-size:38px; line-height:1; }
  .meta-hit-message { font-size:15px; margin-top:8px; }
  .meta-hit-sub { font-size:14px; }
  .meta-hit-progress { padding:12px; }
  .meta-hit-progress-head strong { font-size:30px; }
  .meta-hit-track { height:24px; }
  .meta-hit-numbers { flex-direction:column; gap:4px; font-size:12px; }
  .meta-hit-numbers strong { font-size:15px; }
  .meta-hit-actions { grid-template-columns:1fr; gap:7px; }
  .meta-hit-action { min-height:38px; font-size:14px; padding:7px 10px; }
  .premios-wrap { padding:10px 0; gap:10px; overflow-y:auto; }
  .premios-head { flex-direction:column; align-items:flex-start; gap:4px; }
  .premios-kicker { font-size:10px; letter-spacing:.14em; margin-bottom:3px; }
  .premios-title { font-size:28px; }
  .premios-sub { font-size:12px; max-width:none; }
  .premios-grid { grid-template-columns:1fr; gap:10px; overflow:visible; }
  .premio-card { min-height:310px; }
  .premio-img { flex:1; min-height:145px; }
  .premio-info { flex:unset; padding:12px; gap:6px; }
  .premio-name, .premio-card.featured .premio-name { font-size:22px; }
  .premio-desc { font-size:12px; }
  .premio-footer { align-items:flex-start; flex-direction:column; gap:4px; }
  .historico-wrap { padding:10px 0; gap:10px; overflow-y:auto; }
  .historico-kicker { font-size:10px; letter-spacing:.14em; margin-bottom:3px; }
  .historico-title { font-size:28px; }
  .historico-table-head { display:none; }
  .historico-grid { grid-template-columns:1fr; gap:10px; overflow:visible; }
  .hist-card {
    grid-template-columns:minmax(125px,1fr) 92px;
    grid-template-rows:auto auto;
    min-height:108px;
    padding:12px;
    row-gap:10px;
  }
  .hist-month-info { grid-column:1; grid-row:1; padding-left:8px; padding-right:6px; }
  .hist-period { font-size:22px; }
  .hist-status { font-size:8px; }
  .hist-vgv { grid-column:1; grid-row:2; padding-left:8px; text-align:left; }
  .hist-captacoes { grid-column:2; grid-row:1; }
  .hist-delta { grid-column:2; grid-row:2; }
  .hist-value strong, .hist-delta strong { font-size:18px; }
  .hist-value span, .hist-delta small { margin-top:3px; font-size:7px; }
  .hist-delta span { margin-top:3px; font-size:10px; }

  /* Troca no Pódio mobile */
  .pc-body { flex-direction: column; gap: 20px; text-align: center; }
  .pc-photo { width: 120px; height: 120px; font-size: 34px; }
  .pc-title { font-size: 40px; }
  .pc-name  { font-size: 22px; }
  .pc-message { font-size: 15px; }
  .pc-rank-shift { justify-content: center; }
  .pc-stats { justify-content: center; flex-wrap: wrap; gap: 16px; }
  .pc-stat-val.highlight { font-size: 22px; }
}

/* ── Broadcast Live Indicator Overrides ── */
.tv-footer .live-indicator {
  display: flex;
  align-items: center;
  gap: 8px;
  background-color: rgba(220, 38, 38, 0.15) !important;
  padding: 6px 12px;
  border-radius: 6px;
  border: 1px solid rgba(220, 38, 38, 0.4) !important;
}
.tv-footer .live-dot {
  width: 10px !important;
  height: 10px !important;
  background-color: #ef4444 !important;
  border-radius: 50%;
  animation: pulse-red-live 1.5s infinite !important;
  box-shadow: 0 0 10px rgba(239, 68, 68, 0.9) !important;
}
.tv-footer .live-text {
  color: #ef4444 !important;
  font-weight: 800 !important;
  letter-spacing: 0.15em !important;
  font-size: 13px !important;
}
@keyframes pulse-red-live {
  0% { opacity: 1; transform: scale(1); box-shadow: 0 0 10px rgba(239, 68, 68, 0.9); }
  50% { opacity: 0.4; transform: scale(0.85); box-shadow: 0 0 2px rgba(239, 68, 68, 0.3); }
  100% { opacity: 1; transform: scale(1); box-shadow: 0 0 10px rgba(239, 68, 68, 0.9); }
}

/* Histórico — dashboard visual 2 x 3 */
#slide-12 {
  background:
    radial-gradient(ellipse at 14% 0%,rgba(245,158,11,.09) 0%,transparent 46%),
    radial-gradient(ellipse at 88% 100%,rgba(16,185,129,.07) 0%,transparent 48%);
}

.historico-dashboard-grid {
  width:100%;
  height:100%;
  min-height:0;
  padding:16px 0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:14px;
}

.historico-dashboard-grid.two-up {
  padding:24px 0;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-rows:minmax(0,1fr);
  gap:24px;
}

.historico-dashboard-grid.two-up.horizontal-scroll {
  display:flex;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:auto;
  scrollbar-width:none;
}

.historico-dashboard-grid.two-up.horizontal-scroll .hist-card-new {
  flex:0 0 calc((100% - 24px) / 2);
  height:100%;
}

.historico-dashboard-grid.two-up .hist-card-new {
  padding:30px;
  gap:26px;
  border-radius:22px;
  border-width:2px;
  box-shadow:inset 0 1px rgba(255,255,255,.05),0 18px 54px rgba(0,0,0,.28),0 0 38px rgba(var(--status-rgb),.1);
}

.historico-dashboard-grid.two-up .hist-card-new::before { display:none; }
.historico-dashboard-grid.two-up .hist-card-new-head h2 { margin-top:0; font-size:56px; }
.historico-dashboard-grid.two-up .hist-status-pill { gap:10px; padding:9px 14px; font-size:12px; }
.historico-dashboard-grid.two-up .hist-status-pill b { width:24px; height:24px; font-size:16px; }
.historico-dashboard-grid.two-up .hist-card-year { font-size:18px; }
.historico-dashboard-grid.two-up .hist-card-modules {
  grid-template-columns:.94fr 1.06fr;
  grid-template-rows:minmax(0,.95fr) minmax(0,1.05fr);
  gap:18px;
}
.historico-dashboard-grid.two-up .hist-viz-module { padding:20px; border-radius:17px; }
.historico-dashboard-grid.two-up .hist-module-label { font-size:14px; }
.historico-dashboard-grid.two-up .hist-vgv-module .hist-module-label {
  width:100%;
  text-align:center;
}
.historico-dashboard-grid.two-up .hist-captures-module .hist-module-label {
  width:100%;
  text-align:center;
}
.historico-dashboard-grid.two-up .hist-module-copy strong,
.historico-dashboard-grid.two-up .hist-delta-head strong { font-size:43px; }
.historico-dashboard-grid.two-up .hist-module-copy span,
.historico-dashboard-grid.two-up .hist-module-meta { font-size:12px; }
.historico-dashboard-grid.two-up .hist-vgv-module {
  grid-row:1 / -1;
}
.historico-dashboard-grid.two-up .hist-vgv-content {
  margin-top:16px;
  align-items:stretch;
  gap:22px;
}
.historico-dashboard-grid.two-up .hist-vgv-scale { width:66px; min-height:0; border-radius:11px 11px 4px 4px; }
.historico-dashboard-grid.two-up .hist-vgv-fill { inset:auto 6px 6px; border-radius:6px 6px 3px 3px; }
.historico-dashboard-grid.two-up .hist-vgv-goal { left:-7px; width:68px; }
.historico-dashboard-grid.two-up .hist-vgv-goal {
  border-top-width:3px;
  filter:drop-shadow(0 0 8px rgba(251,191,36,.68));
}
.historico-dashboard-grid.two-up .hist-vgv-goal span {
  left:76px;
  top:-11px;
  font-size:13px;
  text-shadow:0 0 10px rgba(251,191,36,.72);
}
.historico-dashboard-grid.two-up .hist-vgv-module .hist-module-copy {
  justify-content:space-between;
  align-self:stretch;
  min-width:150px;
  padding-top:132px;
  padding-bottom:8px;
  text-align:center;
  gap:0;
}
.historico-dashboard-grid.two-up .hist-vgv-module .hist-module-copy strong { font-size:40px; }
.historico-dashboard-grid.two-up .hist-vgv-module .hist-module-copy span {
  font-size:16px;
  white-space:normal;
  line-height:1.25;
}
.historico-dashboard-grid.two-up .hist-vgv-module .hist-vgv-target {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:3px;
}
.historico-dashboard-grid.two-up .hist-vgv-module .hist-vgv-target b,
.historico-dashboard-grid.two-up .hist-vgv-module .hist-vgv-target small {
  display:block;
  font-family:var(--f-display);
  font-weight:900;
  line-height:1;
}
.historico-dashboard-grid.two-up .hist-vgv-module .hist-vgv-target b { font-size:28px; }
.historico-dashboard-grid.two-up .hist-vgv-module .hist-vgv-target small { font-size:22px; }
.historico-dashboard-grid.two-up .hist-captures-content > strong { font-size:68px; }
.historico-dashboard-grid.two-up .hist-radial { width:118px; }
.historico-dashboard-grid.two-up .hist-radial::before { width:88px; }
.historico-dashboard-grid.two-up .hist-radial span { font-size:23px; }
.historico-dashboard-grid.two-up .hist-delta-head { margin-top:18px; }
.historico-dashboard-grid.two-up .hist-delta-head span { font-size:16px; }
.historico-dashboard-grid.two-up .hist-delta-module { justify-content:center; }
.historico-dashboard-grid.two-up .hist-delta-module .hist-module-label {
  width:100%;
  margin-bottom:12px;
  text-align:center;
}
.historico-dashboard-grid.two-up .hist-delta-module .hist-delta-head {
  flex:1;
  margin-top:0;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:16px;
  text-align:center;
}
.historico-dashboard-grid.two-up .hist-delta-module .hist-delta-head strong { font-size:76px; letter-spacing:0; }
.historico-dashboard-grid.two-up .hist-delta-module .hist-delta-head span {
  font-size:30px;
  line-height:1;
  letter-spacing:0;
}
.historico-dashboard-grid.two-up .hist-delta-module .hist-module-meta { margin-top:12px; font-size:20px; }
.historico-dashboard-grid.two-up .hist-delta-module > .hist-module-meta {
  align-self:flex-end;
  text-align:right;
}
.historico-dashboard-grid.two-up .hist-delta-module .hist-sparkline { display:none; }
.historico-dashboard-grid.two-up .hist-card-new,
.historico-dashboard-grid.two-up .hist-card-new * { color:#fff !important; }
.historico-dashboard-grid.two-up .hist-delta-module .hist-delta-head span.up {
  color:#6ee7b7 !important;
  text-shadow:0 0 16px rgba(110,231,183,.28);
}
.historico-dashboard-grid.two-up .hist-delta-module .hist-delta-head span.down {
  color:#fb7185 !important;
  text-shadow:0 0 16px rgba(251,113,133,.28);
}
.historico-dashboard-grid.two-up .hist-delta-module .hist-delta-head span.same {
  color:#cbd5e1 !important;
}

.historico-dashboard-empty {
  height:100%;
  display:grid;
  place-items:center;
  color:var(--c-text-sub);
  font-family:var(--f-display);
  font-size:28px;
  font-weight:800;
}

.hist-card-new {
  --status-color:#94a3b8;
  --status-rgb:148,163,184;
  position:relative;
  min-width:0;
  min-height:0;
  padding:18px;
  display:flex;
  flex-direction:column;
  gap:15px;
  overflow:hidden;
  border:1px solid rgba(var(--status-rgb),.26);
  border-radius:18px;
  background:
    linear-gradient(145deg,rgba(var(--status-rgb),.08),transparent 42%),
    rgba(10,19,34,.9);
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 12px 34px rgba(0,0,0,.2),0 0 24px rgba(var(--status-rgb),.055);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  opacity:0;
  transform:translateY(18px) scale(.985);
  transition:opacity .6s var(--ease-out),transform .6s var(--ease-out),border-color .35s ease;
}

.hist-card-new::before {
  content:'';
  position:absolute;
  inset:0 0 auto;
  height:3px;
  background:linear-gradient(90deg,var(--status-color),rgba(var(--status-rgb),.05));
  box-shadow:0 0 18px rgba(var(--status-rgb),.42);
}

.historico-dashboard-grid .hist-card-new::before { display:none; }
.historico-dashboard-grid .hist-card-new,
.historico-dashboard-grid .hist-card-new * { color:#fff !important; }
.historico-dashboard-grid .hist-delta-head span.up {
  color:#6ee7b7 !important;
  text-shadow:0 0 16px rgba(110,231,183,.28);
}
.historico-dashboard-grid .hist-delta-head span.down {
  color:#fb7185 !important;
  text-shadow:0 0 16px rgba(251,113,133,.28);
}
.historico-dashboard-grid .hist-delta-head span.same { color:#cbd5e1 !important; }

.hist-card-new.visible { opacity:1; transform:translateY(0) scale(1); }
.hist-card-new.status-super { --status-color:#34d399; --status-rgb:52,211,153; }
.hist-card-new.status-hit { --status-color:#6ee7b7; --status-rgb:110,231,183; }
.hist-card-new.status-near { --status-color:#fbbf24; --status-rgb:251,191,36; }
.hist-card-new.status-below { --status-color:#fb7185; --status-rgb:251,113,133; }

.hist-card-new-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  flex-shrink:0;
}

.hist-card-new-head h2 {
  margin:9px 0 0;
  color:var(--c-text);
  font-family:var(--f-display);
  font-size:29px;
  font-weight:900;
  line-height:1;
  letter-spacing:-.02em;
}

.hist-status-pill {
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:6px 9px;
  border:1px solid rgba(var(--status-rgb),.3);
  border-radius:999px;
  background:rgba(var(--status-rgb),.09);
  color:var(--status-color);
  font-size:9px;
  font-weight:900;
  letter-spacing:.13em;
  line-height:1;
  text-transform:uppercase;
}

.hist-status-pill b {
  width:17px;
  height:17px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(var(--status-rgb),.15);
  font-family:var(--f-display);
  font-size:12px;
}

.hist-card-year {
  color:rgba(var(--status-rgb),.6);
  font-family:var(--f-display);
  font-size:13px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.hist-card-modules {
  flex:1;
  min-height:0;
  display:grid;
  grid-template-columns:1.05fr .9fr 1.15fr;
  gap:9px;
}

.hist-viz-module {
  min-width:0;
  min-height:0;
  padding:12px;
  display:flex;
  flex-direction:column;
  border:1px solid rgba(255,255,255,.065);
  border-radius:13px;
  background:rgba(4,11,24,.48);
}

.hist-module-label {
  color:var(--c-text-muted);
  font-size:9px;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.hist-module-copy strong,
.hist-captures-content > strong,
.hist-delta-head strong {
  color:var(--c-text);
  font-family:var(--f-display);
  font-size:23px;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}

.hist-module-copy span,
.hist-module-meta {
  color:var(--c-text-muted);
  font-size:8px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.hist-vgv-content {
  flex:1;
  min-height:0;
  margin-top:9px;
  display:flex;
  align-items:flex-end;
  gap:12px;
}

.hist-vgv-scale {
  position:relative;
  width:32px;
  height:100%;
  min-height:82px;
  flex-shrink:0;
  overflow:visible;
  border:1px solid rgba(255,255,255,.07);
  border-radius:7px 7px 3px 3px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
}

.hist-vgv-fill {
  position:absolute;
  inset:auto 4px 4px;
  min-height:5px;
  border-radius:4px 4px 2px 2px;
  background:linear-gradient(180deg,var(--status-color),rgba(var(--status-rgb),.56));
  box-shadow:0 0 13px rgba(var(--status-rgb),.24);
  transform-origin:bottom;
  animation:hist-grow-bar 1.1s var(--ease-out) both;
}

.hist-vgv-goal {
  position:absolute;
  z-index:2;
  left:-5px;
  width:40px;
  border-top:2px dashed #fbbf24;
  filter:drop-shadow(0 0 4px rgba(251,191,36,.45));
}

.hist-vgv-goal span {
  position:absolute;
  left:43px;
  top:-6px;
  color:#fbbf24;
  font-size:7px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.hist-module-copy {
  min-width:0;
  padding-bottom:3px;
  display:flex;
  flex-direction:column;
  gap:7px;
}

.hist-vgv-target {
  display:flex;
  flex-direction:column;
  gap:2px;
}

.hist-vgv-target b,
.hist-vgv-target small {
  display:block;
  font-family:var(--f-display);
  font-weight:900;
  line-height:1;
}

.hist-vgv-target b { font-size:12px; }
.hist-vgv-target small { font-size:10px; }

.hist-captures-content {
  flex:1;
  min-height:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}

.hist-captures-content > strong { font-size:34px; color:var(--status-color); }

.hist-radial {
  width:56px;
  aspect-ratio:1;
  flex-shrink:0;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:conic-gradient(var(--status-color) var(--progress),rgba(255,255,255,.07) 0);
  filter:drop-shadow(0 0 7px rgba(var(--status-rgb),.18));
}

.hist-radial::before {
  content:'';
  grid-area:1/1;
  width:42px;
  aspect-ratio:1;
  border-radius:50%;
  background:#091426;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.045);
}

.hist-radial span {
  position:relative;
  grid-area:1/1;
  color:var(--c-text);
  font-family:var(--f-display);
  font-size:12px;
  font-weight:900;
}

.hist-delta-head {
  margin-top:10px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:7px;
}

.hist-delta-head strong { color:var(--status-color); }
.hist-delta-head span { font-family:var(--f-display); font-size:10px; font-weight:900; white-space:nowrap; }
.hist-delta-head span.up { color:var(--c-green-hi); }
.hist-delta-head span.down { color:var(--c-red-hi); }
.hist-delta-head span.same { color:var(--c-text-muted); }

.hist-sparkline {
  width:100%;
  height:48px;
  margin-top:auto;
  overflow:visible;
}

.hist-sparkline-base { stroke:rgba(148,163,184,.16); stroke-width:1; stroke-dasharray:3 3; }
.hist-sparkline polyline { fill:none; stroke:var(--status-color); stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 0 3px rgba(var(--status-rgb),.3)); }
.hist-sparkline circle { fill:var(--status-color); stroke:#091426; stroke-width:1.2; }
.hist-sparkline.up polyline,.hist-sparkline.up circle { stroke:#6ee7b7; }
.hist-sparkline.up circle { fill:#6ee7b7; }
.hist-sparkline.down polyline,.hist-sparkline.down circle { stroke:#fb7185; }
.hist-sparkline.down circle { fill:#fb7185; }
.hist-sparkline.same polyline,.hist-sparkline.same circle { stroke:#94a3b8; }
.hist-sparkline.same circle { fill:#94a3b8; }

.hist-summary-card {
  --status-color:#60a5fa;
  --status-rgb:96,165,250;
  background:linear-gradient(145deg,rgba(37,99,235,.14),transparent 48%),rgba(10,19,34,.92);
}

.hist-summary-period {
  margin-top:-7px;
  color:var(--c-text-muted);
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.hist-summary-rows {
  flex:1;
  min-height:0;
  display:grid;
  grid-template-rows:repeat(3,minmax(0,1fr));
  gap:7px;
}

.hist-summary-row {
  --status-color:#60a5fa;
  --status-rgb:96,165,250;
  min-height:0;
  padding:7px 10px;
  display:grid;
  grid-template-columns:130px 1fr;
  align-items:center;
  gap:12px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:10px;
  background:rgba(4,11,24,.4);
}

.hist-summary-row.captures { --status-color:#34d399; --status-rgb:52,211,153; }
.hist-summary-row.delta { --status-color:#fbbf24; --status-rgb:251,191,36; }
.hist-summary-row > div { min-width:0; }
.hist-summary-row span { display:block; color:var(--c-text-muted); font-size:8px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.hist-summary-row strong { display:block; margin-top:3px; color:var(--c-text); font-family:var(--f-display); font-size:18px; font-weight:900; line-height:1; white-space:nowrap; }
.hist-summary-row .hist-sparkline { height:39px; margin:0; }

@keyframes hist-grow-bar {
  from { transform:scaleY(0); opacity:.2; }
  to { transform:scaleY(1); opacity:1; }
}

@media (max-width:1100px) {
  .historico-dashboard-grid { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:repeat(3,minmax(270px,1fr)); overflow-y:auto; }
  .hist-card-new-head h2 { font-size:25px; }
}

@media (max-width:599px) {
  .historico-dashboard-grid { height:auto; grid-template-columns:1fr; grid-template-rows:none; padding:10px 0; overflow:visible; }
  .historico-dashboard-grid.two-up { grid-template-columns:1fr; grid-template-rows:none; padding:10px 0; gap:12px; }
  .historico-dashboard-grid.two-up .hist-card-new { min-height:390px; padding:16px; gap:14px; }
  .historico-dashboard-grid.two-up .hist-card-new-head h2 { font-size:26px; }
  .historico-dashboard-grid.two-up .hist-viz-module { padding:10px; }
  .historico-dashboard-grid.two-up .hist-vgv-scale { min-height:80px; width:36px; }
  .historico-dashboard-grid.two-up .hist-captures-content > strong { font-size:34px; }
  .historico-dashboard-grid.two-up .hist-radial { width:62px; }
  .historico-dashboard-grid.two-up .hist-radial::before { width:46px; }
  .historico-dashboard-grid.two-up .hist-sparkline { height:54px; }
  .hist-card-new { min-height:300px; padding:14px; gap:12px; }
  .hist-card-new-head h2 { font-size:23px; }
  .hist-card-modules { grid-template-columns:1fr 1fr; }
  .hist-delta-module { grid-column:1 / -1; }
  .hist-viz-module { min-height:104px; padding:10px; }
  .hist-vgv-scale { min-height:70px; }
  .hist-summary-row { grid-template-columns:105px 1fr; }
}
