/* 기본 배경 및 폰트 설정 */
.b2b-lease-page {
  background-color: #ffffff;
  color: #09090b;
}

.b2b-lease-root {
  font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, system-ui, Roboto, 'Helvetica Neue', 'Segoe UI', 'Apple SD Gothic Neo', 'Noto Sans KR', 'Malgun Gothic', sans-serif;
}

/* 기존 사이트 CSS 간섭 방지를 위해 폰트 상속처리 (color: inherit 제거) */
.b2b-lease-root * {
  font-family: inherit;
}

/* Tailwind 커스텀 색상을 CSS 클래스로 명시적 지정 (디자인 유지 핵심!) */
.b2b-lease-root .bg-background { background-color: #ffffff !important; }
.b2b-lease-root .text-foreground { color: #09090b !important; }
.b2b-lease-root .bg-card { background-color: #ffffff !important; }
.b2b-lease-root .border-border { border-color: #e4e4e7 !important; }
.b2b-lease-root .bg-muted { background-color: #f4f4f5 !important; }
.b2b-lease-root .text-muted-foreground { color: #71717a !important; }
.b2b-lease-root .bg-primary { background-color: #18181b !important; }
.b2b-lease-root .text-primary { color: #18181b !important; }
.b2b-lease-root .border-primary { border-color: #18181b !important; }
.b2b-lease-root .text-primary-foreground { color: #fafafa !important; }

/* 투명도가 들어간 커스텀 클래스 지정 */
.b2b-lease-root .bg-muted\/20 { background-color: rgba(244, 244, 245, 0.2) !important; }
.b2b-lease-root .bg-muted\/30 { background-color: rgba(244, 244, 245, 0.3) !important; }
.b2b-lease-root .border-border\/60 { border-color: rgba(228, 228, 231, 0.6) !important; }
.b2b-lease-root .border-border\/80 { border-color: rgba(228, 228, 231, 0.8) !important; }

/* 리스트 마커 컬러 */
.b2b-lease-root .marker\:text-muted-foreground\/50 li::marker { color: rgba(113, 113, 122, 0.5) !important; }

/* 정렬 필터 select 태그 리셋 */
.b2b-lease-root #sort-select {
  border: 0;
  outline: 0;
  background: transparent;
  color: #71717a;
}

/* 스크롤바 숨김 및 말줄임 처리 (기존 유지) */
.b2b-lease-root .scrollbar-hide::-webkit-scrollbar { display: none; }
.b2b-lease-root .scrollbar-hide { -ms-overflow-style: none; scrollbar-width: none; }
.b2b-lease-root .line-clamp-2 {
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* details 기본 화살표 숨김처리 */
.b2b-lease-root details > summary { list-style: none; }
.b2b-lease-root details > summary::-webkit-details-marker { display: none; }

/* 요청 반영: 이벤트 랜딩 상세 스타일 보정 */
.b2b-lease-root h2.text-lg.sm\:text-xl {
  font-size: 20px !important;
  line-height: 1.4 !important;
}

.b2b-lease-root h2.text-lg.sm\:text-xl + ul {
  margin-top: 1.5rem !important;
}

.b2b-lease-root .rounded-3xl {
  border-radius: 24px !important;
}

.b2b-lease-root .rounded-\[22px\] ul li svg {
  color: #2dd4bf !important;
}

.b2b-lease-root .text-teal-400 {
  color: #2dd4bf !important;
}

.b2b-lease-root .bg-card.rounded-\[22px\].p-5.sm\:p-6 {
  padding: 24px !important;
}

.b2b-lease-root .leading-tight {
  color: #000000 !important;
}

.b2b-lease-root details > summary.p-4.flex.items-center.justify-center.relative.cursor-pointer.font-medium.text-sm.text-foreground.hover\:bg-muted\/50.transition-colors {
  background-color: rgb(244 244 245 / 0.5) !important;
}

.b2b-lease-root details > summary > div > span {
  font-size: 14px !important;
}

.b2b-lease-root details > summary.p-4.flex.items-center.justify-center.relative.cursor-pointer.font-medium.text-sm.text-foreground.hover\:bg-muted\/50.transition-colors {
  padding: 14px !important;
}

.b2b-lease-root details > summary {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.b2b-lease-root ul.list-disc.space-y-2.ml-2.marker\:text-muted-foreground\/50 li {
  color: #71717a !important;
}

.b2b-lease-root h1.text-xl.font-bold.flex.items-center.gap-2 > span:first-child,
.b2b-lease-root #product-container h3.text-lg.sm\:text-xl,
.b2b-lease-root #product-container span.text-lg.sm\:text-xl.font-bold.text-\[\#0066CC\] {
  font-size: 20px !important;
}

.b2b-lease-root .p-4.border-b.border-border {
  padding: 1.5rem !important;
}

.b2b-lease-root .p-4 {
  padding: 20px 14px 40px !important;
}

.b2b-lease-root p.text-sm.text-\[\#0066CC\].font-bold.mt-1,
.b2b-lease-root #category-container button,
.b2b-lease-root #subcategory-container button {
  font-size: 14px !important;
}

.b2b-lease-root p.text-sm.text-\[\#0066CC\].font-bold.mt-1 {
  margin-top: 1rem !important;
}

.b2b-lease-root #category-container button {
  padding: 12px 16px !important;
}

.b2b-lease-root #category-container button.text-primary.border-b-2.border-primary {
  font-weight: 700 !important;
  border-bottom: 2px solid #000000 !important;
}

.b2b-lease-root #subcategory-container button {
  padding: 8px 16px !important;
  border: 1px solid #e4e4e7 !important;
  border-radius: 9999px !important;
}

.b2b-lease-root h1.text-xl.font-bold.flex.items-center.gap-2 > span.text-\[14px\].text-\[\#0066CC\].font-medium.bg-\[\#EBEFF7\].px-2.py-0\.5.rounded-\[6px\] {
  font-size: 10px !important;
  font-weight: 700 !important;
}

.b2b-lease-root #product-container .p-3.sm\:p-4.flex.flex-col.justify-between.h-full {
  padding: 1.5rem !important;
}

.b2b-lease-root button.w-full.bg-\[\#0066CC\].text-white.font-bold.text-\[15px\].sm\:text-base.py-3\.5.rounded-xl.hover\:bg-\[\#0055aa\].transition-colors.flex.items-center.justify-center.gap-1\.5.shadow-sm {
  font-size: 16px !important;
  height: 50px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.b2b-lease-root button.w-full.bg-\[\#0066CC\].text-white.font-bold.text-\[15px\].sm\:text-base.py-3\.5.rounded-xl.hover\:bg-\[\#0055aa\].transition-colors.flex.items-center.justify-center.gap-1\.5.shadow-sm svg {
  color: #ffffff !important;
}

.b2b-lease-root .flex.h-14.border-t.border-border\/60 {
  height: 4.5rem !important;
}

.b2b-lease-root .flex.h-14.border-t.border-border\/60 > button + button {
  border-left: 1px solid #d1d5db !important;
}

.b2b-lease-root #subcategory-container button.bg-primary.text-primary-foreground {
  font-weight: 700 !important;
}

.b2b-lease-root .grid.grid-cols-1.sm\:grid-cols-2.gap-y-3.gap-x-4.text-\[16px\].text-foreground.mt-4 {
  row-gap: 1rem !important;
}

.b2b-lease-root #product-container span.text-xs.sm\:text-sm.font-medium.text-foreground {
  font-size: 10px !important;
}