.rank-wrap{max-width:960px;margin:24px auto;padding:0 16px;color:var(--text,#e7edf5)}.rank-card{background:var(--panel,#161e2b);border:1px solid var(--border,#334155);border-radius:16px;padding:24px;margin:16px 0}.rank-hero{text-align:center}.rank-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.rank-grid div{padding:12px;border:1px solid var(--border,#334155);border-radius:8px}.rank-grid strong{display:block;font-size:24px}.rank-scroll{overflow-x:auto}.rank-table{width:100%;border-collapse:collapse;white-space:nowrap}.rank-table th,.rank-table td{text-align:left;padding:10px;border-bottom:1px solid var(--border,#334155)}.rank-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;vertical-align:middle;text-decoration:none}.rank-badge img{object-fit:contain}.rank-badge:focus-visible{outline:2px solid currentColor;outline-offset:3px}.rank-small{width:var(--rank-size,24px);min-width:var(--rank-size,24px)}.rank-before{order:-1}.rank-sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.rank-lp{font-size:32px;font-weight:700}.rank-card progress{width:min(100%,400px);height:12px;accent-color:#9cb8ff}.rank-placement{line-height:1.6}.rank-placement>div{letter-spacing:6px;font-size:26px}.rank-name{overflow-wrap:anywhere}.rank-muted{color:var(--muted,#a5b4c8)}.rank-card h2{font-size:16px;letter-spacing:.08em}.rank-promotion{border:1px solid #9cb8ff;background:var(--panel,#161e2b);color:inherit;border-radius:16px;padding:30px}.user-identity:has(.rank-badge){max-width:100%;gap:5px}.user-identity:has(.rank-badge) .user-identity-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.cw-who:has(.rank-badge){display:inline-flex;align-items:center;gap:4px}.cw-who .rank-badge{order:-1}@media(prefers-reduced-motion:reduce){.rank-wrap *,.rank-badge{animation:none!important;transition:none!important}}

.rank-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.rank-preview-grid .rank-card{margin:0}.rank-preview-sizes{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}

/* Original artwork stays intact; optical treatment is scoped to small service badges. */
.rank-badge img{filter:drop-shadow(0 1px 1px rgba(0,0,0,.55));display:block}
.rank-small img{filter:brightness(1.08) contrast(1.04) drop-shadow(0 0 .4px rgba(210,218,227,.5)) drop-shadow(0 1px .6px rgba(0,0,0,.8))}
.rank-notices{border-left:2px solid #b9a479;margin:6px 0;padding:4px 8px;max-height:180px;overflow:auto}
.rank-notice{display:flex;align-items:center;gap:8px;padding:7px 0;color:var(--text,#e7edf5);font-size:12px;line-height:1.5}
.rank-notice-copy{flex:1;min-width:0;overflow-wrap:anywhere}.rank-notice time{color:var(--muted,#a5b4c8);font-size:10px;white-space:nowrap}
.rank-celebration{box-sizing:border-box;width:min(92vw,400px);border:1px solid #b7a47e;border-radius:20px;background:#101722;color:#f1ece2;padding:28px;text-align:center;overflow:hidden}
.rank-celebration::backdrop{background:rgba(5,9,16,.65)}
.rank-celebration-stage{position:relative;width:200px;height:190px;margin:auto;isolation:isolate}
.rank-celebration-stage img{position:absolute;width:160px;height:160px;left:20px;top:12px;object-fit:contain}
.rank-celebration-old{animation:rank-old 1.8s both}.rank-celebration-new{animation:rank-new 1.8s both}
.rank-core-light{position:absolute;inset:55px 60px 65px;background:radial-gradient(ellipse,rgba(239,226,190,.32),transparent 70%);animation:rank-core 1.8s both;pointer-events:none}
.rank-celebration-copy{animation:rank-copy 1.8s both}.rank-celebration h2{font-size:12px;letter-spacing:.25em;color:#d9c9a4}.rank-celebration p{font-size:21px;font-weight:700;overflow-wrap:anywhere}.rank-celebration button{padding:10px 28px;border:1px solid #9c8a65;border-radius:8px;background:#232a34;color:inherit;cursor:pointer}.rank-celebration button:focus-visible{outline:2px solid #ede2c8;outline-offset:4px}
.rank-division .rank-core-light{opacity:.45}.rank-master,.rank-challenger{border-width:2px}
@keyframes rank-old{0%,14%{opacity:1;clip-path:inset(0);transform:translateY(0)}36%{opacity:.85;clip-path:inset(0)}61%,100%{opacity:0;clip-path:inset(0 35%);transform:translateY(-4px)}}
@keyframes rank-new{0%,36%{opacity:0;clip-path:inset(0 45%);transform:translateY(5px)}61%{opacity:.35;clip-path:inset(0 28%)}83%,100%{opacity:1;clip-path:inset(0);transform:translateY(0)}}
@keyframes rank-core{0%,14%,100%{opacity:0}36%,61%{opacity:1}83%{opacity:.2}}
@keyframes rank-copy{0%,82%{opacity:0;transform:translateY(4px)}100%{opacity:1;transform:translateY(0)}}
.rank-reduced .rank-celebration-old{display:none}.rank-reduced .rank-core-light{display:none}.rank-reduced .rank-celebration-new,.rank-reduced .rank-celebration-copy{animation:rank-fade .15s both}
@keyframes rank-fade{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.rank-celebration-old,.rank-core-light{display:none!important}.rank-celebration-new,.rank-celebration-copy{animation:rank-fade .15s both!important;clip-path:none!important;transform:none!important}}
@media(max-width:480px){.rank-celebration{padding:20px}.rank-notices{max-height:140px}.rank-notice{gap:5px}.rank-card{padding:18px}}
.rank-history{font-size:13px;line-height:1.7}.rank-history ul{padding-left:20px}.rank-art-check{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:16px}.rank-art-light{background:#f2f2ee;color:#17212b}.rank-art-dark{background:#101722;color:#e7edf5}
.rank-celebration-left{clip-path:inset(0 62% 0 0);animation:rank-left 1.8s both}.rank-celebration-right{clip-path:inset(0 0 0 62%);animation:rank-right 1.8s both}
@keyframes rank-left{0%,35%{opacity:0;transform:translateX(0)}36%{opacity:.8}61%,100%{opacity:0;transform:translateX(-8px)}}
@keyframes rank-right{0%,35%{opacity:0;transform:translateX(0)}36%{opacity:.8}61%,100%{opacity:0;transform:translateX(8px)}}
.rank-reduced .rank-celebration-left,.rank-reduced .rank-celebration-right{display:none}
@media(prefers-reduced-motion:reduce){.rank-celebration-left,.rank-celebration-right{display:none!important}}

.rank-discovery{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid var(--border,#334155);border-radius:12px;background:var(--panel,#161e2b);color:var(--text,#e7edf5);box-sizing:border-box;min-width:0;margin:12px 0;grid-column:1/-1}
.rank-discovery-copy{min-width:0}.rank-discovery-copy strong{font-size:13px;margin-right:10px}.rank-discovery-state{font-size:14px;font-weight:700}.rank-discovery-dots{display:block;letter-spacing:3px;font-size:13px;color:var(--muted,#a5b4c8);margin-top:5px}.rank-discovery p{font-size:12px;line-height:1.6;margin:4px 0}.rank-discovery small{font-size:11px;color:var(--muted,#a5b4c8)}.rank-discovery-links{display:flex;flex-shrink:0;flex-wrap:wrap;gap:8px;align-items:center}.rank-discovery-links a{font-size:12px;color:var(--text,#e7edf5);padding:7px 9px;border:1px solid var(--border,#334155);border-radius:7px;text-decoration:none}.rank-discovery-links a:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.iv-right .rank-discovery{flex-direction:column;align-items:stretch;margin-top:0}.rank-leader-name{max-width:220px;overflow-wrap:anywhere;white-space:normal}.rank-placement-list{padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.rank-placement-list li{display:flex;gap:12px;justify-content:space-between;min-width:0;font-size:13px}.rank-placement-list li span{white-space:nowrap}.rank-explainer p{font-size:13px;line-height:1.7}
@media(max-width:640px){.rank-discovery{flex-direction:column;align-items:stretch;padding:12px}.rank-discovery-links{justify-content:flex-start}.rank-placement-list{grid-template-columns:1fr}.rank-table{font-size:12px}.rank-leader-name{max-width:140px}.ranking-hub-tabs a{flex-basis:40%}.rank-top-entry{gap:3px}}
.rank-badge{position:relative}.rank-badge:focus-visible::after{content:attr(aria-label);position:absolute;z-index:100;left:0;top:100%;margin-top:5px;padding:6px 9px;background:#17212b;color:#f1f5f9;border:1px solid #64748b;border-radius:6px;font-size:12px;white-space:nowrap;pointer-events:none}

/* Community identity stays inside its existing author cell/meta group. */
.rank-badge{flex:0 0 auto;line-height:1}
.rank-small{height:var(--rank-size,24px)}.rank-small img{width:100%;height:100%}
.community-rank-identity{flex:0 1 auto;flex-wrap:nowrap;min-width:0;max-width:100%}
.community-rank-identity .user-identity-name{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cell-author>.community-rank-identity{width:100%}
.cell-meta:has(.community-rank-identity)>.cell-date,.cell-meta:has(.community-rank-identity)>.cell-views{flex:0 0 auto;white-space:nowrap}
.community-author-group{min-width:0;max-width:100%;flex:0 1 auto}
.community-author-meta>span:not(.user-identity):not(.community-author-group),.community-author-meta>time,.community-author-meta>form{flex:0 0 auto;white-space:nowrap}
/* Optical enlargement stays smaller than the 24px list avatar. */
.cell-author .community-rank-identity .rank-small{width:22px;min-width:22px;height:22px}
.community-rank-identity{align-items:center;column-gap:6px}
.community-author-meta{row-gap:6px}
@media(max-width:768px){
 .community-rank-identity .rank-small{width:20px;min-width:20px;height:20px}
 .cell-author .community-rank-identity .rank-small{width:18px;min-width:18px;height:18px}
 .community-rank-identity{column-gap:5px}
}

/* Investment summary only: identity badges and showcase pages keep their own scale. */
.iv-right .invest-rank-card{--rank-accent:160,181,214;position:relative;isolation:isolate;min-width:0;margin:0 0 14px;padding:14px 16px;border:1px solid rgba(var(--rank-accent),.3);border-radius:14px;color:var(--text,#e7edf5);background:linear-gradient(125deg,rgba(var(--rank-accent),.09),transparent 65%),var(--panel,#161e2b);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);overflow:hidden}
.iv-right .invest-rank-card[data-tier=bronze]{--rank-accent:196,145,105}.iv-right .invest-rank-card[data-tier=silver]{--rank-accent:195,207,221}.iv-right .invest-rank-card[data-tier=gold]{--rank-accent:224,186,101}.iv-right .invest-rank-card[data-tier=platinum]{--rank-accent:112,207,193}.iv-right .invest-rank-card[data-tier=diamond]{--rank-accent:121,192,235}.iv-right .invest-rank-card[data-tier=master]{--rank-accent:184,147,231}.iv-right .invest-rank-card[data-tier=challenger]{--rank-accent:237,196,109}
.invest-rank-card .invest-rank-heading{display:flex;justify-content:space-between;gap:8px;align-items:center}.invest-rank-card h2{margin:0;font-size:13px;font-weight:700}.invest-rank-card .invest-rank-heading>span{font-size:10px;color:var(--muted,#a5b4c8)}
.invest-rank-card .invest-rank-identity{display:flex;gap:14px;align-items:center;margin:3px 0 6px;min-width:0}.invest-rank-card .invest-rank-emblem{flex:0 0 96px;background:radial-gradient(ellipse,rgba(var(--rank-accent),.16),transparent 70%)}
.invest-rank-card .invest-rank-state{display:flex;flex-direction:column;gap:4px;min-width:0;font-size:11px;color:var(--muted,#a5b4c8)}.invest-rank-card .invest-rank-state>strong{font-size:clamp(18px,1.6vw,23px);color:var(--text,#e7edf5);line-height:1.2;overflow-wrap:anywhere}.invest-rank-card .invest-rank-eyebrow{font-size:9px;letter-spacing:.12em;color:rgb(var(--rank-accent))}.invest-rank-card .invest-rank-lp b{font-size:18px;color:var(--text,#e7edf5);font-variant-numeric:tabular-nums}
.invest-rank-card .invest-rank-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.invest-rank-card .invest-rank-steps span{height:5px;border-radius:3px;background:rgba(var(--rank-accent),.13);border:1px solid rgba(var(--rank-accent),.12)}.invest-rank-card .invest-rank-steps .done{background:linear-gradient(90deg,rgba(var(--rank-accent),.55),rgb(var(--rank-accent)));box-shadow:0 0 7px rgba(var(--rank-accent),.12)}
.invest-rank-card progress{display:block;width:100%;height:6px;border:0;border-radius:4px;overflow:hidden;accent-color:rgb(var(--rank-accent));background:rgba(var(--rank-accent),.13)}.invest-rank-card progress::-webkit-progress-bar{background:rgba(var(--rank-accent),.13)}.invest-rank-card progress::-webkit-progress-value{background:rgb(var(--rank-accent))}.invest-rank-card progress::-moz-progress-bar{background:rgb(var(--rank-accent))}
.invest-rank-card .invest-rank-goal{margin:9px 0 12px;font-size:12px;line-height:1.5;color:var(--muted,#a5b4c8)}.invest-rank-card .invest-rank-goal strong{color:var(--text,#e7edf5)}.invest-rank-card .invest-rank-goal small{display:block;font-size:10px;margin-top:2px}
.invest-rank-card .invest-rank-links{display:grid;grid-template-columns:1.4fr 1fr;gap:7px}.invest-rank-card .invest-rank-links a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:36px;border:1px solid rgba(var(--rank-accent),.2);border-radius:7px;text-decoration:none;color:var(--muted,#a5b4c8);font-size:12px}.invest-rank-card .invest-rank-links .primary{background:rgba(var(--rank-accent),.13);border-color:rgba(var(--rank-accent),.4);font-weight:700;color:var(--text,#e7edf5)}.invest-rank-card a:focus-visible{outline:2px solid rgb(var(--rank-accent));outline-offset:2px}.invest-rank-card .invest-rank-footnote{display:block;margin-top:9px;font-size:10px;color:var(--muted,#a5b4c8)}
@media(min-width:1080px){.iv-right .invest-rank-card{margin-bottom:0}}
@media(max-width:380px){.iv-right .invest-rank-card{padding:12px}.invest-rank-card .invest-rank-identity{gap:8px}}

/* Trophy-room presentation: never changes chat/community badge dimensions. */
.rank-trophy-room .rank-showcase-heading,.rank-profile-showcase .rank-showcase-heading{padding:12px 0 0}.rank-showcase-heading h1,.rank-showcase-heading h2{margin:6px 0;font-size:28px}.rank-showcase-heading p{font-size:13px;margin:6px 0 18px}.rank-trophy-kicker{font-size:10px;font-weight:700;letter-spacing:.16em;color:var(--muted,#a5b4c8)}
.rank-card.rank-trophy{--trophy:159,182,216;display:grid;grid-template-columns:minmax(192px,.8fr) minmax(0,1.2fr);gap:30px;align-items:center;position:relative;overflow:hidden;padding:32px;border-color:rgba(var(--trophy),.35);background:linear-gradient(120deg,rgba(var(--trophy),.1),transparent 65%),var(--panel,#161e2b);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.rank-trophy[data-tier=bronze]{--trophy:198,148,108}.rank-trophy[data-tier=silver]{--trophy:201,211,226}.rank-trophy[data-tier=gold]{--trophy:227,188,107}.rank-trophy[data-tier=platinum]{--trophy:116,208,194}.rank-trophy[data-tier=diamond]{--trophy:122,194,240}.rank-trophy[data-tier=master]{--trophy:185,146,229}.rank-trophy[data-tier=challenger]{--trophy:239,193,99}
.rank-trophy .rank-trophy-art{display:flex;justify-content:center;align-items:center;min-height:236px;background:radial-gradient(ellipse,rgba(var(--trophy),.2),transparent 68%);border-bottom:1px solid rgba(var(--trophy),.24)}
.rank-trophy .rank-badge{filter:drop-shadow(0 8px 18px rgba(0,0,0,.35))}.rank-trophy .rank-trophy-copy{min-width:0}.rank-trophy .rank-trophy-kicker{color:rgb(var(--trophy))}.rank-trophy h2{font-size:clamp(26px,3vw,38px);line-height:1.2;letter-spacing:-.02em;margin:8px 0 14px;overflow-wrap:anywhere}
.rank-trophy-lp{font-size:15px;color:var(--muted,#a5b4c8);margin:8px 0 16px;font-variant-numeric:tabular-nums}.rank-trophy-lp strong{font-size:42px;color:var(--text,#e7edf5);font-weight:800}.rank-trophy-placement{display:flex;align-items:center;gap:14px;margin-bottom:14px}.rank-trophy-placement>strong{font-size:42px;font-variant-numeric:tabular-nums}.rank-trophy-placement small{font-size:22px;color:var(--muted,#a5b4c8)}.rank-trophy-placement>span{font-size:12px;color:var(--muted,#a5b4c8)}
.rank-trophy-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.rank-trophy-steps span{height:9px;border-radius:3px;border:1px solid rgba(var(--trophy),.15);background:rgba(var(--trophy),.12)}.rank-trophy-steps .done{background:linear-gradient(90deg,rgba(var(--trophy),.5),rgb(var(--trophy)));box-shadow:0 0 10px rgba(var(--trophy),.15)}
.rank-trophy progress{display:block;width:100%;max-width:none;height:9px;accent-color:rgb(var(--trophy));border:0;border-radius:4px;overflow:hidden;background:rgba(var(--trophy),.12)}.rank-trophy progress::-webkit-progress-bar{background:rgba(var(--trophy),.12)}.rank-trophy progress::-webkit-progress-value{background:rgb(var(--trophy))}.rank-trophy progress::-moz-progress-bar{background:rgb(var(--trophy))}
.rank-trophy-goal{font-size:14px;line-height:1.6;margin:12px 0}.rank-trophy-goal small{display:block;font-size:11px;color:var(--muted,#a5b4c8)}.rank-trophy-note{font-size:11px;color:var(--muted,#a5b4c8);margin:18px 0 0}
.rank-trophy-links{display:flex;flex-wrap:wrap;gap:8px}.rank-trophy-links a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:1px solid var(--border,#334155);border-radius:8px;font-size:12px;text-decoration:none;color:var(--text,#e7edf5);box-sizing:border-box}.rank-trophy-links a.primary{background:rgba(156,184,255,.14);border-color:rgba(156,184,255,.4);font-weight:700}.rank-trophy-links a:focus-visible{outline:2px solid currentColor;outline-offset:3px}.rank-trophy-main-links{margin:0 0 22px}
.rank-room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.rank-room-grid>.rank-card{margin:0;min-width:0;height:auto}.rank-room-grid .rank-records{grid-column:1/-1}
.rank-records-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}.rank-records-heading h2{margin:6px 0}.rank-records-peak{display:flex;gap:12px;align-items:center;font-size:20px}.rank-records h3{font-size:12px;color:var(--muted,#a5b4c8);margin:20px 0 8px}.rank-records p{font-size:13px}.rank-records-list{padding:0;list-style:none;margin:0 0 16px}.rank-records-list li{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:5px 14px;padding:10px 0;border-bottom:1px solid var(--border,#334155);font-size:13px;overflow-wrap:anywhere}.rank-records-list time{font-size:11px;color:var(--muted,#a5b4c8)}
.rank-standing-value{display:flex;flex-direction:column;gap:8px}.rank-standing-value>strong{font-size:40px;font-variant-numeric:tabular-nums}.rank-standing-value>span,.rank-standing p{font-size:13px}.rank-standing>a{font-size:13px}.rank-season-stats{line-height:1.7}.rank-ledger ul{list-style:none;padding:0;margin:0;max-height:360px;overflow:auto}.rank-ledger li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--border,#334155);font-size:13px;overflow-wrap:anywhere}.rank-ledger li>span{min-width:0}.rank-ledger li>strong{text-align:right;font-variant-numeric:tabular-nums}.rank-ledger time{display:block;font-size:10px;color:var(--muted,#a5b4c8);margin-top:5px}.rank-ledger .gain{color:#f87171}.rank-ledger .loss{color:#60a5fa}.rank-ledger>p{font-size:13px;line-height:1.7}
.rank-profile-showcase{max-width:100%;min-width:0;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border,#334155)}.rank-profile-showcase .rank-trophy{grid-template-columns:192px minmax(0,1fr);padding:24px;gap:24px}.rank-profile-showcase .rank-trophy h2{font-size:28px}.rank-profile-showcase .rank-trophy-art{min-height:210px}
.rank-hall-empty{text-align:center;padding:36px 20px}.rank-hall-empty>img{display:block;margin:0 auto 16px;max-width:100%;object-fit:contain;filter:drop-shadow(0 0 24px rgba(239,193,99,.12))}.rank-hall-empty>.rank-trophy-kicker{display:block}.rank-hall-empty h2{font-size:24px;letter-spacing:0}.rank-hall-empty p{font-size:13px;line-height:1.7}.rank-hall-empty .rank-trophy-links{justify-content:center;margin-top:22px}
@media(max-width:640px){.rank-card.rank-trophy,.rank-profile-showcase .rank-trophy{grid-template-columns:minmax(0,1fr);padding:22px;gap:20px}.rank-trophy .rank-trophy-art{min-height:208px}.rank-room-grid{grid-template-columns:minmax(0,1fr)}.rank-trophy-links a{flex:1 1 auto}.rank-trophy .rank-trophy-copy{width:100%}.rank-trophy h2{font-size:28px}.rank-records-peak{font-size:18px}.rank-records-heading{gap:8px}.rank-showcase-heading h1{font-size:26px}}
.rank-trophy .rank-trophy-shield{display:inline-block;margin:4px 0 0;padding:5px 8px;border:1px solid rgba(var(--trophy),.3);border-radius:6px;font-size:11px;color:rgb(var(--trophy))}.rank-records .rank-change-kind{font-size:11px;color:var(--muted,#a5b4c8);margin-right:5px}

/* Final optical hierarchy: identity < profile < trophy; existing badge render sizes stay intact. */
.rank-card.rank-trophy{--rank-display-size:208px;--rank-halo:.06}
.rank-trophy[data-tier=gold]{--rank-halo:.16}.rank-trophy[data-tier=platinum]{--rank-halo:.16}.rank-trophy[data-tier=diamond]{--rank-halo:.18}.rank-trophy[data-tier=master]{--rank-halo:.2}.rank-trophy[data-tier=challenger]{--rank-halo:.22}
.rank-trophy .rank-trophy-art{flex-direction:column;gap:12px;background:radial-gradient(ellipse at 50% 43%,rgba(var(--trophy),var(--rank-halo)),transparent 67%);padding-bottom:14px}
.rank-trophy .rank-trophy-art .rank-badge,.rank-trophy .rank-trophy-art img{width:var(--rank-display-size);height:var(--rank-display-size);max-width:100%;object-fit:contain}
.rank-trophy .rank-trophy-inscription{font-size:17px;font-weight:800;letter-spacing:.08em;line-height:1.3;color:rgb(var(--trophy));text-align:center;overflow-wrap:anywhere}
.rank-trophy .rank-progress-fraction{display:block;font-size:11px;color:var(--muted,#a5b4c8);margin-top:6px;font-variant-numeric:tabular-nums}
.rank-trophy-links a{min-height:44px}
.rank-profile-showcase .rank-trophy{--rank-display-size:112px;grid-template-columns:136px minmax(0,1fr);gap:20px}
.rank-profile-showcase .rank-trophy-art{min-height:160px}.rank-profile-showcase .rank-trophy-inscription{font-size:12px}.rank-profile-showcase .rank-trophy-lp strong{font-size:32px}
.rank-room-grid>.rank-records{grid-column:auto}
.rank-hall-empty>.rank-badge{display:flex;width:128px;height:128px;margin:0 auto 16px;filter:drop-shadow(0 0 18px rgba(239,193,99,.12))}
.rank-lp-trend{display:flex;gap:6px;margin:16px 0 0}.rank-lp-step{flex:1;min-width:0;text-align:center;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.rank-lp-step i{display:block;position:relative;height:4px;margin-top:7px;background:var(--border,#334155);border-radius:3px;overflow:hidden}.rank-lp-step i::after{content:'';display:block;width:var(--lp-bar);height:100%;background:currentColor}.rank-ledger .rank-trend-caption{font-size:10px;color:var(--muted,#a5b4c8);margin:6px 0 10px}
@media(max-width:640px){
 .rank-card.rank-trophy{--rank-display-size:160px}
 .rank-trophy .rank-trophy-art{min-height:190px;gap:8px}
 .rank-profile-showcase .rank-trophy{--rank-display-size:112px;grid-template-columns:minmax(0,1fr);gap:14px}
 .rank-profile-showcase .rank-trophy-art{min-height:142px}
 .rank-trophy .rank-trophy-inscription{font-size:15px}
 .rank-profile-showcase .rank-trophy-inscription{font-size:12px}
}

/* Rank-only podium: placement/ranking order and asset leaderboard remain server-owned. */
.rank-leaderboard .rank-board-heading h2{font-size:26px;margin:7px 0 10px;letter-spacing:-.02em}.rank-leaderboard .rank-board-heading>p{font-size:13px;line-height:1.6;margin:6px 0}.rank-leaderboard .rank-board-heading .rank-muted{font-size:11px}.rank-leaderboard .rank-board-heading nav{margin-top:14px}.rank-leaderboard .rank-my-standing strong{margin-left:6px}
.rank-leaderboard .rank-podium-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:26px 0 12px}.rank-leaderboard .rank-podium-heading h3{font-size:14px;margin:0;letter-spacing:.06em}.rank-leaderboard .rank-podium-heading>span{font-size:11px;color:var(--muted,#a5b4c8)}
.rank-leaderboard .rank-podium{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px;align-items:end}
.rank-leaderboard .rank-podium-card{--podium-emblem:64px;min-width:0;min-height:306px;padding:18px 20px 20px;border:1px solid var(--border,#334155);border-top-color:rgba(181,191,208,.5);border-radius:14px;text-align:center;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 50%),var(--panel,#161e2b);scroll-margin-top:90px;position:relative}
.rank-leaderboard .podium-place-1{--podium-emblem:80px;min-height:350px;padding-top:22px;border-color:rgba(221,209,179,.45);background:radial-gradient(ellipse at 50% 24%,rgba(242,238,223,.065),transparent 62%),var(--panel,#161e2b);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 10px 28px rgba(0,0,0,.15)}
.rank-leaderboard .podium-place-3{border-top-color:rgba(169,139,118,.5)}
.rank-leaderboard .rank-podium.classic .podium-place-1{order:2}.rank-leaderboard .rank-podium.classic .podium-place-2{order:1}.rank-leaderboard .rank-podium.classic .podium-place-3{order:3}
.rank-leaderboard .rank-podium-position{display:flex;justify-content:center;align-items:center;gap:6px;min-height:22px;font-size:16px;font-weight:800;color:var(--muted,#a5b4c8)}.rank-leaderboard .podium-place-1 .rank-podium-position{color:#ded5c0;font-size:20px}
.rank-leaderboard .rank-podium-emblem{display:flex;justify-content:center;margin:15px 0 12px}.rank-leaderboard .rank-podium-emblem .rank-badge,.rank-leaderboard .rank-podium-emblem img{width:var(--podium-emblem);height:var(--podium-emblem);object-fit:contain;max-width:100%}
.rank-leaderboard .rank-podium-name{display:block;min-width:0;font-size:18px;line-height:1.45;font-weight:800;color:var(--text,#e7edf5);text-decoration:none;overflow-wrap:anywhere}.rank-leaderboard .podium-place-1 .rank-podium-name{font-size:21px}.rank-leaderboard .rank-podium-name:hover{text-decoration:underline}
.rank-leaderboard .rank-podium-tier{font-size:13px;font-weight:700;margin:7px 0;color:var(--text,#e7edf5)}.rank-leaderboard .rank-podium-lp{margin:7px 0 16px;font-size:11px;color:var(--muted,#a5b4c8)}.rank-leaderboard .rank-podium-lp strong{font-size:24px;line-height:1.2;color:var(--text,#e7edf5);font-variant-numeric:tabular-nums}.rank-leaderboard .podium-place-1 .rank-podium-lp strong{font-size:29px}
.rank-leaderboard .rank-podium-peak{border-top:1px solid var(--border,#334155);padding-top:12px;display:flex;justify-content:center;flex-wrap:wrap;gap:5px 8px;font-size:11px;color:var(--muted,#a5b4c8)}.rank-leaderboard .rank-podium-peak strong{font-weight:600;color:var(--text,#e7edf5)}
.rank-leaderboard .rank-me-tag{display:inline-block;padding:2px 5px;border:1px solid rgba(156,184,255,.4);border-radius:5px;font-size:10px;line-height:1.4;font-weight:600;color:#bed0fa;white-space:nowrap}.rank-leaderboard .rank-podium-card.is-me{box-shadow:inset 0 0 0 1px rgba(156,184,255,.35)}.rank-leaderboard tr.is-me{background:rgba(156,184,255,.07)}
.rank-leaderboard .rank-board-rest{margin-top:26px}.rank-leaderboard .rank-board-rest h3{font-size:13px;color:var(--muted,#a5b4c8)}.rank-leaderboard .rank-board-rest tr{scroll-margin-top:90px}.rank-leaderboard .rank-board-rest .rank-leader-name{min-width:100px;max-width:240px;white-space:normal;overflow-wrap:anywhere}.rank-leaderboard .rank-board-rest td{font-size:12px}.rank-leaderboard .rank-board-rest td small{font-size:10px;color:var(--muted,#a5b4c8)}
.rank-leaderboard a:focus-visible{outline:2px solid var(--text,#e7edf5);outline-offset:3px}.rank-leaderboard .rank-board-empty{padding:28px}.rank-leaderboard .rank-board-empty h3{font-size:18px;line-height:1.5}.rank-leaderboard .rank-board-empty p{font-size:13px;color:var(--muted,#a5b4c8)}
@media(max-width:640px){
 .rank-leaderboard .rank-podium{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch}
 .rank-leaderboard .rank-podium .podium-place-1{grid-column:1/-1;min-height:0}
 .rank-leaderboard .rank-podium.classic .podium-place-1{order:0}.rank-leaderboard .rank-podium.classic .podium-place-2{order:1}.rank-leaderboard .rank-podium.classic .podium-place-3{order:2}
 .rank-leaderboard .rank-podium-card{padding:16px 12px;min-height:0}
 .rank-leaderboard .rank-podium-name{font-size:16px}.rank-leaderboard .rank-podium-peak{flex-direction:column}
 .rank-leaderboard .rank-board-heading h2{font-size:23px}
}
@media(max-width:380px){.rank-leaderboard .rank-podium{grid-template-columns:minmax(0,1fr)}}
.rank-leaderboard .rank-podium:has(>.rank-podium-card:only-child){max-width:420px;margin-inline:auto;grid-template-columns:minmax(0,1fr)}
.rank-leaderboard .rank-scroll:focus-visible{outline:2px solid var(--text,#e7edf5);outline-offset:3px}

/* Compact rank status belongs to the account controls, before notifications. */
.nav-account-rank{display:inline-flex;align-items:center;flex:none;line-height:1}
.nav-right > .rank-top-entry{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;box-sizing:border-box;min-height:30px;padding:0 10px;border:1px solid var(--border,#334155);border-radius:999px;background:var(--panel,#161e2b);color:var(--text,#e7edf5);text-decoration:none;white-space:nowrap;line-height:1.2;font-size:11px;font-weight:600}
.rank-top-state{font:inherit;font-variant-numeric:tabular-nums}
.nav-right > .rank-top-entry:hover{background:rgba(156,184,255,.1);border-color:rgba(156,184,255,.4)}
.nav-right > .rank-top-entry:focus-visible{outline:2px solid #9cb8ff;outline-offset:3px}
@media(max-width:768px){
 .nav-right:has(>.rank-top-entry){gap:6px}
 .nav-right:has(>.rank-top-entry) > .nav-account > .nav-account-trigger{max-width:100%;gap:4px;padding-right:6px}
 .nav-right > .rank-top-entry{min-height:32px;padding-inline:8px;font-size:11px}
 .nav-right:has(>.rank-top-entry) .nav-account-name{max-width:120px}
}
@media(max-width:390px){
 .nav-right:has(>.rank-top-entry) .nav-account-suffix{display:none}
 .nav-right:has(>.rank-top-entry) .nav-account-name{max-width:80px}
}
/* Entry reservations reset at KST midnight; distinct from placement progress. */
.rank-daily{margin:12px 0;padding:10px 0;border-top:1px solid var(--border);font-size:12px;line-height:1.55;overflow-wrap:anywhere}
.rank-daily p{margin:4px 0}.rank-daily progress{display:block;width:100%;height:6px;accent-color:var(--accent)}
.rank-daily small{color:var(--muted)}.rank-daily ul{padding-left:16px;margin:6px 0}
