Soc/app/assets/stylesheets/main.css

247 lines
4.1 KiB
CSS

@font-face {
font-family: "Rogue";
src: url("/fonts/rogue.otf");
}
:root {
--border-color: #282828;
--highlight-color: #d65d0e;
--background-color: #928374;
--dark-background-color: #1d2021;
--inset-background-color: #fffffa;
--alert-border-color: #98971a;
--form-error-color: #cc241d;
}
* {
box-sizing: border-box;
}
:root { font-family: 'Inter', sans-serif; }
@supports (font-variation-settings: normal) {
:root { font-family: 'InterVariable', sans-serif; }
}
body {
font-size: 1.2em;
background-color: var(--dark-background-color);
position: relative;
}
strong {
font-weight: bold;
}
em {
font-style: italic;
}
ol {
list-style-type: decimal;
}
ul {
list-style-type: disc;
}
h1, h2, h3, h4, h5, h6, h7 {
font-family: "Rogue", sans-serif;
font-weight: bold;
padding: .5em 0;
}
h3, h4, h5, h6, h7 {
text-decoration: underline;
}
h2 {
font-size: 2.5em;
}
h3 {
font-size: 1.5em;
}
header {
display: contents;
h1 {
background-color: var(--dark-background-color);
font-size: 5em;
text-align: center;
color: var(--highlight-color);
-webkit-text-stroke: 1px var(--background-color);
padding: .25em 0;
}
nav {
z-index: 999;
background-color: var(--dark-background-color);
padding: 1em;
font-family: "Rogue", sans-serif;
position: sticky;
top: 0;
> ul {
text-align: center;
animation-name: move-menu;
animation-duration: 3s;
animation-timeline: scroll(root block);
> li {
display: inline;
padding: 0 2em;
> a:link, > a:visited {
text-decoration: none;
font-size: 1.3em;
font-weight: bold;
}
> a:hover {
text-decoration: underline;
}
}
}
}
}
#flash_wrapper {
display: contents;
}
p {
margin: 1em 0;
}
a:link, a:visited {
color: var(--highlight-color);
}
a:hover {
text-decoration: none;
}
a:link:has(h1), a:visited:has(h1) {
text-decoration: none;
}
dl {
line-height: 1.3em;
}
dt {
font-weight: bold;
padding: 1em 0 .5em 0;
}
aside dt {
font-size: 1.2em;
}
dd {
margin-left: 2em;
}
main {
background-color: var(--inset-background-color);
display: grid;
grid-template-columns: 1fr 3fr;
grid-template-rows: 1fr;
}
@media (max-width: 800px) {
main {
display: flex;
flex-direction: column;
}
}
section.content {
grid-column: 2;
padding: 1em;
}
aside {
font-size: .8em;
grid-column: 1;
grid-row: 1;
padding: 1em;
}
form {
display: grid;
grid-template-columns: 1fr 2fr;
gap: .5em;
align-items: center;
max-width: 35em;
margin: 0 auto;
border: 1px solid var(--border-color);
border-radius: .5em;
font-size: 1.2em;
> label {
grid-column: 1;
text-align: right;
margin: 0 .1em 1em .5em;
}
> input {
font-size: 1em;
grid-column: 2;
padding: .25em;
margin: 0 .5em 1em .1em;
}
> input[type=submit] {
grid-column: 1/3;
margin: 0 .5em 1em .5em;
background-color: var(--highlight-color);
border: 1px solid var(--border-color);
border-radius: .25em;
}
> input[type=text]:focus, > input[type=password]:focus, > textarea:focus {
box-shadow: 0 0 10px var(--highlight-color);
}
> h2 {
text-align: center;
font-size: 1.5em;
background-color: var(--highlight-color);
grid-column: 1/3;
border-radius: .2em .2em 0 0;
}
> label.field_with_errors {
color: var(--form-error-color);
}
> input.field_with_errors {
border-color: var(--form-error-color);
}
}
div.flash {
border: 3px solid;
border-radius: .25em;
margin: 0 auto 1em auto;
max-width: 35em;
padding: .5em;
background-color: var(--dark-background-color);
color: var(--background-color);
}
div.notice {
border-color: var(--highlight-color);
}
div.alert {
border-color: var(--alert-border-color);
}
.avatar {
border: 2px solid var(--dark-background-color);
border-radius: 50%;
box-shadow: 6px 5px 5px rgba(0, 0, 0, 0.5);
margin: 0 auto;
}
.bordered-aside {
border: 2px solid var(--dark-background-color);
border-radius: .5em;
margin: 1em 0;
}