/* 自建站 · 统一主题变量（白底 + 蓝色主色 #2563EB）
   与 theme.md §2 保持完全一致。任何子项目不得覆盖以下变量值。 */

:root {
  /* 背景 / 表面 */
  --bg:           #FFFFFF;
  --surface:      #FFFFFF;
  --surface-alt:  #F9FAFB;
  --border:       #E5E7EB;
  --border-strong:#D1D5DB;

  /* 文本 */
  --text:         #111827;
  --muted:        #6B7280;
  --text-on-primary: #FFFFFF;

  /* 主色（蓝色） */
  --primary:        #2563EB;
  --primary-hover:  #1D4ED8;
  --primary-active: #1E40AF;
  --primary-soft:   #DBEAFE;
  --primary-ink:    #1E3A8A;

  /* 语义色（仅用于状态徽章 / 成功失败提示） */
  --success: #16A34A;
  --warning: #D97706;
  --danger:  #DC2626;
  --info:    #2563EB;

  /* 杂项 */
  --code-bg:  #F3F4F6;
  --shadow:   0 1px 2px rgba(17,24,39,.06);
  --radius:   10px;
}

html, body {
  background: var(--bg);
  color: var(--text);
}

a { color: var(--primary); }
a:hover { color: var(--primary-hover); }

button,
.btn,
.cta {
  background: var(--primary);
  color: var(--text-on-primary);
  border: 1px solid var(--primary);
  border-radius: var(--radius);
}
button:hover,
.btn:hover,
.cta:hover {
  background: var(--primary-hover);
  border-color: var(--primary-hover);
}
button:active,
.btn:active { background: var(--primary-active); border-color: var(--primary-active); }
button.secondary,
.btn.secondary {
  background: var(--surface);
  color: var(--text);
  border: 1px solid var(--border-strong);
}
button.secondary:hover { background: var(--surface-alt); }

input, textarea, select {
  background: var(--surface);
  color: var(--text);
  border: 1px solid var(--border);
  border-radius: 8px;
}
input:focus, textarea:focus, select:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px var(--primary-soft);
}

.badge,
.tag,
.chip {
  background: var(--primary-soft);
  color: var(--primary-ink);
  border: 1px solid var(--primary-soft);
}
.badge.success, .status.ok    { color: var(--success); background: #ECFDF5; border-color: #A7F3D0; }
.badge.warning, .status.warn  { color: var(--warning); background: #FFFBEB; border-color: #FDE68A; }
.badge.danger,  .status.err   { color: var(--danger);  background: #FEF2F2; border-color: #FECACA; }

code { background: var(--code-bg); color: var(--text); border-radius: 4px; padding: 1px 6px; }

.card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

input::placeholder,
textarea::placeholder {
  color: #c3cbd8;
  opacity: 1;
  font-size: 0.5em;
}
