/* 深色模式预先加载样式，防止FOUC (闪烁) */
html:not(.light) {
    color-scheme: dark;
}

html.dark {
    color-scheme: dark;
}

/* 主要背景颜色 */
html.dark body {
    background-color: #121826;
    color: #e2e8f0;
}

/* 卡片和容器 */
html.dark .bg-white,
html.dark .sidebar-section, 
html.dark .message-assistant,
html.dark .message-content .bg-white {
    background-color: #1e293b !important;
    border-color: #2d3748 !important;
}

/* 边框 */
html.dark .border-gray-100 {
    border-color: #2d3748 !important;
}

html.dark .border-gray-200 {
    border-color: #374151 !important;
}

/* 文本颜色 */
html.dark .text-gray-700,
html.dark .text-gray-800,
html.dark .text-gray-900 {
    color: #e2e8f0 !important;
}

html.dark .text-gray-500,
html.dark .text-gray-600 {
    color: #a0aec0 !important;
}

/* 输入框 */
html.dark input,
html.dark select,
html.dark textarea {
    background-color: #2d3748 !important;
    color: #e2e8f0 !important;
    border-color: #4a5568 !important;
}

html.dark .bg-gray-50 {
    background-color: #2d3748 !important;
}

/* 其他元素适配深色模式 */
/* 深色模式样式 */
:root {
    --light-bg: #ffffff;
    --light-text: #1F2937;
    --light-border: #E5E7EB;
    --light-sidebar: #ffffff;
    --light-card: #ffffff;
    --light-input: #F9FAFB;
    --light-hint: #9CA3AF;
    --light-accent: #3B82F6;
    --light-hover: #F3F4F6;
    --light-chat-bg: #ffffff;
    --light-assistant-bg: #F9F9F9;
    --light-user-bg: #EFF6FF;
    --light-warning-bg: #FFFBEB;
    --light-success-bg: #ECFDF5;
    --light-info-bg: #EFF6FF;
    
    /* 默认为亮色模式 */
    --bg-color: var(--light-bg);
    --text-color: var(--light-text);
    --border-color: var(--light-border);
    --sidebar-bg: var(--light-sidebar);
    --card-bg: var(--light-card);
    --input-bg: var(--light-input);
    --hint-color: var(--light-hint);
    --accent-color: var(--light-accent);
    --hover-color: var(--light-hover);
    --chat-bg: var(--light-chat-bg);
    --assistant-bg: var(--light-assistant-bg);
    --user-bg: var(--light-user-bg);
    --warning-bg: var(--light-warning-bg);
    --success-bg: var(--light-success-bg);
    --info-bg: var(--light-info-bg);
}

/* 深色模式变量 */
.dark {
    --dark-bg: #121212;
    --dark-text: #E5E7EB;
    --dark-border: #374151;
    --dark-sidebar: #1F2937;
    --dark-card: #1F2937;
    --dark-input: #374151;
    --dark-hint: #9CA3AF;
    --dark-accent: #3B82F6;
    --dark-hover: #374151;
    --dark-chat-bg: #1F2937;
    --dark-assistant-bg: #2D3748;
    --dark-user-bg: #2C3E50;
    --dark-warning-bg: #433D29;
    --dark-success-bg: #064E3B;
    --dark-info-bg: #1E3A8A;
    
    /* 深色模式下的变量值 */
    --bg-color: var(--dark-bg);
    --text-color: var(--dark-text);
    --border-color: var(--dark-border);
    --sidebar-bg: var(--dark-sidebar);
    --card-bg: var(--dark-card);
    --input-bg: var(--dark-input);
    --hint-color: var(--dark-hint);
    --accent-color: var(--dark-accent);
    --hover-color: var(--dark-hover);
    --chat-bg: var(--dark-chat-bg);
    --assistant-bg: var(--dark-assistant-bg);
    --user-bg: var(--dark-user-bg);
    --warning-bg: var(--dark-warning-bg);
    --success-bg: var(--dark-success-bg);
    --info-bg: var(--dark-info-bg);
}

/* 基本元素样式 */
.dark body {
    background-color: var(--bg-color);
    color: var(--text-color);
}

.dark .bg-white {
    background-color: var(--card-bg);
}

.dark .border {
    border-color: var(--border-color);
}

.dark .border-gray-100 {
    border-color: var(--border-color);
}

.dark .bg-gray-50 {
    background-color: var(--input-bg);
}

.dark .bg-yellow-50 {
    background-color: var(--warning-bg);
    color: #FCD34D;
    border-color: #78350F;
}

.dark .text-gray-500 {
    color: var(--hint-color);
}

.dark .text-gray-700, 
.dark .text-gray-800, 
.dark .text-gray-900 {
    color: var(--text-color);
}

.dark .border,
.dark .border-t,
.dark .border-b {
    border-color: var(--border-color);
}

/* 消息样式 */
.dark .message-assistant {
    background-color: var(--assistant-bg);
    border: 1px solid var(--border-color);
}

.dark .message-user {
    background-color: var(--user-bg);
    border: 1px solid #1A365D;
}

/* 侧边栏样式 */
.dark .sidebar-section {
    background-color: var(--sidebar-bg);
}

.dark .sidebar-section-title {
    color: #D1D5DB;
}

.dark .sidebar-scroll-container {
    background-color: var(--dark-input);
    border-color: var(--border-color);
}

.dark .history-item-row:hover {
    background-color: var(--hover-color);
}

.dark .history-icon-container {
    background-color: var(--dark-card);
}

.dark .history-item-text {
    color: var(--text-color);
}

.dark .shortcut-item {
    background-color: var(--dark-input);
    border-color: var(--border-color);
}

.dark .shortcut-item:hover {
    background-color: var(--hover-color);
}

.dark .shortcut-text {
    color: var(--text-color);
}

.dark .shortcut-icon {
    color: #93C5FD;
}

/* 表单元素样式 */
.dark input,
.dark select,
.dark textarea {
    background-color: var(--input-bg);
    color: var(--text-color);
    border-color: var(--border-color);
}

/* 聊天输入框特别样式 */
.dark #message-input {
    background-color: transparent; /* 保持透明以继承父容器背景 */
    color: var(--text-color);
}

.dark .flex.items-center.bg-white.rounded-full {
    background-color: var(--dark-input) !important; /* 应用深色背景到输入框容器 */
    border-color: var(--border-color);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.3), 0 2px 4px -1px rgba(0, 0, 0, 0.24);
}

.dark .flex.items-center.bg-white.rounded-full:hover {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.4), 0 4px 6px -2px rgba(0, 0, 0, 0.3);
}

.dark .flex.items-center.bg-white.rounded-full:focus-within {
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.5);
    border-color: #3B82F6;
}

.dark .p-2.ml-2.text-gray-500,
.dark .p-2.ml-3.text-gray-500 {
    color: var(--hint-color);
}

.dark .p-2.ml-2.text-gray-500:hover,
.dark .p-2.ml-3.text-gray-500:hover {
    color: #93C5FD;
}

.dark input::placeholder {
    color: var(--hint-color);
}

.dark option {
    background-color: var(--card-bg);
}

/* 模态框样式 */
.dark .modal-content {
    background-color: var(--sidebar-bg);
}

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

/* 建议按钮样式 */
.dark .suggestion-chip {
    background-color: #2C3E50;
    color: #7DD3FC;
    border: 1px solid #1E40AF;
    transition: all 0.2s ease;
}

.dark .suggestion-chip:hover {
    background-color: #1E3A8A;
    border-color: #3B82F6;
}

/* 欢迎消息深色模式样式 */
.dark .chat-container h1 {
    color: #F3F4F6;
}

.dark .chat-container p.text-gray-600 {
    color: #D1D5DB !important;
}

/* 查询结果区域样式 */
.dark .chat-container {
    background-color: var(--sidebar-bg);
}

.dark .chat-container .whois-result {
    background-color: var(--dark-card);
    border-color: var(--border-color);
}

.dark .chat-container .whois-info-note {
    background-color: rgba(59, 130, 246, 0.1);
    color: #93C5FD;
}

/* 查询结果详细信息样式 */
.dark .whois-result h3 {
    color: #93C5FD;
}

.dark .whois-detail-row {
    border-color: var(--border-color);
}

.dark .whois-detail-label {
    color: #D1D5DB;
}

.dark .whois-detail-value {
    color: #F3F4F6;
}

/* 图标颜色 */
.dark .text-green-600 {
    color: #10B981;
}

.dark .bg-green-100 {
    background-color: #064E3B;
}

/* 主题切换图标样式 */
.theme-toggle-icon {
    transition: transform 0.3s ease;
}

.theme-toggle-icon[data-feather="sun"] {
    display: none;
}

.theme-toggle-icon[data-feather="moon"] {
    display: inline-block;
}

.dark .theme-toggle-icon[data-feather="sun"] {
    display: inline-block;
}

.dark .theme-toggle-icon[data-feather="moon"] {
    display: none;
}

/* 快捷操作主题切换图标特殊处理 */
.shortcut-item .theme-toggle-icon {
    margin-right: 8px;
}

/* 主题切换按钮动画 */
.theme-toggle:hover .theme-toggle-icon {
    transform: rotate(45deg);
}

/* 历史记录选项卡深色模式样式 */
.dark .history-tabs {
    background-color: #1F2937;
    border-color: var(--border-color);
}

.dark .tab-btn {
    color: #9CA3AF;
}

.dark .tab-btn.tab-active {
    color: #3B82F6;
    background-color: var(--dark-card);
    border-color: #3B82F6;
}

.dark .tab-content {
    background-color: var(--dark-card);
    border-color: var(--border-color);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

.dark .history-item {
    border-color: transparent;
}

.dark .history-item:hover {
    background-color: var(--dark-hover);
    border-color: var(--border-color);
}

.dark .history-item .text-gray-800 {
    color: #E5E7EB;
}

.dark .history-item .text-gray-400 {
    color: #9CA3AF;
}

.dark .tab-pane .bg-gray-50 {
    background-color: #2D3748;
    color: #9CA3AF;
}

/* 历史记录图标背景 */
.dark .w-7.h-7.bg-blue-100 {
    background-color: #1E3A8A;
}

.dark .w-7.h-7.bg-blue-100 .text-blue-600 {
    color: #93C5FD;
}

/* 底部区域样式 */
.dark .bg-gradient-to-b.from-white.to-gray-50 {
    background-image: linear-gradient(to bottom, var(--dark-card), var(--dark-input));
    border-color: var(--border-color);
}

.dark .bg-yellow-50.border.border-yellow-100 {
    background-color: rgba(161, 98, 7, 0.2);
    border-color: rgba(161, 98, 7, 0.3);
    color: #FBBF24;
}

.dark .text-yellow-600 {
    color: #F59E0B;
}

/* 深色模式下的搜索框提示 */
.dark #search-hint {
    color: #718096;
}

.dark #search-hint i {
    color: #F59E0B;
}

.dark .absolute.left-14.text-yellow-500 {
    color: #F59E0B;
    border-color: #4B5563;
} 