img.team-logo,
img.team-logo.big {
  background: transparent !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
a.back.play-back {
  width: max-content;
  max-width: 100%;
  min-height: 40px !important;
  gap: 9px !important;
  border-radius: 22px !important;
  padding: 5px 15px 5px 6px !important;
  background: linear-gradient(135deg, #244e6b, #102a43) !important;
  border: 1px solid #5caed16b !important;
  box-shadow: 0 3px 12px #0003 !important;
  transition:
    background 0.2s,
    transform 0.2s;
}
a.back.play-back > span {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #57d7ff20;
  color: #7be2ff;
  font-size: 27px;
}
a.back.play-back:hover {
  transform: translateX(-2px);
  border-color: #73dcff !important;
}
a.back.play-back:focus-visible {
  outline: 2px solid #ffcf7d;
  outline-offset: 3px;
}
.clan-section-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 4px;
  gap: 4px;
  border: 1px solid #365976;
  background: #071a2c;
  border-radius: 13px;
  margin: 16px 0;
}
.clan-section-tabs button {
  min-height: 43px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: #acc4da;
  font-weight: 750;
  font-size: 12px;
  cursor: pointer;
}
.clan-section-tabs button[aria-selected="true"] {
  background: linear-gradient(#326383, #1b415d);
  color: #e0f9ff;
  box-shadow: inset 0 1px #86dfff50;
}
.clan-tab-panel[hidden] {
  display: none !important;
}
.clan-tab-panel {
  display: grid;
  gap: 14px;
}
.clan-tab-panel > .panel {
  margin-top: 0 !important;
}
.clan-tab-panel .clan-leagues {
  margin-top: 0;
}
@media (prefers-reduced-motion: reduce) {
  a.back.play-back {
    transition: none;
  }
}

.clan-section-tabs { grid-template-columns: repeat(4,minmax(0,1fr)); margin: 7px 0 10px; padding: 3px; gap: 2px; }
.clan-section-tabs button { position: relative; min-height: 32px; font-size: 10px; padding: 4px 2px; }
.clan-actions { justify-content: flex-end; margin: 0 0 6px; gap: 4px; }
.clan-actions .button, .clan-actions [data-copy-clan] { min-height: 25px; padding: 4px 6px; font-size: 9px; }
.clan-actions > .clan-role { font-size: 9px; padding: 3px 5px; }
.clan-chat-message { padding: 9px 11px; margin: 7px 0; border: 1px solid #3c6482; border-radius: 9px; background: #183852; }
.clan-chat-message p { white-space: pre-wrap; overflow-wrap: anywhere; margin: 4px 0 0; }
.clan-chat-messages { max-height: 40vh; overflow: auto; }

.team-title:has(.clan-corner-menu) { position: relative; padding-right: 40px; }
.clan-corner-menu { position: absolute; right: 0; top: 0; z-index: 12; }
.clan-corner-menu > summary.button { min-height: 28px; padding: 0 8px; font-size: 24px; line-height: 24px; list-style: none; cursor: pointer; }
.clan-corner-menu > summary::-webkit-details-marker { display: none; }
.clan-corner-menu .clan-actions { position: absolute; right: 0; top: 34px; width: min(240px,75vw); padding: 9px; border: 1px solid #527c9d; border-radius: 10px; background: #102840; box-shadow: 0 6px 20px #0008; }
.clan-corner-menu:not([open]) .clan-actions { display: none; }

/* Clan chat: a game-style conversation board and compact composer. */
#clan-pane-chat .clan-chat { display: flex; flex-direction: column; height: clamp(280px,calc(100dvh - 280px),560px); padding: 0; overflow: hidden; border: 2px solid #6a9abd; border-radius: 12px; background: linear-gradient(135deg,#193d5a,#102c45); box-shadow: inset 0 1px #b6e8ff70,0 4px 0 #06182a; }
.clan-chat-heading { display: flex; align-items: center; gap: 9px; padding: 9px 12px; background: linear-gradient(#467ba0,#254d6d); border-bottom: 2px solid #091e31; box-shadow: inset 0 1px #b2e8ff55; }
.clan-chat-heading svg { width: 24px; height: 24px; color: #ffda86; }
.clan-chat-heading h2 { margin: 0; font-size: 15px; color: #fff2cc; text-shadow: 0 2px #163450; }
.clan-chat .clan-chat-messages { flex: 1; min-height: 0; max-height: none; overflow-y: auto; padding: 12px 9px; background: repeating-linear-gradient(135deg,#ffffff02 0 22px,transparent 22px 44px); }
.clan-chat .clan-chat-message { display: flex; align-items: flex-start; gap: 7px; padding: 0; margin: 0 0 12px; border: 0; background: none; }
.clan-chat-avatar { display: grid; place-items: center; flex: 0 0 28px; height: 32px; color: #fff0bf; font-size: 15px; font-weight: 900; border: 2px solid #9dcae5; border-radius: 9px 9px 12px 12px; background: linear-gradient(#649abd,#2a5072); box-shadow: 0 2px #071a2e; }
.clan-chat-bubble { position: relative; min-width: 0; max-width: 84%; padding: 8px 10px; border: 1px solid #7898ae; border-radius: 3px 11px 11px; background: linear-gradient(#e2edf4,#bccfdf); color: #163149; box-shadow: 0 3px 0 #071b2c88; }
.clan-chat-bubble b { color: #325d86; font-size: 11px; font-weight: 900; }
.clan-chat-bubble p { font-size: 12px; line-height: 1.4; }
.clan-chat-message.is-own { flex-direction: row-reverse; }
.is-own .clan-chat-bubble { border-radius: 11px 3px 11px 11px; background: linear-gradient(#e5f2cf,#bdd79f); border-color: #91b578; }
.is-own .clan-chat-bubble b { color: #456638; }
.clan-chat-empty { height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center; color: #acc6db; }
.clan-chat-empty svg { width: 48px; height: 48px; opacity: .45; }
.clan-chat-empty p { font-size: 12px; }
.clan-chat-compose { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 7px; align-items: center; padding: 9px; background: linear-gradient(#365b77,#1a3853); border-top: 2px solid #092037; }
.clan-chat-compose .field { display: flex; margin: 0; min-width: 0; }
.clan-chat-compose textarea { display: block; box-sizing: border-box; width: 100%; height: 38px; min-height: 38px; max-height: 76px; line-height: 16px; resize: none; padding: 10px; border: 1px solid #7ba0ba; border-radius: 8px; background: #e5eef4; color: #17344a; font-size: 12px; }
.clan-chat-compose .button { align-self: center; box-sizing: border-box; height: 38px; min-height: 38px; padding: 8px 11px; font-size: 11px; border: 1px solid #ffdf89; background: linear-gradient(#ffe191,#f3b846); color: #493315; box-shadow: inset 0 1px #fff7cf,0 3px #7d551f; }
.clan-chat-compose [role="status"] { grid-column: 1/-1; margin: 0; font-size: 10px; color: #c2d8e8; }
.clan-chat-compose [role="status"]:empty { display: none; }

[data-clan-notifications].compact-squad-card { overflow: visible; }
[data-clan-notifications] > .network-count { top: -10px; right: -10px; min-width: 24px; height: 24px; font-size: 13px; z-index: 8; }
.clan-chat-compose { position: relative; grid-template-columns: 30px minmax(0,1fr) auto; }
.clan-emote-toggle { display: flex; align-items: center; justify-content: center; box-sizing: border-box; height: 38px; min-height: 38px; padding: 0; border: 1px solid #7ca6c3; border-radius: 8px; background: linear-gradient(#6093b5,#2b5475); color: #ffe39b; font-size: 24px; cursor: pointer; }
.clan-emote-picker { position: absolute; left: 7px; bottom: calc(100% + 5px); display: flex; gap: 7px; padding: 9px; border: 2px solid #6a9abd; border-radius: 10px; background: #173750; box-shadow: 0 4px 12px #0007; z-index: 10; }
.clan-emote-picker[hidden] { display: none; }
.clan-emote-picker button { display: grid; gap: 3px; padding: 4px; border: 1px solid #5782a0; border-radius: 7px; background: #224a69; color: #edf7ff; font-size: 10px; cursor: pointer; }
.clan-emote-picker img { width: 56px; height: 56px; }
.clan-chat-emote { display: block; width: 96px; height: 96px; object-fit: contain; }
/* Emotes float directly on the chat background. */
.clan-chat .is-emote .clan-chat-bubble { background:none; border:0; padding:0 4px; box-shadow:none; }
.clan-chat .is-emote .clan-chat-bubble b { color:#e2f1ff; text-shadow:0 1px 2px #071b2c; }
.clan-chat .is-emote .clan-chat-avatar { display:none; }
.clan-chat-event { margin:10px 0; padding:10px 11px 7px; border:1px solid #a2bbff; border-radius:10px; background:linear-gradient(#7f9bde,#5976b6); box-shadow:0 3px 0 #09264288,inset 0 1px 0 #ffffff44; color:#fff; text-align:center; }
.clan-chat-event p { margin:0; font-size:12px; line-height:1.4; font-weight:800; overflow-wrap:anywhere; text-shadow:0 1px 1px #173559; }
.clan-chat-event.event-match { border-color:#d1a4ff; background:linear-gradient(#a065e0,#7541af); }
.clan-chat-event.event-league { border-color:#6beac6; background:linear-gradient(#299f85,#1d796c); }
.clan-chat-event footer { display:flex; justify-content:center; align-items:center; gap:10px; margin-top:5px; font-size:9px; color:#e5f1ff; }
.clan-chat-event a { color:white; font-weight:700; text-decoration:underline; }
/* Compact Clash-inspired log banners and clear event colours. */
.clan-chat .clan-chat-event { margin:6px 2px; padding:6px 9px 4px; border-radius:8px; box-shadow:0 2px 0 #09264288,inset 0 1px 0 #ffffff44; }
.clan-chat .clan-chat-event p { color:#fff; font-size:11px; line-height:1.25; font-weight:900; }
.clan-chat-event footer { margin-top:3px; font-size:8px; gap:7px; opacity:.8; }
.clan-chat-event.event-stream { border-color:#9861c8; background:linear-gradient(#53327c,#362051); }
.clan-chat-event.event-founding { border-color:#ffe898; background:linear-gradient(#f5cf68,#c39437); }
.clan-chat .event-founding p { color:#442a0b; text-shadow:0 1px 0 #fff5b877; }
.event-founding footer { color:#54350c; }
.clan-chat .clan-chat-message { margin-bottom:8px; gap:6px; }
.clan-chat .clan-chat-bubble { padding:6px 9px; }
.clan-chat .clan-chat-bubble p { color:#203e58; margin:3px 0 0; font-size:12px; }
.clan-chat .is-emote .clan-chat-bubble { padding:0 4px; }
.clan-chat .is-emote .emote-sprite { --emote-size:80px; }
.clan-chat .event-stream { text-align:left; padding:7px 9px; }
.stream-log-heading { display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin-bottom:4px; }
.stream-log-heading .clan-chat-avatar { flex-basis:22px; height:24px; font-size:12px; border-width:1px; }
.stream-log-heading b { color:#fff2be; font-size:12px; font-weight:900; }
.stream-log-status { margin-left:auto; border-radius:5px; padding:3px 6px; font-size:10px; font-weight:900; color:#e5d3ff; background:#211336; }
.stream-confirmed .stream-log-status { background:#12694d; color:#caffea; border:1px solid #51cf9e; }
.stream-cancelled .stream-log-status { background:#883d4d; color:#ffe5e9; border:1px solid #e991a0; }
.clan-chat .stream-confirmed { border-left:4px solid #57dbaa; }
.clan-chat .stream-cancelled { border-left:4px solid #f09ba7; }
/* One compact top row leaves the conversation more room. */
#game-stage.clan-compact-header { position:relative; padding-top:8px; }
.clan-compact-header > a.back.play-back { position:absolute; left:0; top:8px; width:34px; min-height:32px !important; padding:0 !important; gap:0 !important; font-size:0; justify-content:center; }
.clan-compact-header > a.back.play-back > span { width:28px; height:28px; font-size:24px; }
.clan-compact-header .team-title { position:relative; justify-content:center; gap:8px; min-height:48px; padding:0 42px; margin:0 0 4px; text-align:center; }
.clan-compact-header .team-title > .team-logo,.clan-compact-header .team-title > svg { width:36px; height:36px; max-width:36px; max-height:36px; flex-shrink:0; }
.clan-compact-header .team-title h1 { font-size:20px; line-height:1.15; margin:0 0 3px; }
.clan-compact-header .team-title p { font-size:10px; margin:0; }
.clan-compact-header .clan-corner-menu { top:0; right:0; text-align:left; }
.clan-compact-header .clan-corner-menu > summary.button { min-height:30px; }
.clan-compact-header .clan-section-tabs { margin:4px 0 8px; }
.clan-compact-header #clan-pane-chat .clan-chat { height:clamp(280px,calc(100dvh - 200px),720px); }
.clan-compact-header .clan-chat-heading { padding:6px 10px; }
.clan-compact-header .clan-chat-heading svg { width:20px; height:20px; }
@media(max-width:350px){.clan-compact-header .team-title h1{font-size:17px}.clan-compact-header .team-title{gap:5px}}
.clan-chat .clan-chat-event { position:relative; padding-left:42px; min-height:32px; }
.event-emblem { position:absolute; left:7px; top:50%; transform:translateY(-50%); display:grid; place-items:center; width:28px; height:28px; }
.event-emblem img,.event-emblem img.team-logo.big,.event-emblem svg,.event-emblem .team-logo { width:28px !important; height:28px !important; max-width:28px; max-height:28px; object-fit:contain; margin:0; padding:0; border:0; background:none; box-shadow:none; }
.event-emblem .created-clan-emblem { width:28px; height:28px; font-size:9px; }
.event-emblem .created-clan-emblem b { display:none; }
/* Only the conversation scrolls while the Chat tab is selected. */
html:has(#game-stage.clan-chat-active),body:has(#game-stage.clan-chat-active) { overflow:hidden; overscroll-behavior:none; }
.game-shell:has(#game-stage.clan-chat-active) { padding-bottom:0; }
#game-stage.clan-chat-active { display:flex; flex-direction:column; box-sizing:border-box; height:var(--clan-chat-height,calc(100dvh - 112px)); min-height:0; padding-bottom:0; overflow:hidden; }
.clan-chat-active > .team-title,.clan-chat-active > .clan-section-tabs { flex-shrink:0; }
.clan-chat-active #clan-pane-chat { flex:1; min-height:0; display:flex; }
.clan-chat-active #clan-pane-chat[hidden] { display:none; }
.clan-chat-active #clan-pane-chat .clan-chat { flex:1; min-height:0; height:100%; box-sizing:border-box; }
.clan-chat-active .clan-chat-messages { overscroll-behavior:contain; }
#app:has(#game-stage.clan-chat-active) { height:100dvh; overflow:hidden; }
.game-shell:has(#game-stage.clan-chat-active) { overflow:hidden; overscroll-behavior:none; }
.clan-chat-active .clan-chat-compose,.clan-chat-active .clan-chat-heading { flex-shrink:0; }
/* The shared back toolbar must not reserve a separate row above a clan. */
#app:has(.clan-compact-header) > .game-topbar { position:relative; height:0; min-height:0; padding:0; z-index:16; }
#app:has(.clan-compact-header) > .game-topbar .topbar-back { position:absolute; top:8px; left:16px; margin:0; width:34px; min-height:32px !important; padding:0 !important; gap:0 !important; justify-content:center; }
#app:has(.clan-compact-header) > .game-topbar .topbar-back b { display:none; }
#app:has(.clan-compact-header) > .game-topbar .topbar-back > span { width:28px; height:28px; font-size:24px; }
/* Shared compact back arrow. */
a.back.play-back { width:34px; min-height:32px !important; padding:0 !important; gap:0 !important; display:inline-flex; align-items:center; justify-content:center; }
a.back.play-back > b { display:none; }
a.back.play-back > span { width:28px; height:28px; font-size:24px; }
.game-topbar:not(:has(a.back)):not(.dashboard-tools):has(+ .game-shell .network-tabs) { height:0; min-height:0; padding:0; }
#app:has(.clan-compact-header) > .game-topbar.compact-topbar { height:0 !important; min-height:0 !important; padding-top:0 !important; padding-bottom:0 !important; }
#app:has(.clan-compact-header) .game-shell #game-stage.clan-compact-header { padding-top:4px !important; }
.clan-join-panel { width:100%; box-sizing:border-box; }
.clan-join-panel h2 { margin:0 0 8px; }
.clan-join-panel p { font-size:12px; line-height:1.5; }
.clan-join-actions { margin-top:12px; }
.nexus-members:has(> .add-clan-member) { position:relative; }
.nexus-members:has(> .add-clan-member) > .panel-head > span { margin-right:30px; }
.nexus-members > .add-clan-member { margin:0; padding:0; border:0; background:none; }
.nexus-members > .add-clan-member > summary { position:absolute; top:12px; right:12px; display:grid; place-items:center; width:24px; height:24px; min-height:0; padding:0; border:1px solid #9ae4a4; border-radius:6px; background:linear-gradient(#72d781,#319d50); color:#effff0; font-size:22px; font-weight:900; line-height:1; list-style:none; cursor:pointer; box-shadow:0 2px 0 #174d2a; }
.nexus-members > .add-clan-member > summary::-webkit-details-marker { display:none; }
.nexus-members > .add-clan-member[open] > form { margin:4px 10px 10px; padding:10px; border:1px solid #3d6682; border-radius:8px; }
.clan-chat .clan-chat-event.is-result p { white-space:nowrap; font-size:13px; line-height:1.3; text-align:left; }
.clan-chat .event-stream:has(.stream-log-heading .clan-chat-avatar) { margin-left:35px; }
.event-stream .stream-log-heading .clan-chat-avatar { position:absolute; left:-35px; top:0; width:26px; height:30px; box-sizing:border-box; font-size:14px; }
.chat-day-separator { display:flex; align-items:center; gap:9px; margin:12px 0 9px; color:#cee2f0; font-size:11px; font-weight:700; text-align:center; }
.chat-day-separator::before,.chat-day-separator::after { content:''; flex:1; height:1px; background:#a8c6da38; }
.chat-message-time { display:block; margin-top:3px; font-size:9px; color:#47657b; text-align:right; font-weight:400; }
.is-emote .chat-message-time { color:#bcd3e4; }
.clan-chat-event footer { justify-content:flex-end; opacity:1; gap:6px; }
.clan-chat-event .chat-message-time { color:#e5dff5; margin:0; font-size:9px; }
.event-founding .chat-message-time { color:#54350c; }
.clan-chat-event .event-demo-label { margin-right:auto; order:-1; opacity:.65; }
.event-context { color:#e5eaf3; font-size:10px; font-weight:500; margin-top:4px; overflow-wrap:anywhere; }
.event-fixture { display:flex; align-items:center; justify-content:center; gap:9px; }
.event-fixture img,.event-fixture .team-logo,.event-fixture svg { width:24px !important; height:24px !important; object-fit:contain; margin:0; padding:0; background:none; border:0; }
.event-founding .event-context { color:#54350c; }
.event-fixture-date { display:flex; flex-direction:column; align-items:center; gap:2px; font-size:13px; line-height:1.2; }
.event-fixture-date b { font-size:14px; color:#fff; font-weight:800; }
.event-fixture { gap:12px; margin-top:7px; }
.event-fixture img,.event-fixture .team-logo { width:30px !important; height:30px !important; }
.stream-log-heading { flex-direction:column; align-items:flex-start; gap:4px; }
.stream-log-heading .stream-log-status { margin-left:0; }
.event-final-score { color:#fff4c5; font-size:26px; font-weight:900; line-height:1.1; text-shadow:0 2px #3e2355; }
.demo,.event-demo-label { display:none !important; }
.clan-chat .clan-chat-event.is-result { padding-top:4px; padding-bottom:3px; min-height:0; }
.is-result .event-fixture { margin-top:0; gap:10px; }
.is-result .event-final-score { font-size:24px; }
.is-result footer { margin-top:1px; }
.result-outcome { position:absolute; left:7px; top:50%; transform:translateY(-50%); width:27px; height:27px; display:grid; place-items:center; border-radius:50%; font-size:21px; font-weight:900; }
.result-outcome.win { background:#136b47; color:#ffe491; border:1px solid #70dfa6; }
.result-outcome.loss { background:#933d51; color:#ffe3e9; border:1px solid #ef94a6; }
.result-outcome.draw { background:#476b91; color:#e5f2ff; }
.clan-chat .is-result.result-win { border-left:4px solid #65dda0; }
.clan-chat .is-result.result-loss { border-left:4px solid #ef879a; }
.clan-chat .clan-chat-event.is-schedule { padding-top:4px; padding-bottom:3px; min-height:0; background-image:linear-gradient(110deg,#7548b6e8,#8655c9ed),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect x='8' y='12' width='48' height='44' rx='6' fill='none' stroke='white' stroke-width='4'/%3E%3Cpath d='M8 25h48M20 6v14M44 6v14M18 35h7m7 0h7m7 0h4M18 45h7m7 0h7' fill='none' stroke='white' stroke-width='4'/%3E%3C/svg%3E"); background-size:cover,60px 60px; background-repeat:no-repeat; background-position:center,right 5px center; }
.is-schedule .event-fixture { margin-top:0; }
.is-schedule footer { margin-top:1px; }
.schedule-outcome { position:absolute; left:7px; top:50%; transform:translateY(-50%); width:27px; height:27px; display:grid; place-items:center; border-radius:50%; font-size:21px; font-weight:900; }
.schedule-outcome.confirmed { background:#136b47; border:1px solid #70dfa6; color:#ceffe6; }
.schedule-outcome.cancelled { background:#933d51; border:1px solid #ef94a6; color:#ffe3e9; }
/* Chunky game-style appointment badges. */
.schedule-outcome { width:30px; height:30px; left:6px; border-radius:9px; transform:translateY(-50%) rotate(-5deg); font-size:24px; line-height:1; font-family:Arial,sans-serif; border:2px solid !important; text-shadow:-1px -1px 0 #164b2b,1px -1px 0 #164b2b,-1px 1px 0 #164b2b,1px 2px 0 #164b2b; box-shadow:inset 0 2px 0 #ffffffa6,inset 0 -3px 0 #0003,0 3px 0 #152739,0 4px 5px #0005; }
.schedule-outcome.confirmed { background:linear-gradient(155deg,#c1ff8a 0%,#75dd49 42%,#36a73e 100%); color:#fff8d3; border-color:#e0ffc0 !important; }
.schedule-outcome.cancelled { background:linear-gradient(155deg,#ffac91 0%,#f15c57 42%,#bb3549 100%); color:#fff2d9; border-color:#ffd6bc !important; text-shadow:-1px -1px 0 #742334,1px -1px 0 #742334,-1px 1px 0 #742334,1px 2px 0 #742334; }
.schedule-outcome::after { content:''; position:absolute; inset:3px 4px auto; height:7px; border-radius:4px; background:linear-gradient(#ffffff70,transparent); pointer-events:none; }
.clan-chat .is-schedule { padding-top:7px; padding-bottom:7px; }
.is-schedule footer { position:absolute; bottom:3px; right:8px; margin:0; }
.is-schedule .event-fixture { min-height:38px; align-items:center; }
.clan-chat .event-stream { padding-left:10px; }
.result-outcome { width:30px; height:30px; left:6px; border-radius:9px; transform:translateY(-50%) rotate(-5deg); border:2px solid !important; font-size:24px; box-shadow:inset 0 2px 0 #ffffffa6,inset 0 -3px 0 #0003,0 3px 0 #152739,0 4px 5px #0005; }
.result-outcome.loss { background:linear-gradient(155deg,#ffb198,#ef665c 42%,#ba354d); border-color:#ffd6bc !important; color:#fff4df; text-shadow:-1px -1px #742334,1px -1px #742334,-1px 1px #742334,1px 2px #742334; }
.result-outcome.win { background:linear-gradient(155deg,#c1ff8a,#75dd49 42%,#36a73e); border-color:#e0ffc0 !important; }
.result-outcome::after { content:''; position:absolute; inset:3px 4px auto; height:7px; border-radius:4px; background:linear-gradient(#ffffff70,transparent); pointer-events:none; }
/* Larger event crests and a celebratory founding card. */
.event-stream .stream-log-heading { flex-direction:row; align-items:center; justify-content:space-between; flex-wrap:nowrap; gap:5px; }
.event-stream .stream-log-heading .stream-log-status { margin-left:auto; white-space:nowrap; font-size:9px; padding:3px 5px; }
.clan-chat .event-league { padding-left:60px; }
.event-league .event-emblem { left:9px; width:44px; height:38px; }
.event-league .event-emblem img { width:44px !important; height:38px !important; max-width:44px; max-height:38px; }
.clan-chat .event-founding { min-height:56px; padding:10px 12px 12px 66px; border:2px solid #ffe8a2; border-radius:10px; background:radial-gradient(ellipse at 25% 0%,#fff6c5a6,transparent 58%),linear-gradient(135deg,#ffe695,#edbd4f 55%,#c68a26); box-shadow:inset 0 2px 0 #fff7d6,inset 0 -3px 0 #a46d2580,0 3px 0 #152c3c; }
.event-founding .event-emblem { left:10px; width:46px; height:46px; filter:drop-shadow(0 2px 2px #64430d88); }
.event-founding .event-emblem img,.event-founding .event-emblem img.team-logo.big,.event-founding .event-emblem .team-logo { width:46px !important; height:46px !important; max-width:46px; max-height:46px; }
.clan-chat .event-founding p { font-size:13px; text-align:left; margin:0 0 3px; color:#51320c; }
.event-founding .event-context { justify-content:flex-start; font-size:11px; font-weight:700; }
.event-founding footer { position:absolute; right:9px; bottom:4px; margin:0; }
.clan-chat .event-clan { padding-left:58px; }
.event-clan .event-emblem { left:8px; width:42px; height:42px; }
.event-clan .event-emblem img,.event-clan .event-emblem img.team-logo.big,.event-clan .event-emblem .team-logo { width:42px !important; height:42px !important; max-width:42px; max-height:42px; }
.clan-chat .event-league.league-celebration { padding-right:32px; }
.league-celebration::after { content:'✦'; position:absolute; right:10px; top:7px; color:#ffe58b; font-size:22px; line-height:1; text-shadow:0 2px 0 #826424,0 0 8px #ffd65670; }
.league-celebration::before { content:'✦'; position:absolute; right:27px; top:19px; color:#fff3b0; font-size:10px; line-height:1; }

/* Event-specific pastel results and decorative game graphics. */
.clan-chat .is-result.result-win { background:linear-gradient(135deg,#d7efbc,#b0d798); border-color:#dcf5c7; }
.clan-chat .is-result.result-loss { background:linear-gradient(135deg,#f5d1cf,#e7a9ae); border-color:#ffe0de; }
.clan-chat .is-result.result-draw { background:linear-gradient(135deg,#d8e3ec,#b9cbdc); border-color:#e7f0f7; }
.is-result .event-fixture-score { color:#253c4c; text-shadow:0 1px 0 #ffffff80; }
.is-result .chat-message-time { color:#425867; }
.clan-chat .is-result::before { content:''; position:absolute; right:9px; top:50%; transform:translateY(-50%) rotate(12deg); width:54px; height:54px; background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2250%22%20r%3D%2245%22%20fill%3D%22%23edf6ff%22%20stroke%3D%22%2331516c%22%20stroke-width%3D%224%22%2F%3E%3Cpath%20d%3D%22M40%2029%2061%2029%2072%2048%2059%2066%2038%2062%2029%2043Z%22%20fill%3D%22%2355738a%22%20stroke%3D%22%2331516c%22%20stroke-width%3D%223%22%2F%3E%3Cpath%20d%3D%22m40%2029-8-20m29%2020%2013-14m-2%2033%2022%203M59%2066l9%2024M38%2062%2022%2080M29%2043%205%2040%22%20fill%3D%22none%22%20stroke%3D%22%2331516c%22%20stroke-width%3D%224%22%2F%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2247%22%20r%3D%228%22%20fill%3D%22%238bdcff%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat; opacity:.18; pointer-events:none; }
.clan-chat .event-stream::before { content:''; position:absolute; left:7px; bottom:3px; width:76px; height:58px; background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20120%2090%22%3E%3Crect%20x%3D%227%22%20y%3D%2210%22%20width%3D%2288%22%20height%3D%2258%22%20rx%3D%229%22%20fill%3D%22%23b8a1ea%22%20stroke%3D%22%23e9d9ff%22%20stroke-width%3D%225%22%2F%3E%3Cpath%20d%3D%22m44%2025%2025%2015-25%2015Z%22%20fill%3D%22%23f1e8ff%22%2F%3E%3Cpath%20d%3D%22M36%2079h30m-15-11v11%22%20stroke%3D%22%23e9d9ff%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M103%2027q14%2013%200%2026m-4-20q7%207%200%2014%22%20fill%3D%22none%22%20stroke%3D%22%23e9d9ff%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat; opacity:.15; pointer-events:none; }
.is-result .event-context,.is-result footer,.event-stream .event-context,.event-stream .stream-log-heading,.event-stream footer { position:relative; z-index:1; }
/* Compact, raised result cards with a vertically centered score. */
.clan-chat .is-result { min-height:50px; box-sizing:border-box; padding:6px 42px; display:flex; align-items:center; border-width:2px; border-radius:9px; box-shadow:inset 0 2px 0 #ffffffb3,inset 0 -3px 0 #0000001c,0 3px 0 #132b3b,0 4px 5px #00000024; }
.clan-chat .is-result.result-win { background:linear-gradient(160deg,#e1f6c9,#badf9b 55%,#a4ce82); border-color:#e9ffd6; }
.clan-chat .is-result.result-loss { background:linear-gradient(160deg,#ffe0d7,#edb2b0 55%,#dc969c); border-color:#ffe7dc; }
.clan-chat .is-result .event-fixture { width:100%; margin:0; min-height:34px; display:flex; justify-content:center; align-items:center; }
.clan-chat .is-result footer { position:absolute; bottom:3px; right:8px; margin:0; line-height:1; }
.clan-chat .is-result .event-fixture-score { font-size:25px; font-weight:900; color:#fff3cf; text-shadow:-1px -1px 0 #674d42,1px -1px 0 #674d42,-1px 1px 0 #674d42,1px 2px 0 #674d42,0 3px 0 #00000020; }
.clan-chat .is-result .result-outcome { z-index:2; }
.clan-chat .is-result { min-height:68px; padding-left:40px; padding-right:30px; }
.is-result .event-result-team { display:flex; flex-direction:column; align-items:center; gap:3px; flex:1; min-width:0; }
.is-result .event-result-team b { font-size:10px; line-height:1.15; color:#304352; text-shadow:0 1px #ffffff70; overflow-wrap:anywhere; text-align:center; }
.clan-chat .is-result .event-final-score { flex:none; font-size:25px; color:#fff3cf; text-shadow:0 2px #674d42; }
.clan-chat .is-result::before { background-image:url('https://www.pngkey.com/png/detail/19-196189_rocket-league-ball-png-png-black-and-white.png'); opacity:.22; width:62px; height:62px; }
.clan-chat .is-result { margin-left:35px; min-height:64px; padding-left:38px; padding-right:24px; }
.is-result .result-team-avatar { position:absolute; left:-35px; top:0; width:26px; height:30px; box-sizing:border-box; font-size:14px; }
.clan-chat .is-result .event-result-team img,.clan-chat .is-result .event-result-team .team-logo { width:42px !important; height:42px !important; max-width:42px; max-height:42px; object-fit:contain; }
/* Anchor the stream avatar to the card, matching normal chat avatars. */
.event-stream .stream-log-heading { position:static; }
.event-stream .stream-log-heading .clan-chat-avatar { left:-35px; top:0; display:grid; place-items:center; margin:0; }
.clan-chat .event-stream::before { left:auto; right:7px; bottom:3px; }
.clan-chat .is-result { flex-direction:column; align-items:stretch; gap:3px; padding-top:7px; }
.is-result .result-team-name { font-size:11px; line-height:1.2; font-weight:900; color:#304352; text-shadow:0 1px #ffffff70; position:relative; z-index:1; }
.clan-chat .is-result .result-team-name { align-self:stretch; text-align:left; margin-left:-28px; padding:0; }
.clan-chat .is-result .result-outcome.loss { background:none; border:0 !important; box-shadow:none; transform:translateY(-25%); width:29px; height:33px; }
.result-outcome.loss::after { display:none; }
.result-outcome.loss svg { width:29px; height:33px; display:block; filter:drop-shadow(0 2px 1px #96535b55); }
/* One fixed circular avatar size throughout chat surfaces. */
.clan-chat .clan-chat-avatar,
.clan-chat .event-stream .stream-log-heading .clan-chat-avatar,
.clan-chat .is-result .result-team-avatar,
.chat-person .social-avatar,
.chat-log .social-avatar {
  box-sizing:border-box; width:30px !important; height:30px !important;
  min-width:30px; max-width:30px; min-height:30px; max-height:30px;
  flex:0 0 30px; border-radius:50% !important; overflow:hidden;
  display:grid; place-items:center; padding:0; font-size:14px; line-height:1;
  border:2px solid #9dcae5; background:linear-gradient(#649abd,#2a5072);
}
.clan-chat-avatar img,.chat-person .social-avatar img,.chat-log .social-avatar img { width:100%; height:100%; object-fit:cover; border-radius:50%; display:block; }
.clan-chat .is-emote .clan-chat-avatar { display:none; }
/* Shared avatar column: 30px circle plus 6px spacing. */
.clan-chat .clan-chat-message { gap:6px; }
.clan-chat .is-result,
.clan-chat .event-stream:has(.stream-log-heading .clan-chat-avatar) { margin-left:36px; }
.clan-chat .is-result .result-team-avatar { left:-38px; }
.clan-chat .event-stream .stream-log-heading .clan-chat-avatar { left:-37px; }

/* Faint outlined Rocket League-style ball, matching the calendar watermark. */
.clan-chat .is-result::before { background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2250%22%20r%3D%2244%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%225%22%2F%3E%3Cpath%20d%3D%22m37%2027%2025%201%2015%2022-15%2024-27-3-13-25Z%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%224%22%2F%3E%3Cpath%20d%3D%22m37%2027-6-17m31%2018%2012-13m3%2035%2017%202M62%2074l6%2017M35%2071%2021%2083M22%2046%207%2042%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%224%22%2F%3E%3Cpath%20d%3D%22m43%2039%2014-1%209%2012-9%2013-15-2-7-12Z%22%20fill%3D%22white%22%2F%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2250%22%20r%3D%225%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%223%22%2F%3E%3Cpath%20d%3D%22M22%2022q15-15%2034-12%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%223%22%2F%3E%3C%2Fsvg%3E"); right:7px; width:60px; height:60px; opacity:.18; transform:translateY(-50%); }
/* Scheduling events use the same team sender column as results. */
.clan-chat .is-schedule { margin-left:36px; padding-top:7px; padding-left:38px; min-height:64px; box-sizing:border-box; }
.clan-chat .is-schedule .result-team-avatar { position:absolute; left:-37px; top:0; }
.clan-chat .is-schedule .result-team-name { display:block; text-align:left; margin-left:-28px; font-size:11px; line-height:1.2; font-weight:900; color:#fff2be; }
.clan-chat .is-schedule .event-fixture { margin-top:3px; }
.clan-chat .is-schedule .schedule-outcome { top:29px; left:8px; transform:none; width:26px; height:29px; }
.clan-chat .is-schedule .schedule-outcome.confirmed { background:none; border:0 !important; box-shadow:none; text-shadow:none; }
.schedule-outcome.confirmed::after { display:none; }
.schedule-outcome.confirmed svg { display:block; width:26px; height:29px; filter:drop-shadow(0 2px 1px #163c2833); }
.clan-chat .event-stream .stream-log-heading { margin-bottom:3px; }
.clan-chat .stream-confirmed .stream-log-status,.clan-chat .stream-cancelled .stream-log-status { position:absolute; left:8px; top:29px; margin:0; padding:0; width:26px; height:29px; background:none; border:0; border-radius:0; }
.stream-log-status svg { display:block; width:26px; height:29px; filter:drop-shadow(0 2px 1px #163c2833); }
.clan-chat .stream-confirmed .event-fixture,.clan-chat .stream-cancelled .event-fixture { margin-left:28px; min-height:38px; }
.clan-chat-event .event-card-link { position:absolute; inset:0; z-index:3; border-radius:inherit; text-decoration:none; }
.clan-chat-event:has(.event-card-link) { cursor:pointer; }
.clan-chat-event:has(.event-card-link):hover { filter:brightness(1.06); }
.event-card-link:focus-visible { outline:3px solid #ffe59b; outline-offset:2px; }
.clan-chat .is-result .result-team-name + p { text-align:left; margin:2px 0 0 -28px; font-size:11px; }
/* A consistent, clickable back button across compact pages. */
#app .game-topbar a.back.play-back { box-sizing:border-box; width:34px; height:34px; min-height:34px !important; padding:0 !important; flex:0 0 34px; display:inline-flex; align-items:center; justify-content:center; position:relative; z-index:10; border-radius:50%; }
#app a.back.play-back > span { display:flex; align-items:center; justify-content:center; width:30px; height:30px; line-height:1; border-radius:50%; font-size:24px; pointer-events:none; }
#app a.back.play-back > b { display:none; }
/* Align the clan back control with the title row. */
#app:has(.clan-compact-header) > .game-topbar a.back.play-back { position:absolute; top:8px; left:16px; margin:0 !important; }
.clan-chat .is-result .result-outcome.win,.clan-chat .is-result .result-outcome.draw { background:none; border:0 !important; box-shadow:none; transform:translateY(-25%); width:29px; height:33px; }
.result-outcome.win::after,.result-outcome.draw::after { display:none; }
.result-outcome.win svg,.result-outcome.draw svg { display:block; width:29px; height:33px; filter:drop-shadow(0 2px 1px #163c2833); }
.clan-chat .event-stream .stream-event-note { margin:7px 0 2px; padding:7px 8px; border-radius:7px; background:#e3edf0; color:#203e58; font-size:12px; line-height:1.4; font-weight:400; text-shadow:none; text-align:left; white-space:pre-wrap; overflow-wrap:anywhere; position:relative; z-index:1; }
.clan-chat .event-stream .stream-event-note { background:none; border:0; border-radius:0; padding:0; color:#f3edff; }
.clan-chat .event-league-watermark { position:absolute; right:0; top:0; bottom:0; width:140px; overflow:hidden; pointer-events:none; opacity:.12; display:flex; align-items:center; justify-content:flex-end; }
.event-league-watermark img,.event-league-watermark svg { width:140px !important; height:100px !important; max-width:none; max-height:none; object-fit:contain; transform:translateX(20px) rotate(-8deg); }
.clan-chat .is-proposal { margin-left:36px; padding-left:10px; }
.clan-chat .is-proposal .result-team-avatar { position:absolute; left:-37px; top:0; }
.clan-chat .is-proposal .result-team-name { display:block; text-align:left; font-size:11px; line-height:1.2; color:#fff2be; }
.clan-chat .is-proposal p { text-align:left; margin:4px 0; }
/* Bring the clan overview close to the top of the viewport. */
/* Shared social navigation inspired by raised game tabs and an icon shelf. */
#app:has(.network-tabs a[href="#friends"][aria-current="page"]) > .game-topbar { height:8px !important; min-height:0 !important; padding-top:0 !important; padding-bottom:0 !important; }
#app:has(.network-tabs a[href="#friends"][aria-current="page"]) .game-shell { padding-top:0 !important; }
#app:has(.network-tabs a[href="#friends"][aria-current="page"]) #game-stage { padding-top:4px !important; }
.network-tabs { border:0 !important; background:none !important; padding:0 !important; gap:6px; margin-bottom:0 !important; border-radius:0 !important; }
.network-tabs a { padding:12px 8px !important; border:2px solid #446788; border-bottom:0; border-radius:16px 16px 0 0 !important; background:linear-gradient(#233c5b,#162a45); font-size:15px; font-weight:900; text-shadow:0 2px #071629; }
.network-tabs a[aria-current="page"] { background:linear-gradient(#a9d3ec,#578ab5) !important; color:#fff; border-color:#d2ecfa; box-shadow:inset 0 2px #ffffff80; }
.nexus-section-tabs { display:flex; gap:8px; padding:8px 8px 10px; margin:0 0 14px; border-top:3px solid #d1ecfa; border-bottom:3px solid #355879; background:linear-gradient(#83aecb,#4b729d); box-shadow:0 4px 0 #112b47; }
.nexus-section-tabs .button { flex:1; min-width:0; display:flex; flex-direction:column; gap:3px; border:0; background:none; box-shadow:none; padding:5px 2px; font-size:10px; color:#eaf6ff; }
.nexus-section-tabs .button svg { width:30px; height:30px; filter:drop-shadow(0 2px 0 #173654); }
.nexus-section-tabs .button.primary { background:linear-gradient(#a975ed,#643bb3); border:2px solid #e6bbff; border-bottom:3px solid #ffcc62; border-radius:8px 8px 14px 14px; margin-top:-13px; margin-bottom:-15px; padding-top:12px; padding-bottom:13px; box-shadow:0 3px 0 #392563; }
/* Unified social menu: stable tabs and equal icon slots on both pages. */
#app:has(.shared-social-menu) .network-tabs { display:grid; grid-template-columns:1fr 1fr; gap:5px; margin:0 !important; }
#app:has(.shared-social-menu) .network-tabs a { min-height:42px; box-sizing:border-box; padding:9px 8px !important; text-align:center; font-size:15px; border-radius:12px 12px 0 0 !important; }
#app:has(.shared-social-menu) .nexus-section-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; box-sizing:border-box; width:100%; min-height:76px; padding:8px; margin:0 0 16px !important; border:2px solid #8cb5d3; border-top:3px solid #d1ecfa; border-radius:0 0 12px 12px; background:linear-gradient(#6089ad,#355b83); box-shadow:0 3px 0 #102a45; }
#app:has(.shared-social-menu) .nexus-section-tabs .button { min-width:0; min-height:56px; margin:0 !important; padding:5px 2px !important; box-sizing:border-box; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; font-size:10px; line-height:1.2; border:2px solid transparent; border-radius:8px; background:none; box-shadow:none; color:#f2f8ff; text-decoration:none; }
#app:has(.shared-social-menu) .nexus-section-tabs .button svg { display:block; width:26px !important; height:26px !important; flex:0 0 26px; margin:0; }
#app:has(.shared-social-menu) .nexus-section-tabs .button.primary { margin:0 !important; background:linear-gradient(#aa7be7,#6744ac); border:2px solid #d8b9fb; border-bottom-color:#f5cb6a; border-radius:8px; box-shadow:inset 0 1px #ffffff50,0 2px 0 #30235b; }
#app:has(.shared-social-menu) .nexus-section-tabs .button:focus-visible { outline:2px solid #ffe3a0; outline-offset:2px; }
#app:has(.shared-social-menu) > .game-topbar { height:0 !important; min-height:0 !important; padding:0 !important; }
#app:has(.shared-social-menu) .game-shell { padding-top:0 !important; }
#app:has(.shared-social-menu) #game-stage { padding-top:4px !important; }
#app:has(.shared-social-menu) .nexus-section-tabs .button { position:relative; }
.nexus-section-tabs .social-friend-count { position:absolute; top:3px; right:5px; display:grid; place-items:center; min-width:17px; height:17px; padding:0 3px; border-radius:50%; background:#ffcf70; color:#49300f; font-size:10px; border:1px solid #ffe7b4; }
.nexus-section-tabs .social-friend-count svg { display:none !important; }
.social-search[hidden] { display:none !important; }
#app:has(.shared-social-menu) .nexus-section-tabs { min-height:60px; padding:5px 7px; margin-bottom:11px !important; }
#app:has(.shared-social-menu) .nexus-section-tabs .button { min-height:44px; padding:3px 2px !important; gap:2px; }
#app:has(.shared-social-menu) .nexus-section-tabs .button svg { width:22px !important; height:22px !important; flex-basis:22px; }
.friends-list .friend-card:has(.social-connected) { position:relative; padding-right:44px; }
.friends-list .friend-card:has(.social-connected) .social-connected,
.friends-list .friend-card:has(.social-connected) .social-buttons > a { display:none; }
.friends-list .friend-card:has(.social-connected) .social-buttons { margin:0; padding:0; min-height:0; }
.friends-list .friend-card:has(.social-connected) .social-remove { position:absolute; top:10px; right:10px; width:30px; height:30px; display:grid; place-items:center; padding:5px; border:1px solid #7295ad; border-radius:8px; background:#173b55; color:#c7dfed; text-decoration:none; }
.social-remove svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:2px; }
#app:has(.shared-social-menu) .nexus-section-tabs .button.primary { background:linear-gradient(#61c8d6,#267f99); border-color:#aae8ef; border-bottom-color:#69d6de; box-shadow:inset 0 1px #ffffff60,0 2px 0 #16495e; }
.geo-active #game-stage.geo-with-social-menu { padding:4px 16px 0 !important; }
.geo-with-social-menu .network-tabs,.geo-with-social-menu .clan-menu-shelf { position:relative; z-index:6; }
.geo-active .geo-with-social-menu .geo-layout { top:110px; }
.geo-active .geo-with-social-menu .geo-toolbar { top:124px; grid-template-columns:minmax(0,1fr); }
/* Use the same top origin for social menus and the full-screen map. */
#app:has(.shared-social-menu) > .player-bar { display:none !important; }
#app:has(.shared-social-menu) > .game-topbar { display:none !important; }
#app:has(.shared-social-menu) .game-shell { margin-top:0 !important; padding-top:0 !important; }
#app:has(.shared-social-menu) #game-stage { margin-top:0 !important; padding-top:12px !important; }
.geo-active #game-stage.geo-with-social-menu { padding-top:12px !important; }
.geo-active .geo-with-social-menu .geo-layout { top:118px; }
.geo-active .geo-with-social-menu .geo-toolbar { top:132px; }
/* Full map backdrop, with interaction clipped to the visible map viewport. */
.geo-active .geo-with-social-menu .geo-layout { top:0; overflow:hidden; }
.geo-active .geo-with-social-menu .geo-map { overflow:hidden; }
.geo-active .geo-with-social-menu .network-tabs,
.geo-active .geo-with-social-menu .clan-menu-shelf { pointer-events:auto; }
.geo-active .geo-with-social-menu .network-tabs { background:#172f49 !important; }
.geo-active .geo-with-social-menu .geo-map::after { content:''; position:absolute; left:0; right:0; top:0; height:118px; z-index:4; pointer-events:auto; background:transparent; }
/* Identical menu geometry for friends, clans and clan search. */
#app:has(.shared-social-menu) .network-tabs { height:42px !important; min-height:42px !important; margin:0 !important; padding:0 !important; }
#app:has(.shared-social-menu) .network-tabs > a { height:42px !important; min-height:42px !important; }
#app:has(.shared-social-menu) .nexus-section-tabs { height:60px !important; min-height:60px !important; margin:0 0 11px !important; padding:5px 7px !important; align-items:stretch; }
#app:has(.shared-social-menu) .nexus-section-tabs .button { height:44px !important; min-height:44px !important; margin:0 !important; }
/* Keep all map controls below the shared navigation and above map overlays. */
.geo-active .geo-with-social-menu .geo-toolbar { top:118px !important; left:10px; width:calc(100% - 70px); z-index:7; }
.geo-active .geo-with-social-menu .geo-zoom { top:118px !important; right:10px !important; z-index:7; }
.geo-active .geo-with-social-menu .geo-map::after { height:110px; }
.geo-active .geo-with-social-menu .geo-toolbar .geo-presets { width:100%; box-sizing:border-box; }
/* Night-meet navigation: smoked glass, brushed metal and electric blue. */
#app:has(.shared-social-menu) .network-tabs { gap:5px; background:transparent !important; }
#app:has(.shared-social-menu) .network-tabs > a { background:linear-gradient(155deg,#203347e8,#0a1725eb) !important; border:1px solid #506c84; border-bottom:0; color:#adc2d5; text-shadow:0 1px 2px #000; box-shadow:inset 0 1px #b4d5f21a; backdrop-filter:blur(12px); }
#app:has(.shared-social-menu) .network-tabs > a[aria-current="page"] { background:linear-gradient(155deg,#254867ec,#10283cec) !important; color:#eefaff; border-color:#6da9ce; box-shadow:inset 0 2px #96dcff55,0 -2px 12px #2999ee22; }
#app:has(.shared-social-menu) .nexus-section-tabs { background:linear-gradient(130deg,#142739e8,#091521e8) !important; border:1px solid #506d85; border-top:2px solid #71a5c5; box-shadow:inset 0 1px #bee7ff12,0 4px 10px #0008; backdrop-filter:blur(12px); }
#app:has(.shared-social-menu) .nexus-section-tabs .button { color:#b9ccdd; text-shadow:0 1px 2px #000; }
#app:has(.shared-social-menu) .nexus-section-tabs .button.primary { background:linear-gradient(150deg,#214760,#102c40); border:1px solid #64bfed; border-bottom:2px solid #79dbff; color:#e9faff; box-shadow:inset 0 1px #a4e7ff33,0 0 10px #169fe52b; }
#app:has(.shared-social-menu) .nexus-section-tabs .button.primary svg { color:#8cdeff; filter:drop-shadow(0 0 4px #37b8ef66); }

/* The fixed map stage bypasses #app padding: inset its controls explicitly. */
body:has(#geo-map) #game-stage.geo-with-social-menu {
  padding-top: calc(var(--app-safe-top, env(safe-area-inset-top, 0px)) + 12px) !important;
}
body:has(#geo-map) .geo-with-social-menu .geo-toolbar,
body:has(#geo-map) .geo-with-social-menu .geo-zoom {
  top: calc(var(--app-safe-top, env(safe-area-inset-top, 0px)) + 118px) !important;
}
body:has(#geo-map) .geo-with-social-menu .geo-map::after {
  height: calc(var(--app-safe-top, env(safe-area-inset-top, 0px)) + 110px);
}

/* Match the normal social-page origin: #app safe inset + stage spacing.
   This selector must outrank the shared #app:has(.shared-social-menu) rule. */
#app:has(#geo-map) #game-stage.geo-with-social-menu {
  padding-top: calc(var(--app-safe-top, env(safe-area-inset-top, 0px)) + 12px) !important;
}

/* One reusable social header owns placement across social views. */
#app #game-stage.has-social-menu { animation:none; transform:none; }
#app .shared-social-menu {
  position:fixed;
  top:calc(var(--app-safe-top, env(safe-area-inset-top, 0px)) + 12px);
  left:50%; transform:translateX(-50%);
  width:calc(100% - 32px); max-width:1164px;
  height:102px; z-index:10; box-sizing:border-box;
}
#app #game-stage.has-social-menu::before { content:''; display:block; height:113px; }
#app:has(#geo-map) #game-stage.has-social-menu { padding-top:0 !important; }
#app .shared-social-menu .network-tabs,
#app .shared-social-menu .nexus-section-tabs { width:100%; box-sizing:border-box; }
@media (min-width: 900px) {
  #app .clan-chat { width:100%; max-width:960px; margin-left:auto; margin-right:auto; box-sizing:border-box; }
}
/* Keep the fixed social menu anchored to the viewport, not a translated shell. */
#app:has(#geo-map) > .game-shell { translate:none !important; }

/* Clan discovery uses map gestures and region presets without extra controls. */
.geo-with-social-menu .geo-toolbar > .search,
.geo-with-social-menu .geo-zoom { display:none !important; }
.geo-active .geo-with-social-menu .geo-toolbar { width:calc(100% - 20px) !important; }

/* Clan discovery opens details directly through map markers. */
.geo-with-social-menu .geo-presets,
.geo-with-social-menu .geo-sheet-handle { display:none !important; }
.geo-with-social-menu .geo-sidebar[data-state="collapsed"] { display:none !important; }

.clan-chat-avatar:has(img) { padding:0; overflow:hidden; }
.clan-chat-avatar img { display:block; width:100%; height:100%; object-fit:cover; border-radius:inherit; }

/* Map geometry is final from the first frame, including its fixed header. */
#app:has(#geo-map) > .game-shell{
  transform:none !important;translate:none !important;animation:none !important;
  transition:none !important;margin-top:0 !important;padding-top:0 !important;
}
#app:has(#geo-map) #game-stage{
  transform:none !important;translate:none !important;animation:none !important;
  transition:none !important;padding-top:0 !important;
}
#app:has(#geo-map) #game-stage.has-social-menu::before{display:none}
#app:has(#geo-map) .geo-layout{top:0 !important}

/* Reveal the first history only once server data and scroll geometry agree. */
.clan-chat-messages.chat-initializing{visibility:hidden}
.clan-chat-messages .emote-message-play{content-visibility:visible;contain-intrinsic-size:none}

/* Social overview follows the same vertical edge gesture as other pages. */
#app:not(:has(#geo-map)) > .shared-social-menu { translate:0 var(--edge-pull,0px); transition:translate .35s cubic-bezier(.2,.8,.2,1); }
html.edge-pulling #app:not(:has(#geo-map)) > .shared-social-menu { transition:none; }
@media(prefers-reduced-motion:reduce){#app > .shared-social-menu{transition:none}}
/* The upper social navigation scrolls with each page. */
#app #game-stage .shared-social-menu{position:relative;top:auto;left:auto;transform:none;translate:none;width:100%;max-width:none;height:auto;margin:0 0 18px;z-index:6}
#app #game-stage.has-social-menu::before{display:none;content:none;height:0}
/* Clan header matches the profile's 720px inner content width. */
#game-stage.clan-compact-header>.team-title,
#game-stage.clan-compact-header>.clan-section-tabs{width:100%;max-width:720px;box-sizing:border-box;margin-left:auto;margin-right:auto}
#app:has(.clan-compact-header)>a.unified-back{left:max(16px,calc(50% - 360px));}
/* Clan navigation and every pane share one responsive content column. */
#app .game-shell #game-stage.clan-compact-header{width:calc(100% - 24px);max-width:720px;box-sizing:border-box;margin-inline:auto;padding-inline:0!important}
#game-stage.clan-compact-header>.clan-section-tabs{height:40px;min-height:40px;max-height:40px;flex:0 0 40px;box-sizing:border-box;padding:3px;align-items:stretch}
#game-stage.clan-compact-header>.clan-section-tabs button{height:32px;min-height:32px;max-height:32px;box-sizing:border-box;line-height:1.2;white-space:nowrap}
#game-stage.clan-compact-header>.clan-tab-panel{width:100%;max-width:none;min-width:0;box-sizing:border-box;margin-inline:0}
#game-stage.clan-compact-header>.clan-tab-panel>*,#game-stage.clan-compact-header .clan-chat,#game-stage.clan-compact-header .clan-leagues{width:100%;max-width:none;box-sizing:border-box;margin-inline:0}
/* Fixed artwork behind the scrolling conversation, with a latest-message shortcut. */
#clan-pane-chat .clan-chat{position:relative;isolation:isolate}
.clan-chat-watermark{position:absolute;inset:8% 7% 90px;display:grid;place-items:center;pointer-events:none;z-index:-1;opacity:.1}
.clan-chat-watermark>.team-logo,.clan-chat-watermark>svg{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain;filter:grayscale(1)}
.clan-chat .clan-chat-messages{background:transparent}
.clan-chat-latest{position:absolute;right:16px;bottom:78px;z-index:4;width:40px;height:40px;display:grid;place-items:center;padding:8px;border:1px solid #b6d9ec88;border-radius:50%;background:#102b43e8;color:white;cursor:pointer;box-shadow:0 3px 12px #0005}
.clan-chat-latest[hidden]{display:none!important}
.clan-chat-latest svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
/* One stable frame for every clan tab; only the selected pane scrolls. */
html:has(#game-stage.clan-compact-header),body:has(#game-stage.clan-compact-header){overflow:hidden;overscroll-behavior:none}
#app:has(#game-stage.clan-compact-header){height:100dvh;overflow:hidden}
#app .game-shell:has(#game-stage.clan-compact-header){padding-bottom:0;overflow:hidden;overscroll-behavior:none}
#app .game-shell #game-stage.clan-compact-header{display:flex;flex-direction:column;gap:0;height:var(--clan-chat-height,calc(100dvh - 112px));min-height:0;padding-bottom:0;overflow:hidden}
#game-stage.clan-compact-header>.team-title{flex-shrink:0;min-height:48px;height:48px;margin-top:0;margin-bottom:4px}
#game-stage.clan-compact-header>.clan-section-tabs{margin-top:4px;margin-bottom:8px}
#game-stage.clan-compact-header>.clan-tab-panel{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;align-content:start}
#game-stage.clan-compact-header>#clan-pane-chat{overflow:hidden}
#game-stage.clan-compact-header>.clan-tab-panel[hidden]{display:none!important}
/* Woven carbon surface sits below the logo and conversation. */
#clan-pane-chat .clan-chat{background-color:#10283b;background-image:linear-gradient(120deg,#284a6055,#07152155),repeating-linear-gradient(0deg,#ffffff05 0 1px,transparent 1px 4px),repeating-conic-gradient(#0c2031 0% 25%,#193247 0% 50%);background-size:100% 100%,4px 4px,10px 10px}
/* Clan Home owns the actions previously hidden in the corner menu. */
#game-stage.clan-compact-header>.clan-section-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}
.clan-home{display:flex;flex-direction:column;align-items:center;gap:20px;padding:24px;border:1px solid #648aa8;border-radius:14px;background:linear-gradient(135deg,#244961e8,#10273ee8)}
.clan-home>.clan-home-logo{width:140px!important;height:140px!important;max-width:140px!important;max-height:140px!important;object-fit:contain}
.clan-home h2{margin:0;font-size:22px;text-align:center}
.clan-home>.clan-actions{position:static;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;width:100%;margin:0}
.clan-home .clan-actions .button{min-height:40px;padding:9px 14px;font-size:12px}
/* Align every clan back-button placement with the shared content edge. */
#app:has(.clan-compact-header)>a.unified-back,
#app:has(.clan-compact-header)>.game-topbar a.back.play-back,
#app:has(.clan-compact-header)>.game-topbar .topbar-back{left:max(12px,calc(50% - 360px))!important}
#clan-pane-leagues .clan-leagues>h3{display:none}

/* Compact, aligned clan-chat composer. */
.clan-chat-compose{padding:6px 9px;align-items:center;grid-template-columns:32px minmax(0,1fr) auto}
.clan-chat-compose>.field{align-self:center;padding:0}
.clan-chat-compose textarea{height:34px;min-height:34px;padding:8px 10px}
.clan-chat-compose>.clan-emote-toggle,.clan-chat-compose>.button{height:34px;min-height:34px;align-self:center;margin:0}
.clan-chat-compose>.button{padding:6px 11px}

.clan-chat-compose>.field>textarea{margin:0}

/* Align the member controls within the same 40px header. */
.nexus-members>.panel-head:first-child{height:40px;min-height:40px;padding:8px 10px;align-items:center}
.nexus-members>.panel-head:first-child>span{display:grid;place-items:center;box-sizing:border-box;min-width:28px;height:24px;padding:0 7px;border:1px solid #8cd9ff;border-radius:8px;background:linear-gradient(145deg,#326a91,#14364f);color:#e5f8ff;font-size:14px;font-weight:800;line-height:1;box-shadow:inset 0 1px #c4edff44,0 2px 0 #071b2c}
.nexus-members>.add-clan-member>summary{top:8px;right:10px;width:24px;height:24px;border:0;background:none;box-shadow:none;color:#bfe9ff;font-size:26px;font-weight:400;line-height:1;border-radius:4px}
.nexus-members>.add-clan-member>summary:hover{background:#8bd8ff18;color:#fff}

.clan-team-members{margin-top:14px}.clan-team-members>.panel-head h3{margin:0;font-size:14px}.clan-team-league{margin:0 10px 8px;color:#a9c8df;font-size:11px}

/* Let the whole members page scroll, keeping every roster at full height. */
#app .game-shell:has(#game-stage.clan-members-active){height:100dvh;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;padding-bottom:120px;overscroll-behavior-y:contain}
#app .game-shell #game-stage.clan-compact-header.clan-members-active{height:auto;min-height:0;overflow:visible}
#game-stage.clan-members-active>#clan-pane-members{flex:none;min-height:auto;overflow:visible;display:block}
#game-stage.clan-members-active #clan-pane-members>.nexus-members{height:auto;max-height:none;flex:none;overflow:visible}
#game-stage.clan-members-active .clan-member-list{height:auto;max-height:none;overflow:visible}

.clan-team-members>.panel-head:first-child{gap:12px}.clan-team-members>.panel-head h3{flex-shrink:0}.clan-team-competitions{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.clan-team-competitions>a{display:flex;align-items:center;color:#bce9ff;text-decoration:none;font-size:10px}.clan-team-competitions img{display:block;width:40px;height:22px;object-fit:contain}.clan-team-members>.panel-head>span{flex-shrink:0}

.clan-all-label{flex:1;margin:0 0 0 12px;font-size:14px}.team-roles-toggle{height:24px;min-height:24px;padding:2px 10px;font-size:11px}.team-role-actions{display:flex;flex-wrap:wrap;gap:6px;padding:8px}.team-role-actions[hidden],.clan-team-members .managed-member[hidden]{display:none!important}.team-role-actions .button{font-size:11px;padding:5px 8px}.team-role-actions svg,.team-role-badge svg{width:16px;height:16px}.team-role-badge{display:flex;align-items:center;gap:4px;margin-left:auto;font-size:11px}.team-role-leader{color:#ffdb87}.team-role-vice{color:#b9c7ff}.clan-team-members>.clan-notice:empty{display:none}
/* Team business cards borrow the league ticket's framed, illustrated surface. */
#game-stage.clan-members-active #clan-pane-members>.team-business-card{position:relative;isolation:isolate;overflow:hidden;border:2px solid #77bcdf;border-left:8px solid #6788bb;border-radius:18px;background:linear-gradient(115deg,#071a31ed,#123652de),url('/arena.svg') center/cover;box-shadow:inset 0 1px #d7f4ff77,0 4px 0 #061323,0 10px 24px #0004;margin-top:20px}
.team-business-card::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(130deg,transparent 40%,#b5e9ff10 40%,#b5e9ff10 53%,transparent 53%)}
.team-business-card>.panel-head:first-child{height:auto;min-height:104px;padding:14px 18px;display:grid;grid-template-columns:72px auto minmax(0,1fr) 32px;grid-template-rows:auto auto;gap:8px 14px;background:linear-gradient(90deg,#1b47667a,#11274022);border-bottom:1px solid #8accec55}
.team-business-emblem{grid-column:1;grid-row:1/3;display:grid;place-items:center;filter:drop-shadow(0 3px 6px #0008)}
.team-business-emblem img.team-logo,.team-business-emblem svg{width:72px!important;height:72px!important;max-width:72px!important;max-height:72px!important;object-fit:contain}
.team-business-card>.panel-head h3{grid-column:2/4;grid-row:1;font-size:21px;font-weight:900;text-shadow:0 2px #07172b}
.team-business-card>.panel-head>.team-roles-toggle{grid-column:2;grid-row:2;justify-self:start}
.team-business-card>.panel-head>.clan-team-competitions{grid-column:3;grid-row:2;justify-content:flex-start}
.team-business-card>.panel-head>span{grid-column:4;grid-row:1/3;align-self:start;margin:0}
.team-business-card .clan-member-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:14px}
.team-business-card .managed-member{min-width:0;background:#12344dbd;border:1px solid #71b5d14d}
.team-business-card .member-row{height:auto!important;min-height:44px!important;flex-wrap:wrap}
.team-business-card .clan-member-profile{min-width:0;overflow-wrap:anywhere}
.team-business-card .member-row>small{font-size:9px;color:#a1c5dd}
.team-business-card>.clan-notice{margin:0;padding:0 14px 12px;font-size:10px}
@media(max-width:520px){.team-business-card .clan-member-list{grid-template-columns:1fr}.team-business-card>.panel-head:first-child{grid-template-columns:52px auto minmax(0,1fr) 28px;padding:12px;gap:8px}.team-business-emblem img.team-logo,.team-business-emblem svg{width:52px!important;height:52px!important}.team-business-card>.panel-head h3{font-size:18px}}

.team-business-watermark{position:absolute;inset:0;z-index:-1;display:grid;place-items:center;pointer-events:none;opacity:.18;overflow:hidden}
.team-business-watermark img.team-logo,.team-business-watermark svg{width:95%!important;height:95%!important;max-width:none!important;max-height:none!important;object-fit:contain;transform:rotate(-8deg) scale(1.1)}
#game-stage.clan-members-active #clan-pane-members>.team-business-card{background:linear-gradient(115deg,#071a31f2,#123652e8)}
.team-business-card.team-role-editing .managed-member{border-color:#c5a5ff;cursor:pointer;box-shadow:0 0 8px #b985ff22}.team-business-card.team-role-editing .team-roles-toggle{border-color:#c5a5ff;background:#3b315d}.team-business-card .team-role-actions{display:none!important}
/* Reduce visual noise and make the team business card shallower. */
#clan-pane-members .nexus-members>.panel-head:first-child>span,#clan-pane-members .clan-all-label{display:none!important}
#clan-pane-members>.nexus-members:not(.team-business-card)>.panel-head:first-child{justify-content:flex-end}
.team-business-card>.panel-head:first-child{min-height:72px;padding:8px 14px;gap:4px 10px;grid-template-columns:52px auto minmax(0,1fr)}
.team-business-card .team-business-emblem img.team-logo,.team-business-card .team-business-emblem svg{width:52px!important;height:52px!important;max-width:52px!important;max-height:52px!important}
.team-business-card>.panel-head h3{font-size:19px}
.team-business-card .clan-member-list{padding:8px 10px;gap:5px}
.team-business-card .managed-member .member-row{height:auto!important;min-height:36px!important;padding:4px 7px}
.team-business-card .member-row .member-avatar{width:22px;height:22px;flex-basis:22px}
@media(max-width:520px){.team-business-card>.panel-head:first-child{min-height:68px;padding:8px 10px;grid-template-columns:44px auto minmax(0,1fr)}.team-business-card .team-business-emblem img.team-logo,.team-business-card .team-business-emblem svg{width:44px!important;height:44px!important}}

/* The watermark precedes the header, so target the header by class. */
#clan-pane-members .team-business-card>.panel-head>span{display:none!important}
#clan-pane-members .team-business-card>.panel-head{display:flex;align-items:center;gap:12px;min-height:72px;height:auto;padding:8px 14px;box-sizing:border-box}
#clan-pane-members .team-business-card>.panel-head>.team-business-emblem{order:0;flex:0 0 52px}
#clan-pane-members .team-business-card>.panel-head>h3{order:1;margin:0;font-size:19px}
#clan-pane-members .team-business-card>.panel-head>.clan-team-competitions{order:2;flex:1}
#clan-pane-members .team-business-card>.panel-head>.team-roles-toggle{order:3;margin-left:auto;flex-shrink:0}
#clan-pane-members>.nexus-members:has(>.add-clan-member)>.panel-head{padding-right:10px}
#clan-pane-members>.nexus-members>.add-clan-member>summary{right:86px;top:8px}
@media(max-width:520px){#clan-pane-members .team-business-card>.panel-head{gap:8px;padding:8px 10px}#clan-pane-members .team-business-card>.panel-head>h3{font-size:16px}}

#clan-pane-members>.nexus-members>.panel-head{gap:8px}#clan-pane-members .clan-create-team{height:24px;min-height:24px;padding:2px 12px;line-height:18px;display:inline-flex;align-items:center;justify-content:center;font-size:11px}

.clan-new-team-form{display:grid;gap:10px}.clan-new-team-form .field{margin:0}.clan-new-team-form input{box-sizing:border-box;width:100%;margin-top:8px}.clan-new-team-form [role=status]{margin:0;font-size:12px}.clan-new-team-form [role=status]:empty{display:none}
/* Team creation uses translucent glass throughout, like the role chooser. */
.clan-role-popup:has(.clan-new-team-form){border:1px solid #d1eafa88;border-radius:26px;background:linear-gradient(130deg,#89b4cc55,#34556b48 48%,#11273b80);backdrop-filter:blur(26px) saturate(1.5);-webkit-backdrop-filter:blur(26px) saturate(1.5);box-shadow:inset 0 1px 2px #ffffffa0,inset 0 -2px 4px #06162766,0 14px 40px #0007}
.clan-role-popup .clan-new-team-form>.button{border:1px solid #c9e4f59c;border-radius:12px;background:linear-gradient(145deg,#a1cee144,#40637a55 60%,#16334870);color:#f2faff;box-shadow:inset 0 1px #fff8,inset 0 -1px #07152188,0 3px 7px #0003;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);text-shadow:0 1px 2px #071627;min-height:42px}
.clan-role-popup .clan-new-team-form>.button:hover{background:linear-gradient(145deg,#bce6f866,#5b819b66 60%,#24496188)}
.clan-role-popup .clan-new-team-form input{margin:0;border:1px solid #c6e5f580;border-radius:12px;background:#112b4059;color:#f2faff;box-shadow:inset 0 2px 6px #0003;min-height:42px}
.clan-role-popup .clan-new-team-form input::placeholder{color:#c4d8e7}
.clan-role-popup .clan-new-team-form input:focus-visible{outline:2px solid #c2edff80;outline-offset:2px}
/* Purple glass identifies the entire active team-role card. */
#game-stage.clan-members-active #clan-pane-members>.team-business-card.team-role-editing{
 border-color:#c79aff;border-left-color:#b680ef;
 background:linear-gradient(135deg,#67408d66,#18304de3 38%,#493060d9);
 box-shadow:inset 0 1px #eed5ff9c,inset 0 0 26px #ba75ff33,0 0 18px #ba75ff66;
}
.team-business-card.team-role-editing::after{
 content:'';position:absolute;inset:0;z-index:3;pointer-events:none;
 background:linear-gradient(110deg,transparent 30%,#d3a4ff06 40%,#efd1ff43 49%,#cb9aff12 56%,transparent 66%);
 background-size:300% 100%;background-position:100% 0;animation:role-window-shimmer 7.7s ease-in-out infinite;
}
.team-business-card.team-role-editing .managed-member{border-color:#c49ae88c;background:linear-gradient(125deg,#68458255,#19384be0 60%,#633c8044)}
.team-business-card.team-role-editing .team-roles-toggle{color:#f1dcff;border-color:#c99af4;background:linear-gradient(#654482,#382a53);box-shadow:inset 0 1px #ead0ff66,0 0 9px #b980ef55}
@media(prefers-reduced-motion:reduce){.team-business-card.team-role-editing::after{animation:none;opacity:.3;background-position:50% 0}}

#clan-pane-members .team-business-card>.panel-head>h3{margin-right:auto;text-align:left}.team-add-member{display:grid;place-items:center;min-height:36px;padding:0;border:1px solid #71b5d14d;border-radius:9px;background:#12344dbd;color:#c8eaff;font-size:25px;cursor:pointer}.team-add-member:hover{background:#36587988;border-color:#bce6ff}.team-add-member[hidden]{display:none}
#app:has(.clan-compact-header)>a.unified-back{position:fixed!important;top:12px!important;z-index:110}

/* Scroll the whole clan page outside the conversation view. */
#app .game-shell:has(#game-stage.clan-page-scroll){height:100dvh;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;padding-bottom:120px;overscroll-behavior-y:contain}
#app .game-shell #game-stage.clan-compact-header.clan-page-scroll{height:auto;min-height:0;overflow:visible}
#game-stage.clan-page-scroll>.clan-tab-panel{flex:none;min-height:auto;max-height:none;overflow:visible}
#game-stage.clan-page-scroll>.clan-tab-panel[hidden]{display:none}

#app>a.back.play-back{position:fixed!important;top:12px!important;left:max(12px,calc(50% - 360px))!important;z-index:110;margin:0!important}
.shared-match-list .match-card-wrap:has(>.match-month-separator){height:auto!important}
.shared-match-list .match-month-separator{margin:10px 0 14px}

#app:has(.clan-compact-header)>a.back.play-back{position:fixed!important;top:12px!important;translate:none!important;transform:none!important;transition:none!important}

#app #game-stage.clan-compact-header>a.back.team-page-back{position:absolute!important;top:8px!important;left:0!important;translate:none!important;transform:none!important;margin:0!important;z-index:10}
#app #game-stage.clan-compact-header{position:relative}
