|
| 1 | +--- |
| 2 | +layout: null |
| 3 | +--- |
| 4 | + |
| 5 | +/* Dark Mode Styles */ |
| 6 | + |
| 7 | +/* Root variables for color scheme */ |
| 8 | +:root { |
| 9 | + --bg-color: {{ site.page-col | default: "#FFFFFF" }}; |
| 10 | + --text-color: {{ site.text-col | default: "#404040" }}; |
| 11 | + --link-color: {{ site.link-col | default: "#008AFF" }}; |
| 12 | + --hover-color: {{ site.hover-col | default: "#0085A1" }}; |
| 13 | + --navbar-bg: {{ site.navbar-col | default: "#EAEAEA" }}; |
| 14 | + --navbar-text: {{ site.navbar-text-col | default: "#404040" }}; |
| 15 | + --footer-bg: {{ site.footer-col | default: "#EAEAEA" }}; |
| 16 | + --footer-text: {{ site.footer-text-col | default: "#777777" }}; |
| 17 | + --border-color: #DDDDDD; |
| 18 | + --code-bg: #F5F5F5; |
| 19 | + --blockquote-color: #808080; |
| 20 | +} |
| 21 | + |
| 22 | +/* Dark mode color scheme */ |
| 23 | +[data-theme="dark"] { |
| 24 | + --bg-color: #1a1a1a; |
| 25 | + --text-color: #e0e0e0; |
| 26 | + --link-color: #4da3ff; |
| 27 | + --hover-color: #6bb6ff; |
| 28 | + --navbar-bg: #2d2d2d; |
| 29 | + --navbar-text: #e0e0e0; |
| 30 | + --footer-bg: #2d2d2d; |
| 31 | + --footer-text: #b0b0b0; |
| 32 | + --border-color: #404040; |
| 33 | + --code-bg: #2d2d2d; |
| 34 | + --blockquote-color: #b0b0b0; |
| 35 | +} |
| 36 | + |
| 37 | +/* Apply color variables */ |
| 38 | +body { |
| 39 | + background-color: var(--bg-color); |
| 40 | + color: var(--text-color); |
| 41 | + transition: background-color 0.3s ease, color 0.3s ease; |
| 42 | +} |
| 43 | + |
| 44 | +a { |
| 45 | + color: var(--link-color); |
| 46 | +} |
| 47 | + |
| 48 | +a:hover, |
| 49 | +a:focus { |
| 50 | + color: var(--hover-color); |
| 51 | +} |
| 52 | + |
| 53 | +blockquote { |
| 54 | + color: var(--blockquote-color); |
| 55 | +} |
| 56 | + |
| 57 | +/* Navbar dark mode */ |
| 58 | +.navbar-custom { |
| 59 | + background-color: var(--navbar-bg); |
| 60 | + border-bottom: 1px solid var(--border-color); |
| 61 | + transition: background-color 0.3s ease; |
| 62 | +} |
| 63 | + |
| 64 | +.navbar-custom .navbar-brand, |
| 65 | +.navbar-custom .navbar-nav .nav-link { |
| 66 | + color: var(--navbar-text); |
| 67 | +} |
| 68 | + |
| 69 | +.navbar-custom .navbar-nav .nav-link:hover, |
| 70 | +.navbar-custom .navbar-nav .nav-link:focus { |
| 71 | + color: var(--hover-color); |
| 72 | +} |
| 73 | + |
| 74 | +/* Footer dark mode */ |
| 75 | +footer { |
| 76 | + background-color: var(--footer-bg); |
| 77 | + border-top: 1px solid var(--border-color); |
| 78 | + color: var(--footer-text); |
| 79 | + transition: background-color 0.3s ease; |
| 80 | +} |
| 81 | + |
| 82 | +footer a { |
| 83 | + color: var(--footer-text); |
| 84 | +} |
| 85 | + |
| 86 | +footer a:hover { |
| 87 | + color: var(--hover-color); |
| 88 | +} |
| 89 | + |
| 90 | +/* Code blocks dark mode */ |
| 91 | +[data-theme="dark"] pre, |
| 92 | +[data-theme="dark"] code { |
| 93 | + background-color: var(--code-bg); |
| 94 | + color: #f8f8f2; |
| 95 | + border-color: var(--border-color); |
| 96 | +} |
| 97 | + |
| 98 | +[data-theme="dark"] .highlight { |
| 99 | + background-color: var(--code-bg); |
| 100 | +} |
| 101 | + |
| 102 | +/* Post content dark mode */ |
| 103 | +[data-theme="dark"] .post-preview { |
| 104 | + border-bottom: 1px solid var(--border-color); |
| 105 | +} |
| 106 | + |
| 107 | +[data-theme="dark"] .blog-tags a { |
| 108 | + background-color: var(--code-bg); |
| 109 | + color: var(--text-color); |
| 110 | + border: 1px solid var(--border-color); |
| 111 | +} |
| 112 | + |
| 113 | +[data-theme="dark"] .blog-tags a:hover { |
| 114 | + background-color: var(--navbar-bg); |
| 115 | + color: var(--hover-color); |
| 116 | +} |
| 117 | + |
| 118 | +/* Pagination dark mode */ |
| 119 | +[data-theme="dark"] .pagination .page-item .page-link { |
| 120 | + background-color: var(--navbar-bg); |
| 121 | + color: var(--text-color); |
| 122 | + border: 1px solid var(--border-color); |
| 123 | +} |
| 124 | + |
| 125 | +[data-theme="dark"] .pagination .page-item.active .page-link { |
| 126 | + background-color: var(--link-color); |
| 127 | + border-color: var(--link-color); |
| 128 | +} |
| 129 | + |
| 130 | +/* Table dark mode */ |
| 131 | +[data-theme="dark"] table { |
| 132 | + color: var(--text-color); |
| 133 | +} |
| 134 | + |
| 135 | +[data-theme="dark"] table thead { |
| 136 | + background-color: var(--navbar-bg); |
| 137 | +} |
| 138 | + |
| 139 | +[data-theme="dark"] table tbody tr { |
| 140 | + border-bottom: 1px solid var(--border-color); |
| 141 | +} |
| 142 | + |
| 143 | +[data-theme="dark"] table tbody tr:hover { |
| 144 | + background-color: var(--navbar-bg); |
| 145 | +} |
| 146 | + |
| 147 | +/* Dark mode toggle button */ |
| 148 | +.dark-mode-toggle { |
| 149 | + position: relative; |
| 150 | + width: 50px; |
| 151 | + height: 50px; |
| 152 | + cursor: pointer; |
| 153 | + display: flex; |
| 154 | + align-items: center; |
| 155 | + justify-content: center; |
| 156 | + color: var(--navbar-text); |
| 157 | + font-size: 1.5rem; |
| 158 | + transition: color 0.3s ease; |
| 159 | + border: none; |
| 160 | + background: transparent; |
| 161 | + margin-left: 1rem; |
| 162 | +} |
| 163 | + |
| 164 | +.dark-mode-toggle:hover { |
| 165 | + color: var(--hover-color); |
| 166 | +} |
| 167 | + |
| 168 | +.dark-mode-toggle i { |
| 169 | + transition: transform 0.3s ease; |
| 170 | +} |
| 171 | + |
| 172 | +.dark-mode-toggle:hover i { |
| 173 | + transform: rotate(20deg); |
| 174 | +} |
| 175 | + |
| 176 | +/* Responsive adjustments */ |
| 177 | +@media (max-width: 767px) { |
| 178 | + .dark-mode-toggle { |
| 179 | + margin-left: 0; |
| 180 | + padding: 0.5rem; |
| 181 | + } |
| 182 | +} |
| 183 | + |
| 184 | +/* Image adjustments for dark mode */ |
| 185 | +[data-theme="dark"] img { |
| 186 | + opacity: 0.9; |
| 187 | +} |
| 188 | + |
| 189 | +[data-theme="dark"] img:hover { |
| 190 | + opacity: 1; |
| 191 | +} |
| 192 | + |
| 193 | +/* Search box dark mode */ |
| 194 | +[data-theme="dark"] #nav-search-box { |
| 195 | + background-color: var(--navbar-bg); |
| 196 | + color: var(--text-color); |
| 197 | + border: 1px solid var(--border-color); |
| 198 | +} |
| 199 | + |
| 200 | +[data-theme="dark"] #search-results-container { |
| 201 | + background-color: var(--navbar-bg); |
| 202 | + border: 1px solid var(--border-color); |
| 203 | +} |
| 204 | + |
| 205 | +[data-theme="dark"] #search-results-container a { |
| 206 | + color: var(--link-color); |
| 207 | +} |
| 208 | + |
| 209 | +/* Card styles for dark mode */ |
| 210 | +[data-theme="dark"] .card { |
| 211 | + background-color: var(--navbar-bg); |
| 212 | + border: 1px solid var(--border-color); |
| 213 | +} |
| 214 | + |
| 215 | +/* Dropdown menu dark mode */ |
| 216 | +[data-theme="dark"] .dropdown-menu { |
| 217 | + background-color: var(--navbar-bg); |
| 218 | + border: 1px solid var(--border-color); |
| 219 | +} |
| 220 | + |
| 221 | +[data-theme="dark"] .dropdown-item { |
| 222 | + color: var(--text-color); |
| 223 | +} |
| 224 | + |
| 225 | +[data-theme="dark"] .dropdown-item:hover { |
| 226 | + background-color: var(--code-bg); |
| 227 | + color: var(--hover-color); |
| 228 | +} |
| 229 | + |
| 230 | +/* Smooth transitions for theme switching */ |
| 231 | +* { |
| 232 | + transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease; |
| 233 | +} |
| 234 | + |
| 235 | +/* Preserve syntax highlighting colors in dark mode */ |
| 236 | +[data-theme="dark"] .highlight .c { color: #6a9955; } /* Comment */ |
| 237 | +[data-theme="dark"] .highlight .k { color: #569cd6; } /* Keyword */ |
| 238 | +[data-theme="dark"] .highlight .s { color: #ce9178; } /* String */ |
| 239 | +[data-theme="dark"] .highlight .n { color: #9cdcfe; } /* Name */ |
| 240 | +[data-theme="dark"] .highlight .o { color: #d4d4d4; } /* Operator */ |
| 241 | +[data-theme="dark"] .highlight .m { color: #b5cea8; } /* Number */ |
0 commit comments