.raid-page { padding-top: 54px; padding-bottom: 55px; }
.raid-intro { display:flex; justify-content:space-between; align-items:flex-start; gap:24px; }
.raid-intro .eyebrow { color:#94a99d; letter-spacing:.2em; font-size:10px; }
.raid-intro h1 { margin:18px 0; color:#f0f6f2; font-size:clamp(32px,4.4vw,55px); line-height:1.09; letter-spacing:-.045em; }
.raid-intro h1 span { color:#94a3b8; }
.raid-intro .lead { max-width:630px; font-size:14px; line-height:1.8; color:#94a3b8; }
.raid-season { display:flex; align-items:center; gap:9px; flex-shrink:0; border:1px solid #a3e6352e; border-radius:30px; padding:11px 16px; color:#bef264; font-size:9px; letter-spacing:.13em; margin-top:9px; font-weight:750; }
.season-dot { width:6px; height:6px; border-radius:50%; background:#bef264; box-shadow:0 0 12px #bef26466; }
.raid-overview { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:22px 26px; border:1px solid #ffffff12; border-radius:12px; background:#0c1521; }
.raid-guild { display:flex; align-items:center; gap:15px; }
.guild-emblem { display:grid; place-items:center; width:44px; height:44px; color:#d9b677; background:#d9b6770d; border:1px solid #d9b67733; border-radius:12px; font-size:26px; }
.raid-guild strong,.raid-guild div>span { display:block; }
.raid-guild strong { color:#f1f5f9; font-size:15px; }
.raid-guild div>span { color:#8b9bb0; margin-top:5px; font-size:11px; }
.raid-total { display:flex; align-items:center; gap:15px; }
.raid-total>strong { color:#edf2f7; font-size:28px; letter-spacing:-.06em; }
.raid-total strong span { color:#64748b; font-weight:500; }
.raid-total>span { color:#94a3b8; font-size:11px; max-width:90px; }
.raid-source-link { font-size:11px; color:#b8c8d4; border-bottom:1px solid #536376; padding-bottom:5px; }
.raid-toolbar { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:26px 0 18px; }
.difficulty-switch { display:flex; background:#0b1421; border:1px solid #ffffff12; border-radius:9px; padding:4px; }
.difficulty-switch button { border:0; border-radius:6px; background:transparent; color:#8f9cad; padding:10px 22px; font-weight:650; font-size:12px; font-family:inherit; cursor:pointer; }
.difficulty-switch button[aria-pressed=true] { background:#293447; color:#fff; box-shadow:0 2px 6px #0003; }
.difficulty-switch button[data-difficulty=heroic][aria-pressed=true] { background:#382749; color:#e5c2ff; }
.difficulty-switch button[data-difficulty=mythic][aria-pressed=true] { background:#442d22; color:#fed7aa; }
.difficulty-switch button:hover { color:#fff; }
.raid-page button:focus-visible,.raid-page a:focus-visible,.raid-page summary:focus-visible { outline:2px solid #bef264; outline-offset:4px; }
.raid-update { font-size:10px; color:#95a4b6; text-align:right; }
.raid-update.update-warning { color:#fbbf24; }
.expedition-grid { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); gap:22px; align-items:stretch; }
.expedition { --accent:#bef264; --glow:#a3e635; border:1px solid #a3e63530; border-radius:14px; overflow:hidden; background:#0c1619; min-width:0; }
.expedition-tide { --accent:#67e8f9; --glow:#22d3ee; border-color:#22d3ee30; background:#0b1720; }
.expedition-art { position:relative; min-height:254px; display:flex; align-items:flex-end; background:linear-gradient(0deg,#0c1619 1%,#06150bcc 27%,#07170b11 100%),url('raid-venom.webp') center/cover; }
.expedition-tide .expedition-art { background-image:linear-gradient(0deg,#0b1720 1%,#081723ba 30%,#03162011 100%),url('raid-tide.webp'); }
.expedition-title { padding:28px 28px 10px; position:relative; }
.expedition-label { color:var(--accent); font-size:9px; font-weight:800; letter-spacing:.18em; }
.expedition-title h2 { margin:9px 0; color:#fff; font-size:clamp(24px,2.65vw,34px); line-height:1.1; letter-spacing:-.04em; text-wrap:balance; }
.expedition-title p { color:#c1cfc9; font-size:11px; line-height:1.7; max-width:440px; margin:9px 0 0; }
.expedition-content { padding:22px 28px 25px; }
.expedition-score { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.difficulty-label { color:#afbec5; font-size:10px; text-transform:uppercase; letter-spacing:.16em; font-weight:700; }
.kill-count { color:var(--accent); font-size:55px; font-weight:750; letter-spacing:-.065em; line-height:1.15; margin-top:2px; }
.kill-count>span { color:#6e8585; font-size:32px; font-weight:400; }
.expedition-score p { margin:5px 0 0; color:#91a6a5; font-size:11px; }
.progress-ring { display:grid; place-items:center; width:84px; height:84px; border-radius:50%; background:conic-gradient(var(--accent) var(--progress),#ffffff0a 0); position:relative; flex-shrink:0; }
.progress-ring::before { content:''; position:absolute; inset:5px; background:#0c1619; border-radius:50%; }
.expedition-tide .progress-ring::before { background:#0b1720; }
.progress-ring>span { position:relative; font-size:23px; color:var(--accent); font-weight:700; }
.progress-ring small { font-size:11px; padding-left:2px; }
.progress-unknown>span { color:#94a3b8; }
.kill-track { display:flex; gap:5px; margin:22px 0; height:7px; }
.kill-track>span { flex:1; border-radius:2px; background:#ffffff0a; }
.kill-track>span.filled { background:var(--accent); box-shadow:0 0 12px color-mix(in srgb,var(--accent) 20%,transparent); }
.expedition-ranks { display:grid; grid-template-columns:repeat(3,1fr); padding-bottom:21px; margin-bottom:23px; border-bottom:1px solid #ffffff0d; }
.expedition-ranks>div { padding-left:17px; border-left:1px solid #ffffff12; }
.expedition-ranks>div:first-child { padding-left:0; border:0; }
.expedition-ranks span { display:block; font-size:9px; color:#8ba0ac; text-transform:uppercase; letter-spacing:.12em; }
.expedition-ranks strong { display:block; margin-top:5px; font-size:17px; color:#d5e2e5; font-weight:650; }
.boss-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:17px; }
.boss-heading h3 { margin:0; font-size:12px; color:#d9e4e5; }
.boss-heading>span { color:#83949e; font-size:10px; }
.boss-roster { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; padding:0; margin:0; list-style:none; }
.boss-tile { padding:15px 6px 12px; text-align:center; border:1px solid #ffffff0a; border-radius:8px; background:linear-gradient(145deg,color-mix(in srgb,var(--boss-color) 6%,transparent),#0001); }
.boss-sigil { position:relative; width:46px; height:46px; display:grid; place-items:center; margin:0 auto 11px; border:1px solid color-mix(in srgb,var(--boss-color) 40%,transparent); border-radius:13px 3px 13px 3px; background:radial-gradient(circle at 25% 0,color-mix(in srgb,var(--boss-color) 24%,transparent),transparent 70%); color:var(--boss-color); }
.boss-sigil>span { font-size:13px; font-weight:700; letter-spacing:.06em; }
.boss-sigil>i { position:absolute; right:-5px; bottom:-5px; width:17px; height:17px; display:grid; place-items:center; border-radius:50%; background:#233039; color:#bccad2; border:2px solid #0c1619; font:700 10px/1 system-ui; }
.boss-defeated .boss-sigil>i { background:#bef264; color:#1a2e05; }
.boss-defeated { border-color:#bef26424; }
.boss-remaining .boss-sigil { opacity:.6; }
.boss-tile>strong { display:block; color:#cbd9dc; font-size:10px; line-height:1.5; min-height:30px; text-wrap:balance; }
.boss-state { display:block; font-size:8px; color:#92a3ae; margin-top:6px; line-height:1.5; }
.boss-defeated .boss-state { color:#bef264; }
.expedition-tide .boss-roster { grid-template-columns:1fr; }
.expedition-tide .boss-tile { min-height:245px; display:flex; flex-direction:column; align-items:center; justify-content:center; background:radial-gradient(ellipse at center,#22d3ee13,transparent 75%); }
.expedition-tide .boss-sigil { width:78px; height:78px; border-radius:25px 5px 25px 5px; margin-bottom:17px; box-shadow:0 0 35px #22d3ee0d; }
.expedition-tide .boss-sigil>span { font-size:23px; }
.expedition-tide .boss-sigil>i { width:23px; height:23px; font-size:13px; }
.expedition-tide .boss-tile>strong { font-size:15px; min-height:0; }
.expedition-tide .boss-state { font-size:10px; }
.boss-note { font-size:10px; line-height:1.75; color:#98aab0; margin:16px 0; min-height:36px; }
.raid-guide { display:flex; align-items:center; justify-content:space-between; padding-top:15px; border-top:1px solid #ffffff0b; color:var(--accent); font-size:10px; font-weight:600; }
.raid-guide:hover { color:#fff; }
.raid-archive { margin-top:24px; border:1px solid #ffffff12; border-radius:10px; padding:18px 23px; }
.raid-archive summary { cursor:pointer; color:#9baaba; font-size:12px; }
.raid-archive summary>span { color:#607383; margin-left:8px; }
.raid-archive p { display:flex; justify-content:space-between; gap:14px; color:#a0b1bf; font-size:12px; padding-top:14px; }
.raid-archive p strong { font-weight:500; }
.raid-page .raider-attribution { color:#8a9bad; line-height:1.7; }
.raid-warning button { color:inherit; border:1px solid currentColor; padding:5px 8px; border-radius:4px; background:transparent; cursor:pointer; }
@media(min-width:1000px) { .expedition-content { display:flex; flex-direction:column; } .expedition-tide .boss-note { margin-top:16px; } }
@media(max-width:1000px) { .expedition-grid { grid-template-columns:1fr; } .expedition-tide .boss-tile { min-height:160px; } .expedition-art { min-height:240px; } .raid-intro { display:block; } .raid-season { display:inline-flex; margin:12px 0 0; } }
@media(max-width:600px) {
    .raid-page { padding-top:30px; }
    .raid-overview { padding:18px; flex-wrap:wrap; gap:20px; }
    .raid-total { margin-left:auto; gap:8px; } .raid-total>strong { font-size:23px; } .raid-total>span { max-width:65px; font-size:10px; }
    .raid-guild { gap:10px; } .raid-guild strong { font-size:12px; } .guild-emblem { width:32px; height:38px; }
    .raid-source-link { font-size:10px; }
    .raid-toolbar { flex-direction:column; align-items:flex-start; gap:12px; }
    .difficulty-switch { width:100%; } .difficulty-switch button { flex:1; padding:10px 12px; }
    .raid-update { text-align:left; line-height:1.6; }
    .expedition-title { padding:24px 20px 8px; } .expedition-content { padding:22px 20px; }
    .expedition-title h2 { font-size:29px; }
    .boss-roster { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .boss-tile { padding:17px 7px; } .boss-tile>strong { font-size:11px; } .boss-state { font-size:9px; }
    .raid-archive { padding:17px; }
}
