RFCartography/rfcartography/static/css/rfcartography.css
2023-01-03 14:42:54 +01:00

291 lines
5.7 KiB
CSS

@font-face {
font-family: 'Courier Prime';
font-style: normal;
font-weight: normal;
font-stretch: normal;
font-display: swap;
src: url('/static/fonts/CourierPrime-Regular.ttf') format('truetype'),
local('Courier Prime');
}
@font-face {
font-family: 'Courier Prime';
font-style: normal;
font-weight: bold;
font-stretch: normal;
font-display: swap;
src: url('/static/fonts/CourierPrime-Bold.ttf') format('truetype'),
local('Courier Prime');
}
@font-face {
font-family: 'Courier Prime';
font-style: italic;
font-weight: normal;
font-stretch: normal;
font-display: swap;
src: url('/static/fonts/CourierPrime-Italic.ttf') format('truetype'),
local('Courier Prime');
}
@font-face {
font-family: 'Courier Prime';
font-style: italic;
font-weight: bold;
font-stretch: normal;
font-display: swap;
src: url('/static/fonts/CourierPrime-BoldItalic.ttf') format('truetype'),
local('Courier Prime');
}
:root {
--background-body: #FAFAFA;
--background-item: #FFFFFF;
--accent-blue: #2072b1;
--accent-red: #c21a7e;
--text: #000000;
--gradient: linear-gradient(45deg, #2072b1 10%, #c21a7e 90%);
--body-width: 80vw;
}
@media (max-width: 860px) {
:root {
--body-width: 100vw;
}
}
/* consider padding and borders for width and height */
*,
*::before,
*::after {
box-sizing: border-box;
}
@media (prefers-reduced-motion: no-preference) {
html {
scroll-behavior: smooth;
}
}
html {
font-size: 1rem;
}
body {
font-family: 'Courier Prime', monospace;
line-height: 1.8;
max-width: var(--body-width);
min-height: 100vh;
overflow-x: hidden;
background-color: var(--background-body);
text-rendering: optimizeLegibility;
margin: auto;
}
header
{
height: 4em;
width: 100%;
padding: 1ch;
border-bottom-width: 3px;
border-bottom-style: solid;
border-bottom-color: var(--accent-blue);
border-image: var(--gradient);
border-image-slice: 1;
display: flex;
align-items: center;
margin-bottom: 1.5em;
}
header img
{
height: 3ch;
padding-right: 1ch;
}
header a {
text-decoration: none;
}
header a h1 {
font-size: 2ch;
}
header a h1 span:nth-of-type(1) {
color: var(--accent-red)
}
header a h1 span:nth-of-type(2) {
color: var(--accent-blue)
}
header a:hover h1 span:nth-of-type(1) {
color: var(--accent-blue)
}
header a:hover h1 span:nth-of-type(2) {
color: var(--accent-red)
}
header label {
display: none;
}
header nav {
flex-grow: 1;
}
header form {
display: block;
text-align: right;
font-size: 0;
min-width: 14rem;
}
header select {
border-width: 2px;
border-style: solid;
border-color: var(--accent-blue);
border-top-left-radius: 1ch;
border-bottom-left-radius: 1ch;
height: 2rem;
width: 4rem;
background-color: var(--background-item);
text-align: right;
font-family: 'Courier Prime', monospace;
vertical-align: middle;
}
header input[type=number] {
border-width: 2px;
border-style: solid;
border-color: var(--accent-blue);
height: 2rem;
width: 8rem;
background-color: var(--background-item);
font-family: 'Courier Prime', monospace;
-webkit-appearance: none;
-moz-appearance: textfield;
vertical-align: middle
}
header input[type=number]:focus {
border-color: var(--accent-red);
outline: none;
}
header input[type=submit] {
border-width: 2px;
border-style: solid;
border-color: var(--accent-blue);
border-top-right-radius: 1ch;
border-bottom-right-radius: 1ch;
height: 2rem;
width: 2rem;
background-color: var(--accent-blue);
color: var(--background-item);
font-weight: bold;
vertical-align: middle;
}
header input[type=submit]:hover {
background-color: var(--background-item);
border-color: var(--accent-blue);
color: var(--accent-blue);
}
header input[type=submit]:focus {
background-color: var(--background-item);
border-color: var(--accent-red);
color: var(--accent-red);
}
main {
min-height: 50vh;
padding: 1em;
}
main h1 {
font-size: 1.4rem;
font-weight: bold;
color: var(--accent-blue);
margin-bottom: 0.5em;
margin-top: 0.5em;
}
main h2 {
font-size: 1.2rem;
font-weight: bold;
margin-bottom: 0.5em;
margin-top: 0.5em;
}
main p {
margin-bottom: 0.5em;
}
main a {
text-decoration: none;
color: var(--accent-blue);
}
main a:hover {
text-decoration: none;
color: var(--accent-red);
}
main a:active {
text-decoration: underline;
}
main dl dt {
font-weight: bold;
}
main dl dd {
padding-left: 2rem;
}
footer {
width: 100%;
padding: 1ch;
border-top-width: 3px;
border-top-style: solid;
border-top-color: var(--accent-blue);
border-image: var(--gradient);
border-image-slice: 1;
margin-top: 2ch;
clear: both;
}
footer ul {
display: flex;
align-items: center;
justify-content: center;
color: var(--accent-blue);
font-size: 0.8rem;
}
footer ul li {
padding-left: 1ch;
padding-right: 1ch;
}
footer ul li:nth-child(2):before {
content: "::";
}
footer ul li:nth-child(2):after {
content: "::";
}
footer ul li a {
text-decoration: none;
color: var(--accent-blue);
}
footer ul li a:hover {
text-decoration: none;
color: var(--accent-red);
}