/* Scoped styles: rank badges only; no scrolling or page layout changes. */
.player-card:has(> .grit-rivals-badge) { position:relative; }
.player-card:has(> .grit-rivals-badge) .player-info { padding-right:64px !important; }
.player-card > .grit-rivals-badge { position:absolute !important; right:10px !important; bottom:10px !important; width:42px !important; height:54px !important; display:flex !important; flex-direction:column; align-items:center; justify-content:flex-end; z-index:4; pointer-events:none; }
.player-card > .grit-rivals-badge img { display:block !important; position:static !important; width:42px !important; height:42px !important; min-width:0 !important; max-width:42px !important; object-fit:contain !important; opacity:1 !important; filter:none !important; transform:none !important; background:none !important; }
.grit-rivals-badge small { display:block; font:700 10px/12px Arial,sans-serif; color:#fff; text-shadow:0 1px 3px #000; }
.grit-rivals-profile-rank { display:flex; align-items:center; gap:10px; margin-top:12px; font-family:Arial,sans-serif; }
.grit-rivals-profile-rank img { width:48px !important; height:48px !important; object-fit:contain; }
.grit-rivals-profile-rank strong { display:block; font-size:16px; color:#fff; }
.grit-rivals-profile-rank small { display:block; font-size:11px; color:#aaa; margin-top:3px; }
.grit-rivals-picker { grid-column:1/-1; min-width:0; padding:16px; margin:6px 0 12px; border:1px solid #39323e; border-radius:10px; background:rgba(20,17,26,.8); font-family:Arial,sans-serif; }
.grit-rivals-picker[hidden], .grit-rivals-picker [hidden] { display:none !important; }
.grit-rivals-picker-title { font-size:14px; font-weight:700; color:#eee; margin-bottom:12px; }
.grit-rivals-picker-title small { display:block; margin-top:5px; font-weight:400; font-size:12px; color:#b8b0c0; }
.grit-rivals-picker-fields { display:flex; flex-wrap:wrap; gap:14px; align-items:end; }
.grit-rivals-picker-fields label { flex:1 1 150px; min-width:0; display:flex; flex-direction:column; gap:6px; font:700 12px/1.4 Arial,sans-serif !important; color:#ccc; }
.grit-rivals-picker select { width:100%; min-height:42px; padding:8px 12px; background:#101015; border:1px solid #55505e; border-radius:6px; color:#fff; font:400 16px/1.4 Arial,sans-serif !important; }
.grit-rivals-preview { display:flex; align-items:center; gap:10px; min-height:52px; flex:1 1 180px; font:600 15px/1.4 Arial,sans-serif; color:#fff; }
.grit-rivals-preview img { width:52px !important; height:52px !important; object-fit:contain; }

/* GRIT_RANG_UNTER_BILD_V2 */
body:not(.admin-page) .player-card:has(.grit-rivals-badge) {
  height:auto !important;
  max-height:none !important;
}
body:not(.admin-page) .player-card .player-info:has(> .grit-rivals-badge) {
  position:relative !important;
  display:block !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  padding:10px 12px 16px !important;
}
body:not(.admin-page) .player-card .player-info > .grit-rivals-badge {
  position:static !important;
  inset:auto !important;
  display:flex !important;
  width:42px !important;
  height:54px !important;
  margin:0 auto 8px !important;
  transform:none !important;
  float:none !important;
  align-items:center !important;
}
body:not(.admin-page) .player-card .player-info:has(> .grit-rivals-badge) .player-name {
  position:static !important;
  inset:auto !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  text-align:center !important;
}
