post_apocalypse_story/html_resources/style.css

301 lines
4.7 KiB
CSS

* {
color: #101010;
}
a {
color: #051390;
}
a:visited {
color: #134709;
}
html {
background-color: #d7d6d1;
}
body {
margin: 0 auto;
width: 100%;
min-height: 100%;
}
@media screen and (min-width: 48rem) {
body {
width: 90%;
}
}
/* TODO: media query, use entire width on small viewports */
h1 {
text-align: center;
padding: 0;
padding-top: 0.8em;
padding-bottom: 0.5em;
border-bottom: 0.1em solid #101030;
margin: 0;
margin-bottom: 0.8em;
}
p, pre, ul, h2 {
padding: 0;
margin-top: 0;
margin-left: auto;
margin-right: auto;
margin-bottom: 0.9em;
width: 98%;
max-width: 720px;
list-style-position: inside;
list-style-type: disclosure-closed;
}
@media screen and (min-width: 48rem) {
p, ul {
width: 80%;
}
}
li ul {
margin-left: 2em;
width: 100%;
}
p {
text-align: justify;
}
p.light {
/* TODO: include a font that supports different weights */
font-weight: lighter;
font-style: italic;
}
p.strong {
font-weight: bold;
}
p.heavy {
/* TODO: include a font that supports different weights */
font-weight: bolder;
}
p.copyright {
position: relative;
margin-bottom: 0;
text-align: center;
font-size: 0.8em;
color: #606a76;
bottom: 2px;
}
pre {
max-width: 80ch;
font-size: 0.9rem;
overflow: scroll;
/*
Workaround for extending off screen on small viewports bc I cba
to figure it out properly
*/
width: 90%;
}
@media screen and (min-width: 48rem) {
pre {
/*
Get rid of scrollbars on browsers that show them regardless of
whether the content fits on screen or not
*/
overflow: visible;
/*
force it back to 80ch when the workaround from above doesn't apply
*/
width: 80ch;
}
}
pre.terminal {
color: #B5E550;
background-color: #3b3b3b;
border: 1px solid #101030;
padding: 1em;
}
pre.terminal b {
color: #c8ff52;
}
pre.terminal span {
color: inherit;
}
pre.terminal span.blur {
color: #88a54a;
}
pre.paper {
/* TODO: typewriter-look? */
/* TODO: tractor feed ribbons? */
background-color: #f0e8d6;
border: 1px solid #101030;
padding: 1em;
padding-bottom: 0em;
}
span.paper.green {
background-color: #d4deae;
}
span.quote.speech {
color: #303030;
}
span.quote.speech::before {
color: #101030;
content: "\25b8";
font-size: 0.75em;
position: relative;
bottom: 0.15em;
}
span.quote.speech::after {
color: #101030;
content: "\25c2";
font-size: 0.75em;
position: relative;
bottom: 0.15em;
}
span.quote.speech * {
color: #303030;
}
span.quote.non-speech {
color: #303030;
}
span.quote.non-speech::before {
color: #101030;
content: "\25b9";
font-size: 0.75em;
position: relative;
bottom: 0.15em;
}
span.quote.non-speech::after {
color: #101030;
content: "\25c3";
font-size: 0.75em;
position: relative;
bottom: 0.15em;
}
span.quote.non-speech * {
color: #303030;
}
/*
Normally, the following should be enough:
span.chapter {
color: inherit;
}
However, Chromium apparently doesn't apply the a:visted color to children of <a>.
*/
span.chapter {
color: #051390;
}
a:visited>span.chapter {
color: #134709;
}
span.chapter::before {
content: "\25b9";
font-size: 0.75em;
position: relative;
bottom: 0.15em;
color: #08083e;
}
a:visited>span.chapter::before {
color: #0e310b;
}
span.chapter::after {
content: "\25c3";
font-size: 0.75em;
position: relative;
bottom: 0.15em;
color: #08083e;
}
a:visited>span.chapter::after {
color: #0e310b;
}
span.blur {
filter: url(#crunchy_blur);
/* chromium will yeet the entire span if display is inline */
display: inline-block;
}
div.home, div.next, div.prev {
font-size: 2.8em;
height: 1.3em;
position: fixed;
top: 0.4em;
}
div.home {
width: 1.3em;
}
div.prev {
width:0.6em;
left: calc(100% - 1.3em);
}
div.next {
width:0.6em;
left: calc(100% - 0.6em);
}
@media screen and (min-width: 48rem) {
div.prev {
width:0.6em;
left: calc(95% - 1.3em);
}
div.next {
width:0.6em;
left: calc(95% - 0.6em);
}
}
div.home a, div.next a, div.prev a {
color: black;
text-decoration: none;
text-align: center;
width: 100%;
height: 100%;
display: block;
border-radius: 0.3rem;
outline: 1.2px solid #97979a;
background: #e9e9ed;
}
div.home p, div.next p, div.prev p {
color: #f3f0f8;
text-decoration: none;
text-align: center;
width: 100%;
height: 100%;
display: block;
border-radius: 0.3rem;
outline: 1.2px solid #97979a;
background: #ced0d6;
}
div.home a:hover, div.next a:hover, div.prev a:hover {
background: #d0d0d7;
outline: 1.2px solid #86868f;
}
.comment {
font-style: italic;
color: #606a76 !important;
}
svg.hidden_filter {
width: 0;
height: 0;
outline: none;
border: none;
}