/* ORRANET marketplace page (loads after landing.css) */

.mkt-top { background: var(--cream); padding: 36px 0 32px; border-bottom: 1px solid var(--border); }
.mkt-top h1 { font-size: 32px; font-weight: 700; color: var(--green-dark); margin-bottom: 6px; }
.mkt-top p { color: var(--muted); margin-bottom: 20px; }
.mkt-top .search { max-width: 540px; }

.mkt-main { padding-top: 32px; padding-bottom: 64px; min-height: 50vh; }
.mkt-h { font-size: 20px; font-weight: 700; color: var(--green-dark); margin: 28px 0 16px; }
.mkt-h:first-child { margin-top: 0; }

.mkt-count { font-size: 13px; font-weight: 700; background: var(--butter); color: var(--green-dark); border-radius: 12px; padding: 2px 10px; vertical-align: middle; margin-left: 6px; }
.pager { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px; margin-top: 32px; }
.pager a, .pager__cur { min-width: 38px; padding: 8px 12px; text-align: center; border-radius: 8px; font-size: 14px; font-weight: 700; text-decoration: none; border: 1px solid var(--border); color: var(--green-dark); }
.pager a:hover { border-color: var(--green); }
.pager__cur { background: var(--green); border-color: var(--green); color: #fff; }
.pager__gap { color: var(--muted); }

.store-grid, .product-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }

.store-card, .product-card { display: block; background: #fff; border: 1px solid var(--border); border-radius: 12px; overflow: hidden; text-decoration: none; min-width: 0; transition: border-color .15s ease, transform .15s ease; }
.store-card:hover, .product-card:hover { border-color: var(--green); transform: translateY(-2px); }

.store-card__image { aspect-ratio: 4 / 3; background: #f3f0e6; overflow: hidden; }
.store-card__image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.store-card__placeholder { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: #fff; font-size: 34px; font-weight: 700; }
.store-card__info { padding: 14px; }
.store-card__name { font-size: 16px; font-weight: 700; margin-bottom: 3px; }
.store-card__description { font-size: 13px; color: var(--muted); line-height: 1.5; margin-bottom: 10px; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.store-card__visit { font-size: 13px; font-weight: 700; color: var(--green); }

.product-card__image { aspect-ratio: 1 / 1; background: #f3f0e6; }
.product-card__image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.product-card__placeholder { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 12px; color: var(--muted); }
.product-card__info { padding: 12px; }
.product-card__name { font-size: 14px; font-weight: 500; margin-bottom: 2px; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.product-card__vendor { font-size: 12px; color: var(--muted); margin-bottom: 6px; }
.product-card__price { font-size: 15px; font-weight: 700; color: var(--green); }

.empty { text-align: center; padding: 56px 16px; }
.empty h2 { font-size: 22px; color: var(--green-dark); margin-bottom: 6px; }
.empty p { color: var(--muted); margin-bottom: 20px; }

@media (min-width: 640px) {
  .store-grid { grid-template-columns: repeat(3, 1fr); }
  .product-grid { grid-template-columns: repeat(4, 1fr); }
}
@media (min-width: 900px) {
  .store-grid { grid-template-columns: repeat(4, 1fr); gap: 18px; }
  .product-grid { grid-template-columns: repeat(5, 1fr); }
  .mkt-top h1 { font-size: 38px; }
}
