header[data-v-953d7bd5] {
  line-height: 1.5;
  max-height: 100vh;
}
nav[data-v-953d7bd5] {
  width: 100%;
  font-size: 12px;
  text-align: center;
  margin-top: 2rem;
}
nav a.router-link-exact-active[data-v-953d7bd5] {
  color: var(--color-text);
}
nav a.router-link-exact-active[data-v-953d7bd5]:hover {
  background-color: transparent;
}
nav a[data-v-953d7bd5] {
  display: inline-block;
  padding: 0 1rem;
  border-left: 1px solid var(--color-border);
}
nav a[data-v-953d7bd5]:first-of-type {
  border: 0;
}
@media (min-width: 1024px) {
header[data-v-953d7bd5] {
    display: flex;
    place-items: center;
    padding-right: calc(var(--section-gap) / 2);
}
.logo[data-v-953d7bd5] {
    margin: 0 2rem 0 0;
}
header .wrapper[data-v-953d7bd5] {
    display: flex;
    place-items: flex-start;
    flex-wrap: wrap;
}
nav[data-v-953d7bd5] {
    text-align: left;
    margin-left: -1rem;
    font-size: 1rem;
    padding: 1rem 0;
    margin-top: 1rem;
}
}.el-overlay-message-box {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 16px;
}
.el-overlay-message-box .el-message-box {
  box-sizing: border-box;
  width: min(440px, 100vw - 32px) !important;
  min-width: 0 !important;
  max-width: calc(100vw - 32px);
  background: #ffffff !important;
  color: #1f2937 !important;
  opacity: 1 !important;
  border: 1px solid rgba(148, 163, 184, 0.28);
  box-shadow: 0 20px 54px rgba(15, 23, 42, 0.22);
}
.el-overlay-message-box .el-message-box__message,
.el-overlay-message-box .el-message-box__message p {
  color: #334155 !important;
  white-space: pre-line;
  line-height: 1.7;
  word-break: break-word;
  overflow-wrap: anywhere;
}
.el-overlay-message-box .el-message-box__title {
  color: #111827 !important;
  font-weight: 700;
}
.el-overlay-message-box .el-message-box__content {
  color: #334155 !important;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.el-overlay-message-box .el-message-box__headerbtn .el-message-box__close {
  color: #64748b !important;
}
.el-overlay-message-box .el-message-box__btns .el-button {
  opacity: 1 !important;
}
.el-overlay.pgy-idle-timeout-msgbox-overlay {
  z-index: 20000 !important;
}
.pgy-idle-timeout-msgbox {
  z-index: 20001 !important;
  width: min(420px, 100vw - 32px) !important;
  min-width: 0 !important;
  background: #ffffff !important;
  color: #1f2937 !important;
  opacity: 1 !important;
}
.pgy-idle-timeout-msgbox .el-message-box__message,
.pgy-idle-timeout-msgbox .el-message-box__message p {
  white-space: normal;
  line-height: 1.7;
  word-break: break-word;
  overflow-wrap: anywhere;
}
.pgy-confirm-message-box {
  position: relative;
  width: min(440px, 100vw - 32px) !important;
  min-width: 0 !important;
  min-height: 180px;
  resize: vertical;
  overflow: auto;
  background: linear-gradient(180deg, #f6fbff 0%, #ffffff 45%) !important;
  color: #334155;
  border: 1px solid rgba(64, 158, 255, 0.16);
  border-radius: 18px;
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.16);
  text-align: left;
}
.pgy-confirm-message-box .el-message-box__header {
  position: relative;
  cursor: move;
  padding: 22px 52px 10px 26px;
  background: linear-gradient(135deg, rgba(64, 158, 255, 0.14), rgba(103, 194, 58, 0.08));
  border-bottom: 1px solid rgba(64, 158, 255, 0.12);
}
.pgy-confirm-message-box .el-message-box__headerbtn {
  position: absolute;
  top: 18px;
  right: 18px;
  left: auto;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  transition: background-color 0.2s ease, transform 0.2s ease;
}
.pgy-confirm-message-box .el-message-box__headerbtn:hover {
  background: #fff;
  transform: scale(1.04);
}
.pgy-confirm-message-box .el-message-box__title {
  color: #0f4c81;
  font-size: 18px;
  font-weight: 700;
  text-align: left;
  letter-spacing: 0.2px;
}
.pgy-confirm-message-box .el-message-box__content {
  color: #475569;
  font-size: 15px;
  line-height: 1.7;
  padding: 18px 26px 14px;
  background: transparent;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.pgy-confirm-message-box .el-message-box__message,
.pgy-confirm-message-box .el-message-box__message p {
  white-space: pre-line;
  word-break: break-word;
  overflow-wrap: anywhere;
}
.pgy-confirm-message-box .el-message-box__btns {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  padding: 10px 26px 22px;
  text-align: right;
  background: transparent;
}
.pgy-confirm-message-box .el-message-box__btns .el-button + .el-button {
  margin-left: 0;
}
.pgy-confirm-message-box .el-message-box__btns .el-button {
  border-radius: 999px;
  padding: 8px 18px;
  font-weight: 600;
}/* 🌼 蒲公英医学决策支持系统 - 统一设计语言系统 */

:root {
  /* ==================== 主色彩系统 ==================== */
  /* 蒲公英主题色 - 温暖的黄色系 */
  --pgy-primary: #fadb14;           /* 蒲公英黄 - 主色 */
  --pgy-primary-light: #fff566;     /* 浅蒲公英黄 */
  --pgy-primary-dark: #d4b106;      /* 深蒲公英黄 */
  --pgy-primary-hover: #ffd666;     /* 悬停色 */
  --pgy-primary-active: #e6c200;    /* 激活色 */
  
  /* 医疗专业色系 */
  --pgy-medical-blue: #1890ff;      /* 医疗蓝 - 专业色 */
  --pgy-medical-green: #52c41a;     /* 健康绿 - 成功色 */
  --pgy-medical-red: #ff4d4f;       /* 警告红 - 危险色 */
  --pgy-medical-orange: #fa8c16;    /* 提醒橙 - 警告色 */
  
  /* 中性色系 */
  --pgy-gray-50: #fafafa;
  --pgy-gray-100: #f5f5f5;
  --pgy-gray-200: #f0f0f0;
  --pgy-gray-300: #d9d9d9;
  --pgy-gray-400: #bfbfbf;
  --pgy-gray-500: #8c8c8c;
  --pgy-gray-600: #595959;
  --pgy-gray-700: #434343;
  --pgy-gray-800: #262626;
  --pgy-gray-900: #141414;
  
  /* 语义化颜色 */
  --pgy-success: var(--pgy-medical-green);
  --pgy-warning: var(--pgy-medical-orange);
  --pgy-error: var(--pgy-medical-red);
  --pgy-info: var(--pgy-medical-blue);
  
  /* ==================== 文字系统 ==================== */
  --pgy-text-primary: var(--pgy-gray-800);     /* 主要文字 */
  --pgy-text-secondary: var(--pgy-gray-600);   /* 次要文字 */
  --pgy-text-tertiary: var(--pgy-gray-500);    /* 辅助文字 */
  --pgy-text-disabled: var(--pgy-gray-400);    /* 禁用文字 */
  --pgy-text-inverse: #ffffff;                 /* 反色文字 */
  
  /* 字体大小系统 */
  --pgy-font-size-xs: 12px;
  --pgy-font-size-sm: 14px;
  --pgy-font-size-base: 16px;
  --pgy-font-size-lg: 18px;
  --pgy-font-size-xl: 20px;
  --pgy-font-size-2xl: 24px;
  --pgy-font-size-3xl: 32px;
  
  /* 字体权重 */
  --pgy-font-weight-light: 300;
  --pgy-font-weight-normal: 400;
  --pgy-font-weight-medium: 500;
  --pgy-font-weight-semibold: 600;
  --pgy-font-weight-bold: 700;
  
  /* 行高系统 */
  --pgy-line-height-tight: 1.2;
  --pgy-line-height-normal: 1.5;
  --pgy-line-height-relaxed: 1.6;
  
  /* ==================== 间距系统 ==================== */
  --pgy-spacing-xs: 4px;
  --pgy-spacing-sm: 8px;
  --pgy-spacing-base: 16px;
  --pgy-spacing-lg: 24px;
  --pgy-spacing-xl: 32px;
  --pgy-spacing-2xl: 48px;
  --pgy-spacing-3xl: 64px;
  
  /* ==================== 边框系统 ==================== */
  --pgy-border-width-thin: 1px;
  --pgy-border-width-base: 2px;
  --pgy-border-width-thick: 4px;
  
  --pgy-border-color-light: var(--pgy-gray-200);
  --pgy-border-color-base: var(--pgy-gray-300);
  --pgy-border-color-dark: var(--pgy-gray-400);
  
  --pgy-border-radius-sm: 4px;
  --pgy-border-radius-base: 6px;
  --pgy-border-radius-lg: 8px;
  --pgy-border-radius-xl: 12px;
  --pgy-border-radius-full: 50%;
  
  /* ==================== 阴影系统 ==================== */
  --pgy-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
  --pgy-shadow-base: 0 2px 8px rgba(0, 0, 0, 0.1);
  --pgy-shadow-lg: 0 4px 16px rgba(0, 0, 0, 0.15);
  --pgy-shadow-xl: 0 8px 32px rgba(0, 0, 0, 0.2);
  
  /* ==================== Z-index系统 ==================== */
  --pgy-z-dropdown: 1000;
  --pgy-z-sticky: 1020;
  --pgy-z-fixed: 1030;
  --pgy-z-modal-backdrop: 1040;
  --pgy-z-modal: 1050;
  --pgy-z-popover: 1060;
  --pgy-z-tooltip: 1070;
  --pgy-z-toast: 1080;
  
  /* ==================== 动画系统 ==================== */
  --pgy-transition-fast: 0.15s ease-in-out;
  --pgy-transition-base: 0.3s ease-in-out;
  --pgy-transition-slow: 0.5s ease-in-out;
  
  --pgy-animation-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  --pgy-animation-ease-out: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  
  /* ==================== 医疗专用色彩 ==================== */
  /* 诊断状态色彩 */
  --pgy-diagnosis-normal: #52c41a;      /* 正常 */
  --pgy-diagnosis-abnormal: #fa541c;    /* 异常 */
  --pgy-diagnosis-critical: #f5222d;    /* 危急 */
  --pgy-diagnosis-pending: #722ed1;     /* 待定 */
  
  /* 中医学派色彩 */
  --pgy-tcm-modern: #1890ff;           /* 现代学派 */
  --pgy-tcm-shanghan: #13c2c2;         /* 伤寒学派 */
  --pgy-tcm-wenbing: #eb2f96;          /* 温病学派 */
  --pgy-tcm-piwei: #52c41a;            /* 脾胃学派 */
  --pgy-tcm-huitong: #fa8c16;          /* 汇通学派 */
  
  /* 健康等级色彩 */
  --pgy-health-excellent: #52c41a;     /* 优秀 */
  --pgy-health-good: #73d13d;          /* 良好 */
  --pgy-health-fair: #fadb14;          /* 一般 */
  --pgy-health-poor: #fa8c16;          /* 较差 */
  --pgy-health-critical: #f5222d;      /* 危险 */
}

/* ==================== 全局基础样式 ==================== */
* {
  box-sizing: border-box;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: var(--pgy-font-size-base);
  line-height: var(--pgy-line-height-normal);
  color: var(--pgy-text-primary);
  background-color: var(--pgy-gray-50);
  margin: 0;
  padding: 0;
}

/* ==================== 工具类 ==================== */
/* 文字颜色 */
.pgy-text-primary { color: var(--pgy-text-primary) !important; }
.pgy-text-secondary { color: var(--pgy-text-secondary) !important; }
.pgy-text-tertiary { color: var(--pgy-text-tertiary) !important; }
.pgy-text-success { color: var(--pgy-success) !important; }
.pgy-text-warning { color: var(--pgy-warning) !important; }
.pgy-text-error { color: var(--pgy-error) !important; }
.pgy-text-info { color: var(--pgy-info) !important; }

/* 背景颜色 */
.pgy-bg-primary { background-color: var(--pgy-primary) !important; }
.pgy-bg-success { background-color: var(--pgy-success) !important; }
.pgy-bg-warning { background-color: var(--pgy-warning) !important; }
.pgy-bg-error { background-color: var(--pgy-error) !important; }
.pgy-bg-info { background-color: var(--pgy-info) !important; }

/* 间距 */
.pgy-p-xs { padding: var(--pgy-spacing-xs) !important; }
.pgy-p-sm { padding: var(--pgy-spacing-sm) !important; }
.pgy-p-base { padding: var(--pgy-spacing-base) !important; }
.pgy-p-lg { padding: var(--pgy-spacing-lg) !important; }

.pgy-m-xs { margin: var(--pgy-spacing-xs) !important; }
.pgy-m-sm { margin: var(--pgy-spacing-sm) !important; }
.pgy-m-base { margin: var(--pgy-spacing-base) !important; }
.pgy-m-lg { margin: var(--pgy-spacing-lg) !important; }

/* 边框圆角 */
.pgy-rounded-sm { border-radius: var(--pgy-border-radius-sm) !important; }
.pgy-rounded-base { border-radius: var(--pgy-border-radius-base) !important; }
.pgy-rounded-lg { border-radius: var(--pgy-border-radius-lg) !important; }

/* 阴影 */
.pgy-shadow-sm { box-shadow: var(--pgy-shadow-sm) !important; }
.pgy-shadow-base { box-shadow: var(--pgy-shadow-base) !important; }
.pgy-shadow-lg { box-shadow: var(--pgy-shadow-lg) !important; }

/* 过渡动画 */
.pgy-transition { transition: all var(--pgy-transition-base) !important; }
.pgy-transition-fast { transition: all var(--pgy-transition-fast) !important; }

/* ==================== 组件基础样式 ==================== */
/* 按钮基础样式 */
.pgy-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--pgy-spacing-sm) var(--pgy-spacing-base);
  border: var(--pgy-border-width-thin) solid transparent;
  border-radius: var(--pgy-border-radius-base);
  font-size: var(--pgy-font-size-base);
  font-weight: var(--pgy-font-weight-medium);
  line-height: var(--pgy-line-height-tight);
  cursor: pointer;
  transition: var(--pgy-transition-base);
  text-decoration: none;
  user-select: none;
}

.pgy-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* 按钮变体 */
.pgy-btn-primary {
  background-color: var(--pgy-primary);
  border-color: var(--pgy-primary);
  color: var(--pgy-text-primary);
}

.pgy-btn-primary:hover:not(:disabled) {
  background-color: var(--pgy-primary-hover);
  border-color: var(--pgy-primary-hover);
}

.pgy-btn-medical {
  background-color: var(--pgy-medical-blue);
  border-color: var(--pgy-medical-blue);
  color: var(--pgy-text-inverse);
}

.pgy-btn-medical:hover:not(:disabled) {
  background-color: #40a9ff;
  border-color: #40a9ff;
}

/* 卡片基础样式 */
.pgy-card {
  background-color: #ffffff;
  border: var(--pgy-border-width-thin) solid var(--pgy-border-color-light);
  border-radius: var(--pgy-border-radius-lg);
  box-shadow: var(--pgy-shadow-sm);
  padding: var(--pgy-spacing-lg);
  transition: var(--pgy-transition-base);
}

.pgy-card:hover {
  box-shadow: var(--pgy-shadow-base);
}

/* 表单控件基础样式 */
.pgy-form-control {
  width: 100%;
  padding: var(--pgy-spacing-sm) var(--pgy-spacing-base);
  border: var(--pgy-border-width-thin) solid var(--pgy-border-color-base);
  border-radius: var(--pgy-border-radius-base);
  font-size: var(--pgy-font-size-base);
  line-height: var(--pgy-line-height-normal);
  color: var(--pgy-text-primary);
  background-color: #ffffff;
  transition: var(--pgy-transition-base);
}

.pgy-form-control:focus {
  outline: none;
  border-color: var(--pgy-primary);
  box-shadow: 0 0 0 2px rgba(250, 219, 20, 0.2);
}

/* 标签页基础样式 */
.pgy-tabs {
  display: flex;
  border-bottom: var(--pgy-border-width-thin) solid var(--pgy-border-color-light);
}

.pgy-tab {
  padding: var(--pgy-spacing-base) var(--pgy-spacing-lg);
  border: none;
  background: none;
  color: var(--pgy-text-secondary);
  cursor: pointer;
  transition: var(--pgy-transition-base);
  position: relative;
}

.pgy-tab:hover {
  color: var(--pgy-text-primary);
}

.pgy-tab.active {
  color: var(--pgy-primary);
}

.pgy-tab.active::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 2px;
  background-color: var(--pgy-primary);
}

/* ==================== 医疗专用组件样式 ==================== */
/* 诊断状态标签 */
.pgy-diagnosis-tag {
  display: inline-flex;
  align-items: center;
  padding: var(--pgy-spacing-xs) var(--pgy-spacing-sm);
  border-radius: var(--pgy-border-radius-base);
  font-size: var(--pgy-font-size-sm);
  font-weight: var(--pgy-font-weight-medium);
  color: #ffffff;
}

.pgy-diagnosis-tag.normal {
  background-color: var(--pgy-diagnosis-normal);
}

.pgy-diagnosis-tag.abnormal {
  background-color: var(--pgy-diagnosis-abnormal);
}

.pgy-diagnosis-tag.critical {
  background-color: var(--pgy-diagnosis-critical);
}

/* 中医学派标签 */
.pgy-tcm-school-tag {
  display: inline-flex;
  align-items: center;
  padding: var(--pgy-spacing-xs) var(--pgy-spacing-sm);
  border-radius: var(--pgy-border-radius-base);
  font-size: var(--pgy-font-size-sm);
  font-weight: var(--pgy-font-weight-medium);
  color: #ffffff;
}

.pgy-tcm-school-tag.modern { background-color: var(--pgy-tcm-modern); }
.pgy-tcm-school-tag.shanghan { background-color: var(--pgy-tcm-shanghan); }
.pgy-tcm-school-tag.wenbing { background-color: var(--pgy-tcm-wenbing); }
.pgy-tcm-school-tag.piwei { background-color: var(--pgy-tcm-piwei); }
.pgy-tcm-school-tag.huitong { background-color: var(--pgy-tcm-huitong); }

/* 健康等级指示器 */
.pgy-health-indicator {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: var(--pgy-border-radius-full);
  font-size: var(--pgy-font-size-sm);
  font-weight: var(--pgy-font-weight-bold);
  color: #ffffff;
}

.pgy-health-indicator.excellent { background-color: var(--pgy-health-excellent); }
.pgy-health-indicator.good { background-color: var(--pgy-health-good); }
.pgy-health-indicator.fair { background-color: var(--pgy-health-fair); }
.pgy-health-indicator.poor { background-color: var(--pgy-health-poor); }
.pgy-health-indicator.critical { background-color: var(--pgy-health-critical); }

/* ==================== 响应式设计 ==================== */
@media (max-width: 768px) {
  :root {
    --pgy-spacing-base: 12px;
    --pgy-spacing-lg: 16px;
    --pgy-font-size-base: 14px;
  }
  
  .pgy-card {
    padding: var(--pgy-spacing-base);
  }
}

@media (max-width: 480px) {
  :root {
    --pgy-spacing-base: 8px;
    --pgy-spacing-lg: 12px;
    --pgy-font-size-base: 14px;
  }
}

/* ==================== Element Plus 与自定义 BaseDialog 叠层 ====================
 * BaseDialog 遮罩 (.base-dialog-overlay) 使用 z-index: 10000；
 * ElMessage / ElNotification 默认层级较低，会落在遮罩背面，提示已弹出但不可见。
 */
.el-message,
.el-notification {
  z-index: 10100 !important;
} /**
 * 主题样式入口文件
 * 
 * 导入所有主题 CSS 文件
 */

/**
 * 💼 专业蓝主题 - Professional Blue
 * 
 * 特点：低饱和度灰蓝色系，专业、冷静、信任感
 * 适用场景：正式医疗环境，需要传递专业形象
 * 
 * 设计原则：
 * - 降低主色饱和度，减少视觉刺激
 * - 使用灰蓝色调，营造专业氛围
 * - 保持足够对比度，确保可读性
 */

.theme-professional-blue {
  /* ==================== 主色彩系统 ==================== */
  --pgy-primary: #4A90A4;           /* 灰蓝 - 主色 */
  --pgy-primary-light: #6AAFBF;     /* 浅灰蓝 */
  --pgy-primary-dark: #3A7A8A;      /* 深灰蓝 */
  --pgy-primary-hover: #5BA0B4;     /* 悬停色 */
  --pgy-primary-active: #3A7A8A;    /* 激活色 */
  
  /* 医疗专业色系 - 降低饱和度 */
  --pgy-medical-blue: #5B8FB9;      /* 柔和蓝 */
  --pgy-medical-green: #6B9E78;     /* 柔和绿 */
  --pgy-medical-red: #C47070;       /* 柔和红 */
  --pgy-medical-orange: #C4956B;    /* 柔和橙 */
  
  /* 中性色系 - 偏蓝灰 */
  --pgy-gray-50: #F5F7F9;           /* 微蓝灰背景 */
  --pgy-gray-100: #EEF1F4;
  --pgy-gray-200: #E4E8EC;
  --pgy-gray-300: #CDD3D9;
  --pgy-gray-400: #A8B2BC;
  --pgy-gray-500: #7A8A96;
  --pgy-gray-600: #556270;
  --pgy-gray-700: #3D4A54;
  --pgy-gray-800: #2A343C;
  --pgy-gray-900: #1A2128;
  
  /* 语义化颜色 */
  --pgy-success: var(--pgy-medical-green);
  --pgy-warning: var(--pgy-medical-orange);
  --pgy-error: var(--pgy-medical-red);
  --pgy-info: var(--pgy-medical-blue);
  
  /* 背景色 */
  --pgy-bg-page: var(--pgy-gray-50);
  --pgy-bg-card: #ffffff;
  --pgy-bg-hover: var(--pgy-gray-100);
  
  /* 边框色 */
  --pgy-border-color-light: var(--pgy-gray-200);
  --pgy-border-color-base: var(--pgy-gray-300);
  --pgy-border-color-dark: var(--pgy-gray-400);
  
  /* 文字颜色 */
  --pgy-text-primary: var(--pgy-gray-800);
  --pgy-text-secondary: var(--pgy-gray-600);
  --pgy-text-tertiary: var(--pgy-gray-500);
  --pgy-text-disabled: var(--pgy-gray-400);
  --pgy-text-inverse: #ffffff;
  
  /* 阴影 - 偏蓝调 */
  --pgy-shadow-sm: 0 1px 2px rgba(42, 52, 60, 0.06);
  --pgy-shadow-base: 0 2px 8px rgba(42, 52, 60, 0.1);
  --pgy-shadow-lg: 0 4px 16px rgba(42, 52, 60, 0.14);
  
  /* 焦点环颜色 */
  --pgy-focus-ring: rgba(74, 144, 164, 0.4);
  
  /* ==================== 诊断状态色彩 - 柔和版 ==================== */
  --pgy-diagnosis-normal: #6B9E78;
  --pgy-diagnosis-abnormal: #C4826B;
  --pgy-diagnosis-critical: #C47070;
  --pgy-diagnosis-pending: #8B7AB0;
  
  /* ==================== 中医学派色彩 - 柔和版 ==================== */
  --pgy-tcm-modern: #5B8FB9;
  --pgy-tcm-shanghan: #5BA8A8;
  --pgy-tcm-wenbing: #B87A9E;
  --pgy-tcm-piwei: #6B9E78;
  --pgy-tcm-huitong: #C4956B;
  
  /* ==================== 健康等级色彩 - 柔和版 ==================== */
  --pgy-health-excellent: #6B9E78;
  --pgy-health-good: #8AB88E;
  --pgy-health-fair: #C4B86B;
  --pgy-health-poor: #C4956B;
  --pgy-health-critical: #C47070;
}

/* 页面背景 */

.theme-professional-blue body {
  background-color: var(--pgy-gray-50);
}

/* 按钮主色调整 */

.theme-professional-blue .pgy-btn-primary {
  color: #ffffff;
}

.theme-professional-blue .menu-item.active {
  background: #E6F0F4;
  color: #4A90A4;
  border-right-color: #4A90A4;
}

.theme-professional-blue .menu-item:hover {
  background: #EEF3F6;
  color: #4A90A4;
}

/**
 * 🌿 护眼绿主题 - Eye-Care Green
 * 
 * 特点：低饱和度灰绿色系，减少蓝光刺激，保护眼睛
 * 适用场景：长时间阅读病历，夜间工作，眼睛敏感用户
 * 
 * 设计原则：
 * - 使用绿色调，科学研究表明绿色对眼睛最友好
 * - 大幅降低饱和度，避免视觉疲劳
 * - 背景采用微绿灰色，减少屏幕反差
 * - 保持足够对比度，确保长时间阅读舒适
 */

.theme-eye-care-green {
  /* ==================== 主色彩系统 ==================== */
  --pgy-primary: #7A9E7E;           /* 灰绿 - 主色 */
  --pgy-primary-light: #9AB89E;     /* 浅灰绿 */
  --pgy-primary-dark: #5A7E5E;      /* 深灰绿 */
  --pgy-primary-hover: #8AAE8E;     /* 悬停色 */
  --pgy-primary-active: #5A7E5E;    /* 激活色 */
  
  /* 医疗专业色系 - 护眼低饱和度 */
  --pgy-medical-blue: #6B8FA0;      /* 灰蓝 */
  --pgy-medical-green: #6B9E78;     /* 柔和绿 */
  --pgy-medical-red: #B88080;       /* 柔和红（降低刺激） */
  --pgy-medical-orange: #B8A070;    /* 柔和橙 */
  
  /* 中性色系 - 偏绿灰，护眼 */
  --pgy-gray-50: #F5F8F5;           /* 微绿灰背景 */
  --pgy-gray-100: #EDF2ED;
  --pgy-gray-200: #E2E8E2;
  --pgy-gray-300: #C8D2C8;
  --pgy-gray-400: #A0AEA0;
  --pgy-gray-500: #788878;
  --pgy-gray-600: #566256;
  --pgy-gray-700: #404A40;
  --pgy-gray-800: #2C342C;
  --pgy-gray-900: #1C221C;
  
  /* 语义化颜色 */
  --pgy-success: var(--pgy-medical-green);
  --pgy-warning: var(--pgy-medical-orange);
  --pgy-error: var(--pgy-medical-red);
  --pgy-info: var(--pgy-medical-blue);
  
  /* 背景色 */
  --pgy-bg-page: var(--pgy-gray-50);
  --pgy-bg-card: #FAFCFA;           /* 微绿白 */
  --pgy-bg-hover: var(--pgy-gray-100);
  
  /* 边框色 */
  --pgy-border-color-light: var(--pgy-gray-200);
  --pgy-border-color-base: var(--pgy-gray-300);
  --pgy-border-color-dark: var(--pgy-gray-400);
  
  /* 文字颜色 - 避免纯黑，减少对比度刺激 */
  --pgy-text-primary: var(--pgy-gray-800);
  --pgy-text-secondary: var(--pgy-gray-600);
  --pgy-text-tertiary: var(--pgy-gray-500);
  --pgy-text-disabled: var(--pgy-gray-400);
  --pgy-text-inverse: #FAFCFA;
  
  /* 阴影 - 偏绿调，更柔和 */
  --pgy-shadow-sm: 0 1px 2px rgba(44, 52, 44, 0.05);
  --pgy-shadow-base: 0 2px 8px rgba(44, 52, 44, 0.08);
  --pgy-shadow-lg: 0 4px 16px rgba(44, 52, 44, 0.12);
  
  /* 焦点环颜色 */
  --pgy-focus-ring: rgba(122, 158, 126, 0.4);
  
  /* ==================== 诊断状态色彩 - 护眼版 ==================== */
  --pgy-diagnosis-normal: #6B9E78;
  --pgy-diagnosis-abnormal: #B89070;
  --pgy-diagnosis-critical: #B88080;
  --pgy-diagnosis-pending: #8888A0;
  
  /* ==================== 中医学派色彩 - 护眼版 ==================== */
  --pgy-tcm-modern: #6B8FA0;
  --pgy-tcm-shanghan: #6BA0A0;
  --pgy-tcm-wenbing: #A08090;
  --pgy-tcm-piwei: #6B9E78;
  --pgy-tcm-huitong: #B8A070;
  
  /* ==================== 健康等级色彩 - 护眼版 ==================== */
  --pgy-health-excellent: #6B9E78;
  --pgy-health-good: #88AE88;
  --pgy-health-fair: #B8B070;
  --pgy-health-poor: #B8A070;
  --pgy-health-critical: #B88080;
}

/* 页面背景 */

.theme-eye-care-green body {
  background-color: var(--pgy-gray-50);
}

/* 按钮主色调整 */

.theme-eye-care-green .pgy-btn-primary {
  color: #ffffff;
}

.theme-eye-care-green .menu-item.active {
  background: #E8F0E8;
  color: #5A7E5E;
  border-right-color: #7A9E7E;
}

.theme-eye-care-green .menu-item:hover {
  background: #EEF4EE;
  color: #5A7E5E;
}

/* 卡片背景微调 */

.theme-eye-care-green .pgy-card,
.theme-eye-care-green .dialog,
.theme-eye-care-green .settings-menu-dialog {
  background: #FAFCFA;
}

/* 输入框背景微调 */

.theme-eye-care-green input,
.theme-eye-care-green textarea,
.theme-eye-care-green select {
  background-color: #FAFCFA;
}

.theme-eye-care-green input:focus,
.theme-eye-care-green textarea:focus,
.theme-eye-care-green select:focus {
  border-color: #7A9E7E;
  box-shadow: 0 0 0 2px rgba(122, 158, 126, 0.2);
}

/**
 * 🧡 温馨暖色主题 - Warm Light
 * 
 * 特点：暖橙色系，温馨、亲切、舒适
 * 适用场景：儿科、妇科、康复科，或喜好暖色调的用户
 * 
 * 设计原则：
 * - 使用暖橙色作为主色，传递温暖感
 * - 降低饱和度，避免刺眼
 * - 配合柔和的辅助色
 */

.theme-warm-light {
  /* ==================== 主色彩系统 ==================== */
  --pgy-primary: #E6A23C;           /* 暖橙 - 主色 */
  --pgy-primary-light: #F3D19E;     /* 浅暖橙 */
  --pgy-primary-dark: #B88230;      /* 深暖橙 */
  --pgy-primary-hover: #EBB563;     /* 悬停色 */
  --pgy-primary-active: #CF9236;    /* 激活色 */
  
  /* 医疗专业色系 - 暖色调适配 */
  --pgy-medical-blue: #5B8FB9;      /* 柔和蓝 */
  --pgy-medical-green: #6B9E78;     /* 柔和绿 */
  --pgy-medical-red: #D67575;       /* 柔和红 */
  --pgy-medical-orange: #E6A23C;    /* 主色即橙色 */
  
  /* 中性色系 - 偏暖灰 */
  --pgy-gray-50: #FDFBF7;           /* 米白背景 */
  --pgy-gray-100: #F7F2EB;
  --pgy-gray-200: #EBE6DE;
  --pgy-gray-300: #D6D1C9;
  --pgy-gray-400: #B0ABA3;
  --pgy-gray-500: #8A857D;
  --pgy-gray-600: #635F59;
  --pgy-gray-700: #45423E;
  --pgy-gray-800: #2E2C29;
  --pgy-gray-900: #1A1917;
  
  /* 语义化颜色 */
  --pgy-success: var(--pgy-medical-green);
  --pgy-warning: var(--pgy-medical-orange);
  --pgy-error: var(--pgy-medical-red);
  --pgy-info: var(--pgy-medical-blue);
  
  /* 背景色 */
  --pgy-bg-page: var(--pgy-gray-50);
  --pgy-bg-card: #FFFDF9;           /* 暖白 */
  --pgy-bg-hover: var(--pgy-gray-100);
  
  /* 边框色 */
  --pgy-border-color-light: var(--pgy-gray-200);
  --pgy-border-color-base: var(--pgy-gray-300);
  --pgy-border-color-dark: var(--pgy-gray-400);
  
  /* 文字颜色 - 暖灰 */
  --pgy-text-primary: var(--pgy-gray-800);
  --pgy-text-secondary: var(--pgy-gray-600);
  --pgy-text-tertiary: var(--pgy-gray-500);
  --pgy-text-disabled: var(--pgy-gray-400);
  --pgy-text-inverse: #FFFDF9;
  
  /* 阴影 - 暖色调 */
  --pgy-shadow-sm: 0 1px 2px rgba(60, 50, 40, 0.05);
  --pgy-shadow-base: 0 2px 8px rgba(60, 50, 40, 0.08);
  --pgy-shadow-lg: 0 4px 16px rgba(60, 50, 40, 0.12);
  
  /* 焦点环颜色 */
  --pgy-focus-ring: rgba(230, 162, 60, 0.4);
  
  /* ==================== 诊断状态色彩 - 暖色版 ==================== */
  --pgy-diagnosis-normal: #6B9E78;
  --pgy-diagnosis-abnormal: #E6A23C;
  --pgy-diagnosis-critical: #D67575;
  --pgy-diagnosis-pending: #A389B5;
  
  /* ==================== 中医学派色彩 - 暖色版 ==================== */
  --pgy-tcm-modern: #5B8FB9;
  --pgy-tcm-shanghan: #5BA8A8;
  --pgy-tcm-wenbing: #D6759E;
  --pgy-tcm-piwei: #6B9E78;
  --pgy-tcm-huitong: #E6A23C;
  
  /* ==================== 健康等级色彩 - 暖色版 ==================== */
  --pgy-health-excellent: #6B9E78;
  --pgy-health-good: #9EBF82;
  --pgy-health-fair: #E6CF3C;
  --pgy-health-poor: #E6A23C;
  --pgy-health-critical: #D67575;
}

/* 页面背景 */

.theme-warm-light body {
  background-color: var(--pgy-gray-50);
}

/* 按钮主色调整 */

.theme-warm-light .pgy-btn-primary {
  color: #ffffff;
}

.theme-warm-light .menu-item.active {
  background: #FDF6EC;
  color: #B88230;
  border-right-color: #E6A23C;
}

.theme-warm-light .menu-item:hover {
  background: #FAECD8;
  color: #B88230;
}

/* 卡片背景微调 */

.theme-warm-light .pgy-card,
.theme-warm-light .dialog,
.theme-warm-light .settings-menu-dialog {
  background: #FFFDF9;
}

/* 输入框背景微调 */

.theme-warm-light input,
.theme-warm-light textarea,
.theme-warm-light select {
  background-color: #FFFDF9;
}

.theme-warm-light input:focus,
.theme-warm-light textarea:focus,
.theme-warm-light select:focus {
  border-color: #E6A23C;
  box-shadow: 0 0 0 2px rgba(230, 162, 60, 0.2);
}

/* 主题切换过渡动画 */

html {
  transition: background-color 0.3s ease-in-out;
}

html.theme-transitioning * {
  transition: background-color 0.3s ease-in-out,
              border-color 0.3s ease-in-out,
              color 0.3s ease-in-out,
              box-shadow 0.3s ease-in-out !important;
}

