

body
{
    background-color: #eee;
    margin: 0;
    padding: 0;
    font-family: sans-serif;
}

.title
{
    position: relative;
    background-color: #63513e;
    color: #eef;
    margin: 0;
    padding-top: 1.5em;
    padding-left: 1em;
    padding-right: 1em;
    padding-bottom: 0.7em;
    line-height: 0.8em;
    z-index: 0;
}
.title .sub
{
    font-size: 70%;
}
.title img
{
    position: absolute;
    bottom: -0.4em;
    right: 0.3em;
    z-index: -1;
    max-height: 3.5em;
}

p
{
    text-align: justify;
}
p.console
{
    max-width: 100%;
    background-color: #ffc;
    padding: 0.5em;
    border: solid medium #ccc;
    font-family: monospace;
    text-align: left;
}

.menu
{
    display: flex;
    flex-direction: column;
}
.menu a
{
    display: block;
    text-decoration: none;
    text-align: center;
    margin: 0;
    border: 1px solid #876;
    padding: 0.5em 0.5em;
    background-color: #feb;
    color: #000;
}
.menu a:hover
{
    background-color: #fe9;
    color: #521;
}
.menu a:active
{
    background-color: #fe7;
    color: #832;
}

.main
{
    margin: 0 12%;
}

.screenshot
{
    margin: 1.5em 12% 0 12%;
    text-align: center;
}
.screenshot img
{
    max-width: 100%;
    max-height: 50vh;
    box-shadow: 3px 3px 20px #000;
}

.warning
{
    color: #f00;
}
.doc
{
    width: 100%;
    height: 800em;
}

.screenshot_thumbnail
{
    margin: 1em;
    max-width: 60vw;
    max-height: 30vh;
    box-shadow: 3px 3px 20px #000;
}
.screenshot_area
{
    text-align: center;
}

h2 {
    margin-top: 1em;
    margin-bottom: 0.2em;
}

table.events
{
    margin-left: 0;
    margin-right: 0;
    border-color: #000;
    border-style: solid;
    border-width: 1px;
    border-spacing: 0;
    border-collapse: collapse;
}
table.events tr
{
    margin: 0;
    padding: 0;
}
table.events th, table.events td
{
    padding: 0.3em;
    border-color: #000;
    border-style: solid;
    border-width: 1px;
}
table.events th
{
    font-weight: bold;
    text-align: left;
    vertical-align: top;
}
table.events td
{
}
table.events td h
{
    display: block;
    vertical-align: top;
    font-weight: bold;
}

.warning
{
    padding-left: 0.5em;
    padding-right: 0.5em;
    background-color: #910;
    color: #ff2;
    font-weight: bold;
}


@media screen and (min-width: 35em) {

    html {
        background-color: #222730;
    }

    body {
        margin: 0 12%;
        border-left: 1px solid #333;
        border-right: 1px solid #333;
    }

    .title, .menu {
    }

    .menu {
        flex-direction: row;
    }

    .menu a {
        flex-grow: 1;
    }

    .main, .screenshot {
        margin: 1.5em 1em 0 1em;
    }

    .main {
        padding-bottom: 1.5em;
    }

    table.events
    {
        margin-left: 1em;
        margin-right: 1em;
    }

}


@media screen and (min-width: 60em) {

    .title .sub
    {
        font-size: 100%;
    }

    table.events
    {
        margin-left: 2em;
        margin-right: 2em;
    }

}


