/* One geometry for every printed card. Finishes never change its dimensions. */
.game-card[data-rarity-tier]{
  --info-height:34%;
  container-type:inline-size;
  min-width:0;
}
.game-card.game-card[data-rarity-tier] .card-art{
  inset:0 0 var(--info-height) !important;
  bottom:var(--info-height) !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.game-card.game-card[data-rarity-tier] .card-art>img{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:contain !important;
  object-position:50% 50% !important;
}
.game-card.game-card[data-rarity-tier] .card-info{
  height:var(--info-height) !important;
  inset:auto 0 0 !important;
  z-index:8 !important;
  border:0 !important;
  background:#0a1119 !important;
  box-shadow:none !important;
  padding:clamp(3px,2.7cqw,9px) !important;
  gap:clamp(2px,1.5cqw,5px);
}
/* Old moving frame transforms displaced the frame even after sweeps were disabled. */
.game-card.game-card[data-rarity-tier]::before,
.game-card.game-card[data-rarity-tier] .card-art::before,
.game-card.game-card[data-rarity-tier] .card-art::after{
  animation:none !important;
  transform:none !important;
}
/* The illustration/information boundary has no second rectangular outline. */
.game-card.game-card[data-rarity-tier] .card-art::after{border:0 !important;box-shadow:none !important}
.game-card.game-card[data-rarity-tier] .card-name-line{display:flex;align-items:baseline;gap:4px;min-height:0;line-height:1.3}
.game-card.game-card[data-rarity-tier] .card-name{font-size:clamp(8px,5.6cqw,16px);line-height:1.3}
.game-card.game-card[data-rarity-tier] .serial{font-size:clamp(5px,3cqw,9px);line-height:1.3;max-width:34%}
.game-card.game-card[data-rarity-tier] .card-stat-grid{margin:0;gap:1px}
.game-card.game-card[data-rarity-tier] .card-stat{line-height:1.15}
.game-card.game-card[data-rarity-tier] .card-stat small{font-size:clamp(6px,3.6cqw,10px)}
.game-card.game-card[data-rarity-tier] .card-stat b{font-size:clamp(8px,5.4cqw,15px)}
.game-card.game-card[data-rarity-tier] .card-stat-grade{font-size:clamp(7px,4cqw,11px)}
.game-card.game-card[data-rarity-tier] .card-rarity,
.game-card.game-card[data-rarity-tier] .card-no{top:6px;line-height:1.2;min-height:16px;display:flex;align-items:center}
.game-card.game-card[data-rarity-tier] .card-rarity{left:6px;font-size:clamp(8px,4cqw,11px);padding:2px 6px}
.game-card.game-card[data-rarity-tier] .card-no{right:6px;font-size:clamp(6px,3.2cqw,9px);padding:2px 4px}
.game-card.game-card[data-rarity-tier] .finish{top:29px;right:6px;font-size:clamp(6px,3cqw,9px);line-height:1.2}
.game-card.game-card[data-rarity-tier]>.card-new{top:29px;left:6px;z-index:9;min-width:30px;height:16px;padding:0 5px;font-size:8px;line-height:1;box-shadow:none}

/* Species cards share one exact edge between image and label. */
.lobby-ui .species-card{--species-info-height:27%;width:100%;max-width:none;min-width:0;container-type:inline-size}
.lobby-ui .species-card .species-art{inset:0 0 var(--species-info-height);overflow:hidden}
.lobby-ui .species-card .species-art img{display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center}
.lobby-ui .species-card .species-info{height:var(--species-info-height);border-top:0;padding:clamp(5px,4cqw,12px);display:flex;flex-direction:column;justify-content:center;background:#0c1829}
.lobby-ui .species-card .species-info b{font-size:clamp(10px,7cqw,14px);line-height:1.35}
.lobby-ui .species-card .species-info small{font-size:clamp(8px,5cqw,10px);line-height:1.35;margin-top:3px}
.lobby-ui .species-card .copy-count{bottom:calc(var(--species-info-height) + 6px)}

/* Intrinsic image dimensions must not expand the fixed thumbnail row. */
.deck-tile-art{min-width:0;min-height:0;overflow:hidden;flex:none;isolation:isolate}
.deck-tile-art img{position:absolute;inset:0;display:block;min-width:0;min-height:0;width:100%;height:100%;object-fit:contain;object-position:center}
.deck-tile-copy{position:relative;z-index:1;background:#102034;flex:none}
.deck-owned-tiles{align-items:stretch;grid-auto-rows:max-content}
.deck-owned-scroll{scrollbar-gutter:stable}
.deck-team-slots{flex:1 0 auto;grid-template-rows:repeat(3,minmax(76px,1fr))}
.deck-team-pane{overflow-y:auto !important;overscroll-behavior:contain;scrollbar-gutter:stable}
.deck-editor-slot:not(.is-empty){display:grid;grid-template-columns:40% minmax(0,1fr)}
.deck-editor-slot>img{display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center}
.deck-slot-desc{padding:26px 7px 8px;justify-content:center;gap:3px}
.deck-slot-desc b{font-size:11px;line-height:1.35}
.deck-slot-desc .deck-slot-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 5px;white-space:normal;overflow:visible;font-variant-numeric:tabular-nums;font-size:9px}
.deck-slot-stats span{white-space:nowrap}
.deck-slot-buttons{flex-direction:row;align-items:center;gap:4px}
.deck-slot-buttons button{min-height:22px}
.deck-preset-panel{flex:none}
@media(max-width:540px){
  .deck-team-slots{grid-template-rows:repeat(3,minmax(100px,1fr))}
  .deck-editor-slot:not(.is-empty){grid-template-columns:37% minmax(0,1fr)}
  .deck-slot-desc{padding:28px 5px 6px;gap:2px}
  .deck-slot-desc b{font-size:10px}
  .deck-slot-desc .deck-slot-stats{font-size:8px;gap:2px}
}
@media(max-width:640px){
  .mobile-five-card .game-card[data-rarity-tier]{--info-height:34%;height:auto;max-height:none !important;aspect-ratio:.7}
  .mobile-five-card{align-self:start}
}

/* Decorative ellipses stay inside their screens without adding sideways scroll. */
.lobby-ui .lobby-home .home-bg{overflow:hidden}
.lobby-ui .pack-page{overflow-x:clip}
@media(max-width:900px){
  .lobby-ui .pack-aura{width:min(75vw,320px);height:auto;max-width:100%}
}
