/* Poké Mart window */
.shop-overlay {
  position: fixed; inset: 0; z-index: 150; display: grid; place-items: center; padding: 16px;
  background: #02050bcc; backdrop-filter: blur(2px);
}
.shop-box {
  width: 100%; max-width: 560px; max-height: calc(calc(100vh / var(--ui-zoom, 1)) - 32px);
  display: flex; flex-direction: column;
  background: var(--bg-2); border: 2px solid var(--line); border-radius: 16px; box-shadow: 0 20px 60px #000c;
}
.shop-head { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-bottom: 1px solid #ffffff12; }
.shop-head h2 { font-family: var(--pixel); font-size: 1.4rem; flex: 1; }
.shop-gold { display: flex; align-items: center; gap: 6px; font-family: var(--pixel); color: var(--accent); }
.shop-gold img { width: 18px; height: 18px; image-rendering: pixelated; }
.shop-body { overflow-y: auto; padding: 6px 16px 16px; }
.shop-section h3 { font-family: var(--pixel); font-size: 1rem; margin: 12px 0 6px; color: var(--muted); }
.shop-row {
  display: grid; grid-template-columns: 32px 1fr auto auto; align-items: center; gap: 10px;
  padding: 8px 10px; border-radius: 10px; background: var(--card); margin-bottom: 6px;
}
.shop-row img { width: 28px; height: 28px; image-rendering: pixelated; object-fit: contain; }
.shop-name { font-weight: 600; }
.shop-price { font-family: var(--pixel); color: var(--accent); min-width: 48px; text-align: right; }
.shop-buy { display: flex; gap: 4px; }
@media (max-width: 520px) {
  .shop-row { grid-template-columns: 28px 1fr auto; }
  .shop-buy { grid-column: 1 / -1; justify-content: flex-end; }
}
