/* Player profiles share the game's modal, colours and typography. */
#mPlayer{align-items:center;overflow:hidden;background:rgba(3,5,9,.62);backdrop-filter:blur(5px)}
#mPlayer .player-sheet{max-width:850px;max-height:calc(100dvh - 40px);display:flex;flex-direction:column;padding:0;overflow:hidden}
#mPlayer .player-dialog-header{display:flex;align-items:center;gap:10px;padding:20px 24px 16px;flex:none;border-bottom:1px solid var(--line)}
#mPlayer .player-dialog-header h2{flex:1;min-width:0;margin:0;font-size:26px}
#mPlayer .player-back{display:flex;align-items:center;justify-content:center;gap:6px;flex:none;min-height:36px;margin:0}
#mPlayer .player-back svg{width:15px;height:15px}
#mPlayer .player-dialog-header .x{position:static;flex:none;margin:0;width:36px;height:36px}
#mPlayer .player-dialog-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#526045 #141c13;scrollbar-gutter:stable;padding:20px 24px 24px}
#mPlayer .player-profile-status{display:flex;min-height:240px;align-items:center;justify-content:center;flex-direction:column;gap:18px;text-align:center;color:var(--dim);line-height:1.65;padding:24px}
#mPlayer [hidden]{display:none!important}
#mPlayer p,#mPlayer h3,#mPlayer figure{margin:0}
#mPlayer svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#mPlayer button:focus-visible{outline:2px solid var(--amber2);outline-offset:3px}
#mPlayer .profile-identity{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px;border:1px solid #756025;border-radius:16px 16px 0 0;background:radial-gradient(ellipse at 5% 0%,#efbe3814,transparent 75%),linear-gradient(120deg,#29311e,#182215);box-shadow:inset 0 1px 0 #ffe2a318}
#mPlayer .profile-person{display:flex;align-items:center;gap:16px;min-width:0;flex:1}
#mPlayer .profile-avatar{position:relative;flex:none;display:grid;place-items:center;width:60px;height:60px;overflow:hidden;border-radius:50%;border:2px solid #d0aa54;background:linear-gradient(145deg,#ffe7a1,#ce951f);color:#2a210d;font:700 32px var(--disp);box-shadow:0 0 0 4px #bc903112,0 5px 12px #0004}
#mPlayer .profile-avatar img{position:absolute;width:100%;height:100%;object-fit:cover}
#mPlayer .profile-name-block{min-width:0}
#mPlayer .profile-eyebrow{text-transform:uppercase;font:9px var(--mono);letter-spacing:1.4px;color:var(--amber2);margin-bottom:5px}
#mPlayer .profile-eyebrow span{color:var(--dim)}
#mPlayer #playerName{font:700 34px/1.15 var(--disp);color:var(--ink);overflow-wrap:anywhere}
#mPlayer .profile-secured{margin-top:7px;color:var(--dim);font-size:11px;line-height:1.6}
#mPlayer .profile-secured span{padding:0 4px;color:var(--faint)}
#mPlayer .profile-views{display:flex;align-items:center;gap:6px;margin-top:7px;color:var(--dim);font-size:11px;line-height:1.6;font-variant-numeric:tabular-nums}
#mPlayer .profile-views svg{width:15px;height:15px;flex:none;color:var(--amber2)}
#mPlayer .profile-level{display:flex;align-items:center;gap:12px;flex:none;width:215px}
#mPlayer .profile-level-badge{display:flex;align-items:center;flex-direction:column;justify-content:center;flex:none;width:46px;height:60px;border-radius:13px;background:linear-gradient(#ffe8b2,#f6b73c 70%,#bf811c);color:#251b07;box-shadow:inset 0 1px 0 #fffc,0 5px 12px #0003}
#mPlayer .profile-level-badge span{font:700 9px var(--mono);letter-spacing:2px}
#mPlayer .profile-level-badge b{font:700 29px/1.12 var(--disp)}
#mPlayer .profile-level-progress{flex:1;min-width:0}
#mPlayer .profile-level-track{height:8px;background:var(--well);border-radius:8px;overflow:hidden}
#mPlayer .profile-level-track i{display:block;height:100%;background:linear-gradient(90deg,#c4912f,#ffe4a0);border-radius:inherit}
#mPlayer .profile-level-progress p{font-size:10px;color:var(--dim);margin-top:8px;line-height:1.5}
#mPlayer .profile-summary{display:grid;grid-template-columns:1.35fr 1.35fr repeat(4,1fr);border:1px solid var(--line);border-top:0;border-radius:0 0 14px 14px;background:#111a10;overflow:hidden;margin-bottom:18px}
#mPlayer .profile-summary>div{padding:16px 10px;min-width:0}
#mPlayer .profile-summary>div+div{border-left:1px solid #37462f7a}
#mPlayer .profile-wallet{display:flex;justify-content:center;flex-direction:column;gap:5px}
#mPlayer .profile-wallet span,#mPlayer .profile-summary-item span{color:var(--dim);font-size:10px;line-height:1.5}
#mPlayer .profile-wallet strong{font:700 16px var(--mono);color:var(--good);overflow-wrap:anywhere}
#mPlayer .profile-summary-item{text-align:center;display:flex;flex-direction:column;justify-content:center;gap:3px}
#mPlayer .profile-summary-item strong{font:700 21px var(--mono);color:var(--amber2)}
#mPlayer .profile-main-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:16px;align-items:stretch;margin-bottom:18px}
#mPlayer .profile-panel{min-width:0;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,#202c1c,#131d12);padding:20px;box-shadow:inset 0 1px 0 #ffffff07}
#mPlayer .profile-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}
#mPlayer .profile-section-title h2{font:700 23px/1.2 var(--disp);letter-spacing:1.6px;text-transform:uppercase;color:var(--amber2);margin:0}
#mPlayer .profile-section-title>span{font:10px var(--mono);color:var(--dim)}
#mPlayer .profile-record h3,#mPlayer .profile-collection-heading h3{font:400 9px var(--mono);text-transform:uppercase;letter-spacing:1.5px;color:var(--dim);margin-bottom:15px}
#mPlayer .profile-dist-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}
#mPlayer .profile-dist-label{width:14px;text-align:center;font:700 12px var(--mono);color:var(--dim)}
#mPlayer .profile-dist-track{flex:1;height:26px;background:var(--well);border-radius:5px;overflow:hidden}
#mPlayer .profile-dist-fill{height:100%;width:var(--bar-width);min-width:26px;display:flex;justify-content:flex-end;align-items:center;padding-right:8px;border-radius:5px;background:linear-gradient(90deg,#bc851e,#edb83f 60%,#ffd881);color:#2b2007;font:700 11px var(--mono);animation:profile-bar .65s cubic-bezier(.2,.7,.2,1) both}
#mPlayer .profile-dist-fill.is-zero{color:var(--dim);background:transparent}
#mPlayer .is-fail .profile-dist-fill:not(.is-zero){background:linear-gradient(90deg,#76322c,#a74c40);color:#ffd9c9}
#mPlayer .profile-times{display:grid;grid-template-columns:1fr 1fr;gap:16px 10px;margin-top:23px;padding-top:20px;border-top:1px solid var(--line)}
#mPlayer .profile-times div{display:flex;flex-direction:column;gap:6px}
#mPlayer .profile-times span{font-size:10px;color:var(--dim)}
#mPlayer .profile-times strong{font:700 22px var(--mono);color:var(--ink)}
#mPlayer .profile-times div:nth-child(3){grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between}
#mPlayer .profile-times div:nth-child(3) strong{font-size:14px}
#mPlayer .profile-new{margin-bottom:20px;color:var(--dim);font-size:12px;line-height:1.6}
#mPlayer .profile-cabinet{border-color:#675629;background:radial-gradient(ellipse at 50% 35%,#bd902113,transparent 70%),linear-gradient(155deg,#272e1b,#151e12);position:relative}
#mPlayer .profile-trophy-stage{position:relative;min-height:259px}
#mPlayer .profile-trophy{animation:profile-reveal .3s ease both}
#mPlayer .profile-trophy-art{height:152px;display:grid;place-items:center;position:relative;background:radial-gradient(ellipse at 50% 65%,#f6b73c16,transparent 61%)}
#mPlayer .profile-trophy-art img{max-width:70%;width:140px;height:140px;object-fit:contain;filter:drop-shadow(0 7px 11px #0007)}
#mPlayer .profile-trophy.is-legendary .profile-trophy-art{background:radial-gradient(ellipse at 50% 60%,#edc65328,transparent 62%)}
#mPlayer .profile-trophy figcaption{text-align:center;padding:4px 8px 12px;min-height:107px}
#mPlayer .profile-trophy-tag{font:8px var(--mono);text-transform:uppercase;letter-spacing:1.4px;color:#c3ac73}
#mPlayer .profile-trophy h3{font:700 24px/1.2 var(--disp);color:var(--amber2);margin:7px 0}
#mPlayer .profile-trophy p{font-size:11px;line-height:1.65;color:#b1baa1;max-width:330px;margin:auto}
#mPlayer .profile-trophy-arrow{position:absolute;top:60px;display:grid;place-items:center;width:32px;height:32px;padding:0;border-radius:10px;border:1px solid #a98a424d;background:#10190ecc;color:var(--amber2);cursor:pointer;transition:background .2s,border-color .2s}
#mPlayer .profile-trophy-arrow svg{width:17px;height:17px}
#mPlayer .profile-trophy-arrow.previous{left:0}#mPlayer .profile-trophy-arrow.next{right:0}
#mPlayer .profile-collection-heading{display:flex;justify-content:space-between;align-items:center;margin:10px 0 10px;border-top:1px solid #a48a342e;padding-top:16px;gap:8px}
#mPlayer .profile-collection-heading h3{margin:0;font-size:8px;letter-spacing:1px}
#mPlayer .profile-collection-heading>span{font:9px var(--mono);color:var(--dim);white-space:nowrap}
#mPlayer .profile-trophy-thumbnails{display:flex;gap:7px;overflow-x:auto;padding:3px 2px 7px;scrollbar-width:thin;scrollbar-color:#746035 #141b12}
#mPlayer .profile-trophy-thumbnails button{position:relative;display:grid;place-items:center;flex:none;width:48px;height:48px;padding:4px;border:1px solid #495035;border-radius:9px;background:#0d140c;cursor:pointer;transition:border-color .18s,background .18s}
#mPlayer .profile-trophy-thumbnails button[aria-pressed="true"]{border-color:#d0a449;background:#8e73202b;box-shadow:inset 0 0 10px #dcac2920}
#mPlayer .profile-trophy-thumbnails img{width:38px;height:38px;object-fit:contain}
#mPlayer .profile-rare-dot{position:absolute;right:5px;top:5px;width:4px;height:4px;border-radius:50%;background:var(--amber2);box-shadow:0 0 6px var(--amber)}
#mPlayer .profile-cabinet-empty{text-align:center;min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;padding:16px}
#mPlayer .profile-cabinet-empty svg{width:48px;height:48px;color:#ad965e}
#mPlayer .profile-cabinet-empty h3{font:600 24px var(--disp);color:var(--amber2)}
#mPlayer .profile-cabinet-empty p{max-width:280px;font-size:12px;line-height:1.6;color:var(--dim)}
#mPlayer .profile-medal-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
#mPlayer .profile-medal{position:relative;text-align:center;display:flex;flex-direction:column;align-items:center;padding:14px 8px 12px;min-height:161px;border:1px solid #7b6229;border-radius:12px;background:linear-gradient(150deg,#ac8d251b,#1c2415)}
#mPlayer .profile-medal img{object-fit:contain;margin-bottom:9px;filter:drop-shadow(0 3px 4px #0004)}
#mPlayer .profile-medal h3{font-size:11px;line-height:1.4;color:var(--amber2);margin-bottom:5px}
#mPlayer .profile-medal p{font-size:10px;line-height:1.5;color:#a4af97;max-width:160px}
#mPlayer .profile-medal-state{font:7px var(--mono);text-transform:uppercase;letter-spacing:.6px;color:#b6a16e;margin-top:auto;padding-top:10px}
#mPlayer .profile-medal-progress{width:100%;max-width:145px;margin-top:auto;padding-top:10px}
#mPlayer .profile-medal-progress>span{display:block;font:9px var(--mono);color:#b8bea8;margin-bottom:6px}
#mPlayer .profile-medal-progress>div{height:3px;overflow:hidden;border-radius:4px;background:#070d08}
#mPlayer .profile-medal-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#a47c25,#efc869)}
#mPlayer .profile-medal-progress+.profile-medal-state{margin-top:0;padding-top:7px}
#mPlayer .profile-medal.is-earned .profile-medal-progress>span{color:var(--amber2)}
#mPlayer .profile-medal.is-locked{border-style:dashed;border-color:#36422f;background:#121b10}
#mPlayer .profile-medal.is-locked img{filter:grayscale(1);opacity:.36}
#mPlayer .profile-medal.is-locked h3,#mPlayer .profile-medal.is-locked p,#mPlayer .profile-medal.is-locked .profile-medal-state{color:#82907d}
@keyframes profile-bar{from{width:0}}@keyframes profile-reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover) and (pointer:fine){#mPlayer .profile-trophy-arrow:hover{background:#453d24;border-color:#b6974a}#mPlayer .profile-trophy-thumbnails button:hover{border-color:#ae8b40}}
@media(max-width:700px){#mPlayer .profile-identity{align-items:flex-start;flex-direction:column;gap:18px}#mPlayer .profile-level{width:100%;max-width:350px}#mPlayer .profile-summary{grid-template-columns:repeat(4,minmax(0,1fr))}#mPlayer .profile-summary .profile-wallet{grid-column:span 2;border-bottom:1px solid #37462f7a;padding:15px 18px}#mPlayer .profile-wallet strong{font-size:20px}#mPlayer .profile-summary>div:nth-child(3){border-left:0}#mPlayer .profile-main-grid{grid-template-columns:1fr}#mPlayer .profile-medal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:480px){#mPlayer{padding:10px}#mPlayer .player-sheet{max-height:calc(100dvh - 20px);border-radius:20px}#mPlayer .player-dialog-header{padding:18px 18px 14px;gap:8px}#mPlayer .player-dialog-header h2{font-size:23px;letter-spacing:1.7px}#mPlayer .player-back{padding:0;width:36px}#mPlayer .player-back span{display:none}#mPlayer .player-dialog-body{padding:16px 14px 20px;scrollbar-gutter:auto}#mPlayer .profile-identity{padding:18px 15px}#mPlayer .profile-person{gap:12px}#mPlayer .profile-avatar{width:50px;height:50px;font-size:27px}#mPlayer #playerName{font-size:30px}#mPlayer .profile-eyebrow{font-size:8px;letter-spacing:1px}#mPlayer .profile-secured{font-size:10px}#mPlayer .profile-level-badge{width:40px;height:52px;border-radius:11px}#mPlayer .profile-level-badge b{font-size:25px}#mPlayer .profile-summary{margin-bottom:14px}#mPlayer .profile-summary>div{padding:14px 4px}#mPlayer .profile-summary .profile-wallet{padding:14px}#mPlayer .profile-wallet strong{font-size:clamp(13px,4.7vw,19px)}#mPlayer .profile-summary-item strong{font-size:19px}#mPlayer .profile-summary-item span{font-size:9px}#mPlayer .profile-main-grid{gap:14px;margin-bottom:14px}#mPlayer .profile-panel{padding:18px 14px}#mPlayer .profile-section-title h2{font-size:22px}#mPlayer .profile-medal-grid{gap:7px}#mPlayer .profile-medal{padding:13px 5px 11px;min-height:164px}#mPlayer .profile-medal h3{font-size:10px}#mPlayer .profile-medal p{font-size:9px}#mPlayer .profile-medal-state{font-size:6.5px;letter-spacing:0}}
@media(prefers-reduced-motion:reduce){#mPlayer *,#mPlayer *::before,#mPlayer *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
