.profile-hero{padding:46px 0 38px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 76% 0,rgba(199,255,50,.11),transparent 28%),linear-gradient(120deg,#0a0e16,#0c1219)}.profile-hero-grid{display:flex;align-items:center;justify-content:space-between;gap:30px}.profile-identity{display:flex;align-items:center;gap:20px}.profile-avatar{position:relative;display:grid;place-items:center;width:86px;height:86px;flex:none;border:1px solid #52662b;background:linear-gradient(145deg,#1e2a18,#111923);color:var(--accent);font:italic 900 25px Impact;box-shadow:inset 0 0 25px rgba(199,255,50,.05)}.profile-avatar:before,.profile-avatar:after{content:"";position:absolute;width:13px;height:2px;background:var(--accent)}.profile-avatar:before{left:-1px;top:-1px}.profile-avatar:after{right:-1px;bottom:-1px}.profile-avatar i{position:absolute;right:6px;bottom:6px;width:9px;height:9px;border:2px solid #121922;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent)}.profile-identity h1{margin:4px 0 2px;font:700 42px "Arial Narrow",Impact,sans-serif;letter-spacing:-.6px}.profile-identity p{margin:0;color:#7d899a;font-size:10px}.profile-summary{display:grid;grid-template-columns:repeat(3,130px);border:1px solid #283443;background:rgba(9,14,21,.7)}.profile-summary>div{display:flex;min-height:69px;flex-direction:column;justify-content:center;padding:10px 16px;border-right:1px solid #283443}.profile-summary>div:last-child{border-right:0}.profile-summary small{color:#748092;font-size:7px;text-transform:uppercase;letter-spacing:.75px}.profile-summary strong{margin-top:3px;font:22px Impact;color:#f1f4f8}.profile-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:22px;align-items:start;padding-top:38px}.profile-sidebar{position:sticky;top:94px;border:1px solid #283342;background:#0d131c}.profile-sidebar-label{display:block;padding:15px 16px;color:#667284;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid #25303e}.profile-sidebar nav{padding:7px}.profile-sidebar nav>a{position:relative;display:flex;align-items:center;gap:11px;min-height:52px;padding:8px 10px;color:#8792a2;border-left:2px solid transparent;transition:.16s}.profile-sidebar nav>a:hover,.profile-sidebar nav>a.active{background:rgba(199,255,50,.055);border-left-color:var(--accent);color:#fff}.profile-sidebar nav>a>i{display:grid;place-items:center;width:27px;height:27px;flex:none;background:#171f2b;color:#839064;font-size:12px;font-style:normal}.profile-sidebar nav>a.active>i{background:var(--accent);color:#0b1008}.profile-sidebar nav>a>span{display:flex;min-width:0;flex-direction:column;font-size:10px;font-weight:800}.profile-sidebar nav>a small{color:#657183;font-size:7px;font-weight:500}.profile-sidebar nav>a>b{display:grid;place-items:center;width:19px;height:19px;margin-left:auto;border-radius:50%;background:var(--red);color:white;font-size:8px}.profile-security{display:flex;flex-direction:column;padding:14px 16px;border-top:1px solid #25303e}.profile-security small{margin-bottom:7px;color:#5f6b7c;font-size:7px;text-transform:uppercase;letter-spacing:.7px}.profile-security a{padding:4px 0;color:#9ba5b3;font-size:9px}.profile-security a:hover{color:var(--accent)}.profile-content{display:flex;min-width:0;flex-direction:column;gap:17px}.profile-panel{scroll-margin-top:100px;border:1px solid #293544;background:#0d131c;box-shadow:0 14px 40px rgba(0,0,0,.12)}.profile-panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;min-height:78px;padding:17px 20px;border-bottom:1px solid #273240;background:linear-gradient(100deg,rgba(199,255,50,.025),transparent 48%)}.profile-panel-head h2{margin:4px 0 0;font:700 23px "Arial Narrow",Impact,sans-serif}.profile-state,.steam-status{display:flex;align-items:center;gap:7px;color:#9dbb65;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.6px}.profile-state i,.steam-status i{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 9px var(--accent)}.profile-form{padding:20px}.profile-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.profile-form label,.quick-team-form label,.steam-form label{display:flex;flex-direction:column}.profile-form label>span,.quick-team-form label>span,.steam-form label>span{margin-bottom:6px;color:#8591a2;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.55px}.profile-form input,.quick-team-form input,.quick-team-form select,.steam-form input,.team-catalog-tools input,.team-catalog-tools select{width:100%;height:43px;padding:8px 11px;border:1px solid #303d4d;background:#0a1018;color:#edf1f6}.profile-form input:focus,.quick-team-form input:focus,.quick-team-form select:focus,.steam-form input:focus,.team-catalog-tools input:focus,.team-catalog-tools select:focus{outline:1px solid var(--accent);border-color:var(--accent)}.profile-form input:disabled{color:#626e7f;background:#0a0f16}.profile-form label small,.steam-form label small{margin-top:4px;color:#5f6b7c;font-size:7px}.profile-form-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:17px;padding-top:15px;border-top:1px solid #232e3c}.profile-form-actions>span{color:#6f7b8c;font-size:8px}.quick-team-form{display:grid;grid-template-columns:1.2fr 1fr 120px 180px auto;align-items:end;gap:10px;padding:16px 20px;border-bottom:1px solid #354423;background:rgba(199,255,50,.035)}.quick-team-form h3{margin:4px 0 0;font-size:15px}.profile-team-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:15px}.profile-team-card{position:relative;display:flex;align-items:center;gap:13px;min-width:0;padding:14px;border:1px solid #2b3746;background:#101722;transition:.17s}.profile-team-card:hover{border-color:#5c7129;transform:translateY(-2px)}.profile-team-mark,.catalog-team-mark{display:grid;place-items:center;width:50px;height:50px;flex:none;background:#1a2430;border:1px solid #354253;color:var(--accent);font:italic 900 14px Impact}.profile-team-card>div{display:flex;min-width:0;flex-direction:column}.profile-team-card small,.catalog-team small{color:#89976c;font-size:7px;text-transform:uppercase;letter-spacing:.65px}.profile-team-card h3{margin:2px 0;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-team-card p,.catalog-team p{margin:0;color:#697587;font-size:8px}.profile-team-card>b{position:absolute;right:11px;top:9px;color:#748093;font-size:6px;letter-spacing:.65px}.profile-team-card>i{margin-left:auto;color:var(--accent);font-style:normal}.profile-empty{display:flex;align-items:center;gap:14px;margin:15px;padding:20px;border:1px dashed #303c4b;background:#0a1018}.profile-empty>span{display:grid;place-items:center;width:43px;height:43px;flex:none;background:#151e29;color:#778497;font-size:18px}.profile-empty>div{display:flex;flex-direction:column}.profile-empty strong{font-size:11px}.profile-empty p{margin:2px 0 0;color:#6e7a8b;font-size:8px}.profile-empty>a{margin-left:auto;color:var(--accent);font-size:8px;font-weight:800;text-transform:uppercase}.profile-empty.compact{margin:0;border:0;border-bottom:1px solid #25303e}.request-counter,.catalog-count{padding:5px 8px;border:1px solid #5b3038;background:rgba(255,77,95,.07);color:#ff8894;font-size:8px;font-weight:800;text-transform:uppercase}.catalog-count{border-color:#3d4b2b;color:#9eaf7d}.catalog-count b{color:var(--accent)}.request-list{display:flex;flex-direction:column}.join-request{display:grid;grid-template-columns:45px minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px 20px;border-bottom:1px solid #25303e}.request-avatar{display:grid;place-items:center;width:43px;height:43px;background:#18222e;color:var(--accent);font-size:10px;font-weight:900}.join-request>div:nth-child(2){display:flex;min-width:0;flex-direction:column}.join-request small{color:#768294;font-size:7px;text-transform:uppercase}.join-request strong{font-size:11px}.join-request p{margin:2px 0 0;color:#6c7889;font-size:8px}.request-actions{display:flex;gap:6px}.request-actions form{margin:0}.outgoing-requests{padding:17px 20px}.outgoing-requests h3{margin:0 0 9px;color:#707c8d;font-size:8px;letter-spacing:.8px}.outgoing-requests>div{display:flex;align-items:center;gap:12px;min-height:38px;border-top:1px solid #222d3a;font-size:9px}.outgoing-requests>div>span{display:flex;flex:1;flex-direction:column;font-weight:700}.outgoing-requests small{color:#637082;font-size:7px}.outgoing-requests b{font-size:7px;text-transform:uppercase}.status-pending{color:#ffbd68}.status-accepted{color:var(--accent)}.status-rejected,.status-cancelled{color:#ff7b87}.outgoing-requests button,.steam-links button{padding:0;border:0;background:none;color:#7f8a9a;font-size:8px;cursor:pointer}.outgoing-requests button:hover,.steam-links button:hover{color:#ff7b87}.team-catalog-tools{display:grid;grid-template-columns:1fr 210px;gap:9px;padding:14px 15px;border-bottom:1px solid #273240}.team-catalog-tools label{position:relative}.team-catalog-tools label>span{position:absolute;left:12px;top:10px;color:#768394}.team-catalog-tools input{padding-left:35px}.team-catalog{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:15px}.catalog-team{display:flex;align-items:center;gap:12px;min-width:0;padding:12px;border:1px solid #293544;background:#0f1620}.catalog-team[hidden]{display:none}.catalog-team-mark{width:43px;height:43px;font-size:12px}.catalog-team>div{display:flex;min-width:0;flex:1;flex-direction:column}.catalog-team strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.catalog-team strong i{color:#758193;font-size:8px;font-style:normal}.catalog-team form{margin:0}.catalog-pending{max-width:112px;padding:6px;border:1px solid #4e5937;background:#182015;color:#a8c46f;font-size:7px;line-height:1.3;cursor:pointer}.catalog-empty{grid-column:1/-1}.steam-panel{background:radial-gradient(circle at 100% 0,rgba(93,120,255,.09),transparent 32%),#0d131c}.steam-status.offline{color:#788495}.steam-status.offline i{background:#5a6676;box-shadow:none}.steam-content{display:flex;align-items:center;gap:18px;padding:20px 20px 8px}.steam-logo{display:grid;place-items:center;width:65px;height:65px;flex:none;border:1px solid #3b4a5e;border-radius:50%;background:#172130;color:#dce5ef;font:900 10px Arial;letter-spacing:1px}.steam-content>div:last-child{display:flex;flex-direction:column}.steam-content strong{font-size:13px}.steam-content p{max-width:620px;margin:4px 0 0;color:#748092;font-size:9px}.steam-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding:12px 20px 20px}.steam-links{display:flex;align-items:center;justify-content:space-between;padding:11px 20px;border-top:1px solid #273240}.steam-links a{color:#98b9e8;font-size:8px;font-weight:800;text-transform:uppercase}.nav-notification{display:grid;place-items:center;min-width:18px;height:18px;margin-left:-3px;padding:0 5px;border-radius:10px;background:var(--red);color:#fff;font-size:8px;font-weight:900;box-shadow:0 0 13px rgba(255,77,95,.28)}
@media(max-width:1050px){.profile-layout{grid-template-columns:200px minmax(0,1fr)}.profile-summary{grid-template-columns:repeat(3,105px)}.quick-team-form{grid-template-columns:1fr 1fr}.quick-team-form>div{grid-column:1/-1}.profile-team-grid,.team-catalog{grid-template-columns:1fr}}
@media(max-width:760px){.profile-hero{padding:30px 0}.profile-hero-grid{align-items:stretch;flex-direction:column}.profile-summary{grid-template-columns:repeat(3,1fr)}.profile-identity h1{font-size:31px}.profile-avatar{width:70px;height:70px}.profile-layout{display:block;padding-top:20px}.profile-sidebar{position:static;margin-bottom:14px}.profile-sidebar-label,.profile-security{display:none}.profile-sidebar nav{display:flex;overflow-x:auto}.profile-sidebar nav>a{min-width:125px;border-left:0;border-bottom:2px solid transparent}.profile-sidebar nav>a.active{border-left:0;border-bottom-color:var(--accent)}.profile-sidebar nav>a small{display:none}.profile-panel-head{align-items:flex-start;flex-direction:column}.profile-form-grid,.team-catalog-tools,.steam-form{grid-template-columns:1fr}.profile-form-actions{align-items:stretch;flex-direction:column}.profile-form-actions .btn,.steam-form .btn{width:100%}.quick-team-form{grid-template-columns:1fr}.profile-team-grid,.team-catalog{padding:9px}.join-request{grid-template-columns:43px 1fr}.request-actions{grid-column:1/-1}.request-actions form,.request-actions .btn{flex:1}.profile-empty{align-items:flex-start;flex-wrap:wrap}.profile-empty>a{width:100%;margin-left:57px}.steam-content{align-items:flex-start}.catalog-team{flex-wrap:wrap}.catalog-team form{width:100%}.catalog-team .btn,.catalog-pending{width:100%;max-width:none}.nav-notification{position:absolute;right:-5px;top:-8px}.user-link{position:relative}}
.team-request-list{display:flex;flex-direction:column;margin:16px 0}.team-request-list>div{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #273240}.team-request-list>div>div:nth-child(2){display:flex;min-width:0;flex:1;flex-direction:column}.team-request-list .request-actions{display:flex;flex:none;gap:4px}.team-request-list .request-actions form{margin:0}.registration-team-required{display:flex;flex:1;flex-direction:column;padding:4px 0}.registration-team-required strong{font-size:11px}.registration-team-required span{color:#748092;font-size:8px}.registration-team-required a{margin-top:3px;color:var(--accent);font-size:8px;font-weight:800;text-transform:uppercase}.profile-avatar img,.avatar-preview img,.request-avatar img,.player-avatar img{width:100%;height:100%;object-fit:cover}.profile-role{display:inline-flex;width:max-content;margin-top:7px;padding:3px 6px;border:1px solid #435064;color:#8e9aaa;font-size:7px;letter-spacing:.7px}.profile-role.admin{border-color:#61323a;background:rgba(255,77,95,.07);color:#ff929c}.avatar-manager{display:grid;grid-template-columns:58px minmax(0,1fr) auto auto;align-items:center;gap:13px;padding:16px 20px;border-bottom:1px solid #273240;background:#0a1119}.avatar-preview{display:grid;place-items:center;width:56px;height:56px;overflow:hidden;border:1px solid #52642d;background:#18222d;color:var(--accent);font:900 14px Impact}.avatar-manager>div{display:flex;flex-direction:column}.avatar-manager strong{font-size:11px}.avatar-manager p{margin:2px 0 0;color:#6f7b8c;font-size:8px}.avatar-manager form{display:flex;align-items:center;gap:6px;margin:0}.avatar-manager input[type=file]{display:none}.avatar-remove{border:0;background:none;color:#ff7f8b;font-size:8px;cursor:pointer}.admin-nav-link{padding:5px 8px;border:1px solid #593039;background:rgba(255,77,95,.06);color:#ff929c;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.65px}@media(max-width:760px){.avatar-manager{grid-template-columns:50px 1fr}.avatar-manager form{grid-column:1/-1}.avatar-manager form .btn{flex:1}.admin-nav-link{display:none}}

.player-hall {
    overflow: hidden;
    border: 1px solid #34412c;
    background:
        radial-gradient(circle at 88% 0, rgba(199, 255, 50, .08), transparent 29%),
        #0d131b;
    box-shadow: 0 18px 46px rgba(0, 0, 0, .16);
}

.player-hall-head {
    display: flex;
    min-height: 88px;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 18px 20px;
    border-bottom: 1px solid #2d382a;
}

.player-hall-head h2 {
    margin: 4px 0 2px;
    font: 700 24px "Arial Narrow", Impact, sans-serif;
}

.player-hall-head p {
    margin: 0;
    color: #738092;
    font-size: 8px;
}

.player-hall-total {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 7px 8px 7px 11px;
    border: 1px solid #506130;
    color: #96a47f;
    font-size: 7px;
    font-weight: 900;
    letter-spacing: .7px;
}

.player-hall-total b {
    display: grid;
    min-width: 25px;
    height: 25px;
    place-items: center;
    background: var(--accent);
    color: #0a0f08;
    font-size: 11px;
}

.player-hall-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-bottom: 1px solid #293429;
}

.player-hall-stats article {
    display: grid;
    min-width: 0;
    grid-template-columns: 35px minmax(0, 1fr);
    grid-template-rows: auto auto;
    align-items: center;
    column-gap: 10px;
    min-height: 70px;
    padding: 12px 15px;
    border-right: 1px solid #293329;
}

.player-hall-stats article:last-child {
    border-right: 0;
}

.player-hall-stats article > span {
    display: grid;
    width: 35px;
    height: 35px;
    grid-row: 1 / 3;
    place-items: center;
    border: 1px solid #526332;
    background: rgba(199, 255, 50, .065);
    color: var(--accent);
    font: 900 12px Impact;
}

.player-hall-stats article > strong {
    align-self: end;
    font: 800 20px/1 "Arial Narrow", Impact, sans-serif;
}

.player-hall-stats article > small {
    align-self: start;
    margin-top: 3px;
    overflow: hidden;
    color: #8995a5;
    font-size: 7px;
    font-weight: 800;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.player-hall-stats .silver > span {
    border-color: #536171;
    background: rgba(201, 211, 223, .07);
    color: #cbd5df;
}

.player-hall-stats .bronze > span {
    border-color: #714d32;
    background: rgba(222, 145, 86, .08);
    color: #df9862;
}

.player-hall-stats .total > span {
    border-color: #3e4b5a;
    background: #151e29;
    color: #8491a2;
}

.player-achievement-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 17px 9px;
    color: #697587;
    font-size: 7px;
}

.player-achievement-head strong {
    color: #aab4c0;
    letter-spacing: .8px;
}

.player-achievement-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 0 17px 17px;
}

.player-achievement {
    display: grid;
    min-width: 0;
    grid-template-columns: 38px minmax(0, 1fr) 13px;
    align-items: center;
    gap: 10px;
    min-height: 66px;
    padding: 9px 11px;
    border: 1px solid #2c3846;
    background: rgba(9, 14, 21, .72);
    transition: border-color .16s, background .16s;
}

.player-achievement:hover {
    border-color: #566b33;
    background: rgba(199, 255, 50, .035);
}

.player-achievement-medal {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid #536332;
    color: var(--accent);
    font: 900 12px Impact;
}

.player-achievement.rank-2 .player-achievement-medal {
    border-color: #556271;
    color: #cbd5df;
}

.player-achievement.rank-3 .player-achievement-medal {
    border-color: #754f33;
    color: #df9862;
}

.player-achievement > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.player-achievement small,
.player-achievement strong,
.player-achievement p {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.player-achievement small {
    color: #7b8798;
    font-size: 7px;
    text-transform: uppercase;
}

.player-achievement strong {
    margin-top: 3px;
    font-size: 10px;
}

.player-achievement p {
    margin: 2px 0 0;
    color: #647082;
    font-size: 7px;
}

.player-achievement > span:last-child {
    color: var(--accent);
}

.player-hall-empty,
.public-player-empty {
    display: flex;
    min-height: 125px;
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 22px;
}

.player-hall-empty > span,
.public-player-empty > span {
    display: grid;
    width: 44px;
    height: 44px;
    flex: none;
    place-items: center;
    border: 1px dashed #485637;
    color: #839063;
    font-size: 18px;
}

.player-hall-empty > div,
.public-player-empty > div {
    display: flex;
    flex-direction: column;
}

.player-hall-empty strong,
.public-player-empty strong {
    font-size: 11px;
}

.player-hall-empty p,
.public-player-empty p {
    max-width: 350px;
    margin: 3px 0 0;
    color: #6e7a8b;
    font-size: 8px;
}

.public-player-hero {
    padding: 28px 0 48px;
    border-bottom: 1px solid #202b37;
    background:
        radial-gradient(circle at 76% 10%, rgba(199, 255, 50, .11), transparent 29%),
        linear-gradient(120deg, #090e15, #0d1419);
}

.public-player-hero-grid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-top: 38px;
}

.public-player-identity {
    display: flex;
    flex: 1 1 auto;
    min-width: 0;
    align-items: center;
    gap: 21px;
}

.public-player-identity-copy {
    min-width: 0;
}

.public-player-avatar {
    position: relative;
    display: grid;
    width: 96px;
    height: 96px;
    overflow: hidden;
    flex: none;
    place-items: center;
    border: 1px solid #52652d;
    background: linear-gradient(145deg, #1e2a18, #111923);
    color: var(--accent);
    font: italic 900 26px Impact;
}

.public-player-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.public-player-avatar i {
    position: absolute;
    right: 7px;
    bottom: 7px;
    width: 10px;
    height: 10px;
    border: 2px solid #121922;
    border-radius: 50%;
    background: var(--accent);
    box-shadow: 0 0 10px var(--accent);
}

.public-player-identity h1 {
    margin: 5px 0 3px;
    font: 700 45px "Arial Narrow", Impact, sans-serif;
}

.public-player-identity p {
    display: flex;
    gap: 7px;
    margin: 0;
    color: #7a8797;
    font-size: 9px;
}

.public-player-identity p b {
    color: #aab5c2;
}

.public-player-links {
    display: flex;
    flex-wrap: wrap;
    gap: 13px;
    margin-top: 10px;
}

.public-player-links a {
    color: #9eaf7c;
    font-size: 8px;
    font-weight: 800;
    text-transform: uppercase;
}

.public-player-links a:hover {
    color: var(--accent);
}

.player-profile-ribbon {
    position: relative;
    display: flex;
    min-height: 54px;
    align-items: center;
    gap: 10px;
    margin-top: 13px;
    padding-top: 10px;
    border-top: 1px solid rgba(70, 83, 98, .55);
}

.player-profile-ribbon-label {
    flex: none;
    color: #677487;
    font-size: 6px;
    font-weight: 900;
    letter-spacing: .7px;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
}

.player-profile-medals {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 3px;
}

.player-profile-medal {
    --profile-medal: #b87a47;
    --profile-medal-glow: rgba(184, 122, 71, .3);
    position: relative;
    z-index: 1;
    display: grid;
    width: 46px;
    height: 46px;
    flex: none;
    place-items: center;
    outline: 0;
}

.player-profile-medal::before {
    position: absolute;
    inset: 8px;
    border-radius: 50%;
    background: radial-gradient(circle, var(--profile-medal-glow), transparent 69%);
    content: "";
    filter: blur(4px);
}

.player-profile-medal img {
    position: relative;
    z-index: 1;
    display: block;
    width: 44px;
    height: 44px;
    object-fit: contain;
    filter: drop-shadow(0 5px 5px rgba(0, 0, 0, .62));
    transition: filter .18s ease, transform .18s ease;
}

.player-profile-medal:hover,
.player-profile-medal:focus-visible {
    z-index: 12;
}

.player-profile-medal:hover img,
.player-profile-medal:focus-visible img {
    filter:
        drop-shadow(0 5px 5px rgba(0, 0, 0, .62))
        drop-shadow(0 0 7px var(--profile-medal-glow));
    transform: translateY(-3px) scale(1.1);
}

.player-profile-medal.rarity-silver {
    --profile-medal: #aeb9c6;
    --profile-medal-glow: rgba(174, 185, 198, .28);
}

.player-profile-medal.rarity-gold {
    --profile-medal: #d6a62d;
    --profile-medal-glow: rgba(214, 166, 45, .34);
}

.player-profile-medal.rarity-legendary {
    --profile-medal: #ff4f73;
    --profile-medal-glow: rgba(255, 79, 115, .35);
}

.player-profile-medal.rarity-special {
    --profile-medal: #bfff29;
    --profile-medal-glow: rgba(191, 255, 41, .3);
}

.player-profile-medal-tooltip {
    position: absolute;
    top: calc(100% + 9px);
    left: 50%;
    display: none;
    width: 210px;
    flex-direction: column;
    padding: 10px 11px;
    border: 1px solid color-mix(in srgb, var(--profile-medal) 52%, #34404d);
    background: #0b121a;
    box-shadow: 0 15px 34px rgba(0, 0, 0, .58);
    color: #e9eef2;
    transform: translateX(-50%);
}

.player-profile-medal-tooltip::before {
    position: absolute;
    bottom: 100%;
    left: 50%;
    width: 8px;
    height: 8px;
    border-top: 1px solid color-mix(in srgb, var(--profile-medal) 52%, #34404d);
    border-left: 1px solid color-mix(in srgb, var(--profile-medal) 52%, #34404d);
    background: #0b121a;
    content: "";
    transform: translate(-50%, 5px) rotate(45deg);
}

.player-profile-medal:hover .player-profile-medal-tooltip,
.player-profile-medal:focus-visible .player-profile-medal-tooltip {
    display: flex;
}

.player-profile-medal-tooltip small {
    color: var(--profile-medal);
    font-size: 6px;
    font-weight: 900;
    letter-spacing: .45px;
    text-transform: uppercase;
}

.player-profile-medal-tooltip strong {
    margin-top: 4px;
    color: #f1f4f7;
    font-size: 10px;
}

.player-profile-medal-tooltip > span {
    margin-top: 4px;
    color: #788697;
    font-size: 7px;
    line-height: 1.4;
}

.player-profile-medal-more {
    display: grid;
    width: 34px;
    height: 34px;
    flex: none;
    margin-left: 3px;
    place-items: center;
    border: 1px solid #46542f;
    background: rgba(191, 255, 41, .045);
    color: var(--accent);
    font-size: 8px;
    font-weight: 900;
}

.player-profile-medal-more:hover {
    border-color: var(--accent);
    background: rgba(191, 255, 41, .1);
}

.player-profile-ribbon-empty {
    color: #637082;
    font-size: 7px;
}

.public-player-summary {
    display: grid;
    grid-template-columns: repeat(4, 108px);
    border: 1px solid #2b3745;
    background: rgba(9, 14, 21, .76);
}

.public-player-summary > div {
    display: flex;
    min-height: 68px;
    flex-direction: column;
    justify-content: center;
    padding: 11px 15px;
    border-right: 1px solid #2b3745;
}

.public-player-summary > div:last-child {
    border-right: 0;
}

.public-player-avatar i.is-playing {
    border-color: #221218;
    background: #ff405d;
    box-shadow: 0 0 13px rgba(255, 64, 93, .9);
    animation: player-live-pulse 1.4s ease-in-out infinite;
}

@keyframes player-live-pulse {
    50% { opacity: .42; transform: scale(.78); }
}

.player-live-card {
    display: grid;
    min-height: 92px;
    align-items: center;
    grid-template-columns: 125px 78px minmax(0, 1fr) auto 34px;
    gap: 16px;
    margin-top: 29px;
    overflow: hidden;
    border: 1px solid rgba(255, 64, 93, .36);
    background:
        linear-gradient(90deg, rgba(255, 64, 93, .07), transparent 38%),
        rgba(7, 11, 17, .82);
    color: #f2f5f8;
    transition: border-color .16s, transform .16s, background .16s;
}

.player-live-card:hover {
    border-color: #ff405d;
    background:
        linear-gradient(90deg, rgba(255, 64, 93, .12), transparent 42%),
        rgba(9, 15, 22, .94);
    transform: translateY(-1px);
}

.player-live-pulse {
    display: flex;
    height: 100%;
    align-items: center;
    gap: 8px;
    justify-content: center;
    border-right: 1px solid rgba(255, 64, 93, .23);
    color: #ff667d;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .7px;
}

.player-live-pulse i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ff405d;
    box-shadow: 0 0 11px #ff405d;
    animation: player-live-pulse 1.4s ease-in-out infinite;
}

.player-live-map {
    display: grid;
    width: 78px;
    height: 58px;
    overflow: hidden;
    place-items: center;
    border: 1px solid #34404c;
    background: #121a24;
}

.player-live-map img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.player-live-map b {
    color: #718095;
    font: 20px Impact;
}

.player-live-main {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.player-live-main small {
    color: #ff7186;
    font-size: 7px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .7px;
}

.player-live-main strong {
    overflow: hidden;
    margin-top: 4px;
    font-size: 15px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.player-live-main span {
    margin-top: 4px;
    color: #8390a0;
    font-size: 9px;
}

.player-live-score {
    display: flex;
    min-width: 92px;
    align-items: flex-end;
    flex-direction: column;
}

.player-live-score small {
    color: #738092;
    font-size: 7px;
}

.player-live-score strong {
    margin-top: 2px;
    font: 25px Impact;
    letter-spacing: 1px;
}

.player-live-arrow {
    color: #ff536d;
    font-weight: 900;
}

.player-offline-state {
    display: flex;
    width: max-content;
    align-items: center;
    gap: 8px;
    margin-top: 22px;
    color: #647183;
    font-size: 8px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .6px;
}

.player-offline-state i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #526071;
}

.public-player-tabs {
    position: relative;
    z-index: 3;
    border-bottom: 1px solid #25313e;
    background: #080d14;
}

.public-player-tabs .shell {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.public-player-tabs button {
    position: relative;
    display: grid;
    min-height: 66px;
    align-items: center;
    grid-template-columns: 31px auto 1fr;
    gap: 10px;
    padding: 0 18px;
    border: 0;
    border-right: 1px solid #202b37;
    background: transparent;
    color: #728094;
    cursor: pointer;
    text-align: left;
}

.public-player-tabs button:first-child {
    border-left: 1px solid #202b37;
}

.public-player-tabs button::after {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 2px;
    background: var(--accent);
    content: "";
    opacity: 0;
    transform: scaleX(.4);
    transition: opacity .16s, transform .16s;
}

.public-player-tabs button:hover,
.public-player-tabs button.is-active {
    background: linear-gradient(90deg, rgba(199, 255, 50, .045), transparent);
    color: #eef3f7;
}

.public-player-tabs button:focus {
    outline: none;
}

.public-player-tabs button:focus-visible {
    background: linear-gradient(90deg, rgba(199, 255, 50, .075), transparent);
    box-shadow: inset 0 0 0 1px rgba(199, 255, 50, .42);
}

.public-player-tabs button.is-active::after {
    opacity: 1;
    transform: scaleX(1);
}

.public-player-tabs button > span {
    color: #5f6d7e;
    font-size: 7px;
    font-weight: 900;
}

.public-player-tabs button.is-active > span,
.public-player-tabs button.is-active > b {
    color: var(--accent);
}

.public-player-tabs button > b {
    font-size: 9px;
    letter-spacing: .4px;
}

.public-player-tabs button > small {
    justify-self: end;
    color: #4f5b6a;
    font-size: 7px;
}

.public-player-content {
    min-height: 480px;
    padding-top: 38px;
    padding-bottom: 70px;
}

.public-player-tab-panel:not(.is-active) {
    display: none;
}

.public-player-overview-stack {
    display: grid;
    gap: 30px;
}

.player-progress {
    border: 1px solid #2a3542;
    background:
        radial-gradient(circle at 100% 0, rgba(199, 255, 50, .045), transparent 31%),
        #0a1018;
}

.player-progress-head,
.player-tab-heading {
    display: flex;
    min-height: 105px;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 20px 24px;
    border-bottom: 1px solid #283440;
}

.player-progress-head h2,
.player-tab-heading h2 {
    margin: 4px 0 0;
    font: 26px "Arial Narrow", Impact, sans-serif;
}

.player-progress-head p,
.player-tab-heading p {
    margin: 5px 0 0;
    color: #6e7b8b;
    font-size: 8px;
}

.player-progress-total {
    padding: 10px 12px;
    border: 1px solid #455529;
    color: #8e9d76;
    font-size: 7px;
    font-weight: 900;
}

.player-progress-total b {
    color: var(--accent);
    font-size: 15px;
}

.player-progress-summary {
    display: flex;
    align-items: stretch;
    gap: 8px;
}

.player-progress-points {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 12px;
    border: 1px solid #36475a;
    background: rgba(17, 27, 39, .72);
    color: #718095;
    font-size: 7px;
    font-weight: 900;
}

.player-progress-points b {
    color: #f4f7fa;
    font-size: 15px;
}

.player-awards-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 17px 24px 10px;
}

.player-awards-heading strong {
    color: var(--accent);
    font-size: 8px;
    letter-spacing: .75px;
}

.player-awards-heading span {
    color: #576474;
    font-size: 7px;
}

.player-awards-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 0 24px 20px;
}

.player-award-card {
    display: grid;
    min-height: 78px;
    align-items: center;
    grid-template-columns: 48px minmax(0, 1fr) 18px;
    gap: 13px;
    padding: 12px;
    border: 1px solid #39442f;
    background: linear-gradient(105deg, rgba(199, 255, 50, .075), rgba(12, 18, 26, .8));
    color: #edf2f5;
    transition: border-color .16s, transform .16s;
}

.player-award-card:hover {
    border-color: var(--accent);
    transform: translateY(-1px);
}

.player-award-card > span {
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border: 1px solid #647a31;
    background: rgba(199, 255, 50, .08);
    color: var(--accent);
    font: 20px Impact;
}

.player-award-card > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.player-award-card small {
    overflow: hidden;
    color: #7f8c9b;
    font-size: 7px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.player-award-card strong {
    margin-top: 3px;
    font-size: 12px;
}

.player-award-card p {
    margin: 4px 0 0;
    color: #91a170;
    font-size: 7px;
}

.player-award-card > i {
    color: var(--accent);
    font-style: normal;
}

.player-tournament-trophies {
    position: relative;
    z-index: 4;
    margin: 22px 24px 0;
    border: 1px solid #3a3428;
    background:
        radial-gradient(circle at 50% 120%, rgba(214, 166, 45, .09), transparent 48%),
        linear-gradient(110deg, rgba(255, 185, 54, .025), transparent 44%),
        #090f16;
}

.player-public-trophy-stage {
    margin: 0;
}

.player-tournament-empty {
    min-height: 174px;
}

.profile-dashboard-progress {
    scroll-margin-top: 100px;
}

.player-tournament-trophies > header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 14px 18px;
    border-bottom: 1px solid #302f2c;
}

.player-tournament-trophies > header > div {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.player-tournament-trophies > header span {
    color: #e1ae36;
    font-size: 7px;
    font-weight: 900;
    letter-spacing: .7px;
}

.player-tournament-trophies > header strong {
    font: 17px "Arial Narrow", Impact, sans-serif;
}

.player-tournament-trophies > header small {
    color: #6c7280;
    font-size: 7px;
}

.player-tournament-trophy-grid {
    display: flex;
    min-height: 205px;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0 12px;
}

.player-tournament-trophy {
    --medal: #aeb9c6;
    --medal-light: #edf4fa;
    --medal-glow: rgba(174, 185, 198, .2);
    position: relative;
    width: 190px;
    flex: 0 1 190px;
    border-right: 1px solid #222b35;
    border-left: 1px solid #222b35;
}

.player-tournament-trophy + .player-tournament-trophy {
    margin-left: -1px;
}

.player-tournament-trophy > summary {
    position: relative;
    display: flex;
    min-height: 205px;
    align-items: center;
    flex-direction: column;
    padding: 12px 12px 17px;
    overflow: hidden;
    cursor: help;
    list-style: none;
    text-align: center;
}

.player-tournament-trophy > summary::-webkit-details-marker {
    display: none;
}

.player-tournament-trophy > summary::after {
    position: absolute;
    right: 24px;
    bottom: 0;
    left: 24px;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--medal), transparent);
    content: "";
    opacity: .65;
}

.player-tournament-trophy-image {
    position: relative;
    display: grid;
    width: 132px;
    height: 132px;
    place-items: center;
}

.player-tournament-trophy-image::before {
    position: absolute;
    inset: 17px;
    border-radius: 50%;
    background: radial-gradient(circle, var(--medal-glow), transparent 67%);
    content: "";
}

.player-tournament-trophy-image img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter:
        drop-shadow(0 9px 10px rgba(0, 0, 0, .62))
        drop-shadow(0 0 5px var(--medal-glow));
    transition: filter .18s, transform .18s;
}

.player-tournament-trophy:hover .player-tournament-trophy-image img,
.player-tournament-trophy[open] .player-tournament-trophy-image img {
    filter:
        drop-shadow(0 9px 10px rgba(0, 0, 0, .62))
        drop-shadow(0 0 13px var(--medal-glow));
    transform: translateY(-3px) scale(1.04);
}

.player-tournament-trophy > summary > small {
    color: var(--medal);
    font-size: 6px;
    font-weight: 900;
    letter-spacing: .6px;
}

.player-tournament-trophy > summary > strong {
    max-width: 100%;
    margin-top: 4px;
    overflow: hidden;
    color: #f0f3f6;
    font-size: 11px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.player-tournament-trophy > summary > em {
    position: absolute;
    top: 13px;
    right: 13px;
    display: grid;
    min-width: 25px;
    height: 25px;
    place-items: center;
    border: 1px solid color-mix(in srgb, var(--medal) 50%, transparent);
    background: #0c131c;
    color: var(--medal-light);
    font-size: 8px;
    font-style: normal;
    font-weight: 900;
}

.player-tournament-trophy-popover {
    position: absolute;
    top: calc(100% - 4px);
    left: 50%;
    z-index: 20;
    display: none;
    width: 330px;
    border: 1px solid color-mix(in srgb, var(--medal) 48%, #34404d);
    background: #0d141d;
    box-shadow: 0 20px 45px rgba(0, 0, 0, .58);
    transform: translateX(-50%);
}

.player-tournament-trophy:hover > .player-tournament-trophy-popover,
.player-tournament-trophy:focus-within > .player-tournament-trophy-popover,
.player-tournament-trophy[open] > .player-tournament-trophy-popover {
    display: block;
}

.player-tournament-trophy-popover > header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 11px 12px;
    border-bottom: 1px solid #283440;
}

.player-tournament-trophy-popover > header span {
    color: #eef3f6;
    font-size: 10px;
    font-weight: 900;
}

.player-tournament-trophy-popover > header b {
    color: var(--medal);
    font-size: 7px;
    text-transform: uppercase;
}

.player-tournament-trophy-popover > div {
    display: flex;
    max-height: 245px;
    flex-direction: column;
    overflow-y: auto;
}

.player-tournament-trophy-popover a {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 16px;
    gap: 5px 10px;
    padding: 11px 12px;
    border-bottom: 1px solid #222d39;
    color: #e9eef2;
}

.player-tournament-trophy-popover a:last-child {
    border-bottom: 0;
}

.player-tournament-trophy-popover a:hover {
    background: color-mix(in srgb, var(--medal-glow) 48%, transparent);
}

.player-tournament-trophy-popover a > span {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.player-tournament-trophy-popover a strong {
    overflow: hidden;
    font-size: 9px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.player-tournament-trophy-popover a small {
    flex: none;
    color: #697789;
    font-size: 6px;
}

.player-tournament-trophy-popover a p {
    grid-column: 1;
    margin: 0;
    color: #8290a0;
    font-size: 7px;
}

.player-tournament-trophy-popover a > i {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: center;
    color: var(--medal);
    font-style: normal;
}

.player-medal-showcase {
    margin: 22px 24px 24px;
    border: 1px solid #34412e;
    background:
        linear-gradient(90deg, transparent 0 5%, rgba(199, 255, 50, .035) 50%, transparent 95%),
        #080e15;
}

.player-medal-showcase > header,
.player-achievement-catalog-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 14px 18px;
    border-bottom: 1px solid #283440;
}

.player-medal-showcase > header > div,
.player-achievement-catalog-head > div {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.player-medal-showcase > header span,
.player-achievement-catalog-head span {
    color: var(--accent);
    font-size: 7px;
    font-weight: 900;
    letter-spacing: .7px;
}

.player-medal-showcase > header strong,
.player-achievement-catalog-head strong {
    font: 17px "Arial Narrow", Impact, sans-serif;
}

.player-medal-showcase > header small,
.player-achievement-catalog-head small {
    color: #647183;
    font-size: 7px;
}

.player-medal-showcase-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    background: linear-gradient(90deg, transparent, rgba(42, 53, 66, .5), transparent);
}

.player-showcase-medal {
    --medal: #b87a47;
    --medal-light: #edb476;
    --medal-glow: rgba(184, 122, 71, .24);
    position: relative;
    display: flex;
    width: 182px;
    min-width: 0;
    min-height: 208px;
    flex: 1 1 150px;
    max-width: 190px;
    align-items: center;
    flex-direction: column;
    padding: 14px 10px 16px;
    border-left: 1px solid #202b36;
    overflow: hidden;
    text-align: center;
}

.player-showcase-medal:last-child {
    border-right: 1px solid #202b36;
}

.player-showcase-medal::before {
    position: absolute;
    right: 14%;
    bottom: 46px;
    left: 14%;
    height: 34px;
    border-radius: 50%;
    background: radial-gradient(ellipse, var(--medal-glow), transparent 68%);
    content: "";
    filter: blur(7px);
}

.player-showcase-medal-image {
    position: relative;
    display: grid;
    width: 128px;
    max-width: 100%;
    height: 128px;
    flex: none;
    place-items: center;
}

.player-showcase-medal-image::before {
    position: absolute;
    inset: 12px;
    border: 1px solid color-mix(in srgb, var(--medal) 25%, transparent);
    border-radius: 50%;
    background: radial-gradient(circle, var(--medal-glow), transparent 66%);
    content: "";
}

.player-showcase-medal-image .player-achievement-art {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 8px 10px rgba(0, 0, 0, .55));
    transition: filter .2s, transform .2s;
}

.player-showcase-medal:hover .player-showcase-medal-image .player-achievement-art {
    filter:
        drop-shadow(0 8px 10px rgba(0, 0, 0, .55))
        drop-shadow(0 0 10px var(--medal-glow));
    transform: translateY(-3px) scale(1.035);
}

.player-showcase-medal-image i {
    position: absolute;
    right: 17%;
    bottom: 6px;
    left: 17%;
    z-index: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--medal), transparent);
    box-shadow: 0 0 8px var(--medal-glow);
}

.player-showcase-medal > small {
    color: var(--medal);
    font-size: 6px;
    font-weight: 900;
    letter-spacing: .55px;
    text-transform: uppercase;
}

.player-showcase-medal > strong {
    max-width: 100%;
    margin-top: 4px;
    overflow: hidden;
    color: #eef2f5;
    font-size: 10px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.player-showcase-medal > span:last-child {
    margin-top: 4px;
    color: #627082;
    font-size: 6px;
}

.player-medal-showcase-empty {
    display: flex;
    min-height: 126px;
    align-items: center;
    justify-content: center;
    gap: 14px;
    color: #768394;
}

.player-medal-showcase-empty > span {
    display: grid;
    width: 50px;
    height: 50px;
    place-items: center;
    border: 1px dashed #425062;
    color: #7d8ea2;
    font-size: 22px;
}

.player-medal-showcase-empty strong {
    display: block;
    color: #dde3e8;
    font-size: 11px;
}

.player-medal-showcase-empty p {
    margin: 4px 0 0;
    color: #647183;
    font-size: 7px;
}

.player-achievement-catalog-head {
    border-top: 1px solid #283440;
}

.player-progress-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    background: #283440;
}

.player-progress-card {
    --medal: #b87a47;
    --medal-light: #edb476;
    --medal-dark: #5e301d;
    --medal-glow: rgba(184, 122, 71, .24);
    position: relative;
    display: grid;
    min-height: 208px;
    grid-template-columns: 96px minmax(0, 1fr);
    grid-template-rows: 1fr auto;
    gap: 14px;
    padding: 18px 18px 20px;
    overflow: hidden;
    background:
        radial-gradient(circle at 12% 12%, var(--medal-glow), transparent 33%),
        #0b1119;
    transition: background .2s, transform .2s;
}

.player-progress-card::before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--medal), transparent);
    content: "";
    opacity: .22;
}

.player-progress-card.rarity-silver,
.player-tournament-trophy.rarity-silver,
.player-showcase-medal.rarity-silver {
    --medal: #aeb9c6;
    --medal-light: #edf4fa;
    --medal-dark: #4d5967;
    --medal-glow: rgba(174, 185, 198, .2);
}

.player-progress-card.rarity-gold,
.player-tournament-trophy.rarity-gold,
.player-showcase-medal.rarity-gold {
    --medal: #d6a62d;
    --medal-light: #ffe279;
    --medal-dark: #74500b;
    --medal-glow: rgba(214, 166, 45, .25);
}

.player-progress-card.rarity-legendary,
.player-tournament-trophy.rarity-legendary,
.player-showcase-medal.rarity-legendary {
    --medal: #ff4f73;
    --medal-light: #ffb46a;
    --medal-dark: #701d49;
    --medal-glow: rgba(255, 79, 115, .28);
}

.player-progress-card.rarity-special,
.player-showcase-medal.rarity-special {
    --medal: #bfff29;
    --medal-light: #efffae;
    --medal-dark: #4c6811;
    --medal-glow: rgba(191, 255, 41, .22);
}

.player-progress-card.is-locked {
    background:
        radial-gradient(circle at 12% 12%, rgba(92, 108, 125, .08), transparent 33%),
        #091018;
}

.player-progress-card.is-unlocked:hover {
    background:
        radial-gradient(circle at 12% 12%, var(--medal-glow), transparent 38%),
        #0d141d;
    transform: translateY(-2px);
}

.player-achievement-medal {
    position: relative;
    display: grid;
    width: 96px;
    height: 116px;
    align-self: start;
    place-items: center;
}

.player-achievement-medal::before {
    position: absolute;
    inset: 16px 6px 4px;
    border-radius: 50%;
    background: radial-gradient(ellipse, var(--medal-glow), transparent 67%);
    content: "";
    filter: blur(5px);
}

.player-achievement-medal .player-achievement-art {
    position: relative;
    z-index: 1;
    display: block;
    width: 96px;
    height: 96px;
    object-fit: contain;
    filter: drop-shadow(0 7px 8px rgba(0, 0, 0, .62));
}

.player-achievement-medal > i {
    position: absolute;
    right: 14px;
    bottom: 7px;
    left: 14px;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--medal), transparent);
    box-shadow: 0 0 8px var(--medal-glow);
}

.player-progress-card.is-locked .player-achievement-medal {
    filter: grayscale(.9);
    opacity: .3;
}

.player-progress-card.is-unlocked .player-achievement-medal {
    animation: player-medal-arrive .5s ease-out both;
}

@keyframes player-medal-arrive {
    from { opacity: .2; transform: translateY(7px) scale(.9); }
    to { opacity: 1; transform: none; }
}

.player-progress-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.player-achievement-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}

.player-achievement-meta small {
    color: #596777;
    font-size: 7px;
    font-weight: 900;
    letter-spacing: .6px;
}

.player-achievement-meta em {
    padding: 3px 5px;
    border: 1px solid color-mix(in srgb, var(--medal) 58%, transparent);
    color: var(--medal);
    font-size: 6px;
    font-style: normal;
    font-weight: 900;
    letter-spacing: .45px;
    text-transform: uppercase;
}

.player-progress-card.is-unlocked .player-achievement-meta small {
    color: var(--medal-light);
}

.player-progress-copy strong {
    margin-top: 7px;
    color: #f1f4f7;
    font-size: 13px;
}

.player-progress-copy p {
    margin: 5px 0 0;
    color: #697687;
    font-size: 8px;
    line-height: 1.45;
}

.player-achievement-points {
    position: absolute;
    top: 13px;
    right: 14px;
    color: #566474;
    font-size: 7px;
    font-weight: 900;
}

.player-progress-card.is-unlocked .player-achievement-points {
    color: var(--medal);
}

.player-progress-meter {
    position: absolute;
    right: 20px;
    bottom: 20px;
    left: 20px;
    height: 3px;
    overflow: hidden;
    background: #1a2531;
}

.player-progress-meter i {
    display: block;
    height: 100%;
    background: var(--medal);
    box-shadow: 0 0 8px var(--medal-glow);
}

.player-progress-value {
    position: absolute;
    right: 20px;
    bottom: 29px;
    color: #788697;
    font-size: 7px;
    font-weight: 800;
}

.player-tab-heading {
    min-height: 116px;
    margin-bottom: 16px;
    border: 1px solid #293542;
    background:
        radial-gradient(circle at 88% 10%, rgba(199, 255, 50, .05), transparent 30%),
        #0a1018;
}

.player-tab-stats {
    display: grid;
    grid-template-columns: repeat(3, 96px);
    border: 1px solid #34402f;
}

.player-tab-stats span {
    display: flex;
    min-height: 58px;
    flex-direction: column;
    justify-content: center;
    padding: 9px 13px;
    border-right: 1px solid #34402f;
}

.player-tab-stats span:last-child {
    border-right: 0;
}

.player-tab-stats small {
    color: #728092;
    font-size: 7px;
    text-transform: uppercase;
}

.player-tab-stats strong {
    margin-top: 3px;
    font: 19px Impact;
}

.player-custom-match-list,
.player-team-tournament-list {
    display: grid;
    gap: 10px;
}

.player-custom-match {
    display: grid;
    min-height: 90px;
    align-items: center;
    grid-template-columns: 104px 92px minmax(0, 1fr) 92px 24px;
    gap: 16px;
    padding: 10px 17px 10px 10px;
    border: 1px solid #293542;
    background: #0a1018;
    color: #edf2f5;
    transition: border-color .16s, transform .16s;
}

.player-custom-match:hover,
.player-team-tournament:hover {
    border-color: #53652e;
    transform: translateX(2px);
}

.player-custom-map {
    position: relative;
    display: grid;
    width: 104px;
    height: 68px;
    overflow: hidden;
    place-items: center;
    border: 1px solid #344150;
    background: #111a24;
}

.player-custom-map img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.player-custom-map b {
    color: #69778a;
    font: 21px Impact;
}

.player-custom-map small {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 4px 6px;
    background: rgba(5, 8, 13, .82);
    color: #fff;
    font-size: 7px;
    font-weight: 800;
}

.player-custom-result {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}

.player-custom-result small {
    font-size: 7px;
    font-weight: 900;
}

.player-custom-result strong {
    margin-top: 4px;
    font: 23px Impact;
}

.player-custom-result.win {
    color: var(--accent);
}

.player-custom-result.loss {
    color: #ff6578;
}

.player-custom-info {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.player-custom-info small,
.player-custom-info span {
    overflow: hidden;
    color: #6c798a;
    font-size: 8px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.player-custom-info strong {
    overflow: hidden;
    margin: 5px 0;
    font-size: 13px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.player-custom-date {
    display: flex;
    flex-direction: column;
    color: #8390a0;
    font-size: 8px;
    text-align: right;
}

.player-custom-date small {
    margin-top: 3px;
    color: #566373;
}

.player-custom-match > i,
.player-team-tournament > i {
    color: var(--accent);
    font-style: normal;
}

.player-history-limit {
    margin: 14px 0 0;
    color: #657283;
    font-size: 8px;
    text-align: right;
}

.public-player-empty.large {
    min-height: 250px;
    justify-content: center;
    border: 1px dashed #334050;
}

.player-team-tournament {
    display: grid;
    min-height: 88px;
    align-items: center;
    grid-template-columns: 58px minmax(0, 1fr) 76px 24px;
    gap: 16px;
    padding: 14px 17px;
    border: 1px solid #293542;
    background: #0a1018;
    color: #edf2f5;
    transition: border-color .16s, transform .16s;
}

.player-team-event {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border: 1px solid #46572d;
    background: rgba(199, 255, 50, .05);
    color: var(--accent);
    font: 15px Impact;
}

.player-team-event-info {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.player-team-event-info small {
    color: #748193;
    font-size: 7px;
    text-transform: uppercase;
}

.player-team-event-info small i {
    color: #9bbd50;
    font-style: normal;
}

.player-team-event-info strong {
    overflow: hidden;
    margin: 5px 0;
    font-size: 13px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.player-team-event-info > span {
    color: #687687;
    font-size: 8px;
}

.player-team-placement {
    display: flex;
    min-height: 52px;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    border-left: 1px solid #2a3542;
}

.player-team-placement small {
    color: #657283;
    font-size: 6px;
}

.player-team-placement strong {
    margin-top: 3px;
    color: var(--accent);
    font: 18px Impact;
}

.player-current-teams {
    margin-top: 42px;
    padding-top: 34px;
    border-top: 1px solid #293542;
}

@media (max-width: 980px) {
    .public-player-summary {
        grid-template-columns: repeat(4, 1fr);
    }

    .player-progress-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .player-medal-showcase-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .player-showcase-medal:nth-child(3n) {
        border-right: 0;
    }

    .player-showcase-medal:nth-child(n+4) {
        border-top: 1px solid #202b36;
    }

    .public-player-tabs button {
        grid-template-columns: 25px auto;
    }

    .public-player-tabs button > small {
        display: none;
    }
}

@media (max-width: 760px) {
    .player-live-card {
        grid-template-columns: 1fr auto 20px;
        padding: 14px;
    }

    .player-live-pulse,
    .player-live-map {
        display: none;
    }

    .public-player-tabs .shell {
        padding: 0;
    }

    .public-player-tabs button {
        min-height: 55px;
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 2px;
        padding: 8px 5px;
        text-align: center;
    }

    .public-player-tabs button > span {
        display: none;
    }

    .public-player-tabs button > b {
        font-size: 8px;
    }

    .player-progress-head,
    .player-tab-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .player-progress-summary {
        width: 100%;
    }

    .player-progress-summary > span {
        flex: 1;
        justify-content: center;
    }

    .player-awards-grid,
    .player-progress-grid {
        grid-template-columns: 1fr;
    }

    .player-medal-showcase {
        margin-right: 14px;
        margin-left: 14px;
    }

    .player-tournament-trophies {
        margin-right: 14px;
        margin-left: 14px;
    }

    .player-tournament-trophies > header {
        align-items: flex-start;
        flex-direction: column;
    }

    .player-tournament-trophy-grid {
        padding: 0;
    }

    .player-tournament-trophy {
        width: 100%;
        flex-basis: 100%;
        border-right: 0;
        border-bottom: 1px solid #222b35;
        border-left: 0;
    }

    .player-tournament-trophy:last-child {
        border-bottom: 0;
    }

    .player-tournament-trophy + .player-tournament-trophy {
        margin-left: 0;
    }

    .player-tournament-trophy > summary {
        min-height: 126px;
        align-items: center;
        flex-direction: row;
        gap: 12px;
        padding: 8px 55px 8px 14px;
        text-align: left;
    }

    .player-tournament-trophy-image {
        width: 104px;
        height: 104px;
        flex: none;
    }

    .player-tournament-trophy > summary > small {
        display: none;
    }

    .player-tournament-trophy > summary > strong {
        margin-top: 0;
        font-size: 12px;
    }

    .player-tournament-trophy-popover {
        position: static;
        width: auto;
        border-right: 0;
        border-left: 0;
        box-shadow: inset 0 12px 24px rgba(0, 0, 0, .25);
        transform: none;
    }

    .player-medal-showcase > header,
    .player-achievement-catalog-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .player-medal-showcase-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .player-showcase-medal:nth-child(3n) {
        border-right: 1px solid #202b36;
    }

    .player-showcase-medal:nth-child(even) {
        border-right: 0;
    }

    .player-showcase-medal:nth-child(n+3) {
        border-top: 1px solid #202b36;
    }

    .player-awards-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .player-tab-stats {
        width: 100%;
        grid-template-columns: repeat(3, 1fr);
    }

    .player-custom-match {
        grid-template-columns: 78px 62px minmax(0, 1fr) 17px;
        gap: 10px;
    }

    .player-custom-map {
        width: 78px;
        height: 60px;
    }

    .player-custom-date {
        display: none;
    }
}

@media (max-width: 520px) {
    .public-player-summary {
        grid-template-columns: repeat(2, 1fr);
    }

    .public-player-summary > div:nth-child(2) {
        border-right: 0;
    }

    .public-player-summary > div:nth-child(-n+2) {
        border-bottom: 1px solid #2b3745;
    }

    .public-player-tabs button > b {
        font-size: 7px;
    }

    .player-progress-summary {
        align-items: stretch;
        flex-direction: column;
    }

    .player-progress-card {
        min-height: 194px;
        grid-template-columns: 82px minmax(0, 1fr);
        gap: 12px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .player-achievement-medal {
        width: 82px;
        height: 103px;
    }

    .player-achievement-medal .player-achievement-art {
        width: 82px;
        height: 82px;
    }

    .player-showcase-medal {
        min-height: 190px;
    }

    .player-showcase-medal-image {
        width: 112px;
        height: 112px;
    }

    .player-live-score {
        min-width: 62px;
    }

    .player-live-score strong {
        font-size: 20px;
    }

    .player-custom-match {
        grid-template-columns: 58px minmax(0, 1fr) 17px;
    }

    .player-custom-map {
        width: 58px;
        height: 58px;
    }

    .player-custom-result {
        grid-column: 1;
        grid-row: 2;
    }

    .player-custom-info {
        grid-column: 2;
        grid-row: 1 / span 2;
    }

    .player-team-tournament {
        grid-template-columns: 46px minmax(0, 1fr) 20px;
        gap: 10px;
        padding: 12px;
    }

    .player-team-event {
        width: 44px;
        height: 44px;
    }

    .player-team-placement {
        display: none;
    }
}

.public-player-summary small {
    color: #748092;
    font-size: 7px;
    text-transform: uppercase;
    letter-spacing: .65px;
}

.public-player-summary strong {
    margin-top: 3px;
    font: 22px Impact;
}

.public-player-hall-section {
    padding-bottom: 18px;
}

.public-player-activity-section {
    padding-top: 18px;
    padding-bottom: 32px;
}

.public-player-teams-section {
    padding-top: 32px;
}

.public-player-count {
    padding: 7px 9px;
    border: 1px solid #43522e;
    color: #9bab7d;
    font-size: 8px;
    font-weight: 900;
}

.roster-player-name {
    color: inherit;
    transition: color .15s;
}

.roster-player-name:hover {
    color: var(--accent);
}

.roster-list .player-avatar {
    transition: border-color .15s, transform .15s;
}

.roster-list .player-avatar:hover {
    border-color: var(--accent);
    transform: translateY(-1px);
}

@media (max-width: 900px) {
    .public-player-hero-grid {
        align-items: stretch;
        flex-direction: column;
    }

    .public-player-summary {
        grid-template-columns: repeat(3, 1fr);
    }

    .player-achievement-list {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .public-player-identity {
        align-items: flex-start;
    }

    .public-player-avatar {
        width: 76px;
        height: 76px;
        font-size: 21px;
    }

    .public-player-identity h1 {
        font-size: 34px;
    }

    .player-profile-ribbon {
        max-width: calc(100vw - 122px);
        align-items: flex-start;
    }

    .player-profile-medals {
        padding-bottom: 5px;
        overflow-x: auto;
    }

    .player-profile-medal-tooltip {
        display: none !important;
    }

    .public-player-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .public-player-summary > div {
        min-height: 52px;
        border-right: 1px solid #2b3745;
        border-bottom: 0;
    }

    .public-player-summary > div:nth-child(even) {
        border-right: 0;
    }

    .public-player-summary > div:nth-child(-n+2) {
        border-bottom: 1px solid #2b3745;
    }

    .player-hall-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .player-hall-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .player-hall-stats article:nth-child(2) {
        border-right: 0;
    }

    .player-hall-stats article:nth-child(-n+2) {
        border-bottom: 1px solid #293329;
    }

    .player-achievement-head {
        align-items: flex-start;
        gap: 4px;
        flex-direction: column;
    }
}
.telegram-panel{background:radial-gradient(circle at 100% 0,rgba(42,171,238,.11),transparent 34%),#0d131c}.telegram-content{display:flex;align-items:center;gap:18px;padding:20px}.telegram-logo{display:grid;place-items:center;width:65px;height:65px;flex:none;border:1px solid #2a8fbd;border-radius:50%;background:linear-gradient(145deg,#29a9e9,#1578ab);color:#fff;font-size:26px;transform:rotate(-8deg);box-shadow:0 10px 28px rgba(42,171,238,.16)}.telegram-content>div:last-child{display:flex;min-width:0;flex-direction:column}.telegram-content strong{font-size:13px}.telegram-content p{max-width:690px;margin:4px 0;color:#748092;font-size:9px;line-height:1.55}.telegram-content small{color:#88a5b6;font-size:8px;line-height:1.45}.telegram-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 20px;border-top:1px solid #273240;background:rgba(42,171,238,.025)}.telegram-actions>span{color:#718091;font-size:8px}.telegram-actions form{margin:0}.telegram-actions form>button:not(.btn){padding:0;border:0;background:none;color:#ff7f8b;font-size:8px;cursor:pointer}@media(max-width:760px){.telegram-content{align-items:flex-start}.telegram-actions{align-items:stretch;flex-direction:column}.telegram-actions .btn{width:100%}}

.player-directory-section {
    padding-top: 48px;
}

@media (min-width: 761px) {
    .steam-form > .btn {
        align-self: start;
        margin-top: 16px;
    }
}

.player-search-reset.is-hidden {
    display: none;
}

.player-directory-results {
    position: relative;
    min-height: 100px;
    transition: opacity .14s ease;
}

.player-directory-results.loading {
    opacity: .52;
    pointer-events: none;
}

.player-directory-results.loading::after {
    content: "";
    position: absolute;
    top: 18px;
    right: 18px;
    width: 18px;
    height: 18px;
    border: 2px solid #3a4655;
    border-top-color: var(--accent);
    border-radius: 50%;
    animation: player-search-spin .7s linear infinite;
}

@keyframes player-search-spin {
    to {
        transform: rotate(360deg);
    }
}

.player-directory-search {
    display: flex;
    align-items: flex-end;
    gap: 10px;
    margin-bottom: 28px;
    padding: 16px;
    border: 1px solid #293544;
    background: #0d131c;
}

.player-directory-search label {
    width: min(420px, 100%);
}

.player-directory-search label > span {
    display: block;
    margin-bottom: 7px;
    color: #aeb7c6;
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .8px;
}

.player-directory-search input {
    height: 43px;
}

.player-directory-total {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-left: auto;
    padding: 7px 8px 7px 11px;
    border: 1px solid #43522e;
    color: #879674;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .7px;
}

.player-directory-total b {
    display: grid;
    min-width: 28px;
    height: 28px;
    place-items: center;
    background: var(--accent);
    color: #0a0f08;
    font-size: 11px;
}

.player-directory-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 11px;
}

.player-directory-card {
    display: grid;
    min-width: 0;
    grid-template-columns: 58px minmax(0, 1fr) 18px;
    align-items: center;
    gap: 13px;
    min-height: 86px;
    padding: 13px;
    border: 1px solid #293544;
    background: #0e151f;
    transition: border-color .16s, background .16s, transform .16s;
}

.player-directory-card:hover {
    border-color: #566a34;
    background: rgba(199, 255, 50, .035);
    transform: translateY(-2px);
}

.player-directory-avatar {
    position: relative;
    display: grid;
    width: 58px;
    height: 58px;
    overflow: hidden;
    place-items: center;
    border: 1px solid #3a4858;
    background: #19232f;
    color: var(--accent);
    font: italic 900 14px Impact;
}

.player-directory-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.player-directory-avatar i {
    position: absolute;
    right: 4px;
    bottom: 4px;
    width: 7px;
    height: 7px;
    border: 1px solid #151d27;
    border-radius: 50%;
    background: #596575;
}

.player-directory-avatar i.connected {
    background: var(--accent);
    box-shadow: 0 0 8px var(--accent);
}

.player-directory-card > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.player-directory-card small,
.player-directory-card strong,
.player-directory-card p {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.player-directory-card small {
    color: #758193;
    font-size: 7px;
    text-transform: uppercase;
}

.player-directory-card strong {
    margin-top: 4px;
    color: #edf2f6;
    font-size: 12px;
}

.player-directory-card p {
    margin: 3px 0 0;
    color: #657183;
    font-size: 8px;
}

.player-directory-card > span:last-child {
    color: var(--accent);
    font-size: 15px;
}

@media (max-width: 950px) {
    .player-directory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .player-directory-search {
        align-items: stretch;
        flex-direction: column;
    }

    .player-directory-search label {
        width: 100%;
    }

    .player-directory-search .btn {
        width: 100%;
    }

    .player-directory-total {
        width: 100%;
        justify-content: space-between;
        margin-left: 0;
    }

    .player-directory-grid {
        grid-template-columns: 1fr;
    }
}
