/* =========================
   Pack Layout
   ========================= */

/* Wrapper allows pack to scale without clipping neighbors */
.pack-wrapper {
  position: relative;
  overflow: visible;
  transform-style: preserve-3d;
}

/* Base pack styling (align with global cards) */
.pack {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 10px;
  box-shadow: 0 6px 15px rgba(0,0,0,0.35);
  color: var(--color-text);
  text-align: center;
  min-height: 275px;
  padding: 20px;
  position: relative;
  overflow: hidden;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  will-change: transform;
}

/* Hover effect applied from wrapper so shadow isn't clipped */
.pack-wrapper:hover { z-index: 2; }
.pack-wrapper:hover .pack {
  transform: scale(1.04);
  box-shadow: 0 12px 28px rgba(0,0,0,0.45);
}

/* Inner layout */
.pack .pack-body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}

/* Pack title */
.pack .pack-title {
  font-size: 1.2rem;
  font-weight: 700;
  margin: 10px 50px 10px;
  color: var(--color-text);
  text-shadow: 0 1px 2px rgba(0,0,0,0.5);
}

.pack-count {
  position: absolute;
  top: .5rem;
  right: .5rem;
  z-index: 2;
  padding: .35rem .6rem;
  background: rgba(208, 40, 40, 0.9); /* accent */
  color: #fff;
  border-radius: .5rem;
  border: 1px solid rgba(255,255,255,0.2);
}

/* Meta */
.pack .pack-meta {
  font-size: 1rem;
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-text-muted);
}

/* =========================
   Pack Variants
   (use accent glow + slight tonal shifts, not rainbow)
   ========================= */
.pack[data-pack-id] {
  background-image: radial-gradient(1200px 400px at 50% -20%, rgba(208,40,40,0.15), transparent 60%);
}

/* Starter */
.pack[data-pack-id="1"] {
  border: 2px solid rgba(208, 40, 40);
}

/* Epic */
.pack[data-pack-id="2"] {
  border: 2px solid rgba(208, 40, 40);
}

/* Legendary */
.pack[data-pack-id="3"] {
  border: 2px solid rgba(208, 40, 40);
  box-shadow: 0 8px 24px rgba(208,40,40,0.22), 0 6px 18px rgba(0,0,0,0.4);
}

/* All-Star */
.pack[data-pack-id="4"] {
  border: 2px solid rgba(208, 40, 40);
}

/* Rare */
.pack[data-pack-id="5"] {
  border: 2px solid rgba(208, 40, 40);
}

/* Responsive tweaks */
@media (max-width: 768px) {
  .pack { margin-bottom: 15px; height: auto; }
}
