/* ============================================================
   tw-fix.css — 补回 Tailwind 编译时被 purge 漏掉的工具类
   2026-10-28 建立
   原则：只定义"当前完全没生效"的类，不覆盖任何已有规则。
   加载顺序必须晚于 tw-g1/g2/g3.css。
   ============================================================ */

/* ---------- 容器宽度 ---------- */
.max-w-\[880px\] { max-width: 880px; }
.max-w-\[620px\] { max-width: 620px; }
.max-w-2xl { max-width: 42rem; }

/* ---------- 尺寸 ---------- */
.w-\[5px\] { width: 5px; }
.h-\[5px\] { height: 5px; }
.h-10 { height: 2.5rem; }
.w-auto { width: auto; }
.min-h-screen { min-height: 100vh; }

/* ---------- 间距 ---------- */
.p-6 { padding: 1.5rem; }
.px-2\.5 { padding-left: .625rem; padding-right: .625rem; }
.px-5 { padding-left: 1.25rem; padding-right: 1.25rem; }
.px-7 { padding-left: 1.75rem; padding-right: 1.75rem; }
.py-5 { padding-top: 1.25rem; padding-bottom: 1.25rem; }
.py-6 { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.py-10 { padding-top: 2.5rem; padding-bottom: 2.5rem; }
.py-\[4px\] { padding-top: 4px; padding-bottom: 4px; }
.py-\[13px\] { padding-top: 13px; padding-bottom: 13px; }
.pt-2 { padding-top: .5rem; }
.mt-2\.5 { margin-top: .625rem; }
.mt-\[9px\] { margin-top: 9px; }
.mb-1\.5 { margin-bottom: .375rem; }
.mb-3\.5 { margin-bottom: .875rem; }
.mb-8 { margin-bottom: 2rem; }
.space-y-3 > :not([hidden]) ~ :not([hidden]) { margin-top: .75rem; }

/* ---------- 排版 ---------- */
.text-\[17px\] { font-size: 17px; }
.text-\[19px\] { font-size: 19px; }
.leading-\[1\.25\] { line-height: 1.25; }
.tracking-\[0\.16em\] { letter-spacing: .16em; }
.text-center { text-align: center; }
.text-right { text-align: right; }
.font-semibold { font-weight: 600; }
.font-normal { font-weight: 400; }

/* ---------- 颜色（站点 CSS 变量） ---------- */
.text-ink-2 { color: var(--ink-2); }
.text-ink-3 { color: var(--ink-3); }
.text-canvas\/70 { color: color-mix(in srgb, var(--canvas) 70%, transparent); }
.bg-accent { background-color: var(--accent); }
.bg-\[var\(--accent\)\] { background-color: var(--accent); }
.text-\[var\(--accent\)\] { color: var(--accent); }
.bg-white { background-color: #fff; }
.text-white { color: #fff; }
.text-slate-500 { color: #64748b; }
.text-slate-600 { color: #475569; }
.border-slate-300 { border-color: #cbd5e1; }
.border-white\/18 { border-color: color-mix(in srgb, #fff 18%, transparent); }

/* ---------- 边框 / 圆角 / 过渡 ---------- */
.border-t-0 { border-top-width: 0; }
.rounded { border-radius: .25rem; }
.rounded-b-sm { border-bottom-right-radius: .125rem; border-bottom-left-radius: .125rem; }
.duration-300 { transition-duration: .3s; }

/* ---------- 响应式变体 ---------- */
@media (min-width: 1024px) {
  .lg\:text-\[19px\] { font-size: 19px; }
  .lg\:text-\[21px\] { font-size: 21px; }
  .lg\:text-6xl { font-size: 3.75rem; line-height: 1; }
}

/* ---------- 交互变体 ---------- */
.first\:border-t-0:first-child { border-top-width: 0; }
.first\:pt-0:first-child { padding-top: 0; }
.hover\:text-accent-d:hover { color: var(--accent-d); }
.hover\:border-accent\/40:hover { border-color: color-mix(in srgb, var(--accent) 40%, transparent); }
.hover\:border-\[var\(--accent\)\]:hover { border-color: var(--accent); }
.hover\:text-\[var\(--accent\)\]:hover { color: var(--accent); }

/* ---------- 组件类：原本只写在个别页面的内联 <style> 里，
   其他页用到时样式丢失。定义与原页面完全一致，不改变已正常的页面。 ---------- */
.mat-chip { padding: 5px 12px; background: var(--mist); font-size: 12px; color: var(--ink-2); }
.modal-back { background: rgba(15, 20, 36, .94); backdrop-filter: blur(12px); }
