/* V24: compact Arena surfaces. All rules stay inside Arena components. */
.arena-rules-table{max-width:100%;overflow-x:auto;margin:18px 0;border:1px solid #ffffff1a;border-radius:9px}
.arena-rules-table table{width:100%;border-collapse:collapse;font-size:13px;text-align:left;line-height:1.6}
.arena-rules-table th,.arena-rules-table td{padding:12px 14px;border-bottom:1px solid #ffffff14;vertical-align:top}
.arena-rules-table th{background:#d86b2115;color:#efbb89;font-weight:600}.arena-rules-table tr:last-child td{border-bottom:0}
.arena-season-rules h3{font-size:18px;margin-top:28px;color:#efd5b6}.arena-season-rules p{font-size:13px;color:#bbc1c8;line-height:1.8}
.arena-season-rules a,.arena-challenge-rules a{color:#f0b082;font-size:12px}.arena-points-statement{margin:26px 0}
.arena-challenge-rules{padding:15px;margin:14px 0;border:1px solid #c6824145;border-radius:9px;background:#b35c1910}
.arena-challenge-rules p{font-size:13px;line-height:1.65;margin:0 0 8px}.arena-challenge-rules small{display:block;color:#adb3bb;font-size:11px;line-height:1.6}
.arena-challenge-rules a{display:inline-block;margin-top:8px}.arena-history-points{color:#e7bd8d;font-size:12px}
@media(max-width:600px){.arena-rules-table th,.arena-rules-table td{padding:9px 8px;font-size:11px}.notification-popover header small{letter-spacing:.03em;font-size:8px}}
.arena-mode-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 26px}
.arena-mode-tabs a{padding:9px 15px;border:1px solid #ffffff19;border-radius:7px;color:#b8bdc4;font-family:inherit;font-size:12px;font-weight:600;line-height:1.4;text-decoration:none;background:#0c1014b3}
.arena-mode-tabs a:hover,.arena-mode-tabs a[aria-current]{color:#fff;border-color:#e96a27;background:#dc591a20}
.arena-help{max-width:1240px;width:calc(100% - 44px);margin:0 auto 22px;border-bottom:1px solid #ffffff1a;padding-bottom:14px;color:#b8bdc4}
.arena-help summary{cursor:pointer;font-size:13px}.arena-help .arena-how{margin-top:14px}
.community-float{position:fixed;right:22px;bottom:22px;z-index:180;width:auto;max-width:calc(100vw - 28px);font-family:inherit}
.community-float>summary{list-style:none;cursor:pointer;border:1px solid #db712e80;background:#101419;color:#eee5d9;border-radius:12px;box-shadow:0 10px 38px #0009;padding:13px 17px;font-size:12px;display:flex;align-items:center;gap:12px}
.community-float>summary::-webkit-details-marker{display:none}
.community-float>summary b{background:#e96023;color:#100c09;padding:3px 7px;border-radius:20px;font-size:11px}
.community-float-panel{position:absolute;bottom:60px;right:0;width:390px;max-width:calc(100vw - 28px);border:1px solid #494036;border-radius:14px;background:#0e1218;box-shadow:0 22px 70px #000b;overflow:hidden}
.community-float-panel header{display:flex;justify-content:space-between;align-items:center;padding:17px 18px;border-bottom:1px solid #ffffff12}
.community-float-panel header small{color:#e58b51;font-size:9px;letter-spacing:.12em}.community-float-panel h2{font-size:18px;margin:4px 0 0}
.community-float-panel header button{background:#ffffff0b;border:0;color:#c8c8ca;border-radius:7px;font-size:23px;width:32px;height:32px;cursor:pointer}
.community-float-list{max-height:min(340px,calc(100dvh - 240px));overflow:auto;overscroll-behavior:contain;padding:6px 10px}
.community-challenge-mini{display:grid;grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr);gap:6px;padding:12px 4px;text-decoration:none;color:#eee;border-bottom:1px solid #ffffff0e;align-items:center}
.community-challenge-mini>span{display:flex;gap:5px;align-items:center;min-width:0}
.community-challenge-mini img{width:25px;height:25px;object-fit:cover;border-radius:50%;flex:none}
.community-challenge-mini strong{font-size:11px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}
.community-challenge-mini>b{font-size:14px;color:#ed9353;text-align:center}
.community-challenge-mini>small{grid-column:1/-1;color:#a0a8b2;font-size:10px;text-align:center}
.community-challenge-mini:hover{background:#ffffff07}.community-float-panel footer{display:flex;flex-wrap:wrap;gap:10px;padding:13px 16px;border-top:1px solid #ffffff12}
.community-float-panel footer a{color:#f0b082;font-size:11px}
.monthly-ranking{min-width:0}.monthly-ranking .section-head h2{font-size:21px}.monthly-ranking .section-head p{font-size:11px;margin-top:8px}
.monthly-ranking-list{display:grid;gap:2px}.monthly-ranking-row{display:grid;grid-template-columns:20px 34px minmax(0,1fr) 39px;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #ffffff0b}
.monthly-ranking-row:first-child{background:linear-gradient(90deg,#e8ab5b12,transparent)}.rank-position{font-size:12px;color:#a1a5ad}
.rank-name-badge{display:flex;align-items:center;gap:6px;min-width:0;max-width:100%}
.rank-name-badge>strong,.rank-name-badge>.rank-player-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.monthly-ranking,.season-table{--rank-image-size:34px}
.rank-name-badge>.rank-emblem{display:block;width:var(--rank-image-size);height:var(--rank-image-size);object-fit:contain;flex:0 0 var(--rank-image-size);filter:drop-shadow(0 2px 3px #0009)}
.monthly-ranking-row .rank-avatar-link{display:block;width:34px;height:34px}
.monthly-ranking-row .rank-avatar,.season-table-row .rank-avatar{display:block;width:var(--rank-image-size);height:var(--rank-image-size);box-sizing:border-box;object-fit:cover;border:1px solid #d0975a80;border-radius:50%;background:#17212b}
.monthly-ranking-row .rank-avatar-fallback,.season-table-row .rank-avatar-fallback{display:grid;place-items:center;color:#e8c99e;font-size:14px;font-weight:600}
.monthly-ranking-row button,.monthly-ranking-row .rank-avatar-link,.monthly-ranking-row .rank-player-info{padding:0;text-align:left;min-width:0;border:0;background:transparent;cursor:pointer;color:#edece9;font-family:inherit}
.monthly-ranking-row button strong,.monthly-ranking-row .rank-player-info strong{display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.monthly-ranking-row small{display:block;color:#9fa7b3;font-size:9px;margin-top:3px}
.rank-points{text-align:right;font-size:14px;color:#ebc287}
.arena-muted{color:#9ba4af;font-size:12px;line-height:1.7}.monthly-ranking>.arena-muted{margin-top:16px}
.arena-team-shell{width:min(1120px,calc(100% - 44px));margin:38px auto 72px}
.arena-team-heading{margin:30px 0 26px}.arena-team-heading h1{font-size:clamp(27px,4vw,44px);overflow-wrap:anywhere;margin:12px 0}
.arena-team-heading p{color:#a7afb8;font-size:14px;line-height:1.7}
.arena-my-teams{margin:0 0 30px}.arena-my-teams h2{font-size:19px;margin:0 0 13px}
.arena-my-teams>a{display:flex;gap:10px;justify-content:space-between;padding:12px 14px;margin:6px 0;background:#111820;border:1px solid #5d4932;border-radius:9px;text-decoration:none;font-size:13px;color:#eee}
.arena-my-teams small{color:#c59769;font-size:11px}
.arena-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.arena-team-card{min-width:0;padding:20px;background:linear-gradient(140deg,#152029,#0b0e12);border:1px solid #44413d;border-radius:10px;text-decoration:none;box-shadow:0 8px 22px #0003;transition:transform .18s,border-color .18s}
.arena-team-card:hover{transform:translateY(-2px);border-color:#e89958}.arena-team-card>small{color:#d1a176;font-size:9px;letter-spacing:.1em}
.arena-team-card h3{font-size:20px;color:#eeece4;margin:12px 0;overflow-wrap:anywhere}.arena-team-card p{color:#a2aab4;font-size:11px}.arena-team-card>b{font-size:11px;color:#e3ad80}
.arena-avatar-stack{display:flex;padding:6px 0}.arena-avatar-stack img,.arena-avatar-stack span{width:42px;height:42px;object-fit:cover;border-radius:50%;border:2px solid #293540;background:#182028;margin-right:-7px;display:grid;place-items:center}
.arena-form-box{padding:22px;background:#0f151ce8;border:1px solid #3c4146;border-radius:12px;margin:28px 0}
.arena-form-box>summary{cursor:pointer;color:#e8be96;font-size:16px;font-weight:600}.arena-form-box form{margin-top:20px}
.arena-form-box h2{font-size:23px}.arena-form-box p{font-size:13px;line-height:1.7;color:#afb6bf}
.arena-form-box label,.season-filter label{display:grid;gap:8px;margin:14px 0;font-size:12px;color:#c2c6cc}
.arena-form-box input,.arena-form-box select,.arena-form-box textarea,.season-filter select{box-sizing:border-box;max-width:100%;width:100%;border:1px solid #444b55;background:#0b1017;color:#f0f1f2;border-radius:6px;padding:12px;font:inherit;min-height:44px}
.arena-form-box input:focus-visible,.arena-form-box select:focus-visible,.arena-form-box textarea:focus-visible{outline:2px solid #e9a862;outline-offset:2px}
.arena-form-box select option,.season-filter option{background:#111922}.arena-form-box textarea{min-height:90px}
.arena-team-members{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:12px}
.arena-team-members>article{padding:14px;background:#10171ee6;border:1px solid #ffffff1a;border-radius:10px}
.arena-team-members button.profile-popup-trigger{padding:5px;display:flex;gap:12px;align-items:center;width:100%;text-align:left;font:inherit;background:transparent;border:0;color:#ecebe7;cursor:pointer;min-width:0}
.arena-team-members button strong{font-size:14px;overflow-wrap:anywhere}.arena-team-members button small{display:block;color:#a6aeb9;font-size:11px;margin-top:6px}
.arena-team-members img{border-radius:50%;object-fit:cover;flex:none}
.arena-team-members form{margin-top:15px;display:flex;gap:7px;flex-wrap:wrap}.arena-team-members .btn{font-size:11px;padding:8px}
.arena-team-leave{margin:20px 0}.arena-team-history{margin-top:35px}.arena-team-history h2{font-size:23px}
.arena-team-history-row{display:grid;gap:9px;padding:18px;border:1px solid #ffffff16;background:#10151bcc;margin:10px 0;border-radius:8px;text-decoration:none;color:#e9e7e1}
.arena-team-history-row strong{font-size:15px;overflow-wrap:anywhere}.arena-team-history-row small,.arena-team-history-row span{font-size:12px;color:#a9b0b9}.arena-team-history-row>b{font-size:11px;color:#dcac74}
.arena-versus-teams{display:grid;grid-template-columns:1fr 1fr;gap:18px}.arena-versus-teams>article{background:#0c141bd9;border:1px solid #444850;border-radius:12px;padding:22px}
.arena-versus-teams>article>small{color:#b6a280;font-size:10px;letter-spacing:.12em}.arena-versus-teams h2{font-size:24px;overflow-wrap:anywhere}
.arena-versus-teams .arena-team-members{display:flex;flex-direction:column;gap:12px}.arena-versus-teams>article.team-winner{border-color:#e2b66e;box-shadow:inset 0 3px #e2b66e}.arena-versus-teams .team-winner>small{color:#f3ce8b}
.arena-team-chat{background:#0d161ce8;border:1px solid #333d47;border-radius:12px;margin:24px 0;padding:20px}
.arena-team-chat>header{font-size:11px;color:#d0aa7f;letter-spacing:.13em;margin-bottom:18px}
.arena-chat-bubble{padding:13px 17px;background:#1a2730;border-radius:3px 14px 14px;max-width:80%;width:fit-content;margin-bottom:12px;overflow-wrap:anywhere}
.arena-chat-bubble p{font-size:14px;color:#e4e6e6;margin:6px 0}.arena-chat-bubble small{font-size:10px;color:#a7b2ba}
.arena-chat-bubble.answer{margin-left:auto;background:#193829;border-radius:14px 3px 14px 14px}.arena-chat-bubble.system{max-width:100%;background:#121d22;margin-inline:auto}
.arena-team-chat>form{display:flex;gap:10px}.arena-public-match-id{padding:18px;background:#192127;color:#cfb994;font-size:14px;border-left:2px solid #dfa869;border-radius:4px}.arena-public-match-id a{color:#eacda4}
.arena-result-summary{padding:22px;border:1px solid #b28c44;background:#a6802310;border-radius:10px;margin:25px 0}.arena-result-summary h2{color:#f4d796;font-size:26px}.arena-result-summary p{color:#bdbcb5;font-size:14px}
.arena-request-status{min-height:20px}.arena-form-box[aria-busy=true]{opacity:.85}.arena-form-box[aria-busy=true] button{cursor:wait}
.arena-profile-progress{margin-bottom:22px;padding:16px;background:#0b1118d9;border:1px solid #ffffff16;border-radius:10px}
.arena-profile-progress>header{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center}.arena-profile-progress>header small{font-size:10px;color:#d2ac76;letter-spacing:.08em}.arena-profile-progress a{color:#d6ba91;text-decoration:none;font-size:11px}
.arena-profile-progress h4{font-size:18px;line-height:1.3;margin:5px 0 0;color:#f0e6d6}
.profile-season-badges{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:12px;margin:16px 0}
.profile-season-badges>a{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px 14px;align-items:center;min-width:0;padding:14px;border:1px solid #ffffff16;border-top:2px solid var(--emblem-color,#d2ac76);border-radius:10px;background:linear-gradient(130deg,#ffffff06,#060b1180);transition:transform .18s,border-color .18s}
.profile-emblem-art{display:grid;place-items:center;position:relative;isolation:isolate}
.profile-emblem-art::before{content:"";position:absolute;inset:-10px;z-index:-1;background:radial-gradient(closest-side,var(--emblem-color,#d2ac76),transparent);opacity:.23}
.profile-emblem-art img{display:block;width:96px;height:96px;max-width:100%;object-fit:contain;filter:drop-shadow(0 5px 5px #0008)}
.profile-emblem-info{min-width:0;line-height:1.5}.profile-season-badges b{display:block;margin:4px 0;color:#f4eee3;font-size:18px;line-height:1.25;overflow-wrap:anywhere}
.profile-season-badges small{display:block;margin-top:5px;font-size:10px;color:#a8b3c2}.profile-season-badges .profile-emblem-mode{margin:0;color:var(--emblem-color);font-size:9px;font-weight:700;letter-spacing:.06em}
.profile-emblem-points{display:block;font-size:22px;font-weight:700;color:var(--emblem-color);font-variant-numeric:tabular-nums}.profile-emblem-points small{display:inline;font-size:11px;font-weight:400}
.profile-rank-meter{display:block;height:4px;margin:7px 0;background:#ffffff10;border-radius:4px;overflow:hidden}.profile-rank-meter>span{display:block;height:100%;background:var(--emblem-color);border-radius:inherit}
.profile-season-badges .profile-emblem-record{grid-column:1/-1;margin:2px 0 0;padding-top:10px;border-top:1px solid #ffffff0c;line-height:1.5}
.profile-award-badges>a{grid-template-columns:80px minmax(0,1fr)}.profile-award-badges .profile-emblem-art img{width:80px;height:80px}
.profile-season-badges>a:focus-visible{outline:2px solid var(--emblem-color);outline-offset:3px}
@media(hover:hover){.profile-season-badges>a:hover{transform:translateY(-2px);border-color:var(--emblem-color)}}
@media(max-width:420px){.arena-profile-progress{padding:12px}.profile-season-badges>a{grid-template-columns:80px minmax(0,1fr);gap:10px;padding:10px}.profile-emblem-art img{width:80px;height:80px}.profile-season-badges b{font-size:16px}}
.arena-team-history-link{display:block;line-height:1.6}.arena-award-collection{margin-top:14px}.arena-award-collection summary{font-size:11px;cursor:pointer;color:#c9b18e}
.season-filter{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.season-filter label{flex:1;min-width:140px;margin:0}.season-filter .btn{min-height:44px}
.season-emblems{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:30px 0}.season-emblems article{display:flex;align-items:center;flex-direction:column;gap:6px;padding:18px 10px;border:1px solid #ffffff16;border-radius:10px;background:#10161dbd}
.season-emblems article{border-top:2px solid var(--emblem-color)}.season-emblems img{width:128px;height:128px;max-width:100%;object-fit:contain;filter:drop-shadow(0 5px 5px #0008)}
.season-emblems b{font-size:13px}.season-emblems small{font-size:10px;color:#98a2b2}
.arena-season-rules{background:#111820df;border:1px solid #434548;padding:22px;border-radius:10px}.arena-season-rules h2{font-size:23px}.arena-season-rules ul{padding-left:20px}.arena-season-rules li{font-size:13px;line-height:1.8;color:#b3b9c2;margin-bottom:10px}.arena-season-rules strong{color:#ece5d9}
.season-table{margin:35px 0;background:#0d141bdd;border:1px solid #ffffff1a;border-radius:12px;padding:20px}.season-table>header{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center}.season-table h2{font-size:24px}.season-table>header>span{font-size:10px;color:#efbb79}
.season-table-row{display:grid;grid-template-columns:38px 42px minmax(0,1fr) 78px 85px;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #ffffff0c}
.season-table-row>b{font-size:12px;color:#c2b49d}.season-table-row a{color:#e2e1db;text-decoration:none;overflow-wrap:anywhere;font-size:14px}.season-table-row strong{text-align:right;color:#edc994;font-size:15px}.season-table-row small{text-align:right;font-size:11px;color:#a8aab3}
@media(max-width:700px){.community-float{bottom:14px;right:14px}.arena-team-shell{width:calc(100% - 28px)}.arena-help{width:calc(100% - 28px)}.arena-team-grid{grid-template-columns:1fr}.arena-my-teams>a{flex-direction:column}.arena-versus-teams{gap:10px}.arena-versus-teams>article{padding:14px}.arena-versus-teams h2{font-size:19px}.arena-versus-teams .arena-team-members button{flex-direction:column;text-align:center;font-size:12px}.arena-versus-teams .arena-team-members strong{font-size:12px}.arena-chat-bubble{max-width:90%}.season-emblems{grid-template-columns:repeat(2,1fr)}.season-table{padding:12px}.season-table-row{grid-template-columns:27px 32px minmax(0,1fr) 51px;gap:7px}.season-table-row>small{grid-column:3/5;text-align:left}.season-table-row a{font-size:12px}.season-table-row img{width:30px}.arena-mode-tabs a{font-size:11px;padding:8px 10px}}
@media(prefers-reduced-motion:reduce){.arena-team-card,.profile-season-badges>a{transition:none}.arena-team-card:hover,.profile-season-badges>a:hover{transform:none}}

/* Community tags and permanent duo membership. */
.most-challenged-tag{display:inline-flex;align-items:center;width:fit-content;max-width:100%;box-sizing:border-box;margin:5px 0;padding:4px 7px;border:1px solid #de9b5066;border-radius:20px;background:#b76a151c;color:#f4c481;font:700 10px/1.3 Inter,sans-serif;white-space:normal;vertical-align:middle;letter-spacing:.01em}
.rank-player-info .most-challenged-tag{font-size:9px;margin:4px 0 0;padding:3px 6px}.rank-player-name .most-challenged-tag{display:flex;font-size:9px;margin-bottom:0}
.profile-duo{min-width:0;padding:18px;border:1px solid #bd8b504d;border-radius:12px;background:linear-gradient(125deg,#30241880,#0b1118eb)}
.profile-duo>header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.profile-duo>header small{color:#e9b278;font-size:10px;letter-spacing:.1em}.profile-duo>header span{font-size:10px;color:#9bc9ad}
.profile-duo h3{font:700 18px/1.4 Cinzel,serif;overflow-wrap:anywhere;margin:12px 0}.profile-duo h3 a{color:#f0e0c8;text-decoration:none}
.profile-duo-members{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.profile-duo-members>a{display:flex;align-items:center;gap:9px;min-width:0;text-decoration:none;color:#efe9df}
.profile-duo-members img,.profile-duo-avatar{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;box-sizing:border-box;border-radius:50%;object-fit:cover;border:1px solid #d0a06677;background:#17212b;font-size:14px}
.profile-duo-members a>span:last-child{min-width:0}.profile-duo-members strong{display:block;font-size:12px;overflow-wrap:anywhere}.profile-duo-members small{display:block;margin-top:4px;font-size:9px;color:#aeb6bf}
.profile-duo .arena-team-leave{margin:14px 0 0;padding-top:12px;border-top:1px solid #ffffff10}.arena-team-leave small{display:block;max-width:480px;margin-top:8px;font-size:11px;line-height:1.6;color:#b7bec7}
.profile-popover-card>.profile-duo{margin:16px 0;padding:14px}.arena-my-team{padding:12px 0;border-bottom:1px solid #ffffff16}.arena-my-team>a{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;text-decoration:none;color:#f0dfc3}.arena-my-team>a small{color:#aeb6bf;font-size:11px}.arena-my-team .arena-team-leave{margin:10px 0 0}
.profile-duo a:focus-visible,.arena-my-team a:focus-visible{outline:2px solid #e9b278;outline-offset:3px}
@media(max-width:420px){.profile-duo-members{grid-template-columns:1fr}.profile-duo{padding:14px}}
/* Confirmed gods stay compact alongside each participant. */
.match-gods-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:12px 0}
.match-god-player{display:flex;align-items:center;gap:10px;min-width:0}
.match-god-player img{width:44px;height:44px;object-fit:cover;border-radius:8px;border:1px solid #c68943}
.match-god-player span{min-width:0}.match-god-player strong,.match-god-player small{display:block;overflow-wrap:anywhere}
.match-god-player small{color:#e6b77b;margin-top:4px}
/* A draft belongs to one tournament confrontation and inherits its format. */
.tournament-draft-actions{display:flex;align-items:end;flex-wrap:wrap;gap:10px;margin:14px 0;padding-top:14px;border-top:1px solid #c6a96930}
.tournament-draft-actions label{display:flex;flex:1;min-width:160px;flex-direction:column;gap:7px;font-size:11px;color:#b7c5d8}
.tournament-draft-actions select{width:100%;padding:9px;background:#101824;color:#edf2fa;border:1px solid #c8b07d45;border-radius:4px}
.tournament-draft-actions small{flex-basis:100%;font-size:11px;line-height:1.7;color:#a7b6ca}
