/* Hallmark · pre-emit critique: P5 H5 E5 S5 R5 V5
 * macrostructure: app-console · genre: modern-minimal · tone: Apple 式克制
 * theme: Apple system color 定制（OKLCH 感知均匀）
 * paper oklch(99% 0.002 240) · accent oklch(54% 0.17 258)
 * axes: light-paper(±dark) / system-sans / cool-accent
 * 标准: OKLCH 感知均匀色板 · 发丝线无阴影(除浮层) · 等宽数字
 *      SF 字体刻度 · 4pt 间距网格 · 8 态交互 · 44pt 触控
 *      浅色/深色双模式（跟随系统 prefers-color-scheme）
 */

:root {
  color-scheme: light;

  /* ── 背景层级 ───────────────────────────── */
  --bg-app: oklch(99% 0.002 240);        /* 窗口底 · 近白 */
  --bg-sidebar: oklch(98.6% 0.003 250 / 0.78);  /* 侧栏 · 半透明材质 */
  --bg-sidebar-solid: oklch(98.6% 0.003 250);
  --bg-content: oklch(100% 0 0);         /* 内容 · 纯白 */
  --bg-fill: oklch(96.8% 0.004 252);     /* 控件填充 */
  --bg-fill-hover: oklch(94.8% 0.005 252);
  --bg-fill-active: oklch(93% 0.006 252);
  --bg-hover: oklch(97.4% 0.004 252);
  --top-inset: rgb(255 255 255 / 0.5);   /* 材质顶部受光 */

  /* ── 文字层级（高对比，≥4.5:1）────────── */
  --text-primary: oklch(19% 0.01 250);   /* 主文字 · 近黑 */
  --text-secondary: oklch(46% 0.012 250);
  --text-tertiary: oklch(62% 0.012 250);
  --text-quaternary: oklch(74% 0.008 250);

  /* ── 分隔（发丝线）────────────────────── */
  --border-hairline: oklch(92% 0.005 250);
  --border-strong: oklch(87% 0.006 250);

  /* ── 强调与状态色（Apple system color 的 OKLCH 对应）── */
  --accent: oklch(54% 0.17 258);          /* systemBlue */
  --accent-hover: oklch(49% 0.16 259);
  --accent-fg: oklch(99% 0.005 250);
  --accent-wash: oklch(96.4% 0.028 256);
  --green: oklch(55% 0.16 150);           /* 记住了 · systemGreen 深色文本版 */
  --green-wash: oklch(96.4% 0.035 151);
  --orange: oklch(60% 0.15 62);           /* 模糊 */
  --orange-wash: oklch(96.6% 0.04 63);
  --red: oklch(56% 0.19 28);              /* 忘了/到期 · systemRed */
  --red-wash: oklch(96.4% 0.035 29);
  --focus-ring: oklch(54% 0.17 258);

  /* ── 日历完成热力（过去日期的底色）────── */
  --heat-2: oklch(88% 0.07 150);
  --heat-3: oklch(78% 0.11 150);

  /* ── 学科徽标色（9 门，OKLCH 均匀分布）── */
  --subj-yuwen: oklch(52% 0.13 30);       /* 语文 · 赭红 */
  --subj-math: oklch(54% 0.17 258);       /* 数学 · 蓝 */
  --subj-eng: oklch(50% 0.15 320);        /* 外语 · 紫 */
  --subj-phys: oklch(56% 0.11 210);       /* 物理 · 青蓝 */
  --subj-chem: oklch(62% 0.16 65);        /* 化学 · 绿 */
  --subj-bio: oklch(58% 0.14 130);        /* 生物 · 草绿 */
  --subj-hist: oklch(56% 0.12 65);        /* 历史 · 赭橙 */
  --subj-geo: oklch(52% 0.11 190);        /* 地理 · 青 */
  --subj-pol: oklch(54% 0.15 0);          /* 思政 · 玫红 */

  /* ── 字体（平台系统字 · 光学字号与字距表内置）── */
  --font-ui: -apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang SC", "Helvetica Neue", "Microsoft YaHei", sans-serif;
  --font-display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "PingFang SC", "Helvetica Neue", sans-serif;
  --font-num: "SF Mono", ui-monospace, Menlo, Consolas, monospace;

  /* ── 字号刻度（SF Pro，大字负字距）────── */
  --text-2xs: 10px;
  --text-xs: 11px;
  --text-sm: 13px;
  --text-md: 15px;
  --text-lg: 17px;
  --text-xl: 20px;
  --text-2xl: 24px;
  --text-3xl: 28px;
  --text-4xl: 34px;

  /* ── 4pt 间距网格 ───────────────────────── */
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px;
  --space-5: 20px; --space-6: 24px; --space-8: 32px; --space-10: 40px;
  --space-12: 48px; --space-16: 64px; --space-20: 80px;

  /* ── 圆角（连续曲率观感）───────────────── */
  --radius-xs: 4px;
  --radius-sm: 7px;
  --radius-md: 9px;
  --radius-lg: 12px;
  --radius-chip: 999px;

  /* ── 阴影（仅浮层，染底色色相）────────── */
  --shadow-pop: 0 1px 2px rgb(0 0 0 / 0.05), 0 4px 16px rgb(0 0 0 / 0.08), 0 16px 48px rgb(0 0 0 / 0.06);
  --shadow-card: 0 0.5px 1px rgb(0 0 0 / 0.04), 0 2px 8px rgb(0 0 0 / 0.03);

  /* ── 动效（三个命名缓动 · Apple 临界阻尼手感）── */
  --ease-out: cubic-bezier(0.2, 0.7, 0.3, 1);
  --ease-in: cubic-bezier(0.4, 0, 1, 1);
  --ease-in-out: cubic-bezier(0.5, 0, 0.5, 1);
  --dur-instant: 80ms;
  --dur-fast: 140ms;
  --dur-base: 220ms;

  /* ── 布局 ───────────────────────────────── */
  --sidebar-w: 248px;
  --content-max: 1000px;
  --touch-min: 44px;
  --hairline: 1px;
}

/* ══ 深色模式（跟随系统 · macOS Dark Appearances）══════════ */
@media (prefers-color-scheme: dark) {
  :root {
    color-scheme: dark;

    --bg-app: oklch(16.5% 0.006 250);         /* 窗口底 · 近黑（非纯黑，保深度） */
    --bg-sidebar: oklch(19.5% 0.007 250 / 0.78);
    --bg-sidebar-solid: oklch(19.5% 0.007 250);
    --bg-content: oklch(22% 0.008 250);       /* 抬升一级：内容浮于窗口底 */
    --bg-fill: oklch(27% 0.009 250);
    --bg-fill-hover: oklch(31% 0.01 250);
    --bg-fill-active: oklch(34% 0.01 250);
    --bg-hover: oklch(26% 0.009 250);
    --top-inset: rgb(255 255 255 / 0.06);
    --figure-backing: oklch(98% 0.002 240);  /* 白底插图在深色下的纸垫 */

    --text-primary: oklch(93% 0.004 250);
    --text-secondary: oklch(76% 0.008 250);
    --text-tertiary: oklch(62% 0.01 250);
    --text-quaternary: oklch(49% 0.01 250);

    --border-hairline: oklch(31% 0.008 250);
    --border-strong: oklch(38% 0.009 250);

    /* 深色下提亮状态色（Apple dark-mode 对应色） */
    --accent: oklch(63% 0.16 258);            /* systemBlue dark */
    --accent-hover: oklch(68% 0.15 258);
    --accent-fg: oklch(99% 0.005 250);
    --accent-wash: oklch(33% 0.055 258);
    --green: oklch(71% 0.16 150);
    --green-wash: oklch(32% 0.05 150);
    --orange: oklch(73% 0.14 62);
    --orange-wash: oklch(33% 0.05 62);
    --red: oklch(69% 0.17 28);
    --red-wash: oklch(33% 0.06 28);
    --focus-ring: oklch(63% 0.16 258);

    --heat-2: oklch(36% 0.06 150);
    --heat-3: oklch(45% 0.09 150);

    /* 学科徽标深色整体提亮一档，保持可辨 */
    --subj-yuwen: oklch(62% 0.13 30);
    --subj-math: oklch(63% 0.16 258);
    --subj-eng: oklch(62% 0.14 320);
    --subj-phys: oklch(66% 0.11 210);
    --subj-chem: oklch(70% 0.15 65);
    --subj-bio: oklch(68% 0.14 130);
    --subj-hist: oklch(66% 0.12 65);
    --subj-geo: oklch(64% 0.11 190);
    --subj-pol: oklch(65% 0.14 0);

    --shadow-pop: 0 1px 2px rgb(0 0 0 / 0.4), 0 4px 16px rgb(0 0 0 / 0.4), 0 16px 48px rgb(0 0 0 / 0.35);
    --shadow-card: 0 0.5px 1px rgb(0 0 0 / 0.35), 0 2px 8px rgb(0 0 0 / 0.25), inset 0 1px 0 rgb(255 255 255 / 0.04);
  }
}

/* 降低透明度偏好：材质退化为实色 */
@media (prefers-reduced-transparency: reduce) {
  :root { --bg-sidebar: var(--bg-sidebar-solid); }
}
