/* ========================================
   VS Code 主题变量
   ======================================== */

/* 暗色主题 */
body.dark-theme {
  --bg-primary: #1e1e1e;
  --bg-secondary: #252526;
  --bg-sidebar: #252526;
  --bg-hover: #2a2d2e;
  --bg-active: #37373d;
  
  --text-primary: #cccccc;
  --text-secondary: #858585;
  
  --border-color: #3e3e42;
  
  --primary-color: #007acc;
  --success-color: #4ec9b0;
  --warning-color: #dcdcaa;
  --danger-color: #f48771;
  
  --tag-bg: #3e3e42;
  
  --scrollbar-thumb: #424242;
  --scrollbar-thumb-hover: #4f4f4f;
  --scrollbar-bg: #1b1b1b;
  
  /* VS Code 风格的diff与上下文行内背景（暗色） */
  --diff-added-bg: rgba(100, 204, 119, 0.18);
  --diff-removed-bg: rgba(255, 99, 99, 0.18);
  --context-inline-bg: rgba(128, 128, 128, 0.12);
  
  /* 对比框模态样式（暗色） */
  --modal-overlay-bg: rgba(0, 0, 0, 0.65);
  --modal-shadow: rgba(0, 0, 0, 0.5);
}

/* 亮色主题 */
body.light-theme {
  --bg-primary: #ffffff;
  --bg-secondary: #f3f3f3;
  --bg-sidebar: #f3f3f3;
  --bg-hover: #e8e8e8;
  --bg-active: #e4e6f1;
  
  --text-primary: #3c3c3c;
  --text-secondary: #6c6c6c;
  
  --border-color: #e5e5e5;
  
  --primary-color: #0078d4;
  --success-color: #16825d;
  --warning-color: #7a6517;
  --danger-color: #d13438;
  
  --tag-bg: #e5e5e5;
  
  --scrollbar-thumb: #c4c4c4;
  --scrollbar-thumb-hover: #a6a6a6;
  --scrollbar-bg: #f6f6f6;
  
  /* VS Code 风格的diff与上下文行内背景（亮色） */
  --diff-added-bg: rgba(35, 134, 54, 0.12);
  --diff-removed-bg: rgba(255, 59, 48, 0.10);
  --context-inline-bg: rgba(0, 0, 0, 0.04);
  
  /* 对比框模态样式（亮色） */
  --modal-overlay-bg: rgba(0, 0, 0, 0.45);
  --modal-shadow: rgba(0, 0, 0, 0.25);
}

/* ========================================
   Element Plus 组件样式覆盖（适配VS Code风格）
   ======================================== */

/* 按钮 */
.dark-theme .el-button--primary {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
}

.dark-theme .el-button--primary:hover {
  background-color: #1a86d3;
  border-color: #1a86d3;
}

/* 输入框 */
.dark-theme .el-input__wrapper {
  background-color: var(--bg-primary);
  border-color: var(--border-color);
  box-shadow: none;
}
/* 文本域 */
.dark-theme .el-textarea__inner {
  background-color: var(--bg-primary) !important;
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
}

.dark-theme .el-input__wrapper:hover {
  border-color: var(--primary-color);
}

.dark-theme .el-input__wrapper.is-focus {
  border-color: var(--primary-color);
  box-shadow: 0 0 0 1px var(--primary-color);
}

.dark-theme .el-input__inner {
  color: var(--text-primary);
}

/* 下拉菜单 */
.dark-theme .el-dropdown-menu {
  background-color: var(--bg-secondary);
  border: 1px solid var(--border-color);
}

.dark-theme .el-dropdown-menu__item {
  color: var(--text-primary);
}

.dark-theme .el-dropdown-menu__item:hover {
  background-color: var(--bg-hover);
  color: var(--primary-color);
}

/* 对话框 */
.dark-theme .el-dialog {
  background-color: var(--bg-secondary);
  border: 1px solid var(--border-color);
}

.dark-theme .el-dialog__header {
  border-bottom: 1px solid var(--border-color);
}

.dark-theme .el-dialog__title {
  color: var(--text-primary);
}

.dark-theme .el-dialog__body {
  color: var(--text-primary);
}

.dark-theme .el-dialog__footer {
  border-top: 1px solid var(--border-color);
}

/* 标签 */
.dark-theme .el-tag {
  background-color: var(--tag-bg);
  border-color: var(--border-color);
  color: var(--text-primary);
}

/* 开关 */
.dark-theme .el-switch__core {
  border-color: var(--border-color);
  background-color: var(--bg-hover);
}

.dark-theme .el-switch.is-checked .el-switch__core {
  background-color: var(--primary-color);
}

/* 消息框 */
.dark-theme .el-message-box {
  background-color: var(--bg-secondary);
  border: 1px solid var(--border-color);
}

.dark-theme .el-message-box__title {
  color: var(--text-primary);
}

.dark-theme .el-message-box__content {
  color: var(--text-primary);
}

/* 滑块 */
.dark-theme .el-slider__runway {
  background-color: var(--bg-hover);
}

.dark-theme .el-slider__bar {
  background-color: var(--primary-color);
}

.dark-theme .el-slider__button {
  border-color: var(--primary-color);
}

/* 表单标签 */
.dark-theme .el-form-item__label {
  color: var(--text-primary);
}

/* 分隔线 */
.el-divider--vertical {
  background-color: var(--border-color);
}

/* 滚动条（全局） */
.dark-theme *::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.dark-theme *::-webkit-scrollbar-track {
  background: var(--scrollbar-bg);
}
.dark-theme *::-webkit-scrollbar-thumb {
  background: var(--scrollbar-thumb);
}
.dark-theme *::-webkit-scrollbar-thumb:hover {
  background: var(--scrollbar-thumb-hover);
}

.light-theme *::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.light-theme *::-webkit-scrollbar-track {
  background: var(--scrollbar-bg);
}
.light-theme *::-webkit-scrollbar-thumb {
  background: var(--scrollbar-thumb);
}
.light-theme *::-webkit-scrollbar-thumb:hover {
  background: var(--scrollbar-thumb-hover);
}

/* ========================================
   Monaco Editor 与主题集成
   ======================================== */

.monaco-editor {
  /* Monaco Editor会自动应用vs-dark或vs主题 */
}

/* 确保Monaco Editor不会有边框或外边距问题 */
.monaco-editor .overflow-guard {
  border-radius: 0;
}

