/**
 * =====================================================
 * 2026 VIVEN 레벨디자인 해커톤 - 디자인 토큰
 * =====================================================
 * 이 파일의 변수만 사용하여 스타일링할 것
 * 하드코딩 금지!
 */

:root {
  /* =====================================================
   * 컬러 시스템
   * ===================================================== */

  /* ----- Primary: 배경 ----- */
  --bg-primary: #1B2838;        /* 메인 배경 (포스터 기반) */
  --bg-secondary: #0F1923;      /* 더 어두운 섹션 */
  --bg-card: #243447;           /* 카드/박스 배경 */
  --bg-elevated: #2D3E50;       /* 호버/강조 배경 */
  --bg-overlay: rgba(15, 25, 35, 0.9); /* 오버레이 */

  /* ----- Accent: 포인트 컬러 (포스터 기반, 뮤트 톤) ----- */
  --accent-primary: #6AABBF;    /* 메인 시안 (뮤트, 덜 쨍함) */
  --accent-secondary: #8AC4D4;  /* 라이트 시안 */
  --accent-purple: #7B6B9E;     /* 뮤트 퍼플 (포스터 "2026" 색상) */
  --accent-purple-light: #9D8EC2; /* 라이트 퍼플 */

  /* ----- 퍼즐 조각 블루 톤 (포스터 기반) ----- */
  --blue-light: #A8D4E6;        /* 라이트 블루 */
  --blue-medium: #6BA3C7;       /* 미디엄 블루 */
  --blue-dark: #3D5A80;         /* 다크 블루 */

  /* ----- 상태 컬러 ----- */
  --color-success: #84CC16;     /* 성공/진행중 */
  --color-warning: #FBBF24;     /* 경고 (10분 전) */
  --color-danger: #EF4444;      /* 긴급 (5분 전) */
  --color-info: #3B82F6;        /* 정보 */

  /* ----- 텍스트 ----- */
  --text-primary: #FFFFFF;      /* 타이틀 */
  --text-secondary: #E2E8F0;    /* 본문 */
  --text-muted: #94A3B8;        /* 캡션/힌트 */
  --text-accent: #5BCAED;       /* 강조 텍스트 */

  /* ----- 시상식 전용 컬러 ----- */
  --gold-dark: #AA8C2C;
  --gold-base: #D4AF37;
  --gold-light: #F5E7A3;
  --gold-bright: #FFD700;

  --silver-dark: #A9A9A9;
  --silver-base: #C0C0C0;
  --silver-light: #E8E8E8;

  --bronze-dark: #8B4513;
  --bronze-base: #CD7F32;
  --bronze-light: #DEB887;

  /* =====================================================
   * 타이포그래피
   * ===================================================== */

  --font-family: 'Pretendard Variable', 'Pretendard', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;

  /* ----- 폰트 사이즈 (1920x1080 기준) -----
   * 위계를 더 명확하게: 제목은 크게, 본문은 적당히
   * ShadCN 스타일 참고 - 대비를 과감하게 */
  --fs-hero: clamp(96px, 8vw, 140px);      /* 히어로 타이틀 - 더 크게 */
  --fs-title: clamp(48px, 4vw, 72px);      /* 섹션 타이틀 */
  --fs-subtitle: clamp(28px, 2.5vw, 40px); /* 서브 타이틀 - 더 작게 */
  --fs-heading: clamp(22px, 1.8vw, 32px);  /* 헤딩 */
  --fs-body: clamp(18px, 1.4vw, 24px);     /* 본문 */
  --fs-caption: clamp(14px, 1vw, 16px);    /* 캡션 - 더 작게 */
  --fs-small: clamp(12px, 0.8vw, 14px);    /* 작은 텍스트 */

  /* ----- 폰트 굵기 ----- */
  --fw-black: 900;
  --fw-bold: 700;
  --fw-semibold: 600;
  --fw-medium: 500;
  --fw-regular: 400;
  --fw-light: 300;

  /* ----- 행간/자간 ----- */
  --lh-tight: 1.2;
  --lh-normal: 1.5;
  --lh-relaxed: 1.75;
  --ls-tight: -0.03em;    /* 한글 자간 */
  --ls-normal: -0.01em;
  --ls-wide: 0.05em;

  /* =====================================================
   * 레이아웃
   * ===================================================== */

  /* ----- 뷰포트 기준 ----- */
  --viewport-width: 1920;
  --viewport-height: 1080;

  /* ----- 간격 ----- */
  --space-2xs: 4px;
  --space-xs: 8px;
  --space-sm: 16px;
  --space-md: 24px;
  --space-lg: 32px;
  --space-xl: 48px;
  --space-2xl: 64px;
  --space-3xl: 96px;

  /* ----- 슬라이드 패딩 ----- */
  --slide-padding-x: 80px;
  --slide-padding-y: 60px;

  /* ----- 둥근 모서리 ----- */
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;

  /* =====================================================
   * 이펙트
   * ===================================================== */

  /* ----- 그림자 ----- */
  --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.3);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.5);
  --shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.6);

  /* ----- 글로우 (최소화) ----- */
  --glow-cyan: 0 0 20px rgba(106, 171, 191, 0.2);
  --glow-cyan-strong: 0 0 30px rgba(106, 171, 191, 0.3);
  --glow-purple: 0 0 20px rgba(123, 107, 158, 0.2);
  --glow-gold: 0 0 30px rgba(212, 175, 55, 0.3);
  --glow-danger: 0 0 20px rgba(239, 68, 68, 0.3);

  /* ----- 그라데이션 ----- */
  --gradient-bg: linear-gradient(135deg, #1B2838 0%, #0F1923 100%);
  --gradient-accent: linear-gradient(135deg, #5BCAED 0%, #4A9EBF 100%);  /* 시안 그라데이션 */
  --gradient-gold: linear-gradient(135deg, #D4AF37 0%, #F5E7A3 25%, #D4AF37 50%, #AA8C2C 75%, #F5E7A3 100%);
  --gradient-card: linear-gradient(180deg, rgba(36, 52, 71, 0.8) 0%, rgba(36, 52, 71, 0.4) 100%);

  /* =====================================================
   * 애니메이션
   * ===================================================== */

  /* ----- 지속시간 ----- */
  --duration-fast: 150ms;
  --duration-normal: 300ms;
  --duration-slow: 500ms;
  --duration-slower: 800ms;

  /* ----- 이징 ----- */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --ease-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);
  --ease-spring: cubic-bezier(0.175, 0.885, 0.32, 1.275);

  /* =====================================================
   * 트랜지션 프리셋
   * ===================================================== */
  --transition-fast: all var(--duration-fast) var(--ease-out);
  --transition-normal: all var(--duration-normal) var(--ease-out);
  --transition-slow: all var(--duration-slow) var(--ease-out);

  /* =====================================================
   * Z-Index 레이어
   * ===================================================== */
  --z-background: -1;
  --z-base: 0;
  --z-content: 10;
  --z-overlay: 100;
  --z-modal: 200;
  --z-toast: 300;
  --z-tooltip: 400;
}

/* =====================================================
 * 다크 모드 기본값 (이미 다크 테마이므로 변경 없음)
 * ===================================================== */
@media (prefers-color-scheme: dark) {
  :root {
    /* 이미 다크 테마 */
  }
}
