X-Git-Url: https://www.kengrimes.com/gitweb/?p=kengrimes.com%2Ftheme.git;a=blobdiff_plain;f=static%2Fcss%2Fmain.css;h=c7db1edf6f1762bc0df1be82b2331581654f3ec3;hp=f677f9ecbcf579a5107f39f7b84928d28467ebb8;hb=af846c74fa32efa787846f3702e9f5a8050e7e51;hpb=2963d0599f33fc699e9dc9a931e13c44fcebb44c diff --git a/static/css/main.css b/static/css/main.css index f677f9e..c7db1ed 100644 --- a/static/css/main.css +++ b/static/css/main.css @@ -1,9 +1,37 @@ +:root { + --palette0: rgb(148,26,20); + --palette0-t: rgb(148,26,20,0.8); + --palette0-d: rgb(100,5,0); + --palette0-l: rgb(172,78,73); + --palette1: rgb(227,93,36); + --palette1-d: rgb(170,51,0); + --palette1-h: rgb(242,72,0); + --palette1-l: rgb(243,157,121); + --palette1-u: rgb(255,101,36); + --palette2: rgb(236,222,222); + --palette2-d: rgb(230,198,196); + --palette2-l: rgb(255,250,250); + --palette3: rgb(13,62,86); + --palette3-d: rgb(2,38,56); + --palette3-l: rgb(5,76,111); + --palette-bg: var(--palette2); + --palette-bg-dark: var(--palette2-d); + --palette-text: black; + --palette-text-link: var(--palette3-l); + --palette-text-active: var(--palette3-d); + --palette-header: var(--palette0-t); + --palette-header: var(--palette0-l); + --palette-header-dark: var(--palette0); + --palette-header-contrast: var(--palette3); + background-color: var(--palette-bg); + color: black; +} a { - color: darkslategrey; + color: var(--palette-text-link); } a:hover, a:active { - color: #1f2f2f; + color: var(--palette-text-active); } h1 { text-align: center; @@ -13,106 +41,164 @@ h2 { text-decoration: underline; font-size: 1.33em; } -ul.pagination { - display: flex; - justify-content: center; -} -ul.pagination > li { - margin: 0 0.2em; - display: inline; -} body { - margin: 0 0; - display: flex; - flex-flow: column nowrap; - background-color: lightslategrey; + margin: 0; } body > header { - margin: 0; - padding: 0.93rem 1% 0 1%; - border-radius: 9.33rem 0 0 0; - background-color: slategrey; + padding: 0 0 1px 0; display: flex; - flex-flow: row wrap; - align-items: start; justify-content: center; + align-items: center; + flex-flow: row wrap; + background-color: var(--palette-header); } -body > header > figure { - margin: 0; - display: flex; - width: 150px; - height: 150px; - border-radius: 90% 10% 1.3rem 1.3rem; - background-color: darkslategrey; - border: 1rem double slategrey; -} -body > header > figure > img { - border-radius: 50% 3% 3% 3%; -} -body > header > nav { - flex: 1 1 auto; - text-align: center; -} -body > header > nav > header { - font-size: 1.3rem; - font-family: fantasy; - color: slategrey; - background-color: darkslategrey; - border-radius: 1.3rem 1.3rem 0 0; - border: 0.8rem double slategrey; +body > main { + margin: 0 0 0 0; + padding: 0 2% 2% 2%; + font-size: calc(3pt + 1.5vw); /* 60 chars wide */ + /* font-size: 1.8rem; */ + font-family: sans; } -body > header > nav > nav { +body > footer { + font-size: 0.8rem; + background-color: var(--palette-header); + height: 4rem; display: flex; + flex-direction: column; + text-align: center; justify-content: center; - flex-flow: row wrap; } -body > header > nav > footer { +body > header > img { + margin: 0 3px 0 0; + min-width: 128px; + min-height: 128px; + border-radius: 50%; + box-shadow: 2px 1px black; + border: 1px solid black; + background-color: var(--palette-header-contrast); +} +body > header > div { + min-width: 256px; + max-width: 50vw; font-size: 1.1rem; font-family: fantasy; - color: slategrey; - background-color: darkslategrey; - border-radius: 0 0 1.3rem 1.3rem; - border: 0.8rem double slategrey; + box-shadow: 2px 1px black; + border: 1px solid black; + border-radius: 3px; + padding: 3px; + background-color: var(--palette-header-contrast); + color: var(--palette-bg); + text-align: center; + border: thin solid black; +} +body > nav { + opacity: 0.8; } -body > header > nav svg { +body > nav svg { margin: 0 0; + padding: 0 0; width: 3rem; + max-width: 12.5vw; height: 3rem; - fill: darkslategrey; + max-height: 12.5vw; + fill: var(--palette-text-link); } -body > header > nav a > summary { +body > nav a > summary { display: none; } -body > header > nav a > svg:hover, -body > header > nav a > svg:active, -body > header > nav svg.selected { - fill: #1f2f2f; +body > nav a > svg:hover, +body > nav a > svg:active, +body > nav svg.selected { + fill: var(--palette-text-active); } - -body > main { - margin: 0 0 0 0; - padding: 0 2% 2% 2%; - background-color: slategrey; - font-size: 1.8rem; - font-family: sans; - color: #1f1f1f; +body > nav > div { + display: flex; + justify-content: center; + flex-flow: row wrap; + background-color: var(--palette-bg); } -body > main > article { - font-size: 0.8em; - padding: 0 2% 2% 2%; - border-radius: 1em 1em; - background-color: lightslategrey; - border-top: 1px solid black; - border-bottom: 1px solid grey; +body > nav > footer { + font-size: 1.3rem; + font-family: fantasy; + background-color: var(--palette-header-dark); + color: var(--palette-bg); + border-radius: 0 0 1.3rem 1.3rem; + text-align: center; } -body > footer { - font-size: 0.8rem; - background-color: darkslategrey; - height: 4rem; +@media screen and (orientation:portrait) { + body > nav { + position: -webkit-sticky; + position: sticky; + z-index: 100; + top: 0; + } + body > nav svg { + width: 6vh; + max-width: 3rem; + height: 6vh; + max-height: 3rem; + } + body > nav > footer { + font-size: 2vh; + } +} +div.speedy-cards { display: flex; - flex-direction: column; + justify-content: space-around; + flex-flow: row wrap; + font-size: 0.8em; +} +div.speedy-cards > a { + position: relative; + display: block; + text-decoration: none; + font-size: 5vmin; + font-weight: bold; + margin: 3vw; + width: 33vmin; + height: 33vmin; + box-shadow: 2px 1px black; + border: 1px solid black; + border-radius: 3px; + padding: 3px; + overflow: hidden; + background-color: var(--palette-bg-dark); +} +div.speedy-cards > a > div { + font-size: 3vmin; + font-weight: normal; +} +div.speedy-cards > a > img { + opacity: 0.2; + position: absolute; + top: 3vmin; + right: 1vmin; + width: 40%; + height: 40%; + background-size: 100% 100%; + border-radius: 50%; + border: 1px solid black; +} +div.speedy-cards > br { + /* Linebreaks are inserted and made invisible to make text browsers and + ARIA-readers break between anchors */ + display: none; +} +div.page-nav { + font-size: 0.8em; +} +ul.pagination { + padding: 0; + list-style: none; text-align: center; - justify-content: center; - color: lightslategrey; } - +ul.pagination > li { + margin: 0 0.2em; + display: inline; +} +ul.pagination > li.disabled { + cursor: not-allowed; + opacity: 0.5; + text-decoration: none; + pointer-events: none; +}