/**
 * theme.css
 * 全局主题变量和基础样式定义
 */

:root {
  /* 主色调 */
  --primary-color: #3273dc;
  --primary-light: #eef3fc;
  --primary-dark: #205bbc;

  /* 辅助色 */
  --success-color: #48c774;
  --success-light: #effaf3;
  --warning-color: #ffdd57;
  --warning-light: #fffbeb;
  --danger-color: #f14668;
  --danger-light: #feecf0;
  --info-color: #3298dc;
  --info-light: #eef6fc;

  /* 文本颜色 */
  --text-primary: #363636;
  --text-secondary: #4a4a4a;
  --text-light: #7a7a7a;

  /* 背景颜色 */
  --bg-light: #f5f5f5;
  --bg-white: #ffffff;

  /* 边框颜色 */
  --border-light: #dbdbdb;
  --border-medium: #b5b5b5;

  /* 灰度色阶 */
  --gray-100: #f5f5f5;
  --gray-200: #eeeeee;
  --gray-300: #e0e0e0;
  --gray-400: #bdbdbd;
  --gray-500: #9e9e9e;
  --gray-600: #757575;
  --gray-700: #616161;
  --gray-800: #424242;
  --gray-900: #212121;

  /* 边角半径 */
  --radius-small: 2px;
  --radius-normal: 4px;
  --radius-large: 6px;

  /* 阴影效果 */
  --shadow-small: 0 2px 3px rgba(10, 10, 10, 0.1);
  --shadow-medium: 0 4px 6px rgba(10, 10, 10, 0.1);
  --shadow-large: 0 10px 20px rgba(10, 10, 10, 0.1);

  /* 动画时间 */
  --transition-fast: 0.2s;
  --transition-normal: 0.3s;
  --transition-slow: 0.5s;

  /* 间距 */
  --spacing-1: 0.25rem;
  --spacing-2: 0.5rem;
  --spacing-3: 0.75rem;
  --spacing-4: 1rem;
  --spacing-5: 1.5rem;
  --spacing-6: 3rem;
}

/* 基础主题设置 */
body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  color: var(--text-primary);
  line-height: 1.5;
}

/* 链接样式 */
a {
  color: var(--primary-color);
  transition: color var(--transition-fast);
}

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

/* 主题化的按钮样式 */
.button.is-primary {
  background-color: var(--primary-color);
}

.button.is-primary:hover {
  background-color: var(--primary-dark);
}

.button.is-success {
  background-color: var(--success-color);
}

.button.is-warning {
  background-color: var(--warning-color);
}

.button.is-danger {
  background-color: var(--danger-color);
}

.button.is-info {
  background-color: var(--info-color);
}

/* 主题化的通知样式 */
.notification.is-primary {
  background-color: var(--primary-light);
  color: var(--primary-dark);
}

.notification.is-success {
  background-color: var(--success-light);
  color: var(--success-color);
}

.notification.is-warning {
  background-color: var(--warning-light);
  color: darken(var(--warning-color), 20%);
}

.notification.is-danger {
  background-color: var(--danger-light);
  color: var(--danger-color);
}

.notification.is-info {
  background-color: var(--info-light);
  color: var(--info-color);
}

/* 主题化的标签样式 */
.tag.is-primary {
  background-color: var(--primary-color);
  color: #fff;
}

.tag.is-success {
  background-color: var(--success-color);
}

.tag.is-warning {
  background-color: var(--warning-color);
}

.tag.is-danger {
  background-color: var(--danger-color);
}

.tag.is-info {
  background-color: var(--info-color);
}

/* 全局卡片样式 */
.card {
  box-shadow: var(--shadow-small);
  border-radius: var(--radius-normal);
  transition: box-shadow var(--transition-normal);
}

.card:hover {
  box-shadow: var(--shadow-medium);
}

/* 辅助类 */
.has-text-primary {
  color: var(--primary-color) !important;
}

.has-text-success {
  color: var(--success-color) !important;
}

.has-text-warning {
  color: var(--warning-color) !important;
}

.has-text-danger {
  color: var(--danger-color) !important;
}

.has-text-info {
  color: var(--info-color) !important;
}

.has-background-primary-light {
  background-color: var(--primary-light) !important;
}

.has-background-success-light {
  background-color: var(--success-light) !important;
}

.has-background-warning-light {
  background-color: var(--warning-light) !important;
}

.has-background-danger-light {
  background-color: var(--danger-light) !important;
}

.has-background-info-light {
  background-color: var(--info-light) !important;
}