/* Pool Legends 6.1 — full-page hub + competitive ranking */
.legends-lobby.page-mode{min-height:100vh;background:#050914}
.legends-lobby.page-mode .legends-topbar{position:sticky;top:0}
.legends-lobby.page-mode .legends-home-view{display:none!important}
.hub-page{max-width:none!important;width:100%;min-height:calc(100vh - 86px);margin:0!important;padding:0!important;background:radial-gradient(circle at 50% 0,rgba(31,58,93,.30),transparent 38%),linear-gradient(180deg,#070d18 0%,#050914 100%)}
.hub-page.hidden{display:none!important}
.hub-page-head{max-width:1360px;margin:0 auto!important;padding:36px 42px 24px!important;display:flex;align-items:flex-end;gap:24px;border-bottom:1px solid rgba(255,255,255,.08)!important}
.hub-body{max-width:1360px;margin:0 auto;padding:28px 42px 80px!important;display:grid;gap:20px}
.hub-back{background:linear-gradient(180deg,#172334,#0e1724)!important;border:1px solid #344963!important;box-shadow:0 10px 28px rgba(0,0,0,.22)}
.hub-page-head h2{font-size:42px!important;letter-spacing:-.03em}

/* Ranking hero */
.rank-hero{position:relative;overflow:hidden;border:1px solid rgba(255,198,67,.36);border-radius:28px;padding:30px;background:radial-gradient(circle at 78% 30%,rgba(255,190,45,.18),transparent 30%),linear-gradient(135deg,#17140c 0%,#111a27 38%,#09111c 100%);box-shadow:0 24px 70px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.06)}
.rank-hero:after{content:'';position:absolute;width:420px;height:420px;border-radius:50%;right:-170px;top:-250px;background:radial-gradient(circle,rgba(255,194,49,.22),transparent 65%);pointer-events:none}
.rank-hero-grid{display:grid;grid-template-columns:210px 1fr 330px;gap:30px;align-items:center;position:relative;z-index:2}
.rank-emblem{width:180px;height:205px;position:relative;display:grid;place-items:center;margin:auto;filter:drop-shadow(0 18px 28px rgba(0,0,0,.38))}
.rank-emblem:before{content:'';position:absolute;inset:8px 18px 12px;clip-path:polygon(50% 0,92% 18%,88% 70%,50% 100%,12% 70%,8% 18%);background:linear-gradient(145deg,#f7b739,#7b4710 54%,#2f1b07);box-shadow:inset 0 0 0 4px rgba(255,223,125,.35)}
.rank-emblem:after{content:'';position:absolute;inset:20px 30px 28px;clip-path:polygon(50% 0,90% 19%,85% 68%,50% 100%,15% 68%,10% 19%);background:radial-gradient(circle at 50% 28%,#6c4420,#23170c 68%);border:1px solid rgba(255,227,142,.3)}
.rank-emblem span{position:relative;z-index:2;font-size:55px;filter:drop-shadow(0 4px 7px rgba(0,0,0,.4))}
.rank-current small{display:block;color:#ffcd62;font-weight:1000;letter-spacing:.17em;font-size:11px}.rank-current h3{margin:6px 0 3px;font-size:42px;letter-spacing:-.03em}.rank-current .rank-rp{font-size:18px;color:#b5c0cf}.rank-current .rank-rp strong{font-size:32px;color:#fff}.rank-progress{margin-top:18px}.rank-progress-meta{display:flex;justify-content:space-between;font-size:11px;color:#9aa7b8;margin-bottom:7px}.rank-progress-track{height:14px;border:1px solid #4b4430;background:#080c12;border-radius:999px;overflow:hidden;box-shadow:inset 0 2px 7px rgba(0,0,0,.5)}.rank-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f0a817,#ffe06a);box-shadow:0 0 18px rgba(255,190,44,.45)}
.rank-next-card{border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(6,10,16,.55);padding:19px}.rank-next-card small{font-size:10px;color:#8d9aac;letter-spacing:.14em}.rank-next-card h4{font-size:24px;margin:7px 0}.rank-next-card p{color:#a6b0bf;margin:0;line-height:1.45}.rank-next-card b{color:#ffd15f}

.rank-section{border:1px solid #26374c;border-radius:24px;background:linear-gradient(145deg,#111b29,#0a111a);padding:24px;box-shadow:0 18px 44px rgba(0,0,0,.22)}
.rank-section-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:18px}.rank-section-head h3{margin:0;font-size:24px}.rank-section-head p{margin:4px 0 0;color:#93a1b4}.rank-section-head span{font-size:10px;font-weight:900;letter-spacing:.13em;color:#ffce61}

/* Division ladder */
.division-ladder{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.division-card{position:relative;border:1px solid #27394f;border-radius:17px;background:#0b1420;padding:14px;min-height:110px;overflow:hidden;transition:.18s}.division-card:after{content:'';position:absolute;inset:auto -20px -38px auto;width:95px;height:95px;border-radius:50%;background:radial-gradient(circle,var(--rank-glow,rgba(255,255,255,.08)),transparent 67%)}
.division-card.current{border-color:#ffc840;box-shadow:0 0 0 2px rgba(255,198,55,.12),0 0 24px rgba(255,190,45,.17);transform:translateY(-3px)}
.division-card.done{opacity:.78}.division-card.locked{opacity:.48;filter:saturate(.55)}
.division-icon{font-size:28px;margin-bottom:9px}.division-card b{display:block;font-size:13px}.division-card small{display:block;color:#8492a5;font-size:9px;margin-top:4px}.division-card.current small{color:#ffd15f}

/* Podium */
.rank-podium{display:grid;grid-template-columns:1fr 1.13fr 1fr;align-items:end;gap:14px;margin:12px 0 25px}.podium-card{border:1px solid #31435a;border-radius:22px 22px 10px 10px;background:linear-gradient(180deg,#162337,#0b111b);padding:20px;text-align:center;position:relative}.podium-card.first{min-height:205px;border-color:#8f6c24;background:radial-gradient(circle at 50% 0,rgba(255,204,76,.2),transparent 50%),linear-gradient(180deg,#251d0d,#0d121c)}.podium-card.second{min-height:168px}.podium-card.third{min-height:148px}.podium-place{font-size:36px}.podium-avatar{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin:7px auto 9px;background:linear-gradient(145deg,#29e9a1,#0a7855);font-size:25px;font-weight:1000;box-shadow:0 0 25px rgba(35,239,152,.18)}.podium-card.first .podium-avatar{width:78px;height:78px;background:linear-gradient(145deg,#ffe173,#b96b0c);color:#241400;box-shadow:0 0 32px rgba(255,190,45,.25)}.podium-card b{display:block;font-size:18px}.podium-card small{color:#9ba7b7}.podium-rp{margin-top:8px;color:#ffd15f;font-weight:900}

/* Scoring */
.scoring-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.score-rule{border:1px solid #2b3d53;border-radius:17px;background:#0b1420;padding:16px}.score-rule strong{display:block;font-size:23px;margin-bottom:6px}.score-rule.win strong{color:#31e7a3}.score-rule.loss strong{color:#ff6675}.score-rule.tourney strong{color:#ffcb59}.score-rule.streak strong{color:#7fd9ff}.score-rule b{font-size:12px}.score-rule p{margin:5px 0 0;color:#8e9db0;font-size:12px;line-height:1.45}
.last-rating-change{display:flex;align-items:center;gap:12px;margin-top:15px;border-top:1px solid rgba(255,255,255,.08);padding-top:15px;color:#a4b0bf}.last-rating-change strong.positive{color:#29e89f}.last-rating-change strong.negative{color:#ff6371}

/* Full-page flavor */
.hub-page[data-page="rewards"]{background:radial-gradient(circle at 50% 0,rgba(80,36,142,.24),transparent 36%),linear-gradient(#070d18,#050914)}
.hub-page[data-page="shop"]{background:radial-gradient(circle at 50% 0,rgba(255,177,34,.13),transparent 38%),linear-gradient(#090d16,#050914)}
.hub-page[data-page="profile"]{background:radial-gradient(circle at 50% 0,rgba(26,197,145,.13),transparent 38%),linear-gradient(#070d18,#050914)}
.hub-page[data-page="ranking"]{background:radial-gradient(circle at 50% -8%,rgba(255,184,36,.13),transparent 40%),linear-gradient(#080d16,#050914)}

@media(max-width:1050px){.rank-hero-grid{grid-template-columns:150px 1fr}.rank-next-card{grid-column:1/-1}.rank-emblem{width:140px;height:165px}.division-ladder{grid-template-columns:repeat(4,1fr)}.scoring-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.hub-page{min-height:calc(100vh - 70px)}.hub-page-head{padding:24px 18px 18px!important}.hub-body{padding:20px 16px 96px!important}.rank-hero{padding:20px}.rank-hero-grid{grid-template-columns:1fr;text-align:center}.rank-emblem{width:125px;height:145px}.rank-current h3{font-size:34px}.division-ladder{grid-template-columns:repeat(3,1fr)}.rank-podium{grid-template-columns:1fr}.podium-card.first,.podium-card.second,.podium-card.third{min-height:auto}.scoring-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.hub-page-head{align-items:center}.hub-page-head h2{font-size:30px!important}.division-ladder{grid-template-columns:repeat(2,1fr)}.scoring-grid{grid-template-columns:1fr}.rank-section{padding:17px}.rank-section-head{align-items:flex-start;flex-direction:column}.rank-hero{border-radius:20px}.rank-next-card{padding:15px}}
