/* 全站唯一的 token 来源 */

/* 断点注册表(CSS 变量不能用于 @media,靠此注释+行尾标记维持纪律):
   768px 主断点(≤768 移动),769px 是它的 min-width 补集,
   640px 栅格收列,480px 窄屏。769-960 的 appetite 邮箱段是刻意设计,保留。 */

:root {
    /* Rick Owens / Maison Margiela Dark Brutalist Palette */
    --bg-primary: #0a0a0a;
    --bg-secondary: #141414;
    --bg-tertiary: #1a1a1a;
    --bg-accent: #0f0f0f;

    --text-primary: #e8e8e8;
    --text-secondary: #999999;
    --text-muted: #666666;

    --accent-primary: #ffffff;
    --accent-secondary: #2a2a2a;
    --border-light: #1f1f1f;
    --border-medium: #2a2a2a;

    /* Typography - Brutalist site + modern Newsletter reader */
    /* 全站继续使用 Courier 签名字体;Appetite 阅读器通过专用 token
       使用现代中文无衬线字体。页面里一律引用 token,不许再写字面量字体栈。 */
    --font-primary: 'Courier New', 'Courier', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', monospace;
    --font-mono: 'Courier New', 'Courier', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', monospace;
    --font-newsletter: 'PingFang SC', 'Microsoft YaHei', 'Noto Sans CJK SC', Arial, sans-serif;
    --font-newsletter-mono: 'SFMono-Regular', 'SF Mono', 'Menlo', 'Consolas', 'Liberation Mono', monospace;

    /* Spacing - Stark */
    --container-max: 1000px;
    --section-padding: 12rem 3rem;
    --grid-gap: 4rem;

    /* 导航间距 tokens:导航里的间距只允许用这五个值,
       移动端在 768px 媒体查询里整组换挡,不再逐条覆盖 */
    --nav-pad: 1.5rem 2rem;      /* 导航条内边距 */
    --nav-gap-section: 2rem;     /* 左右两簇之间的底线空隙,防止链接怼上控件 */
    --nav-gap-item: 2.5rem;      /* 链接之间、logo 与链接组之间 */
    --nav-gap-control: 1.25rem;  /* 右侧控件(打赏/主题/语言/账号)之间 */
    --nav-gap-micro: 0.4rem;     /* 控件内部(EN / 中、账号条的点隔) */

    /* 语义状态色 */
    --color-error: #ff5f56;
    --color-ok: #27c93f;
    --color-warn: #e8c07a;

    /* 导航毛玻璃底(浅色在 light 块覆盖为 rgba(250, 249, 247, 0.98)) */
    --nav-bg: rgba(10, 10, 10, 0.98);

    /* 字号刻度(0.05 步进;admin.html 整页豁免,不改它) */
    --font-size-micro: 0.65rem;
    --font-size-label: 0.7rem;
    --font-size-meta: 0.75rem;
    --font-size-note: 0.8rem;
    --font-size-ui: 0.85rem;
    --font-size-body-sm: 0.9rem;
    --font-size-body: 0.95rem;
    --font-size-emph: 1rem;

    /* 字距:px 系管固定字号小标签,em 系管流体标题 */
    --tracking-hair: 0.5px;
    --tracking-tight: 1px;
    --tracking-caps: 2px;
    --tracking-caps-lg: 3px;
    --tracking-logo: 4px;
    --tracking-display: 0.05em;
    --tracking-display-wide: 0.08em;
    --tracking-display-caps: 0.15em;
    --tracking-display-caps-lg: 0.2em;

    /* 动效(全站缓动只有 ease) */
    --motion-base: 0.3s;
    --motion-slow: 0.5s;

    /* 字重(Courier 双字重体系) */
    --font-weight-light: 300;
    --font-weight-regular: 400;
    --font-weight-bold: 700;

    /* 层级注册表:toast 压一切,导航压提示条 */
    --z-nav: 1000;
    --z-nudge: 500;
    --z-toast: 10000;

    /* 会员地图:城市圆的绿(球面恒为暗色,故两主题共用一个值;
       canvas 里按需叠加透明度,JS 读这个 token 再上 alpha) */
    --map-marker: #4ade80;

    /* 单处但易漏的字面量 */
    --spark-fill: rgba(232, 232, 232, 0.06);
    --overlay-backdrop: rgba(0, 0, 0, 0.82);  /* 两主题下都保持暗,勿在 light 覆盖 */
    --milestone-stripe: #cfcfcf;
    --border-strong: #4a4a4a;
    --radius-none: 0;
}

:root[data-theme="light"] {
    --bg-primary: #faf9f7;
    --bg-secondary: #f2f0ec;
    --bg-tertiary: #eceae5;
    --bg-accent: #f6f5f2;

    --text-primary: #17171a;
    --text-secondary: #55534e;
    --text-muted: #86837c;

    --accent-primary: #0f0f10;
    --accent-secondary: #e4e1da;
    --border-light: #e6e3dc;
    --border-medium: #d5d1c8;

    --nav-bg: rgba(250, 249, 247, 0.98);
    /* 状态色在奶白底上要加深才够对比度(深色值 2.8:1 / 2.1:1 不达标) */
    --color-error: #c0392b;
    --color-ok: #1a7f37;
    --spark-fill: rgba(23, 23, 26, 0.07);
}
