
/* V16 - Ranking estilo pódio competitivo */
.pro-ranking-v16{
  padding: clamp(70px, 7vw, 120px) 0;
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 34%, rgba(203, 160, 45, .08), transparent 24%),
    linear-gradient(180deg, rgba(3,5,12,.96), rgba(2,4,10,.98));
}

.pro-ranking-v16::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(1,3,8,.96), rgba(5,7,16,.72) 48%, rgba(1,3,8,.96)),
    url('../images/icarus-world-03.jpg') center/cover no-repeat;
  opacity:.52;
  pointer-events:none;
}

.pro-ranking-v16::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:180px;
  background:linear-gradient(180deg, transparent, rgba(0,0,0,.70));
  pointer-events:none;
}

.pro-ranking-v16 .content-area{
  position:relative;
  z-index:2;
}

.ranking-v16-panel{
  max-width:1240px;
  margin:0 auto;
  color:#f4ead6;
  position:relative;
}

.ranking-v16-tabs{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:0;
  margin:0 auto clamp(44px, 5vw, 76px);
  border-top:1px solid rgba(200,166,83,.24);
  border-bottom:1px solid rgba(200,166,83,.24);
}

.ranking-v16-tab{
  min-width:132px;
  height:46px;
  padding:0 22px;
  border:0;
  border-left:1px solid rgba(200,166,83,.18);
  border-right:1px solid rgba(200,166,83,.18);
  background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.005));
  color:rgba(230,220,200,.54);
  font-size:12px;
  font-weight:900;
  letter-spacing:.20em;
  text-transform:uppercase;
  cursor:pointer;
  transition:.25s ease;
}

.ranking-v16-tab:hover,
.ranking-v16-tab.active{
  color:#ffe38d;
  background:
    radial-gradient(circle at 50% 100%, rgba(242,177,31,.24), transparent 50%),
    linear-gradient(180deg, rgba(255,193,54,.10), rgba(255,255,255,.02));
  box-shadow:inset 0 -2px 0 #d9a42d, 0 18px 45px rgba(0,0,0,.26);
}

.ranking-v16-head{
  display:flex;
  align-items:center;
  gap:22px;
  max-width:820px;
  margin:0 0 42px 70px;
  position:relative;
}

.ranking-v16-head::after{
  content:"";
  height:1px;
  flex:1;
  min-width:120px;
  background:linear-gradient(90deg, rgba(219,174,70,.55), transparent);
  margin-left:26px;
}

.ranking-v16-emblem{
  width:56px;
  height:56px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#e3b84d;
  border:1px solid rgba(222,179,70,.38);
  background:radial-gradient(circle, rgba(222,179,70,.14), rgba(0,0,0,.18));
  box-shadow:0 0 38px rgba(222,179,70,.09);
}

.ranking-v16-head .pro-kicker{
  color:#d9b455;
  letter-spacing:.24em;
}

.ranking-v16-head .pro-title{
  font-size:clamp(22px, 2.2vw, 32px);
  margin:6px 0 4px;
  letter-spacing:.16em;
}

.ranking-v16-head .pro-subtitle{
  font-size:13px;
  opacity:.58;
}

.ranking-v16-podium{
  min-height:390px;
  display:grid;
  grid-template-columns:1fr 1.02fr 1fr;
  align-items:end;
  justify-content:center;
  max-width:860px;
  margin:0 auto 26px;
  position:relative;
}

.ranking-v16-podium::before{
  content:"";
  position:absolute;
  width:240px;
  height:240px;
  border-radius:50%;
  left:50%;
  top:-26px;
  transform:translateX(-50%);
  background:radial-gradient(circle, rgba(224,174,52,.16), transparent 62%);
  filter:blur(2px);
  pointer-events:none;
}

.ranking-v16-hero{
  position:relative;
  min-height:300px;
  padding:20px 22px 18px;
  border:1px solid rgba(201,164,78,.38);
  background:
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(0,0,0,.10)),
    linear-gradient(180deg, rgba(8,11,18,.88), rgba(3,5,10,.96));
  box-shadow:0 22px 70px rgba(0,0,0,.40);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.ranking-v16-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--rank-bg);
  background-size:cover;
  background-position:center top;
  opacity:.56;
  filter:saturate(1.05) contrast(1.05);
  transform:scale(1.03);
}

.ranking-v16-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.76) 62%, rgba(0,0,0,.90)),
    radial-gradient(circle at 50% 15%, rgba(218,174,52,.14), transparent 40%);
}

.ranking-v16-hero > *{
  position:relative;
  z-index:2;
}

.ranking-v16-hero--first{
  min-height:390px;
  margin:0 -8px;
  z-index:3;
  border-color:rgba(239,190,62,.72);
  box-shadow:
    0 0 0 1px rgba(239,190,62,.18),
    0 34px 90px rgba(0,0,0,.55),
    0 0 70px rgba(218,168,43,.12);
  --rank-bg:url('../images/ranker.JPG');
  background-position:center;
}

.ranking-v16-hero--second{
  min-height:320px;
  transform:translateY(8px);
  --rank-bg:url('../images/ranker.JPG');
}

.ranking-v16-hero--third{
  min-height:290px;
  transform:translateY(8px);
  --rank-bg:url('../images/ranker.JPG');
}

.ranking-v16-hero--second::before{ background-position:left top; }
.ranking-v16-hero--first::before{ background-position:center top; }
.ranking-v16-hero--third::before{ background-position:right top; }

.ranking-v16-place{
  position:absolute;
  top:16px;
  left:18px;
  color:rgba(255,255,255,.72);
  font-size:12px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.ranking-v16-best{
  position:absolute;
  top:132px;
  left:50%;
  transform:translateX(-50%);
  min-width:156px;
  text-align:center;
  padding:9px 16px;
  color:#1d1707;
  background:linear-gradient(180deg,#e4c35f,#b98d23);
  font-size:11px;
  font-weight:950;
  letter-spacing:.20em;
  text-transform:uppercase;
  box-shadow:0 18px 30px rgba(0,0,0,.32);
}

.ranking-v16-crown,
.ranking-v16-medal{
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  margin-bottom:6px;
  color:#ecc45f;
  text-shadow:0 0 16px rgba(236,196,95,.45);
}

.ranking-v16-position{
  display:block;
  color:#dfb447;
  font-family:Georgia, 'Times New Roman', serif;
  font-size:clamp(38px, 4vw, 58px);
  line-height:.9;
  letter-spacing:.02em;
  text-shadow:0 0 22px rgba(224,180,73,.24);
}

.ranking-v16-name{
  margin:12px 0 2px;
  color:#fff7df;
  font-family:Georgia, 'Times New Roman', serif;
  font-size:16px;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.ranking-v16-class{
  color:rgba(220,220,220,.52);
  font-size:12px;
  margin:0 0 16px;
}

.ranking-v16-score{
  color:rgba(230,220,200,.62);
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ranking-v16-score strong{
  color:#e0b447;
  font-family:Georgia, 'Times New Roman', serif;
  font-size:30px;
  letter-spacing:.02em;
  margin-right:5px;
}

.ranking-v16-progress{
  height:3px;
  margin-top:12px;
  background:rgba(255,255,255,.10);
  overflow:hidden;
}

.ranking-v16-progress span{
  display:block;
  height:100%;
  background:linear-gradient(90deg,#765d19,#f0c64d);
  box-shadow:0 0 18px rgba(240,198,77,.35);
}

.ranking-v16-bottom{
  max-width:860px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.ranking-v16-row{
  min-height:92px;
  border:1px solid rgba(201,164,78,.20);
  background:
    linear-gradient(90deg, rgba(0,0,0,.76), rgba(0,0,0,.32)),
    url('../images/ranker.JPG') center/cover no-repeat;
  display:grid;
  grid-template-columns:92px 1fr auto;
  align-items:center;
  gap:18px;
  padding:14px 22px;
  position:relative;
  overflow:hidden;
}

.ranking-v16-row::after{
  content:"";
  position:absolute;
  inset:auto 40px 18px 180px;
  height:2px;
  background:linear-gradient(90deg,#d0a83d,transparent);
  opacity:.75;
}

.ranking-v16-row-pos{
  color:rgba(255,255,255,.08);
  font-size:64px;
  line-height:1;
  font-weight:950;
}

.ranking-v16-row-label{
  color:rgba(220,210,180,.48);
  font-size:10px;
  font-weight:900;
  letter-spacing:.20em;
  text-transform:uppercase;
  margin-bottom:5px;
}

.ranking-v16-row-name{
  display:block;
  color:#fff1c9;
  font-family:Georgia, 'Times New Roman', serif;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.ranking-v16-row-class{
  margin:4px 0 0;
  color:rgba(255,255,255,.46);
  font-size:11px;
}

.ranking-v16-row-score{
  text-align:right;
  min-width:100px;
}

.ranking-v16-row-score strong{
  display:block;
  color:#e2b743;
  font-family:Georgia, 'Times New Roman', serif;
  font-size:24px;
}

.ranking-v16-row-score span{
  color:rgba(255,255,255,.44);
  font-size:10px;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.ranking-v16-note{
  max-width:860px;
  margin:18px auto 0;
  padding:12px 16px;
  border:1px solid rgba(201,164,78,.22);
  color:#d6c89f;
  background:rgba(0,0,0,.24);
  font-size:12px;
  opacity:.72;
}

@media(max-width:1050px){
  .ranking-v16-head{ margin-left:0; }
  .ranking-v16-podium{
    max-width:100%;
    grid-template-columns:1fr;
    gap:16px;
  }
  .ranking-v16-hero,
  .ranking-v16-hero--first,
  .ranking-v16-hero--second,
  .ranking-v16-hero--third{
    min-height:260px;
    margin:0;
    transform:none;
  }
  .ranking-v16-best{
    top:26px;
    left:auto;
    right:22px;
    transform:none;
  }
  .ranking-v16-bottom{ grid-template-columns:1fr; max-width:100%; }
}

@media(max-width:680px){
  .ranking-v16-tabs{ justify-content:flex-start; overflow-x:auto; flex-wrap:nowrap; padding-bottom:4px; }
  .ranking-v16-tab{ min-width:150px; }
  .ranking-v16-head{ flex-direction:column; align-items:flex-start; }
  .ranking-v16-head::after{ display:none; }
  .ranking-v16-row{ grid-template-columns:54px 1fr; }
  .ranking-v16-row-score{ grid-column:2; text-align:left; }
  .ranking-v16-row::after{ left:90px; right:20px; }
}
