/* Grundlayout, Header und globale Farben kommen aus styles.css der Startseite. */
.logo-banner{position:relative}.logo-banner a{display:block;max-width:100%}
.ranking-content{max-width:68.75rem;margin:0 auto;padding:0 var(--g2)}
.ranking-table-section{padding:1.25rem var(--g2) var(--g5);background:var(--skull-white)}
.back-link{display:inline-flex;align-items:center;padding:.4rem .7rem;border:1px solid rgba(255,255,255,.42);border-radius:999px;color:#fff;background:rgba(0,0,0,.24);box-shadow:0 .1rem .35rem rgba(0,0,0,.16);font-size:.84rem;font-weight:700;line-height:1.2;text-decoration:none;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.logo-banner .back-link{display:inline-flex}.back-link:hover{border-color:rgba(255,255,255,.72);color:#fff;background:rgba(0,0,0,.38);box-shadow:var(--shadow-sm)}.header-back-link{position:absolute;z-index:2;top:calc(1rem + env(safe-area-inset-top,0px));left:max(1rem,calc((100% - 68.75rem)/2 + 1rem))}
.ranking-page-title{margin:0 0 var(--g3);color:var(--blueblack)}
.panel,.ranking-content>details{overflow:hidden;border:1px solid rgba(55,63,81,.24);border-radius:var(--radius);background:var(--skull-white);box-shadow:var(--shadow-md)}
.panel{margin-bottom:var(--g4)}
.panel-head{padding:var(--g3);color:var(--blueblack);background:radial-gradient(ellipse at 18% 12%,rgba(255,255,255,.86) 0%,rgba(255,255,255,0) 34%),radial-gradient(ellipse at 82% 18%,rgba(120,126,136,.26) 0%,rgba(255,255,255,0) 46%),radial-gradient(ellipse at 35% 88%,rgba(90,96,106,.18) 0%,rgba(255,255,255,0) 42%),linear-gradient(132deg,rgba(55,63,81,.24) 0 1px,transparent 1px 4.5rem),linear-gradient(24deg,transparent 0 38%,rgba(55,63,81,.13) 39%,transparent 42%),linear-gradient(155deg,#f4f4f4 0%,#cfcfcf 45%,#eee 100%)}
.weights{display:flex;flex-wrap:wrap;gap:var(--g1)}
.weights span{padding:.35rem .65rem;border:1px solid rgba(55,63,81,.25);border-radius:.25rem;background:rgba(255,255,255,.42)}
.ranking-legend{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem 1.1rem;margin-top:.85rem;padding:.85rem 0 0;border-top:1px solid rgba(55,63,81,.2);color:#59616a;font-size:.78rem;line-height:1.35}.ranking-legend>span{display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap}.ranking-legend strong{color:var(--blueblack)}.ranking-legend .marker{margin:0}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;background:var(--skull-white)}
.ranking-table{table-layout:fixed;min-width:62rem}.ranking-table th:nth-child(1){width:5%}.ranking-table th:nth-child(2){width:8%}.ranking-table th:nth-child(3){width:22%}.ranking-table th:nth-child(4){width:11%}.ranking-table th:nth-child(5){width:20%}.ranking-table th:nth-child(6){width:34%}
th,td{padding:.75rem .65rem;border-bottom:1px solid #d5ccc0;text-align:left;vertical-align:top}
th{position:sticky;top:0;z-index:1;color:var(--skull-white);background:#59626d}.ranking-table th{background:var(--shadow-red)}
tbody tr:nth-child(odd){background:#f5f5f5}
.rank{text-align:center;font:600 1.7rem/1 'Teko',sans-serif}.rating{font-size:1.1rem;font-weight:700;white-space:nowrap}.form{white-space:nowrap}
.breakdown{min-width:13rem;font-size:.82rem}.breakdown-content{padding:.55rem .65rem}.breakdown-content div{margin-bottom:.25rem}
.coach-breakdown{width:100%;margin:0;border:0;background:transparent}.coach-breakdown summary{display:inline-flex;align-items:center;justify-content:center;min-width:8.4rem;padding:.4rem .7rem;border:1px solid rgba(55,63,81,.28);border-radius:999px;color:#59616a;background:#fff;font-size:.78rem;font-weight:700;white-space:nowrap;cursor:pointer;box-shadow:0 .1rem .3rem rgba(55,63,81,.08);transition:border-color .2s ease,color .2s ease,box-shadow .2s ease}.coach-breakdown summary:hover{border-color:rgba(55,63,81,.5);color:var(--blueblack);box-shadow:0 .2rem .5rem rgba(55,63,81,.13)}.coach-breakdown[open] summary{border-color:#8c7377;color:#714f54;background:#fff;box-shadow:0 .1rem .3rem rgba(55,63,81,.08)}.details-hide{display:none}.coach-breakdown[open] .details-show{display:none}.coach-breakdown[open] .details-hide{display:inline}
.marker{display:inline-flex;align-items:center;margin:.4rem .25rem 0 0;padding:.25rem .6rem;border:1px solid transparent;border-radius:999px;font-size:.66rem;font-weight:700;line-height:1;letter-spacing:.06em}.champion{color:#6f591d;background:#f3e7b3;border-color:#d6c276}.peak{color:#365c63;background:#dce9ec;border-color:#a9c4c9}
.shift{font-weight:700;white-space:nowrap}.up{color:#008b45}.down{color:#c20c19}.new{color:#755800}.same{color:#777}
.ranking-content>details{margin-top:var(--g3)}.ranking-content>details>summary{padding:var(--g2) var(--g3);color:var(--blueblack);background:#e2e2e2;font-weight:700;cursor:pointer}
.rules-content{padding:var(--g2) var(--g3) var(--g3)}.rule-block{padding:var(--g3) 0;border-bottom:1px solid rgba(55,63,81,.18)}.rule-block:last-child{border-bottom:0}.rule-block h3{margin:0 0 var(--g2);color:var(--blueblack);font:600 1.65rem/1.1 'Teko',sans-serif}.rule-block h4{margin:0 0 .5rem;color:var(--blueblack)}.rule-block p:last-child{margin-bottom:0}.rule-block ol,.rule-block ul{margin:0 0 var(--g2);padding-left:1.4rem}.rule-block li{margin-bottom:.35rem}.rule-formula{padding:.8rem 1rem;border-left:.3rem solid var(--danger-red);background:#f5f5f5}.rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g2);margin-bottom:var(--g2)}.rule-grid>div{padding:var(--g2);border:1px solid rgba(55,63,81,.18);border-radius:var(--radius);background:#f5f5f5}.rule-grid ul{margin-bottom:0}.rule-columns{columns:2}.rule-table-wrap{max-width:42rem;overflow:auto;margin-bottom:var(--g2)}.rules-table{width:100%;font-size:.92rem}.rules-table th{position:static}.rules-table td,.rules-table th{padding:.5rem .7rem}.compact-points{table-layout:fixed}.compact-points th,.compact-points td{width:25%}.compact-points th:nth-child(even),.compact-points td:nth-child(even){text-align:right}.compact-points td:nth-child(even){font-weight:700}.compact-points th:nth-child(3),.compact-points td:nth-child(3){border-left:2px solid rgba(55,63,81,.18)}.footer a{color:var(--skull-white)}
@media(max-width:768px){.ranking-table-section{width:100%;padding:1.25rem 1rem 2.5rem}.ranking-content{width:100%;max-width:none;margin:0;padding:0}.panel,.ranking-content>details{border-radius:0}th,td{padding:.55rem .45rem;font-size:.88rem}.breakdown{min-width:11.25rem}.rules-content{padding:var(--g2)}.rule-grid{grid-template-columns:1fr}.rule-columns{columns:1}}

/* Ruhige Top-3-Hervorhebung im Farbspektrum der Dangerdome-Seite. */
.ranking-table tbody tr:hover{position:relative;z-index:1;outline:2px solid rgba(130,0,0,.45);outline-offset:-2px}
.ranking-table .top-rank-1 td{background:linear-gradient(rgba(180,0,0,.12),rgba(180,0,0,.12)),#fff}
.ranking-table .top-rank-2 td{background:linear-gradient(rgba(180,0,0,.08),rgba(180,0,0,.08)),#fff}
.ranking-table .top-rank-3 td{background:linear-gradient(rgba(180,0,0,.045),rgba(180,0,0,.045)),#fff}
.ranking-table .top-rank-1 td:first-child{box-shadow:inset .25rem 0 rgba(130,0,0,.62)}
.ranking-table .top-rank-2 td:first-child{box-shadow:inset .25rem 0 rgba(130,0,0,.46)}
.ranking-table .top-rank-3 td:first-child{box-shadow:inset .25rem 0 rgba(130,0,0,.32)}

/* Auf kleinen Displays wird jede Tabellenzeile zu einer eigenständigen Coach-Karte. */
@media(max-width:768px){
  .ranking-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:.85rem;padding:.85rem 0 0}.ranking-legend>span{white-space:normal}
  .panel>.table-wrap{overflow:visible;padding:.75rem;background:#ddd9d3}
  .ranking-table{min-width:0;table-layout:auto;background:transparent}
  .ranking-table thead{display:none}
  .ranking-table tbody{display:grid;gap:.75rem}
  .ranking-table .rank-row{display:grid;grid-template-columns:3.4rem minmax(0,1fr) auto;align-items:center;overflow:hidden;border:1px solid rgba(55,63,81,.2);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm)}
  .ranking-table .rank-row td{display:block;padding:.6rem .75rem;border:0;background:transparent!important}
  .ranking-table .rank{grid-column:1;grid-row:1/3;align-self:stretch;display:flex;align-items:center;justify-content:center;padding:.75rem .4rem!important;border-right:1px solid rgba(55,63,81,.14);font-size:2.2rem}
  .ranking-table .coach{grid-column:2;grid-row:1;padding-bottom:.25rem}
  .ranking-table .movement{grid-column:3;grid-row:1;padding-bottom:.25rem;text-align:right}
  .ranking-table .rating{grid-column:2/4;grid-row:2;padding-top:.1rem;font-size:1rem}
  .ranking-table .rating::before{content:attr(data-label) ': ';color:#666;font-size:.75rem;font-weight:400;text-transform:uppercase;letter-spacing:.05em}
  .ranking-table .form{grid-column:1/4;grid-row:3;padding-top:.7rem!important;border-top:1px solid rgba(55,63,81,.14)!important;white-space:normal}
  .ranking-table .form::before{content:attr(data-label) ': ';color:#666;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
  .ranking-table .breakdown{grid-column:1/4;grid-row:4;min-width:0;padding-top:0!important}
  .coach-breakdown summary{width:100%;min-width:0;justify-content:center}
  .breakdown-content{padding:.75rem .1rem .15rem;font-size:.86rem;line-height:1.55}
  .ranking-table .top-rank-1{border-left:.3rem solid rgba(130,0,0,.62)}
  .ranking-table .top-rank-2{border-left:.3rem solid rgba(130,0,0,.46)}
  .ranking-table .top-rank-3{border-left:.3rem solid rgba(130,0,0,.32)}
  .ranking-table .top-rank-1 td:first-child,.ranking-table .top-rank-2 td:first-child,.ranking-table .top-rank-3 td:first-child{box-shadow:none}
}
