@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Dancing+Script:wght@600&display=swap');
/* ***********************************************************************
 *
 *  File:   common.css
 *
 *  Descr:  Common styles for the Švejk/Hašek document section.
 *
 *  Author: Jomar Hønsi, 2021-2026
 *
 * ************************************************************************/

:root {
    --text-color: #333;
    --bg-color: #eec;
    --main-font: Georgia, serif;
    --main-font: 'Inter', system-ui, Verdana, sans-serif;
    --heading-font: 'Crimson Pro', serif;
    --content-width: 960px;
}

/*
* Generic style overrides
*/
body {
    background-color: #aaa;
    font-family: var(--main-font);
    color: var(--text-color);
    font-size: 1.1em;
}

h1 {
    text-align: center;
    clear: both;
    padding: 0;
    margin: 16px;
    font-size: 1.8em;
}

h2 {
    text-align: left;
    font-size: 1.3em;
}

h3 {
    font-size: 1.1em;
}

h4 {
    font-size: 1.0em;
}

a, a:hover, a:visited {
    text-decoration: none;
    color: #06f;
}

p {
    margin: 0 0 15px 0;
    padding: 0;
    text-align: justify;
}

ul {
    list-style-type: none;
    padding-left: 5px;
}

ul li {
    padding-left: 5px;
}

pre {
    font-family: "Courier New", monospace;
    padding: 0 0 15px 0;
    margin-bottom: -10px;
    white-space: pre-wrap;
    word-wrap: break-word;
}

em {
    color: #336;
}

/* 
* Application specific styles
*/
div.main {
    margin: 0 auto;
    border: 1px solid #666;
    width: var(--content-width);
    padding: 20px;
    border-radius: 10px 10px 0 0;
    background-color: var(--bg-color);
    box-shadow: inset 0 0 20px #666;
    font-size: 1.2em;
}

div.title {
    text-align: center;
}

table.header {
    font-family: "Times New Roman", serif;
    background-color: #ccb;
    border: 2px solid #ccc;
    box-shadow: inset 0 0 10px #666;
    border-radius: 5px;
    margin-bottom: 5px;
    width: 100%;

    & td {
        padding: 10px;
    }

    & td:nth-of-type(2) {
        text-align: center;
    }

    & a {
        text-decoration: none;
        display: block;
        background-color: #eed;
        border-radius: 3px;
        width: 120px;
        text-align: center;
        box-shadow: inset 0 0 10px #666;
        padding: 5px;
        color: #003;
    }

    & a .material-icons {
        vertical-align: middle;
    }

    & a:hover {
        background-color: #eee;
        box-shadow: inset 0 0 6px #99a;
        color: #003;
    }

    & td:first-child,
    & td:last-child {
        width: 20%;
    }

    & td:nth-of-type(1) {
        width: 40%;
    }

    & td:nth-of-type(3) {
        width: 20%;
    }

    & td.popup-mode {
        text-align: center;
        white-space: nowrap;
        font-size: 0.8em;
    }

    & td.popup-mode label {
        display: block;
        margin-bottom: 6px;
        color: #345;
        font-size: 0.78em;
        font-weight: bold;
    }

    & td.popup-mode select {
        min-width: 105px;
        padding: 6px 28px 6px 9px;
        border: 1px solid #999;
        border-radius: 4px;
        background-color: #f7f7e8;
        color: #223;
        font: inherit;
        font-size: 0.9em;
        cursor: pointer;
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.18);
    }

    & td.popup-mode select:focus {
        outline: 2px solid #6688aa;
        outline-offset: 1px;
    }
}

h2.name {
    text-align: center;
    font-size: 16px;
    color: #345;
}

p.note {
    font-style: italic;
}

/* List of text items */
ol.theses {
    list-style-type: none;
    counter-reset: theses;
    padding-left: 20px;
}

ol.theses li {
    counter-increment: theses;
    text-align: justify;
    margin-bottom: 10px;
}

ol.theses li::before {
    content: counter(theses) ") ";
}

/* Tekststelle */
p.ts {
    font-family: "Helvetica", sans-serif;
    font-size: 12px;
}

/* Personenangabe */
span.person {
    color: #743
}

/* Ortsangabe */
span.place {
    color: #338
}

/* Institution */
span.inst {
    color: rgb(18, 98, 17)
}

/* Literature reference */
span.lit {
    letter-spacing: 1.2px;
    color: #336;
    font-style: italic;
}

/* Units */
span.unit {
    color: #363;
}

/* Quote */
span.sitat {
    color: #c00;
}

/* Military units */
span.mil {
    color: rgb(36, 75, 36);
}

/* Signature */
p.signature {
    text-align: center;
    font-family: "Dancing Script", cursive;
    font-size: 1em;
    padding: 10px;
    margin: 0;

    & span {
        font-size: 0.8em;
        font-style: normal;
        letter-spacing: 1.5px;
    }
}

p.signature-jh {
    text-align: center;
    font-family: "Times New Roman", serif;
    letter-spacing: 1.5px;
    font-style: italic;
    padding: 3px;
    margin: 0;

    & span {
        font-size: 0.8em;
        font-style: normal;
        letter-spacing: 1.5px;
    }
}

p.signature-top {
    text-align: center;
    font-family: "Times New Roman", serif;
    letter-spacing: 1.5px;
    font-style: italic;
    padding: 0;
    margin: 0;

    & span {
        font-size: 0.8em;
        font-style: normal;
        letter-spacing: 1.5px;
    }
}

p.pub-info {
    text-align: center;
    font-size: 0.9em;
    color: #666;
    margin: 5px;
}

p.copyright {
    text-align: center;
    font-size: 0.9em;
    color: #666;
    margin: 10px;
}

/* Image documentation etc. */
div.bdok, div.intro, div.footnotes {
    margin: 0;
    border: 1px solid #ccc;
    background-color: rgb(232, 243, 233);
    border-radius: 5px;
    padding: 10px;
    font-size: 0.9em;
}

div.intro::before {
    content: "Introduction";
    display: block;
    font-weight: bold;
    font-family: var(--heading-font);
    height: 40px;
    font-size: 1.5em;
    color: #336;
}

section.notes {
    margin: 0;
    border: 1px solid #ccc;
    background-color: #eee;
    padding: 10px;
}

div.diary {
    margin: 0 20px 0 20px;
    padding: 0 5px 0 5px;
}

figure.image {
    box-shadow: inset 0 0 3px #999;
    border-radius: 8px;
    margin: 0 10px 5px 10px;
    padding: 8px;
    background-color: rgb(226, 218, 158);
    max-width: 320px;
    float: right;

    & img {
        width: 100%;
    }

    & figcaption {
        padding: 10px 5px 5px 5px;
        text-align: center;
        font-size: 0.75em;
        color: #336;
    }
}

figure.image-custom {
    /* Placeholder for custom image styles, e.g. for filling the width of the document
    max-width: 100%;
    float: none;
    */
}

table.layout {
    width: 100%;
    text-align: center;
}

/* Links */
table.links {
    width: 100%;
    border: 1px solid #ccc;
}

table.links td:first-of-type {
    width: 50%;
}

table.links td {
    background-color: rgb(226, 226, 158);
    padding: 5px;
}

/* Fussnote */
div.footnotes {
    border-radius: 0px;
    font-size: small;
}

a.sup {
    color: blue;
    font-size: 9pt;
    vertical-align: top;
    padding-left: 2px;
}

a.sup::before {
    content: "[";
}

a.sup::after {
    content: "]";
}

a.ref {
    margin-right: 5px;
    color: blue;
    text-decoration: none;
    font-style: normal;
    font-weight: bold;
    font-size: small;
}

a.fn-source-target {
    background-color: #b3bce6;
    border: 1px solid #c79a00;
    border-radius: 3px;
    font-weight: bold;
    box-shadow: 0 0 0 4px rgba(255, 224, 102, 0.55), 0 2px 6px rgba(80, 60, 0, 0.2);
}

span.date {
    letter-spacing: 1.5px;
    color: #366;
}

span.quote {
    font-style: italic;
}

/*
* Footnote styles
*/
.fn-popup {
    display: none;
    position: fixed;
    z-index: 9999;
    max-width: 380px;
    background: linear-gradient(160deg, #fdfbe8 0%, #f5f0c8 100%);
    border: 1px solid #a09060;
    border-radius: 7px;
    padding: 10px 25px 11px 15px;
    font-size: 13px;
    font-family: "Times New Roman", serif;
    color: #333;
    line-height: 1.58;
    box-shadow: 2px 4px 16px rgba(0, 0, 0, 0.32);
    pointer-events: none;
}

.fn-popup.fn-wide {
    max-width: 760px;
}

.fn-popup.fn-sticky {
    pointer-events: auto;
}

.fn-popup.fn-visible {
    display: block;
}

.fn-popup-num {
    font-weight: bold;
    color: #366;
    margin-right: 5px;
}

.fn-close {
    position: absolute;
    top: 5px;
    right: 8px;
    cursor: pointer;
    font-size: 16px;
    line-height: 1;
    color: #39b42e;
    padding: 0;
    background: none;
    border: none;
    font-family: sans-serif;
    font-weight: bold;
}

.fn-close:hover {
    color: #c00;
}

a.sup {
    cursor: help;
}