/* 电竞王座总览视觉候选：仅首页加载，不改城市页、根首页及共用框架。 */
body.league-throne-home .league-page {
    --league-ink: #34383d;
    --league-muted: #747a81;
    --league-line: #d0d4d9;
    --league-accent: #d60022;
    --league-accent-strong: #a9001b;
    --league-page-bg: #f1f3f5;
    /* 素材和焦点集中于此，后续精修可直接替换独立版本资源。 */
    --throne-home-hero-image: url('../images/league/throne-hero-v1.webp');
    --throne-home-hero-position: center 20%;
    color: var(--league-ink);
    background: var(--league-page-bg);
}

body.league-throne-home .throne-home-hero {
    isolation: isolate;
    min-height: clamp(420px, 25vw, 620px);
    padding: 24px 0 64px;
    border: 0;
    background: var(--league-page-bg);
}

body.league-throne-home .throne-home-hero::before,
body.league-throne-home .throne-home-hero::after {
    inset: 0;
    width: auto;
    height: auto;
    border: 0;
    border-radius: 0;
    opacity: 1;
    box-shadow: none;
    mask-image: none;
    pointer-events: none;
}

body.league-throne-home .throne-home-hero::before {
    z-index: -2;
    background-image: var(--throne-home-hero-image);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: var(--throne-home-hero-position);
}

body.league-throne-home .throne-home-hero::after {
    z-index: -1;
    background:
        linear-gradient(to top, #f1f3f5 0, rgba(241, 243, 245, 0) 24%),
        linear-gradient(90deg, rgba(241, 243, 245, .97), rgba(241, 243, 245, .88) 28%, rgba(241, 243, 245, .32) 48%, rgba(241, 243, 245, 0) 66%);
}

body.league-throne-home .throne-home-hero > .inner {
    position: relative;
    z-index: 1;
}

body.league-throne-home .throne-home-hero .crumb {
    margin-bottom: 24px;
}

body.league-throne-home .throne-home-hero__layout {
    min-height: calc(clamp(420px, 25vw, 620px) - 128px);
    align-content: center;
    gap: 0;
}

body.league-throne-home .throne-home-hero__copy {
    width: min(49%, 560px);
    min-width: 0;
    max-width: none;
}

body.league-throne-home .throne-home-hero .hero-title {
    margin: 12px 0 18px;
    padding-left: 15px;
    border-left-width: 5px;
    color: #181a1d;
    font-size: clamp(28px, 3.4vw, 44px);
    line-height: 1.2;
    letter-spacing: -.025em;
    overflow-wrap: break-word;
}

body.league-throne-home .throne-home-hero .hero-subtitle {
    max-width: 34em;
    color: #34383d;
    font-size: 17px;
    line-height: 1.75;
    text-wrap: pretty;
}

body.league-throne-home .throne-home-primary {
    min-height: 44px;
    margin-top: 24px;
    padding: 11px 20px;
    font-size: 15px;
    white-space: normal;
    text-align: center;
    line-height: 1.4;
}

/* 阅读区独立限宽，取消旧版向上重叠与深色底；不改变内容和区块次序。 */
body.league-throne-home .content {
    padding: 4px 0 24px;
}

body.league-throne-home .content > .inner {
    margin-top: 0;
}

@media (max-width: 900px) {
    body.league-throne-home .throne-home-hero {
        min-height: 0;
        padding: 20px 0 280px;
    }
    body.league-throne-home .throne-home-hero__layout {
        min-height: 0;
        padding: 8px 0 16px;
    }
    body.league-throne-home .throne-home-hero__copy {
        width: 100%;
        max-width: 620px;
    }
    body.league-throne-home .throne-home-hero::before,
    body.league-throne-home .throne-home-hero::after {
        top: auto;
        height: 280px;
    }
    body.league-throne-home .throne-home-hero::before {
        background-position: 72% center;
    }
    body.league-throne-home .throne-home-hero::after {
        background:
            linear-gradient(to bottom, #f1f3f5 0, rgba(241, 243, 245, 0) 28%),
            linear-gradient(to top, #f1f3f5 0, rgba(241, 243, 245, 0) 22%);
    }
}

@media (max-width: 600px) {
    body.league-throne-home .league-page .inner {
        width: calc(100% - 28px);
    }
    body.league-throne-home .throne-home-hero {
        padding: 14px 0 220px;
    }
    body.league-throne-home .throne-home-hero .crumb {
        margin-bottom: 12px;
    }
    body.league-throne-home .throne-home-hero .hero-title {
        font-size: 34px;
    }
    body.league-throne-home .throne-home-hero .hero-subtitle {
        font-size: 16px;
        line-height: 1.7;
    }
    body.league-throne-home .throne-home-hero::before,
    body.league-throne-home .throne-home-hero::after {
        height: 220px;
    }
    body.league-throne-home .content {
        padding-top: 16px;
    }
}

/* 赛道、路线和行动各只有一层；不借用个人成长面板样式。 */
body.league-throne-home .league-track { color:var(--league-ink); font-size:16px; line-height:1.65; }
body.league-throne-home .league-track h2 { margin:0 0 18px; padding:0; border:0; font-size:24px; line-height:1.35; color:#30343a; }
body.league-throne-home .league-track h3 { margin:0 0 8px; padding:0; border:0; font-size:20px; line-height:1.4; color:#30343a; }
body.league-throne-home .league-track p { margin:0 0 12px; }
body.league-throne-home .league-track a { color:#34383d; text-decoration:underline; text-underline-offset:4px; }
body.league-throne-home .league-track a:focus-visible, body.league-throne-home .league-track select:focus-visible, body.league-throne-home .league-track summary:focus-visible { outline:2px solid #d60022; outline-offset:4px; }
body.league-throne-home .league-track__selector { margin:0 0 32px; }
body.league-throne-home .league-track__selector h2 { font-size:18px; margin-bottom:12px; }
body.league-throne-home .league-track__selector form { display:flex; flex-wrap:wrap; align-items:end; gap:12px 16px; margin:0; }
body.league-throne-home .league-track__selector label { display:block; min-width:0; max-width:100%; flex:0 1 240px; margin:0; color:#747a81; font-size:14px; font-weight:normal; }
body.league-throne-home .league-track__selector label span { display:block; margin-bottom:4px; }
body.league-throne-home .league-track__selector select { height:44px; max-width:100%; min-width:0; margin:0; border:1px solid #d0d4d9; border-radius:6px; color:#34383d; background-color:#fff; font-size:16px; text-overflow:ellipsis; }
body.league-throne-home .league-track__mode { align-self:center; padding-top:24px; font-size:14px; color:#747a81; overflow-wrap:anywhere; }
body.league-throne-home .league-track__apply { min-height:44px; padding:0 16px; color:#34383d; box-shadow:inset 0 0 0 1px #d0d4d9; }
body.league-throne-home .league-track--enhanced .league-track__apply { display:none; }
body.league-throne-home .league-track__road { margin-bottom:28px; }
body.league-throne-home .league-track__stations { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; list-style:none; margin:0; padding:36px 0 0; }
body.league-throne-home .league-track__station { position:relative; min-width:0; padding:24px 22px 18px; border:1px solid #d0d4d9; border-radius:10px; background:#fff; display:flex; flex-direction:column; align-items:start; gap:5px; }
body.league-throne-home .league-track__station:nth-child(2) { transform:translateY(-16px); }
body.league-throne-home .league-track__station:nth-child(3) { transform:translateY(-32px); }
body.league-throne-home .league-track__station:not(:last-child)::after { content:""; position:absolute; width:25px; height:1px; background:#aeb4bb; right:-25px; top:42%; transform:rotate(-25deg); pointer-events:none; }
body.league-throne-home .league-track__marker { color:#747a81; font-size:14px; font-variant-numeric:tabular-nums; letter-spacing:.1em; }
body.league-throne-home .league-track__station p { color:#747a81; font-size:15px; margin:0 0 5px; }
body.league-throne-home .league-track__state { font-weight:600; }
body.league-throne-home .league-track small { font-size:14px; color:#747a81; line-height:1.6; overflow-wrap:anywhere; }
body.league-throne-home .league-track__station a { margin-top:auto; min-height:44px; display:inline-flex; align-items:center; padding-top:8px; font-size:15px; }
body.league-throne-home .league-track__station--action { border-top:3px solid #d60022; padding-top:22px; }
body.league-throne-home .league-track__station--action .league-track__state { color:#b2001d; }
body.league-throne-home .league-track__challenge { display:grid; grid-template-columns:1.2fr 1fr; gap:20px 40px; align-items:center; background:#fff; padding:26px 28px; border-radius:10px; margin-bottom:22px; border-top:2px solid #d0d4d9; }
body.league-throne-home .league-track__challenge h2 { font-size:18px; color:#747a81; margin-bottom:10px; }
body.league-throne-home .league-track__challenge h3 { font-size:24px; }
body.league-throne-home .league-track__challenge p { margin-bottom:8px; }
body.league-throne-home .league-track__action { min-width:0; display:flex; flex-wrap:wrap; align-items:center; gap:8px 16px; }
body.league-throne-home .league-track__action p, body.league-throne-home .league-track__action small { flex-basis:100%; }
body.league-throne-home .league-track__event-name { overflow-wrap:anywhere; }
body.league-throne-home .league-track a.league-track__primary { display:inline-flex; min-height:44px; align-items:center; justify-content:center; padding:9px 20px; border-radius:6px; background:#d60022; color:#fff; font-weight:600; text-decoration:none; }
body.league-throne-home .league-track a.league-track__primary:hover { background:#a9001b; }
body.league-throne-home .league-track__secondary { display:inline-flex; align-items:center; min-height:44px; font-size:14px; }
body.league-throne-home .league-track__rules { border-top:1px solid #d0d4d9; padding:0 0 8px; margin:0; }
body.league-throne-home .league-track__rules summary { padding:14px 0; min-height:44px; font-weight:600; cursor:pointer; }
body.league-throne-home .league-track__rules section { padding:16px 0 4px; max-width:780px; scroll-margin-top:80px; }
body.league-throne-home .league-track__rules h3 { font-size:18px; }
body.league-throne-home .league-track__error { margin-top:16px; color:#a9001b; }
@media(max-width:900px) {
 body.league-throne-home .league-track__stations { gap:14px; }
 body.league-throne-home .league-track__station { padding-left:16px; padding-right:16px; }
 body.league-throne-home .league-track__station:not(:last-child)::after { width:15px; right:-15px; }
 body.league-throne-home .league-track__challenge { grid-template-columns:1fr; }
}
@media(max-width:600px) {
 body.league-throne-home .league-track__selector form { gap:10px; }
 body.league-throne-home .league-track__selector label { flex:1 1 120px; }
 body.league-throne-home .league-track__selector label:first-of-type { flex-basis:100%; }
 body.league-throne-home .league-track__selector { margin-bottom:24px; }
 body.league-throne-home .league-track__mode { padding-top:0; }
 body.league-throne-home .league-track__stations { grid-template-columns:1fr; padding:0 0 0 12px; gap:14px; }
 body.league-throne-home .league-track__station { padding:16px 18px; }
 body.league-throne-home .league-track__station:nth-child(n) { transform:none; }
 body.league-throne-home .league-track__station .league-track__marker { position:absolute; left:-13px; top:16px; background:#f1f3f5; padding:3px 0; }
 body.league-throne-home .league-track__station:not(:last-child)::after { top:100%; left:-1px; width:1px; height:15px; transform:none; }
 body.league-throne-home .league-track__station a { padding-top:0; min-height:44px; }
 body.league-throne-home .league-track__station--action { padding-top:14px; }
 body.league-throne-home .league-track__station h3 { font-size:20px; }
 body.league-throne-home .league-track__station p { margin-bottom:0; }
 body.league-throne-home .league-track__challenge { padding:20px 18px; gap:12px; }
 body.league-throne-home .league-track h2 { font-size:22px; }
 body.league-throne-home .league-track__selector h2, body.league-throne-home .league-track__challenge h2 { font-size:18px; }
}

@media(max-width:600px) {
 body.league-throne-home .league-track__station { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:4px 10px; }
 body.league-throne-home .league-track__station h3, body.league-throne-home .league-track__station p { grid-column:1 / -1; }
 body.league-throne-home .league-track__station .league-track__state, body.league-throne-home .league-track__station small { grid-column:1; }
 body.league-throne-home .league-track__station a { grid-column:2; grid-row:3 / span 2; align-self:center; margin:0; max-width:8em; }
}

/* 共用框架原有 320px 最小宽度，仅此公开总览允许极窄视口自然换行。 */
@media(max-width:319px) {
 html.league-public-home, html.league-public-home body.league-throne-home { min-width:0; }
}
