/* iris wuz here */
@import url('https://fonts.googleapis.com/css2?family=Fresca&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Days+One&display=swap');

:root {
    --purp: #c29fc6;
    --whitish: #faedfa;
    --shadow: #42004a;
    --lightpurp: #fce2f5;
    --darkpurp: #a26799;
    --skyblue: #a26799;
    --black: #000;
    --bg: url("/bg.png");
}

* { font-family: "Fresca", sans-serif; }
main { margin: auto; width: 80%; text-align: center; }
main img { max-width: 100%; max-height: 1500px; }
header img { max-width: 100%; }
.links { background-color: var(--purp); border-bottom: 5px solid var(--whitish); border-top: none; }
header {
    border-left: 5px solid var(--whitish);
    border-right: 5px solid var(--whitish);
    box-shadow: 0 0 15px 2px var(--shadow);
    text-align: center;
    margin: auto;
    width: 40%;
    background-color: var(--lightpurp);
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}
.hic { border: 5px solid var(--darkpurp); }
header .hic { border-top: 0; }
.controls { text-align: center; padding: 1%; }
.spacer { margin-left: 2.5%; }
footer .spacer { margin-left: 5%; }
body {
    background-color: var(--skyblue);
    background-image: var(--bg);
    margin: 0;
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
    color: var(--black);
}
.links a { padding: 0 1%; font-weight: bold; }
a { color: var(--black); text-decoration: none; font-family: "Days One", sans-serif; }
footer a, .aa a { font-family: "Fresca", sans-serif; }
.controls span, select { font-family: "Days One", sans-serif; }
a:hover, .aa a { text-decoration: underline; }
.err { margin: auto; margin-top: 5%; width: 50%; }
input, textarea {
    width: 100%;
    outline: none;
    border: none;
    background: var(--skyblue);
    padding: 5px;
    margin-bottom: 2px;
    color: var(--black);
    font-size: 16px;
    margin-top: 0;
    border-radius: 5px;
}
form { width: 50%; margin: auto; text-align: left; margin-bottom: 2%; }
input[type=submit] { width: initial; }
footer { padding: 0.5%; width: 30em; margin: auto; margin-bottom: 2%; text-align: center; white-space: nowrap; }
textarea { resize: none; min-height: 100px; }
.comment {
    text-align: left;
    width: 90%;
    margin: auto;
    background-color: var(--skyblue);
    color: var(--black);
    padding: 1%;
    margin-bottom: 2%;
    border-radius: 5px;
}
.comment img { float: left; border-radius: 5px; }
.comment p { display: block; margin: 0; padding-left: 90px; white-space: pre-line; margin-bottom: 1%; }
.name { font-weight: bold; }
.clear { clear: left; display: block; }
.timestamp { float: right; }
.box {
    box-shadow: 0 0 15px 2px var(--shadow);
    border: 5px solid var(--whitish);
    background-color: var(--darkpurp);
    border-radius: 5px;
}
main .box {
    width: 70%;
    margin: auto;
    margin-top: 3%;
    margin-bottom: 3%;
}
main .box .hic { border-bottom: 0; } /* css is weird */
.archive { background-color: var(--purp); padding-top: 1%; display: grid; grid-template-columns: 1fr 2fr 1fr; }
.archive .left { text-align: left; }
.archive .left a button { border-top-right-radius: 5px; border-bottom-right-radius: 5px; padding-left: 10px; }
.archive .right a button { border-top-left-radius: 5px; border-bottom-left-radius: 5px; padding-right: 10px; }
.archive .right { text-align: right; }
button { border: none; outline: none; font-family: "Days One", sans-serif; font-weight: bold;
    font-size: 150%; padding: 2%; cursor: pointer; background-color: var(--darkpurp); }
.chapters a { margin-bottom: 5%; }
.chapters a button { border-radius: 5px; }
.box .controls { width: 30em; border: var(--darkpurp) solid 5px; box-sizing: border-box; }
.box:has(.controls) { display: inline-block; width: auto; margin: 0; }
.box .controls .spacer { margin-left: 7%; }
.box.page { width: auto; padding: 5px; padding-bottom: 0; display: inline-block; margin-bottom: 0; }
.box:has(.pageinfo) { padding: 5px; width: fit-content; margin-top: 1%; }
.box .pageinfo, .box .controls, .box .comments, .box .about { background-color: var(--purp); }
.box .pageinfo { padding: inherit; }
.box .comments, .box .about { display: inline-block; width: 100%; }
.box:has(.comments), .box:has(.about) { padding: 5px; }
.box .about { text-align: left; padding: 2%; box-sizing: border-box; }
figure { display: inline-block; }
figcaption { text-align: center; }
#chapterorder li { margin-top: 1%; }
object { width: 20px; vertical-align: bottom; pointer-events: none; }
img.chapter { max-width: 100px; max-height: 100px; float: left; border-radius: 5px; border: 1px solid black; }
h1.chapter { margin: 0%; margin-left: 0; }
h1.chapter, p.chapter { padding-left: 110px; }
span.clear.chapter { height: 15px; }
.hidden { display: none; }
.reply textarea { min-height: 50px; }
.reply p { padding-left: 0; }
.reply { margin-bottom: 0; margin-top: 2%; }
.comment.reply { background-color: var(--purp); }
.comment.reply p { padding-left: 90px; }
.reply input, .reply textarea { background: var(--purp); }
.authorsnote { width: 70%; margin: auto; margin-top: 2%; margin-bottom: 2%; text-align: left; white-space: pre-line; }
p.chapter { margin-bottom: 0; }
.chbox, .gallery { border-radius: 5px; padding: 10px; background: var(--darkpurp); }
.gallery img { border-radius: 5px; vertical-align: middle; }
.gi { margin-right: 1.25%; margin-left: 1.25%; width: 100px; margin-top: 2%; display: inline-block; }
.gallery { text-align: center; }
.links, .controls { font-size: calc(1vw + 0.5vh); }
.chi { text-align: center; }
.chi img { max-height: 500px; }
@media only screen and (max-width: 800px) {
    .box:has(.comments), .box:has(.controls), .box:has(.about), .box:has(.archive) { width: 100%; margin-left:-3%; display: block; }
    .controls { width: initial !important; }
    form { width: 90%; }
    form input, form textarea { box-sizing: border-box; }
    .authorsnote { width: 90%; }
    footer { width: 90%; }
    footer .spacer { margin-left: 2.5%; }
    .box.page { margin-left: -12.5%; margin-right: -12.5%; border-right: 0px; padding-right: 0; border-left: 0px; padding-left: 0; }
    .box:has(.about):has(.gallery) { width: 125%; margin-left: -12.5%; border-right: 0; border-left: 0; padding-right: 0; padding-left: 0; }
    .gallery { padding: 5px; text-align: center; padding-top: 10px; }
    h1.chapter { font-size: 150%; }
    .archive button { font-size: 100%; }
    .archive { grid-template-columns: 1fr 1fr 1fr; }
}
.funny { opacity: 0; position: absolute; top: 0; left: 0; height: 0; width: 0; z-index: -1; }
hr { border: none; border-top: 1px solid var(--black); }
