body {
    font-family: 'Lucida Grande','Lucida Sans Unicode','GNU Unifont',Verdana,Helvetica,sans-serif;
    margin: 0;
    background: #eee;
    color: #333;
}
a {
    display: inline-block;
}
body > h1 {
    margin: 0.5em;
}
body > p {
    margin: 1em;
}
body > a {
    margin: 1em;
}
body > form {
    margin: 1em;
}

.search {
    padding: 1em;
    text-align: center;
}
.search .tabheader {
    display: flex;
    justify-content: center;
    background-color: #999;
    border: 2px solid #999;
    border-bottom: none;
}
.search .tabheader .tab {
    border: none;
    outline: none;
    background-color: #bbb;
    padding: 0.5em 1em;
    margin: 0;
}
.search .tabheader .tab:hover {
    background-color: #fff;
}
.search .tabheader .tab.active {
    background-color: #eee;
}
.search .tabcontent {
    display: none;
    border: 2px solid #999;
    border-top: none;
    padding: 0.5em 1em;
}
.search .tabcontent.active {
    display: block;
}
.search form label {
    text-align: right;
    display: inline-block;
    width: 8em;
}
@media screen and (max-width: calc(29.5em - 4px)) {
    .search form label {
        text-align: center;
    }
}
.search form input[type="search"] {
    width: 20em;
    margin-bottom: 0.5em;
}
.search form select {
    width: 20em;
    margin-bottom: 0.5em;
}
.search form button {
    padding: 0 0.8em;
    line-height: 2em;
}
.search .regex-toggle {
    line-height: 2em;
    padding: 0.2em 0.6em;
    background-color: #ccc;
}
.search .regex-toggle label {
    width: auto;
}
.search .help-toggle {
    padding: 0.2em 0.6em;
}
.search .help {
    margin-top: 0.5em;
    text-align: left;
}
.search .help > ol {
    margin: 0;
    padding-left: 2em;
}
.search .help > ol > li > ul {
    padding-left: 1em;
}
.search .help code {
    display: inline-block;
    background-color: #ccc;
    padding: 0.1em 0.2em;
}
.search .results {
    display: flex;
    flex-flow: column;
    text-align: left;
    margin-top: 1em;
}
.search .episode:nth-child(even) {
    background-color: #fefefe;
}
.search .title {
    font-weight: bold;
}
.search .author {
    font-style: italic;
}
.search .tags {
    color: red;
}
.search .reader {
    font-size: 0.7em;
    vertical-align: middle;
}

.episode {
    padding-left: 1em;
    padding-right: 1em;
}
div.episode {
    padding-bottom: 1em;
}
.episode .title {
    margin-bottom: 0;
    font-size: 1.3em;
}
.episode .author {
    font-style: italic;
}
.episode .tags {
    color: red;
    padding-right: 1em;
}
.episode .content {
    margin-top: 0.5em;
    padding: 0.8em 1em;
    background-color: #fefefe;
}
.content.empty[contenteditable="true"]::after {
    content: "Paste formatted text here...";
    color: #777;
}
.episode .options {
    padding: 0.5em 1em;
    background-color: #fefefe;
}
.episode .link-to-bottom {
    float: right;
    margin-top: -0.5em;
    margin-left: 0.5em;
    margin-right: -1em;
    padding: 0.5em 1em;
    background-color: #eee;
}
.episode .link-to-top {
    float: right;
    margin-left: 0.5em;
    margin-right: -1em;
    padding: 0.5em 1em;
    background-color: #eee;
}

#comments {
    padding: 1em;
}

#writer {
    padding: 1em;
    width: fit-content;
}
.episode_preview {
    border: 2px solid #999;
    width: fit-content;
    min-width: 100%;
}
.episode_preview:empty {
    display: none;
}
.episode_preview.parent_preview {
    font-size: 0.7em;
}
form.edit_password {
    margin-top: 0.5em;
    margin-left: 1em;
    margin-bottom: 0.5em;
}

.header {
    padding-top: 1em;
    padding-left: 1em;
    padding-right: 1em;
}
.footer {
    padding-left: 1em;
    padding-right: 1em;
    padding-bottom: 1em;
}
.footer .page-form {
    display: inline-block;
    margin-top: 1em;
    margin-left: 0.5em;
    margin-right: 0.5em;
}