/* ==========================================================================
   TAN QI / DoubleEgg — Design Tokens (DARKROOM)
   Single source of truth: colour, type, space, rhythm, motion, light.
   The room is a darkroom: safelight red is the ambient light, developing
   orange is the accent. Edit here first; nothing else hard-codes values.
   ========================================================================== */

:root {
  /* 夜 / 昼（旅行记录：白天在外面，晚上整理） ---------------------------- */
  --desk:        #0a0a0b;   /* 页面底 */
  --desk-2:      #100f12;   /* 抬起面 */
  --panel:       #141316;   /* 卡片 / 片夹 */
  --paper:       #f6f1e7;   /* 信纸 */
  --paper-ink:   #2a2419;

  /* 墨 ------------------------------------------------------------------ */
  --ink:         #f0ecea;
  --ink-2:       #a8a2a4;
  --ink-3:       #6f686c;
  --line:        #26232a;
  --line-2:      #332d36;

  /* 光：夕阳橙（主强调）+ 远山红（辅助） --------------------------------- */
  --lamp:        #ff9f6e;   /* 夕阳橙（主强调） */
  --lamp-deep:   #c9432f;
  --safelight:   #c9432f;   /* 暗房红灯：光晕 / 编号 / 细线 */
  --lamp-glow:   rgba(201, 67, 47, .20);
  --mint:        #8fe3c0;   /* 极少量点缀：LIVE / 成功 */

  /* 排版 ---------------------------------------------------------------- */
  --f-sans:  -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", "Microsoft YaHei", system-ui, sans-serif;
  --f-serif: "Georgia", "Times New Roman", "Songti SC", serif;
  --f-mono:  ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace;
  --f-hand:  "Bradley Hand", "Snell Roundhand", "Kaiti SC", "STKaiti", cursive;

  --fs-display: clamp(56px, 11.2vw, 168px);
  --fs-h2:      clamp(30px, 4.6vw, 60px);
  --fs-h3:      clamp(20px, 2.1vw, 26px);
  --fs-body:    clamp(15px, 1.08vw, 17px);
  --fs-small:   13px;
  --fs-label:   11px;

  /* 间距 ---------------------------------------------------------------- */
  --sp-1: 4px;  --sp-2: 8px;  --sp-3: 12px; --sp-4: 16px;
  --sp-5: 24px; --sp-6: 32px; --sp-7: 48px; --sp-8: 72px; --sp-9: 112px;
  --page: 1200px;

  /* 缓动 / 时长 --------------------------------------------------------- */
  --ease-out:    cubic-bezier(.22, 1, .36, 1);
  --ease-spring: cubic-bezier(.34, 1.3, .4, 1);
  --dur-1: .18s; --dur-2: .35s; --dur-3: .6s; --dur-4: .9s;

  /* 光源（JS 写入，-0.5 ~ 0.5 的归一化偏移） ---------------------------- */
  --lx: 0; --ly: 0;

  /* 层级 ---------------------------------------------------------------- */
  --z-grain: 60; --z-cursor: 70; --z-nav: 50; --z-palette: 80;
}

/* 昼：白天的暖纸色（保留「夜 → 昼」这个开关作为记忆点） */
[data-theme="day"] {
  --desk: #efe9df; --desk-2: #f8f4ec; --panel: #fffdf8;
  --ink: #241f18; --ink-2: #5d564b; --ink-3: #8b8477;
  --line: #ddd5c6; --line-2: #cec4b2;
  --lamp: #b8442a; --lamp-deep: #8f2f1c; --safelight: #b8442a;
  --lamp-glow: rgba(184, 68, 42, .22);
}

/* ==========================================================================
   Derived tokens (prototype additions). Every surface shares one light.
   ========================================================================== */
:root {
  --pad: clamp(20px, 5vw, 48px);

  --shadow-lit:
    calc(var(--lx) * -14px) calc(var(--ly) * -10px) 32px -18px rgba(0, 0, 0, .78),
    calc(var(--lx) * -2px)  calc(var(--ly) * -2px)  2px  0    rgba(255, 255, 255, .04);
  --shadow-lit-hi:
    calc(var(--lx) * -22px) calc(var(--ly) * -16px) 52px -20px rgba(0, 0, 0, .88),
    calc(var(--lx) * -2px)  calc(var(--ly) * -2px)  2px  0     rgba(255, 255, 255, .06);
  --shadow-lift:
    0 18px 40px -22px rgba(0, 0, 0, .82),
    calc(var(--lx) * -6px) calc(var(--ly) * -4px) 18px -12px rgba(0, 0, 0, .62);

  --tape:        rgba(255, 159, 110, .24);
  --sign-ink:    #a8601f;
  --radius:      3px;
}

[data-theme="day"] {
  --shadow-lit:
    calc(var(--lx) * -14px) calc(var(--ly) * -10px) 30px -20px rgba(92, 74, 46, .28),
    calc(var(--lx) * -2px)  calc(var(--ly) * -2px)  2px  0    rgba(255, 255, 255, .7);
  --shadow-lit-hi:
    calc(var(--lx) * -22px) calc(var(--ly) * -16px) 46px -22px rgba(92, 74, 46, .34),
    calc(var(--lx) * -2px)  calc(var(--ly) * -2px)  2px  0    rgba(255, 255, 255, .8);
  --shadow-lift:
    0 18px 40px -22px rgba(92, 74, 46, .3),
    calc(var(--lx) * -6px) calc(var(--ly) * -4px) 18px -12px rgba(92, 74, 46, .22);
  --tape:     rgba(184, 68, 42, .18);
  --sign-ink: #b4650f;
}
