/* Mobile-first storefront, shared with the existing trading workflows. */
.mobile-store { background:#fff; }
.store-nav { display:flex; gap:26px; max-width:1048px; margin:0 auto; overflow-x:auto; scrollbar-width:none; padding:0 16px; }
.store-nav a { flex-shrink:0; min-height:44px; display:flex; align-items:center; font-size:14px; font-weight:600; color:#67736d; border-bottom:2px solid transparent; }
.store-nav a[aria-current] { color:var(--resale-action); border-bottom-color:var(--resale-action); }
.mobile-store .home-campaign { margin-top:0; }
.campaign-track { display:flex; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; overscroll-behavior-x:contain; scrollbar-width:none; }
.campaign-track::-webkit-scrollbar { display:none; }
.campaign-track .campaign-slide { flex:0 0 100%; width:100%; min-width:0; scroll-snap-align:start; scroll-snap-stop:always; }
.campaign-controls button { min-height:36px; min-width:32px; }
.store-catalog .board { max-width:none; }
.store-catalog .board-head { padding:12px 0; gap:12px; }
.store-catalog .board-write,.store-catalog .head-tabs { display:none; }
.store-catalog .total { font-size:13px; color:#67736d; font-weight:400; }
.store-catalog .vbtn { min-width:40px; min-height:40px; }
.store-catalog .list.grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px 16px; padding-top:0; }
.store-catalog .list.grid .post { min-width:0; }
.store-catalog .list.grid .thumb { border:0; border-radius:6px; background:#f6f7f6; overflow:hidden; }
.store-catalog .list.grid .thumb img { object-fit:contain; }
.store-catalog .list.grid .title { line-height:1.5; min-height:42px; font-size:14px; font-weight:500; }
.store-catalog .list.grid .price { font-weight:750; font-size:16px; color:#18241d; }
.store-catalog .list.grid .price-row-line { gap:4px; }
.store-catalog .list.grid .post-main { padding:0 2px; }
.store-catalog .list.grid .auct-row { padding:8px; gap:6px; }
.store-catalog .list.grid .auct-row .cur { font-size:13px; }
.store-catalog .list.grid .bid-btn { width:100%; min-height:36px; }
@media(max-width:767px) {
  .mobile-store .site-header .top { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; padding:10px 0 8px; }
  .mobile-store .site-header .brand { display:block; grid-column:1; grid-row:1; font-size:23px; line-height:32px; }
  .mobile-store .site-header .brand .brand-logo { height:28px; }
  .mobile-store .site-header .top-links { grid-column:2; grid-row:1; }
  .mobile-store .site-header .searchbar { grid-column:1 / -1; grid-row:2; width:100%; height:42px; border:1px solid #e7ece9; border-radius:8px; background:#f5f7f6; }
  .mobile-store .site-header .searchbar input[name=q] { font-size:16px; }
  .mobile-store .site-header .scope-btn { font-size:12px; }
  .mobile-store .site-header .top-link.category-toggle { min-width:40px; }
  .store-nav { gap:24px; border-top:1px solid #f3f5f4; }
  .store-nav a { font-size:13px; }
  .mobile-store .home-campaign { padding:0; margin-bottom:0; }
  .mobile-store .campaign-stage { border-radius:0; }
  .campaign-track .campaign-slide { aspect-ratio:1.85 / 1; }
  .campaign-copy { left:45%; right:3%; }
  .campaign-copy strong { font-size:20px; }
  .campaign-copy small { font-size:11px; }
  .campaign-copy b { font-size:11px; }
  .campaign-controls { right:8px; bottom:5px; }
  .campaign-controls button { min-height:32px; }
  .store-catalog { padding-left:12px; padding-right:12px; }
  .store-catalog .list.grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 10px; }
  .store-catalog .list.grid .title { font-size:13px; }
  .store-catalog .list.grid .price { font-size:15px; line-height:1.5; }
  .store-catalog .list.grid .tag { font-size:10px; }
  .mobile-store .site-footer { margin-top:32px; }
}
@media(min-width:768px) and (max-width:1023px) { .store-catalog .list.grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
.mobile-store .home-campaign { scroll-margin-top:var(--search-header-height,150px); }

/* 화면에서는 걷어냈지만 문서 구조로는 남겨 둬야 하는 제목 (홈 h1) */
.a11y-only { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
/* 최근 본 상품이 하나도 없을 때 */
.board-empty { margin:0; padding:48px 16px; text-align:center; font-size:14px; color:#7c8780; }
