/* ============================================================
   Mascota de Eldoria — v4 rediseño completo desde cero
   Hero: full bleed sin card · sin max-width forzado · medallones SVG mejorados
   ============================================================ */

.pme-screen {
  --pme-gold: #ffc857;
  --pme-gold-deep: #b8860b;
  --pme-emerald: #5fd684;
  --pme-violet: #c2a8ff;
  --pme-azure: #5fb4ff;
  --pme-crimson: #ff7a8a;
  --pme-bg-1: rgba(20, 8, 12, 0.92);
  --pme-bg-2: rgba(12, 4, 8, 0.96);
  --pme-border: rgba(212, 175, 55, 0.30);
  --pme-text: #f3e8d5;
  --pme-text-dim: rgba(243, 232, 213, 0.72);
  --pme-hero-bg-url: url('../img/events/pet_event_hero.png?v=2');

  position: relative;
  width: 100%;
  padding: 0 0 60px;
  margin: 0;
  color: var(--pme-text);
  font-family: 'Inter', sans-serif;
  overflow-x: hidden;
  /* Sin max-width — el screen ocupa TODO el ancho del area de contenido */
}

/* ========================================================
   HERO — full bleed, sin card, sin border
   ======================================================== */
.pme-hero {
  position: relative;
  width: 100%;
  min-height: 480px;
  margin: 0 0 36px;
  overflow: hidden;
  isolation: isolate;
  background: #0a0410;
}
.pme-hero-bg {
  position: absolute;
  inset: 0;
  background-image: var(--pme-hero-bg-url);
  background-size: cover;
  background-position: right center;
  background-repeat: no-repeat;
  filter: brightness(0.92) saturate(1.10);
  z-index: 0;
}
/* Gradient izquierdo: oscuro full sobre el texto, fade hacia la imagen */
.pme-hero-gradient-left {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg,
      rgba(8,4,16,0.98) 0%,
      rgba(8,4,16,0.92) 25%,
      rgba(8,4,16,0.55) 45%,
      rgba(8,4,16,0.10) 65%,
      transparent 75%),
    linear-gradient(180deg, rgba(0,0,0,0.10) 0%, transparent 25%, rgba(0,0,0,0.55) 100%);
  z-index: 1;
  pointer-events: none;
}
.pme-hero-content {
  position: relative;
  z-index: 2;
  padding: 64px 64px 56px;
  max-width: 620px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: flex-start;
  text-align: left;
}

.pme-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 18px;
  font-family: 'Cinzel', serif;
  font-size: 11px;
  letter-spacing: 0.28em;
  color: var(--pme-gold);
  background: rgba(0,0,0,0.55);
  border: 1px solid var(--pme-gold);
  border-radius: 999px;
  text-shadow: 0 1px 4px rgba(0,0,0,0.8);
  margin-bottom: 4px;
}
.pme-eyebrow i { font-size: 12px; }

.pme-title {
  font-family: 'Cinzel', serif;
  font-size: clamp(34px, 5.6vw, 60px);
  font-weight: 900;
  background: linear-gradient(180deg, #ffeac0, #ffd24a 55%, #b8860b);
  -webkit-background-clip: text; background-clip: text;
  color: transparent;
  margin: 0;
  letter-spacing: 0.02em;
  line-height: 1.0;
  text-shadow: 0 0 60px rgba(255,200,87,0.35);
}
.pme-sub {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: clamp(16px, 1.4vw, 20px);
  color: #e8dbc4;
  max-width: 540px;
  margin: 0 0 12px;
  line-height: 1.55;
  text-shadow: 0 1px 8px rgba(0,0,0,0.85);
}

.pme-countdown {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 13px 24px;
  background: rgba(8,4,16,0.75);
  border: 1px solid var(--pme-gold);
  border-radius: 999px;
  box-shadow:
    0 8px 26px rgba(0,0,0,0.65),
    0 0 32px rgba(255,200,87,0.22);
  font-family: 'Cinzel', serif;
  font-size: 13px;
  letter-spacing: 0.10em;
  color: var(--pme-gold);
}
.pme-countdown i { font-size: 17px; }
.pme-countdown-label {
  font-size: 11px;
  color: var(--pme-text-dim);
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.pme-countdown-time {
  font-size: 20px;
  font-weight: 800;
  color: #fff;
  text-shadow: 0 0 14px rgba(255,200,87,0.55);
  letter-spacing: 0.04em;
}
.pme-countdown-date {
  font-size: 11.5px;
  color: var(--pme-text-dim);
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.pme-countdown.is-ended {
  border-color: rgba(255,255,255,0.20);
  color: var(--pme-text-dim);
}
.pme-countdown.is-ended .pme-countdown-time {
  color: var(--pme-text-dim);
  text-shadow: none;
}

/* ========================================================
   MID SECTION — 2 columnas (rules + podium prizes)
   ======================================================== */
.pme-top {
  display: grid;
  grid-template-columns: minmax(0, 380px) minmax(0, 1fr);
  gap: 28px;
  padding: 0 36px;
  margin-bottom: 28px;
}
@media (max-width: 1100px) {
  .pme-top { grid-template-columns: 1fr; padding: 0 24px; }
}
@media (max-width: 720px) {
  .pme-top { padding: 0 14px; gap: 14px; }
}

.pme-card {
  background: linear-gradient(180deg, var(--pme-bg-1), var(--pme-bg-2));
  border: 1px solid var(--pme-border);
  border-radius: 14px;
  padding: 24px 26px;
  position: relative;
}

.pme-h2 {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: 'Cinzel', serif;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.16em;
  color: var(--pme-gold);
  margin: 0 0 22px;
  text-transform: uppercase;
}
.pme-h2 i { font-size: 18px; }

/* ========================================================
   COMO FUNCIONA — reglas con icon individual
   ======================================================== */
.pme-rules {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.pme-rules li {
  display: grid;
  grid-template-columns: 40px 1fr;
  gap: 14px;
  align-items: center;
}
.pme-rule-icon {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,200,87,0.10);
  border: 1px solid rgba(255,200,87,0.32);
  color: var(--pme-gold);
  font-size: 20px;
  flex-shrink: 0;
}
.pme-rule-text {
  font-size: 13.5px;
  line-height: 1.5;
  color: var(--pme-text);
}
.pme-rules b { color: var(--pme-gold); font-weight: 700; }

/* ========================================================
   PODIUM — 5 cards horizontales con medallones ornados
   ======================================================== */
.pme-podium {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
}
@media (max-width: 1280px) { .pme-podium { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 580px)  { .pme-podium { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 380px)  { .pme-podium { grid-template-columns: 1fr; } }

.pme-podium-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 22px 10px 16px;
  background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(0,0,0,0.45));
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 12px;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
  overflow: hidden;
}
.pme-podium-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: var(--rank-color);
  opacity: 0.7;
}
.pme-podium-card:hover {
  transform: translateY(-4px);
  border-color: var(--rank-color);
  box-shadow: 0 12px 32px rgba(0,0,0,0.60), 0 0 24px var(--rank-glow);
}

/* Colores por rank */
.pme-podium-1 { --rank-color: #ffd24a; --rank-color-2: #fff3a8; --rank-color-deep: #8a6500; --rank-glow: rgba(255,210,74,0.45); border-color: rgba(255,210,74,0.40); }
.pme-podium-2 { --rank-color: #d8d8d8; --rank-color-2: #f6f6f6; --rank-color-deep: #5a5a5a; --rank-glow: rgba(216,216,216,0.30); border-color: rgba(216,216,216,0.30); }
.pme-podium-3 { --rank-color: #d8985a; --rank-color-2: #f0b780; --rank-color-deep: #6a4520; --rank-glow: rgba(216,152,90,0.35); border-color: rgba(216,152,90,0.30); }
.pme-podium-4 { --rank-color: #c2a8ff; --rank-color-2: #e0d0ff; --rank-color-deep: #5a3aa0; --rank-glow: rgba(194,168,255,0.30); border-color: rgba(194,168,255,0.30); }
.pme-podium-5 { --rank-color: #84e0ff; --rank-color-2: #b8eeff; --rank-color-deep: #205a7a; --rank-glow: rgba(132,224,255,0.30); border-color: rgba(132,224,255,0.30); }
.pme-podium-6 { --rank-color: #6ee7a3; --rank-color-2: #a8f3c4; --rank-color-deep: #1e6a3a; --rank-glow: rgba(110,231,163,0.28); border-color: rgba(110,231,163,0.28); }

/* MEDALLON — laurel wreath SVG + circulo central ornado */
.pme-medal {
  position: relative;
  width: 130px;
  height: 130px;
  margin-bottom: 16px;
  filter: drop-shadow(0 4px 12px rgba(0,0,0,0.6));
}
.pme-medal-svg {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}
.pme-medal-circle {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background:
    radial-gradient(circle at 35% 30%, var(--rank-color-2), var(--rank-color) 45%, var(--rank-color-deep) 100%);
  border: 2px solid var(--rank-color-2);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow:
    0 0 22px var(--rank-glow),
    inset 0 -8px 12px rgba(0,0,0,0.30),
    inset 0 6px 12px rgba(255,255,255,0.20);
}
.pme-medal-num {
  font-family: 'Cinzel', serif;
  font-size: 32px;
  font-weight: 900;
  color: rgba(0,0,0,0.70);
  text-shadow:
    0 1px 1px rgba(255,255,255,0.35),
    0 -1px 0 rgba(0,0,0,0.30);
  line-height: 1;
}

.pme-podium-label {
  font-family: 'Cinzel', serif;
  font-size: 13px;
  font-weight: 700;
  color: var(--rank-color);
  letter-spacing: 0.10em;
  text-transform: uppercase;
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(255,255,255,0.10);
  width: 100%;
  text-shadow: 0 0 8px var(--rank-glow);
}

.pme-podium-rewards {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}
.pme-rw {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 13px;
  color: var(--pme-text-dim);
  padding: 3px 4px;
}
.pme-rw i { font-size: 16px; flex-shrink: 0; }
.pme-rw b { color: var(--pme-text); font-weight: 700; }
.pme-rw-gems i  { color: #c2a8ff; }
.pme-rw-gold i  { color: #ffd24a; }
.pme-rw-chest i { color: #ffaa66; }

/* ========================================================
   LEADERBOARD
   ======================================================== */
.pme-lb {
  margin: 0 36px;
}
@media (max-width: 1100px) { .pme-lb { margin: 0 24px; } }
@media (max-width: 720px)  { .pme-lb { margin: 0 14px; } }

.pme-lb-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}
.pme-lb-head .pme-h2 { margin: 0; }
.pme-reload-btn {
  background: rgba(0,0,0,0.40);
  border: 1px solid var(--pme-border);
  color: var(--pme-gold);
  font-family: 'Cinzel', serif;
  font-size: 12px;
  letter-spacing: 0.10em;
  padding: 8px 16px;
  border-radius: 8px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: all .15s ease;
}
.pme-reload-btn:hover { background: rgba(255,200,87,0.12); border-color: var(--pme-gold); }
.pme-reload-btn i { font-size: 14px; }

.pme-lb-table-wrap { border-radius: 8px; }
.pme-lb-table { width: 100%; border-collapse: collapse; }
.pme-lb-cards { display: none; flex-direction: column; gap: 10px; }

.pme-lb-table th {
  text-align: left;
  font-family: 'Cinzel', serif;
  font-size: 10.5px;
  letter-spacing: 0.16em;
  color: var(--pme-text-dim);
  padding: 14px 16px;
  border-bottom: 1px solid var(--pme-border);
  text-transform: uppercase;
}
.pme-lb-table td {
  padding: 14px 16px;
  border-bottom: 1px solid rgba(255,255,255,0.05);
  font-size: 13.5px;
  vertical-align: middle;
}
.pme-lb-row { transition: background .15s ease; }
.pme-lb-row:hover { background: rgba(255,200,87,0.04); }

.pme-col-rank { width: 60px; text-align: center; }
.pme-col-pet { min-width: 220px; }
.pme-col-rarity { width: 130px; }
.pme-col-owner { min-width: 140px; }
.pme-col-level { width: 70px; text-align: center; }
.pme-col-xp { width: 100px; text-align: right; color: var(--pme-text-dim); }
.pme-col-fed { width: 110px; text-align: center; }

/* RANK CIRCLE — pill ovalado */
.pme-rank-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 32px;
  padding: 0 12px;
  background: rgba(0,0,0,0.50);
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 999px;
  font-family: 'Cinzel', serif;
  font-size: 14px;
  font-weight: 700;
  color: var(--pme-text-dim);
}
.pme-rank-1 .pme-rank-circle { background: linear-gradient(135deg, rgba(255,210,74,0.30), rgba(255,210,74,0.10)); border-color: #ffd24a; color: #ffd24a; box-shadow: 0 0 12px rgba(255,210,74,0.35); }
.pme-rank-2 .pme-rank-circle { background: linear-gradient(135deg, rgba(216,216,216,0.26), rgba(216,216,216,0.08)); border-color: #d8d8d8; color: #e8e8e8; box-shadow: 0 0 10px rgba(216,216,216,0.25); }
.pme-rank-3 .pme-rank-circle { background: linear-gradient(135deg, rgba(216,152,90,0.28), rgba(216,152,90,0.08)); border-color: #d8985a; color: #e8b07a; box-shadow: 0 0 10px rgba(216,152,90,0.25); }
.pme-rank-4 .pme-rank-circle { background: linear-gradient(135deg, rgba(194,168,255,0.22), rgba(194,168,255,0.06)); border-color: #c2a8ff; color: #d6b6ff; }
.pme-rank-5 .pme-rank-circle { background: linear-gradient(135deg, rgba(132,224,255,0.22), rgba(132,224,255,0.06)); border-color: #84e0ff; color: #b8eeff; }
.pme-rank-6 .pme-rank-circle { background: linear-gradient(135deg, rgba(110,231,163,0.22), rgba(110,231,163,0.06)); border-color: #6ee7a3; color: #a8f3c4; }

.pme-pet-cell {
  display: flex;
  align-items: center;
  gap: 12px;
}
.pme-pet-sprite {
  width: 42px;
  height: 42px;
  border-radius: 8px;
  object-fit: cover;
  background: rgba(0,0,0,0.40);
  border: 1px solid rgba(255,255,255,0.10);
  flex-shrink: 0;
}
.pme-pet-sprite-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--pme-text-dim);
  font-size: 20px;
}
.pme-pet-info { min-width: 0; }
.pme-pet-name {
  font-weight: 700;
  font-size: 14.5px;
  color: var(--pme-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 240px;
}
.pme-pet-species {
  font-size: 11.5px;
  color: var(--pme-text-dim);
  font-style: italic;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Rarity */
.pme-rarity-text-common    { color: #cfd2d6; }
.pme-rarity-text-uncommon  { color: #5fd684; }
.pme-rarity-text-rare      { color: #5fb4ff; }
.pme-rarity-text-epic      { color: #c2a8ff; }
.pme-rarity-text-legendary { color: #ffd24a; }
.pme-rarity-text-mythic    { color: #ff7a8a; }

.pme-rarity-chip {
  display: inline-block;
  font-family: 'Cinzel', serif;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.12em;
  padding: 4px 14px;
  border-radius: 999px;
  text-transform: uppercase;
}
.pme-rarity-bg-common    { background: rgba(207,210,214,0.16); border: 1px solid rgba(207,210,214,0.45); color: #cfd2d6; }
.pme-rarity-bg-uncommon  { background: rgba(95,214,132,0.18); border: 1px solid rgba(95,214,132,0.55); color: #87ecaa; }
.pme-rarity-bg-rare      { background: rgba(95,180,255,0.18); border: 1px solid rgba(95,180,255,0.55); color: #92cbff; }
.pme-rarity-bg-epic      { background: rgba(194,168,255,0.18); border: 1px solid rgba(194,168,255,0.55); color: #d6b6ff; }
.pme-rarity-bg-legendary { background: rgba(255,210,74,0.20); border: 1px solid rgba(255,210,74,0.65); color: #ffe388; box-shadow: 0 0 10px rgba(255,210,74,0.30); }
.pme-rarity-bg-mythic    { background: rgba(255,122,138,0.20); border: 1px solid rgba(255,122,138,0.65); color: #ffa7b3; box-shadow: 0 0 10px rgba(255,122,138,0.30); }

.pme-owner-name {
  font-size: 13.5px;
  color: var(--pme-text);
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.pme-owner-meta {
  font-size: 11px;
  color: var(--pme-text-dim);
  margin-top: 1px;
}

.pme-fed {
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  padding: 4px 14px;
  border-radius: 999px;
}
.pme-fed-yes {
  background: rgba(95,214,132,0.18);
  border: 1px solid rgba(95,214,132,0.45);
  color: #87ecaa;
}
.pme-fed-no {
  background: rgba(255,90,110,0.16);
  border: 1px solid rgba(255,90,110,0.40);
  color: #ff9aa5;
}

.pme-lb-loading {
  text-align: center;
  padding: 36px;
  color: var(--pme-gold);
  font-size: 26px;
}
.pme-lb-loading i {
  animation: pmeSpin 1.2s linear infinite;
  display: inline-block;
}
@keyframes pmeSpin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
.pme-lb-empty {
  text-align: center;
  padding: 28px;
  color: var(--pme-text-dim);
  font-style: italic;
}

/* ========================================================
   MOBILE
   ======================================================== */
@media (max-width: 720px) {
  .pme-hero { min-height: 340px; margin-bottom: 22px; }
  .pme-hero-bg { background-position: center 30%; filter: brightness(0.72) saturate(1.10); }
  .pme-hero-gradient-left {
    background:
      linear-gradient(180deg,
        rgba(8,4,16,0.50) 0%,
        rgba(8,4,16,0.45) 50%,
        rgba(8,4,16,0.92) 100%);
  }
  .pme-hero-content {
    padding: 32px 18px 26px;
    max-width: 100%;
    align-items: center;
    text-align: center;
  }
  .pme-countdown {
    padding: 10px 18px;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    font-size: 12px;
  }
  .pme-countdown-time { font-size: 16px; }
  .pme-countdown-date,
  .pme-countdown-label { font-size: 10.5px; }

  .pme-card { padding: 18px 16px; }
  .pme-h2 { font-size: 14px; letter-spacing: 0.12em; margin-bottom: 16px; }

  .pme-rules li { grid-template-columns: 36px 1fr; gap: 12px; }
  .pme-rule-icon { width: 36px; height: 36px; font-size: 18px; }
  .pme-rule-text { font-size: 13px; }

  .pme-medal { width: 100px; height: 100px; margin-bottom: 12px; }
  .pme-medal-circle { width: 52px; height: 52px; }
  .pme-medal-num { font-size: 26px; }
  .pme-podium-label { font-size: 12px; margin-bottom: 10px; padding-bottom: 10px; }
  .pme-rw { font-size: 12px; }
  .pme-rw i { font-size: 14px; }

  .pme-lb-head { flex-direction: column; align-items: stretch; gap: 8px; }
  .pme-reload-btn { align-self: flex-end; }
  .pme-lb-table-wrap { display: none; }
  .pme-lb-cards { display: flex; }
}

/* ========================================================
   MOBILE LEADERBOARD CARDS
   ======================================================== */
.pme-lb-card {
  background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(0,0,0,0.30));
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 10px;
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.pme-lb-card.pme-rank-top { border-color: rgba(255,200,87,0.45); background: linear-gradient(180deg, rgba(255,200,87,0.06), rgba(0,0,0,0.30)); }
.pme-lb-card.pme-rank-1 { border-color: #ffd24a; background: linear-gradient(180deg, rgba(255,210,74,0.10), rgba(0,0,0,0.30)); box-shadow: 0 0 14px rgba(255,210,74,0.20); }
.pme-lb-card.pme-rank-2 { border-color: rgba(216,216,216,0.55); }
.pme-lb-card.pme-rank-3 { border-color: rgba(216,152,90,0.55); }
.pme-lb-card.pme-rank-4 { border-color: rgba(194,168,255,0.45); }
.pme-lb-card.pme-rank-5 { border-color: rgba(132,224,255,0.45); }
.pme-lb-card.pme-rank-6 { border-color: rgba(110,231,163,0.45); }

.pme-lb-card-top {
  display: grid;
  grid-template-columns: auto 42px 1fr auto;
  gap: 10px;
  align-items: center;
}
.pme-lb-card-top .pme-pet-sprite { width: 42px; height: 42px; }
.pme-lb-card-top .pme-rank-circle { min-width: 36px; }
.pme-lb-card-pet { min-width: 0; }
.pme-lb-card-pet .pme-pet-name { font-size: 14px; max-width: 100%; }
.pme-lb-card-pet .pme-pet-species { font-size: 11.5px; }

.pme-lb-card-meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 14px;
  padding-top: 10px;
  border-top: 1px solid rgba(255,255,255,0.08);
}
.pme-lb-card-stat {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  min-width: 0;
}
.pme-lb-card-lbl {
  font-family: 'Cinzel', serif;
  font-size: 10px;
  letter-spacing: 0.10em;
  color: var(--pme-text-dim);
  text-transform: uppercase;
}
.pme-lb-card-val {
  font-size: 13px;
  color: var(--pme-text);
  font-weight: 600;
  text-align: right;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 60%;
}
.pme-lb-card-val small { color: var(--pme-text-dim); font-weight: 500; font-size: 11px; }
.pme-lb-card-val b { color: var(--pme-text); }
.pme-lb-card-stat .pme-fed { font-size: 10.5px; padding: 3px 10px; }

@media (max-width: 400px) {
  .pme-lb-card-meta { grid-template-columns: 1fr; }
  .pme-lb-card-top { grid-template-columns: auto 38px 1fr; gap: 8px; }
  .pme-lb-card-top .pme-rarity-chip { display: none; }
}
