/* Store-specific styles */
.store-hero { padding: 90px 0 0; position: relative; overflow: hidden; background: var(--c-surface); border-bottom: 1px solid var(--c-border); }
.store-hero-content { display: flex; align-items: center; gap: 24px; padding-bottom: 28px; position: relative; }
.store-avatar-wrap { flex-shrink: 0; }
.store-avatar { width: 88px; height: 88px; border-radius: 50%; background: var(--grad-main); display: flex; align-items: center; justify-content: center; font-size: 32px; font-weight: 800; border: 3px solid rgba(255,255,255,0.15); overflow: hidden; }
.store-avatar img { width: 100%; height: 100%; object-fit: cover; }
.store-info { flex: 1; }
.store-info h1 { font-size: 28px; font-weight: 900; margin-bottom: 4px; }
.store-username { color: var(--c-primary); font-size: 14px; font-weight: 600; margin-bottom: 6px; }
.store-bio { color: var(--c-muted); font-size: 14px; }
.store-trust-row { display: flex; gap: 12px; padding: 14px 24px; overflow-x: auto; border-top: 1px solid var(--c-border); max-width: 1200px; margin: 0 auto; }
.store-body { padding: 32px 24px 64px; }

/* Controls */
.store-controls { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; flex-wrap: wrap; }
.search-wrap { position: relative; flex: 1; min-width: 200px; }
.search-icon { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: var(--c-muted); pointer-events: none; }
.search-input { padding-left: 38px !important; }
.sort-wrap select { background: var(--c-surface-2); border: 1px solid var(--c-border); color: var(--c-text); padding: 8px 12px; border-radius: var(--radius); font-family: var(--font); font-size: 13px; outline: none; }

/* Category tabs */
.cat-scroll { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 4px; margin-bottom: 24px; scrollbar-width: none; }
.cat-scroll::-webkit-scrollbar { display: none; }
.cat-btn { flex-shrink: 0; padding: 6px 18px; border-radius: 100px; border: 1px solid var(--c-border); background: var(--c-surface-2); color: var(--c-muted); font-family: var(--font); font-size: 13px; font-weight: 600; cursor: pointer; transition: all .2s; white-space: nowrap; }
.cat-btn:hover { border-color: var(--c-primary); color: var(--c-text); }
.cat-btn.active { background: var(--grad-main); border-color: transparent; color: #fff; }

/* Products Grid */
.products-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px,1fr)); gap: 18px; }

/* Payment Methods */
.payment-methods { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin-top: 8px; }
.pay-btn { padding: 10px 8px; border-radius: var(--radius); border: 1px solid var(--c-border); background: var(--c-surface-2); color: var(--c-muted); font-family: var(--font); font-size: 12px; font-weight: 700; cursor: pointer; text-align: center; transition: all .2s; text-transform: uppercase; }
.pay-btn:hover { border-color: var(--c-primary); color: var(--c-text); }
.pay-btn.active { border-color: var(--c-primary); background: rgba(91,79,255,0.15); color: var(--c-primary); }

/* Order Summary */
.order-summary { background: var(--c-surface-2); border: 1px solid var(--c-border); border-radius: var(--radius); padding: 14px; font-size: 13px; }
.order-summary-row { display: flex; justify-content: space-between; margin-bottom: 6px; color: var(--c-muted); }
.order-summary-row.total { color: var(--c-text); font-weight: 700; font-size: 15px; border-top: 1px solid var(--c-border); padding-top: 8px; margin-top: 4px; }

/* Payment Info */
.payment-info-box { background: var(--c-surface-2); border: 1px solid var(--c-border); border-radius: var(--radius); padding: 20px; }
.payment-info-box h4 { margin-bottom: 12px; font-size: 15px; }
.payment-number { font-family: monospace; font-size: 18px; font-weight: 700; background: var(--c-surface-3); padding: 12px; border-radius: 8px; letter-spacing: 1px; word-break: break-all; margin-bottom: 8px; }
.copy-btn { font-size: 12px; color: var(--c-primary); cursor: pointer; border: none; background: none; font-family: var(--font); font-weight: 600; }

/* Success Box */
.success-box { text-align: center; padding: 24px; }
.success-icon { width: 64px; height: 64px; border-radius: 50%; background: rgba(16,185,129,0.15); border: 2px solid var(--c-success); display: flex; align-items: center; justify-content: center; margin: 0 auto 16px; font-size: 28px; }
.success-box h3 { color: var(--c-success); margin-bottom: 8px; }
.product-data-box { background: var(--c-surface-2); border: 1px solid var(--c-border); border-radius: var(--radius); padding: 16px; text-align: left; margin-top: 16px; font-family: monospace; font-size: 13px; white-space: pre-wrap; word-break: break-all; }

/* Product Detail Modal */
.modal-lg { max-width: 640px; }
.product-detail-img { width: 100%; height: 200px; background: radial-gradient(circle at center, #ffffff 0%, #f4f7fe 100%); border-radius: var(--radius); display: flex; align-items: center; justify-content: center; overflow: hidden; margin-bottom: 20px; border: 1px solid var(--c-border); }
.product-detail-img img { width: 100%; height: 100%; object-fit: cover; }
.product-detail-brand-wrapper { width: 88px; height: 88px; border-radius: 20px; display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 24px rgba(37,99,235,0.08); }
.product-detail-brand-wrapper svg { width: 48px; height: 48px; display: block; }
.product-detail-title { font-size: 22px; font-weight: 800; margin-bottom: 8px; }
.product-detail-meta { display: flex; gap: 10px; align-items: center; margin-bottom: 12px; }
.product-detail-desc { color: var(--c-muted); font-size: 14px; line-height: 1.7; margin-bottom: 16px; }
.product-detail-price { font-size: 28px; font-weight: 900; color: var(--c-primary); }
.product-detail-orig { font-size: 14px; color: var(--c-muted); text-decoration: line-through; margin-left: 8px; }

/* Star picker */
.star-picker { display: flex; gap: 6px; font-size: 28px; color: var(--c-border); cursor: pointer; }
.star-picker span { transition: color .1s; }
.star-picker span.lit { color: var(--c-warning); }

/* Status Result */
.status-card { background: var(--c-surface-2); border: 1px solid var(--c-border); border-radius: var(--radius); padding: 16px; margin-bottom: 10px; }
.status-card h4 { margin-bottom: 6px; font-size: 14px; }
.status-card p { font-size: 13px; color: var(--c-muted); margin-bottom: 4px; }

/* Footer mini */
.footer-mini { background: var(--c-surface); border-top: 1px solid var(--c-border); padding: 20px 0; }
.footer-mini-inner { display: flex; align-items: center; justify-content: space-between; font-size: 13px; color: var(--c-muted); }
.footer-mini a { color: var(--c-muted); transition: color .2s; }
.footer-mini a:hover { color: var(--c-text); }

@media(max-width:768px) {
  .store-hero { padding: 78px 0 0; }
  .store-hero-content { gap: 16px; padding-bottom: 20px; }
  .store-avatar { width: 72px; height: 72px; font-size: 26px; }
  .store-info h1 { font-size: 22px; }
  .store-body { padding: 20px 16px 48px; }
  .store-trust-row { padding: 12px 16px; gap: 8px; }
  .store-controls { gap: 8px; margin-bottom: 16px; }
  .search-wrap { min-width: 0; }
  .products-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
  .product-img { height: 110px; }
  .product-body { padding: 10px 12px; }
  .product-name { font-size: 13px; }
  .product-price { font-size: 15px; }
  .product-desc { font-size: 11px; }
  .payment-methods { grid-template-columns: repeat(3,1fr); gap: 6px; }
  .pay-btn { padding: 9px 6px; font-size: 11px; }
  .payment-info-box { padding: 16px; }
  .footer-mini-inner { flex-direction: column; gap: 10px; text-align: center; }
  .product-detail-img { height: 160px; }
  .product-detail-title { font-size: 18px; }
  .product-detail-price { font-size: 24px; }
}
@media(max-width:480px) {
  .store-hero-content { flex-direction: column; text-align: center; padding-bottom: 16px; }
  .store-trust-row { justify-content: flex-start; overflow-x: auto; flex-wrap: nowrap; }
  .products-grid { grid-template-columns: repeat(2, 1fr); gap: 8px; }
  .product-img { height: 100px; }
  .product-body { padding: 8px 10px; }
  .product-name { font-size: 12px; }
  .product-price { font-size: 14px; }
  .payment-methods { grid-template-columns: repeat(2,1fr); }
  .pay-btn { padding: 10px 8px; font-size: 11px; }
  .order-summary-row { font-size: 12px; }
  .order-summary-row.total { font-size: 14px; }
  .product-data-box { font-size: 12px; }
  .cat-btn { padding: 6px 14px; font-size: 12px; }
  .store-body { padding: 16px 14px 40px; }
  .store-info h1 { font-size: 20px; }
  .store-bio { font-size: 12px; }
}
