/* ========================================
 * malaji.com 官网全局主样式 main.css
 * V3.1 设计体系：「赤焰 · 墨玉 · 鎏金」
 * LOGO 溯源 #D82418 / #F0C024 · 对标巴味渝珍门户质感
 * ======================================== */

/* ===== CSS 变量：V3.1 设计令牌 ===== */
:root {
  /* —— LOGO 真源色 —— */
  --ml-logo-red: #D82418;
  --ml-logo-gold: #F0C024;

  /* —— 赤焰 Crimson —— */
  --ml-crimson: #C01F16;
  --ml-crimson-deep: #8B1510;
  --ml-crimson-bright: #D82418;
  --ml-crimson-soft: #FEF2F1;
  --ml-crimson-muted: #F3C5C1;

  /* —— 墨玉 Ink —— */
  --ml-ink: #1C1917;
  --ml-ink-soft: #292524;
  --ml-ink-muted: #44403C;
  --ml-ink-faint: #57534E;

  /* —— 鎏金 Gild —— */
  --ml-gild: #C9A227;
  --ml-gild-deep: #8A6D1F;
  --ml-gild-light: #F6E7A8;
  --ml-gild-soft: #FBF8EC;

  /* —— 米宣 Paper / 表面 —— */
  --ml-paper: #FAF6F3;
  --ml-paper-alt: #F4EDE7;
  --ml-paper-rose: #FBF0ED;
  --ml-paper-gild: #FBF8EC;
  --ml-surface: #FFFEFB;
  --ml-surface-elevated: #FFFFFF;
  --ml-line: #E8E0D8;
  --ml-line-strong: #D6CDC3;

  /* —— 文字 —— */
  --ml-text: #1C1917;
  --ml-text-secondary: #57534E;
  --ml-text-tertiary: #78716C;
  --ml-text-inverse: #FAF6F3;

  /* —— 语义色 —— */
  --ml-success: #1F7A45;
  --ml-success-soft: #EAF7F0;
  --ml-warning: #B45309;
  --ml-warning-soft: #FFFBEB;
  --ml-danger: #C01F16;
  --ml-info: #3D5A80;
  --ml-info-soft: #EFF4F8;

  /* —— 巴味渝珍联名（双标场景） —— */
  --ml-bayu-green: #009944;
  --ml-bayu-green-deep: #022C17;
  --ml-bayu-gold: #F1D891;

  /* —— 阴影 —— */
  --ml-shadow-sm: 0 1px 2px rgba(28, 25, 23, 0.05), 0 4px 12px rgba(28, 25, 23, 0.04);
  --ml-shadow-md: 0 8px 24px rgba(28, 25, 23, 0.08), 0 2px 8px rgba(28, 25, 23, 0.04);
  --ml-shadow-lg: 0 16px 48px rgba(28, 25, 23, 0.12);
  --ml-shadow-crimson: 0 10px 28px rgba(192, 31, 22, 0.28);
  --ml-shadow-gild: 0 6px 20px rgba(201, 162, 39, 0.22);

  /* —— 兼容旧变量映射（全站 HTML/JS 仍用 --color-*） —— */
  --color-red: var(--ml-crimson);
  --color-red-dark: var(--ml-crimson-deep);
  --color-red-light: var(--ml-crimson-bright);
  --color-gold: var(--ml-gild);
  --color-gold-light: var(--ml-gild-light);
  --color-bg-warm: var(--ml-paper);
  --color-bg-cream: var(--ml-paper-alt);
  --color-bg-light: var(--ml-surface);
  --color-nav: var(--ml-ink);
  --color-nav-dark: #0C0A09;
  --color-text: var(--ml-text);
  --color-text-mid: var(--ml-text-secondary);
  --color-text-light: var(--ml-text-tertiary);
  --color-green: var(--ml-success);
  --color-green-dark: #185C34;
  --color-gold-tag: var(--ml-gild-deep);
  --color-red-tag: var(--ml-crimson);
  --color-green-tag: var(--ml-success);

  /* 字体 */
  --font-sans: "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", "Helvetica Neue", Arial, system-ui, sans-serif;
  --font-serif: "Source Han Serif SC", "Noto Serif SC", "STSong", "SimSun", serif;

  /* 字号阶梯 */
  --fs-xl: 32px;
  --fs-lg: 26px;
  --fs-md: 22px;
  --fs-base: 18px;
  --fs-sm: 15px;
  --fs-xs: 13px;

  /* 圆角 V3.1 */
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;

  /* 阴影（兼容别名） */
  --shadow-sm: var(--ml-shadow-sm);
  --shadow-md: var(--ml-shadow-md);
  --shadow-lg: var(--ml-shadow-lg);

  /* 间距 */
  --space-section: 72px;
  --container-max: 1200px;
}

/* ===== 基础重置 ===== */
*, *::before, *::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body {
  font-family: var(--font-sans);
  color: var(--color-text);
  background-color: var(--color-bg-warm);
  line-height: 1.6;
  min-height: 100vh;
  overflow-x: hidden;
}

a {
  color: var(--color-red);
  text-decoration: none;
  transition: color 0.2s ease;
}

a:hover {
  color: var(--color-red-dark);
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

ul, ol {
  list-style: none;
}

/* ===== 布局容器 ===== */
.container {
  width: 100%;
  max-width: var(--container-max);
  margin: 0 auto;
  padding: 0 20px;
}

.section {
  padding: var(--space-section) 0;
}

.section--cream {
  background-color: var(--color-bg-cream);
}

/* 非遗纹样水印背景（CSS生成，无需图片） */
.section--pattern {
  background-color: var(--color-bg-cream);
  background-image:
    radial-gradient(circle at 20% 50%, rgba(201, 162, 39, 0.05) 0%, transparent 50%),
    radial-gradient(circle at 80% 80%, rgba(216, 36, 24, 0.04) 0%, transparent 50%);
}

.section--rose {
  background-color: var(--ml-paper-rose);
}

.section--gild {
  background-color: var(--ml-paper-gild);
}

/* ===== 标题样式 ===== */
.section-title {
  text-align: center;
  margin-bottom: 40px;
}

.section-title h2 {
  font-size: 2rem;
  font-weight: 700;
  color: var(--color-text);
  position: relative;
  display: inline-block;
  padding-bottom: 16px;
}

.section-title h2::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 48px;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--ml-gild), transparent);
  border-radius: 1px;
}

.section-title p {
  margin-top: 12px;
  color: var(--color-text-mid);
  font-size: 1rem;
}

.section-title--left {
  text-align: left;
}

.section-title--left h2::after {
  left: 0;
  transform: none;
}

/* ===== 工具类 ===== */
.text-red { color: var(--color-red); }
.text-gold { color: var(--color-gold); }
.text-center { text-align: center; }
.text-mid { color: var(--color-text-mid); }

.bg-warm { background-color: var(--color-bg-warm); }
.bg-cream { background-color: var(--color-bg-cream); }

.mt-20 { margin-top: 20px; }
.mt-40 { margin-top: 40px; }
.mb-20 { margin-bottom: 20px; }
.mb-40 { margin-bottom: 40px; }

.flex { display: flex; }
.flex-center { display: flex; align-items: center; justify-content: center; }
.flex-between { display: flex; align-items: center; justify-content: space-between; }

/* ===== 非遗装饰元素 ===== */
.deco-corner {
  position: absolute;
  width: 40px;
  height: 40px;
  border: 2px solid var(--color-gold);
  opacity: 0.5;
}

.deco-corner--tl { top: 10px; left: 10px; border-right: none; border-bottom: none; }
.deco-corner--tr { top: 10px; right: 10px; border-left: none; border-bottom: none; }
.deco-corner--bl { bottom: 10px; left: 10px; border-right: none; border-top: none; }
.deco-corner--br { bottom: 10px; right: 10px; border-left: none; border-top: none; }

/* 滚动条美化 */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: var(--color-bg-cream);
}

::-webkit-scrollbar-thumb {
  background: var(--color-gold);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--color-red);
}

/* 选中文本 */
::selection {
  background: var(--color-gold-light);
  color: var(--color-red-dark);
}

/* 动画 */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes blink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}

.fade-in-up {
  animation: fadeInUp 0.6s ease forwards;
}

.fade-in {
  animation: fadeIn 0.5s ease forwards;
}

/* 打字机光标 */
.typing-cursor {
  display: inline-block;
  width: 3px;
  height: 1em;
  background: var(--color-gold);
  margin-left: 4px;
  vertical-align: middle;
  animation: blink 1s infinite;
}
