/* Seller store page (/store/<slug>). Product card and grid: layout/card.css. */
.sf { padding-bottom: 24px; }
.sf-banner { width: 100%; aspect-ratio: 4 / 1; max-height: 280px; background: #E2E8F0; overflow: hidden; }
.sf-banner img { display: block; width: 100%; height: 100%; object-fit: cover; font-size: 0; }
.sf-banner[data-empty] { aspect-ratio: 8 / 1; max-height: 120px; }
.sf-head { position: relative; display: flex; align-items: flex-end; gap: 16px; margin-top: -40px; padding-bottom: 14px; }
.sf-logo { flex: none; display: flex; align-items: center; justify-content: center; width: 96px; height: 96px; overflow: hidden; border: 1px solid var(--k-line); border-radius: 8px; background: #fff; }
.sf-logo img { width: 100%; height: 100%; object-fit: cover; font-size: 0; }
.sf-logo span { font-size: 32px; font-weight: 600; color: var(--k-text); }
.sf-id { min-width: 0; padding-bottom: 2px; }
.sf-id h1 { margin: 0; font-size: 22px; font-weight: 600; line-height: 1.2; overflow-wrap: anywhere; }
.sf-tag { margin: 4px 0 0; color: var(--k-mute); font-size: 14px; }
.sf-meta { display: flex; flex-wrap: wrap; gap: 4px 18px; margin: 8px 0 0; padding: 0; list-style: none; font: 500 12px/1.4 var(--k-mono); color: var(--k-mute); }
.sf-meta b { color: var(--k-ink); }
.sf-about { margin: 6px 0 18px; padding: 14px 0; border-top: 1px solid var(--k-line); border-bottom: 1px solid var(--k-line); }
.sf-about h2 { margin: 0 0 6px; font-size: 15px; }
.sf-about p { margin: 0; max-width: 80ch; font-size: 14px; line-height: 1.65; color: var(--k-text); }
.sf-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 14px 0 12px; }
.sf-bar h2 { margin: 0; font-size: 17px; }
.sf-sort select { height: 36px; padding: 0 10px; border: 1px solid var(--k-line-strong); border-radius: 6px; background: #fff; font-size: 13.5px; color: var(--k-ink); }
.sf-empty { max-width: 460px; padding: 48px 0; }
.sf-empty h2 { margin: 0 0 6px; font-size: 18px; }
.sf-empty p { margin: 0 0 16px; color: var(--k-mute); }
.sf-pages { display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 24px; font-size: 13.5px; color: var(--k-mute); }
.sf-pages a { display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border: 1px solid var(--k-line); border-radius: 6px; color: var(--k-text); font-weight: 500; text-decoration: none; transition: border-color .15s ease; }
.sf-pages a:hover { border-color: var(--k-ink); color: var(--k-ink); }
@media (max-width: 600px) {
  .sf-head { flex-direction: column; align-items: flex-start; gap: 10px; margin-top: -32px; }
  .sf-logo { width: 72px; height: 72px; }
  .sf-id h1 { font-size: 20px; }
}
