/*
 * F005/F006 부스 판매 인벤토리·셀프 판매 — 심플 그리드 + 상태 색.
 * 디자인 토큰(색·간격·radius)은 전역 변수를 재사용한다(과도한 신규 스타일 지양).
 */
.kx-bsales {
  flex: 1;
  min-width: 0;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: var(--space-5);
}

.kx-bsales__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.kx-bsales__title {
  font-size: var(--fs-h1);
  line-height: var(--lh-h1);
  font-weight: var(--fw-bold);
  margin: 0;
}
.kx-bsales__subtitle {
  color: var(--kx-text-muted, #64748b);
  font-size: 13px;
  margin: 4px 0 0;
}

.kx-bsales__summary {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.kx-bsales__stat {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 999px;
  font-size: var(--fs-caption);
  background: var(--kx-surface-2, #f1f5f9);
  border: 1px solid var(--kx-border, #e2e8f0);
}
.kx-bsales__stat strong { font-size: 15px; font-weight: var(--fw-bold); }
.kx-bsales__stat.is-available { color: #15803d; background: #f0fdf4; border-color: #bbf7d0; }
.kx-bsales__stat.is-held { color: #b45309; background: #fffbeb; border-color: #fde68a; }
.kx-bsales__stat.is-sold { color: #475569; background: #f1f5f9; border-color: #cbd5e1; }
.kx-bsales__stat.is-blocked { color: #b91c1c; background: #fef2f2; border-color: #fecaca; }
.kx-bsales__rate {
  margin-left: auto;
  font-size: var(--fs-caption);
  color: var(--kx-text-muted, #64748b);
}

.kx-bsales__toolbar { display: flex; gap: 8px; }

.kx-bsales__toast {
  padding: 10px 14px;
  border-radius: 6px;
  font-size: 13px;
}
.kx-bsales__toast.is-ok { background: #f0fdf4; color: #15803d; border: 1px solid #bbf7d0; }
.kx-bsales__toast.is-err { background: #fef2f2; color: #b91c1c; border: 1px solid #fecaca; }

.kx-bsales__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 12px;
}

.kx-boothcard {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px;
  border-radius: 8px;
  background: var(--kx-surface, #fff);
  border: 1px solid var(--kx-border, #e2e8f0);
  border-left-width: 4px;
}
.kx-boothcard.is-available { border-left-color: #22c55e; }
.kx-boothcard.is-held { border-left-color: #f59e0b; }
.kx-boothcard.is-sold { border-left-color: #94a3b8; opacity: 0.92; }
.kx-boothcard.is-blocked { border-left-color: #ef4444; opacity: 0.85; }

.kx-boothcard__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.kx-boothcard__no {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-weight: var(--fw-semibold);
  font-size: 13px;
}
.kx-boothstatus {
  font-size: var(--fs-micro);
  padding: 2px 8px;
  border-radius: 999px;
  font-weight: var(--fw-semibold);
}
.kx-boothstatus.is-available { color: #15803d; background: #f0fdf4; }
.kx-boothstatus.is-held { color: #b45309; background: #fffbeb; }
.kx-boothstatus.is-sold { color: #475569; background: #f1f5f9; }
.kx-boothstatus.is-blocked { color: #b91c1c; background: #fef2f2; }

.kx-boothcard__price {
  font-size: 22px;
  font-weight: var(--fw-bold);
  line-height: 1.1;
}
.kx-boothcard__won { font-size: 13px; font-weight: var(--fw-medium); color: var(--kx-text-muted, #64748b); margin-left: 2px; }

.kx-boothcard__meta {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
  font-size: var(--fs-caption);
  color: var(--kx-text-muted, #64748b);
}

.kx-boothcard__actions {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 2px;
}
.kx-boothcard__actions .kx-btn {
  padding: 5px 10px;
  font-size: var(--fs-caption);
}
