/* public_piloto_detail_insights.css — Raio-X, «Onde ele termina» e duelo (DEM-156);
   painel de indicadores, pódio de palco, colunas P1–P10, cartões de temporada e Evolução (DEM-157). */
.pdp-kicker { font-size: .72rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; color: #ffc400; }

/* Raio-X */
.pdp-raiox { margin: 0 0 1.5rem; padding: 1.2rem 1.25rem 1.3rem; border-radius: 20px; background: radial-gradient(80% 120% at 0% 0%, rgba(255, 196, 0, .14), transparent 60%), linear-gradient(160deg, #17181f, #0d0e13); border: 1px solid rgba(255, 255, 255, .08); }
.pdp-raiox h3 { margin: .15rem 0 1rem; font-size: 1.35rem; font-weight: 900; font-style: italic; text-transform: uppercase; color: #fff; }
.pdp-raiox-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; }
.pdp-fact {
  position: relative; display: flex; flex-direction: column; justify-content: flex-end; gap: .25rem; min-height: 132px; padding: .9rem 1rem; border-radius: 16px; overflow: hidden;
  background: rgba(255, 255, 255, .04); border: 1px solid rgba(255, 255, 255, .08);
  animation: pdp-in .5s cubic-bezier(.2, .9, .2, 1) both; animation-delay: calc(var(--i) * 70ms);
}
.pdp-fact > i { position: absolute; top: .8rem; right: .9rem; font-size: 1.4rem; opacity: .35; }
.pdp-fact b { font-family: 'Exo 2', sans-serif; font-size: clamp(1.6rem, 2.6vw, 2.2rem); font-weight: 900; font-style: italic; line-height: 1; color: #fff; }
.pdp-fact.is-small b { font-size: clamp(1.1rem, 1.7vw, 1.45rem); line-height: 1.1; }
.pdp-fact small { font-size: .82rem; font-weight: 700; color: rgba(255, 255, 255, .72); }
.pdp-fact-k { font-size: .66rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; color: #ffc400; }
.pdp-fact--gold { background: linear-gradient(145deg, rgba(255, 196, 0, .22), rgba(255, 196, 0, .04)); border-color: rgba(255, 196, 0, .35); }
.pdp-fact--gold b, .pdp-fact--gold > i { color: #ffc400; }
.pdp-fact--accent b, .pdp-fact--accent > i { color: var(--color-accent, #d4ff00); }
.pdp-fact--legend { border: 2px solid transparent; background: linear-gradient(145deg, #241a2c, #121318) padding-box, linear-gradient(135deg, #ff4ecd, #ffc400, #38f9d7) border-box; }
.pdp-fact--legend b { background: linear-gradient(90deg, #ff4ecd, #ffc400, #38f9d7); -webkit-background-clip: text; background-clip: text; color: transparent; }
.pdp-fact--live b { color: #2ecc71; }
.pdp-fact--live > i { color: #2ecc71; }
.pdp-fact--photo { background: linear-gradient(180deg, rgba(0, 0, 0, .15), rgba(0, 0, 0, .85)), var(--img, none) center / cover no-repeat, #1a1b22; border-color: rgba(255, 255, 255, .15); }
@keyframes pdp-in { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }

/* Onde ele termina */
.pdp-outcome { padding: .4rem 0 .2rem; }
.pdp-outcome-k { margin: 0 0 .8rem; font-size: .85rem; color: rgba(255, 255, 255, .7); }
.pdp-outcome-bar { display: flex; height: 34px; border-radius: 10px; overflow: hidden; background: rgba(255, 255, 255, .06); }
.pdp-seg { width: 0; transition: width 1s cubic-bezier(.2, .9, .2, 1); }
.pdp-outcome.is-in .pdp-seg { width: var(--w); }
.pdp-outcome-bar .pdp-seg--win, .pdp-outcome-legend .pdp-seg--win i { background: #ffc400; }
.pdp-outcome-bar .pdp-seg--pod, .pdp-outcome-legend .pdp-seg--pod i { background: #c9d1db; }
.pdp-outcome-bar .pdp-seg--top5, .pdp-outcome-legend .pdp-seg--top5 i { background: #e09155; }
.pdp-outcome-bar .pdp-seg--top10, .pdp-outcome-legend .pdp-seg--top10 i { background: #5b8def; }
.pdp-outcome-bar .pdp-seg--rest, .pdp-outcome-legend .pdp-seg--rest i { background: #3a3c48; }
.pdp-outcome-legend { list-style: none; margin: 1rem 0 0; padding: 0; display: grid; gap: .45rem; }
.pdp-outcome-legend li { display: grid; grid-template-columns: 14px 3.2rem 1fr auto; align-items: center; gap: .6rem; font-size: .9rem; color: rgba(255, 255, 255, .8); }
.pdp-outcome-legend i { width: 14px; height: 14px; border-radius: 4px; }
.pdp-outcome-legend b { font-family: 'Exo 2', sans-serif; font-size: 1.15rem; font-weight: 900; color: #fff; text-align: right; }
.pdp-outcome-legend em { font-style: normal; font-weight: 800; color: rgba(255, 255, 255, .55); }

/* Duelo */
.pdp-duel { margin: 0 0 1.5rem; padding: 1.2rem 1.25rem; border-radius: 20px; background: linear-gradient(90deg, rgba(212, 255, 0, .08), transparent 40%, transparent 60%, rgba(91, 192, 255, .08)), #15161c; border: 1px solid rgba(255, 255, 255, .1); opacity: 0; transform: translateY(12px); transition: opacity .5s ease, transform .5s ease; }
.pdp-duel.is-in { opacity: 1; transform: none; }
.pdp-duel h3 { margin: .15rem 0 .2rem; font-size: 1.35rem; font-weight: 900; font-style: italic; text-transform: uppercase; color: #fff; }
.pdp-duel header p { margin: 0 0 1rem; color: rgba(255, 255, 255, .75); font-weight: 700; }
.pdp-duel-heads { display: flex; justify-content: space-between; margin-bottom: .5rem; font-weight: 900; text-transform: uppercase; font-size: .85rem; }
.pdp-duel-heads .me { display: inline-flex; align-items: center; gap: .45rem; color: var(--color-accent, #d4ff00); }
.pdp-duel-heads .me img { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; border: 2px solid var(--color-accent, #d4ff00); }
.pdp-duel-heads .them { color: #5bc0ff; }
.pdp-duel-row { display: grid; grid-template-columns: 3.4rem 1fr 6.5rem 1fr 3.4rem; align-items: center; gap: .5rem; padding: .3rem 0; }
.pdp-duel-row .v { font-family: 'Exo 2', sans-serif; font-size: 1.1rem; font-weight: 900; color: rgba(255, 255, 255, .55); }
.pdp-duel-row .v.me { text-align: right; } .pdp-duel-row .v.them { text-align: left; }
.pdp-duel-row .lab { text-align: center; font-size: .75rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; color: rgba(255, 255, 255, .7); }
.pdp-duel-row .bar { height: 12px; border-radius: 6px; background: rgba(255, 255, 255, .06); display: flex; overflow: hidden; }
.pdp-duel-row .bar.me { justify-content: flex-end; }
.pdp-duel-row .bar i { width: 0; border-radius: 6px; transition: width .9s cubic-bezier(.2, .9, .2, 1); }
.pdp-duel.is-in .bar i { width: var(--w); }
.pdp-duel-row .bar.me i { background: var(--color-accent, #d4ff00); }
.pdp-duel-row .bar.them i { background: #5bc0ff; }
.pdp-duel-row.me-wins .v.me { color: var(--color-accent, #d4ff00); }
.pdp-duel-row.them-wins .v.them { color: #5bc0ff; }
.pdp-duel footer { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1rem; }
.pdp-duel-cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; }
.pdp-duel-cta p { margin: .2rem 0 0; color: rgba(255, 255, 255, .72); max-width: 560px; }

/* Painel de números */
.stats-panel .stat-box.pdp-zero { opacity: .45; }

@media (max-width: 900px) { .pdp-raiox-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) {
  .pdp-raiox { padding: 1rem .85rem; }
  .pdp-raiox h3, .pdp-duel h3 { font-size: 1.1rem; }
  .pdp-fact { min-height: 112px; padding: .75rem .8rem; }
  .pdp-duel { padding: 1rem .85rem; }
  .pdp-duel-row { grid-template-columns: 2.6rem 1fr 4.6rem 1fr 2.6rem; gap: .35rem; }
  .pdp-duel-row .lab { font-size: .62rem; }
  .pdp-duel footer .rival-button, .pdp-duel-cta .rival-button { width: 100%; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
  .pdp-fact { animation: none; }
  .pdp-seg, .pdp-duel-row .bar i, .pdp-duel { transition: none; }
}

/* ===== DEM-157 ===== */
/* Painel de indicadores «de instrumento» */
.stats-panel.pdp-instruments { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: .6rem; }
.pdp-instruments .stat-box {
  position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: .15rem; padding: .85rem .8rem .75rem; text-align: left;
  border-radius: 14px; overflow: hidden; background: linear-gradient(165deg, #1b1c24, #111218); border: 1px solid rgba(255, 255, 255, .08);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.pdp-instruments .stat-box::before { content: ''; position: absolute; inset: 0 0 auto 0; height: 3px; background: var(--color-accent, #f39c12); opacity: .55; }
.pdp-instruments .stat-box > i { position: absolute; top: .7rem; right: .75rem; margin: 0; font-size: 1.05rem; opacity: .5; }
.pdp-instruments .stat-value { font-family: 'Exo 2', sans-serif; font-size: clamp(1.6rem, 2.2vw, 2.1rem); font-style: italic; font-weight: 900; color: #fff; }
.pdp-instruments .stat-label { order: -1; max-width: calc(100% - 1.3rem); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: .62rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; color: rgba(255, 255, 255, .62); }
.pdp-stat-sub { min-height: 1em; font-size: .66rem; font-weight: 700; color: rgba(255, 255, 255, .5); line-height: 1.2; }
.pdp-instruments .stat-box.clickable { cursor: pointer; }
.pdp-instruments .stat-box.clickable:hover, .pdp-instruments .stat-box.clickable:focus-visible { transform: translateY(-3px); border-color: rgba(255, 255, 255, .25); box-shadow: 0 10px 22px rgba(0, 0, 0, .35); outline: none; }
.pdp-instruments .pdp-tone-gold { background: linear-gradient(165deg, rgba(255, 196, 0, .2), #111218 70%); border-color: rgba(255, 196, 0, .4); }
.pdp-instruments .pdp-tone-gold::before { background: #ffc400; opacity: 1; }
.pdp-instruments .pdp-tone-gold .stat-value, .pdp-instruments .pdp-tone-gold > i { color: #ffc400; }
.pdp-instruments .pdp-tone-silver::before { background: #c9d1db; opacity: .9; }
.pdp-instruments .pdp-tone-legend { border: 2px solid transparent; background: linear-gradient(165deg, #241a2c, #111218) padding-box, linear-gradient(135deg, #ff4ecd, #ffc400, #38f9d7) border-box; }
.pdp-instruments .pdp-tone-legend::before { display: none; }
.pdp-instruments .pdp-tone-legend .stat-value { background: linear-gradient(90deg, #ff4ecd, #ffc400, #38f9d7); -webkit-background-clip: text; background-clip: text; color: transparent; }
.pdp-instruments .stat-box.pdp-zero { opacity: .4; }
.pdp-instruments .stat-box.pdp-zero::before { opacity: .2; }

/* Pódio de palco (2-1-3) */
.pdp-podium { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: end; gap: .6rem; padding-top: .4rem; }
.pdp-step { display: flex; flex-direction: column; align-items: stretch; text-align: center; }
.pdp-step-top { display: flex; flex-direction: column; align-items: center; gap: .1rem; padding-bottom: .55rem; }
.pdp-step-top i { font-size: 1.3rem; color: var(--sc); }
.pdp-step-top b { font: italic 900 clamp(2rem, 3.4vw, 2.8rem)/1 'Exo 2', sans-serif; color: #fff; }
.pdp-step-top small { font-size: .74rem; font-weight: 700; color: rgba(255, 255, 255, .6); }
.pdp-step-block {
  display: flex; flex-direction: column; justify-content: flex-start; align-items: center; padding-top: .55rem; border-radius: 12px 12px 4px 4px;
  background: linear-gradient(180deg, var(--sc), color-mix(in srgb, var(--sc) 35%, #0d0e13)); color: #111; box-shadow: inset 0 2px 0 rgba(255, 255, 255, .45);
  height: var(--sh); transform-origin: bottom; animation: pdp-rise .7s cubic-bezier(.2, .9, .2, 1) both;
}
.pdp-step-block span { font: italic 900 1.7rem/1 'Exo 2', sans-serif; }
.pdp-step-block em { font-style: normal; font-size: .66rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; opacity: .75; }
.pdp-step--p1 { --sc: #ffc400; --sh: 128px; }
.pdp-step--p2 { --sc: #c9d1db; --sh: 96px; }
.pdp-step--p3 { --sc: #e09155; --sh: 74px; }
.pdp-step--p1 .pdp-step-block { animation-delay: .15s; }
.pdp-step--p3 .pdp-step-block { animation-delay: .3s; }
.pdp-step.is-zero { opacity: .45; }
@keyframes pdp-rise { from { transform: scaleY(0); } to { transform: scaleY(1); } }

/* Colunas P1–P10 */
.pdp-dist { height: 100%; display: flex; flex-direction: column; padding: .9rem 1rem; border-radius: 14px; background: rgba(255, 255, 255, .03); border: 1px solid rgba(255, 255, 255, .07); }
.pdp-dist-head { display: flex; justify-content: space-between; align-items: baseline; gap: .5rem; margin-bottom: .6rem; }
.pdp-dist-head strong { font-size: .7rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; color: #ffc400; }
.pdp-dist-head span { font-size: .8rem; color: rgba(255, 255, 255, .65); }
.pdp-dist-head span b { font: italic 900 1.15rem 'Exo 2', sans-serif; color: #fff; }
.pdp-cols { flex: 1; display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); gap: .3rem; min-height: 170px; }
.pdp-col { display: flex; flex-direction: column; align-items: center; gap: .25rem; }
.pdp-col b { font-size: .75rem; font-weight: 900; color: rgba(255, 255, 255, .8); }
.pdp-col-track { flex: 1; width: 100%; display: flex; align-items: flex-end; border-radius: 6px; background: rgba(255, 255, 255, .04); }
.pdp-col-track i { width: 100%; height: var(--h); border-radius: 6px 6px 3px 3px; background: var(--cc, #3a3c48); transform-origin: bottom; animation: pdp-rise .8s cubic-bezier(.2, .9, .2, 1) both; }
.pdp-col span { font-size: .68rem; font-weight: 800; color: rgba(255, 255, 255, .5); }
.pdp-col--p1 { --cc: #ffc400; } .pdp-col--p2 { --cc: #c9d1db; } .pdp-col--p3 { --cc: #e09155; }
.pdp-col--top5 { --cc: var(--color-accent, #f39c12); } .pdp-col--top10 { --cc: #5b8def; }
.pdp-col.is-mode b { color: #fff; } .pdp-col.is-mode span { color: #fff; }
.pdp-col.is-mode .pdp-col-track i { box-shadow: 0 0 14px color-mix(in srgb, var(--cc) 60%, transparent); }
.pdp-dist-note { margin: .7rem 0 0; font-size: .82rem; color: rgba(255, 255, 255, .7); }
.pdp-dist-note i { color: var(--color-accent, #f39c12); margin-right: .25rem; }
.pdp-dist-note b { color: #fff; }

/* Cartões de temporada */
.item-grid:has(> .pdp-sc) { grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: .85rem; }
.pdp-sc {
  --fr: rgba(255, 255, 255, .1); --fx: rgba(255, 255, 255, .6);
  position: relative; display: flex; flex-direction: column; gap: .7rem; min-height: 188px; padding: .95rem 1rem .85rem 1.15rem; border-radius: 16px; overflow: hidden;
  text-decoration: none; color: #fff; background: radial-gradient(90% 80% at 100% 0%, color-mix(in srgb, var(--fx) 16%, transparent), transparent 65%), linear-gradient(165deg, #1b1c24, #0f1015);
  border: 1px solid var(--fr); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.pdp-sc::before { content: ''; position: absolute; inset: 0 auto 0 0; width: 5px; background: linear-gradient(180deg, var(--t1), var(--t2)); }
.pdp-sc:hover, .pdp-sc:focus-visible { color: #fff; transform: translateY(-4px); border-color: var(--fx); box-shadow: 0 16px 30px rgba(0, 0, 0, .45), 0 0 22px color-mix(in srgb, var(--fx) 25%, transparent); outline: none; }
.pdp-sc--p1 { --fx: #ffc400; --fr: rgba(255, 196, 0, .55); }
.pdp-sc--p2 { --fx: #c9d1db; --fr: rgba(201, 209, 219, .5); }
.pdp-sc--p3 { --fx: #e09155; --fr: rgba(224, 145, 85, .5); }
.pdp-sc--top5 { --fx: var(--color-accent, #f39c12); --fr: rgba(255, 255, 255, .14); }
.pdp-sc--top10 { --fx: #5b8def; }
.pdp-sc-pos { position: absolute; right: .7rem; bottom: 2.3rem; font: italic 900 4.4rem/1 'Exo 2', sans-serif; color: var(--fx); opacity: .9; letter-spacing: -.02em; pointer-events: none; text-shadow: 0 6px 18px rgba(0, 0, 0, .5); }
.pdp-sc-pos small { font-size: .45em; margin-right: .05em; opacity: .7; }
.pdp-sc--rest .pdp-sc-pos { opacity: .35; }
.pdp-sc-live { position: absolute; top: .75rem; right: .8rem; display: inline-flex; align-items: center; gap: .35rem; padding: .1rem .5rem; border-radius: 999px; font-size: .6rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; color: #fff; background: rgba(231, 76, 60, .9); }
.pdp-sc-live i { width: 6px; height: 6px; border-radius: 50%; background: #fff; animation: pdp-pulse 1.4s ease-in-out infinite; }
@keyframes pdp-pulse { 50% { opacity: .25; } }
.pdp-sc-head { display: flex; align-items: center; gap: .7rem; padding-right: 3.6rem; min-width: 0; }
.pdp-sc.is-live .pdp-sc-head { padding-right: 5.4rem; }
.pdp-sc-org { width: 46px; height: 46px; flex: 0 0 46px; border-radius: 12px; object-fit: contain; padding: 4px; background: rgba(255, 255, 255, .06); }
.pdp-sc-names { display: flex; flex-direction: column; min-width: 0; }
.pdp-sc-names b { font: italic 900 .98rem/1.15 'Exo 2', sans-serif; text-transform: uppercase; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.pdp-sc-names small { font-size: .74rem; color: rgba(255, 255, 255, .55); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pdp-sc-meta { display: flex; flex-direction: column; align-items: flex-start; gap: .2rem; margin-top: auto; }
.pdp-sc-tier { padding: .12rem .55rem; border-radius: 999px; font-size: .64rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; color: #111; background: var(--fx); }
.pdp-sc--rest .pdp-sc-tier { color: rgba(255, 255, 255, .75); background: rgba(255, 255, 255, .1); }
.pdp-sc-pts { font-size: .78rem; color: rgba(255, 255, 255, .6); }
.pdp-sc-pts b { font: italic 900 1.25rem 'Exo 2', sans-serif; color: #fff; }
.pdp-sc-team { display: flex; align-items: center; gap: .5rem; padding-top: .6rem; border-top: 1px solid rgba(255, 255, 255, .08); font-size: .8rem; font-weight: 700; color: rgba(255, 255, 255, .78); min-width: 0; }
.pdp-sc-team img { width: 24px; height: 24px; flex: 0 0 24px; border-radius: 50%; object-fit: cover; border: 2px solid var(--t1); background: #111; }
.pdp-sc-team span { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pdp-sc-team i { color: var(--fx); transition: transform .2s ease; }
.pdp-sc:hover .pdp-sc-team i { transform: translateX(3px); }

/* Evolução de Carreira */
.pdp-evo-sum { display: flex; flex-wrap: wrap; gap: .4rem; margin: -.2rem 0 .7rem; }
.pdp-evo-sum span { display: inline-flex; align-items: center; gap: .35rem; padding: .2rem .6rem; border-radius: 999px; font-size: .76rem; font-weight: 700; color: rgba(255, 255, 255, .75); background: rgba(255, 255, 255, .06); max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pdp-evo-sum b { color: #fff; }
.pdp-evo-sum .best { background: rgba(255, 196, 0, .14); color: #ffe08a; }
.pdp-evo-sum .best i { color: #ffc400; }
.pdp-evo-sum .up { background: rgba(46, 204, 113, .15); color: #7ee2a8; }
.pdp-evo-sum .down { background: rgba(231, 76, 60, .15); color: #f5a097; }

@media (max-width: 1200px) { .stats-panel.pdp-instruments { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 991px) { .pdp-dist { margin-top: 1.1rem; } }
@media (max-width: 560px) {
  .stats-panel.pdp-instruments { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pdp-instruments .stat-value { font-size: 1.6rem; }
  .pdp-step--p1 { --sh: 100px; } .pdp-step--p2 { --sh: 76px; } .pdp-step--p3 { --sh: 58px; }
  .pdp-step-top small { font-size: .66rem; }
  .pdp-cols { min-height: 140px; gap: .2rem; }
  .pdp-col b { font-size: .66rem; }
  .pdp-sc-pos { font-size: 3.6rem; }
}
@media (prefers-reduced-motion: reduce) {
  .pdp-step-block, .pdp-col-track i, .pdp-sc-live i { animation: none; }
  .pdp-sc, .pdp-instruments .stat-box { transition: none; }
}
