/* TJ·MO 设计令牌 —— 全站唯一真相。任何页面只继承，不自己定义颜色。
 * 龙哥红线：绝不黑底霓虹；饱和度孤立法（全页只有赤陶一色满饱和，其余脱饱和）。
 */
:root{
  /* —— 底色：暖白莫兰迪 —— */
  --tj-bg:        #F8F6F2;
  --tj-surface:   #FFFFFF;
  --tj-surface-2: #F2EFE9;
  --tj-line:      #DCD8D0;
  --tj-line-soft: #E8E4DC;

  /* —— 文字：三级，都是脱饱和的暖灰 —— */
  --tj-ink:       #1C1A17;
  --tj-ink-2:     #55504A;
  --tj-ink-3:     #8A847B;

  /* —— 唯一满饱和色：赤陶。全页只有它敢亮 —— */
  --tj-accent:      #B85C38;
  --tj-accent-ink:  #FFFFFF;
  --tj-accent-soft: #F0E2DB;
  --tj-accent-line: #E0C5B8;

  /* —— 状态色：一律脱饱和，不许比赤陶抢眼 —— */
  --tj-ok:   #5C7A5E;
  --tj-warn: #9A7B3F;
  --tj-err:  #A4544A;

  /* 状态色的底/边/深文字 —— 组件层只引用这些变量，不许自己写死颜色 */
  --tj-ok-bg:    #EDF2ED;  --tj-ok-line:   #DCE6DC;  --tj-ok-ink:   #3F5A41;
  --tj-warn-bg:  #F6F0E2;  --tj-warn-line: #EBE0C8;  --tj-warn-ink: #6E5626;
  --tj-err-bg:   #F7EAE8;  --tj-err-line:  #EDD5D1;  --tj-err-ink:  #7E3A32;
  --tj-accent-hover: #A6512F;

  /* —— 字体 —— */
  --tj-font-display: 'Fraunces', 'Songti SC', Georgia, serif;
  --tj-font-body: 'Inter Tight', Inter, -apple-system, 'PingFang SC', system-ui, sans-serif;
  --tj-font-mono: 'Space Mono', ui-monospace, SFMono-Regular, Menlo, monospace;

  /* —— 间距：8 的倍数，别自创 —— */
  --tj-s1:4px; --tj-s2:8px; --tj-s3:12px; --tj-s4:16px;
  --tj-s5:24px; --tj-s6:32px; --tj-s7:48px; --tj-s8:64px; --tj-s9:96px;

  --tj-r1:6px; --tj-r2:10px; --tj-r3:14px; --tj-r4:20px; --tj-rf:999px;

  /* —— 光学一致性：高光左上、阴影右下，全站一个方向，一个矛盾都不许有 —— */
  --tj-sh1: 0 1px 2px rgba(28,26,23,.05);
  --tj-sh2: 0 2px 8px rgba(28,26,23,.06), 0 1px 2px rgba(28,26,23,.04);
  --tj-sh3: 0 8px 28px rgba(28,26,23,.09), 0 2px 6px rgba(28,26,23,.05);
  --tj-ring: 0 0 0 3px var(--tj-accent-soft);

  --tj-maxw: 1180px;
  --tj-ease: cubic-bezier(.22,.61,.36,1);
  --tj-dur: .22s;
}

/* 暗色：只有工具/控制台类才用，且必须龙哥当轮点头。默认不启用。 */
[data-tj-theme="dark"]{
  --tj-bg:#0B0C0B; --tj-surface:#131614; --tj-surface-2:#1A1E1C;
  --tj-line:#252A27; --tj-line-soft:#1E2320;
  --tj-ink:#F4FFF9; --tj-ink-2:#A8B3AC; --tj-ink-3:#6E7973;
  --tj-accent:#77F7BF; --tj-accent-ink:#04140C;
  --tj-accent-soft:#10231A; --tj-accent-line:#1D3A2C;
  --tj-sh1:0 1px 2px rgba(0,0,0,.4);
  --tj-sh2:0 2px 8px rgba(0,0,0,.45);
  --tj-sh3:0 8px 28px rgba(0,0,0,.55);
  --tj-ring:0 0 0 3px rgba(119,247,191,.18);
  --tj-ok-bg:#12251A; --tj-ok-line:#1D3A2A; --tj-ok-ink:#8FD9AE;
  --tj-warn-bg:#241E10; --tj-warn-line:#3A3018; --tj-warn-ink:#D9BE7E;
  --tj-err-bg:#2A1614; --tj-err-line:#3F221E; --tj-err-ink:#E39B90;
  --tj-accent-hover:#5FE0A8;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
/* 🔴 绝不给宿主的 body 写背景/文字/字体 —— 装到别人站上会把人家的皮盖掉，
   而且 auto-theme 量到的就变成我们自己的值（自我循环，实测深色宿主被读成白底）。
   套件自己的页面（auth/admin）用 .tj-page 包一层来拿这些值。 */
body{ margin:0 }
.tj-page{
  background:var(--tj-bg); color:var(--tj-ink);
  font-family:var(--tj-font-body); font-size:15px; line-height:1.6;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
h1,h2,h3{font-family:var(--tj-font-display); font-weight:300; letter-spacing:-.02em; line-height:1.05; margin:0}
h1{font-size:clamp(30px,5vw,54px); line-height:.94}
h2{font-size:clamp(22px,3vw,32px)}
h3{font-size:18px; line-height:1.25}
code,kbd,.tj-mono{font-family:var(--tj-font-mono); font-size:.88em}
a{color:inherit}
img,svg,video{max-width:100%; height:auto; display:block}
:focus-visible{outline:none; box-shadow:var(--tj-ring); border-radius:var(--tj-r1)}

/* 尊重系统「减少动态效果」—— 无障碍硬要求 */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
