/**
 * Dark Mode Styles
 * 夜间模式样式 - 保护儿童视力
 */

/* Dark Mode Toggle Button */
.dark-mode-toggle {
    position: fixed;
    bottom: 100px;
    right: 10px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.8);
    border: none;
    cursor: pointer;
    z-index: 9999;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.dark-mode-toggle:hover {
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.dark-mode-toggle .sun-icon,
.dark-mode-toggle .moon-icon {
    position: absolute;
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.dark-mode-toggle .sun-icon {
    opacity: 1;
    transform: rotate(0deg);
    color: #ffd700;
}

.dark-mode-toggle .moon-icon {
    opacity: 0;
    transform: rotate(180deg);
    color: #64b5f6;
}

body.dark-mode .dark-mode-toggle {
    background: rgba(255, 255, 255, 0.9);
}

body.dark-mode .dark-mode-toggle .sun-icon {
    opacity: 0;
    transform: rotate(180deg);
}

body.dark-mode .dark-mode-toggle .moon-icon {
    opacity: 1;
    transform: rotate(0deg);
}

/* Dark Mode Base Styles */
body.dark-mode {
    background: #1a1a1a;
    color: #e0e0e0;
}

/* Header */
body.dark-mode .header-navigation {
    background: #2d2d2d;
    border-bottom-color: #444;
}

body.dark-mode .navbar {
    background-color: #1a1a1a;
    border-bottom-color: #333;
}

body.dark-mode .logo a {
    color: #64b5f6;
}

body.dark-mode nav ul li a {
    color: #e0e0e0;
}

body.dark-mode nav ul li a:hover {
    color: #64b5f6;
}

/* Main Content */
body.dark-mode .wrapper {
    background: #1a1a1a;
}

body.dark-mode main {
    background: #1a1a1a;
}

/* Blog List */
body.dark-mode .bloglist li {
    background: #2d2d2d;
    border-color: #444;
}

body.dark-mode .bloglist li:hover {
    background: #363636;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
}

body.dark-mode .bloglist h2,
body.dark-mode .bloglist dt a {
    color: #e0e0e0;
}

body.dark-mode .bloglist dt a:hover {
    color: #64b5f6;
}

body.dark-mode .bloginfo {
    color: #b0b0b0;
}

/* Sidebar */
body.dark-mode .sidebar {
    background: #1a1a1a;
}

body.dark-mode .widget {
    background: #2d2d2d;
    border-color: #444;
}

body.dark-mode .hometitle {
    background: #363636;
    color: #e0e0e0;
    border-color: #444;
}

body.dark-mode .cloud a {
    background: #363636;
    color: #b0b0b0;
}

body.dark-mode .cloud a:hover {
    background: #64b5f6;
    color: #fff;
}

/* Footer */
body.dark-mode footer {
    background: #2d2d2d;
    border-top-color: #444;
}

body.dark-mode .footer {
    background: #2d2d2d;
    color: #b0b0b0;
}

body.dark-mode .footer h2 {
    color: #e0e0e0;
}

/* Article Page */
body.dark-mode .infosbox {
    background: #2d2d2d;
}

body.dark-mode .newsview {
    background: #2d2d2d;
    color: #e0e0e0;
}

body.dark-mode .news_title {
    color: #e0e0e0;
}

body.dark-mode .news_con {
    color: #b0b0b0;
}

body.dark-mode .news_con a {
    color: #64b5f6;
}

body.dark-mode .news_con a:hover {
    color: #42a5f5;
}

/* Code Blocks */
body.dark-mode pre {
    background: #1e1e1e;
    border-color: #444;
}

body.dark-mode code {
    background: #1e1e1e;
    color: #e0e0e0;
}

/* Links */
body.dark-mode a {
    color: #64b5f6;
}

body.dark-mode a:hover {
    color: #42a5f5;
}

/* Input & Search */
body.dark-mode .input {
    background: #363636;
    color: #e0e0e0;
    border-color: #444;
}

body.dark-mode .input::placeholder {
    color: #808080;
}

/* Banner */
body.dark-mode .banner {
    opacity: 0.9;
}

/* Place (breadcrumb) */
body.dark-mode .place {
    background: #2d2d2d;
    color: #b0b0b0;
}

body.dark-mode .place a {
    color: #64b5f6;
}

/* Scroll to Top Button */
body.dark-mode .cd-top {
    background-color: rgba(255, 255, 255, 0.9);
}

/* Transitions for smooth mode switching */
body,
.header-navigation,
.navbar,
.bloglist li,
.widget,
.infosbox,
.newsview {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

