/* ============================================================
   2026 瘋足球季 — 世足活動區塊樣式 v2「轉播之夜」 — 2026-06-11
   Art direction：深夜球場電視轉播 OS 美學 — 記分板數字（簽名時刻）、
   聚光燈光束、草地中圈線 motif、顆粒質感；金色只給焦點。
   雙主題：.wc-theme-a 品牌主場（亮）/ .wc-theme-b 凌晨開踢（暗，站長選定）
   動效原則：只動 transform/opacity；expo-out；prefers-reduced-motion 全關
   （站長對暈眩敏感：視差僅 ±3.5% 且 @supports + no-preference 雙重把關）。
   只在活動期間由 home/_worldcup.blade.php @push 載入。
   ============================================================ */

/* ── 主題與共用 tokens ── */
.wc-theme-a {
    --wc-bg: #f6f5fc;
    --wc-card: #ffffff;
    --wc-ink: #2c2752;
    --wc-ink-soft: #5b5680;
    --wc-line: rgba(102, 126, 234, 0.18);
    --wc-accent: #667eea;
    --wc-accent2: #764ba2;
    --wc-grad: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    --wc-gold: #ffd700;
    --wc-gold-ink: #8a6d00;
    --wc-billboard-overlay: linear-gradient(100deg, rgba(44, 30, 80, 0.78) 0%, rgba(60, 40, 110, 0.42) 46%, rgba(20, 14, 40, 0.08) 100%);
    --wc-card-shadow: 0 10px 30px rgba(70, 60, 140, 0.10);
    --wc-hairline: rgba(44, 39, 82, 0.08);
}
.wc-theme-b {
    --wc-bg: #110d28;
    --wc-card: #1c1640;
    --wc-ink: #f1eeff;
    --wc-ink-soft: #b9b2dd;
    --wc-line: rgba(255, 215, 0, 0.14);
    --wc-accent: #8b9bf4;
    --wc-accent2: #a06cd5;
    --wc-grad: linear-gradient(135deg, #2c2752 0%, #4a2d7a 100%);
    --wc-gold: #ffd700;
    --wc-gold-ink: #ffd700;
    --wc-billboard-overlay: linear-gradient(100deg, rgba(10, 7, 26, 0.88) 0%, rgba(14, 10, 34, 0.55) 46%, rgba(8, 6, 20, 0.16) 100%);
    --wc-card-shadow: 0 12px 34px rgba(0, 0, 0, 0.45);
    --wc-hairline: rgba(255, 255, 255, 0.07);
}
.wc-season, .wc-ribbon {
    --wc-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

/* ── box-sizing 自含宣告：width:100% + padding 不得溢出視窗
      （修「窄視窗右側框被 overflow:hidden 裁掉」bug；
        不依賴主站全域 reset，元件自保） ── */
.wc-season,
.wc-season *,
.wc-season *::before,
.wc-season *::after,
.wc-ribbon,
.wc-ribbon *,
.wc-ribbon *::before,
.wc-ribbon *::after {
    box-sizing: border-box;
}

/* ── a11y：focus-visible（金色 ring，絕不裸 outline:none）── */
.wc-ribbon:focus-visible,
.wc-season a:focus-visible {
    outline: 2px solid var(--wc-gold);
    outline-offset: 3px;
    border-radius: 4px;
}

/* ════════ 頂部 ribbon（_hero 之前）════════ */
.wc-ribbon {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
    min-height: 44px; /* 觸控目標 */
    padding: 8px 16px;
    background: var(--wc-grad);
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    line-height: 1.4;
    position: relative;
    overflow: hidden;
    z-index: 5;
    transition: filter 0.25s ease;
}
.wc-ribbon:hover { filter: brightness(1.12); color: #fff; text-decoration: none; }
/* 金光掃過（每 7 秒一次的 ambient 微光） */
.wc-ribbon::after {
    content: '';
    position: absolute;
    top: 0; bottom: 0;
    width: 60px;
    left: -80px;
    background: linear-gradient(100deg, transparent, rgba(255, 255, 255, 0.22), transparent);
    transform: skewX(-14deg);
    animation: wcShimmer 7s ease-in-out infinite;
    pointer-events: none;
}
@keyframes wcShimmer {
    0%, 74%  { left: -80px; }
    90%, 100% { left: calc(100% + 40px); }
}
.wc-ribbon__ball {
    display: inline-block;
    animation: wcBallBounce 2.4s ease-in-out infinite;
}
@keyframes wcBallBounce {
    0%, 100% { transform: translateY(0); }
    50%      { transform: translateY(-3px) rotate(18deg); }
}
.wc-ribbon__title { font-weight: 800; letter-spacing: 0.04em; }
.wc-ribbon__dates {
    font-weight: 600;
    padding: 1px 9px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.16);
}
.wc-ribbon__countdown {
    font-variant-numeric: tabular-nums;
    font-weight: 700;
    color: var(--wc-gold);
}
.wc-ribbon__cta { font-weight: 700; color: var(--wc-gold); white-space: nowrap; }

/* ════════ 主區塊 ════════ */
.wc-season {
    background: var(--wc-bg);
    color: var(--wc-ink);
    overflow: hidden;
}
/* section 標題：開球點 motif（金點＋光暈）＋置中 */
.wc-season .wc-section-title {
    margin: 0 0 6px;
    font-size: clamp(22px, 3vw, 30px);
    font-weight: 800;
    color: var(--wc-ink);
    text-align: center;
}
.wc-season .wc-section-title::before {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    margin: 0 auto 14px;
    border-radius: 50%;
    background: var(--wc-gold);
    box-shadow: 0 0 0 5px rgba(255, 215, 0, 0.12), 0 0 18px rgba(255, 215, 0, 0.45);
}
.wc-season .wc-section-sub {
    margin: 0 0 28px;
    text-align: center;
    color: var(--wc-ink-soft);
    font-size: 15px;
}

/* ── 1. Billboard ── */
.wc-billboard {
    position: relative;
    /* 桌機隨視窗加高，給足球+草地完整入鏡空間 */
    min-height: clamp(520px, 44vw, 640px);
    display: flex;
    align-items: center;
    isolation: isolate;
    overflow: hidden;
}
.wc-billboard__bg,
.wc-billboard__bg img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* 足球位於原圖 ~68% 高度：裁切窗下偏，確保整顆球+草地可見（天空讓位） */
    object-position: 50% 74%;
    z-index: -3;
}
.wc-billboard__overlay {
    position: absolute;
    inset: 0;
    background: var(--wc-billboard-overlay);
    z-index: -2;
}
/* 聚光燈光束（雙向交叉，screen 疊色） */
.wc-billboard__beams {
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        linear-gradient(115deg, transparent 28%, rgba(255, 236, 170, 0.13) 42%, transparent 56%),
        linear-gradient(245deg, transparent 30%, rgba(170, 195, 255, 0.09) 46%, transparent 60%);
    mix-blend-mode: screen;
    pointer-events: none;
}
/* 顆粒質感（SVG 噪點，反 AI 平面感） */
.wc-billboard__grain {
    position: absolute;
    inset: 0;
    z-index: 0;
    opacity: 0.06;
    pointer-events: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.wc-billboard__content {
    position: relative;
    z-index: 1;
    width: min(1200px, 100%);
    margin: 0 auto;
    padding: 64px 24px 56px;
    color: #fff;
}
.wc-kicker {
    display: inline-block;
    padding: 4px 14px;
    border: 1px solid rgba(255, 215, 0, 0.55);
    border-radius: 999px;
    color: var(--wc-gold);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.14em;
    margin-bottom: 10px;
}

/* Kinetic 標題：超大金描邊年份（斜切、墊底層）× 粗白主題字 */
.wc-title {
    position: relative;
    margin: 0 0 10px;
    line-height: 1;
}
.wc-title__year {
    position: absolute;
    z-index: 0;
    left: -0.04em;
    bottom: 0.32em;
    font-size: clamp(76px, 12vw, 150px);
    font-weight: 900;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.01em;
    transform: skewX(-6deg);
    color: transparent;
    -webkit-text-stroke: 2px rgba(255, 215, 0, 0.78);
    opacity: 0.85;
    pointer-events: none;
    user-select: none;
}
@supports not (-webkit-text-stroke: 2px gold) {
    .wc-title__year { color: rgba(255, 215, 0, 0.28); }
}
.wc-title__main {
    position: relative;
    z-index: 1;
    display: inline-block;
    padding-top: clamp(48px, 7.6vw, 96px);
    font-size: clamp(40px, 5.8vw, 64px);
    font-weight: 900;
    letter-spacing: 0.02em;
    color: #fff;
    text-shadow: 0 2px 26px rgba(0, 0, 0, 0.45);
}
.wc-title__main .wc-char { display: inline-block; }

.wc-subtitle {
    margin: 0 0 12px;
    font-size: clamp(15px, 2vw, 19px);
    color: rgba(255, 255, 255, 0.92);
    max-width: 560px;
}
.wc-period {
    display: inline-block;
    font-size: 13px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.85);
    padding: 3px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
    margin-bottom: 22px;
}

/* 記分板倒數（簽名時刻）：斜切數字、金色光暈、秒位跳動 */
.wc-countdown {
    max-width: 480px;
    padding: 18px 22px;
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(16, 12, 38, 0.74), rgba(10, 8, 26, 0.58));
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border: 1px solid rgba(255, 215, 0, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 10px 30px rgba(0, 0, 0, 0.35);
    margin-bottom: 22px;
}
.wc-countdown__head {
    display: flex;
    align-items: baseline;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 10px;
}
.wc-countdown__label {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: var(--wc-gold);
}
.wc-countdown__match { font-size: 18px; font-weight: 800; color: #fff; }
.wc-countdown__digits { display: flex; gap: 10px; margin-bottom: 8px; }
.wc-digit {
    flex: 1;
    text-align: center;
    background: rgba(255, 255, 255, 0.08);
    border-radius: 10px;
    padding: 8px 4px 6px;
}
.wc-digit b {
    display: block;
    font-size: clamp(22px, 3.4vw, 32px);
    font-weight: 900;
    font-variant-numeric: tabular-nums;
    line-height: 1.1;
    color: var(--wc-gold);
    transform: skewX(-5deg);
    text-shadow: 0 0 16px rgba(255, 215, 0, 0.4);
}
.wc-digit i {
    font-style: normal;
    font-size: 11px;
    color: rgba(255, 255, 255, 0.75);
}
/* 數字變化的記分板跳動 */
.wc-digit.wc-tick b { animation: wcTick 0.28s var(--wc-ease); }
@keyframes wcTick {
    0%   { transform: skewX(-5deg) translateY(0); }
    35%  { transform: skewX(-5deg) translateY(-5px); opacity: 0.55; }
    100% { transform: skewX(-5deg) translateY(0); }
}
.wc-countdown__kickoff { font-size: 13px; color: rgba(255, 255, 255, 0.85); }
/* 比賽進行中：LIVE 紅點脈動 */
.wc-live .wc-countdown__kickoff { color: #ff8d80; font-weight: 800; }
.wc-live .wc-countdown__kickoff::before {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-right: 7px;
    border-radius: 50%;
    background: #ff5a4a;
    box-shadow: 0 0 0 0 rgba(255, 90, 74, 0.5);
    animation: wcPulse 1.6s ease-in-out infinite;
    vertical-align: 1px;
}
@keyframes wcPulse { 50% { box-shadow: 0 0 0 7px rgba(255, 90, 74, 0); } }
.wc-countdown-fallback {
    max-width: 480px;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.85);
    margin: 0 0 22px;
}
.wc-countdown-fallback[hidden] { display: none; }

/* CTA 按鈕（44px+ 觸控、tactile press） */
.wc-ctas { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.wc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 11px 26px;
    border-radius: 999px;
    font-size: 15px;
    font-weight: 800;
    text-decoration: none;
    transition: transform 0.18s var(--wc-ease), box-shadow 0.18s ease, filter 0.18s ease, background 0.18s ease;
    will-change: transform;
}
.wc-btn--gold {
    background: linear-gradient(135deg, #ffd700 0%, #ffb300 100%);
    color: #3a2c00;
    box-shadow: 0 6px 20px rgba(255, 196, 0, 0.35);
}
.wc-btn--gold:hover { transform: translateY(-2px); box-shadow: 0 10px 26px rgba(255, 196, 0, 0.5); color: #3a2c00; text-decoration: none; }
.wc-btn--gold:active { transform: translateY(0) scale(0.98); }
.wc-btn--ghost {
    border: 1.5px solid rgba(255, 255, 255, 0.65);
    color: #fff;
    background: rgba(255, 255, 255, 0.06);
}
.wc-btn--ghost:hover { transform: translateY(-2px); background: rgba(255, 255, 255, 0.16); color: #fff; text-decoration: none; }
.wc-btn--ghost:active { transform: translateY(0) scale(0.98); }
.wc-teaser { display: inline-block; font-size: 13px; color: rgba(255, 255, 255, 0.8); }

/* ── billboard 雙欄＋主題曲 MV（點播 facade：點擊前零第三方請求）── */
.wc-billboard__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 460px);
    gap: 36px;
    align-items: center;
}
.wc-billboard__video { position: relative; }
.wc-video {
    display: block;
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    padding: 0;
    border: 1px solid rgba(255, 215, 0, 0.35);
    border-radius: 16px;
    overflow: hidden;
    cursor: pointer;
    background: #000;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.45);
    transition: transform 0.24s var(--wc-ease), box-shadow 0.24s ease;
}
.wc-video:hover { transform: translateY(-3px); box-shadow: 0 24px 54px rgba(0, 0, 0, 0.6); }
.wc-video:focus-visible { outline: 2px solid var(--wc-gold); outline-offset: 3px; }
.wc-video img { width: 100%; height: 100%; object-fit: cover; display: block; opacity: 0.92; }
.wc-video__play {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 74px;
    height: 74px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ffd700, #ffb300);
    box-shadow: 0 8px 28px rgba(255, 196, 0, 0.5);
}
.wc-video__play::after {
    content: '';
    position: absolute;
    left: 53%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-style: solid;
    border-width: 13px 0 13px 22px;
    border-color: transparent transparent transparent #2b2100;
}
.wc-video:hover .wc-video__play { animation: wcPlayPulse 1.4s ease-in-out infinite; }
@keyframes wcPlayPulse {
    50% { box-shadow: 0 8px 28px rgba(255, 196, 0, 0.5), 0 0 0 12px rgba(255, 215, 0, 0.12); }
}
.wc-video__label {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    margin-top: 10px;
    font-size: 13px;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.85);
}
.wc-billboard__video iframe {
    width: 100%;
    aspect-ratio: 16 / 9;
    border: 0;
    border-radius: 16px;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.45);
    display: block;
}

/* ── 2. 賽程（草地中圈線 motif 開場）── */
.wc-fixtures {
    position: relative;
    width: min(1200px, 100%);
    margin: 0 auto;
    padding: 56px 24px 8px;
}
.wc-pitchline {
    position: absolute;
    top: 0;
    left: 24px;
    right: 24px;
    border-top: 1px solid var(--wc-hairline);
    pointer-events: none;
}
.wc-pitchline::before {
    content: '';
    position: absolute;
    left: 50%;
    top: -110px;
    width: 220px;
    height: 220px;
    transform: translateX(-50%);
    border: 1px solid var(--wc-hairline);
    border-radius: 50%;
}
.wc-pitchline::after {
    content: '';
    position: absolute;
    left: 50%;
    top: -4px;
    width: 8px;
    height: 8px;
    transform: translateX(-50%);
    border-radius: 50%;
    background: var(--wc-hairline);
}
.wc-fixtures__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
    gap: 18px;
    margin-bottom: 30px;
}
.wc-team-card {
    position: relative;
    overflow: hidden;
    background: var(--wc-card);
    border: 1px solid var(--wc-line);
    border-radius: 16px;
    padding: 20px 22px;
    box-shadow: var(--wc-card-shadow);
    transition: transform 0.24s var(--wc-ease), border-color 0.24s ease;
}
.wc-team-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    right: 100%;
    height: 2px;
    background: linear-gradient(90deg, var(--wc-gold), transparent);
    transition: right 0.45s var(--wc-ease);
}
.wc-team-card:hover { transform: translateY(-3px); border-color: rgba(255, 215, 0, 0.35); }
.wc-team-card:hover::before { right: 0; }
.wc-team-card__name { margin: 0 0 12px; font-size: 18px; font-weight: 800; color: var(--wc-ink); }
.wc-team-card__list { list-style: none; margin: 0; padding: 0; }
.wc-team-card__list li {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    padding: 10px 0;
    border-top: 1px dashed var(--wc-line);
    font-size: 15px;
    font-variant-numeric: tabular-nums;
    color: var(--wc-ink);
}
.wc-team-card__list li:first-child { border-top: 0; }
.wc-badge {
    font-size: 11px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 999px;
    white-space: nowrap;
}
.wc-badge--morning { background: rgba(255, 196, 0, 0.16); color: var(--wc-gold-ink); }
.wc-badge--midnight { background: rgba(102, 126, 234, 0.16); color: var(--wc-accent); }
.wc-theme-b .wc-badge--midnight { color: #aab8ff; }

/* 階段時間軸（虛線串接、冠軍戰金框光暈） */
.wc-stages { margin-bottom: 18px; }
.wc-stages__title {
    margin: 0 0 14px;
    font-size: 16px;
    font-weight: 800;
    color: var(--wc-ink);
    text-align: center;
}
.wc-stages__track {
    list-style: none;
    margin: 0;
    padding: 6px 2px 12px;
    display: flex;
    gap: 10px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    position: relative;
}
.wc-stages__track::before {
    content: '';
    position: absolute;
    left: 4%;
    right: 4%;
    top: 50%;
    border-top: 1px dashed var(--wc-hairline);
}
.wc-stage {
    position: relative;
    flex: 1 0 130px;
    text-align: center;
    background: var(--wc-card);
    border: 1px solid var(--wc-line);
    border-radius: 12px;
    padding: 12px 8px;
}
.wc-stage b { display: block; font-size: 14px; font-weight: 800; color: var(--wc-ink); margin-bottom: 3px; }
.wc-stage span { font-size: 12.5px; color: var(--wc-ink-soft); font-variant-numeric: tabular-nums; }
.wc-stage--final {
    border-color: rgba(255, 196, 0, 0.6);
    background: linear-gradient(160deg, rgba(255, 215, 0, 0.10), var(--wc-card) 65%);
    box-shadow: 0 0 22px rgba(255, 215, 0, 0.12);
}
.wc-stage--final b { color: var(--wc-gold-ink); }
.wc-broadcast {
    text-align: center;
    font-size: 12.5px;
    color: var(--wc-ink-soft);
    margin: 0 0 8px;
}

/* ── 3. 裝備專區 ── */
.wc-gear { width: min(1200px, 100%); margin: 0 auto; padding: 44px 24px 16px; }
.wc-gear__grid {
    display: grid;
    /* 明確斷點：桌機 3×2、平板 2×3、手機 1×6（6 卡永遠整齊） */
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
.wc-gear-card {
    position: relative;
    overflow: hidden;
    background: var(--wc-card);
    border: 1px solid var(--wc-line);
    border-radius: 16px;
    padding: 22px 20px 14px;
    box-shadow: var(--wc-card-shadow);
    display: flex;
    flex-direction: column;
    transition: transform 0.24s var(--wc-ease), box-shadow 0.24s ease, border-color 0.24s ease;
    will-change: transform;
}
.wc-gear-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    right: 100%;
    height: 2px;
    background: linear-gradient(90deg, var(--wc-gold), transparent);
    transition: right 0.45s var(--wc-ease);
}
.wc-gear-card:hover {
    transform: translateY(-4px);
    border-color: rgba(255, 196, 0, 0.5);
    box-shadow: 0 14px 34px rgba(70, 60, 140, 0.16);
}
.wc-theme-b .wc-gear-card:hover { box-shadow: 0 16px 38px rgba(0, 0, 0, 0.55); }
.wc-gear-card:hover::before { right: 0; }
.wc-gear-card__icon {
    font-size: 30px;
    line-height: 1;
    margin-bottom: 12px;
    display: inline-block;
    transition: transform 0.24s var(--wc-ease);
}
.wc-gear-card:hover .wc-gear-card__icon { transform: scale(1.16) rotate(-6deg); }
.wc-gear-card h4 { margin: 0 0 6px; font-size: 16px; font-weight: 800; color: var(--wc-ink); }
.wc-gear-card p { margin: 0 0 6px; font-size: 13.5px; line-height: 1.55; color: var(--wc-ink-soft); flex: 1; }
.wc-gear-card__cta {
    display: inline-flex;
    align-items: center;
    min-height: 44px; /* 觸控目標 */
    font-size: 14px;
    font-weight: 800;
    color: var(--wc-accent);
    text-decoration: none;
    transition: transform 0.18s var(--wc-ease), color 0.18s ease;
}
.wc-gear-card__cta:hover { transform: translateX(3px); color: var(--wc-accent2); text-decoration: none; }
.wc-theme-b .wc-gear-card__cta { color: var(--wc-gold); }
.wc-theme-b .wc-gear-card__cta:hover { color: #ffe98a; }

/* ── 4. 防雷卡（琥珀左肩線警示卡）── */
.wc-warning {
    width: min(1152px, calc(100% - 48px));
    margin: 0 auto 56px;
    display: flex;
    gap: 14px;
    align-items: flex-start;
    background: var(--wc-card);
    border: 1px solid rgba(255, 152, 0, 0.4);
    border-left: 4px solid #ff9800;
    border-radius: 14px;
    padding: 18px 22px;
    box-shadow: var(--wc-card-shadow);
}
.wc-warning__icon { font-size: 24px; line-height: 1.3; }
.wc-warning__body { flex: 1; }
.wc-warning__body h4 { margin: 0 0 6px; font-size: 16px; font-weight: 800; color: var(--wc-ink); }
.wc-warning__body p { margin: 0 0 6px; font-size: 14px; line-height: 1.6; color: var(--wc-ink-soft); }
.wc-warning__body a {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    font-size: 14px;
    font-weight: 800;
    color: #e8920a;
    text-decoration: none;
    transition: transform 0.18s var(--wc-ease);
}
.wc-warning__body a:hover { transform: translateX(3px); color: #c97a00; text-decoration: none; }

/* ── 追蹤球隊列 + 48 隊 chips modal ── */
.wc-follow-bar {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    flex-wrap: wrap;
    margin: -8px 0 22px;
}
.wc-follow-btn {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 9px 20px;
    border-radius: 999px;
    border: 1.5px solid rgba(255, 215, 0, 0.45);
    background: rgba(255, 215, 0, 0.08);
    color: var(--wc-gold-ink);
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
    transition: transform 0.18s var(--wc-ease), background 0.18s ease;
}
.wc-follow-btn:hover { transform: translateY(-2px); background: rgba(255, 215, 0, 0.16); }
.wc-follow-btn:focus-visible { outline: 2px solid var(--wc-gold); outline-offset: 3px; }
.wc-follow-hint { font-size: 13px; color: var(--wc-ink-soft); }
.wc-follow-more {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    font-size: 14px;
    font-weight: 800;
    color: var(--wc-accent);
    text-decoration: none;
    transition: transform 0.18s var(--wc-ease);
}
.wc-theme-b .wc-follow-more { color: var(--wc-gold); }
.wc-follow-more:hover { transform: translateX(3px); text-decoration: none; }
.wc-team-card__grp { font-size: 12px; font-weight: 700; color: var(--wc-ink-soft); margin-left: 6px; }
.wc-score { color: var(--wc-gold-ink); font-variant-numeric: tabular-nums; margin-left: 4px; }
.wc-ft { font-style: normal; font-size: 11px; color: var(--wc-ink-soft); margin-left: 4px; }

.wc-modal { position: fixed; inset: 0; z-index: 9999; }
.wc-modal[hidden] { display: none; }
.wc-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(8, 6, 20, 0.7);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
}
.wc-modal__panel {
    position: relative;
    width: min(720px, calc(100% - 32px));
    max-height: min(82vh, 760px);
    margin: 7vh auto 0;
    display: flex;
    flex-direction: column;
    background: var(--wc-card);
    color: var(--wc-ink);
    border: 1px solid var(--wc-line);
    border-radius: 18px;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.55);
    overflow: hidden;
}
.wc-modal__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 18px 22px 12px;
    border-bottom: 1px solid var(--wc-line);
}
.wc-modal__head h4 { margin: 0 0 4px; font-size: 18px; font-weight: 800; color: var(--wc-ink); }
.wc-modal__head p { margin: 0; font-size: 12.5px; color: var(--wc-ink-soft); }
.wc-modal__x {
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: var(--wc-ink-soft);
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
}
.wc-modal__x:hover { background: rgba(128, 128, 160, 0.12); color: var(--wc-ink); }
.wc-modal__groups { padding: 14px 22px; overflow-y: auto; }
.wc-modal__group { margin-bottom: 14px; }
.wc-modal__group > b {
    display: block;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    color: var(--wc-ink-soft);
    margin-bottom: 8px;
}
.wc-modal__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.wc-chip {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 7px 14px;
    border-radius: 999px;
    border: 1.5px solid var(--wc-line);
    background: transparent;
    color: var(--wc-ink);
    font-size: 13.5px;
    font-weight: 700;
    cursor: pointer;
    transition: border-color 0.16s ease, background 0.16s ease, transform 0.16s var(--wc-ease);
}
.wc-chip:hover { transform: translateY(-1px); border-color: rgba(255, 215, 0, 0.5); }
.wc-chip--on { border-color: var(--wc-gold); background: rgba(255, 215, 0, 0.14); color: var(--wc-gold-ink); }
.wc-chip:focus-visible { outline: 2px solid var(--wc-gold); outline-offset: 2px; }
.wc-modal__foot {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 22px 16px;
    border-top: 1px solid var(--wc-line);
}
.wc-modal__clear {
    border: 0;
    background: transparent;
    color: var(--wc-ink-soft);
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    min-height: 44px;
}
.wc-modal__clear:hover { color: var(--wc-ink); }

/* ── /worldcup 賽程賽果頁 ── */
.wc-page-hero { padding: 44px 24px 6px; text-align: center; }
.wc-page-hero .wc-countdown { margin: 18px auto 6px; text-align: left; }
.wc-page-hero .wc-countdown-fallback { margin: 0 auto 6px; }
.wc-schedule { width: min(1000px, 100%); margin: 0 auto; padding: 28px 24px 32px; }
.wc-schedule .wc-section-sub { margin-bottom: 14px; }
.wc-day-head {
    margin: 26px 0 10px;
    font-size: 15px;
    font-weight: 800;
    color: var(--wc-gold-ink);
    display: flex;
    align-items: center;
    gap: 10px;
}
.wc-day-head::after { content: ''; flex: 1; border-top: 1px dashed var(--wc-hairline); }
.wc-matchrow {
    display: grid;
    grid-template-columns: 165px 1fr auto;
    gap: 10px;
    align-items: center;
    padding: 9px 12px;
    border-radius: 10px;
    font-size: 14.5px;
}
.wc-theme-b .wc-matchrow:nth-child(even) { background: rgba(255, 255, 255, 0.04); }
.wc-matchrow__when { color: var(--wc-ink-soft); font-variant-numeric: tabular-nums; font-size: 13.5px; }
.wc-matchrow__teams { color: var(--wc-ink); font-weight: 600; }
.wc-matchrow__score { font-weight: 800; }
.wc-matchrow--ko .wc-matchrow__teams { color: var(--wc-ink-soft); font-weight: 500; }
.wc-score-slot { color: var(--wc-ink-soft); font-size: 12.5px; min-width: 52px; text-align: right; }
.wc-results-empty { text-align: center; color: var(--wc-ink-soft); padding: 26px 16px; font-size: 15px; }

/* ── P1 猜冠軍免費抽獎 ── */
.wc-teaser--link { text-decoration: none; transition: color 0.18s ease; }
.wc-teaser--link:hover { color: var(--wc-gold); text-decoration: none; }
.wc-predict { max-width: 880px; margin: 0 auto; }
.wc-predict__mine {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 14px;
    font-size: 15px;
    color: var(--wc-ink);
}
.wc-predict__mine strong { font-size: 17px; color: var(--wc-gold-ink); }
.wc-predict__tickets { font-size: 13px; color: var(--wc-ink-soft); }
.wc-predict__chips { justify-content: center; }
.wc-predict__msg {
    text-align: center;
    min-height: 22px;
    font-size: 13.5px;
    color: var(--wc-gold-ink);
    margin: 12px 0 0;
}
.wc-predict-cta { text-align: center; margin: 6px 0 10px; }
.wc-terms { max-width: 880px; margin: 18px auto 0; font-size: 13px; color: var(--wc-ink-soft); }
.wc-terms summary { cursor: pointer; font-weight: 700; min-height: 40px; display: inline-flex; align-items: center; }
.wc-terms summary:focus-visible { outline: 2px solid var(--wc-gold); outline-offset: 2px; }
.wc-terms p { line-height: 1.7; margin: 8px 0 0; }

/* ── 48 強戰力榜 ── */
.wc-power {
    border: 1px solid var(--wc-line);
    border-radius: 14px;
    background: var(--wc-card);
    margin-bottom: 10px;
    overflow: hidden;
}
.wc-power--top { border-color: rgba(255, 215, 0, 0.45); }
.wc-power--top .wc-power__rank { color: var(--wc-gold); }
.wc-power[open] { border-color: rgba(255, 215, 0, 0.4); }
.wc-power__sum {
    display: grid;
    grid-template-columns: 44px 1fr auto 64px;
    gap: 12px;
    align-items: center;
    min-height: 52px;
    padding: 10px 16px;
    cursor: pointer;
    list-style: none;
}
.wc-power__sum::-webkit-details-marker { display: none; }
.wc-power__sum:focus-visible { outline: 2px solid var(--wc-gold); outline-offset: -2px; }
.wc-power__rank { font-weight: 900; color: var(--wc-ink-soft); font-variant-numeric: tabular-nums; text-align: center; font-size: 16px; }
.wc-power__team { font-weight: 800; color: var(--wc-ink); font-size: 15px; }
.wc-power__meta { font-size: 12.5px; color: var(--wc-ink-soft); text-align: right; }
.wc-power__score {
    font-size: 22px;
    font-weight: 900;
    color: var(--wc-gold);
    text-align: right;
    font-variant-numeric: tabular-nums;
    text-shadow: 0 0 14px rgba(255, 215, 0, 0.3);
    transform: skewX(-4deg);
}
.wc-power__body { padding: 4px 16px 16px; border-top: 1px dashed var(--wc-line); }
.wc-power__analysis { font-size: 14px; line-height: 1.65; color: var(--wc-ink-soft); margin: 10px 0 12px; }
.wc-roster-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.wc-roster { width: 100%; border-collapse: collapse; font-size: 13px; min-width: 560px; }
.wc-roster th {
    text-align: left;
    font-size: 11.5px;
    color: var(--wc-ink-soft);
    font-weight: 700;
    padding: 6px 8px;
    border-bottom: 1px solid var(--wc-line);
    white-space: nowrap;
}
.wc-roster td {
    padding: 6px 8px;
    border-bottom: 1px dashed var(--wc-hairline);
    color: var(--wc-ink);
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}
.wc-roster tbody tr:last-child td { border-bottom: 0; }
.wc-roster__r { font-weight: 800; color: var(--wc-ink-soft); }
.wc-roster__star td { color: var(--wc-gold-ink); }
.wc-roster__star .wc-roster__r { color: var(--wc-gold); }
@media (max-width: 640px) {
    .wc-power__sum { grid-template-columns: 32px 1fr 56px; }
    .wc-power__meta { display: none; }
    .wc-power__score { font-size: 19px; }
}
.wc-page-cta { text-align: center; padding-bottom: 56px; }
.wc-page-cta .wc-ctas { justify-content: center; margin-top: 16px; }
@media (max-width: 640px) {
    .wc-matchrow { grid-template-columns: 1fr auto; }
    .wc-matchrow__when { grid-column: 1 / -1; }
}

/* ── 進場 reveal（JS 加 .wc-anim 才啟用 → 無 JS 內容直接可見）── */
.wc-anim .wc-billboard__content,
.wc-anim .wc-team-card,
.wc-anim .wc-gear-card,
.wc-anim .wc-stages,
.wc-anim .wc-warning {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity 0.6s var(--wc-ease), transform 0.6s var(--wc-ease);
}
.wc-anim .wc-in { opacity: 1; transform: translateY(0); }
.wc-anim .wc-gear-card:nth-child(2) { transition-delay: 0.07s; }
.wc-anim .wc-gear-card:nth-child(3) { transition-delay: 0.14s; }
.wc-anim .wc-gear-card:nth-child(4) { transition-delay: 0.21s; }
.wc-anim .wc-gear-card:nth-child(5) { transition-delay: 0.28s; }
.wc-anim .wc-gear-card:nth-child(6) { transition-delay: 0.35s; }
/* kinetic 標題逐字（--d 由 JS 逐字遞增 45ms） */
.wc-anim [data-wc-kinetic] .wc-char {
    opacity: 0;
    transform: translateY(0.55em);
    transition: transform 0.65s var(--wc-ease), opacity 0.45s ease;
    transition-delay: var(--d, 0ms);
}
.wc-anim .wc-billboard__content.wc-in [data-wc-kinetic] .wc-char {
    opacity: 1;
    transform: none;
}

/* ── 微視差（CSS scroll-driven，漸進增強；±3.5% 極輕量防暈眩）── */
@media (prefers-reduced-motion: no-preference) {
    @supports (animation-timeline: view()) {
        .wc-billboard__bg img {
            scale: 1.08;
            animation: wcParallax linear both;
            animation-timeline: view();
            animation-range: entry 0% exit 100%;
        }
        @keyframes wcParallax {
            from { transform: translateY(-3.5%); }
            to   { transform: translateY(3.5%); }
        }
    }
}

/* ── RWD ── */
@media (max-width: 1024px) {
    .wc-billboard__content { padding: 56px 24px 48px; }
    .wc-billboard__grid { grid-template-columns: minmax(0, 1fr) minmax(300px, 380px); gap: 24px; }
}
@media (max-width: 900px) {
    .wc-gear__grid { grid-template-columns: repeat(2, 1fr); }
    .wc-billboard__grid { grid-template-columns: 1fr; }
    .wc-billboard__video { max-width: 560px; }
}
@media (max-width: 768px) {
    .wc-ribbon { font-size: 13px; gap: 8px; padding: 8px 12px; }
    .wc-ribbon__cta { display: none; }
    .wc-billboard { min-height: 460px; }
    .wc-billboard__content { padding: 44px 18px 40px; }
    .wc-countdown { padding: 14px 16px; }
    .wc-fixtures, .wc-gear { padding-left: 18px; padding-right: 18px; }
    .wc-pitchline { left: 18px; right: 18px; }
    .wc-pitchline::before { width: 160px; height: 160px; top: -80px; }
    .wc-warning { width: calc(100% - 36px); }
}
@media (max-width: 560px) {
    .wc-gear__grid { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
    .wc-ribbon__dates { display: none; }
    .wc-title__year { font-size: clamp(64px, 21vw, 84px); }
    .wc-title__main { padding-top: 44px; font-size: clamp(34px, 9.6vw, 40px); }
    .wc-ctas .wc-btn { flex: 1; text-align: center; padding: 11px 14px; }
    .wc-digit b { font-size: 24px; }
}

/* ── 動效全關（前庭障礙友善；站長暈眩敏感）── */
@media (prefers-reduced-motion: reduce) {
    .wc-ribbon::after { animation: none; }
    .wc-ribbon__ball { animation: none; }
    .wc-digit.wc-tick b { animation: none; }
    .wc-live .wc-countdown__kickoff::before { animation: none; }
    .wc-btn, .wc-team-card, .wc-gear-card, .wc-gear-card__icon,
    .wc-gear-card__cta, .wc-warning__body a, .wc-video { transition: none; }
    .wc-video:hover .wc-video__play { animation: none; }
    .wc-anim .wc-billboard__content,
    .wc-anim .wc-team-card,
    .wc-anim .wc-gear-card,
    .wc-anim .wc-stages,
    .wc-anim .wc-warning {
        opacity: 1;
        transform: none;
        transition: none;
    }
    .wc-anim [data-wc-kinetic] .wc-char {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

/* ── WC5 戰報中心 /worldcup/report — 2026-06-12 ─────────────────────────── */
.wc-rep-match {
    border: 1px solid var(--wc-line);
    border-radius: 14px;
    background: var(--wc-card);
    padding: 18px 16px 14px;
    margin-bottom: 22px;
}
.wc-rep-score {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    flex-wrap: wrap;
    font-size: 19px;
    font-weight: 800;
    color: var(--wc-ink);
}
.wc-rep-num {
    font-size: 30px;
    color: var(--wc-gold);
    font-variant-numeric: tabular-nums;
    letter-spacing: 1px;
    font-style: normal;
}
.wc-rep-num i { font-style: normal; opacity: 0.55; padding: 0 4px; }
.wc-rep-meta {
    text-align: center;
    color: var(--wc-ink-soft);
    font-size: 12.5px;
    margin: 8px 0 12px;
}
.wc-rep-meta b { color: var(--wc-gold-ink); font-weight: 800; }
.wc-rep-report {
    color: var(--wc-ink);
    font-size: 14px;
    line-height: 1.8;
    border-left: 3px solid var(--wc-gold);
    padding: 2px 0 2px 12px;
    margin: 0 0 14px;
}
.wc-rep-teams { display: grid; grid-template-columns: 1fr; gap: 16px; }
@media (min-width: 980px) { .wc-rep-teams { grid-template-columns: 1fr 1fr; } }
.wc-rep-tname {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin: 0 0 6px;
    font-size: 14.5px;
    font-weight: 800;
    color: var(--wc-ink);
}
.wc-rep-trating {
    background: rgba(255, 215, 0, 0.14);
    color: var(--wc-gold-ink);
    border: 1px solid rgba(255, 215, 0, 0.35);
    border-radius: 999px;
    padding: 2px 10px;
    font-size: 11.5px;
    font-weight: 800;
    white-space: nowrap;
}
.wc-rep-table { min-width: 0; width: 100%; table-layout: fixed; } /* W9:fixed=欄寬受控,長內容換行不溢出 */
.wc-rep-table th:nth-child(1), .wc-rep-table td:nth-child(1) { width: 2.6em; }   /* # 容兩位數球號 */
.wc-rep-table th:nth-child(2), .wc-rep-table td:nth-child(2) { width: 3em; }     /* 位置 */
.wc-rep-table th:nth-child(4), .wc-rep-table td:nth-child(4) { width: 34%; }     /* 表現(自動換行) */
.wc-rep-table th:nth-child(5), .wc-rep-table td:nth-child(5) { width: 3.4em; text-align: left; } /* 評分 */
.wc-rep-name { white-space: normal; word-break: break-word; }   /* 球員名(剩餘寬)長名換行 */
.wc-rep-perf { white-space: normal; line-height: 1.55; }        /* 事件多時換行不撐寬 */
@media (max-width: 640px) {
    /* 手機:收起次要的「位置」欄,剩 #／球員／表現／評分 四欄完整可見不橫滑（站長:不要超過表格）*/
    .wc-rep-table { font-size: 12px; }
    .wc-rep-table th, .wc-rep-table td { padding: 6px 4px; }
    .wc-rep-table th:nth-child(2), .wc-rep-table td:nth-child(2) { display: none; }
    .wc-rep-table th:nth-child(4), .wc-rep-table td:nth-child(4) { width: 33%; }
    .wc-rep-tname { flex-wrap: wrap; }                  /* 隊名列窄幅換行 */
    .wc-rep-trating { font-size: 10px; padding: 2px 7px; } /* 國家隊戰力 badge 縮字防溢出 */
    .wc-schedule { padding-left: 14px; padding-right: 14px; } /* 手機所有區塊更多可用寬 */
    .wc-rep-match { overflow: hidden; }                 /* 卡片兜底:任何殘留溢出被自身裁,不破頁面 */
    .wc-rep-meta, .wc-rep-report { overflow-wrap: anywhere; } /* 長 meta/戰報強制斷行 */
}
.wc-rep-subtag {
    font-style: normal;
    font-size: 10.5px;
    color: var(--wc-ink-soft);
    border: 1px solid var(--wc-hairline);
    border-radius: 999px;
    padding: 1px 6px;
    margin-left: 4px;
    vertical-align: 1px;
}
.wc-rep-leaders { display: grid; grid-template-columns: 1fr; gap: 16px; }
@media (min-width: 760px) { .wc-rep-leaders { grid-template-columns: 1fr 1fr; } }
.wc-rep-board {
    border: 1px solid var(--wc-line);
    border-radius: 14px;
    background: var(--wc-card);
    padding: 14px 16px;
}
.wc-rep-board__title { margin: 0 0 8px; font-size: 14px; font-weight: 800; color: var(--wc-gold-ink); }
.wc-rep-board__list { list-style: none; margin: 0; padding: 0; counter-reset: wcboard; }
.wc-rep-board__list li {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 0;
    border-bottom: 1px dashed var(--wc-hairline);
    font-size: 13px;
    color: var(--wc-ink);
}
.wc-rep-board__list li::before {
    counter-increment: wcboard;
    content: counter(wcboard);
    flex: 0 0 20px;
    text-align: center;
    font-weight: 800;
    color: var(--wc-ink-soft);
}
.wc-rep-board__list li:last-child { border-bottom: 0; }
.wc-rep-board__list b { font-weight: 800; }
.wc-rep-board__team { color: var(--wc-ink-soft); font-size: 12px; }
.wc-rep-board__n {
    margin-left: auto;
    font-style: normal;
    font-weight: 800;
    color: var(--wc-gold);
    font-variant-numeric: tabular-nums;
}
.wc-rep-board__r { font-style: normal; font-size: 11px; color: var(--wc-ink-soft); white-space: nowrap; }
.wc-pred-table { min-width: 680px; }
@media (max-width: 760px) {
    .wc-pred-table { min-width: 0; font-size: 12px; }
    .wc-pred-table th:nth-child(6), .wc-pred-table td:nth-child(6) { display: none; } /* 手機收起王牌欄 */
    .wc-pred-table th, .wc-pred-table td { padding: 6px 5px; white-space: normal; }
}
.wc-pred-more { margin-top: 8px; }
.wc-pred-more summary {
    cursor: pointer;
    color: var(--wc-ink-soft);
    font-size: 13px;
    font-weight: 700;
    padding: 8px 2px;
}
.wc-rep-note { margin-top: 12px; font-size: 11.5px; color: var(--wc-ink-soft); line-height: 1.7; }

/* ── WC6 🇹🇼 台灣足球專區(加強介紹) — 2026-06-12 ─────────────────────────── */
.wc-tw {
    border: 1px solid rgba(255, 215, 0, 0.5);
    border-radius: 16px;
    background:
        radial-gradient(120% 90% at 50% 0%, rgba(255, 215, 0, 0.10), transparent 55%),
        var(--wc-card);
    box-shadow: 0 0 28px rgba(255, 215, 0, 0.10);
    padding: 26px 22px 24px;
    margin: 0 auto 26px;
}
.wc-tw__intro {
    border-left: 3px solid var(--wc-gold);
    padding: 4px 0 4px 12px;
    margin: 4px 0 16px;
}
.wc-tw__intro p {
    margin: 8px 0 0;
    color: var(--wc-ink);
    font-size: 14.5px;
    line-height: 1.85;
}
.wc-tw__head {
    margin: 22px 0 8px;
    font-size: 15px;
    font-weight: 800;
    color: var(--wc-gold-ink);
    display: flex;
    align-items: center;
    gap: 8px;
}
.wc-tw__head::before { content: ''; width: 6px; height: 16px; border-radius: 3px; background: var(--wc-gold); }
.wc-tw__timeline { display: grid; grid-template-columns: 1fr; gap: 8px; }
@media (min-width: 760px) { .wc-tw__timeline { grid-template-columns: 1fr 1fr; } }
.wc-tw__milestone {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    border: 1px solid var(--wc-line);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.03);
    padding: 10px 12px;
    font-size: 13px;
    color: var(--wc-ink);
    line-height: 1.7;
}
.wc-tw__milestone b {
    flex: 0 0 auto;
    color: var(--wc-gold);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
.wc-tw__summary { color: var(--wc-ink); font-size: 13.5px; line-height: 1.8; margin: 0 0 10px; }
.wc-tw__table { min-width: 560px; }
@media (max-width: 640px) {
    .wc-tw__table { min-width: 0; font-size: 12px; }
    .wc-tw__table th, .wc-tw__table td { white-space: normal; padding: 6px 5px; }
}
.wc-tw__stars { display: grid; grid-template-columns: 1fr; gap: 10px; }
@media (min-width: 760px) { .wc-tw__stars { grid-template-columns: 1fr 1fr; } }
.wc-tw__star {
    border: 1px solid var(--wc-line);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.03);
    padding: 12px 14px;
    font-size: 13px;
    color: var(--wc-ink);
    line-height: 1.7;
}
.wc-tw__star b { display: block; font-size: 14.5px; color: var(--wc-gold-ink); }
.wc-tw__star i { display: block; font-style: normal; font-size: 11.5px; color: var(--wc-ink-soft); margin: 2px 0 6px; }
.wc-tw__free,
.wc-tw__paid {
    font-style: normal;
    font-size: 10.5px;
    border-radius: 999px;
    padding: 1px 8px;
    margin-left: 6px;
    white-space: nowrap;
}
.wc-tw__free { color: #9be29b; border: 1px solid rgba(155, 226, 155, 0.45); }
.wc-tw__paid { color: var(--wc-gold-ink); border: 1px solid rgba(255, 215, 0, 0.35); }

/* ── WC7 首頁「上一場賽果」strip — 2026-06-12（W8 節奏修正:與倒數卡同設計語彙、
      垂直 22/24px 模數對齊、三段式分組「標籤｜比分｜CTA」,下緣不再黏 CTA 按鈕）── */
.wc-lastresult {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    max-width: 480px;            /* 與 .wc-countdown 同寬 = 左欄同一條對齊線 */
    margin: 0 0 24px;            /* 上方間距交給倒數卡 mb22;下方 24px 與 CTA 呼吸 */
    padding: 11px 18px;
    border: 1px solid rgba(255, 215, 0, 0.28);   /* 與倒數卡同 border 語彙 */
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(16, 12, 38, 0.74), rgba(10, 8, 26, 0.58));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    text-decoration: none;
    font-size: 13.5px;
    color: #fff;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.wc-lastresult:hover {
    border-color: rgba(255, 215, 0, 0.6);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 6px 20px rgba(0, 0, 0, 0.35);
    transform: translateY(-1px);
}
.wc-lastresult__label {
    font-style: normal;
    font-size: 11.5px;
    letter-spacing: 0.04em;
    color: var(--wc-gold, #ffd700);
    font-weight: 800;
    white-space: nowrap;
    padding-right: 10px;
    border-right: 1px solid rgba(255, 215, 0, 0.25); /* 分組 ①:標籤｜內容 */
}
.wc-lastresult .wc-score {
    color: var(--wc-gold, #ffd700);
    font-weight: 800;
    font-size: 15px;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.06em;
}
.wc-lastresult .wc-ft { font-style: normal; font-size: 11px; opacity: 0.7; white-space: nowrap; }
.wc-lastresult__t { font-weight: 700; white-space: nowrap; }
.wc-lastresult__cta {
    margin-left: auto;           /* 分組 ②:CTA 靠右,與內容拉開 */
    text-decoration: none;
    font-size: 11.5px;
    font-weight: 700;
    color: var(--wc-gold, #ffd700);
    border-bottom: 1px dashed rgba(255, 215, 0, 0.5);
    white-space: nowrap;
}
@media (max-width: 640px) {
    .wc-lastresult { gap: 8px; padding: 10px 14px; margin-bottom: 20px; }
    .wc-lastresult__cta { margin-left: 0; flex-basis: 100%; }  /* 窄幅換成第二列,不擠壓比分 */
}

/* ── codex 球員專頁連結（戰力榜梅西名字→/worldcup/players;深色戰力榜上金色連結）2026-06-12 ── */
.wc-player-link {
    color: var(--wc-gold, #ffd700);
    text-decoration: none;
    border-bottom: 1px dashed rgba(255, 215, 0, 0.5);
    font-weight: 700;
    transition: border-color 0.18s ease;
}
.wc-player-link:hover { border-bottom-color: var(--wc-gold, #ffd700); border-bottom-style: solid; color: var(--wc-gold, #ffd700); }
