/* Design.md - 배달의민족 (Baemin 2.0) 폰트 & 디자인 토큰 100% 매칭 */

/* 1. Google Fonts & Noonnu Official WebFont CDNs for BM Series & Pretendard */
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css');
@import url('https://fonts.googleapis.com/css2?family=Do+Hyeon&family=Jua&display=swap');

@font-face {
  font-family: 'BMHANNAPro';
  src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_seven@1.0/BMHANNAPro.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'BMDOHYEON';
  src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_one@1.0/BMDOHYEON.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'BMJUA';
  src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_one@1.0/BMJUA.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'BMYEONSUNG';
  src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_one@1.0/BMYEONSUNG.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

:root {
  /* Brand Mint (Baemin 2.0 OKLCH oklch(0.88 0.18 178)) */
  --colors-primary: #0CEFD3;
  --colors-primary-hover: #05D6BD;
  --colors-primary-tint: #E6FFFA;
  --colors-primary-legacy: #2AC1BC;

  /* Navy & Accents */
  --colors-navy: #1B243B;
  --colors-navy-deep: #121828;
  --colors-navy-tint: #F0F4FA;

  --colors-red: #F04438;
  --colors-red-tint: #FFF2F1;
  --colors-orange: #FF6B00;
  --colors-yellow: #FFC42E;
  --colors-pink: #FF3B77;
  --colors-pink-tint: #FFF0F5;
  --colors-frozen: #2B8CFF;

  /* Neutrals (Bone White & Near Black) */
  --colors-bg-page: #F7F7F8;
  --colors-bg-surface: #FFFFFF;
  --colors-bg-subtle: #F2F3F5;
  --colors-bg-pressed: #E5E6EB;
  --colors-bg-inverse: #1D2129;

  --colors-fg-1: #1D2129;
  --colors-fg-2: #4E5969;
  --colors-fg-3: #86909C;
  --colors-fg-4: #C9CDD4;

  --colors-border-1: #F0F2F5;
  --colors-border-2: #E5E6EB;
  --colors-border-strong: #1D2129;

  /* Typography Stack matching Design.md */
  --font-display-bold: 'BMDOHYEON', 'Do Hyeon', 'BMHANNAPro', sans-serif;
  --font-display: 'BMHANNAPro', 'BMDOHYEON', 'Jua', sans-serif;
  --font-display-rounded: 'BMJUA', 'Jua', sans-serif;
  --font-display-script: 'BMYEONSUNG', cursive;
  --font-body: 'Pretendard Variable', 'Pretendard', -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;

  /* Corner Tokens */
  --rounded-xs: 4px;
  --rounded-sm: 8px;
  --rounded-md: 12px;
  --rounded-lg: 16px;
  --rounded-xl: 20px;
  --rounded-2xl: 24px;
  --rounded-3xl: 32px;
  --rounded-pill: 9999px;
  --rounded-circle: 50%;

  /* Shadows */
  --shadow-1: 0 1px 2px rgba(29, 33, 41, 0.04);
  --shadow-2: 0 4px 12px rgba(29, 33, 41, 0.06);
  --shadow-3: 0 8px 24px rgba(29, 33, 41, 0.08);
  --shadow-sticker: 0 6px 0 #1D2129;

  /* Animations */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --dur-fast: 120ms;
  --dur-base: 200ms;
  --dur-slow: 400ms;
}

/* Base resets */
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  -webkit-tap-highlight-color: transparent;
}

body {
  font-family: var(--font-body);
  background-color: var(--colors-bg-page);
  color: var(--colors-fg-1);
  line-height: 1.5;
  font-size: 15px;
  -webkit-font-smoothing: antialiased;
}

/* Headings matching Design.md line-height rules (1.0~1.15) */
.font-h1, h1 {
  font-family: var(--font-display-bold);
  font-size: 32px;
  line-height: 1.05;
  letter-spacing: -0.02em;
}

.font-h2, h2 {
  font-family: var(--font-body);
  font-weight: 800;
  font-size: 22px;
  line-height: 1.2;
  letter-spacing: -0.015em;
}

.font-h3, h3 {
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 18px;
  line-height: 1.3;
}

.font-h4, h4 {
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 16px;
  line-height: 1.35;
}

.display-title {
  font-family: var(--font-display);
  font-size: 26px;
  line-height: 1.08;
  letter-spacing: -0.02em;
}

.price-text {
  font-family: var(--font-body);
  font-weight: 800;
  letter-spacing: -0.02em;
  font-variant-numeric: tabular-nums;
}

.price-sale {
  color: var(--colors-red);
}

.price-strike {
  color: var(--colors-fg-3);
  text-decoration: line-through;
  font-weight: 400;
}
