@tailwind base;
@tailwind components;
@tailwind utilities;

:root {
  --blush: #d05a82;
  --blush-deep: #993456;
  --sage: #4e6e43;
  --cream: #fdfaf5;
  --gold: #c4a35a;
}

body {
  margin: 0;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  color: #43343a;
  background: var(--cream);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

* {
  box-sizing: border-box;
}

/* ── 한국어 선택 시: 한글 본문은 맑은 고딕 우선, 영문은 Inter 폴백 ──
   <html class="lang-ko"> 를 i18n이 토글한다(applyLangSideEffects). */
html.lang-ko body,
html.lang-ko .admin-shell,
html.lang-ko input,
html.lang-ko textarea,
html.lang-ko select,
html.lang-ko button,
html.lang-ko p,
html.lang-ko span,
html.lang-ko a,
html.lang-ko li,
html.lang-ko td,
html.lang-ko th,
html.lang-ko label,
html.lang-ko h1,
html.lang-ko h2,
html.lang-ko h3,
html.lang-ko h4 {
  font-family: 'Malgun Gothic', '맑은 고딕', 'Apple SD Gothic Neo', 'Inter',
    -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}
/* 영문 헤드라인(Playfair/Cormorant)은 한국어 모드에서도 유지하되,
   한글이 섞이면 맑은 고딕으로 자연 폴백되도록 폰트 스택을 합성 */
html.lang-ko .font-display {
  font-family: 'Cormorant Garamond', 'Malgun Gothic', '맑은 고딕', Georgia, serif;
}
html.lang-ko .font-serif {
  font-family: 'Playfair Display', 'Malgun Gothic', '맑은 고딕', Georgia, serif;
}

/* 관리자 영역(.admin-shell): NCloud 다크 (변경 금지) */
.admin-shell {
  color-scheme: dark;
  background: #0b0f17;
  color: #e6edf6;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* ── 스토어프론트 헤드라인: 세리프 ── */
.font-display { font-family: 'Cormorant Garamond', Georgia, serif; }
.font-serif { font-family: 'Playfair Display', Georgia, serif; }

/* 부드러운 스크롤 + 셀렉션 컬러 */
html { scroll-behavior: smooth; }
::selection { background: rgba(208, 90, 130, 0.18); }

/* ── 보태니컬 구분선 ── */
.botanical-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  color: #a8c39e;
}
.botanical-divider::before,
.botanical-divider::after {
  content: '';
  height: 1px;
  flex: 1;
  max-width: 7rem;
  background: linear-gradient(to var(--dir, right), transparent, rgba(168, 195, 158, 0.7));
}
.botanical-divider::before { --dir: left; }

/* ── 꽃잎 흩날림 레이어 ── */
.petal-layer {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: 0;
}
.petal {
  position: absolute;
  top: -8vh;
  border-radius: 50% 0 50% 50%;
  background: radial-gradient(circle at 30% 30%, rgba(238, 167, 190, 0.95), rgba(208, 90, 130, 0.55));
  opacity: 0;
  will-change: transform, opacity;
  animation: petalfall linear infinite;
}
.petal.sage {
  background: radial-gradient(circle at 30% 30%, rgba(168, 195, 158, 0.9), rgba(100, 138, 86, 0.5));
}
.petal.cream {
  background: radial-gradient(circle at 30% 30%, rgba(253, 246, 238, 0.95), rgba(196, 163, 90, 0.4));
}

/* 잡지형 hover 줌 베이스 */
.zoom-frame { overflow: hidden; }
.zoom-frame img { transition: transform 0.9s cubic-bezier(0.22, 1, 0.36, 1); }

/* 접근성: 모션 최소화 선호 시 모든 장식 모션 정지 */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
  .petal-layer { display: none; }
}

/* 가는 스크롤바 (스토어프론트 가로 캐러셀) */
.thin-scroll::-webkit-scrollbar { height: 6px; }
.thin-scroll::-webkit-scrollbar-thumb { background: rgba(208, 90, 130, 0.25); border-radius: 999px; }
