Mercurial
comparison mrjunejune/src/base.css @ 92:655ea0b661fd
[Seobeo] Added few endpoints for handling files. [Dowa] Added few functions for random number and generating uuids
| author | June Park <parkjune1995@gmail.com> |
|---|---|
| date | Fri, 02 Jan 2026 17:47:10 -0800 |
| parents | 19cccf6e866a |
| children | 3bdfffaad162 |
comparison
equal
deleted
inserted
replaced
| 91:19cccf6e866a | 92:655ea0b661fd |
|---|---|
| 1 /* Base Colors */ | 1 /* Reset CSS: https://meyerweb.com/eric/tools/css/reset/ */ |
| 2 html, body, div, span, applet, object, iframe, | |
| 3 h1, h2, h3, h4, h5, h6, p, blockquote, pre, | |
| 4 a, abbr, acronym, address, big, cite, code, | |
| 5 del, dfn, em, img, ins, kbd, q, s, samp, | |
| 6 small, strike, strong, sub, sup, tt, var, | |
| 7 b, u, i, center, | |
| 8 dl, dt, dd, ol, ul, li, | |
| 9 fieldset, form, label, legend, | |
| 10 table, caption, tbody, tfoot, thead, tr, th, td, | |
| 11 article, aside, canvas, details, embed, | |
| 12 figure, figcaption, footer, header, hgroup, | |
| 13 menu, nav, output, ruby, section, summary, | |
| 14 time, mark, audio, video { | |
| 15 margin: 0; | |
| 16 padding: 0; | |
| 17 border: 0; | |
| 18 font-size: 100%; | |
| 19 font: inherit; | |
| 20 vertical-align: baseline; | |
| 21 } | |
| 22 | |
| 23 /* --- Colors ---*/ | |
| 2 :root { | 24 :root { |
| 3 --white: #ffffff; | 25 --white: #ffffff; |
| 4 --black: hsl(224, 12%, 4%); | 26 --black: hsl(224, 12%, 4%); |
| 5 --darkgray: #333333; | 27 --darkgray: #333333; |
| 6 --gray: #5d5d5d; | 28 --gray: #5d5d5d; |
| 47 --gray-dark: 221, 214, 198; /* Inverted */ | 69 --gray-dark: 221, 214, 198; /* Inverted */ |
| 48 --gray-gradient: rgba(26, 22, 15, 50%), #000; /* Adjusted */ | 70 --gray-gradient: rgba(26, 22, 15, 50%), #000; /* Adjusted */ |
| 49 --box-shadow: 0 -2px -6px rgba(159, 140, 96, 25%), | 71 --box-shadow: 0 -2px -6px rgba(159, 140, 96, 25%), |
| 50 0 -8px -24px rgba(159, 140, 96, 33%), 0 -16px -32px rgba(159, 140, 96, 33%); | 72 0 -8px -24px rgba(159, 140, 96, 33%), 0 -16px -32px rgba(159, 140, 96, 33%); |
| 51 } | 73 } |
| 52 | |
| 53 html { | |
| 54 background: var(--white); | |
| 55 } | |
| 56 | |
| 57 @font-face { | |
| 58 font-family: "Atkinson"; | |
| 59 src: url("/public/fonts/atkinson-regular.woff") format("woff"); | |
| 60 font-weight: 400; | |
| 61 font-style: normal; | |
| 62 } | |
| 63 @font-face { | |
| 64 font-family: "Atkinson"; | |
| 65 src: url("/public/fonts/atkinson-bold.woff") format("woff"); | |
| 66 font-weight: 700; | |
| 67 font-style: normal; | |
| 68 } | |
| 69 @font-face { | |
| 70 font-family: "Roboto"; | |
| 71 src: url("/public/fonts/Roboto-Regular.ttf"); | |
| 72 } | |
| 73 @font-face { | |
| 74 font-family: "Roboto Light"; | |
| 75 src: url("/public/fonts/Roboto-Thin.ttf"); | |
| 76 } | |
| 77 @font-face { | |
| 78 font-family: "More Thin"; | |
| 79 src: url("/public/fonts/more-sugar.thin.otf"); | |
| 80 } | |
| 81 @font-face { | |
| 82 font-family: "More"; | |
| 83 src: url("/public/fonts/more-sugar.regular.otf"); | |
| 84 } | |
| 85 | |
| 86 a { | |
| 87 color: inherit; /* blue colors for links too */ | |
| 88 text-decoration: inherit; /* no underline */ | |
| 89 } | |
| 90 | |
| 91 body { | |
| 92 font-family: "More Thin", sans-serif; | |
| 93 margin: 0; | |
| 94 padding: 0; | |
| 95 text-align: left; | |
| 96 background: var(--gray-gradient); | |
| 97 background-size: 100% 600px; | |
| 98 word-wrap: break-word; | |
| 99 overflow-wrap: break-word; | |
| 100 color: rgb(var(--gray-dark)); | |
| 101 font-size: 20px; | |
| 102 line-height: 1.7; | |
| 103 } | |
| 104 | |
| 105 main { | |
| 106 background: var(--white); | |
| 107 width: var(--main-width); | |
| 108 max-width: calc(100% - 2em); | |
| 109 margin: auto; | |
| 110 padding: 1em 1em; | |
| 111 } | |
| 112 | |
| 113 h1, | |
| 114 h2, | |
| 115 h3, | |
| 116 h4, | |
| 117 h5, | |
| 118 h6 { | |
| 119 margin: 0 0 0.5rem 0; | |
| 120 color: rgb(var(--black)); | |
| 121 line-height: 1.2; | |
| 122 } | |
| 123 h1 { | |
| 124 font-size: 3.052em; | |
| 125 } | |
| 126 h2 { | |
| 127 font-size: 2.441em; | |
| 128 } | |
| 129 h3 { | |
| 130 font-size: 1.953em; | |
| 131 } | |
| 132 h4 { | |
| 133 font-size: 1.563em; | |
| 134 } | |
| 135 h5 { | |
| 136 font-size: 1.25em; | |
| 137 } | |
| 138 strong, | |
| 139 b { | |
| 140 font-weight: 700; | |
| 141 } | |
| 142 p { | |
| 143 margin-bottom: 1em; | |
| 144 } | |
| 145 .prose p { | |
| 146 margin-bottom: 2em; | |
| 147 } | |
| 148 textarea { | |
| 149 width: 100%; | |
| 150 font-size: 16px; | |
| 151 } | |
| 152 input { | |
| 153 font-size: 16px; | |
| 154 } | |
| 155 table { | |
| 156 width: 100%; | |
| 157 } | |
| 158 img { | |
| 159 max-width: 100%; | |
| 160 height: auto; | |
| 161 border-radius: 8px; | |
| 162 } | |
| 163 code { | |
| 164 padding: 2px 5px; | |
| 165 background-color: rgb(var(--gray-light)); | |
| 166 border-radius: 2px; | |
| 167 } | |
| 168 pre { | |
| 169 padding: 1.5em; | |
| 170 border-radius: 8px; | |
| 171 } | |
| 172 pre > code { | |
| 173 all: unset; | |
| 174 } | |
| 175 blockquote { | |
| 176 border-left: 4px solid var(--accent); | |
| 177 padding: 0 0 0 20px; | |
| 178 margin: 0px; | |
| 179 font-size: 1.333em; | |
| 180 } | |
| 181 hr { | |
| 182 border: none; | |
| 183 border-top: 1px solid rgb(var(--gray-light)); | |
| 184 } | |
| 185 @media (max-width: 720px) { | |
| 186 body { | |
| 187 font-size: 18px; | |
| 188 } | |
| 189 main { | |
| 190 padding: 1em; | |
| 191 } | |
| 192 } | |
| 193 | |
| 194 .sr-only { | |
| 195 border: 0; | |
| 196 padding: 0; | |
| 197 margin: 0; | |
| 198 position: absolute !important; | |
| 199 height: 1px; | |
| 200 width: 1px; | |
| 201 overflow: hidden; | |
| 202 /* IE6, IE7 - a 0 height clip, off to the bottom right of the visible 1px box */ | |
| 203 clip: rect(1px 1px 1px 1px); | |
| 204 /* maybe deprecated but we need to support legacy browsers */ | |
| 205 clip: rect(1px, 1px, 1px, 1px); | |
| 206 /* modern browsers, clip-path works inwards from each corner */ | |
| 207 clip-path: inset(50%); | |
| 208 /* added line to stop words getting smushed together (as they go onto separate lines and some screen readers do not understand line feeds as a space */ | |
| 209 white-space: nowrap; | |
| 210 } | |
| 211 | |
| 212 .center { | |
| 213 display: flex; | |
| 214 justify-content: center; | |
| 215 } | |
| 216 | |
| 217 /* Auto dark mode based on system preference */ | |
| 218 @media (prefers-color-scheme: dark) { | 74 @media (prefers-color-scheme: dark) { |
| 219 :root:not(.light-mode) { | 75 :root:not(.light-mode) { |
| 220 --white: hsl(224, 10%, 10%); | 76 --white: hsl(224, 10%, 10%); |
| 221 --black: hsl(0, 0%, 90%); | 77 --black: hsl(0, 0%, 90%); |
| 222 --darkgray: #cccccc; | 78 --darkgray: #cccccc; |
| 237 --box-shadow: 0 -2px -6px rgba(159, 140, 96, 25%), | 93 --box-shadow: 0 -2px -6px rgba(159, 140, 96, 25%), |
| 238 0 -8px -24px rgba(159, 140, 96, 33%), 0 -16px -32px rgba(159, 140, 96, 33%); | 94 0 -8px -24px rgba(159, 140, 96, 33%), 0 -16px -32px rgba(159, 140, 96, 33%); |
| 239 } | 95 } |
| 240 } | 96 } |
| 241 | 97 |
| 98 /* --- fonts --- */ | |
| 99 /* | |
| 100 @font-face { | |
| 101 font-family: "Atkinson"; | |
| 102 src: url("/public/fonts/atkinson-regular.woff") format("woff"); | |
| 103 font-weight: 400; | |
| 104 font-style: normal; | |
| 105 } | |
| 106 @font-face { | |
| 107 font-family: "Atkinson"; | |
| 108 src: url("/public/fonts/atkinson-bold.woff") format("woff"); | |
| 109 font-weight: 700; | |
| 110 font-style: normal; | |
| 111 } | |
| 112 */ | |
| 113 @font-face { | |
| 114 font-family: "Roboto"; | |
| 115 src: url("/public/fonts/Roboto-Regular.ttf"); | |
| 116 } | |
| 117 @font-face { | |
| 118 font-family: "Roboto Light"; | |
| 119 src: url("/public/fonts/Roboto-Thin.ttf"); | |
| 120 } | |
| 121 @font-face { | |
| 122 font-family: "More Thin"; | |
| 123 src: url("/public/fonts/more-sugar.thin.otf"); | |
| 124 } | |
| 125 @font-face { | |
| 126 font-family: "More"; | |
| 127 src: url("/public/fonts/more-sugar.regular.otf"); | |
| 128 } | |
| 129 | |
| 130 /* -- HTML Tags only --*/ | |
| 131 html { | |
| 132 background: var(--white); | |
| 133 } | |
| 134 | |
| 135 a { | |
| 136 color: inherit; /* blue colors for links too */ | |
| 137 text-decoration: inherit; /* no underline */ | |
| 138 } | |
| 139 | |
| 140 body { | |
| 141 font-family: "More Thin", sans-serif; | |
| 142 margin: 0; | |
| 143 padding: 0; | |
| 144 text-align: left; | |
| 145 background: var(--gray-gradient); | |
| 146 background-size: 100% 600px; | |
| 147 word-wrap: break-word; | |
| 148 overflow-wrap: break-word; | |
| 149 color: rgb(var(--gray-dark)); | |
| 150 font-size: 20px; | |
| 151 line-height: 1.7; | |
| 152 } | |
| 153 | |
| 154 main { | |
| 155 background: var(--white); | |
| 156 width: var(--main-width); | |
| 157 max-width: calc(100% - 2em); | |
| 158 margin: auto; | |
| 159 padding: 1em 1em; | |
| 160 } | |
| 161 | |
| 162 h1, | |
| 163 h2, | |
| 164 h3, | |
| 165 h4, | |
| 166 h5, | |
| 167 h6 { | |
| 168 margin: 0 0 0.5rem 0; | |
| 169 color: rgb(var(--black)); | |
| 170 line-height: 1.2; | |
| 171 } | |
| 172 | |
| 173 h1 { | |
| 174 font-size: 3.052em; | |
| 175 } | |
| 176 | |
| 177 h2 { | |
| 178 font-size: 2.441em; | |
| 179 } | |
| 180 | |
| 181 h3 { | |
| 182 font-size: 1.953em; | |
| 183 } | |
| 184 | |
| 185 h4 { | |
| 186 font-size: 1.563em; | |
| 187 } | |
| 188 | |
| 189 h5 { | |
| 190 font-size: 1.25em; | |
| 191 } | |
| 192 | |
| 193 strong, | |
| 194 b { | |
| 195 font-weight: 700; | |
| 196 } | |
| 197 | |
| 198 p { | |
| 199 margin-bottom: 1em; | |
| 200 } | |
| 201 | |
| 202 .prose p { | |
| 203 margin-bottom: 2em; | |
| 204 } | |
| 205 | |
| 206 textarea { | |
| 207 width: 100%; | |
| 208 font-size: 16px; | |
| 209 } | |
| 210 | |
| 211 input { | |
| 212 font-size: 16px; | |
| 213 } | |
| 214 | |
| 215 table { | |
| 216 width: 100%; | |
| 217 } | |
| 218 | |
| 219 img { | |
| 220 max-width: 100%; | |
| 221 height: auto; | |
| 222 border-radius: 8px; | |
| 223 } | |
| 224 | |
| 225 code { | |
| 226 padding: 2px 5px; | |
| 227 background-color: rgb(var(--gray-light)); | |
| 228 border-radius: 2px; | |
| 229 } | |
| 230 | |
| 231 pre { | |
| 232 padding: 1.5em; | |
| 233 border-radius: 8px; | |
| 234 } | |
| 235 | |
| 236 pre > code { | |
| 237 all: unset; | |
| 238 } | |
| 239 | |
| 240 blockquote { | |
| 241 border-left: 4px solid var(--accent); | |
| 242 padding: 0 0 0 20px; | |
| 243 margin: 0px; | |
| 244 font-size: 1.333em; | |
| 245 } | |
| 246 | |
| 247 hr { | |
| 248 border: none; | |
| 249 border-top: 1px solid rgb(var(--gray-light)); | |
| 250 } | |
| 251 | |
| 252 .center { | |
| 253 display: flex; | |
| 254 justify-content: center; | |
| 255 } | |
| 256 | |
| 242 a { | 257 a { |
| 243 text-decoration: underline; | 258 text-decoration: underline; |
| 244 } | 259 } |
| 245 | 260 |
| 246 a::before { | 261 a::before { |
| 248 display: inline-block; | 263 display: inline-block; |
| 249 width: 1em; | 264 width: 1em; |
| 250 height: 1em; | 265 height: 1em; |
| 251 margin-right: 8px; | 266 margin-right: 8px; |
| 252 vertical-align: middle; | 267 vertical-align: middle; |
| 253 | 268 background-color: #FF69B4; |
| 254 /* This treats the paw like a stencil */ | |
| 255 background-color: #FF69B4; /* Change your color here! (e.g., Hot Pink) */ | |
| 256 -webkit-mask: url('/public/paw.svg') no-repeat center; | 269 -webkit-mask: url('/public/paw.svg') no-repeat center; |
| 257 mask: url('/public/paw.svg') no-repeat center; | 270 mask: url('/public/paw.svg') no-repeat center; |
| 258 | |
| 259 /* Your 2D Animation */ | |
| 260 animation: pawStep 0.6s ease-out forwards; | 271 animation: pawStep 0.6s ease-out forwards; |
| 261 } | 272 } |
| 262 | 273 |
| 263 @keyframes pawStep { | 274 @keyframes pawStep { |
| 264 0% { transform: scale(0); opacity: 0; } | 275 0% { transform: scale(0); opacity: 0; } |
| 271 | 282 |
| 272 @keyframes wiggle { | 283 @keyframes wiggle { |
| 273 0%, 100% { transform: rotate(-15deg); } | 284 0%, 100% { transform: rotate(-15deg); } |
| 274 50% { transform: rotate(15deg); } | 285 50% { transform: rotate(15deg); } |
| 275 } | 286 } |
| 287 | |
| 288 | |
| 289 /* -- mobile -- */ | |
| 290 @media (max-width: 720px) { | |
| 291 body { | |
| 292 font-size: 18px; | |
| 293 } | |
| 294 main { | |
| 295 padding: 1em; | |
| 296 } | |
| 297 } | |
| 298 | |
| 299 |