/* V-MARKET responsive storefront system */
:root {
  --bg-page: #080808;
  --card-bg: #ffffff;
  --accent-purple: #6d28d9;
  --accent-blue: #5865f2;
  --content-max: 1240px;
}

* { box-sizing: border-box; }
html, body { width: 100%; min-height: 100%; overflow-x: hidden; }
body {
  margin: 0;
  background: var(--bg-page);
  color: #f5f5f5;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

/* Mobile-first: exactly one comfortable card per row */
.store-header-inner,
.store-main {
  width: 100%;
  max-width: 540px;
  margin: 0 auto;
}
.store-header-inner { padding-inline: 25px; }
.store-main { padding: 28px 25px 64px; }
.product-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
  width: 100%;
}
.product-card {
  width: 100%;
  min-width: 0;
  min-height: 175px;
}

.account-card {
  background: #fff;
  color: #111;
  border-radius: 28px;
  box-shadow: 0 10px 30px rgba(0,0,0,.35);
  transition: transform .18s cubic-bezier(.2,.9,.3,1), box-shadow .18s ease;
  cursor: pointer;
}
.account-card:active { transform: scale(.985); }
.price-text { color: var(--accent-purple); font-weight: 800; letter-spacing: -.02em; }
.discord-btn {
  min-height: 42px;
  white-space: nowrap;
  background: linear-gradient(135deg, var(--accent-blue), #4338ca);
  color: #fff;
  border-radius: 9999px;
  font-weight: 700;
  box-shadow: 0 4px 14px rgba(88,101,242,.35);
  transition: filter .16s ease, transform .16s ease;
}
.discord-btn:hover { filter: brightness(1.08); }
.discord-btn:active, .purchase-btn:active { transform: scale(.97); }
.purchase-btn {
  min-height: 50px;
  background: linear-gradient(135deg, #7c3aed, #6366f1);
  color: #fff;
  border-radius: 18px;
  font-weight: 700;
  box-shadow: 0 8px 24px rgba(124,58,237,.35);
}

/* Tablet: retain the same brand language, switch to a balanced 2-column catalog */
@media (min-width: 768px) {
  .store-header-inner { max-width: 960px; padding-inline: 40px; }
  .store-main { max-width: 960px; padding: 42px 40px 76px; }
  .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
  .product-card { min-height: 205px; }
  .account-card:hover { transform: translateY(-4px); box-shadow: 0 18px 40px rgba(0,0,0,.45), 0 0 0 1px rgba(124,58,237,.18); }
}

/* Desktop: wide centered storefront with 3-card rows and larger hierarchy */
@media (min-width: 1200px) {
  .store-header-inner { max-width: var(--content-max); padding-inline: 56px; }
  .store-main { max-width: var(--content-max); padding: 56px 56px 92px; }
  .product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
  .product-card { min-height: 230px; }
  .account-card:hover { transform: translateY(-7px); box-shadow: 0 24px 55px rgba(0,0,0,.52), 0 0 0 1px rgba(124,58,237,.22); }
  .price-text { font-size: 2rem; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* Admin quantity/price controls */
.admin-number-control {
  min-height: 38px;
  width: 88px;
  border-radius: 10px;
  padding: 0 10px;
  color: #fff;
  background: #090a0f;
  border: 1px solid #34394a;
  font-weight: 800;
  outline: none;
}
.admin-number-control:focus { border-color: #8b5cf6; box-shadow: 0 0 0 3px rgba(139,92,246,.15); }
.admin-save-hint { color: #a78bfa; font-size: 11px; min-height: 16px; }

/* Customer activity area */
.user-activity{width:100%;margin-top:1rem;background:#111;border:1px solid rgba(255,255,255,.08);border-radius:28px;padding:1.25rem;color:#fff}
.user-activity.hidden{display:none}
.activity-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.activity-head h2{margin:.25rem 0 0;font-size:1.35rem;font-weight:900}
.eyebrow{margin:0;color:#a78bfa;font-size:.68rem;font-weight:900;letter-spacing:.14em}
.activity-note{font-size:.7rem;color:#777}
.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}
.activity-card{background:#fff;color:#161616;border-radius:20px;padding:1rem;min-width:0}
.activity-card h3{margin:0 0 .75rem;font-size:.95rem;font-weight:900}
.activity-list{display:flex;flex-direction:column;gap:.55rem;max-height:210px;overflow:auto}
.activity-row{display:grid;gap:.2rem;border-top:1px solid #eee;padding-top:.6rem;font-size:.75rem}
.activity-row:first-child{border-top:0;padding-top:0}
.activity-row b{font-size:.78rem}.activity-row span{color:#555;overflow-wrap:anywhere}.activity-row small{color:#999}.empty-state{color:#999;font-size:.78rem;margin:.25rem 0}
.inquiry-form{display:grid;gap:.55rem;margin-bottom:1rem}.inquiry-form input,.inquiry-form textarea{width:100%;border:1px solid #e5e5e5;border-radius:12px;padding:.65rem .75rem;font-size:.78rem;outline:none}.inquiry-form textarea{min-height:70px;resize:vertical}.inquiry-form input:focus,.inquiry-form textarea:focus{border-color:#8b5cf6}
@media(max-width:767px){.user-activity{border-radius:24px;padding:1rem}.activity-head{align-items:start;flex-direction:column}.activity-grid{grid-template-columns:1fr}.activity-card{padding:.9rem}.activity-list{max-height:160px}}
@media(min-width:768px) and (max-width:1199px){.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inquiry-card{grid-column:1/-1}}
@media(min-width:1200px){.user-activity{padding:1.5rem}.activity-card{padding:1.2rem}}
