/* ============================================================
   GEOLiNK design-tokens.css · v14.4 米纸蓝印 (Light Blueprint)
   浅底工程图纸风: 米白纸 + 钴蓝墨线 + 红色测量标注 + 等宽标签
   ============================================================ */
:root {
  /* ── 色板 ─────────────────────────────── */
  --paper:        #F3F6FB;   /* 页面底·米白纸 */
  --paper-2:      #E9EEF6;   /* 次级底/表格头 */
  --card:         #FFFFFF;   /* 卡片 */
  --ink:          #16273F;   /* 墨蓝正文 */
  --ink-soft:     #5E7288;   /* 次级文字 */
  --accent:       #1F4E9C;   /* 钴蓝·主强调 */
  --accent-deep:  #16386F;   /* 深钴蓝 hover */
  --accent-soft:  rgba(31,78,156,.10);   /* 蓝底 tint */
  --red:          #E24B4B;   /* 测量标注红·二强调 */
  --green:        #2E7D5B;   /* 成功/认证绿(小面积) */
  --line:         rgba(31,78,156,.16);   /* 细线 */
  --line-strong:  #C9D7EA;   /* 强调线 */
  --shadow:       0 3px 14px rgba(22,39,63,.06);

  /* ── 排版 ─────────────────────────────── */
  --font-display: 'Space Grotesk', 'Inter', 'Microsoft YaHei', sans-serif;
  --font-body:    'Inter', 'Microsoft YaHei', sans-serif;
  --font-mono:    'IBM Plex Mono', 'Consolas', monospace;
  --fs-hero: clamp(34px, 5vw, 48px);
  --fs-h2: 30px; --fs-h3: 19px; --fs-body: 15.5px; --fs-mono: 13px;
  --leading: 1.65;

  /* ── 形状/间距 ─────────────────────────── */
  --radius: 6px;
  --radius-sm: 4px;
  --pad: 24px;
  --space: 56px;
}

/* 工程图纸网格(页面背景/装饰区) */
.blueprint-grid {
  background-image:
    repeating-linear-gradient(0deg, rgba(31,78,156,.05) 0 1px, transparent 1px 26px),
    repeating-linear-gradient(90deg, rgba(31,78,156,.05) 0 1px, transparent 1px 26px);
}

/* ── 部件 ───────────────────────────────── */
.btn {
  display:inline-block; padding:13px 28px; border-radius:var(--radius);
  font-family:var(--font-display); font-weight:700; font-size:15px; cursor:pointer;
  border:1px solid transparent; transition:transform .15s, box-shadow .15s; text-decoration:none;
}
.btn:hover { transform:translateY(-2px); }
.btn-primary { background:var(--accent); color:#fff; box-shadow:0 8px 20px rgba(31,78,156,.22); }
.btn-primary:hover { background:var(--accent-deep); }
.btn-ghost { background:var(--card); color:var(--ink); border-color:var(--line-strong); }
.btn-ghost:hover { border-color:var(--accent); color:var(--accent); }

.card { background:var(--card); border:1px solid var(--line); border-radius:var(--radius);
        box-shadow:var(--shadow); padding:var(--pad); }
.card:hover { border-color:var(--line-strong); }

.spec-table { width:100%; border-collapse:collapse; font-size:14px; }
.spec-table th { background:var(--paper-2); color:var(--accent-deep); text-align:left;
                 padding:10px 14px; font-family:var(--font-mono); font-size:12.5px;
                 letter-spacing:.06em; text-transform:uppercase; border-bottom:1px solid var(--line-strong); }
.spec-table td { padding:10px 14px; border-bottom:1px solid var(--line); color:var(--ink); }
.spec-table tr:hover td { background:var(--accent-soft); }

.tag { display:inline-block; padding:3px 10px; border-radius:var(--radius-sm);
       font-family:var(--font-mono); font-size:11.5px; letter-spacing:.05em;
       background:var(--accent-soft); color:var(--accent-deep); border:1px solid var(--line); }
.tag-red { background:rgba(226,75,75,.10); color:#B33131; border-color:rgba(226,75,75,.25); }

/* 图纸测量标注(装饰性) */
.measure { position:relative; }
.measure::before { content:""; position:absolute; left:0; right:0; top:50%; height:1px; background:var(--red); }
.measure::after { content:""; position:absolute; left:-4px; top:50%; width:8px; height:8px;
  border-left:1px solid var(--red); border-bottom:1px solid var(--red); transform:translateY(-50%) rotate(45deg); }

/* 名片式标签(型号) */
.model-label { font-family:var(--font-mono); font-weight:700; color:var(--accent); letter-spacing:.04em; }

/* 区块标题装饰: 坐标十字 */
.section-title { display:flex; align-items:center; gap:12px; font-family:var(--font-display); }
.section-title::before { content:"+"; color:var(--red); font-family:var(--font-mono); font-size:18px; }

/* 深色区(CTA/页脚深蓝) */
.dark-band { background:var(--accent-deep); color:#EAF2FF; }
.dark-band .btn-primary { background:var(--paper); color:var(--accent-deep); }
