/* Begin General */

body
{
    font-family: "DejaVu Sans", sans-serif;
    min-height: 100vh; /* Prevent zoom on input focus (Android) */
}

a
{
    text-decoration: underline;
    color: black;
}

a:hover
{
    text-decoration: underline dotted;
}

h1
{
    font-size: 1.5em;
}

h2
{
    font-size: 1.2em;
}

h3
{
    font-size: 1em;
}

/* End General */

/* Begin Header and Navigation - General */

#header
{
    display: flex;
    justify-content: space-between;
    background-color: #aaa;
    font-size: 1.2rem;
}

.pagetitle
{
    max-width: 50ex;
    padding: 1rem;
}

.pagetitle a
{
    text-decoration: none;
}

#breadcrumb
{
    box-sizing: content-box;
    max-width: 80rem;
    margin:auto;
    padding: 1rem;
}

/* End Header and Navigation - General */

/* Begin Header and Navigation - Regular Menu */



.mainmenu2
{
    display:none;
}

.mainmenu ul
{
    margin: 0;
    padding: 0;
    list-style-type: none;
    line-height: 1.5rem;
}

.mainmenu li
{
    margin: 0;
    padding: 0;
    position: relative;
}

.mainmenu a
{
    margin: 0;
    padding: 0 1em;
    text-decoration: none;
    display: block;
    font-weight: bold;
    font-size: 1.1rem;
}

.mainmenu > ul
{
    height: 100%;
}

.mainmenu > ul > li
{
    height: 100%;
    float: left;
}

.mainmenu > ul > li:hover,
.mainmenu > ul > li:focus
{
    background-color: #888;
}

.mainmenu > ul > li > a
{
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.mainmenu > ul > li > ul
{
    position: absolute;
    display: none;
    background: #dddddd;
    min-width: 100%;
    z-index: 1;
}

.mainmenu > ul > li:hover > ul,
.mainmenu > ul > li:focus > ul
{
    display:block;
}

.mainmenu > ul > li > ul > li
{
    padding: 0.5em 0;
}

/* End Header and Navigation - Regular Menu */

/* Begin Header and Navigation - Overlay Menu */

@media only screen and (max-width: 900px)
{
    .mainmenu
    {
        display:none;
    }

    .mainmenu2
    {
        display: flex;
        font-size: 3rem;
        padding-right: 1rem;
        flex-direction: column;
        justify-content: center;
    }
}

#overlaymenu
{
    height: 0;
    width: 100%;
    position: fixed;
    z-index: 1001;
    left: 0;
    top: 0;
    background-color: #ddd;
    overflow-x: hidden;
    transition: 0.5s;
}

#overlaymenu ul
{
    list-style-type: none;
}

#overlaymenu > ul
{
    position: relative;
    margin-top: 4rem;
    margin-left: 10%;
}

#overlaymenu a
{
    text-decoration: none;
    display: block;
    font-size: 1.5rem;
}

#overlaymenu > ul a
{
    padding: 0.3em;
}

#overlaymenu a.menulink:hover,
#overlaymenu a.menulink:focus
{
    color: #666;
}

#overlaymenuclose
{
    position: absolute;
    top: 0.2em;
    right: 0.5em;
    font-size: 200%;
}

@media only screen and (max-height: 450px)
{
    #overlaymenu a
    {
        font-size: 1rem;
    }
}

/* End Header and Navigation - Overlay Menu */

/* Begin Header and Navigation - InputHelper */

#inputhelperlink
{
    position: fixed;
    z-index: 1002;
    top: 3em;
    right: 0.5em;
    font-size: 200%;
    display:none;
    width: 2em;
    height: 2em;
    line-height: 2em;
    text-align: center;
}

#inputhelperstart
{
    text-decoration: none;
    width: 100%;
    height: 100%;
    display: block;
    background-color: #bbf;
    border-radius: 50%;
    box-shadow: 0.1em 0.1em 0.3em #ddd;
}

#inputhelperbox
{
    height: 0;
    width: 100%;
    position: fixed;
    z-index: 1003;
    left: 0;
    top: 0;
    background-color: #ddd;
    overflow-x: hidden;
    transition: 0.5s;
}

#inputhelpercontent
{
    padding: 2em;
    padding-top: 5em;
    height: 100%;
    display: flex;
    flex-direction: column;
}

#inputhelperinputbox
{
    margin-top: 1em;
    width: 100%;
    flex-grow: 1;
}

#inputhelperinput
{
    width:100%;
}

textarea#inputhelperinput
{
    height:100%;
}

#inputhelperboxapply
{
    text-decoration: none;
    position: absolute;
    top: 0.7em;
    right: 1em;
    font-size: 200%;
}

#inputhelperboxclose
{
    text-decoration: none;
    position: absolute;
    top: 0.7em;
    left: 1em;
    font-size: 200%;
}

/* End Header and Navigation - InputHelper */

/* Begin Main */

#main
{
    padding: 1rem;
}

.content
{
    max-width: 80rem;
    margin: auto;
}

.inline
{
    display:inline-block;
}

/* End Main */

/* Begin Table */

table
{
    width: 100%;
}

thead tr,
tbody tr:nth-child(even)
{
    background-color: #ccc;
}

tbody tr:nth-child(odd)
{
    background-color: #fff;
}

th,
td
{
    text-align: left;
    padding: 0.2em;
}

.smallcol
{
    width: 1px;
}

/* End Table */

/* Begin Lists and Forms */

.itemedit_fieldbox,
.itemview_fieldbox
{
    margin-bottom: 1em;
}

.itemedit_fieldbox > input,
.itemedit_fieldbox > textarea,
.itemedit_fieldbox > select,
.itemedit_fieldbox > .multiselect
{
    width: 100%;
}

.itemedit_relation,
itemview_relation
{
    overflow: scroll;
}

.itemedit_relation textarea.form
{
    min-height: auto;
}

.itemedit_deletedetailcolumn
{
    text-align: center;
}

.deleterequest td:not(.itemedit_deletedetailcolumn)
{
    filter: contrast(0.5) blur(1px);
}

.itemview_compare_old,
.itemview_compare_new
{
    margin-left: -.5rem;
    margin-right: -.5rem;
    padding-left: .5rem;
    padding-right: .5rem;
    padding-top: .4rem;
    padding-bottom: .4rem;
    min-height: calc(1em + .8rem);
}

.itemview_compare_old
{
    margin-top: -.4rem;
    background-color:#ffddd0;
}

.itemview_compare_new
{
    margin-bottom: -.4rem;
    background-color:#a0ffea;
}

.deletebox
{
    margin-top: 1ex;
    padding: 1em;
    border: 3px solid red;
    background-color: #fdd;
}

.listing
{
    overflow:scroll;
}

.listing-toolbar > *
{
    margin-top: 1em;
    margin-bottom: 1em;
}

.listing-toolbar > *:not(:last-child)
{
    margin-right: 3em;
}

.listing-action:not(:last-child) {
    margin-right: 0.5rem;
}

.paging
{
    display: inline-flex;
}

.paging-current
{
    padding-left: .5rem;
    padding-right: .5rem;
    margin-bottom: .5rem;
    line-height: 1.25;
    background-color: #fff;
    color: inherit;
    padding-top: .4rem;
    padding-bottom: .4rem;
    border: 1px solid #b8c2cc;
    border-style: solid;
    border-width: 1px 0px;
    border-color: #b8c2cc;
}

.paging-left,
.paging-center,
.paging-right,
.paging-last
{
    margin-right: 0px !important;
    border-top-left-radius: 0px !important;
    border-bottom-left-radius: 0px !important;
}

.paging-first,
.paging-left,
.paging-center,
.paging-right
{
    margin-left: 0px !important;
    border-top-right-radius: 0px !important;
    border-bottom-right-radius: 0px !important;
}

.paging-first
{
    margin-right: 2px !important;
}

.paging-last
{
    margin-left: 2px !important;
}

.form > .tox-tinymce
{
    border: 1px solid #b8c2cc;
    border-radius: 0.125rem;
    margin-bottom: .5rem;
    transition: box-shadow 200ms ease, border 200ms ease;
}

.form > .tox-tinymce.editorfocused
{
    outline: 0;
    box-shadow: 0 0 0 3px rgba(52, 144, 220, .5);
    border-color: #3490dc;
}

.form.error >.tox-tinymce
{
    border-color: #e3342f;
}

.form.error > .tox-tinymce.editorfocused
{
    box-shadow: 0 0 0 3px rgba(227, 52, 47, .5);
}

.filepond--root.form.error .filepond--panel-root
{
    border: 1px solid #e3342f;
}

.filepond--root.form.error .filepond--file-poster
{
    background-color: #e3342f;
}

/* End Lists and Forms */
