/* Lynux 基础样式（重置 + LENS_0 调色板）
 *
 * 移植自 Hermes Agent v0.14 web dashboard（2026.5.16）的 LENS_0 主题。
 * 调色板来源：`web/src/index.css` 注释 + `Backdrop.tsx`。
 *
 * 数学定义（参考 README 第七节"算法与宿主"补充说明）：
 *
 *   LENS_0 色对：
 *     C_bg       = #041c1c     深青底色（背景）
 *     C_mid      = #ffe6cb     奶油色（前景 / 文本）
 *     C_glow     = rgba(255,189,56,0.35)  暖橙径向光
 *
 *   调色关系：
 *     card     = color-mix(C_mid 4%,  C_bg)
 *     muted    = color-mix(C_mid 8%,  C_bg)
 *     border   = color-mix(C_mid 15%, transparent)
 *     subtle   = color-mix(C_mid 55%, transparent)
 *
 *   暗色定义色码（lynux 默认）：
 *     --color-bg           = C_bg
 *     --color-text         = C_mid
 *     --color-link         = C_mid
 *     --warm-glow          = C_glow
 *     --noise-opacity-mul  = 1
 *
 *   浅色模式（保留入口；默认不启用）：
 *     --color-bg           = #ffffff
 *     --color-text         = #1f2937
 *     --warm-glow          = transparent
 *     --noise-opacity-mul  = 0
 */

*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }

/* ============================================================== */
/*  默认（暗色 · LENS_0）                                          */
/* ============================================================== */

:root,
:root[data-theme="dark"] {
    /* 告诉浏览器「这一页是深色」—— 影响 UA 自己画的东西：表单控件底色 / 滚动条 / 光标 /
     * **自动填充时 Chrome 铺的那层底**（声明 dark 后 Chrome 用深色填充色，而不是近白色的浅蓝）。
     * 用户 2026-10-02 反馈「输入框整体背景是白色」（Chrome）—— 这是标准解法那一条。 */
    color-scheme: dark;

    /* 画布 */
    --color-bg:            #041c1c;
    --color-bg-subtle:    color-mix(in srgb, #ffe6cb 8%,  #041c1c);
    --color-bg-elevated:  color-mix(in srgb, #ffe6cb 4%,  #041c1c);

    /* 文本 */
    --color-text:         #ffe6cb;
    --color-text-subtle:  color-mix(in srgb, #ffe6cb 55%, transparent);

    /* 链接与点缀 */
    --color-link:          #ffe6cb;
    --color-link-hover:   #ffd49a;
    --color-accent:       color-mix(in srgb, #ffe6cb 10%, #041c1c);

    /* 边框 */
    --color-border:       color-mix(in srgb, #ffe6cb 15%, transparent);
    --color-code-bg:      color-mix(in srgb, #ffe6cb 6%,  #041c1c);

    /* shadcn 兼容 token（Card / Input / 等） */
    --color-card:               color-mix(in srgb, #ffe6cb 4%, #041c1c);
    --color-card-foreground:    #ffe6cb;
    --color-popover:            color-mix(in srgb, #ffe6cb 4%, #041c1c);
    --color-popover-foreground: #ffe6cb;
    --color-muted:              color-mix(in srgb, #ffe6cb 8%, #041c1c);
    --color-muted-foreground:   color-mix(in srgb, #ffe6cb 55%, transparent);
    --color-ring:               #ffe6cb;
    --color-input:              color-mix(in srgb, #ffe6cb 15%, transparent);
    --color-accent-foreground:  var(--color-card);

    /* 语义色（与 0.14 globals.css 对齐；覆盖 shadcn 的 destructive/success/warning） */
    --color-destructive:  #fb2c36;
    --color-destructive-foreground: #ffffff;
    --color-success:      #4ade80;
    --color-warning:      #ffbd38;
    --color-text-primary:   var(--color-text);
    --color-text-secondary: color-mix(in srgb, #ffe6cb 80%, transparent);
    --color-text-tertiary:  color-mix(in srgb, #ffe6cb 55%, transparent);
    --color-text-display:   var(--color-text);

    /* Backdrop 专属（5 层叠加用） */
    --warm-glow:          rgba(255, 189, 56, 0.35);
    --noise-opacity-mul:  1;

    /* 字体：保留系统栈，不引外部 woff2（公开页不嵌 TUI） */
    --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC",
                 "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
    --font-mono: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;

    --container-max: 720px;     /* 文章正文：阅读舒适宽度 */
    --container-wide: 1100px;   /* 旧名保留（向后兼容） */
    --container-shell: min(1400px, calc(100% - 40px));  /* 页面外壳：首页/列表/后台 */
    --radius: 6px;

    /* 卡片表面：低透明让背景透出来 + 边框 + 模糊 */
    --surface-card: color-mix(in srgb, var(--color-bg-elevated) 55%, transparent);
    --surface-card-border: color-mix(in srgb, var(--color-text) 12%, transparent);

    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-6: 1.5rem;
    --space-8: 2rem;
    --space-12: 3rem;
}

/* ============================================================== */
/*  浅色模式（保留入口；默认不启用）                                */
/* ============================================================== */

:root[data-theme="light"] {
    color-scheme: light;

    --color-bg:            #ffffff;
    --color-bg-subtle:    #f8f9fa;
    --color-bg-elevated:  #ffffff;

    --color-text:         #1f2937;
    --color-text-subtle:  #6b7280;

    --color-link:          #2563eb;
    --color-link-hover:   #1d4ed8;
    --color-accent:       #3b82f6;

    --color-border:       #e5e7eb;
    --color-code-bg:      #f3f4f6;

    --warm-glow:          transparent;
    --noise-opacity-mul:  0;
}

/* ── 应用外壳（app shell）─────────────────────────────────────────────
 * 移植 Hermes 0.14 dashboard 的外壳形态：视口高度锁死、整页不滚，
 * 滚动权交给中间的 <main>。效果 = 页眉固定顶、页脚固定底、中部上下滚。
 *
 * 为什么放 base.css 而不是 layout.css：后台布局（views/admin/layout.php）
 * 只加载 base/fonts/backdrop/admin/components，不加载 layout.css。
 * 外壳是公开页与后台共用的基础设施，必须落在两边都加载的文件里。
 */
html {
    height: 100vh;      /* 旧浏览器回退 */
    height: 100dvh;     /* dvh：移动端地址栏收放时高度不跳 */
    max-height: 100dvh;
    overflow: hidden;
}

body {
    /* z=0：画布基色；其余 4 层由 backdrop.css 提供 */
    background: var(--color-bg);
    color: var(--color-text);
    font-family: var(--font-sans);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;

    /* 外壳：页眉 / 滚动区 / 页脚 三段纵向排布 */
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;      /* flex 子项默认 min-height:auto，不归零会把外壳撑破 */
    overflow: hidden;   /* 整页不滚；只有 .site-main / .admin-main 滚 */
}

a { color: var(--color-link); text-decoration: none; }
a:hover { color: var(--color-link-hover); text-decoration: underline; }

code, pre {
    font-family: var(--font-mono);
    background: var(--color-code-bg);
    border-radius: 4px;
    color: var(--color-text);
}

code { padding: 0.125rem 0.375rem; font-size: 0.875em; }
pre { padding: var(--space-4); overflow-x: auto; }
pre code { background: transparent; padding: 0; }