/* Independent exact-rank and minimum-rank controls. No game asset dependency. */
.rank-picker{position:relative;isolation:isolate;z-index:20}
.rank-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:44px;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel2);color:var(--text);text-align:left;font-size:12px;font-weight:600}
.rank-trigger:hover,.rank-trigger[aria-expanded=true]{border-color:#4f8c78;background:#1a292c}
.rank-chevron{font-size:17px;font-weight:400;color:var(--muted);flex-shrink:0}
.rank-trigger[aria-expanded=true] .rank-chevron{transform:rotate(180deg);color:var(--accent)}
.rank-menu{position:absolute;left:0;top:calc(100% + 8px);width:max(100%,282px);max-width:calc(100vw - 32px);padding:8px;border:1px solid #3a4b5c;border-radius:12px;background:#17212d;box-shadow:0 18px 50px #000a;z-index:100}
.rank-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:5px 9px 12px;border-bottom:1px solid #2a3948;margin-bottom:5px}
.rank-menu-head .eyebrow{font-size:9px;letter-spacing:1.2px}
.rank-menu-head .tiny{margin:0;font-size:9px;white-space:nowrap}
.rank-option-row{display:flex;align-items:center;gap:5px;border-radius:7px;padding:2px 3px;margin:2px 0;border:1px solid transparent}
.rank-option-row.selected{background:#203831;border-color:#385d50}
.rank-name{display:flex;align-items:center;gap:10px;flex:1;min-width:0;min-height:42px;background:transparent;color:#dce6ee;border:0;border-radius:6px;text-align:left;font-size:13px;padding:8px 5px}
.rank-name:hover{background:#283746}
.rank-emblem{display:inline-flex;justify-content:center;align-items:center;min-width:19px;font-size:20px;color:#91a6ba;line-height:1}
.rank-all{font-size:18px}
.rank-name[aria-pressed=true]{color:var(--accent);font-weight:650}
.rank-name[aria-pressed=true] .rank-emblem{color:var(--accent)}
.rank-plus{flex:0 0 42px;min-height:42px;border:1px solid transparent;border-radius:7px;background:transparent;color:#9cafc1;font-size:24px;line-height:1;font-weight:400;padding:5px}
.rank-plus:hover{background:#30483f;color:#b6f6dc;border-color:#486f60}
.rank-plus[aria-pressed=true]{background:var(--accent);color:#123b2e;border-color:var(--accent)}
.rank-menu-foot{margin:7px 8px 3px;border-top:1px solid #2a3948;padding-top:10px;color:#98abba;font-size:10px;line-height:1.65}
.rank-menu-foot strong{color:var(--accent)}
@media(max-width:620px){.rank-trigger{font-size:11px;padding:10px;min-height:44px}.rank-menu{width:280px}.rank-name{font-size:13px}}
