/* 基础样式设置 - 共享变量 */
:root {
    /* 共享颜色变量 */
    --primary-color: #4e6ef2;
    --primary-hover: #4662d9;
    --danger-color: #dc3545;
    --danger-hover-bg: rgba(220, 53, 69, 0.1);
    
    /* 过渡动画变量 */
    --transition-fast: all 0.2s ease;
    --transition-normal: all 0.3s ease;
    
    /* 阴影变量 */
    --shadow-light: 0 1px 6px rgba(32, 33, 36, 0.28);
    --shadow-dark: 0 1px 6px rgba(0, 0, 0, 0.5);
    --shadow-hover: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

/* 亮色模式变量 */
:root:not(.dark) {
    --bg-color: #ffffff;
    --card-bg: #ffffff;
    --text-color: #333333;
    --text-secondary: #666666;
    --text-tertiary: #999999;
    --placeholder-color: #94a3b8;
    --border-color: #e2e8f0;
    --hover-color: #f1f5f9;
    --navbar-gradient: linear-gradient(to right, #4338ca, #3b82f6);
    --link-color: #4e6ef2;
    --link-hover: #4662d9;
}

/* 暗色模式变量 */
.dark {
    --bg-color: #1a1a2e;
    --card-bg: #16213e;
    --text-color: #f1f5f9;
    --text-secondary: #e2e8f0;
    --text-tertiary: #cbd5e1;
    --placeholder-color: #94a3b8;
    --border-color: #2a2a42;
    --primary-color: #4cc9f0;
    --primary-hover: #3dbbf0;
    --hover-color: rgba(255, 255, 255, 0.08);
    --navbar-gradient: linear-gradient(to right, #0f3460, #16213e);
    --link-color: #93c5fd;
    --link-hover: #bfdbfe;
    --danger-hover-bg: rgba(220, 53, 69, 0.2);
}

/* 全局基础样式 */
body {
    background-color: var(--bg-color);
    color: var(--text-color);
    transition: var(--transition-normal);
}

/* 导航栏样式 */
.navbar {
    background: var(--navbar-gradient);
    transition: var(--transition-normal);
}

/* 导航栏文本和图标颜色 - 确保在两种主题下都清晰可见 */
.navbar-brand span,
.navbar-brand i,
#themeToggle,
#themeToggle i,
#themeToggle span,
.dropdown-toggle,
.dropdown-toggle i,
.dropdown-toggle span,
.btn-link[aria-label="使用帮助"],
.btn-link[aria-label="使用帮助"] i,
.btn-link[aria-label="使用帮助"] span {
    color: white !important;
    transition: var(--transition-fast);
}

/* 导航栏元素悬停效果 */
.navbar-brand:hover span,
.navbar-brand:hover i,
#themeToggle:hover,
#themeToggle:hover i,
#themeToggle:hover span,
.dropdown-toggle:hover,
.dropdown-toggle:hover i,
.dropdown-toggle:hover span,
.btn-link[aria-label="使用帮助"]:hover,
.btn-link[aria-label="使用帮助"]:hover i,
.btn-link[aria-label="使用帮助"]:hover span {
    color: var(--hover-color) !important;
}

/* 搜索历史基础样式 */
.history-item {
    padding: 8px 12px;
    border-radius: 6px;
    margin: 2px 0;
    cursor: pointer;
    transition: var(--transition-fast);
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    color: var(--text-color);
    background-color: transparent;
}

.history-item:hover {
    background-color: var(--hover-color);
    transform: translateX(2px);
}

.history-item .history-icon {
    margin-right: 8px;
    color: var(--text-tertiary);
    flex-shrink: 0;
}

.history-item .history-text {
    flex-grow: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.history-item .remove-history {
    opacity: 0;
    transition: opacity 0.2s ease;
    color: var(--text-tertiary);
    border: none;
    background: none;
    padding: 2px 6px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.history-item:hover .remove-history {
    opacity: 1;
}

.history-item .remove-history:hover {
    color: var(--danger-color);
    background-color: var(--danger-hover-bg);
}

/* 空状态样式 */
#historyList > div:only-child {
    transition: var(--transition-normal);
}

/* 搜索相关样式 */
.search-results, 
.dropdown-menu {
    background-color: var(--card-bg);
    border-color: var(--border-color);
    transition: var(--transition-normal);
}

.search-results:hover {
    box-shadow: var(--shadow-hover);
}

.search-ratio-container {
    box-shadow: var(--shadow-light);
    border-color: var(--border-color);
    transition: var(--transition-fast);
}

.dark .search-ratio-container {
    box-shadow: var(--shadow-dark);
}

#searchInput {
    background-color: var(--card-bg);
    color: var(--text-color);
    border-right: 1px solid var(--border-color);
    transition: var(--transition-fast);
}

#searchInput::placeholder {
    color: var(--placeholder-color) !important;
    opacity: 1;
}

/* 列表和历史项样式 */
.list-group-item, 
.history-item {
    background-color: transparent;
    border-color: var(--border-color);
    color: var(--text-color);
    transition: var(--transition-fast);
}

.history-item:active {
    background-color: rgba(255, 255, 255, 0.12);
}

/* 搜索提示和结果样式 */
.initial-state span {
    color: var(--text-secondary) !important;
}

#historyList > div:only-child p {
    color: var(--text-tertiary) !important;
}

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

.search-result-info p {
    color: var(--text-tertiary);
}

/* 模态框样式 */
.modal-content {
    background-color: var(--card-bg);
    border-color: var(--border-color);
    color: var(--text-color);
    transition: var(--transition-normal);
}

.modal-header, 
.modal-footer {
    border-color: var(--border-color);
}

.modal-body p {
    color: var(--text-secondary) !important;
}

/* 按钮样式 */
.btn {
    color: var(--text-color) !important;
    transition: var(--transition-fast);
}

.btn:hover {
    color: white !important;
}

#searchButton {
    background-color: var(--primary-color) !important;
    color: white !important;
}

#searchButton:hover {
    background-color: var(--primary-hover) !important;
}

/* 下拉菜单标题栏 */
.dropdown-menu .d-flex {
    background-color: var(--hover-color);
}

.dropdown-menu h6 {
    color: var(--text-color);
}

#clearHistory {
    color: var(--text-tertiary);
}

#clearHistory:hover {
    color: var(--danger-color);
    background-color: var(--danger-hover-bg);
}

/* 返回顶部按钮 */
.back-to-top {
    background-color: var(--card-bg);
    box-shadow: var(--shadow-light);
    color: var(--text-color);
    transition: var(--transition-normal);
}

.back-to-top:hover {
    background-color: var(--primary-color);
    color: white;
}

.dark .back-to-top {
    box-shadow: var(--shadow-dark);
}

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

a:hover {
    color: var(--link-hover) !important;
    text-decoration: underline;
}

/* 统一边框样式 */
.search-ratio-container,
.search-results,
.dropdown-menu,
.modal-content,
.list-group-item {
    border: 1px solid var(--border-color) !important;
}

/* 搜索框交互效果 */
.search-ratio-container:hover {
    border-color: rgba(223, 225, 229, 0);
    transform: translateY(-1px);
}


