|
| 1 | +/* ==UserStyle== |
| 2 | +@name Rosé Pine for Advent of Code |
| 3 | +@description Soho vibes for Advent of Code |
| 4 | +@version 1.0.0 |
| 5 | +@license MIT |
| 6 | +@author Rosé Pine (https://github.com/rose-pine) |
| 7 | +@namespace https://github.com/rose-pine |
| 8 | +@homepageURL https://github.com/rose-pine/userstyles |
| 9 | +@updateURL https://github.com/rose-pine/userstyles/raw/main/styles/advent-of-code/rose-pine.user.less |
| 10 | +@preprocessor less |
| 11 | +
|
| 12 | +@var select lightVariant "Light Variant" ["main:Rosé Pine", "moon:Rosé Pine Moon", "dawn:Rosé Pine Dawn*"] |
| 13 | +@var select darkVariant "Dark Variant" ["main:Rosé Pine*", "moon:Rosé Pine Moon", "dawn:Rosé Pine Dawn"] |
| 14 | +@var text fontFamily "Font family" "'Source Code Pro'" |
| 15 | +==/UserStyle== */ |
| 16 | + |
| 17 | +@-moz-document domain("adventofcode.com") { |
| 18 | + :root { |
| 19 | + @media (prefers-color-scheme: light) { |
| 20 | + #rose-pine(@lightVariant); |
| 21 | + } |
| 22 | + @media (prefers-color-scheme: dark) { |
| 23 | + #rose-pine(@darkVariant); |
| 24 | + } |
| 25 | + } |
| 26 | + |
| 27 | + :root[data-theme="dark"] { |
| 28 | + #rose-pine(@darkVariant); |
| 29 | + } |
| 30 | + :root[data-theme="light"] { |
| 31 | + #rose-pine(@lightVariant); |
| 32 | + } |
| 33 | + |
| 34 | + #rose-pine(@variant) { |
| 35 | + @base: @rose-pine[@@variant][@base]; |
| 36 | + @surface: @rose-pine[@@variant][@surface]; |
| 37 | + @overlay: @rose-pine[@@variant][@overlay]; |
| 38 | + @muted: @rose-pine[@@variant][@muted]; |
| 39 | + @subtle: @rose-pine[@@variant][@subtle]; |
| 40 | + @text: @rose-pine[@@variant][@text]; |
| 41 | + @love: @rose-pine[@@variant][@love]; |
| 42 | + @gold: @rose-pine[@@variant][@gold]; |
| 43 | + @rose: @rose-pine[@@variant][@rose]; |
| 44 | + @pine: @rose-pine[@@variant][@pine]; |
| 45 | + @foam: @rose-pine[@@variant][@foam]; |
| 46 | + @iris: @rose-pine[@@variant][@iris]; |
| 47 | + @highlightLow: @rose-pine[@@variant][@highlightLow]; |
| 48 | + @highlightMed: @rose-pine[@@variant][@highlightMed]; |
| 49 | + @highlightHigh: @rose-pine[@@variant][@highlightHigh]; |
| 50 | + color-scheme: if(@variant = dawn, light, dark); |
| 51 | + |
| 52 | + body { |
| 53 | + background: @base; |
| 54 | + color: @text; |
| 55 | + font-family: @fontFamily, monospace; |
| 56 | + |
| 57 | + header h1 a, |
| 58 | + header h1 span { |
| 59 | + color: @pine; |
| 60 | + text-shadow: 0 0 2px @pine, 0 0 5px @pine; |
| 61 | + } |
| 62 | + |
| 63 | + a { |
| 64 | + color: @pine; |
| 65 | + } |
| 66 | + |
| 67 | + .star-count, |
| 68 | + .privboard-star-both { |
| 69 | + color: @gold; |
| 70 | + } |
| 71 | + |
| 72 | + .quiet { |
| 73 | + color: @muted; |
| 74 | + opacity: 1; |
| 75 | + } |
| 76 | + |
| 77 | + .share, |
| 78 | + .share:hover, |
| 79 | + input[type="submit"] { |
| 80 | + color: @pine; |
| 81 | + } |
| 82 | + |
| 83 | + main { |
| 84 | + article { |
| 85 | + em { |
| 86 | + color: @text; |
| 87 | + text-shadow: 0 0 5px @text; |
| 88 | + } |
| 89 | + |
| 90 | + h2 { |
| 91 | + color: @text; |
| 92 | + } |
| 93 | + |
| 94 | + input[type="radio"]:checked ~ span, |
| 95 | + input[type="checkbox"]:checked ~ span { |
| 96 | + color: @text; |
| 97 | + } |
| 98 | + |
| 99 | + input[type="radio"] ~ span:hover, |
| 100 | + input[type="radio"] ~ span:focus, |
| 101 | + input[type="checkbox"]:hover ~ span, |
| 102 | + input[type="checkbox"]:focus ~ span { |
| 103 | + background-color: @base; |
| 104 | + } |
| 105 | + } |
| 106 | + .supporter-badge { |
| 107 | + color: @gold; |
| 108 | + } |
| 109 | + |
| 110 | + .supporter-badge:hover { |
| 111 | + color: @gold; |
| 112 | + text-shadow: 0 0 5px @gold; |
| 113 | + } |
| 114 | + |
| 115 | + .sponsor-badge { |
| 116 | + color: @foam; |
| 117 | + } |
| 118 | + |
| 119 | + .sponsor-badge:hover, |
| 120 | + .sponsor-badge:focus { |
| 121 | + color: @foam; |
| 122 | + text-shadow: 0 0 5px @foam; |
| 123 | + } |
| 124 | + |
| 125 | + .leaderboard-entry { |
| 126 | + .leaderboard-position { |
| 127 | + color: @subtle; |
| 128 | + } |
| 129 | + .leaderboard-totalscore { |
| 130 | + color: @text; |
| 131 | + } |
| 132 | + } |
| 133 | + |
| 134 | + .leaderboard-daylinks-selected { |
| 135 | + color: @text; |
| 136 | + text-shadow: 0 0 5px @text; |
| 137 | + } |
| 138 | + |
| 139 | + .leaderboard-daylinks-selected:hover { |
| 140 | + color: @pine; |
| 141 | + } |
| 142 | + |
| 143 | + .leaderboard-anon { |
| 144 | + opacity: 1; |
| 145 | + color: @muted; |
| 146 | + } |
| 147 | + .calendar { |
| 148 | + .calendar-color-w { |
| 149 | + color: @text; |
| 150 | + } |
| 151 | + .calendar-color-s { |
| 152 | + color: @gold; |
| 153 | + } |
| 154 | + .calendar-color-c { |
| 155 | + color: @subtle; |
| 156 | + } |
| 157 | + .calendar-color-g3 { |
| 158 | + color: darken(@pine, 3%); |
| 159 | + } |
| 160 | + .calendar-color-g2 { |
| 161 | + color: @pine; |
| 162 | + } |
| 163 | + .calendar-color-g4 { |
| 164 | + color: darken(@pine, 3.5%); |
| 165 | + } |
| 166 | + .calendar-color-u { |
| 167 | + color: @foam; |
| 168 | + } |
| 169 | + .calendar-color-a { |
| 170 | + color: @muted; |
| 171 | + } |
| 172 | + .calendar-color-g1 { |
| 173 | + color: darken(@pine, 2.5%); |
| 174 | + } |
| 175 | + .calendar-color-g0 { |
| 176 | + color: darken(@pine, 2%); |
| 177 | + } |
| 178 | + .calendar-color-l { |
| 179 | + color: @love; |
| 180 | + } |
| 181 | + .calendar-mark-complete { |
| 182 | + color: @gold; |
| 183 | + } |
| 184 | + .calendar-mark-verycomplete { |
| 185 | + color: @gold; |
| 186 | + } |
| 187 | + .calendar-day { |
| 188 | + color: @subtle; |
| 189 | + } |
| 190 | + #calendar-countdown { |
| 191 | + color: @subtle; |
| 192 | + } |
| 193 | + |
| 194 | + span { |
| 195 | + color: @surface; |
| 196 | + } |
| 197 | + |
| 198 | + a { |
| 199 | + color: @surface; |
| 200 | + } |
| 201 | + } |
| 202 | + |
| 203 | + .day-success { |
| 204 | + color: @gold; |
| 205 | + text-shadow: 0 0 5px @gold; |
| 206 | + } |
| 207 | + |
| 208 | + .stats-both { |
| 209 | + color: @gold; |
| 210 | + } |
| 211 | + |
| 212 | + .stats-firstonly { |
| 213 | + color: @overlay; |
| 214 | + } |
| 215 | + |
| 216 | + a:hover { |
| 217 | + background-color: @overlay !important; |
| 218 | + } |
| 219 | + |
| 220 | + input[type="text"], |
| 221 | + textarea, |
| 222 | + code::before { |
| 223 | + border-color: @highlightMed; |
| 224 | + background: @base; |
| 225 | + } |
| 226 | + } |
| 227 | + } |
| 228 | + } |
| 229 | +} |
| 230 | + |
| 231 | +/* deno-fmt-ignore */ |
| 232 | +@rose-pine: { |
| 233 | + @main: { @base: #191724; @surface: #1f1d2e; @overlay: #26233a; @muted: #6e6a86; @subtle: #908caa; @text: #e0def4; @love: #eb6f92; @gold: #f6c177; @rose: #ebbcba; @pine: #31748f; @foam: #9ccfd8; @iris: #c4a7e7; @highlightLow: #21202e; @highlightMed: #403d52; @highlightHigh: #524f67; }; |
| 234 | + @moon: { @base: #232136; @surface: #2a273f; @overlay: #393552; @muted: #6e6a86; @subtle: #908caa; @text: #e0def4; @love: #eb6f92; @gold: #f6c177; @rose: #ea9a97; @pine: #3e8fb0; @foam: #9ccfd8; @iris: #c4a7e7; @highlightLow: #2a283e; @highlightMed: #44415a; @highlightHigh: #56526e; }; |
| 235 | + @dawn: { @base: #faf4ed; @surface: #fffaf3; @overlay: #f2e9e1; @muted: #9893a5; @subtle: #797593; @text: #575279; @love: #b4637a; @gold: #ea9d34; @rose: #d7827e; @pine: #286983; @foam: #56949f; @iris: #907aa9; @highlightLow: #f4ede8; @highlightMed: #dfdad9; @highlightHigh: #cecacd; }; |
| 236 | +}; |
0 commit comments