:root{
  --c-bg:#050805;
  --c-panel:#0b110b;
  --c-panel2:#101810;
  --c-line:#2b4219;
  --c-line2:#405e25;
  --c-lime:#baff24;
  --c-text:#f3f6ef;
  --c-muted:#9da89a;
  --c-top:#0b1308;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#030503;color:var(--c-text);font-family:Arial,Helvetica,sans-serif}
a{text-decoration:none;color:inherit}
button,input{font:inherit}
button{cursor:pointer}
img{max-width:100%}
.champ-body{min-height:100vh;background:radial-gradient(circle at 50% -80px,rgba(186,255,36,.10),transparent 430px),#030503}
.champ-width{width:1180px;max-width:calc(100vw - 24px);margin:0 auto}
.champ-topbar{height:54px;background:linear-gradient(180deg,#13210d,#081006);border-bottom:1px solid rgba(186,255,36,.25);position:sticky;top:0;z-index:50}
.champ-topbar-inner{height:54px;display:flex;align-items:center;gap:30px}
.champ-brand{display:flex;align-items:center;gap:9px;min-width:175px}.champ-brand img{width:64px;height:38px;object-fit:contain}.champ-brand span{display:grid;line-height:1}.champ-brand b{font-size:18px}.champ-brand small{font-size:9px;color:var(--c-lime);font-weight:900;margin-top:3px}
.champ-nav{display:flex;align-items:center;gap:22px;font-size:12px;font-weight:800}.champ-nav a{color:#dce5d7}.champ-nav a:hover,.champ-nav a.active{color:var(--c-lime)}

/* directory */
.champ-directory{padding:34px 0 55px}.champ-directory-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:22px}.champ-kicker{color:var(--c-lime);font-size:11px;font-weight:900;letter-spacing:.12em}.champ-directory-head h1{font-size:34px;margin:6px 0 5px;text-transform:uppercase}.champ-directory-head p{margin:0;color:var(--c-muted);max-width:700px}.champ-directory-tools input{width:310px;height:40px;border:1px solid var(--c-line);background:#050805;color:white;padding:0 12px;outline:0}.champ-directory-tools input:focus{border-color:var(--c-lime)}
.champ-featured{margin-bottom:18px}.champ-feature-card{min-height:265px;border:1px solid var(--c-line2);position:relative;overflow:hidden;background:#071007;display:grid;grid-template-columns:minmax(0,1fr) 300px}.champ-feature-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.32;filter:saturate(.9)}.champ-feature-card::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,5,2,.98) 0%,rgba(2,5,2,.78) 48%,rgba(2,5,2,.45) 100%)}.champ-feature-content{position:relative;z-index:2;padding:30px}.champ-feature-content .tag{display:inline-flex;border:1px solid rgba(186,255,36,.4);color:var(--c-lime);padding:6px 9px;font-size:10px;font-weight:900;text-transform:uppercase}.champ-feature-content h2{margin:15px 0 8px;font-size:30px;max-width:680px;text-transform:uppercase}.champ-feature-content p{color:#bac3b6;margin:0 0 22px}.champ-feature-meta{display:flex;flex-wrap:wrap;gap:9px}.champ-feature-meta span{border:1px solid rgba(186,255,36,.14);background:rgba(5,8,5,.72);padding:9px 11px;font-size:12px}.champ-feature-action{position:relative;z-index:2;display:flex;align-items:end;justify-content:end;padding:25px}.champ-open-button{display:inline-flex;align-items:center;justify-content:center;min-width:190px;height:44px;border:1px solid var(--c-lime);background:rgba(186,255,36,.09);color:var(--c-lime);font-weight:900;text-transform:uppercase;font-size:12px}
.champ-filter-tabs{display:flex;border:1px solid var(--c-line);width:max-content;margin-bottom:14px}.champ-filter-tabs button{border:0;border-right:1px solid var(--c-line);background:#081008;color:#aeb8a9;padding:10px 18px;font-weight:800;font-size:12px}.champ-filter-tabs button:last-child{border-right:0}.champ-filter-tabs button.active{background:#17270e;color:var(--c-lime)}
.champ-section-title{height:43px;border:1px solid var(--c-line);background:#0b130b;display:flex;align-items:center;justify-content:space-between;padding:0 14px}.champ-section-title h2{font-size:13px;margin:0;text-transform:uppercase}.champ-section-title span{font-size:11px;color:var(--c-muted)}
.champ-directory-list{display:grid;gap:8px;margin-top:8px}.champ-list-card{display:grid;grid-template-columns:170px minmax(0,1fr) 125px 100px;align-items:center;min-height:92px;border:1px solid #1e2e14;background:linear-gradient(180deg,#091009,#050805);transition:.15s}.champ-list-card:hover{border-color:#4f742c;background:#0b150a}.champ-list-image{height:90px;overflow:hidden;background:#000}.champ-list-image img{width:100%;height:100%;object-fit:cover}.champ-list-info{padding:13px 16px;min-width:0}.champ-list-info h3{margin:0 0 5px;font-size:16px}.champ-list-info p{margin:0;color:var(--c-muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.champ-list-date{padding:10px;text-align:center;border-left:1px solid #1e2e14}.champ-list-date b{display:block;color:var(--c-lime);font-size:16px}.champ-list-date span{font-size:10px;color:var(--c-muted)}.champ-list-status{text-align:center;font-size:10px;font-weight:900;text-transform:uppercase;color:var(--c-lime);padding:8px}.champ-empty{border:1px solid var(--c-line);padding:28px;text-align:center;color:var(--c-muted)}

/* event detail */
.champ-detail-layout{display:grid;grid-template-columns:175px minmax(0,1fr) 210px;gap:14px;padding:20px 0 55px;align-items:start}.champ-left-menu,.champ-side-card{background:#0b120b;border:1px solid #2c411c}.champ-left-menu{position:sticky;top:74px}.champ-side-title,.champ-side-card-head{background:#1a2a13;border-bottom:1px solid #355122;padding:10px 11px;color:white;font-size:11px;font-weight:900;text-transform:uppercase}.champ-side-title.second{margin-top:10px}.champ-left-menu a{display:block;padding:10px 11px;border-bottom:1px dotted #34452c;color:#8e9b8b;font-size:12px}.champ-left-menu a:hover,.champ-left-menu a.active{color:var(--c-lime);background:#111d0d}.champ-detail-main{min-width:0}.champ-event-hero{height:190px;position:relative;background:#111 center/cover no-repeat;border:1px solid #314a20;overflow:hidden}.champ-event-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,5,3,.88),rgba(3,5,3,.34)),linear-gradient(0deg,rgba(3,5,3,.75),transparent)}.champ-event-hero-content{position:absolute;left:23px;right:23px;bottom:22px;z-index:2}.champ-event-hero-content h1{font-size:29px;line-height:1.02;margin:8px 0 4px;text-transform:uppercase}.champ-event-hero-content p{margin:0;color:#c8d0c3}.champ-status-badge{display:inline-flex;padding:5px 8px;background:var(--c-lime);color:#132000;font-size:10px;font-weight:900;text-transform:uppercase}
.champ-event-tabs{display:grid;grid-template-columns:repeat(4,1fr);background:#0c150c;border:1px solid #314a20;border-top:0}.champ-event-tabs button{height:43px;border:0;border-right:1px solid #314a20;background:transparent;color:#b6c0b2;font-weight:800}.champ-event-tabs button:last-child{border-right:0}.champ-event-tabs button.active{background:#17280f;color:white;box-shadow:inset 0 -2px 0 var(--c-lime)}
.champ-meta-strip{display:grid;grid-template-columns:1fr .8fr 1.4fr .8fr;border:1px solid #314a20;border-top:0;background:#111b11}.champ-meta-strip div{padding:14px;border-right:1px solid #263b1a}.champ-meta-strip div:last-child{border-right:0}.champ-meta-strip small{display:block;color:#778472;font-size:10px;margin-bottom:6px}.champ-meta-strip strong{font-size:12px;color:#d8ded5}.champ-tab-panel{display:none;margin-top:14px}.champ-tab-panel.active{display:block}.champ-block{border:1px solid #2c411c;background:#0a100a;margin-bottom:12px}.champ-block-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#152213;border-bottom:1px solid #2c411c}.champ-block-head h2,.champ-block-head h3{margin:0;font-size:12px;color:white;text-transform:uppercase}.champ-block-head span{color:#81907c;font-size:10px}.champ-block-body{padding:14px}
.champ-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.champ-summary-grid div{background:#0e170e;border:1px solid #263b19;padding:14px;text-align:center}.champ-summary-grid b{display:block;font-size:23px;color:var(--c-lime)}.champ-summary-grid span{font-size:10px;color:#95a291;text-transform:uppercase}.champ-podium-groups{display:grid;grid-template-columns:1fr 1fr;gap:10px}.champ-podium{background:#0b140b;border:1px solid #263b19}.champ-podium h3{margin:0;padding:10px 11px;border-bottom:1px solid #263b19;font-size:11px;color:var(--c-lime);text-transform:uppercase}.champ-podium-place{display:grid;grid-template-columns:38px 1fr;gap:9px;align-items:center;padding:9px 11px;border-bottom:1px solid #172616}.champ-podium-place:last-child{border-bottom:0}.champ-place-num{font-size:19px;font-weight:900;color:#dce6d8}.champ-podium-place:first-of-type .champ-place-num{color:var(--c-lime)}.champ-podium-place a,.champ-podium-place b{font-size:12px}.champ-podium-place small{display:block;color:#778372;margin-top:2px;font-size:10px}
.champ-results-list{display:grid;gap:7px}.champ-result-row{display:grid;grid-template-columns:105px 1fr 70px 1fr;gap:8px;align-items:center;background:#0b140b;border:1px solid #223519;padding:10px}.champ-result-phase{font-size:10px;color:var(--c-lime);font-weight:900;text-transform:uppercase}.champ-result-player{text-align:right;font-size:12px}.champ-result-player.winner{color:#fff;font-weight:900}.champ-result-vs{text-align:center;color:#7f8d7a;font-size:10px}.champ-result-player.right{text-align:left}.champ-result-code{font-size:9px;color:#667363}.champ-participant-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px}.champ-participant-list{border:1px solid #243719;background:#091009}.champ-participant-list h3{font-size:11px;text-transform:uppercase;color:var(--c-lime);padding:10px 11px;margin:0;border-bottom:1px solid #243719}.champ-participant-row{display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid #162515}.champ-participant-row:last-child{border-bottom:0}.champ-participant-row img{width:32px;height:32px;object-fit:cover;border-radius:50%;background:#000;border:1px solid #355125}.champ-participant-row b{font-size:11px}.champ-participant-row small{display:block;color:#768273;font-size:9px}.champ-participant-row span{font-size:9px;color:#93a18f}.champ-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.champ-gallery-grid a{height:125px;border:1px solid #263a1a;background:#000;overflow:hidden}.champ-gallery-grid img{width:100%;height:100%;object-fit:cover}
.champ-right-side{display:grid;gap:12px;position:sticky;top:74px}.champ-quick-facts{padding:9px}.champ-fact{padding:9px 4px;border-bottom:1px solid #1c2c16}.champ-fact:last-child{border-bottom:0}.champ-fact small{display:block;color:#72806e;font-size:9px;margin-bottom:4px}.champ-fact b{font-size:11px}.champ-other-events{padding:8px}.champ-other-link{display:grid;grid-template-columns:44px 1fr;gap:8px;align-items:center;padding:7px;border-bottom:1px solid #1c2c16}.champ-other-link:last-child{border-bottom:0}.champ-other-link img{width:44px;height:38px;object-fit:cover;background:#000}.champ-other-link b{display:block;font-size:10px;line-height:1.2}.champ-other-link small{color:#758271;font-size:9px}.champ-note{padding:24px;text-align:center;border:1px solid #263b19;background:#091009;color:#8f9d8b}

@media(max-width:1050px){.champ-nav{gap:10px;flex-wrap:wrap}.champ-topbar{height:auto}.champ-topbar-inner{height:auto;min-height:54px;padding:8px 0;flex-wrap:wrap}.champ-detail-layout{grid-template-columns:1fr}.champ-left-menu,.champ-right-side{position:static}.champ-left-menu{display:flex;flex-wrap:wrap}.champ-side-title{width:100%}.champ-left-menu a{flex:1;min-width:120px}.champ-right-side{grid-template-columns:1fr 1fr}.champ-feature-card{grid-template-columns:1fr}.champ-feature-action{justify-content:start;padding-top:0}.champ-list-card{grid-template-columns:130px 1fr 110px}.champ-list-status{display:none}}
@media(max-width:700px){.champ-brand span{display:none}.champ-nav{font-size:10px}.champ-directory-head{display:grid}.champ-directory-tools input{width:100%}.champ-feature-content{padding:20px}.champ-feature-content h2{font-size:23px}.champ-list-card{grid-template-columns:90px 1fr}.champ-list-date{display:none}.champ-list-image{height:88px}.champ-detail-layout{padding-top:12px}.champ-meta-strip{grid-template-columns:1fr 1fr}.champ-meta-strip div:nth-child(2){border-right:0}.champ-event-tabs{grid-template-columns:1fr 1fr}.champ-summary-grid{grid-template-columns:1fr 1fr}.champ-podium-groups,.champ-participant-columns,.champ-right-side{grid-template-columns:1fr}.champ-result-row{grid-template-columns:1fr;gap:4px}.champ-result-player,.champ-result-player.right{text-align:left}.champ-result-vs{text-align:left}.champ-gallery-grid{grid-template-columns:1fr 1fr}}


/* =========================================================
   CLASSIFICAÇÃO COMPLETA — EXPANSÃO PELOS 3 PONTINHOS
   ========================================================= */
.champ-classification-toggle{
  width:100%;
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-top:1px solid #172616;
  background:#081008;
  color:var(--c-lime);
  cursor:pointer;
  transition:.15s ease;
}
.champ-classification-toggle:hover{
  background:#111d10;
}
.champ-classification-toggle span{
  display:block;
  font-size:19px;
  font-weight:900;
  line-height:1;
  letter-spacing:4px;
  transform:translateY(-2px);
}
.champ-classification-toggle.open{
  background:#142112;
}
.champ-classification-toggle.open span{
  transform:translateY(-2px) rotate(180deg);
}

.champ-full-classification{
  border-top:1px solid #263b19;
  background:#071007;
}
.champ-full-classification[hidden]{
  display:none !important;
}
.champ-full-classification-head{
  min-height:35px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 11px;
  border-bottom:1px solid #172616;
  background:#101a0f;
}
.champ-full-classification-head span{
  color:#dbe3d7;
  font-size:9px;
  font-weight:900;
  letter-spacing:.05em;
}
.champ-full-classification-head small{
  color:#71806d;
  font-size:9px;
}

.champ-classification-row{
  min-height:45px;
  display:grid;
  grid-template-columns:68px minmax(0,1fr);
  gap:8px;
  align-items:center;
  padding:7px 11px;
  border-bottom:1px solid #142114;
}
.champ-classification-row:last-child{
  border-bottom:0;
}
.champ-classification-rank{
  color:var(--c-lime);
  font-size:13px;
  font-weight:900;
  white-space:nowrap;
}
.champ-classification-athlete{
  min-width:0;
}
.champ-classification-athlete b{
  display:block;
  color:#edf3ea;
  font-size:11px;
  line-height:1.2;
}
.champ-classification-athlete a:hover b{
  color:var(--c-lime);
}
.champ-classification-athlete small{
  display:block;
  margin-top:2px;
  color:#71806d;
  font-size:9px;
}

@media(max-width:700px){
  .champ-classification-row{
    grid-template-columns:62px minmax(0,1fr);
  }
}


/* =========================================================
   CAMPEONATO — RESULTADOS POR FASE + CLUBES PARTICIPANTES
   ========================================================= */
.champ-phase-board{display:grid;gap:14px}
.champ-phase-category{display:grid;gap:9px}
.champ-phase-category-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;background:#111c10;border:1px solid #28401c}
.champ-phase-category-head h3{margin:0;color:var(--c-lime);font-size:12px;text-transform:uppercase}
.champ-phase-category-head span{font-size:9px;color:#879483;text-transform:uppercase}
.champ-phase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;align-items:start}
.champ-phase-card{background:#091109;border:1px solid #223719;min-width:0}
.champ-phase-head{height:38px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 10px;background:#101a0f;border-bottom:1px solid #223719}
.champ-phase-head b{font-size:10px;color:#e7eee3;text-transform:uppercase}
.champ-phase-head small{font-size:9px;color:#71806c}
.champ-phase-matches{display:grid}
.champ-phase-match{display:grid;grid-template-columns:56px minmax(0,1fr);grid-template-rows:auto auto;border-bottom:1px solid #142314;padding:7px 9px;column-gap:8px}
.champ-phase-match:last-child{border-bottom:0}
.champ-phase-code{grid-row:1/3;align-self:center;color:#667363;font-size:9px}
.champ-phase-player{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;align-items:center;min-width:0;color:#97a393;padding:2px 0}
.champ-phase-player span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
.champ-phase-player small{grid-column:1;color:#657261;font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.champ-phase-player b{grid-column:2;grid-row:1/3;align-self:center;color:#687564;font-size:9px}
.champ-phase-player.winner span{color:#fff;font-weight:900}
.champ-phase-player.winner b{color:var(--c-lime)}

.champ-clubs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.champ-club-card{display:grid;grid-template-columns:46px minmax(0,1fr) 18px;gap:9px;align-items:center;min-height:60px;padding:7px;background:#0a1209;border:1px solid #23391a;transition:.15s ease}
.champ-club-card:hover{border-color:#77a92e;background:#101b0e}
.champ-club-logo{width:44px;height:44px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#030603;border:1px solid #273e1d}
.champ-club-logo img{width:100%;height:100%;object-fit:contain;padding:4px}
.champ-club-info{min-width:0}.champ-club-info b{display:block;color:#eef3eb;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.champ-club-info span{display:block;margin-top:3px;color:#74806f;font-size:9px}
.champ-club-arrow{color:var(--c-lime);font-size:20px;text-align:right}

@media(max-width:900px){.champ-phase-grid{grid-template-columns:1fr}.champ-clubs-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.champ-clubs-grid{grid-template-columns:1fr}.champ-phase-match{grid-template-columns:48px minmax(0,1fr)}}


/* =========================================================
   RESULTADOS DO CAMPEONATO — MODELO DETALHADO
   Masculino / Feminino separados e ordem interna da planilha.
   ========================================================= */

.champ-results-categories{
  display:grid;
  gap:18px;
}

.champ-results-switchers{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.champ-results-switcher{
  min-height:74px;
  display:grid;
  align-content:center;
  justify-items:start;
  gap:4px;
  padding:12px 14px;
  background:#0d160c;
  border:1px solid #29421d;
  color:#dce5d9;
  cursor:pointer;
  transition:.18s ease;
  text-align:left;
}

.champ-results-switcher span{
  color:#778473;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.champ-results-switcher strong{
  color:var(--c-lime);
  font-size:18px;
  line-height:1;
  text-transform:uppercase;
}

.champ-results-switcher b{
  color:#98a694;
  font-size:10px;
  text-transform:uppercase;
}

.champ-results-switcher:hover{
  border-color:#4d7f31;
  transform:translateY(-1px);
}

.champ-results-switcher.active{
  background:linear-gradient(180deg,rgba(176,255,46,.10),rgba(16,27,15,.98));
  border-color:var(--c-lime);
  box-shadow:inset 0 0 0 1px rgba(176,255,46,.12), 0 0 18px rgba(176,255,46,.08);
}

.champ-results-panels{
  display:grid;
  gap:14px;
}

.champ-results-panel-box[hidden]{
  display:none !important;
}

.champ-results-category{
  display:grid;
  gap:9px;
}

.champ-results-category-head{
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:9px 12px;
  background:#101b0f;
  border:1px solid #29421d;
}

.champ-results-category-head>div{
  display:grid;
  gap:2px;
}

.champ-results-category-head span{
  color:#778473;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.champ-results-category-head h3{
  margin:0;
  color:var(--c-lime);
  font-size:14px;
  line-height:1;
  text-transform:uppercase;
}

.champ-results-category-head>b{
  color:#8f9c8b;
  font-size:9px;
  text-transform:uppercase;
}

.champ-detailed-results-list{
  display:grid;
  gap:8px;
}

.champ-duel-card{
  overflow:hidden;
  background:#050905;
  border:1px solid #223519;
}

.champ-duel-card-head{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:6px 10px;
  background:#0c140b;
  border-bottom:1px solid #1b2d17;
}

.champ-duel-card-head>div{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
}

.champ-duel-card-head span{
  color:var(--c-lime);
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
}

.champ-duel-card-head b{
  color:#687665;
  font-size:9px;
}

/* A ordem de cadastro existe somente em data-registration-order.
   Nenhum número de ordem é exibido visualmente. */

.champ-duel-competitors{
  display:grid;
}

.champ-duel-competitor{
  min-height:66px;
  display:grid;
  grid-template-columns:
    42px
    minmax(210px,1.65fr)
    minmax(82px,.72fr)
    minmax(72px,.62fr)
    minmax(72px,.62fr)
    minmax(78px,.66fr)
    minmax(88px,.78fr);
  gap:0;
  align-items:center;
  border-bottom:1px solid #142214;
}

.champ-duel-competitor:last-child{
  border-bottom:0;
}

.champ-duel-competitor.win{
  box-shadow:inset 3px 0 0 #5ae55e;
}

.champ-duel-competitor.loss{
  box-shadow:inset 3px 0 0 rgba(255,110,110,.38);
}

.champ-duel-result-mark{
  width:29px;
  height:29px;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:7px;
  background:#101710;
  border:1px solid #294127;
  color:#9aa595;
  font-size:12px;
  font-weight:900;
}

.champ-duel-result-mark.win{
  color:#62ee69;
  border-color:#216c32;
  background:#0b2210;
}

.champ-duel-result-mark.loss{
  color:#ef8b8b;
  border-color:#5f2828;
  background:#1b0b0b;
}

.champ-duel-athlete{
  min-width:0;
  padding:8px 10px 8px 5px;
}

.champ-duel-athlete strong{
  display:block;
  min-width:0;
  color:#f1f4ef;
  font-size:11px;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.champ-duel-athlete strong a,
.champ-duel-athlete strong span{
  color:inherit;
}

.champ-duel-athlete strong a:hover{
  color:var(--c-lime);
}

.champ-duel-athlete small{
  display:block;
  margin-top:3px;
  color:#6f7c6c;
  font-size:8px;
  line-height:1.25;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.champ-duel-stat{
  min-width:0;
  min-height:39px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:4px;
  padding:5px 8px;
  border-left:1px solid #172517;
}

.champ-duel-stat span{
  color:#697565;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase;
}

.champ-duel-stat b{
  color:#e1e6de;
  font-size:9px;
  line-height:1.2;
  overflow:hidden;
  text-overflow:ellipsis;
}

.champ-duel-stat b.win{
  color:#55e764;
}

.champ-duel-stat b.loss{
  color:#e58a8a;
}

@media(max-width:980px){
  .champ-duel-competitor{
    grid-template-columns:38px minmax(170px,1.5fr) repeat(5,minmax(68px,.7fr));
  }
}

@media(max-width:760px){
  .champ-duel-card{
    overflow:visible;
  }

  .champ-duel-competitor{
    grid-template-columns:38px minmax(0,1fr);
    padding:7px 0 9px;
  }

  .champ-duel-result-mark{
    grid-column:1;
    grid-row:1;
  }

  .champ-duel-athlete{
    grid-column:2;
    grid-row:1;
    padding:4px 8px 7px 3px;
  }

  .champ-duel-stat{
    grid-column:1/-1;
    min-height:0;
    display:grid;
    grid-template-columns:90px minmax(0,1fr);
    align-items:center;
    gap:6px;
    padding:5px 10px 5px 44px;
    border-left:0;
    border-top:1px solid #111d11;
  }

  .champ-duel-stat span{
    font-size:7px;
  }

  .champ-duel-stat b{
    font-size:9px;
  }
}


@media(max-width:760px){
  .champ-results-switchers{grid-template-columns:1fr;}
}


/* =========================================================
   D20 — PATROCINADORES LATERAIS NAS PÁGINAS DE CAMPEONATOS
   Usa os mesmos anúncios LEFT / RIGHT cadastrados no painel.
   ========================================================= */
@media(min-width:1501px){
  .champ-sponsor-wall{
    position:fixed;
    top:54px;
    bottom:0;
    width:calc((100vw - 1180px) / 2);
    min-width:0;
    overflow:hidden;
    background:#000;
    z-index:0;
  }

  .champ-sponsor-left{left:0}
  .champ-sponsor-right{right:0}

  .champ-sponsor-wall.is-empty{display:none}

  .champ-sponsor-link{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    display:block;
    overflow:hidden;
    background:#000;
  }

  .champ-sponsor-link[hidden]{display:none!important}

  .champ-sponsor-link img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    max-width:none;
    max-height:none;
    object-fit:fill;
    object-position:center top;
    display:block;
    margin:0;
    padding:0;
  }

  .champ-sponsor-text{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:20px;
    text-align:center;
    color:var(--c-lime);
    font-size:18px;
    font-weight:900;
    text-transform:uppercase;
  }

  /* conteúdo sempre acima das skins laterais */
  .champ-topbar,
  .champ-directory,
  .champ-detail-layout{
    position:relative;
    z-index:2;
  }
}

@media(max-width:1500px){
  .champ-sponsor-wall{display:none!important}
}


/* =========================================================
   CAMPEÕES HISTÓRICOS — 1ª A 10ª EDIÇÃO
   Usa automaticamente troféus de 1º lugar vinculados ao evento.
   ========================================================= */
.champ-historical-winner-block .champ-block-body{
  padding:14px;
}

.champ-historical-winners{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:12px;
}

.champ-historical-winners.multiple{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.champ-historical-winner{
  min-height:142px;
  display:grid;
  grid-template-columns:124px minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  padding:12px 16px 12px 12px;
  background:linear-gradient(135deg,#0b150b 0%,#101b10 58%,#17140a 100%);
  border:1px solid #385421;
  text-decoration:none;
  color:#eef5ea;
  overflow:hidden;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}

.champ-historical-winner:hover{
  transform:translateY(-2px);
  border-color:var(--c-lime);
  box-shadow:0 10px 26px rgba(0,0,0,.28), inset 0 0 24px rgba(174,255,54,.035);
}

.champ-historical-winner-photo{
  width:124px;
  height:116px;
  display:grid;
  place-items:end center;
  overflow:hidden;
  background:radial-gradient(circle at 50% 65%,rgba(174,255,54,.18),transparent 58%);
  border:1px solid #2b421d;
}

.champ-historical-winner-photo img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  object-position:center bottom;
}

.champ-historical-winner-copy{
  min-width:0;
}

.champ-historical-winner-copy span{
  display:block;
  margin-bottom:7px;
  color:var(--c-lime);
  font-size:9px;
  font-weight:900;
  letter-spacing:.06em;
}

.champ-historical-winner-copy strong{
  display:block;
  color:#fff;
  font-size:20px;
  line-height:1.08;
  overflow:hidden;
  text-overflow:ellipsis;
}

.champ-historical-winner-copy small{
  display:block;
  margin-top:7px;
  color:#98a494;
  font-size:10px;
}

.champ-historical-winner-arrow{
  color:#9bab96;
  font-size:9px;
  white-space:nowrap;
}

@media(max-width:800px){
  .champ-historical-winners.multiple{grid-template-columns:1fr}
  .champ-historical-winner{grid-template-columns:92px minmax(0,1fr)}
  .champ-historical-winner-photo{width:92px;height:96px}
  .champ-historical-winner-arrow{display:none}
  .champ-historical-winner-copy strong{font-size:16px}
}
