/* Klare, spielerische Freundesrangliste im TerraVexa-Stil. */
.social-content{grid-template-columns:1fr}.friends-section,.requests-section,.battles-section{grid-column:1/-1}.friends-section{padding:0;overflow:hidden;background:#dfe7f0}.friends-section .social-section-head{margin:0;padding:1.15rem 1.3rem;border-bottom:1px solid #c3d0df;background:linear-gradient(135deg,#17365f,#204b80);color:#fff}.friends-section .social-section-head p{color:#b9cbe1}.friends-section .social-section-icon{background:#55d6be1f;color:#65e1ca}.friends-section .social-count{background:#ffffff18;color:#fff}.friend-list-labels{display:grid;grid-template-columns:minmax(280px,1.4fr) minmax(120px,.55fr) minmax(120px,.5fr) minmax(180px,.7fr);gap:1rem;padding:.65rem 1.2rem;border-bottom:1px solid #c7d3e0;background:#d6e0eb;color:#61738b;font-size:.67rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.friend-list-labels span:nth-child(n+2){text-align:center}.friends-section>.social-list{gap:0;padding:.6rem}.friend-ranking-card{display:grid;grid-template-columns:48px minmax(220px,1.4fr) minmax(260px,1.05fr) minmax(180px,.7fr);align-items:center;gap:1rem;margin:.28rem 0;padding:.75rem 1rem;border:1px solid #c5d2e0;border-left:4px solid transparent;border-radius:11px;background:#f1f5f8;box-shadow:0 3px 10px #10213d0b;transition:transform .16s,border-color .16s,box-shadow .16s}.friend-ranking-card:hover{z-index:1;transform:translateY(-2px);border-color:#7f9cbe;border-left-color:#55d6be;box-shadow:0 8px 20px #10213d1d}.friend-place{display:grid!important;place-items:center;width:38px;height:38px;border-radius:10px;background:#d6e0eb;color:#526a87;font-size:.88rem}.friend-ranking-card:nth-child(1) .friend-place{background:linear-gradient(145deg,#ffe899,#dca91f);color:#634800;box-shadow:0 4px 12px #d3a62355}.friend-ranking-card:nth-child(2) .friend-place{background:linear-gradient(145deg,#f2f5f8,#aebdcb);color:#425266}.friend-ranking-card:nth-child(3) .friend-place{background:linear-gradient(145deg,#e9bb91,#ad6937);color:#542b12}.friend-ranking-card .social-person{gap:.8rem}.friend-ranking-card .social-avatar{flex-basis:50px;width:50px;height:50px}.friend-name{display:grid;gap:.18rem;min-width:0}.friend-name>strong{overflow:hidden;color:#10213d;font-size:.98rem;text-overflow:ellipsis;white-space:nowrap}.friend-name>span{color:#74839a!important;font-size:.72rem!important}.friend-rank-meta{display:grid;grid-template-columns:minmax(105px,1fr) minmax(100px,1fr);align-items:center;gap:.8rem}.friend-rank{display:inline-flex!important;align-items:center;justify-self:start;gap:.45rem;padding:.38rem .62rem;border:1px solid currentColor;border-radius:99px;font-size:.72rem!important;font-weight:850}.friend-rank i{display:block;width:9px;height:9px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}.friend-rank.rank-bronze{color:#a85e28;background:#f2e0d4}.friend-rank.rank-silver{color:#66778c;background:#e1e7ed}.friend-rank.rank-gold{color:#9b7208;background:#f5e9bf}.friend-rank.rank-platinum{color:#19858b;background:#d2eeee}.friend-rank.rank-diamond{color:#366bc2;background:#dbe7fa}.friend-points{color:#17365f;font-size:1rem;text-align:right}.friend-points small{display:inline!important;color:#75849a;font-size:.66rem;font-weight:650}.friend-actions{display:flex;justify-content:flex-end;gap:.4rem}.friend-actions button{min-width:76px;margin:0!important;padding:.55rem .65rem!important;border-radius:9px!important;font-size:.75rem}.friend-actions button:first-child{border-color:#315fbd;background:linear-gradient(135deg,#2859ae,#3978df)}.friend-actions .danger-action{min-width:auto;background:transparent;color:#9c3a50}.friend-request-card{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center}.friend-request-card .friend-rank-meta{max-width:280px}.friend-request-card .friend-actions>div{display:flex;gap:.35rem}.battles-section{margin-top:.3rem}.battles-section .battle-card{background:#f1f5f8}
@media(max-width:900px){.friend-list-labels{display:none}.friend-ranking-card{grid-template-columns:42px minmax(180px,1fr) auto}.friend-ranking-card .friend-rank-meta{grid-column:2;grid-template-columns:auto auto;justify-content:start}.friend-actions{grid-row:1/3;grid-column:3;align-self:center;flex-direction:column}.friend-actions button{width:100%}.friend-request-card{grid-template-columns:1fr auto}.friend-request-card .friend-rank-meta{grid-column:1}.friend-request-card .friend-actions{grid-row:1/3;grid-column:2}}
@media(max-width:600px){.friends-section>.social-list{padding:.4rem}.friend-ranking-card{grid-template-columns:34px minmax(0,1fr);gap:.55rem;padding:.75rem}.friend-place{width:31px;height:31px}.friend-ranking-card .social-avatar{flex-basis:44px;width:44px;height:44px}.friend-ranking-card .friend-rank-meta{grid-column:2}.friend-actions{grid-row:auto;grid-column:1/-1;flex-direction:row;padding-top:.55rem;border-top:1px solid #d5dee8}.friend-actions button{flex:1}.friend-request-card{display:grid;grid-template-columns:1fr}.friend-request-card .friend-rank-meta,.friend-request-card .friend-actions{grid-column:1;grid-row:auto}.friend-request-card .friend-actions>div{width:100%}.friend-request-card .friend-actions button{flex:1}}
.social-avatar{display:grid!important;place-items:center!important;line-height:1!important;text-align:center;overflow:visible}.friend-ranking-card.is-self{border-color:#4d8fe6;border-left-color:#3978df;background:#d6e8fb;box-shadow:inset 4px 0 #3978df,0 7px 20px #10213d20}.friend-name em{display:inline-block;margin-left:.35rem;padding:.12rem .4rem;border-radius:99px;background:#b8d7f8;color:#174d93;font-size:.6rem;font-style:normal;vertical-align:middle}.friend-ranking-card.is-self .friend-place{background:linear-gradient(145deg,#72a4e8,#3978df);color:#fff;box-shadow:0 4px 12px #3978df44}.friend-ranking-card.is-self .friend-actions::after{display:none}
@media(min-width:901px){.friend-list-labels{grid-template-columns:minmax(324px,1fr) 150px 110px 170px}.friend-ranking-card{grid-template-columns:48px minmax(260px,1fr) 150px 110px 170px}.friend-ranking-card .friend-rank-meta{display:contents}.friend-ranking-card .friend-rank{grid-column:3;justify-self:center}.friend-ranking-card .friend-points{grid-column:4;text-align:center}.friend-ranking-card .friend-actions{grid-column:5}.friend-list-labels span:first-child{text-align:left}.friend-list-labels span:nth-child(n+2){text-align:center}}

/* TerraVex social dashboard */
.social-page{width:min(1200px,calc(100% - 2rem));padding-top:1.25rem}.social-page .social-hero{margin-bottom:1.4rem;text-align:center}.social-page .social-hero h1{font-size:clamp(2.8rem,6vw,4.8rem);letter-spacing:-.055em}.social-page .social-hero .lead{max-width:650px;margin-inline:auto;color:#a9bdd8}
.social-toolbar{position:relative;margin-bottom:1.5rem;padding:1.35rem 1.5rem;border:1px solid #31567f;border-radius:20px;background:linear-gradient(145deg,#122b4d,#173b66);color:#f4f8ff;box-shadow:0 18px 45px #0208173d,inset 0 1px #ffffff12;overflow:hidden}.social-toolbar::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% -20%,#55d6be22,transparent 40%);pointer-events:none}.social-toolbar>div{position:relative}.social-toolbar>div:first-child h2{color:#fff;font-size:1.25rem}.social-toolbar>div:first-child p{margin-bottom:1rem;color:#a9bdd8}.social-toolbar .friend-add{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%;gap:.7rem}.social-toolbar .friend-add input{min-height:54px;padding:0 1rem;border:1px solid #5d7698;border-radius:13px;background:#f4f7fb;color:#112642;box-shadow:inset 0 2px 5px #10213d0d;outline:0;transition:border-color .2s,box-shadow .2s}.social-toolbar .friend-add input:focus{border-color:#4d8fe6;box-shadow:0 0 0 4px #4d8fe62c}.social-toolbar .friend-add .button{min-width:142px;border-radius:13px;background:linear-gradient(135deg,#3474d9,#2857ad);box-shadow:0 8px 20px #143e813e;transition:transform .18s,box-shadow .18s}.social-toolbar .friend-add .button:hover{transform:translateY(-2px);box-shadow:0 12px 26px #143e8160}
.social-content{gap:1.5rem}.social-section{border:1px solid #31567f;border-radius:20px;background:#dfe8f2;box-shadow:0 18px 45px #02081732;overflow:hidden}.social-section .social-section-head{min-height:92px;margin:0;padding:1.15rem 1.35rem;border:0;background:linear-gradient(120deg,#15365e,#244f82);color:#fff}.social-section .social-section-head h2{color:#fff;font-size:1.2rem}.social-section .social-section-head p{color:#b9cbe1}.social-section .social-section-icon{width:42px;height:42px;border:1px solid #ffffff16;border-radius:13px;background:#55d6be18;color:#64e5cc;box-shadow:inset 0 1px #ffffff15}.social-section .social-count{min-width:34px;height:34px;background:#ffffff14;color:#fff;box-shadow:inset 0 0 0 1px #ffffff12}
.friend-list-labels{padding:.72rem 1.25rem;border-color:#c3d0df;background:#d4dfeb;color:#58708f}.friends-section>.social-list{padding:.75rem}.friend-ranking-card{min-height:88px;margin:.25rem 0;padding:.75rem 1rem;border-color:#c3d1e0;border-radius:14px;background:#f4f7fa;box-shadow:0 5px 15px #10213d0c}.friend-ranking-card:hover{transform:translateY(-2px);border-color:#7199c5;box-shadow:0 12px 25px #10213d20}.friend-ranking-card.is-self{border-color:#4b91e8;background:linear-gradient(110deg,#d6e8fb,#e8f2fb);box-shadow:inset 4px 0 #3978df,0 8px 22px #17488422}.friend-ranking-card .social-avatar{box-shadow:0 5px 15px #17365f2b}.friend-name>strong{font-size:1rem}.friend-points{font-variant-numeric:tabular-nums}.friend-actions button{min-height:40px;border-radius:10px!important;transition:transform .16s,box-shadow .16s}.friend-actions button:hover{transform:translateY(-1px);box-shadow:0 6px 14px #183e7630}.friend-actions .danger-action:hover{box-shadow:none}
.battles-section{margin-top:0}.battles-section>.social-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;padding:1rem}.battles-section .battle-card{position:relative;min-height:92px;padding:1rem 1.1rem;border:1px solid #c5d3e1;border-left:4px solid #6f8edb;border-radius:14px;background:linear-gradient(145deg,#f7f9fb,#eaf0f6);box-shadow:0 6px 16px #10213d0d;transition:transform .18s,box-shadow .18s,border-color .18s}.battles-section .battle-card:hover{transform:translateY(-2px);box-shadow:0 12px 24px #10213d1c}.battle-card>div:first-child{display:grid;gap:.32rem}.battle-card>div:first-child strong{color:#102b4e;font-size:.98rem}.battle-card>div:first-child span{font-size:.78rem}.battle-card.gewonnen{border-left-color:#28a978;background:linear-gradient(145deg,#f4fbf8,#e2f3ed)}.battle-card.verloren{border-left-color:#d65369;background:linear-gradient(145deg,#fff8f9,#f3e5e8)}.battle-card.unentschieden{border-left-color:#d6a840;background:linear-gradient(145deg,#fffdf7,#f3eddd)}
@media(max-width:760px){.social-page{width:min(100% - 1rem,1200px)}.social-toolbar{padding:1.1rem}.social-toolbar .friend-add{grid-template-columns:1fr}.social-toolbar .friend-add .button{width:100%}.battles-section>.social-list{grid-template-columns:1fr}.social-section .social-section-head{min-height:78px}.friend-ranking-card{min-height:0}}
.social-section.battles-section{padding:0}

/* Premium battle result */
.panel:has(.battle-comparison){position:relative;overflow:hidden;padding:clamp(1.5rem,3vw,2.25rem);border:1px solid #bfd0e2;background:linear-gradient(145deg,#edf3f8,#dfe8f2);box-shadow:0 24px 60px #02081745}.panel:has(.battle-comparison)::before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,#55d6be,#4f8fe5,#796ee8)}.panel:has(.battle-comparison)>.eyebrow{margin-top:.25rem}.panel:has(.battle-comparison)>.stats-strip{margin:1.6rem 0}.panel:has(.battle-comparison)>.stats-strip .metric{min-height:105px;display:grid;place-content:center;border:1px solid #d0dbe7;background:#f4f7fa}.panel:has(.battle-comparison)>.stats-strip .metric strong{font-size:2rem}
.battle-comparison{position:relative;margin:1.6rem 0;padding:1.35rem 1.5rem;border:1px solid #b9cddd;border-left:0;border-radius:19px;background:linear-gradient(145deg,#e6edf4,#dce7f0);box-shadow:0 14px 32px #10213d18;overflow:hidden}.battle-comparison::before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:#6f8edb}.battle-comparison.gewonnen{background:linear-gradient(135deg,#e6f5f0,#d7eee6)}.battle-comparison.gewonnen::before{background:linear-gradient(#55d6be,#1d9d71)}.battle-comparison.verloren{background:linear-gradient(135deg,#f8ecef,#f0dde2)}.battle-comparison.verloren::before{background:linear-gradient(#ec7d91,#c93f59)}.battle-comparison.unentschieden{background:linear-gradient(135deg,#f8f3e5,#eee5ca)}.battle-comparison.unentschieden::before{background:linear-gradient(#e8c45e,#bd8f18)}
.battle-result-state{gap:1.1rem}.battle-result-symbol{width:58px;height:58px;flex-basis:58px;border-radius:17px;box-shadow:inset 0 1px #ffffff80,0 8px 20px #10213d18}.battle-result-state h2{font-size:1.55rem;letter-spacing:-.025em}.battle-result-state>div>span{display:block;margin-top:.2rem}.battle-scoreboard{gap:1.15rem;margin-top:1.25rem;padding-top:1.25rem}.battle-scoreboard>div:not(.battle-versus){min-height:118px;place-content:center;padding:1rem;border:1px solid #cfdae6;border-radius:15px;background:#f7f9fb;box-shadow:0 6px 16px #10213d0c}.battle-scoreboard .you{border-color:#4e83d3;box-shadow:inset 0 0 0 1px #4e83d3,0 8px 20px #315fbd20}.battle-scoreboard strong{font-size:2.25rem}.battle-versus{display:grid;place-items:center;width:38px;height:38px;border:1px solid #c1cede;border-radius:50%;background:#eef3f7}

/* Actionable battle toast */
.toast.social-notice.has-actions{align-items:flex-start;width:min(430px,calc(100% - 2rem));padding:1.1rem 1.15rem;cursor:default}.social-notice-content{display:grid;flex:1;gap:.16rem;min-width:0}.social-notice-actions{display:flex;gap:.55rem;margin-top:.8rem}.social-notice-actions button{min-height:36px;padding:.42rem .8rem;border:1px solid #6784aa;border-radius:9px;color:#fff;font:inherit;font-size:.78rem;font-weight:800;cursor:pointer;transition:transform .15s,background .15s}.social-notice-actions button:hover{transform:translateY(-1px)}.social-notice-actions .notice-primary{border-color:#55d6be;background:linear-gradient(135deg,#28a978,#218864)}.social-notice-actions .notice-secondary{background:#ffffff0b;color:#c4d2e5}
@media(max-width:560px){.panel:has(.battle-comparison){padding:1rem}.battle-comparison{padding:1rem}.battle-scoreboard{grid-template-columns:1fr}.battle-versus{margin:auto}.social-notice-actions button{flex:1}}

/* Dark leaderboard-style lists */
.friends-section,.battles-section{background:linear-gradient(155deg,#102744,#0c2039)}.friend-list-labels{border-color:#315071;background:#0e233e;color:#8fa8c6}.friends-section>.social-list,.battles-section>.social-list{background:linear-gradient(155deg,#102744,#0c2039)}
.friend-ranking-card{border-color:#315071;background:linear-gradient(135deg,#173454,#142e4d);box-shadow:0 7px 18px #0208172b}.friend-ranking-card:hover{border-color:#5282b8;background:linear-gradient(135deg,#1b3e65,#173655);box-shadow:0 13px 28px #02081745}.friend-ranking-card.is-self{border-color:#4f91e6;background:linear-gradient(110deg,#1b4774,#173a61);box-shadow:inset 4px 0 #55d6be,0 10px 26px #02081742}.friend-name>strong,.friend-points{color:#f4f8ff}.friend-name>span,.friend-points small,.friend-ranking-card .player-country{color:#a9bdd5!important}.friend-place{background:#213e60;color:#bfd0e4}.friend-ranking-card:nth-child(2) .friend-place{background:linear-gradient(145deg,#d9e3ed,#879caf);color:#263b52}.friend-actions .danger-action{border-color:#d96a7d;background:#d6536915;color:#f095a5}.friend-actions .danger-action:hover{background:#d6536930}
.battles-section .battle-card{border-color:#315071;border-left-color:#648ee0;background:linear-gradient(135deg,#173454,#142e4d);box-shadow:0 7px 18px #02081730}.battles-section .battle-card:hover{border-color:#5683b7;background:linear-gradient(135deg,#1b3e65,#173655);box-shadow:0 13px 28px #02081745}.battles-section .battle-card>div:first-child strong{color:#f4f8ff}.battles-section .battle-card>div:first-child span{color:#9fb4ce}.battles-section .battle-card.gewonnen{border-left-color:#3fd0a0;background:linear-gradient(135deg,#164338,#15374a)}.battles-section .battle-card.verloren{border-left-color:#e06b81;background:linear-gradient(135deg,#4a2638,#283048)}.battles-section .battle-card.unentschieden{border-left-color:#e1b94f;background:linear-gradient(135deg,#453d24,#26334a)}
.friends-section{overflow:visible}.friends-section .social-section-head{border-radius:19px 19px 0 0}.friend-ranking-card{overflow:visible}.friend-ranking-card .social-person[data-profile]{cursor:pointer}.friend-ranking-card .social-person[data-profile]:hover .friend-name>strong{color:#68e1ca}.friend-actions{position:relative}.friend-menu-wrap{position:relative}.friend-menu-trigger{display:grid;place-items:center;min-width:44px!important;width:44px;height:40px;padding:0!important;border:1px solid #55769d!important;border-radius:10px!important;background:#ffffff0b!important;color:#dce8f7!important;font-size:1.05rem!important;letter-spacing:.08em}.friend-menu-trigger:hover,.friend-menu-trigger[aria-expanded="true"]{border-color:#55d6be!important;background:#55d6be18!important;color:#72ead3!important}.friend-context-menu{position:absolute;z-index:30;right:0;top:calc(100% + .5rem);display:grid;width:190px;padding:.4rem;border:1px solid #42638a;border-radius:12px;background:#102744;box-shadow:0 16px 38px #020817a0}.friend-context-menu[hidden]{display:none}.friend-context-menu button{width:100%;min-height:38px!important;margin:0!important;padding:.5rem .65rem!important;border:0!important;border-radius:8px!important;background:transparent!important;color:#e5eef9!important;text-align:left;font-size:.78rem!important;box-shadow:none!important}.friend-context-menu button:hover{background:#ffffff10!important;transform:none}.friend-context-menu .danger-action{color:#f092a3!important}.friend-context-menu .danger-action:hover{background:#d6536920!important}
.friend-detail-dialog{width:min(620px,calc(100% - 2rem));padding:0;border:1px solid #42668f;border-radius:22px;background:#102744;color:#f4f8ff;box-shadow:0 30px 90px #020817d9;overflow:hidden}.friend-detail-dialog::backdrop{background:#020b1dcc;backdrop-filter:blur(5px)}.friend-dialog-head{display:flex;align-items:center;justify-content:space-between;padding:1.35rem 1.5rem;background:linear-gradient(125deg,#17385f,#245587)}.friend-dialog-head>div{display:flex;align-items:center;gap:1rem}.friend-dialog-head .social-avatar{width:64px;height:64px;flex-basis:64px}.friend-dialog-head p{margin:0;color:#72ead3;font-size:.68rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.friend-dialog-head h2{margin:.05rem 0;font-size:1.55rem}.friend-dialog-head .player-country{display:flex;align-items:center;gap:.4rem;color:#bfd0e4}.friend-dialog-head .player-country img{width:24px}.friend-dialog-close{display:grid;place-items:center;width:40px;height:40px;border:1px solid #ffffff26;border-radius:50%;background:#ffffff0b;color:#fff;font-size:1.5rem;cursor:pointer}.friend-dialog-close:hover{background:#ffffff18}.friend-dialog-tabs{display:flex;gap:.35rem;padding:.75rem 1rem 0;border-bottom:1px solid #2e4b6c;background:#0d213b}.friend-dialog-tabs button{padding:.7rem 1rem;border:0;border-bottom:3px solid transparent;background:transparent;color:#90a8c4;font-weight:800;cursor:pointer}.friend-dialog-tabs button.active{border-bottom-color:#55d6be;color:#fff}.friend-dialog-body{min-height:230px;padding:1.25rem 1.5rem 1.5rem}.friend-profile-stats{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.friend-profile-stats>div{display:grid;gap:.2rem;padding:1.1rem;border:1px solid #315071;border-radius:14px;background:#163252}.friend-profile-stats span{color:#9fb4ce;font-size:.75rem}.friend-profile-stats strong{font-size:1.35rem}.friend-dialog-battle{margin-top:1rem}.friend-history-list{display:grid;gap:.65rem}.friend-history-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border:1px solid #315071;border-left:4px solid #648ee0;border-radius:12px;background:#163252}.friend-history-item>div{display:grid;gap:.12rem}.friend-history-item span{color:#9fb4ce;font-size:.78rem}.friend-history-item.gewonnen{border-left-color:#3fd0a0}.friend-history-item.verloren{border-left-color:#e06b81}.friend-history-item.unentschieden{border-left-color:#e1b94f}.friend-history-item button{padding:.5rem .75rem;border:1px solid #55d6be;border-radius:8px;background:#218864;color:#fff;font-weight:800;cursor:pointer}.friend-history-empty{padding:2rem;text-align:center;color:#9fb4ce}@media(max-width:600px){.friend-context-menu{position:fixed;right:1rem;bottom:1rem;top:auto;width:calc(100% - 2rem)}.friend-detail-dialog{width:calc(100% - 1rem)}.friend-dialog-head,.friend-dialog-body{padding:1rem}.friend-profile-stats{grid-template-columns:1fr}}
