html {
height: 100%;
}
body {
background-color: #f0f0f0;
line-height: 180%;
font-size: 110%;
margin-left: auto;
margin-right: auto;
display: flex;
flex-direction: column;
font-family: 'Barlow', sans-serif;
}
.transition, .transition * {
transition-duration: 0.5s;
transition-property: color, border-color, background-color;
}
.theme-toggler {
cursor: pointer;
}
body.dark-mode {
color: #e7e7e7;
background: linear-gradient(to bottom right, #2e2e62, #1a1226);
background-repeat: no-repeat;
background-attachment: fixed;
}
h1, h2 {
font-family: 'BarlowMedium', sans-serif;
text-align: center;
color: #111;
}
body.dark-mode h1 {
color: #e7e7e7;
}
body.dark-mode h2 {
color: #e7e7e7;
}
::placeholder {
color: #999;
}
span.logo {
margin: 0;
padding: 0.2em;
}
h1 span.logo.left {
color: black;
background-color: white;
transition-property: color, background-color;
transition-duration: 300ms;
transition-timing-function: ease-in;
}
h1 span.logo.right {
color: white;
background-color: black;
transition-property: color, background-color;
transition-duration: 300ms;
transition-timing-function: ease-in;
}
h1:hover span.logo.left {
color: white;
background-color: black;
}
h1:hover span.logo.right {
color: black;
background-color: white;
}
strong {
font-family: 'BarlowMedium', sans-serif;
}
h1 {
user-select: none;
}
h2 {
font-size: 100%;
margin-top: 0;
margin-bottom: 1em;
}
.field {
display: flex;
flex-direction: column;
}
label {
font-family: 'Barlow', /*'Source Sans Pro', TODO: Host or link this */ sans-serif;
/* font-weight: bold; Re-enable with above font */
font-size: 100%;
font-weight: 500;
color: #505050;
padding: 0.15em 0.5em;
transition-property: color, background-color;
transition-duration: 135ms;
transition-timing-function: ease-out;
}
body.dark-mode label {
color: #eee;
}
label:hover {
color: white;
background-color: #222;
}
input, textarea {
font-family: 'Barlow', sans-serif;
}
body.dark-mode input[type="text"] {
color: #eee;
background-color: #000;
border: none;
padding: 8px;
}
body.dark-mode textarea {
color: #eee;
background-color: #000;
border: none;
padding: 12px;
}
select {
border-radius: 0;
border-style: solid;
border-width: 1px;
padding: 10px;
font-size: 0.9em;
}
select, body.dark-mode select:hover {
background-color: white;
border-color: #8f8f9d;
color: black;
}
body.dark-mode select, select:hover {
background-color: black;
border-color: black;
color: #eee;
}
.letter-form {
display: flex;
flex-grow: 1;
flex-direction: column;
}
div.user {
line-height: 125%;
margin-bottom: 1em;
}
div.user form {
display: flex;
flex-direction: row;
font-size: 70%;
justify-content: end;
}
div.user form div {
display: flex;
flex-direction: row;
}
div.user form input, label {
border-radius: 0;
}
div.user form input {
font-size: 120%;
}
.btn {
cursor: pointer;
font-weight: bold;
border-radius: 0;
border-style: none;
}
input.btn {
padding: 0.8em 2em;
}
.color-fade {
transition-property: color, background-color;
transition-duration: 135ms;
transition-timing-function: ease-out;
}
.primary {
color: white;
background-color: black;
}
.primary:hover {
color: black;
background-color: white;
}
.secondary, body.dark-mode .secondary:hover {
color: black;
background-color: white;
border: 1px solid #8f8f9d;
}
.secondary a {
color: inherit;
}
.secondary:hover, body.dark-mode .secondary {
color: white;
background-color: black;
border: 1px solid black;
}
.logged-in {
display: flex;
flex-direction: row;
justify-content: end;
align-items: center;
}
.user.logged-in {
margin-bottom: 1em;
}
.user.logged-out {
font-size: 110%;
}
dl {
display: flex;
flex-grow: 1;
flex-direction: column;
}
dd {
display: flex;
}
textarea {
flex-grow: 1;
padding: 0.5em;
}
.bigtext {
flex-grow: 1;
min-height: 35vh;
font-size: 90%;
}
.errors {
color: #a40f0f;
}
body.dark-mode .errors {
color: white;
background-color: red;
padding: 0.2em;
padding-left: 1em;
}
#body {
flex-grow: 1;
}
.wipe {
margin-left: auto;
padding: 10px 25px;
font-family: 'BarlowMedium', "Roboto", sans-serif;
background: black;
outline: none !important;
cursor: pointer;
transition: all 0.3s ease;
position: relative;
display: inline-block;
text-decoration: none;
}
.up-wipe {
border: 2px solid rgb(255, 255, 255);
z-index: 1;
color: white;
}
.up-wipe:after {
position: absolute;
content: "";
width: 100%;
height: 0;
top: 0;
left: 0;
z-index: -1;
background: rgb(255, 255, 255);
transition: all 0.3s ease;
}
.up-wipe:hover {
color: rgb(0, 0, 0);
}
.up-wipe:hover:after {
top: auto;
bottom: 0;
height: 100%;
}
.modal {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
position: absolute;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
scroll-behavior: unset;
background-color: white;/*rgba(0, 0, 0, 0.4);*/
transition-property: opacity;
transition-duration: 300ms;
transition-timing-function: ease-out;
}
body.dark-mode div.modal-content {
background-color: #111;
}
.modal-background {
background: none;
}
.modal-content {
overflow: scroll;
}
.modal-content input {
margin-bottom: 2em;
}
.modal-content h2 {
font-size: 200%;
margin-bottom: 2em;
}
.top-right {
position: absolute;
top: 0;
right: 0;
}
.text-button {
background: none;
border: none;
font-size: 3rem;
font-weight: bold;
color: #444;
margin: 0.25em;
line-height: 100%;
}
.text-button:hover {
color: #000;
}
body.dark-mode .text-button:hover {
color: #fff;
}
/* Small screens */
@media only screen and (max-width: 720px) {
body {
width: 85vw;
}
h1 {
font-size: 300%;
}
h2 {
line-height: 100%;
}
input {
font-size: 115%;
flex-grow: 1;
padding: 0.3em;
}
.letter-form {
width: 100%;
}
dd {
margin-left: 0;
flex-grow: 1;
}
dd select {
flex-grow: 1;
}
.field {
margin-bottom: 1em;
}
textarea {
width: 80vw;
font-size: 120%;
}
.bigtext {
min-height: 40vh;
}
}
/* Big screens */
@media only screen and (min-width: 721px) {
body {
min-height: 98%;
width: calc(max(40vw, 600px));
}
h1 {
font-size: 300%;
}
input, textarea {
margin-bottom: 0.5em;
font-size: 105%;
padding: 4px;
}
dd {
margin-left: 0.5em;
}
dt {
margin-top: 0.5em;
}
dl {
margin-top: 0;
}
#closingText {
width: 50%;
}
div.user form input {
height: min-content;
}
.user {
position: absolute;
top: 0.5em;
right: 1em;
}
.modal-background {
background-color: rgba(0, 0, 0, 0.3)
}
.modal-content {
width: 40%;
height: 75%;
position: relative;
border-radius: 3px;
}
}
.transparent {
pointer-events: none;
opacity: 0;
}
#create-account-form {
display: flex;
flex-direction: column;
}
#create-account-form div {
display: flex;
flex-direction: column;
}
.hidden {
display: none;
}
.scroll-lock {
overflow: hidden;
}
.dark-light {
color: white;
}
.dark-light:hover {
color: black;
}