/* =========================================================
   theme-system.css —— 实一官网设计系统（单一令牌来源）
   目标：让品牌色 / 圆角 / 阴影 / 间距集中在这一处，
   装修模块（轮播、页脚、品牌）与未来页面共用同一套变量，
   达到“前后端匹配 / 显示统一”。仅提供 opt-in 工具类，
   不覆盖任何既有内联样式。
   ========================================================= */
:root{
  /* 品牌色 */
  --brand:#0459d5;
  --brand-2:#0e6eb8;
  --brand-dark:#193f70;
  --brand-tint:#e8eef8;
  --brand-soft:#eef4fc;
  --brand-line:#cfe0ff;
  /* 品牌渐变（轮播背景，单一来源） */
  --brand-grad-0:linear-gradient(135deg,#0459d5 0%,#0e6eb8 50%,#193f70 100%);
  --brand-grad-1:linear-gradient(135deg,#193f70 0%,#0459d5 60%,#0e6eb8 100%);
  --brand-grad-2:linear-gradient(135deg,#0e6eb8 0%,#193f70 50%,#0459d5 100%);
  /* 文字 */
  --ink:#0a1f3d;
  --ink-2:#1a2b45;
  --muted:#6b7a99;
  --line:#e2e9f0;
  /* 面 */
  --bg:#ffffff;
  --bg-soft:#f7f9fc;
  --bg-tint:#eef4fc;
  /* 圆角 / 阴影 / 间距 */
  --radius:8px;
  --radius-lg:14px;
  --radius-pill:999px;
  --shadow-sm:0 2px 8px rgba(13,37,69,.06);
  --shadow:0 6px 24px rgba(13,37,69,.08);
  --shadow-lg:0 12px 40px rgba(13,37,69,.12);
  --maxw:1440px;
  --gap:20px;
  /* 断点（仅作文档 / 媒体查询参考，全站统一 640 / 768 / 1024 三档） */
  --bp-sm:640px;
  --bp-md:768px;
  --bp-lg:1024px;
}

/* ---------- 统一工具类（opt-in） ---------- */
.tb-section{padding:64px 0}
.tb-container{max-width:var(--maxw);margin:0 auto;padding:0 var(--gap)}
.tb-card{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:24px}
.tb-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:var(--radius);font-weight:600;text-decoration:none;transition:.2s;border:1px solid transparent}
.tb-btn-primary{background:var(--brand);color:#fff}
.tb-btn-primary:hover{background:var(--brand-dark)}
.tb-tag{display:inline-block;padding:3px 10px;border-radius:var(--radius-pill);font-size:12px;background:var(--bg-tint);color:var(--brand-dark)}
.tb-tag-blue{background:var(--brand-tint);color:var(--brand-dark);border:1px solid var(--brand-line)}

/* ---------- 装修轮播渐变（替代 JS 内联 GRADS，单一来源可控） ---------- */
.banner-slide.tb-banner-grad-0{background:var(--brand-grad-0)}
.banner-slide.tb-banner-grad-1{background:var(--brand-grad-1)}
.banner-slide.tb-banner-grad-2{background:var(--brand-grad-2)}

/* ---------- 断点收敛：全站统一 640 / 768 / 1024 ---------- */
@media (max-width:1024px){.tb-section{padding:48px 0}}
@media (max-width:768px){.tb-section{padding:40px 0}.tb-container{padding:0 16px}}
@media (max-width:640px){.tb-section{padding:32px 0}}
