/* Ranked ladder, rank rewards and daily quests (ranked.js). Uses the --forge-* tokens from hud-forge.css. */
.rankBar{position:relative;display:block;height:6px;border:1px solid #3a3424;border-radius:1px;background:#070b0a;box-shadow:inset 0 1px 2px #000;overflow:hidden}
.rankBar>i{position:absolute;inset:0 auto 0 0;width:calc(var(--fill,0)*100%);background:linear-gradient(90deg,#8a6a2e,#e9c46b 70%,#fff0b8);box-shadow:0 0 8px #f0cf7466;transition:width .8s cubic-bezier(.2,.8,.2,1)}

/* Sidebar */
.sidebarRank{display:grid;grid-template-columns:46px 1fr;gap:10px;align-items:center;width:100%;margin:-12px 0 24px;padding:9px 10px;border:1px solid #3a3424;border-radius:2px;background:linear-gradient(180deg,#141b19,#0b100f);box-shadow:0 0 0 1px #000,inset 0 1px 0 #ffffff0d;color:var(--forge-ivory,#efe4c6);text-align:left;cursor:pointer;transition:border-color .14s,box-shadow .14s}
.sidebarRank:hover,.sidebarRank:focus-visible{border-color:var(--forge-brass);box-shadow:0 0 0 1px #000,0 0 14px #f0cf7426}
.sidebarRankEmblem{width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 2px 4px #000)}
.sidebarRankText{display:grid;gap:4px;min-width:0}
.sidebarRankText strong{font:700 12px/1 system-ui,sans-serif;letter-spacing:.12em;color:#f3e3a6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebarRankText small{font:600 10px/1 system-ui,sans-serif;letter-spacing:.08em;color:#a99d7d;white-space:nowrap}
.sidebarRankText .rankBar{height:4px}

/* Profile */
#profilePage.profileRanked .profileCrest{width:112px;height:112px;margin:3vh auto 12px}
#profilePage.profileRanked .profileCrest img{width:190px;height:230px}
#profilePage.profileRanked #profileTitle{margin:0 0 4px}
#profilePage.profileRanked .profileRecord{margin:14px auto}
.rankPanel{max-width:1040px;margin:6px auto 22px;padding:0 24px;text-align:left}
.rankCard{display:grid;grid-template-columns:190px minmax(0,1fr) 170px;gap:26px;align-items:center;padding:20px 26px;border:1px solid #3a3424;border-radius:2px;background:radial-gradient(70% 120% at 0 50%,#f0d79a14,transparent 60%),linear-gradient(180deg,#1a211fee,#0e1312ee);box-shadow:0 0 0 1px #000,inset 0 1px 0 #ffffff10,inset 0 0 0 3px #050807,inset 0 0 0 4px #6e5a3366,0 10px 26px #000a}
.rankCrest{position:relative;display:grid;place-items:center;--glow:#f0cf74}
.rankCrest::before{content:"";position:absolute;inset:12%;border-radius:50%;background:radial-gradient(circle,var(--glow) 0,transparent 68%);opacity:.28;filter:blur(10px)}
.rankCrest[data-tier=iron]{--glow:#9c958a}.rankCrest[data-tier=bronze]{--glow:#d08a4e}.rankCrest[data-tier=silver]{--glow:#bcd2e4}.rankCrest[data-tier=gold]{--glow:#f2c45a}.rankCrest[data-tier=platinum]{--glow:#4fd6c0}
.rankCrest[data-tier=emerald]{--glow:#3fd77a}.rankCrest[data-tier=diamond]{--glow:#77b8ff}.rankCrest[data-tier=master]{--glow:#b56cff}.rankCrest[data-tier=grandmaster]{--glow:#ff5145}.rankCrest[data-tier=challenger]{--glow:#9fd8ff}
.rankEmblem{position:relative;width:190px;height:190px;object-fit:contain;filter:drop-shadow(0 6px 12px #000c)}
.rankText{display:grid;gap:10px;min-width:0}
.rankSeason{font:700 11px/1 system-ui,sans-serif;letter-spacing:.18em;color:var(--forge-brass)}
.rankTitle{margin:0;font:700 40px/1 Georgia,serif;color:#f6ead0;text-shadow:0 2px 10px #000;letter-spacing:.02em}
.rankLpRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center}
.rankLpRow b{font:700 15px/1 system-ui,sans-serif;color:#f3d77a;letter-spacing:.06em}
.rankBarWide{height:9px}
.rankRecord{margin:0;color:#c9bfa2;font-size:14px;letter-spacing:.04em}
.rankStakes{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 0;padding:0;list-style:none}
.rankStakes li{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid #2d2a20;background:#0b100fcc;font:700 10px/1 system-ui,sans-serif;letter-spacing:.12em;color:#a99d7d}
.rankStakes b{font-size:12px;letter-spacing:.04em}.rankStakes .win{color:#8fe0a0}.rankStakes .loss{color:#e88f7f}
.rankPeak{display:grid;justify-items:center;gap:6px;padding-left:22px;border-left:1px solid #3a342466;text-align:center}
.rankPeakEmblem{width:84px;height:84px;object-fit:contain;filter:drop-shadow(0 3px 6px #000)}
.rankPeak span{font:700 10px/1 system-ui,sans-serif;letter-spacing:.18em;color:var(--forge-brass)}
.rankPeak strong{font:700 17px/1.1 Georgia,serif;color:#f6ead0}
.rankRewards{margin-top:16px;padding:16px 22px 18px;border:1px solid #3a3424;border-radius:2px;background:linear-gradient(180deg,#141b19ee,#0b100fee);box-shadow:0 0 0 1px #000,inset 0 1px 0 #ffffff0d}
.rankRewards h3{margin:0 0 4px;font:700 12px/1 system-ui,sans-serif;letter-spacing:.18em;color:var(--forge-brass)}
.rankRewards>p{margin:0 0 14px;color:#a99d7d;font-size:12px}
.rankRewardTrack{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}
.rankReward{position:relative;display:grid;justify-items:center;gap:5px;padding:10px 4px 9px;border:1px solid #2d2a20;border-radius:2px;background:#0b100f;text-align:center}
.rankReward::after{content:"";position:absolute;left:-9px;top:38px;width:9px;height:2px;background:#3a3424}
.rankReward:first-child::after{display:none}
.rankRewardEmblem{width:54px;height:54px;object-fit:contain;filter:grayscale(.85) brightness(.62) drop-shadow(0 2px 3px #000);transition:filter .2s}
.rankReward strong{font:700 9px/1 system-ui,sans-serif;letter-spacing:.12em;color:#8a8068}
.rankRewardMarks{display:flex;align-items:center;gap:4px;font:700 13px/1 system-ui,sans-serif;color:#c9bfa2}
.rankReward small{font:700 8px/1 system-ui,sans-serif;letter-spacing:.16em;color:#6f6754}
.rankReward[data-claimed=true]{border-color:#6e5a33;background:radial-gradient(90% 70% at 50% 0,#f0d79a1a,transparent 70%),#0e1412}
.rankReward[data-claimed=true]::after{background:linear-gradient(90deg,#8a6a2e,#e9c46b)}
.rankReward[data-claimed=true] .rankRewardEmblem{filter:drop-shadow(0 2px 6px #000)}
.rankReward[data-claimed=true] strong{color:#f3e3a6}.rankReward[data-claimed=true] small{color:#8fe0a0}
.rankReward[data-current=true]{border-color:var(--forge-brass);box-shadow:0 0 0 1px #000,0 0 14px #f0cf7433}

/* Home */
.homeQuests{position:absolute;top:56px;right:4%;width:min(360px,34%);padding:16px 18px 14px;border:1px solid #3a3424;border-radius:2px;background:linear-gradient(180deg,#141b19f2,#0b100ff2);box-shadow:0 0 0 1px #000,inset 0 1px 0 #ffffff0d,0 12px 30px #000b;color:var(--forge-ivory,#efe4c6)}
.homeQuests header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:12px}
.homeQuests h2{margin:0;font:700 12px/1 system-ui,sans-serif!important;letter-spacing:.18em;color:var(--forge-brass)}
.questReset{font:600 10px/1 system-ui,sans-serif;letter-spacing:.08em;color:#a99d7d;white-space:nowrap}
.questList{display:grid;gap:9px;margin:0;padding:0;list-style:none}
.quest{display:grid;gap:7px;padding:10px 12px;border:1px solid #2d2a20;border-radius:2px;background:#0b100fcc}
.questHead,.questFoot{display:flex;align-items:center;justify-content:space-between;gap:10px}
.questTitle{font-size:13px;line-height:1.3;color:#eadfc0}
.questReward{display:flex;align-items:center;gap:4px;flex:none;font:700 12px/1 system-ui,sans-serif;color:#f3d77a}
.questFoot .rankBar{flex:1}
.questFoot small{flex:none;min-width:64px;text-align:right;font:700 10px/1 system-ui,sans-serif;letter-spacing:.08em;color:#a99d7d}
.quest[data-done=true]{border-color:#4d6b45;background:radial-gradient(90% 90% at 0 50%,#8fe0a014,transparent 70%),#0b100fcc}
.quest[data-done=true] .questTitle{color:#cfe8c8}.quest[data-done=true] small{color:#8fe0a0}
.quest[data-done=true] .rankBar>i{background:linear-gradient(90deg,#3d7a46,#8fe0a0)}
.questNote{margin:10px 0 10px;font-size:11px;color:#8a8068}
.questRank{display:flex;align-items:center;gap:10px;width:100%;padding:7px 10px;border:1px solid #2d2a20;border-radius:2px;background:#070b0a;color:#f3e3a6;font:700 11px/1 system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.questRank:hover,.questRank:focus-visible{border-color:var(--forge-brass)}
.questRank img{width:30px;height:30px;object-fit:contain}
@media(max-width:1350px){.homeQuests{width:min(320px,36%);padding:13px 14px 11px}.questTitle{font-size:12px}}
@media(max-width:1100px){.homeQuests{display:none}}
@media(max-height:800px){.homeQuests{top:44px}.quest{padding:8px 10px;gap:6px}.questNote{margin:8px 0}}

/* Post-game */
#result .forgeRankResult{text-align:left;display:grid;grid-template-columns:120px minmax(0,1fr) minmax(0,1.1fr);gap:24px;align-items:center;max-width:1180px;margin-top:26px;padding:16px 22px;border:1px solid #3a3424;border-radius:2px;background:linear-gradient(180deg,#1a211fee,#0e1312ee);box-shadow:0 0 0 1px #000,inset 0 1px 0 #ffffff10}
#result .forgeRankResult[data-state=gain]{border-color:#6e5a33;background:radial-gradient(60% 120% at 0 50%,#f0d79a1c,transparent 70%),linear-gradient(180deg,#1a211fee,#0e1312ee)}
.rankResultCrest{position:relative;display:grid;place-items:center}
.rankResultCrest img{width:112px;height:112px;object-fit:contain;filter:drop-shadow(0 4px 10px #000)}
.rankDelta{position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);padding:4px 9px;border:1px solid #000;border-radius:2px;background:#0b100f;font:700 13px/1 system-ui,sans-serif;letter-spacing:.04em;white-space:nowrap}
[data-state=gain] .rankDelta{color:#8fe0a0;box-shadow:0 0 12px #8fe0a033}[data-state=loss] .rankDelta{color:#e88f7f}
.rankResultText{display:grid;gap:9px;min-width:0}
.rankResultText small{font:700 11px/1 system-ui,sans-serif;letter-spacing:.2em;color:var(--forge-brass)}
.rankResultText strong{font:700 30px/1 Georgia,serif;color:#f6ead0}
.rankPending{margin:0;color:#a99d7d;font-size:13px}
.rankResultSide{display:grid;gap:8px;min-width:0}
.rankResultSide h3{margin:0;font:700 10px/1 system-ui,sans-serif;letter-spacing:.18em;color:var(--forge-brass)}
.rankResultReward{display:flex;align-items:center;gap:8px;margin:0;padding:6px 10px;border:1px solid #6e5a33;background:radial-gradient(90% 90% at 0 50%,#f0d79a1f,transparent 70%),#0b100f;font:700 11px/1 system-ui,sans-serif;letter-spacing:.12em;color:#f3e3a6}
.rankResultReward img{width:28px;height:28px;object-fit:contain}.rankResultReward b{color:#f3d77a;font-size:13px}
.rankResultNote{margin:0;color:#8a8068;font-size:12px}
.questListCompact{gap:6px}.questListCompact .quest{padding:7px 10px;gap:5px}.questListCompact .questTitle{font-size:12px}
@media(max-height:800px){#result .forgeRankResult{margin-top:16px;padding:12px 18px;grid-template-columns:96px minmax(0,1fr) minmax(0,1.1fr)}.rankResultCrest img{width:90px;height:90px}.rankResultText strong{font-size:24px}}
