diff --git a/fet2020/static/css/styles.css b/fet2020/static/css/styles.css index 0c326f5e..9cb3de0a 100644 --- a/fet2020/static/css/styles.css +++ b/fet2020/static/css/styles.css @@ -585,11 +585,9 @@ body { caret-color: #006599; } -@media (prefers-color-scheme: dark) { - body { - --tw-bg-opacity: 1; - background-color: rgb(17 24 39 / var(--tw-bg-opacity)); - } +.dark body { + --tw-bg-opacity: 1; + background-color: rgb(17 24 39 / var(--tw-bg-opacity)); } p a { @@ -606,13 +604,11 @@ p a:hover { text-decoration-thickness: 2px; } -@media (prefers-color-scheme: dark) { - p a { - --tw-text-opacity: 1; - color: rgb(71 194 255 / var(--tw-text-opacity)); - -webkit-text-decoration-color: #0369a1; - text-decoration-color: #0369a1; - } +.dark p a { + --tw-text-opacity: 1; + color: rgb(71 194 255 / var(--tw-text-opacity)); + -webkit-text-decoration-color: #0369a1; + text-decoration-color: #0369a1; } *, ::before, ::after { @@ -801,11 +797,9 @@ p a:hover { box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); } -@media (prefers-color-scheme: dark) { - [class^=navBar] { - --tw-bg-opacity: 1; - background-color: rgb(31 41 55 / var(--tw-bg-opacity)); - } +.dark [class^=navBar] { + --tw-bg-opacity: 1; + background-color: rgb(31 41 55 / var(--tw-bg-opacity)); } [class^=navBar] > div { @@ -869,11 +863,9 @@ p a:hover { color: rgb(0 101 153 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .searchbar-toggle { - --tw-text-opacity: 1; - color: rgb(71 194 255 / var(--tw-text-opacity)); - } +.dark .searchbar-toggle { + --tw-text-opacity: 1; + color: rgb(71 194 255 / var(--tw-text-opacity)); } .navbar-toggle { @@ -886,11 +878,9 @@ p a:hover { color: rgb(0 101 153 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .navbar-toggle { - --tw-text-opacity: 1; - color: rgb(71 194 255 / var(--tw-text-opacity)); - } +.dark .navbar-toggle { + --tw-text-opacity: 1; + color: rgb(71 194 255 / var(--tw-text-opacity)); } .navbar-content { @@ -901,11 +891,9 @@ p a:hover { color: rgb(0 101 153 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .navbar-content { - --tw-text-opacity: 1; - color: rgb(71 194 255 / var(--tw-text-opacity)); - } +.dark .navbar-content { + --tw-text-opacity: 1; + color: rgb(71 194 255 / var(--tw-text-opacity)); } .navbar-content > li { @@ -938,13 +926,11 @@ p a:hover { color: rgb(0 85 128 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .navbar-content li.active { - --tw-bg-opacity: 1; - background-color: rgb(55 65 81 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(102 204 255 / var(--tw-text-opacity)); - } +.dark .navbar-content li.active { + --tw-bg-opacity: 1; + background-color: rgb(55 65 81 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(102 204 255 / var(--tw-text-opacity)); } .navbar-content li.active a { @@ -978,11 +964,9 @@ p a:hover { color: rgb(239 246 255 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .navbar-subcontentButton > :not([hidden]) ~ :not([hidden]) { - --tw-divide-opacity: 1; - border-color: rgb(0 139 209 / var(--tw-divide-opacity)); - } +.dark .navbar-subcontentButton > :not([hidden]) ~ :not([hidden]) { + --tw-divide-opacity: 1; + border-color: rgb(0 139 209 / var(--tw-divide-opacity)); } .navbar-subcontentButton a { @@ -998,10 +982,8 @@ p a:hover { background-color: rgb(255 255 255 / var(--tw-bg-opacity)); } -@media (prefers-color-scheme: dark) { - .navbar-subcontentList { - background-color: transparent; - } +.dark .navbar-subcontentList { + background-color: transparent; } @media (min-width: 640px) { @@ -1065,16 +1047,14 @@ p a:hover { background-color: rgb(0 85 128 / var(--tw-bg-opacity)); } -@media (prefers-color-scheme: dark) { - .navBar-sm .navbar-subcontentButton a:hover { - --tw-bg-opacity: 1; - background-color: rgb(0 68 102 / var(--tw-bg-opacity)); - } +.dark .navBar-sm .navbar-subcontentButton a:hover { + --tw-bg-opacity: 1; + background-color: rgb(0 68 102 / var(--tw-bg-opacity)); +} - .navBar-sm .navbar-subcontentButton a:active { - --tw-bg-opacity: 1; - background-color: rgb(0 68 102 / var(--tw-bg-opacity)); - } +.dark .navBar-sm .navbar-subcontentButton a:active { + --tw-bg-opacity: 1; + background-color: rgb(0 68 102 / var(--tw-bg-opacity)); } @media (min-width: 640px) { @@ -1090,16 +1070,12 @@ p a:hover { --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); } -} -@media (prefers-color-scheme: dark) { - @media (min-width: 640px) { - .navBar-sm .navbar-subcontentList { - --tw-bg-opacity: 1; - background-color: rgb(55 65 81 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(102 204 255 / var(--tw-text-opacity)); - } + .dark .navBar-sm .navbar-subcontentList { + --tw-bg-opacity: 1; + background-color: rgb(55 65 81 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(102 204 255 / var(--tw-text-opacity)); } } @@ -1164,16 +1140,14 @@ p a:hover { background-color: rgb(0 85 128 / var(--tw-bg-opacity)); } -@media (prefers-color-scheme: dark) { - .navBar-md .navbar-subcontentButton a:hover { - --tw-bg-opacity: 1; - background-color: rgb(0 68 102 / var(--tw-bg-opacity)); - } +.dark .navBar-md .navbar-subcontentButton a:hover { + --tw-bg-opacity: 1; + background-color: rgb(0 68 102 / var(--tw-bg-opacity)); +} - .navBar-md .navbar-subcontentButton a:active { - --tw-bg-opacity: 1; - background-color: rgb(0 68 102 / var(--tw-bg-opacity)); - } +.dark .navBar-md .navbar-subcontentButton a:active { + --tw-bg-opacity: 1; + background-color: rgb(0 68 102 / var(--tw-bg-opacity)); } @media (min-width: 768px) { @@ -1189,16 +1163,12 @@ p a:hover { --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); } -} -@media (prefers-color-scheme: dark) { - @media (min-width: 768px) { - .navBar-md .navbar-subcontentList { - --tw-bg-opacity: 1; - background-color: rgb(55 65 81 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(102 204 255 / var(--tw-text-opacity)); - } + .dark .navBar-md .navbar-subcontentList { + --tw-bg-opacity: 1; + background-color: rgb(55 65 81 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(102 204 255 / var(--tw-text-opacity)); } } @@ -1273,16 +1243,14 @@ p a:hover { background-color: rgb(0 85 128 / var(--tw-bg-opacity)); } -@media (prefers-color-scheme: dark) { - .navBar-lg .navbar-subcontentButton a:hover { - --tw-bg-opacity: 1; - background-color: rgb(0 68 102 / var(--tw-bg-opacity)); - } +.dark .navBar-lg .navbar-subcontentButton a:hover { + --tw-bg-opacity: 1; + background-color: rgb(0 68 102 / var(--tw-bg-opacity)); +} - .navBar-lg .navbar-subcontentButton a:active { - --tw-bg-opacity: 1; - background-color: rgb(0 68 102 / var(--tw-bg-opacity)); - } +.dark .navBar-lg .navbar-subcontentButton a:active { + --tw-bg-opacity: 1; + background-color: rgb(0 68 102 / var(--tw-bg-opacity)); } @media (min-width: 1024px) { @@ -1298,16 +1266,12 @@ p a:hover { --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); } -} -@media (prefers-color-scheme: dark) { - @media (min-width: 1024px) { - .navBar-lg .navbar-subcontentList { - --tw-bg-opacity: 1; - background-color: rgb(55 65 81 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(102 204 255 / var(--tw-text-opacity)); - } + .dark .navBar-lg .navbar-subcontentList { + --tw-bg-opacity: 1; + background-color: rgb(55 65 81 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(102 204 255 / var(--tw-text-opacity)); } } @@ -1332,11 +1296,9 @@ p a:hover { color: rgb(0 101 153 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .page-title { - --tw-text-opacity: 1; - color: rgb(71 194 255 / var(--tw-text-opacity)); - } +.dark .page-title { + --tw-text-opacity: 1; + color: rgb(71 194 255 / var(--tw-text-opacity)); } @media (min-width: 640px) { @@ -1419,25 +1381,23 @@ p a:hover { --tw-ring-color: rgb(0 139 209 / var(--tw-ring-opacity)); } -@media (prefers-color-scheme: dark) { - .btn-primary { - --tw-bg-opacity: 1; - background-color: rgb(0 68 102 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(191 219 254 / var(--tw-text-opacity)); - } +.dark .btn-primary { + --tw-bg-opacity: 1; + background-color: rgb(0 68 102 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(191 219 254 / var(--tw-text-opacity)); +} - .btn-primary:hover { - --tw-bg-opacity: 1; - background-color: rgb(0 51 77 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(147 197 253 / var(--tw-text-opacity)); - } +.dark .btn-primary:hover { + --tw-bg-opacity: 1; + background-color: rgb(0 51 77 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(147 197 253 / var(--tw-text-opacity)); +} - .btn-primary:focus { - --tw-ring-opacity: 1; - --tw-ring-color: rgb(0 101 153 / var(--tw-ring-opacity)); - } +.dark .btn-primary:focus { + --tw-ring-opacity: 1; + --tw-ring-color: rgb(0 101 153 / var(--tw-ring-opacity)); } .btn-success { @@ -1464,25 +1424,23 @@ p a:hover { --tw-ring-color: rgb(22 163 74 / var(--tw-ring-opacity)); } -@media (prefers-color-scheme: dark) { - .btn-success { - --tw-bg-opacity: 1; - background-color: rgb(22 101 52 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(187 247 208 / var(--tw-text-opacity)); - } +.dark .btn-success { + --tw-bg-opacity: 1; + background-color: rgb(22 101 52 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(187 247 208 / var(--tw-text-opacity)); +} - .btn-success:hover { - --tw-bg-opacity: 1; - background-color: rgb(20 83 45 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(134 239 172 / var(--tw-text-opacity)); - } +.dark .btn-success:hover { + --tw-bg-opacity: 1; + background-color: rgb(20 83 45 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(134 239 172 / var(--tw-text-opacity)); +} - .btn-success:focus { - --tw-ring-opacity: 1; - --tw-ring-color: rgb(22 163 74 / var(--tw-ring-opacity)); - } +.dark .btn-success:focus { + --tw-ring-opacity: 1; + --tw-ring-color: rgb(22 163 74 / var(--tw-ring-opacity)); } .btn-error { @@ -1509,25 +1467,23 @@ p a:hover { --tw-ring-color: rgb(220 38 38 / var(--tw-ring-opacity)); } -@media (prefers-color-scheme: dark) { - .btn-error { - --tw-bg-opacity: 1; - background-color: rgb(153 27 27 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(254 202 202 / var(--tw-text-opacity)); - } +.dark .btn-error { + --tw-bg-opacity: 1; + background-color: rgb(153 27 27 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(254 202 202 / var(--tw-text-opacity)); +} - .btn-error:hover { - --tw-bg-opacity: 1; - background-color: rgb(127 29 29 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(252 165 165 / var(--tw-text-opacity)); - } +.dark .btn-error:hover { + --tw-bg-opacity: 1; + background-color: rgb(127 29 29 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(252 165 165 / var(--tw-text-opacity)); +} - .btn-error:focus { - --tw-ring-opacity: 1; - --tw-ring-color: rgb(220 38 38 / var(--tw-ring-opacity)); - } +.dark .btn-error:focus { + --tw-ring-opacity: 1; + --tw-ring-color: rgb(220 38 38 / var(--tw-ring-opacity)); } .btn-secondary { @@ -1538,13 +1494,11 @@ p a:hover { color: rgb(55 65 81 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .btn-secondary { - --tw-border-opacity: 1; - border-color: rgb(156 163 175 / var(--tw-border-opacity)); - --tw-text-opacity: 1; - color: rgb(156 163 175 / var(--tw-text-opacity)); - } +.dark .btn-secondary { + --tw-border-opacity: 1; + border-color: rgb(156 163 175 / var(--tw-border-opacity)); + --tw-text-opacity: 1; + color: rgb(156 163 175 / var(--tw-text-opacity)); } .btn-secondary-proprietary { @@ -1555,13 +1509,11 @@ p a:hover { color: rgb(0 101 153 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .btn-secondary-proprietary { - --tw-border-opacity: 1; - border-color: rgb(14 165 233 / var(--tw-border-opacity)); - --tw-text-opacity: 1; - color: rgb(14 165 233 / var(--tw-text-opacity)); - } +.dark .btn-secondary-proprietary { + --tw-border-opacity: 1; + border-color: rgb(14 165 233 / var(--tw-border-opacity)); + --tw-text-opacity: 1; + color: rgb(14 165 233 / var(--tw-text-opacity)); } /***** SECTION *****/ @@ -1575,11 +1527,9 @@ p a:hover { color: rgb(31 41 55 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .section-title { - --tw-text-opacity: 1; - color: rgb(243 244 246 / var(--tw-text-opacity)); - } +.dark .section-title { + --tw-text-opacity: 1; + color: rgb(243 244 246 / var(--tw-text-opacity)); } @media (min-width: 768px) { @@ -1604,11 +1554,9 @@ ul.sideBarNav { color: rgb(55 65 81 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - ul.sideBarNav { - --tw-text-opacity: 1; - color: rgb(229 231 235 / var(--tw-text-opacity)); - } +.dark ul.sideBarNav { + --tw-text-opacity: 1; + color: rgb(229 231 235 / var(--tw-text-opacity)); } ul.sideBarNav > li > a { @@ -1622,11 +1570,9 @@ ul.sideBarNav > li > a:hover { background-color: rgb(209 213 219 / var(--tw-bg-opacity)); } -@media (prefers-color-scheme: dark) { - ul.sideBarNav > li > a:hover { - --tw-bg-opacity: 1; - background-color: rgb(55 65 81 / var(--tw-bg-opacity)); - } +.dark ul.sideBarNav > li > a:hover { + --tw-bg-opacity: 1; + background-color: rgb(55 65 81 / var(--tw-bg-opacity)); } ul.sideBarNav > li.active > a { @@ -1637,13 +1583,11 @@ ul.sideBarNav > li.active > a { color: rgb(31 41 55 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - ul.sideBarNav > li.active > a { - --tw-bg-opacity: 1; - background-color: rgb(55 65 81 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(243 244 246 / var(--tw-text-opacity)); - } +.dark ul.sideBarNav > li.active > a { + --tw-bg-opacity: 1; + background-color: rgb(55 65 81 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(243 244 246 / var(--tw-text-opacity)); } ul.sideBarNav > li.internalLI > a { @@ -1666,11 +1610,9 @@ ul.sideBarNav > hr { border-color: rgb(209 213 219 / var(--tw-border-opacity)); } -@media (prefers-color-scheme: dark) { - ul.sideBarNav > hr { - --tw-border-opacity: 1; - border-color: rgb(55 65 81 / var(--tw-border-opacity)); - } +.dark ul.sideBarNav > hr { + --tw-border-opacity: 1; + border-color: rgb(55 65 81 / var(--tw-border-opacity)); } ul.sideBarNav > ul { @@ -1696,11 +1638,9 @@ ul.sideBarNav > ul > li > a:hover { background-color: rgb(229 231 235 / var(--tw-bg-opacity)); } -@media (prefers-color-scheme: dark) { - ul.sideBarNav > ul > li > a:hover { - --tw-bg-opacity: 1; - background-color: rgb(31 41 55 / var(--tw-bg-opacity)); - } +.dark ul.sideBarNav > ul > li > a:hover { + --tw-bg-opacity: 1; + background-color: rgb(31 41 55 / var(--tw-bg-opacity)); } ul.sideBarNav > ul > li.active > a { @@ -1717,13 +1657,11 @@ ul.sideBarNav > ul > li.active > a:first-child { border-top-right-radius: 0.25rem; } -@media (prefers-color-scheme: dark) { - ul.sideBarNav > ul > li.active > a { - --tw-border-opacity: 1; - border-color: rgb(55 65 81 / var(--tw-border-opacity)); - --tw-bg-opacity: 1; - background-color: rgb(31 41 55 / var(--tw-bg-opacity)); - } +.dark ul.sideBarNav > ul > li.active > a { + --tw-border-opacity: 1; + border-color: rgb(55 65 81 / var(--tw-border-opacity)); + --tw-bg-opacity: 1; + background-color: rgb(31 41 55 / var(--tw-bg-opacity)); } /***** CALENDAR *****/ @@ -1767,13 +1705,11 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(240 249 255 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .calendar-dateBubble { - --tw-bg-opacity: 1; - background-color: rgb(12 74 110 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(224 242 254 / var(--tw-text-opacity)); - } +.dark .calendar-dateBubble { + --tw-bg-opacity: 1; + background-color: rgb(12 74 110 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(224 242 254 / var(--tw-text-opacity)); } .calendar-dateBubble .dateBubble-day { @@ -1790,11 +1726,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(224 242 254 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .calendar-dateBubble .dateBubble-month { - --tw-text-opacity: 1; - color: rgb(186 230 253 / var(--tw-text-opacity)); - } +.dark .calendar-dateBubble .dateBubble-month { + --tw-text-opacity: 1; + color: rgb(186 230 253 / var(--tw-text-opacity)); } .calendar-entry > h3 { @@ -1803,11 +1737,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(55 65 81 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .calendar-entry > h3 { - --tw-text-opacity: 1; - color: rgb(229 231 235 / var(--tw-text-opacity)); - } +.dark .calendar-entry > h3 { + --tw-text-opacity: 1; + color: rgb(229 231 235 / var(--tw-text-opacity)); } /***** ARTICLE PREVIEW *****/ @@ -1829,11 +1761,9 @@ ul.sideBarNav > ul > li.active > a:first-child { transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); } -@media (prefers-color-scheme: dark) { - .article-cover-image { - --tw-bg-opacity: 1; - background-color: rgb(75 85 99 / var(--tw-bg-opacity)); - } +.dark .article-cover-image { + --tw-bg-opacity: 1; + background-color: rgb(75 85 99 / var(--tw-bg-opacity)); } .article-cover-image { @@ -1883,16 +1813,14 @@ ul.sideBarNav > ul > li.active > a:first-child { background-color: rgb(0 85 128 / var(--tw-bg-opacity)); } -@media (prefers-color-scheme: dark) { - .article-cover-tags > li { - --tw-bg-opacity: 1; - background-color: rgb(12 74 110 / var(--tw-bg-opacity)); - } +.dark .article-cover-tags > li { + --tw-bg-opacity: 1; + background-color: rgb(12 74 110 / var(--tw-bg-opacity)); +} - .article-cover-tags > li:hover { - --tw-bg-opacity: 1; - background-color: rgb(7 89 133 / var(--tw-bg-opacity)); - } +.dark .article-cover-tags > li:hover { + --tw-bg-opacity: 1; + background-color: rgb(7 89 133 / var(--tw-bg-opacity)); } .article-cover-desc:hover, .article-cover-image:hover { @@ -1911,11 +1839,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(55 65 81 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - [class^=db-page-content] { - --tw-text-opacity: 1; - color: rgb(209 213 219 / var(--tw-text-opacity)); - } +.dark [class^=db-page-content] { + --tw-text-opacity: 1; + color: rgb(209 213 219 / var(--tw-text-opacity)); } [class^=db-page-content] + * { @@ -1946,11 +1872,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(55 65 81 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - [class^=db-page-content] ol { - --tw-text-opacity: 1; - color: rgb(209 213 219 / var(--tw-text-opacity)); - } +.dark [class^=db-page-content] ol { + --tw-text-opacity: 1; + color: rgb(209 213 219 / var(--tw-text-opacity)); } [class^=db-page-content] ul { @@ -1960,11 +1884,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(55 65 81 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - [class^=db-page-content] ul { - --tw-text-opacity: 1; - color: rgb(209 213 219 / var(--tw-text-opacity)); - } +.dark [class^=db-page-content] ul { + --tw-text-opacity: 1; + color: rgb(209 213 219 / var(--tw-text-opacity)); } [class^=db-page-content] h1 { @@ -1974,11 +1896,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(153 27 27 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - [class^=db-page-content] h1 { - --tw-text-opacity: 1; - color: rgb(254 202 202 / var(--tw-text-opacity)); - } +.dark [class^=db-page-content] h1 { + --tw-text-opacity: 1; + color: rgb(254 202 202 / var(--tw-text-opacity)); } [class^=db-page-content] h2, @@ -1992,15 +1912,13 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(31 41 55 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - [class^=db-page-content] h2, -[class^=db-page-content] h3, -[class^=db-page-content] h4, -[class^=db-page-content] h5, +.dark [class^=db-page-content] h2, .dark +[class^=db-page-content] h3, .dark +[class^=db-page-content] h4, .dark +[class^=db-page-content] h5, .dark [class^=db-page-content] h6 { - --tw-text-opacity: 1; - color: rgb(229 231 235 / var(--tw-text-opacity)); - } + --tw-text-opacity: 1; + color: rgb(229 231 235 / var(--tw-text-opacity)); } [class^=db-page-content] h2 { @@ -2038,13 +1956,11 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(133 77 14 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - [class^=db-page-content] mark { - --tw-bg-opacity: 1; - background-color: rgb(250 204 21 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(113 63 18 / var(--tw-text-opacity)); - } +.dark [class^=db-page-content] mark { + --tw-bg-opacity: 1; + background-color: rgb(250 204 21 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(113 63 18 / var(--tw-text-opacity)); } [class^=db-page-content] blockquote { @@ -2061,13 +1977,11 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(75 85 99 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - [class^=db-page-content] blockquote { - --tw-border-opacity: 1; - border-color: rgb(55 65 81 / var(--tw-border-opacity)); - --tw-text-opacity: 1; - color: rgb(156 163 175 / var(--tw-text-opacity)); - } +.dark [class^=db-page-content] blockquote { + --tw-border-opacity: 1; + border-color: rgb(55 65 81 / var(--tw-border-opacity)); + --tw-text-opacity: 1; + color: rgb(156 163 175 / var(--tw-text-opacity)); } [class^=db-page-content] blockquote > p::before { @@ -2093,16 +2007,14 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(75 85 99 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert { - border-width: 2px; - --tw-border-opacity: 1; - border-color: rgb(55 65 81 / var(--tw-border-opacity)); - --tw-bg-opacity: 1; - background-color: rgb(17 24 39 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(209 213 219 / var(--tw-text-opacity)); - } +.dark .alert { + border-width: 2px; + --tw-border-opacity: 1; + border-color: rgb(55 65 81 / var(--tw-border-opacity)); + --tw-bg-opacity: 1; + background-color: rgb(17 24 39 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(209 213 219 / var(--tw-text-opacity)); } .alert > .alert-icon { @@ -2115,11 +2027,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(209 213 219 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert > .alert-icon { - --tw-text-opacity: 1; - color: rgb(75 85 99 / var(--tw-text-opacity)); - } +.dark .alert > .alert-icon { + --tw-text-opacity: 1; + color: rgb(75 85 99 / var(--tw-text-opacity)); } @media (min-width: 640px) { @@ -2134,11 +2044,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(55 65 81 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert > .alert-title { - --tw-text-opacity: 1; - color: rgb(228 228 231 / var(--tw-text-opacity)); - } +.dark .alert > .alert-title { + --tw-text-opacity: 1; + color: rgb(228 228 231 / var(--tw-text-opacity)); } @media (min-width: 640px) { @@ -2174,15 +2082,13 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(29 78 216 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert.alert-info { - --tw-border-opacity: 1; - border-color: rgb(29 78 216 / var(--tw-border-opacity)); - --tw-bg-opacity: 1; - background-color: rgb(30 58 138 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(147 197 253 / var(--tw-text-opacity)); - } +.dark .alert.alert-info { + --tw-border-opacity: 1; + border-color: rgb(29 78 216 / var(--tw-border-opacity)); + --tw-bg-opacity: 1; + background-color: rgb(30 58 138 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(147 197 253 / var(--tw-text-opacity)); } .alert.alert-info > .alert-icon { @@ -2190,11 +2096,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(147 197 253 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert.alert-info > .alert-icon { - --tw-text-opacity: 1; - color: rgb(37 99 235 / var(--tw-text-opacity)); - } +.dark .alert.alert-info > .alert-icon { + --tw-text-opacity: 1; + color: rgb(37 99 235 / var(--tw-text-opacity)); } .alert.alert-info > .alert-title { @@ -2202,11 +2106,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(30 64 175 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert.alert-info > .alert-title { - --tw-text-opacity: 1; - color: rgb(191 219 254 / var(--tw-text-opacity)); - } +.dark .alert.alert-info > .alert-title { + --tw-text-opacity: 1; + color: rgb(191 219 254 / var(--tw-text-opacity)); } .alert.alert-success { @@ -2218,15 +2120,13 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(21 128 61 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert.alert-success { - --tw-border-opacity: 1; - border-color: rgb(21 128 61 / var(--tw-border-opacity)); - --tw-bg-opacity: 1; - background-color: rgb(20 83 45 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(134 239 172 / var(--tw-text-opacity)); - } +.dark .alert.alert-success { + --tw-border-opacity: 1; + border-color: rgb(21 128 61 / var(--tw-border-opacity)); + --tw-bg-opacity: 1; + background-color: rgb(20 83 45 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(134 239 172 / var(--tw-text-opacity)); } .alert.alert-success > .alert-icon { @@ -2234,11 +2134,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(134 239 172 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert.alert-success > .alert-icon { - --tw-text-opacity: 1; - color: rgb(22 163 74 / var(--tw-text-opacity)); - } +.dark .alert.alert-success > .alert-icon { + --tw-text-opacity: 1; + color: rgb(22 163 74 / var(--tw-text-opacity)); } .alert.alert-success > .alert-title { @@ -2246,11 +2144,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(22 101 52 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert.alert-success > .alert-title { - --tw-text-opacity: 1; - color: rgb(187 247 208 / var(--tw-text-opacity)); - } +.dark .alert.alert-success > .alert-title { + --tw-text-opacity: 1; + color: rgb(187 247 208 / var(--tw-text-opacity)); } .alert.alert-warning { @@ -2262,15 +2158,13 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(180 83 9 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert.alert-warning { - --tw-border-opacity: 1; - border-color: rgb(180 83 9 / var(--tw-border-opacity)); - --tw-bg-opacity: 1; - background-color: rgb(120 53 15 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(251 191 36 / var(--tw-text-opacity)); - } +.dark .alert.alert-warning { + --tw-border-opacity: 1; + border-color: rgb(180 83 9 / var(--tw-border-opacity)); + --tw-bg-opacity: 1; + background-color: rgb(120 53 15 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(251 191 36 / var(--tw-text-opacity)); } .alert.alert-warning > .alert-icon { @@ -2278,11 +2172,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(252 211 77 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert.alert-warning > .alert-icon { - --tw-text-opacity: 1; - color: rgb(217 119 6 / var(--tw-text-opacity)); - } +.dark .alert.alert-warning > .alert-icon { + --tw-text-opacity: 1; + color: rgb(217 119 6 / var(--tw-text-opacity)); } .alert.alert-warning > .alert-title { @@ -2290,11 +2182,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(133 77 14 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert.alert-warning > .alert-title { - --tw-text-opacity: 1; - color: rgb(252 211 77 / var(--tw-text-opacity)); - } +.dark .alert.alert-warning > .alert-title { + --tw-text-opacity: 1; + color: rgb(252 211 77 / var(--tw-text-opacity)); } .alert.alert-danger { @@ -2306,15 +2196,13 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(185 28 28 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert.alert-danger { - --tw-border-opacity: 1; - border-color: rgb(185 28 28 / var(--tw-border-opacity)); - --tw-bg-opacity: 1; - background-color: rgb(127 29 29 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(252 165 165 / var(--tw-text-opacity)); - } +.dark .alert.alert-danger { + --tw-border-opacity: 1; + border-color: rgb(185 28 28 / var(--tw-border-opacity)); + --tw-bg-opacity: 1; + background-color: rgb(127 29 29 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(252 165 165 / var(--tw-text-opacity)); } .alert.alert-danger > .alert-icon { @@ -2322,11 +2210,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(252 165 165 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert.alert-danger > .alert-icon { - --tw-text-opacity: 1; - color: rgb(220 38 38 / var(--tw-text-opacity)); - } +.dark .alert.alert-danger > .alert-icon { + --tw-text-opacity: 1; + color: rgb(220 38 38 / var(--tw-text-opacity)); } .alert.alert-danger > .alert-title { @@ -2334,11 +2220,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(153 27 27 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .alert.alert-danger > .alert-title { - --tw-text-opacity: 1; - color: rgb(254 202 202 / var(--tw-text-opacity)); - } +.dark .alert.alert-danger > .alert-title { + --tw-text-opacity: 1; + color: rgb(254 202 202 / var(--tw-text-opacity)); } /***** JOBSLIST *****/ @@ -2348,11 +2232,9 @@ ul.sideBarNav > ul > li.active > a:first-child { border-color: rgb(209 213 219 / var(--tw-border-opacity)); } -@media (prefers-color-scheme: dark) { - .jobsList hr { - --tw-border-opacity: 1; - border-color: rgb(75 85 99 / var(--tw-border-opacity)); - } +.dark .jobsList hr { + --tw-border-opacity: 1; + border-color: rgb(75 85 99 / var(--tw-border-opacity)); } .jobsList > a.jobsList-item { @@ -2384,14 +2266,10 @@ ul.sideBarNav > ul > li.active > a:first-child { --tw-bg-opacity: 1; background-color: rgb(249 250 251 / var(--tw-bg-opacity)); } -} -@media (prefers-color-scheme: dark) { - @media (min-width: 640px) { - .jobsList > a.jobsList-item:hover { - --tw-bg-opacity: 1; - background-color: rgb(31 41 55 / var(--tw-bg-opacity)); - } + .dark .jobsList > a.jobsList-item:hover { + --tw-bg-opacity: 1; + background-color: rgb(31 41 55 / var(--tw-bg-opacity)); } } @@ -2419,11 +2297,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(31 41 55 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .jobsList-desc h2 { - --tw-text-opacity: 1; - color: rgb(229 231 235 / var(--tw-text-opacity)); - } +.dark .jobsList-desc h2 { + --tw-text-opacity: 1; + color: rgb(229 231 235 / var(--tw-text-opacity)); } @media (min-width: 768px) { @@ -2440,11 +2316,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(75 85 99 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .jobsList-desc h3 { - --tw-text-opacity: 1; - color: rgb(209 213 219 / var(--tw-text-opacity)); - } +.dark .jobsList-desc h3 { + --tw-text-opacity: 1; + color: rgb(209 213 219 / var(--tw-text-opacity)); } @media (min-width: 768px) { @@ -2468,11 +2342,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(55 65 81 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .jobsList-value { - --tw-text-opacity: 1; - color: rgb(156 163 175 / var(--tw-text-opacity)); - } +.dark .jobsList-value { + --tw-text-opacity: 1; + color: rgb(156 163 175 / var(--tw-text-opacity)); } @media (min-width: 768px) { @@ -2480,14 +2352,10 @@ ul.sideBarNav > ul > li.active > a:first-child { --tw-text-opacity: 1; color: rgb(31 41 55 / var(--tw-text-opacity)); } -} -@media (prefers-color-scheme: dark) { - @media (min-width: 768px) { - .jobsList-value { - --tw-text-opacity: 1; - color: rgb(209 213 219 / var(--tw-text-opacity)); - } + .dark .jobsList-value { + --tw-text-opacity: 1; + color: rgb(209 213 219 / var(--tw-text-opacity)); } } @@ -2501,11 +2369,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(75 85 99 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .jobsList-amount { - --tw-text-opacity: 1; - color: rgb(209 213 219 / var(--tw-text-opacity)); - } +.dark .jobsList-amount { + --tw-text-opacity: 1; + color: rgb(209 213 219 / var(--tw-text-opacity)); } @media (min-width: 768px) { @@ -2524,11 +2390,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(156 163 175 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .jobsList-expand { - --tw-text-opacity: 1; - color: rgb(107 114 128 / var(--tw-text-opacity)); - } +.dark .jobsList-expand { + --tw-text-opacity: 1; + color: rgb(107 114 128 / var(--tw-text-opacity)); } /***** MEMBERS SECTIONS *****/ @@ -2554,11 +2418,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(2 132 199 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .members-article a.title [class*="fa-"] { - --tw-text-opacity: 1; - color: rgb(14 165 233 / var(--tw-text-opacity)); - } +.dark .members-article a.title [class*="fa-"] { + --tw-text-opacity: 1; + color: rgb(14 165 233 / var(--tw-text-opacity)); } @media (min-width: 640px) { @@ -2583,11 +2445,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(17 24 39 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .members-article a.title .members-section-title { - --tw-text-opacity: 1; - color: rgb(243 244 246 / var(--tw-text-opacity)); - } +.dark .members-article a.title .members-section-title { + --tw-text-opacity: 1; + color: rgb(243 244 246 / var(--tw-text-opacity)); } .members-article .members-listing { @@ -2600,11 +2460,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(0 85 128 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .members-article .members-listing { - --tw-text-opacity: 1; - color: rgb(71 194 255 / var(--tw-text-opacity)); - } +.dark .members-article .members-listing { + --tw-text-opacity: 1; + color: rgb(71 194 255 / var(--tw-text-opacity)); } @media (min-width: 640px) { @@ -2627,11 +2485,9 @@ ul.sideBarNav > ul > li.active > a:first-child { color: rgb(0 101 153 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - .members-article .members-listing figure figcaption > p { - --tw-text-opacity: 1; - color: rgb(0 139 209 / var(--tw-text-opacity)); - } +.dark .members-article .members-listing figure figcaption > p { + --tw-text-opacity: 1; + color: rgb(0 139 209 / var(--tw-text-opacity)); } .members-article .members-listing figure figcaption .member-name { @@ -2664,14 +2520,10 @@ ul.sideBarNav > ul > li.active > a:first-child { --tw-bg-opacity: 1; background-color: rgb(249 250 251 / var(--tw-bg-opacity)); } -} -@media (prefers-color-scheme: dark) { - @media (min-width: 640px) { - .documentList a:hover { - --tw-bg-opacity: 1; - background-color: rgb(31 41 55 / var(--tw-bg-opacity)); - } + .dark .documentList a:hover { + --tw-bg-opacity: 1; + background-color: rgb(31 41 55 / var(--tw-bg-opacity)); } } @@ -2692,13 +2544,11 @@ footer { color: rgb(219 234 254 / var(--tw-text-opacity)); } -@media (prefers-color-scheme: dark) { - footer { - --tw-bg-opacity: 1; - background-color: rgb(0 68 102 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(191 219 254 / var(--tw-text-opacity)); - } +.dark footer { + --tw-bg-opacity: 1; + background-color: rgb(0 68 102 / var(--tw-bg-opacity)); + --tw-text-opacity: 1; + color: rgb(191 219 254 / var(--tw-text-opacity)); } footer .icon-list { @@ -4304,242 +4154,240 @@ footer .copyright { background-size: 110%; } -@media (prefers-color-scheme: dark) { - .dark\:block { - display: block; - } +.dark .dark\:block { + display: block; +} - .dark\:hidden { - display: none; - } +.dark .dark\:hidden { + display: none; +} - .dark\:divide-x-2 > :not([hidden]) ~ :not([hidden]) { - --tw-divide-x-reverse: 0; - border-right-width: calc(2px * var(--tw-divide-x-reverse)); - border-left-width: calc(2px * calc(1 - var(--tw-divide-x-reverse))); - } +.dark .dark\:divide-x-2 > :not([hidden]) ~ :not([hidden]) { + --tw-divide-x-reverse: 0; + border-right-width: calc(2px * var(--tw-divide-x-reverse)); + border-left-width: calc(2px * calc(1 - var(--tw-divide-x-reverse))); +} - .dark\:divide-gray-600 > :not([hidden]) ~ :not([hidden]) { - --tw-divide-opacity: 1; - border-color: rgb(75 85 99 / var(--tw-divide-opacity)); - } +.dark .dark\:divide-gray-600 > :not([hidden]) ~ :not([hidden]) { + --tw-divide-opacity: 1; + border-color: rgb(75 85 99 / var(--tw-divide-opacity)); +} - .dark\:divide-gray-700 > :not([hidden]) ~ :not([hidden]) { - --tw-divide-opacity: 1; - border-color: rgb(55 65 81 / var(--tw-divide-opacity)); - } +.dark .dark\:divide-gray-700 > :not([hidden]) ~ :not([hidden]) { + --tw-divide-opacity: 1; + border-color: rgb(55 65 81 / var(--tw-divide-opacity)); +} - .dark\:divide-gray-800 > :not([hidden]) ~ :not([hidden]) { - --tw-divide-opacity: 1; - border-color: rgb(31 41 55 / var(--tw-divide-opacity)); - } +.dark .dark\:divide-gray-800 > :not([hidden]) ~ :not([hidden]) { + --tw-divide-opacity: 1; + border-color: rgb(31 41 55 / var(--tw-divide-opacity)); +} - .dark\:border-2 { - border-width: 2px; - } +.dark .dark\:border-2 { + border-width: 2px; +} - .dark\:border { - border-width: 1px; - } +.dark .dark\:border { + border-width: 1px; +} - .dark\:border-none { - border-style: none; - } +.dark .dark\:border-none { + border-style: none; +} - .dark\:border-gray-300 { - --tw-border-opacity: 1; - border-color: rgb(209 213 219 / var(--tw-border-opacity)); - } +.dark .dark\:border-gray-300 { + --tw-border-opacity: 1; + border-color: rgb(209 213 219 / var(--tw-border-opacity)); +} - .dark\:border-gray-700 { - --tw-border-opacity: 1; - border-color: rgb(55 65 81 / var(--tw-border-opacity)); - } +.dark .dark\:border-gray-700 { + --tw-border-opacity: 1; + border-color: rgb(55 65 81 / var(--tw-border-opacity)); +} - .dark\:border-gray-600 { - --tw-border-opacity: 1; - border-color: rgb(75 85 99 / var(--tw-border-opacity)); - } +.dark .dark\:border-gray-600 { + --tw-border-opacity: 1; + border-color: rgb(75 85 99 / var(--tw-border-opacity)); +} - .dark\:border-gray-500 { - --tw-border-opacity: 1; - border-color: rgb(107 114 128 / var(--tw-border-opacity)); - } +.dark .dark\:border-gray-500 { + --tw-border-opacity: 1; + border-color: rgb(107 114 128 / var(--tw-border-opacity)); +} - .dark\:border-gray-800 { - --tw-border-opacity: 1; - border-color: rgb(31 41 55 / var(--tw-border-opacity)); - } +.dark .dark\:border-gray-800 { + --tw-border-opacity: 1; + border-color: rgb(31 41 55 / var(--tw-border-opacity)); +} - .dark\:bg-proprietary-dark { - --tw-bg-opacity: 1; - background-color: rgb(0 85 128 / var(--tw-bg-opacity)); - } +.dark .dark\:bg-proprietary-dark { + --tw-bg-opacity: 1; + background-color: rgb(0 85 128 / var(--tw-bg-opacity)); +} - .dark\:bg-gray-800 { - --tw-bg-opacity: 1; - background-color: rgb(31 41 55 / var(--tw-bg-opacity)); - } +.dark .dark\:bg-gray-800 { + --tw-bg-opacity: 1; + background-color: rgb(31 41 55 / var(--tw-bg-opacity)); +} - .dark\:bg-sky-500 { - --tw-bg-opacity: 1; - background-color: rgb(14 165 233 / var(--tw-bg-opacity)); - } +.dark .dark\:bg-sky-500 { + --tw-bg-opacity: 1; + background-color: rgb(14 165 233 / var(--tw-bg-opacity)); +} - .dark\:bg-black { - --tw-bg-opacity: 1; - background-color: rgb(0 0 0 / var(--tw-bg-opacity)); - } +.dark .dark\:bg-black { + --tw-bg-opacity: 1; + background-color: rgb(0 0 0 / var(--tw-bg-opacity)); +} - .dark\:bg-proprietary { - --tw-bg-opacity: 1; - background-color: rgb(0 101 153 / var(--tw-bg-opacity)); - } +.dark .dark\:bg-proprietary { + --tw-bg-opacity: 1; + background-color: rgb(0 101 153 / var(--tw-bg-opacity)); +} - .dark\:bg-gray-700 { - --tw-bg-opacity: 1; - background-color: rgb(55 65 81 / var(--tw-bg-opacity)); - } +.dark .dark\:bg-gray-700 { + --tw-bg-opacity: 1; + background-color: rgb(55 65 81 / var(--tw-bg-opacity)); +} - .dark\:bg-sky-900 { - --tw-bg-opacity: 1; - background-color: rgb(12 74 110 / var(--tw-bg-opacity)); - } +.dark .dark\:bg-sky-900 { + --tw-bg-opacity: 1; + background-color: rgb(12 74 110 / var(--tw-bg-opacity)); +} - .dark\:bg-gray-900 { - --tw-bg-opacity: 1; - background-color: rgb(17 24 39 / var(--tw-bg-opacity)); - } +.dark .dark\:bg-gray-900 { + --tw-bg-opacity: 1; + background-color: rgb(17 24 39 / var(--tw-bg-opacity)); +} - .dark\:bg-gray-500 { - --tw-bg-opacity: 1; - background-color: rgb(107 114 128 / var(--tw-bg-opacity)); - } +.dark .dark\:bg-gray-500 { + --tw-bg-opacity: 1; + background-color: rgb(107 114 128 / var(--tw-bg-opacity)); +} - .dark\:bg-opacity-70 { - --tw-bg-opacity: 0.7; - } +.dark .dark\:bg-opacity-70 { + --tw-bg-opacity: 0.7; +} - .dark\:text-gray-300 { - --tw-text-opacity: 1; - color: rgb(209 213 219 / var(--tw-text-opacity)); - } +.dark .dark\:text-gray-300 { + --tw-text-opacity: 1; + color: rgb(209 213 219 / var(--tw-text-opacity)); +} - .dark\:text-gray-100 { - --tw-text-opacity: 1; - color: rgb(243 244 246 / var(--tw-text-opacity)); - } +.dark .dark\:text-gray-100 { + --tw-text-opacity: 1; + color: rgb(243 244 246 / var(--tw-text-opacity)); +} - .dark\:text-gray-200 { - --tw-text-opacity: 1; - color: rgb(229 231 235 / var(--tw-text-opacity)); - } +.dark .dark\:text-gray-200 { + --tw-text-opacity: 1; + color: rgb(229 231 235 / var(--tw-text-opacity)); +} - .dark\:text-gray-600 { - --tw-text-opacity: 1; - color: rgb(75 85 99 / var(--tw-text-opacity)); - } +.dark .dark\:text-gray-600 { + --tw-text-opacity: 1; + color: rgb(75 85 99 / var(--tw-text-opacity)); +} - .dark\:text-proprietary-lighter { - --tw-text-opacity: 1; - color: rgb(71 194 255 / var(--tw-text-opacity)); - } +.dark .dark\:text-proprietary-lighter { + --tw-text-opacity: 1; + color: rgb(71 194 255 / var(--tw-text-opacity)); +} - .dark\:text-blue-100 { - --tw-text-opacity: 1; - color: rgb(219 234 254 / var(--tw-text-opacity)); - } +.dark .dark\:text-blue-100 { + --tw-text-opacity: 1; + color: rgb(219 234 254 / var(--tw-text-opacity)); +} - .dark\:text-gray-400 { - --tw-text-opacity: 1; - color: rgb(156 163 175 / var(--tw-text-opacity)); - } +.dark .dark\:text-gray-400 { + --tw-text-opacity: 1; + color: rgb(156 163 175 / var(--tw-text-opacity)); +} - .dark\:text-sky-900 { - --tw-text-opacity: 1; - color: rgb(12 74 110 / var(--tw-text-opacity)); - } +.dark .dark\:text-sky-900 { + --tw-text-opacity: 1; + color: rgb(12 74 110 / var(--tw-text-opacity)); +} - .dark\:text-proprietary-lightest { - --tw-text-opacity: 1; - color: rgb(102 204 255 / var(--tw-text-opacity)); - } +.dark .dark\:text-proprietary-lightest { + --tw-text-opacity: 1; + color: rgb(102 204 255 / var(--tw-text-opacity)); +} - .dark\:text-gray-500 { - --tw-text-opacity: 1; - color: rgb(107 114 128 / var(--tw-text-opacity)); - } +.dark .dark\:text-gray-500 { + --tw-text-opacity: 1; + color: rgb(107 114 128 / var(--tw-text-opacity)); +} - .dark\:text-sky-300 { - --tw-text-opacity: 1; - color: rgb(125 211 252 / var(--tw-text-opacity)); - } +.dark .dark\:text-sky-300 { + --tw-text-opacity: 1; + color: rgb(125 211 252 / var(--tw-text-opacity)); +} - .dark\:text-sky-400 { - --tw-text-opacity: 1; - color: rgb(56 189 248 / var(--tw-text-opacity)); - } +.dark .dark\:text-sky-400 { + --tw-text-opacity: 1; + color: rgb(56 189 248 / var(--tw-text-opacity)); +} - .dark\:text-blue-200 { - --tw-text-opacity: 1; - color: rgb(191 219 254 / var(--tw-text-opacity)); - } +.dark .dark\:text-blue-200 { + --tw-text-opacity: 1; + color: rgb(191 219 254 / var(--tw-text-opacity)); +} - .dark\:text-proprietary-light { - --tw-text-opacity: 1; - color: rgb(0 139 209 / var(--tw-text-opacity)); - } +.dark .dark\:text-proprietary-light { + --tw-text-opacity: 1; + color: rgb(0 139 209 / var(--tw-text-opacity)); +} - .dark\:text-red-500 { - --tw-text-opacity: 1; - color: rgb(239 68 68 / var(--tw-text-opacity)); - } +.dark .dark\:text-red-500 { + --tw-text-opacity: 1; + color: rgb(239 68 68 / var(--tw-text-opacity)); +} - .dark\:shadow-none { - --tw-shadow: 0 0 #0000; - --tw-shadow-colored: 0 0 #0000; - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); - } +.dark .dark\:shadow-none { + --tw-shadow: 0 0 #0000; + --tw-shadow-colored: 0 0 #0000; + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} - .dark\:hover\:bg-gray-800:hover { - --tw-bg-opacity: 1; - background-color: rgb(31 41 55 / var(--tw-bg-opacity)); - } +.dark .dark\:hover\:bg-gray-800:hover { + --tw-bg-opacity: 1; + background-color: rgb(31 41 55 / var(--tw-bg-opacity)); +} - .dark\:hover\:text-gray-100:hover { - --tw-text-opacity: 1; - color: rgb(243 244 246 / var(--tw-text-opacity)); - } +.dark .dark\:hover\:text-gray-100:hover { + --tw-text-opacity: 1; + color: rgb(243 244 246 / var(--tw-text-opacity)); +} - .dark\:hover\:text-gray-200:hover { - --tw-text-opacity: 1; - color: rgb(229 231 235 / var(--tw-text-opacity)); - } +.dark .dark\:hover\:text-gray-200:hover { + --tw-text-opacity: 1; + color: rgb(229 231 235 / var(--tw-text-opacity)); +} - .dark\:focus\:ring-sky-700:focus { - --tw-ring-opacity: 1; - --tw-ring-color: rgb(3 105 161 / var(--tw-ring-opacity)); - } +.dark .dark\:focus\:ring-sky-700:focus { + --tw-ring-opacity: 1; + --tw-ring-color: rgb(3 105 161 / var(--tw-ring-opacity)); +} - .group:hover .dark\:group-hover\:border-gray-500 { - --tw-border-opacity: 1; - border-color: rgb(107 114 128 / var(--tw-border-opacity)); - } +.dark .group:hover .dark\:group-hover\:border-gray-500 { + --tw-border-opacity: 1; + border-color: rgb(107 114 128 / var(--tw-border-opacity)); +} - .group:hover .dark\:group-hover\:text-gray-400 { - --tw-text-opacity: 1; - color: rgb(156 163 175 / var(--tw-text-opacity)); - } +.dark .group:hover .dark\:group-hover\:text-gray-400 { + --tw-text-opacity: 1; + color: rgb(156 163 175 / var(--tw-text-opacity)); +} - .group:hover .dark\:group-hover\:text-proprietary-light { - --tw-text-opacity: 1; - color: rgb(0 139 209 / var(--tw-text-opacity)); - } +.dark .group:hover .dark\:group-hover\:text-proprietary-light { + --tw-text-opacity: 1; + color: rgb(0 139 209 / var(--tw-text-opacity)); +} - .group:hover .dark\:group-hover\:text-red-500 { - --tw-text-opacity: 1; - color: rgb(239 68 68 / var(--tw-text-opacity)); - } +.dark .group:hover .dark\:group-hover\:text-red-500 { + --tw-text-opacity: 1; + color: rgb(239 68 68 / var(--tw-text-opacity)); } @media (min-width: 640px) { @@ -4552,11 +4400,9 @@ footer .copyright { color: rgb(31 41 55 / var(--tw-text-opacity)); } - @media (prefers-color-scheme: dark) { - .sm\:section-title { - --tw-text-opacity: 1; - color: rgb(243 244 246 / var(--tw-text-opacity)); - } + .dark .sm\:section-title { + --tw-text-opacity: 1; + color: rgb(243 244 246 / var(--tw-text-opacity)); } @media (min-width: 768px) { @@ -4862,15 +4708,13 @@ footer .copyright { box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); } - @media (prefers-color-scheme: dark) { - .sm\:dark\:border-2 { - border-width: 2px; - } + .dark .sm\:dark\:border-2 { + border-width: 2px; + } - .sm\:dark\:border-gray-700 { - --tw-border-opacity: 1; - border-color: rgb(55 65 81 / var(--tw-border-opacity)); - } + .dark .sm\:dark\:border-gray-700 { + --tw-border-opacity: 1; + border-color: rgb(55 65 81 / var(--tw-border-opacity)); } } @@ -4946,14 +4790,10 @@ footer .copyright { .md\:text-inherit { color: inherit; } -} -@media (prefers-color-scheme: dark) { - @media (min-width: 768px) { - .dark\:md\:border-gray-600 { - --tw-border-opacity: 1; - border-color: rgb(75 85 99 / var(--tw-border-opacity)); - } + .dark .dark\:md\:border-gray-600 { + --tw-border-opacity: 1; + border-color: rgb(75 85 99 / var(--tw-border-opacity)); } } diff --git a/fet2020/static/js/dark-mode.js b/fet2020/static/js/dark-mode.js new file mode 100644 index 00000000..99e993ad --- /dev/null +++ b/fet2020/static/js/dark-mode.js @@ -0,0 +1,79 @@ +const prefersDark = window.matchMedia("(prefers-color-scheme: dark)").matches; + +function setTheme(mode) { + if (mode !== "light" && mode !== "dark" && mode !== "auto") { + mode = "auto"; + } + + var themeToggleAutoIcon = document.getElementById('theme-icon-when-auto'); + var themeToggleDarkIcon = document.getElementById('theme-icon-when-dark'); + var themeToggleLightIcon = document.getElementById('theme-icon-when-light'); + + themeToggleAutoIcon.classList.add('hidden'); + themeToggleDarkIcon.classList.add('hidden'); + themeToggleLightIcon.classList.add('hidden'); + + if (mode === "dark") { + themeToggleDarkIcon.classList.remove('hidden'); + document.documentElement.classList.add('dark'); + } else if (mode === "auto") { + themeToggleAutoIcon.classList.remove('hidden'); + + if(prefersDark) { + document.documentElement.classList.add('dark'); + } + else { + document.documentElement.classList.remove('dark'); + } + } else { + document.documentElement.classList.remove('dark'); + themeToggleLightIcon.classList.remove('hidden'); + } + + localStorage.setItem('color-theme', mode); +} + +function cycleTheme() { + const currentTheme = localStorage.getItem('color-theme') || "auto"; + + if (prefersDark) { + // Auto (dark) -> Light -> Dark + if (currentTheme === "auto") { + setTheme("light"); + } else if (currentTheme === "light") { + setTheme("dark"); + } else { + setTheme("auto"); + } + } else { + // Auto (light) -> Dark -> Light + if (currentTheme === "auto") { + setTheme("dark"); + } else if (currentTheme === "dark") { + setTheme("light"); + } else { + setTheme("auto"); + } + } +} + +function initTheme() { + // set theme defined in localStorage if there is one, or fallback to auto mode + const currentTheme = localStorage.getItem('color-theme'); + currentTheme ? setTheme(currentTheme) : setTheme("auto"); +} + +function setupTheme() { + // Attach event handlers for toggling themes + let buttons = document.getElementsByClassName("theme-toggle"); + for (var i = 0; i < buttons.length; i++) { + buttons[i].addEventListener("click", cycleTheme); + }; +} + + +initTheme(); + +document.addEventListener('DOMContentLoaded', function() { + setupTheme(); +}) diff --git a/fet2020/templates/base.html b/fet2020/templates/base.html index d1a9fa4e..247d6fc1 100644 --- a/fet2020/templates/base.html +++ b/fet2020/templates/base.html @@ -69,6 +69,19 @@
+