/* CTLG Phase 62 - Rangliste */
.ranking-hero{position:relative;overflow:hidden;border:1px solid rgba(234,176,50,.24);border-radius:30px;padding:42px;background:radial-gradient(circle at 100% 0,rgba(234,176,50,.20),transparent 38%),linear-gradient(135deg,rgba(18,20,22,.98),rgba(3,4,5,.98));box-shadow:0 28px 90px rgba(0,0,0,.36)}
.ranking-hero h1{font-size:clamp(42px,7vw,106px);line-height:.88;margin:0;text-transform:uppercase;letter-spacing:.02em}.ranking-hero p{max-width:880px;color:#ddd;font-size:clamp(17px,2vw,24px)}
.ranking-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:26px}.ranking-meta-grid article{border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:18px;background:rgba(0,0,0,.24)}.ranking-meta-grid strong{display:block;color:#ffd56d;font-size:30px}.ranking-meta-grid span{color:#bbb;text-transform:uppercase;font-weight:900;letter-spacing:.1em;font-size:12px}
.ranking-table-wrap{margin-top:28px;border:1px solid rgba(255,255,255,.12);border-radius:26px;overflow:hidden;background:rgba(255,255,255,.035)}.ranking-table{width:100%;border-collapse:collapse}.ranking-table th,.ranking-table td{padding:18px 16px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left}.ranking-table th{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#ffd56d;background:rgba(0,0,0,.30)}.ranking-table tr:hover td{background:rgba(234,176,50,.045)}.ranking-rank{font-size:28px;font-weight:1000;color:#ffd56d}.ranking-team{display:flex;align-items:center;gap:14px}.ranking-team img{width:48px;height:48px;border-radius:14px;object-fit:cover;background:#111;border:1px solid rgba(234,176,50,.25)}.ranking-team strong{display:block;font-size:18px}.ranking-team small{display:block;color:#aaa}.class-badge{display:inline-flex;align-items:center;justify-content:center;min-width:62px;border-radius:999px;padding:8px 12px;font-weight:1000;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05)}.class-a{color:#ffefad;border-color:rgba(255,213,109,.45);background:rgba(234,176,50,.12)}.class-b{color:#d8e8ff;border-color:rgba(138,180,255,.35);background:rgba(70,120,220,.12)}.class-c{color:#cfffd8;border-color:rgba(110,255,150,.30);background:rgba(30,160,70,.12)}.class-open{color:#ddd}
.ranking-details{margin-top:8px}.ranking-details summary{cursor:pointer;color:#ffd56d;font-weight:900}.ranking-match-list{display:grid;gap:8px;margin-top:10px}.ranking-match-row{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.05);font-size:14px}.ranking-note{margin-top:18px;color:#bbb}.tie-pill{display:inline-flex;margin-left:8px;border-radius:999px;padding:4px 8px;background:rgba(255,80,80,.14);color:#ffbdbd;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.admin-ranking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ranking-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ranking-form-grid .full{grid-column:1/-1}.ranking-admin-list{display:grid;gap:12px}.ranking-admin-row{display:grid;grid-template-columns:1fr 180px 1fr auto;gap:12px;align-items:end;padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:rgba(255,255,255,.035)}
@media(max-width:900px){.ranking-meta-grid,.admin-ranking-grid,.ranking-form-grid{grid-template-columns:1fr}.ranking-table-wrap{overflow-x:auto}.ranking-table{min-width:880px}.ranking-admin-row{grid-template-columns:1fr}.ranking-match-row{grid-template-columns:1fr}.ranking-hero{padding:28px}}


/* CTLG Phase 63 - Premium Rangliste UI */
.premium-ranking-hero{
    position:relative;
    min-height:460px;
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(320px,.55fr);
    gap:34px;
    align-items:end;
    padding:clamp(32px,5vw,72px);
    isolation:isolate;
    background:
        linear-gradient(90deg,rgba(0,0,0,.90) 0%,rgba(0,0,0,.66) 43%,rgba(0,0,0,.28) 100%),
        radial-gradient(circle at 86% 12%,rgba(234,176,50,.22),transparent 34%),
        url('../img/hero3.png') center right/cover no-repeat;
}
.premium-ranking-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 14% 90%,rgba(185,22,20,.22),transparent 34%),linear-gradient(180deg,transparent,rgba(0,0,0,.42));z-index:-1}.premium-ranking-hero::after{content:"RANKING";position:absolute;left:clamp(24px,4vw,64px);top:28px;font-size:clamp(72px,13vw,210px);font-weight:1000;letter-spacing:-.06em;color:rgba(255,255,255,.035);z-index:-1;line-height:.8}.ranking-hero-content{max-width:900px}.premium-ranking-hero h1{font-size:clamp(54px,8.5vw,132px);line-height:.83;margin:0;text-transform:uppercase;letter-spacing:-.035em}.ranking-hero-text{max-width:850px;color:#f1f1f1;font-size:clamp(18px,1.8vw,27px);font-weight:700;line-height:1.38}.ranking-hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}.ranking-filter-premium{align-self:center;justify-self:stretch;margin:0;padding:24px;border:1px solid rgba(255,255,255,.14);border-radius:28px;background:rgba(0,0,0,.45);backdrop-filter:blur(10px);box-shadow:0 22px 70px rgba(0,0,0,.34)}.ranking-filter-premium label span{display:block;margin-bottom:10px;color:#ffd56d;font-weight:1000;letter-spacing:.14em;text-transform:uppercase;font-size:13px}.select-shell{position:relative}.select-shell select{width:100%;height:62px;appearance:none;-webkit-appearance:none;border:1px solid rgba(234,176,50,.38);border-radius:18px;background:linear-gradient(180deg,rgba(20,22,24,.98),rgba(5,6,8,.98));color:#fff;font-size:17px;font-weight:900;padding:0 54px 0 18px;outline:none}.select-shell select:focus{border-color:#ffd56d;box-shadow:0 0 0 4px rgba(234,176,50,.14)}.select-shell i{position:absolute;right:18px;top:50%;transform:translateY(-50%);color:#ffd56d;pointer-events:none}.ranking-meta-grid article{position:relative;overflow:hidden}.ranking-meta-grid article i{position:absolute;right:18px;top:18px;color:rgba(255,213,109,.28);font-size:30px}.ranking-explain-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);gap:24px;margin-top:28px;padding:30px;border:1px solid rgba(255,255,255,.12);border-radius:28px;background:radial-gradient(circle at 100% 0,rgba(234,176,50,.10),transparent 34%),linear-gradient(135deg,rgba(18,20,22,.96),rgba(5,6,8,.96))}.ranking-explain-panel h2{margin:0 0 12px;font-size:clamp(28px,3vw,48px);line-height:1;text-transform:uppercase}.ranking-explain-panel p{margin:0;color:#d6d6d6;font-size:18px;line-height:1.55}.ranking-legend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ranking-legend-grid article{padding:16px;border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(255,255,255,.04)}.ranking-legend-grid strong{display:block;color:#ffd56d;font-size:24px;line-height:1}.ranking-legend-grid span{display:block;margin-top:6px;color:#cfcfcf;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.ranking-tiebreaker-box{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;padding:16px 18px;border-radius:18px;border:1px solid rgba(234,176,50,.18);background:rgba(234,176,50,.06);color:#ddd}.ranking-tiebreaker-box strong{color:#ffd56d;white-space:nowrap}.premium-ranking-table-wrap{scroll-margin-top:150px}.premium-ranking-table tr.rank-gold td{background:linear-gradient(90deg,rgba(234,176,50,.13),rgba(255,255,255,.025))}.premium-ranking-table tr.rank-silver td{background:linear-gradient(90deg,rgba(210,220,235,.12),rgba(255,255,255,.025))}.premium-ranking-table tr.rank-bronze td{background:linear-gradient(90deg,rgba(205,126,54,.13),rgba(255,255,255,.025))}.ranking-rank{display:inline-flex;align-items:center;gap:8px;min-width:78px}.ranking-rank.rank-gold{color:#ffd56d;text-shadow:0 0 22px rgba(234,176,50,.35)}.ranking-rank.rank-silver{color:#dfe8f4}.ranking-rank.rank-bronze{color:#d79b65}.ranking-rank i{font-size:22px}.ranking-team-placeholder{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;border:1px solid rgba(234,176,50,.25);background:rgba(234,176,50,.08);color:#ffd56d}.sun-pill{display:inline-flex;align-items:center;gap:7px}.sun-pill b{font-weight:1000}.sun-pill em{color:#777;font-style:normal}.premium-ranking-note{display:flex;gap:16px;align-items:flex-start;padding:22px;border:1px solid rgba(255,255,255,.10);border-radius:22px;background:rgba(255,255,255,.04)}.premium-ranking-note i{color:#ffd56d;font-size:24px;margin-top:3px}.premium-ranking-note strong{display:block;color:#fff;margin-bottom:5px}.premium-ranking-note p{margin:0;color:#bbb}.ranking-empty{text-align:center;padding:60px 24px}.ranking-empty i{font-size:46px;color:#ffd56d}.ranking-empty h2{font-size:34px;margin:14px 0 8px}.ranking-empty p{color:#bbb}

@media(max-width:980px){.premium-ranking-hero{grid-template-columns:1fr;min-height:560px;padding:30px 22px;background-position:center right}.ranking-filter-premium{justify-self:stretch}.ranking-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ranking-explain-panel{grid-template-columns:1fr;padding:24px}.ranking-legend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ranking-tiebreaker-box{display:grid}.premium-ranking-table-wrap{border:0;background:transparent;overflow:visible}.premium-ranking-table{min-width:0;width:100%;border-collapse:separate;border-spacing:0 14px}.premium-ranking-table thead{display:none}.premium-ranking-table tbody,.premium-ranking-table tr,.premium-ranking-table td{display:block;width:100%}.premium-ranking-table tr{border:1px solid rgba(255,255,255,.12);border-radius:24px;background:rgba(255,255,255,.045);overflow:hidden;padding:12px}.premium-ranking-table tr.rank-gold,.premium-ranking-table tr.rank-silver,.premium-ranking-table tr.rank-bronze{border-color:rgba(234,176,50,.28)}.premium-ranking-table td{border-bottom:1px solid rgba(255,255,255,.07);padding:12px 10px;display:grid;grid-template-columns:116px minmax(0,1fr);gap:12px;align-items:center}.premium-ranking-table td::before{content:attr(data-label);color:#ffd56d;font-size:12px;font-weight:1000;text-transform:uppercase;letter-spacing:.10em}.premium-ranking-table td:last-child{border-bottom:0}.premium-ranking-table td[data-label="Team"]{grid-template-columns:1fr}.premium-ranking-table td[data-label="Team"]::before{display:none}.ranking-team strong{font-size:20px}.ranking-rank{font-size:30px}.ranking-details summary{padding:8px 0}.ranking-match-row{grid-template-columns:1fr;gap:5px}.ranking-hero-actions .btn-primary,.ranking-hero-actions .btn-secondary{width:100%}}
@media(max-width:560px){.premium-ranking-hero h1{font-size:clamp(44px,15vw,68px)}.ranking-hero-text{font-size:17px}.ranking-meta-grid,.ranking-legend-grid{grid-template-columns:1fr}.select-shell select{height:58px;font-size:16px}.premium-ranking-table td{grid-template-columns:96px minmax(0,1fr)}}

.ranking-class-warning{display:flex;gap:16px;align-items:flex-start;margin:0 0 22px;padding:20px 22px;border-radius:22px;border:1px solid rgba(234,176,50,.35);background:linear-gradient(135deg,rgba(234,176,50,.12),rgba(255,255,255,.035));color:#eee}.ranking-class-warning i{color:#ffd56d;font-size:26px;margin-top:3px}.ranking-class-warning strong{display:block;color:#fff;font-size:20px;margin-bottom:6px}.ranking-class-warning p{margin:0;color:#ddd;line-height:1.45}


/* CTLG Phase 64 - Leistungsklassen Premium Admin UI */
.team-classes-hero {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 28px;
    align-items: end;
    margin-bottom: 22px;
    padding: clamp(28px, 4vw, 54px);
    border: 1px solid rgba(234,176,50,.28);
    border-radius: 30px;
    background:
        linear-gradient(90deg, rgba(0,0,0,.92), rgba(0,0,0,.56)),
        radial-gradient(circle at 100% 0, rgba(234,176,50,.22), transparent 36%),
        url('../img/hero3.png') center right/cover no-repeat;
    box-shadow: 0 26px 80px rgba(0,0,0,.35);
}

.team-classes-hero::after {
    content: "A B C";
    position: absolute;
    right: clamp(24px, 5vw, 72px);
    top: 22px;
    color: rgba(255,255,255,.045);
    font-size: clamp(72px, 12vw, 190px);
    font-weight: 1000;
    letter-spacing: -.08em;
    line-height: .8;
    pointer-events: none;
}

.team-classes-hero h1 {
    margin: 0;
    font-size: clamp(44px, 6vw, 96px);
    line-height: .9;
    text-transform: uppercase;
    letter-spacing: -.03em;
}

.team-classes-hero p {
    max-width: 900px;
    margin: 18px 0 0;
    color: #e4e4e4;
    font-size: clamp(17px, 1.5vw, 23px);
    line-height: 1.45;
}

.team-classes-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: flex-end;
}

.class-info-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 18px;
}

.class-info-card {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 16px;
    padding: 22px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 24px;
    background: linear-gradient(135deg, rgba(20,22,24,.96), rgba(5,6,8,.96));
}

.class-info-icon {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    border: 1px solid rgba(234,176,50,.28);
    background: rgba(234,176,50,.10);
    color: #ffd56d;
    font-size: 24px;
}

.class-info-card strong {
    display: block;
    color: #fff;
    font-size: 23px;
    line-height: 1;
}

.class-info-card span {
    display: block;
    margin-top: 6px;
    color: #ffd56d;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .09em;
    font-size: 12px;
}

.class-info-card p {
    margin: 12px 0 0;
    color: #cfcfcf;
    line-height: 1.45;
}

.class-info-a {
    box-shadow: inset 0 0 0 1px rgba(255,213,109,.08);
}

.class-info-b {
    box-shadow: inset 0 0 0 1px rgba(138,180,255,.08);
}

.class-info-c {
    box-shadow: inset 0 0 0 1px rgba(110,255,150,.08);
}

.team-class-stats {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}

.team-class-stats article {
    padding: 20px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 22px;
    background:
        radial-gradient(circle at 100% 0, rgba(234,176,50,.10), transparent 40%),
        rgba(255,255,255,.035);
}

.team-class-stats strong {
    display: block;
    color: #ffd56d;
    font-size: 38px;
    line-height: 1;
}

.team-class-stats span {
    display: block;
    margin-top: 8px;
    color: #ddd;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .10em;
    font-size: 12px;
}

.team-class-filter {
    margin-bottom: 18px;
}

.team-class-filter form {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr) auto;
    gap: 16px;
    align-items: end;
}

.team-class-filter label span,
.team-class-form label > span,
.class-select-label > span,
.class-note-label > span {
    display: block;
    margin-bottom: 9px;
    color: #fff;
    font-size: 12px;
    font-weight: 1000;
    text-transform: uppercase;
    letter-spacing: .16em;
}

.premium-select,
.class-select-shell select,
.team-class-filter select {
    width: 100%;
    min-height: 58px;
    appearance: none;
    -webkit-appearance: none;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 18px;
    background:
        linear-gradient(45deg, transparent 50%, #ffd56d 50%) calc(100% - 23px) 25px/7px 7px no-repeat,
        linear-gradient(135deg, rgba(14,15,17,.98), rgba(2,3,4,.98));
    color: #fff;
    padding: 0 54px 0 18px;
    font-size: 16px;
    font-weight: 900;
    outline: none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}

.premium-select:focus,
.class-select-shell select:focus,
.team-class-filter select:focus {
    border-color: rgba(234,176,50,.70);
    box-shadow: 0 0 0 4px rgba(234,176,50,.12);
}

.premium-select option,
.class-select-shell select option {
    background: #111;
    color: #fff;
}

.team-class-filter-actions {
    display: flex;
    gap: 10px;
}

.team-class-list-head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 18px;
    margin-bottom: 18px;
}

.team-class-list-head h2 {
    margin: 0;
    font-size: clamp(26px, 2.4vw, 42px);
}

.team-class-list {
    gap: 14px;
}

.ranking-admin-row.team-class-row {
    grid-template-columns: minmax(280px, 1.05fr) minmax(220px, .55fr) minmax(260px, .8fr) minmax(170px, auto);
    align-items: center;
    padding: 18px;
    border-radius: 24px;
    background:
        radial-gradient(circle at 100% 0, rgba(234,176,50,.07), transparent 40%),
        rgba(255,255,255,.035);
}

.team-class-row.class-row-a {
    border-color: rgba(255,213,109,.26);
}

.team-class-row.class-row-b {
    border-color: rgba(138,180,255,.20);
}

.team-class-row.class-row-c {
    border-color: rgba(110,255,150,.18);
}

.team-class-row.is-locked {
    box-shadow: inset 4px 0 0 rgba(118,255,155,.55);
}

.team-class-main {
    display: grid;
    gap: 8px;
}

.team-class-main strong {
    font-size: 22px;
    color: #fff;
}

.team-class-main small {
    color: #aaa;
    line-height: 1.35;
}

.team-class-badge {
    width: fit-content;
}

.class-select-shell {
    position: relative;
}

.class-note-label input {
    width: 100%;
    min-height: 58px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 18px;
    background: rgba(0,0,0,.32);
    color: #fff;
    padding: 0 18px;
    font-size: 15px;
    outline: none;
}

.class-note-label input:focus {
    border-color: rgba(234,176,50,.70);
    box-shadow: 0 0 0 4px rgba(234,176,50,.12);
}

.class-lock-toggle {
    min-height: 58px;
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
    margin: 0;
    padding: 13px 15px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 18px;
    background: rgba(255,255,255,.04);
}

.class-lock-toggle input {
    width: 21px;
    height: 21px;
    accent-color: #eab032;
}

.class-lock-toggle strong {
    display: block;
    color: #fff;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.class-lock-toggle em {
    display: block;
    margin-top: 2px;
    color: #aaa;
    font-style: normal;
    font-size: 12px;
}

.team-class-bottom-actions {
    position: sticky;
    bottom: 14px;
    z-index: 30;
    justify-content: flex-end;
    margin-top: 20px;
    padding: 14px;
    border: 1px solid rgba(234,176,50,.20);
    border-radius: 22px;
    background: rgba(6,7,8,.88);
    backdrop-filter: blur(14px);
}

@media (max-width: 1180px) {
    .team-classes-hero,
    .team-class-filter form,
    .ranking-admin-row.team-class-row {
        grid-template-columns: 1fr;
    }

    .team-classes-hero-actions,
    .team-class-filter-actions,
    .team-class-list-head {
        justify-content: flex-start;
    }

    .class-info-grid {
        grid-template-columns: 1fr;
    }

    .team-class-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .team-classes-hero {
        padding: 26px 22px;
        border-radius: 24px;
    }

    .team-classes-hero h1 {
        font-size: clamp(38px, 11vw, 62px);
    }

    .team-classes-hero-actions,
    .team-class-filter-actions,
    .team-class-bottom-actions,
    .team-class-list-head {
        display: grid;
        grid-template-columns: 1fr;
    }

    .team-class-stats {
        grid-template-columns: 1fr;
    }

    .class-info-card {
        grid-template-columns: 48px minmax(0, 1fr);
        padding: 18px;
    }

    .class-info-icon {
        width: 48px;
        height: 48px;
        border-radius: 15px;
    }

    .team-class-main strong {
        font-size: 20px;
    }

    .premium-select,
    .class-select-shell select,
    .team-class-filter select,
    .class-note-label input {
        min-height: 56px;
        font-size: 16px;
    }
}


/* CTLG Phase 73 - PWA Rangliste als Karten/Accordion */
.ranking-mobile-list {
    display: none;
}

@media (max-width: 900px) {
    .premium-ranking-table-wrap {
        display: none !important;
    }

    .ranking-mobile-list {
        display: grid;
        gap: 18px;
        margin-top: 24px;
    }

    .ranking-mobile-card {
        overflow: hidden;
        border: 1px solid rgba(255,255,255,.13);
        border-radius: 28px;
        background:
            radial-gradient(circle at 100% 0, rgba(234,176,50,.12), transparent 42%),
            linear-gradient(135deg, rgba(19,21,23,.98), rgba(5,6,8,.98));
        box-shadow: 0 26px 78px rgba(0,0,0,.30);
    }

    .ranking-mobile-card.rank-gold {
        border-color: rgba(255,213,109,.48);
        background:
            radial-gradient(circle at 82% 0, rgba(255,213,109,.25), transparent 42%),
            linear-gradient(135deg, rgba(42,36,20,.98), rgba(6,6,7,.98));
    }

    .ranking-mobile-card.rank-silver {
        border-color: rgba(220,225,235,.38);
    }

    .ranking-mobile-card.rank-bronze {
        border-color: rgba(190,118,61,.40);
    }

    .ranking-mobile-card__top {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 12px;
        align-items: center;
        padding: 20px;
        border-bottom: 1px solid rgba(255,255,255,.10);
    }

    .ranking-mobile-place span {
        display: block;
        color: #ffd56d;
        font-size: 13px;
        font-weight: 1000;
        letter-spacing: .16em;
        text-transform: uppercase;
    }

    .ranking-mobile-place strong {
        display: flex;
        align-items: center;
        gap: 12px;
        margin-top: 8px;
        color: #ffd56d;
        font-size: 54px;
        line-height: .9;
    }

    .ranking-mobile-place i {
        font-size: 34px;
    }

    .ranking-mobile-card__top .tie-pill {
        grid-column: 1 / -1;
        width: fit-content;
        margin-left: 0;
    }

    .ranking-mobile-team {
        display: grid;
        grid-template-columns: 82px minmax(0, 1fr);
        gap: 18px;
        align-items: center;
        padding: 22px 20px;
    }

    .ranking-mobile-team img,
    .ranking-mobile-team .ranking-team-placeholder {
        width: 82px;
        height: 82px;
        display: grid;
        place-items: center;
        border: 1px solid rgba(234,176,50,.28);
        border-radius: 24px;
        background: rgba(234,176,50,.08);
        object-fit: cover;
        color: #ffd56d;
        font-size: 30px;
    }

    .ranking-mobile-team strong {
        display: block;
        color: #fff;
        font-size: clamp(26px, 8vw, 40px);
        line-height: 1.02;
    }

    .ranking-mobile-team small {
        display: block;
        margin-top: 6px;
        color: #aaa;
        font-size: 18px;
        line-height: 1.3;
    }

    .ranking-mobile-details {
        border-top: 1px solid rgba(255,255,255,.10);
        padding: 0;
    }

    .ranking-mobile-details summary {
        min-height: 58px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0 20px;
        color: #ffd56d;
        font-weight: 1000;
        text-transform: uppercase;
        letter-spacing: .10em;
        cursor: pointer;
        list-style: none;
    }

    .ranking-mobile-details summary::-webkit-details-marker {
        display: none;
    }

    .ranking-mobile-details summary::after {
        content: "+";
        width: 34px;
        height: 34px;
        display: grid;
        place-items: center;
        border-radius: 999px;
        background: rgba(234,176,50,.12);
        border: 1px solid rgba(234,176,50,.28);
        font-size: 22px;
    }

    .ranking-mobile-details[open] summary::after {
        content: "–";
    }

    .ranking-mobile-stats {
        display: grid;
        grid-template-columns: repeat(2, minmax(0,1fr));
        gap: 10px;
        padding: 0 20px 20px;
    }

    .ranking-mobile-stats article {
        padding: 14px;
        border-radius: 18px;
        border: 1px solid rgba(255,255,255,.10);
        background: rgba(0,0,0,.22);
    }

    .ranking-mobile-stats span {
        display: block;
        color: #aaa;
        font-size: 11px;
        font-weight: 1000;
        letter-spacing: .12em;
        text-transform: uppercase;
    }

    .ranking-mobile-stats strong {
        display: block;
        margin-top: 6px;
        color: #fff;
        font-size: 20px;
    }

    .ranking-mobile-matches {
        display: grid;
        gap: 8px;
        padding: 0 20px 22px;
    }

    .ranking-mobile-matches > strong {
        color: #ffd56d;
        text-transform: uppercase;
        letter-spacing: .10em;
        font-size: 12px;
    }

    .ranking-mobile-matches div {
        padding: 12px;
        border-radius: 16px;
        background: rgba(255,255,255,.05);
    }

    .ranking-mobile-matches span,
    .ranking-mobile-matches em {
        display: block;
        color: #ddd;
        font-style: normal;
        line-height: 1.35;
    }

    .ranking-mobile-matches em {
        color: #aaa;
        margin-top: 4px;
    }
}

/* Phase 73 - News-Detail Felder gleiche Breite */
.page-news-detail-premium .news-article-content-premium,
.page-news-detail-premium .news-share-premium {
    width: 100% !important;
    max-width: none !important;
}


/* CTLG Phase 76 - PWA Rangliste kompakter + Legende als Accordion */
.ranking-explain-accordion {
    display: block;
    padding: 0;
}
.ranking-explain-accordion > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 92px;
    padding: 24px 28px;
    cursor: pointer;
    list-style: none;
}
.ranking-explain-accordion > summary::-webkit-details-marker { display: none; }
.ranking-explain-accordion > summary strong {
    display: block;
    color: #fff;
    font-size: clamp(24px, 2vw, 36px);
    text-transform: uppercase;
    letter-spacing: -.02em;
}
.ranking-explain-accordion > summary i {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 999px;
    border: 1px solid rgba(234,176,50,.35);
    background: rgba(234,176,50,.10);
    color: #ffd56d;
    transition: transform .2s ease;
}
.ranking-explain-accordion[open] > summary i { transform: rotate(180deg); }
.ranking-explain-inner {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(320px, .75fr);
    gap: 22px;
    padding: 0 28px 28px;
}
.ranking-explain-inner h2 { margin-top: 0; }
@media (max-width: 900px) {
    .page-rankings .portal-main { overflow-x: hidden; }
    .ranking-explain-accordion:not([open]) { margin-bottom: 18px; }
    .ranking-explain-accordion > summary {
        min-height: 70px;
        padding: 18px;
        border-radius: 24px;
    }
    .ranking-explain-accordion > summary strong {
        font-size: 22px;
    }
    .ranking-explain-inner {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 0 18px 18px;
    }
    .ranking-explain-inner h2 {
        font-size: 24px;
        line-height: 1.08;
    }
    .ranking-explain-inner p {
        font-size: 15px;
        line-height: 1.5;
    }
    .ranking-legend-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }
    .ranking-legend-grid article {
        min-height: 74px !important;
        padding: 13px 14px !important;
        border-radius: 18px !important;
        display: grid !important;
        grid-template-columns: 54px minmax(0,1fr) !important;
        align-items: center !important;
        gap: 10px !important;
    }
    .ranking-legend-grid strong {
        font-size: 30px !important;
        line-height: 1 !important;
    }
    .ranking-legend-grid span {
        font-size: 11px !important;
        line-height: 1.2 !important;
    }
    .ranking-tiebreaker-box {
        padding: 15px 16px !important;
        border-radius: 18px !important;
    }
    .ranking-tiebreaker-box span {
        font-size: 15px !important;
        line-height: 1.45 !important;
    }
    .ranking-mobile-list { gap: 12px !important; }
    .ranking-mobile-card { border-radius: 22px !important; }
    .ranking-mobile-card__top {
        grid-template-columns: auto minmax(0,1fr) !important;
        padding: 14px 16px !important;
        gap: 10px !important;
    }
    .ranking-mobile-place strong {
        font-size: 38px !important;
        margin-top: 2px !important;
    }
    .ranking-mobile-place i { font-size: 24px !important; }
    .ranking-mobile-team {
        grid-template-columns: 58px minmax(0,1fr) !important;
        gap: 12px !important;
        padding: 15px 16px !important;
    }
    .ranking-mobile-team img,
    .ranking-mobile-team .ranking-team-placeholder {
        width: 58px !important;
        height: 58px !important;
        border-radius: 18px !important;
        font-size: 22px !important;
    }
    .ranking-mobile-team strong { font-size: 25px !important; }
    .ranking-mobile-team small { font-size: 14px !important; }
    .ranking-mobile-details summary { min-height: 48px !important; font-size: 12px !important; }
    .ranking-mobile-stats { grid-template-columns: repeat(2,minmax(0,1fr)) !important; padding: 0 16px 16px !important; }
    .ranking-mobile-stats article { padding: 11px !important; }
    .ranking-mobile-stats strong { font-size: 17px !important; }
}
