html {
    box-sizing: border-box;
    background: #eee;

    min-height: 100%;
    /* needed for container min-height */
}

*,
*:before,
*:after {
    box-sizing: inherit;
}

a {
    color: #2786cf;
}

strong {
    font-weight: 600;
}

body {

    line-height: 150%;
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;

}

blockquote {

    padding: 3px 3px;
    margin: 0 0 10px 0;
    border: 0 none;
}

blockquote footer cite {

    font-size: 12px;
    color: #999;
}

small {

    color: #999;
}

blockquote footer,
blockquote footer a {
    font-size: 12px;
    color: #999;


}

input,
textarea,
select {

    display: inline-block;
    padding: 4px;
    border: 1px solid #aaa;
    background: #f3f3f3;
    /*box sizing properties*/
    box-sizing: content-box;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    margin-top: 3px;
    margin-right: 3px;
    margin-bottom: 3px;
    border: 0 none;
    font-family: 'Open Sans', sans-serif;
    font-size: 12px;

    /*

    border: 0 none; 
    padding: 3px 2px 2px 2px; 
    box-sizing: content-box;
       -moz-box-sizing: content-box;
           -webkit-box-sizing: content-box;
*/
}

input[type="date"] {

    text-align: right;
}

input[type="radio"],
input[type="checkbox"] {

    margin-top: 10px;
    margin-right: 2px;
}

input:active,
textarea:active,
select:active {

    background-color: rgb(250, 238, 206);
    outline: 0;
}


a:focus,
button:focus,
input:focus,
textarea:focus,
select:focus {

    box-shadow: 0 0 4px #2786cf;
    background-color: rgb(250, 238, 206);
    outline: 0;
    color: #000;
}


textarea.max {
    width: 100%;
    min-height: 100px;
}

button, a.button {

    padding: 5px 20px;
    border: 0 none;
    background: #2786cf;
    color: #fff;
    border-radius: 3px;
    font-size: 13px;
    text-decoration: none;
}

button.secondary, a.button.secondary {

    background: #bbb;
}

nav {

    background-color: rgb(17, 24, 39);
    color: #fff;
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    width: 11em;
    padding: 0;
    z-index: 9999;
    align-content: center !important;
    padding-bottom: 10px;

}

nav img {

    width: 80px;
    height: 80px;
    margin: 0 auto 20px auto;
}

nav a {

    color: rgb(229, 231, 235);
    text-decoration: none;
    line-height: 250%;
    padding: 0 20px;
    font-size: 12px;
    color: rgb(229, 231, 235);
    border-radius: 0.25rem;


    padding: 5px 10px;
    line-height: 150%;

}

nav a em {

    font-style: normal;
}


nav a:hover {

    color: #f2f2f2;
    background-color: rgb(55, 65, 81);
}

nav a.active {

    background: #333;
    color: #f2f2f2;
    background-color: rgb(55, 65, 81);
}



nav a::first-letter {

    font-size: 15px;
}

nav h2 {
    padding: 10px 20px 0 20px;
    margin: 0;
    font-size: 16px;
}

nav h3 {

    margin-bottom: 0;
    color: #888;
    padding: 10px 10px 0 10px;
    font-size: 12px;
    text-transform: uppercase;
    line-height: 120%;
}

nav h4 {
    font-size: 14px;
    color: #fff;
    font-weight: 400;
    padding: 0 20px 0 20px;

}

nav h5 {
    font-size: 10px;
    color: #999;
    font-weight: normal;
    padding: 0 20px 10px 20px;
}

.label_green {

    background: #549C70;
    color: #FFF;
    font-size: 11px;
    padding: 2px 5px;
    display: inline-block;
}

.label_grey {

    background: #999;
    color: #FFF;
    font-size: 11px;
    padding: 2px 5px;
    display: inline-block;
}

.label_orange {

    background: #CEA812;
    color: #FFF;
    font-size: 11px;
    padding: 2px 5px;
    display: inline-block;
}

.label_red {

    background: #900;
    color: #FFF;
    font-size: 11px;
    padding: 2px 5px;
    display: inline-block;

}

main {

    margin-left: 11em;
    display: block;
    max-width: 120em;
    padding-top: 40px;

}

aside {

    position: fixed;
    top: 0;
    left: 11em;
    right: 0;
    background-color: #2786cf;
    color: #fff;
    line-height: 30px;
    height: 30px;
    z-index: 9999;
}

aside.topbar {
    flex-wrap: nowrap;
}

aside.topbar span {
    flex-shrink: 1;
    text-overflow: ellipsis;
    height: 30px;
    white-space: nowrap;
    overflow: hidden;
}

aside select {

    margin: 2px 5px;
    padding: 2px 2px 1px 2px;
    background: transparent;
    color: #fff;
    border-bottom: 1px solid #fff;
}

aside img {
    display: none;
}

aside a {

    color: #fff;
    text-decoration: none;
    display: block;
    padding: 0 15px;
    font-size: 13px;
}

aside input {

    border: 0 none;

}

aside a:hover {

    text-decoration: underline;
}

.zebra tr:nth-child(even) {
    background: #f9f9f9;
}

.zebra_white tr:nth-child(odd) {
    background: #fff;
}

.scroll-container {
    text-wrap: nowrap;
    width: 100%;
    padding-right: 250px;
    background-color: #fff;
    /*
    overflow-x: auto;
    position: relative;
    margin-bottom: env(safe-area-inset-bottom);
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    
    */
    /*max-height: calc(100vh - 125px);*/
}

table.scroll_table {
    border-collapse: collapse;
    width: 100%;
    min-width: 300px;
}

table.scroll_table th {
    height: 200px;
    white-space: nowrap;
    position: sticky;
    top: 0;
    vertical-align: top;
    line-height: 15px;
    font-weight: 400;
    font-size: 14px;
    background-color: #fff;
    scroll-snap-align: start;
}

table.scroll_table thead tr th:first-child {
    background-color: #fff;
}

table.scroll_table th > div {
    transform: 
    /* Magic Numbers */
    translate(23px, 159px)
    /* 45 is really 360 - 45 */
    rotate(315deg);
    width: 30px;
}

table.scroll_table th > div > span {
    border-bottom: 1px solid #ccc;
    padding: 0px 0px;
}

table.scroll_table tr.separator td {

    border-top: 2px solid #595959;
    border-bottom: 2px solid #d5d5d5;
}

/*table.scroll_table th:first-child, */
table.scroll_table td:first-child {
    position: sticky;
    left: 0;
    z-index: 2;
    border-left: 0 none;
    /* Hintergrund aus der tr vererben */
    background-color: inherit;
    text-align: left;
    width: 350px;
}

table.scroll_table td {
    padding: 10px 4px 8px 4px !important;
    vertical-align: top;
    line-height: 15px;
    scroll-snap-type: x mandatory;
    border-left: 1px solid var(--gray-300);
    text-wrap: nowrap;
    text-align: center;
}

::backdrop {
    background-image: linear-gradient(
        45deg,
        rgb(70, 70, 70),
        rgb(109, 109, 109),
        rgb(109, 109, 109),
        rgb(70, 70, 70)
    );
    opacity: 0.75;
}

dialog.report_description {

    text-wrap: wrap;
    padding: 20px;
    margin: auto auto;
    border: 1px solid #999;
    border-radius: 3px;
    background: #eee;
    max-width: 600px;
    max-height: 600px;
    overflow: auto;
}

dialog.report_description p {

    text-wrap: wrap;
    word-wrap: break-word;
    margin-bottom: 20px;
}

table {

    width: 100%;
    border-collapse: collapse;

}

table tr.subcount {
    border-top: 2px solid #999;
    border-bottom: 2px solid #999;
}

table.relations {

    margin-top: 10px;
    margin-left: -3px;
    margin-right: -3px;
    width: 100%;
}

table.relations tr {

    display: table-row;
    border-top: 0 none;
    border-bottom: 1px solid #eee;

}

table.relations th {

    font-size: 11px;
    border: 0 none;
}

table.relations td {

    font-size: 11px;
    vertical-align: top;
    border: 0 none;
}

table.relations tr:first-child tr {

    border-top: 0 none;
}

table.relations tr.history td {

    color: #999;
}

table.relations tr.history th {

    color: #999;
}

table.max {
    background: #FFF;

}

table th {


    text-align: left;
}

table thead tr {

    border-bottom: 1px solid #999;
}

table tbody tr {
    border-bottom: 1px solid #ddd;
}

.table_form {

    border: 1px solid #999;
}

.table_form th {
    border: 1px solid #999;
    text-align: left;
}

.table_form td {
    border: 1px solid #999;
    text-align: left;
}

.dashed td {
    border-top: 0px;
    border-bottom: 1px dashed #999;
}

table th.right,
table td.right {

    text-align: right;
}

table th.center,
table td.center {

    text-align: center;
}

table th,
table td {

    vertical-align: top;
    padding: 2px 4px 1px 4px;
    border: 0 none;
}

table tr.selected {

    background: lightsteelblue;
}

table.hovertable tr:hover {

    background-color: #e0e0e0;
}

table tr.total {

    border-bottom: 15px solid transparent;
}

table tr.total td {
    border-bottom: 0 none;
}

table td input {

    margin: 0 !important;
    max-width: 200px !important;
}


header {
    padding: 0;
    margin: 0 0 10px 0;
    flex-grow: 1;
}

header small {

    padding: 0 0;
    font-size: 12px;
}

header small a {

    color: #333;
    text-decoration: none;
}

header a {

    cursor: pointer;
}

header a.selected {

    color: #000;
}


header h1 {

    padding: 5px 0;
    margin: 0;
    display: block;
    border-bottom: 1px solid #CCC;
}

section {

    background-color: #FFF;
    padding: 10px;
    margin-bottom: 10px;
    border-radius: 3px;

}


p {

    font-size: 13px;
}

p.help {

    font-size: 10px;
    padding: 10px;
    background: #FFFFCC;
    margin: 5px -10px -10px -10px;

}

span.right {

    float: right;
}

.blankslate {

    margin: 5px -10px -10px -10px;
    padding: 20px;
    text-align: center;
    font-size: 12px;
    color: #999;
}

h1,
h2,
h3,
h4,
h5,
h6 {

    margin: 0;
    padding: 0;
}

h1 {

    font-size: 24px;
    font-weight: 300;
}

h1 span {

    font-size: 50%;
    color: #999;
    font-weight: normal;
}

h1 span a.active {

    color: #555;
    text-decoration: none;
}

h2 {

    font-size: 21px;
    font-weight: 300;
}

h3 {

    font-size: 15px;
    font-weight: normal;
    position: relative;
    line-height: 200%;
}

h3 span {

    font-size: 70%;
    font-weight: normal;
    padding: 5px 10px;
}

h3 span a {

    text-decoration: none;
}

ul {


    list-style-type: square;
    padding-left: 1.5em;
}

.form {

    padding: 0;
    margin: 0;
    list-style: none;
    background: #fff;
}

.form li {

    padding: 5px 0;
    display: flex;
    position: relative;
    border-bottom: 1px solid #eee;
}

.form li ul {

    margin: 0;
    padding: 0;
}

.form li ul li {

    padding: 2px 0;
    border-bottom: 0 none;
}

.form li label {

    padding: 3px 10px 2px 2px;
    text-align: right;
    width: 15em;
}

.form li span {

    padding: 3px 10px 2px 2px;
}

.form li span.scrollable_list {

    padding: 3px 10px 2px 2px;
    max-height: 300px;
    overflow-y: scroll;
}

input[type=number],
input.integer {

    flex: 1 0 0;
    max-width: 100px !important;
    margin-right: 10px;
    text-align: right;
}


input[type=text] {

    flex: 1 0 0;
    max-width: 400px;
    margin-right: 10px;
}

input[type=text].max {

    max-width: 1000px;
}

input.decimal {

    max-width: 100px !important;
    text-align: right;
}

input.number {
    max-width: 90% !important;
    text-align: right;
}

.form li button {

    margin-left: 15em;
    margin-right: 10px;
}

.form li label.inline {

    display: block;
    padding: 0;
    width: auto;
    text-align: left;
}

/* hide empty error span */
.error:empty,
.form li .error:empty {

    display: none;
}

.error,
.form li .error {
    color: #900;
    border-radius: 3px;
    padding: 3px 5px;
    font-weight: bold;
}

.error_cell input {

    border: 1px solid #900;
}

table td .error {

    display: block;
}

table td.onclick {

    cursor: pointer;
    color: #2786cf;
}

.container {

    display: flex;
    flex-direction: row;
    align-content: flex-start;
    flex-wrap: wrap;
    /* overflow: hidden; disabled for input-date*/
}

.container-max {

    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    overflow: hidden;
}

.format_count {
    width: 50px;
    text-align: right;
}


.vertical {

    flex-direction: column;
    flex-wrap: nowrap;
}

.none {
    margin: 0;
    padding: 0;
}

.box-auto {

    flex: 1 0 0;
}

.box {
    flex: 1 0 0;
    margin-right: 10px;
}


.box-auto input {

    width: 100%;
}

.double {

    flex: 2 0 0;
}

.quadruple {

    flex: 4 0 0;
}

.box-min {

    flex: 0 1 auto;
    margin-right: 10px;
}

.box-100 {

    flex: 0 1 100%;
    margin-right: 0;

}


.box-50 {

    flex: 0 1 calc(50% - 10px);
    margin-right: 10px;
}

.box-66 {

    flex: 0 1 calc(66.666% - 10px);
    margin-right: 10px;
}

.box-33 {

    flex: 0 1 calc(33.333% - 10px);
    margin-right: 10px;
}

.box-25 {

    flex: 0 1 calc(25% - 10px);
    margin-right: 10px;
}

.box-20 {

    flex: 0 1 calc(20% - 10px);
    margin-right: 10px;
}

.box-10 {

    flex: 0 1 calc(10% - 10px);
    margin-right: 10px;
}


.status_msg {

    background: #090;
    color: #fff;
    font-weight: 600;
    padding: 10px;

}

.status_msg a {
    color: #fff;
    font-weight: 800;
}

.error_msg {

    background: #900;
    color: #fff;
    font-weight: 600;
    padding: 10px;

}

tr.void>td,
td.void {
    text-decoration: line-through;
}

.filter_label {

    display: inline-block;
    padding: 2px 0 4px 10px;
    border-radius: 3px;
    background: #ccc;
}

.filter_label a {

    display: inline-block;
    padding: 0 4px;
    color: #900;
    text-decoration: none;
}


.actions {

    background-color: lightyellow;
}

p.report {

    margin-top: 0px;
}

.reports>h2 {

    padding-bottom: 0.5em;
    line-height: 150%;
}

.reports>h1 {

    padding-top: 0.5em;
    line-height: 150%;
}

.reports>h3 {

    padding-bottom: 0.5em;
    line-height: 150%;
}

/* Media-Query für mobile < 1024px Breite */


.label_red {

    display: inline-block;
    padding: 1px 5px 2px 5px;
    font-size: 10px;
    line-height: 130%;
    background: #900;
    color: #fff;
}

.label_green {

    display: inline-block;
    padding: 1px 5px 2px 5px;
    font-size: 10px;
    line-height: 130%;
    background: #090;
    color: #fff;
}

.fill_height {
    display: flex;
    flex-direction: column;
    height: 100%;
    height: 80vh;
}

.fill_height>div {

    display: flex;
    justify-content: top;
    flex-direction: column;
    overflow-y: auto;

    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
}

.fill_height>div.auto {

    display: flex;
    justify-content: top;
    flex-direction: column;
    overflow-y: auto;

    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: auto;

}

.delete.select-single {

    color: #900;
    font-weight: bold;
    background: #fff;
    cursor: pointer;
}

.delete.select-single:hover {
    background: #900;
    color: #fff;
}

#selected.select-single {

    border: 0 none;
}


ul.tree,
ul.tree ul {

    list-style: square;
    margin: 0;
    padding: 0;
    text-indent: 0;
    padding-left: 15px;
    padding-bottom: 15px;
}

ul.tree li {

    margin: 0;
    padding: 3px 0;

}

ul.tree a {

    text-decoration: none;
}

.print_only {
    display: none;
}

.doughnut-legend {
    list-style: none;
    position: absolute;
    left: 8px;
    top: 0;
    z-index: 99999;
}

.doughnut-legend li {
    display: block;
    padding-left: 30px;
    position: relative;
    margin-bottom: 4px;
    border-radius: 5px;
    padding: 2px 8px 2px 28px;
    font-size: 14px;
    cursor: default;
    -webkit-transition: background-color 200ms ease-in-out;
    -moz-transition: background-color 200ms ease-in-out;
    -o-transition: background-color 200ms ease-in-out;
    transition: background-color 200ms ease-in-out;
}

.doughnut-legend li:hover {
    background-color: #fafafa;
}

.doughnut-legend li span {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 20px;
    height: 100%;
    border-radius: 5px;
}

table tr {
    display: grid;
    grid-template-rows: auto;
    column-gap: 2px;
    row-gap: 0;
}


@media screen {

    table.report_table {

        min-width: 1024px;
    }

    section.reports {

        width: 1024px;
        overflow: visible;
    }

    table.report_table {
        min-width: 640px;
    }
}

.table_news tr {

    grid-template-columns: 8% 5% auto 8% 5%;
    grid-template-areas: "title id subject date link";
}

.table_news .row_id {

    grid-area: id;
}

.table_news .row_subject {

    grid-area: subject;
}

.table_news .row_date {

    grid-area: date;
}

.table_news .row_link {

    grid-area: link;
}

.table_news .row_title {

    grid-area: title;
}

table.report_table tr {

    display: table-row;
}

.table_quickcreate tr {

    grid-template-columns: 18% 18% 12% 20% 31%;
    grid-template-areas: "firstname lastname gender dob unit";
}

.table_quickcreate .row_firstname {
    grid-area: firstname;
}

.table_quickcreate .row_lastname {
    grid-area: lastname;
}

.table_quickcreate .row_gender {
    grid-area: gender;
}

.table_quickcreate .row_dob {
    grid-area: dob;
}

.table_quickcreate .row_unit {
    grid-area: unit;
}


.table_quickcreate tr td input[type=text],
.table_quickcreate tr td select {

    margin: 0;
}

.table_jobs tr {


    grid-template-columns: auto 2fr 2fr 2fr 1fr 130px 130px 60px 80px 80px;
    grid-template-areas: "id title description description description date date_end duration label actions";

}

.table_tickets tr {


    grid-template-columns: 60px auto 120px 80px;
    grid-template-areas: "id title name label";

}

.table_systemfields tr {

    grid-template-columns: 50px 1fr 1fr 1fr 1fr 1fr;
    grid-template-areas: "sorting title type fieldname actions up";

}

.table_clients tr {

    grid-template-columns: 4fr 1fr 1fr 1fr;
    grid-template-areas: "title details voucher currency";

}

.table_masterdata tr {

    grid-template-columns: 1fr 1fr 1fr;
    grid-template-areas: "title source details";

}

.table_event_acts tr {
    
    grid-template-columns: 1fr 1fr;
}

.table_list_masterdata tr {

    display: table-row;
}

.table_members th,
.table_members tr {


    grid-template-columns: 25% 20% 10% 10% 10% 10% 15%;
    grid-template-areas: "fullname unit ministry date gender age sealing ";
}


.table_units th,
.table_units tr {

    grid-template-columns: 40% 20% 40%;
    grid-template-areas: "name type parent ";
}

.table_units td:nth-child(1),
.table_units th:nth-child(1) {
    grid-area: name;
}

.table_units td:nth-child(2),
.table_units th:nth-child(2) {
    grid-area: type;

}

.table_units td:nth-child(3),
.table_units th:nth-child(3) {
    grid-area: parent;
    font-size: 80%;
    text-decoration: none;
}



.table_units_extended th,
.table_units_extended tr {

    grid-template-columns: 30% 20% 30% 20%;
    grid-template-areas: "name type parent date_closed";
}

.table_units_extended td:nth-child(1),
.table_units_extended th:nth-child(1) {
    grid-area: name;
}

.table_units_extended td:nth-child(2),
.table_units_extended th:nth-child(2) {
    grid-area: type;

}

.table_units_extended td:nth-child(3),
.table_units_extended th:nth-child(3) {
    grid-area: date_closed;

}

.table_units_extended td:nth-child(3),
.table_units_extended th:nth-child(3) {
    grid-area: parent;
    font-size: 80%;
    text-decoration: none;
}



.table_events th,
.table_events tr {

    grid-template-columns: 10% 12% 18% 12% 20% 8% 20%;
    grid-template-areas: "date unit type no officiant foreign action ";
}

.table_events td:nth-child(1),
.table_events th:nth-child(1) {
    grid-area: date;
}

.table_events td:nth-child(2),
.table_events th:nth-child(2) {
    grid-area: unit;

}

.table_events td:nth-child(3),
.table_events th:nth-child(3) {
    grid-area: type;
}

.table_events td:nth-child(4),
.table_events th:nth-child(4) {
    grid-area: no;
}

.table_events td:nth-child(5),
.table_events th:nth-child(5) {
    grid-area: officiant;
}

.table_events td:nth-child(6),
.table_events th:nth-child(6) {
    grid-area: foreign;
}

.table_events td:nth-child(7),
.table_events th:nth-child(7) {
    grid-area: action;
}


.table_events_history th,
.table_events_history tr {

    grid-template-columns: 8% 10% 12% 12% 10% 10% 5% 8% 8% 8%;
    grid-template-areas: "date state attending guests voucher offering . delete edit void";
}

.table_events_history td:nth-child(1),
.table_events_history th:nth-child(1) {
    grid-area: date;
}

.table_events_history td:nth-child(2),
.table_events_history th:nth-child(2) {
    grid-area: state;

}

.table_events_history td:nth-child(3),
.table_events_history th:nth-child(3) {
    grid-area: attending;
}

.table_events_history td:nth-child(4),
.table_events_history th:nth-child(4) {
    grid-area: guests;
}

.table_events_history td:nth-child(5),
.table_events_history th:nth-child(5) {
    grid-area: voucher;
}

.table_events_history td:nth-child(6),
.table_events_history th:nth-child(6) {
    grid-area: offering;
}

.table_events_history td:nth-child(8),
.table_events_history th:nth-child(8) {
    grid-area: delete;
}

.table_events_history td:nth-child(9),
.table_events_history th:nth-child(9) {
    grid-area: edit;
}

.table_events_history td:nth-child(10),
.table_events_history th:nth-child(10) {
    grid-area: void;
}

.table_batches th,
.table_batches tr {

    grid-template-columns: 6% 15% 10% 10% 10% 10% 5% 5% 5% 6% 7% 6%;
    grid-template-areas: "no unit offering deductions deposit difference foreign deposits status edit report reopen";
}

.table_batches td:nth-child(1),
.table_batches th:nth-child(1) {
    grid-area: no;
}

.table_batches td:nth-child(2),
.table_batches th:nth-child(2) {
    grid-area: unit;

}

.table_batches td:nth-child(3),
.table_batches th:nth-child(3) {
    grid-area: offering;
}

.table_batches td:nth-child(4),
.table_batches th:nth-child(4) {
    grid-area: deductions;
}

.table_batches td:nth-child(5),
.table_batches th:nth-child(5) {
    grid-area: deposit;
}

.table_batches td:nth-child(6),
.table_batches th:nth-child(6) {
    grid-area: difference;
}

.table_batches td:nth-child(7),
.table_batches th:nth-child(7) {
    grid-area: foreign;
}

.table_batches td:nth-child(8),
.table_batches th:nth-child(8) {
    grid-area: deposits;
}


.table_batches td:nth-child(9),
.table_batches th:nth-child(9) {
    grid-area: status;
}

.table_batches td:nth-child(10),
.table_batches th:nth-child(10) {
    grid-area: edit;
}

.table_batches td:nth-child(11),
.table_batches th:nth-child(11) {
    grid-area: report;
}

.table_batches td:nth-child(12),
.table_batches th:nth-child(12) {
    grid-area: reopen;
}




.table_members .row_fullname {
    grid-area: fullname;
}

.table_members .row_unit {
    grid-area: unit;
}

.table_members .row_ministry {
    grid-area: ministry;
}

.table_members .row_date {
    grid-area: date;
}

.table_members .row_gender {
    grid-area: gender;
}

.table_members .row_age {
    grid-area: age;
}

.table_members .row_sealing {
    grid-area: sealing;
}




/* Table Masterdata */
.table_masterdata .row_title {
    grid-area: title;
}

.table_masterdata .row_source {
    grid-area: source;
}

.table_masterdata .row_details {
    grid-area: details;
    justify-self: end;

}

/* Table Systemfields */
.table_systemfields .row_sorting {
    grid-area: sorting;
}

.table_systemfields .row_title {
    grid-area: title;
}

.table_systemfields .row_type {
    grid-area: type;
}

.table_systemfields .row_fieldname {
    grid-area: fieldname;
}

.table_systemfields .row_actions {
    grid-area: actions;
    justify-self: end;
}

.table_systemfields .row_up {
    grid-area: up;
    justify-self: end;
}

.table_systemfields .row_down {
    grid-area: down;
    justify-self: end;
}

/* Table Clients */
.table_clients .row_title {
    grid-area: title;
}

.table_clients .row_action {
    grid-area: action;
}

.table_clients .row_details {
    grid-area: details;
}

.table_clients .row_currency {
    grid-area: currency;
}

.table_clients .row_voucher {
    grid-area: voucher;
}

/* Table Jobs */
.table_jobs .row_id {
    grid-area: id;
}

.table_jobs .row_title {
    grid-area: title;
}

.table_jobs .row_date {
    grid-area: date;
}

.table_jobs .row_date_end {
    grid-area: date_end;
}

.table_jobs .row_duration {
    grid-area: duration;
}

.table_jobs .row_label {
    grid-area: label;
    justify-self: end;
}

.table_jobs .row_description {
    grid-area: description;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

.table_jobs .row_actions {
    grid-area: actions;
    justify-self: end;
    align-self: end;
}

/* Table Tickets */
.table_tickets .row_id {
    grid-area: id;
}

.table_tickets .row_title {
    grid-area: title;
}

.table_tickets .row_label {
    grid-area: label;
    justify-self: end;
}

.table_tickets .row_name {
    grid-area: name;
}

.table_news_full tr {

    grid-template-columns: 60px auto 80px;
    grid-template-areas: "id title date_created";
}

.table_news_full .row_id {
    grid-area: id;
}

.table_news_full .row_subject {
    grid-area: title;
}

.table_news_full .row_date_created {
    grid-area: date_created;
    text-align: right;
}

.ticket,
.ticket * {

    line-break: auto;
    white-space: normal;

}

.ticket pre {

    white-space: pre-wrap;
    /* css-3 */
    white-space: -moz-pre-wrap;
    /* Mozilla, since 1999 */
    white-space: -pre-wrap;
    /* Opera 4-6 */
    white-space: -o-pre-wrap;
    /* Opera 7 */
    word-wrap: break-word;
    word-break: break-all;
}

.ticket img {
    max-width: 100%;
    padding: 20px;
}

textarea {
    white-space: pre-wrap !important;
}

.table_report_list {
    margin-bottom: 1em;
}

.table_report_list tr {


    grid-template-columns: 1fr 2fr;
    grid-template-areas: "link description";

}

.table_report_list .row_link{
    grid-area: link;
}

.table_report_list .row_description{
    grid-area: description;
}


@media only screen and (max-width: 1023px) {

    .table_news tr {

        grid-template-columns: auto auto auto;
        grid-template-areas: "title date link" "id subject subject";
        grid-template-rows: auto;
    }

    a {
        text-decoration: none;
    }

    table tr {

        padding-top: 3px;
        padding-bottom: 2px;
    }

    input,
    textarea,
    select {

        max-width: 100%;
    }

    input[type=number],
    input[type=text],
    input[type=email],
    input[type=password],
    select,
    textarea {

        width: 90%;
    }

    input[type=number],
    input.integer {

        flex: 1 0 0;
        max-width: 40px !important;
        margin-right: 10px;
        text-align: right;
    }





    .table_jobs tr {


        grid-template-columns: auto 1fr 1fr 1fr 80px;
        grid-template-rows: auto;
        grid-template-areas:"id title title title label"
            ". description description description actions"
            ". date date_end duration .";
    }

    .table_tickets tr {


        grid-template-columns: 60px auto auto auto;
        grid-template-areas: "id title name label";
        grid-template-rows: auto;
    }


    .table_clients tr {


        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
        grid-template-areas:
            "title title title title title title"
            " voucher voucher currency currency details details";
    }


    .table_masterdata tr {

        grid-template-columns: 1fr 1fr;
        grid-template-areas: "title .""source details";
    }

    .table_events th,
    .table_events tr {

        grid-template-columns: 30% 10% 20% 20% 20%;
        grid-template-areas: "date unit unit unit unit ""type type type no no ""officiant officiant  officiant foreign foreign""action action action action action";
    }


    .table_batches th,
    .table_batches tr {

        grid-template-columns: 16% 16% 16% 16% 16% 16%;
        grid-template-areas: "no unit unit unit unit status"
            "offering offering  deductions  deductions . .  "
            "deposit deposit difference  difference deposits deposits "
            " . . edit edit report report";
    }


    .table_events_history th,
    .table_events_history tr {

        grid-template-columns: 16% 16% 16% 16% 16% 16%;
        grid-template-areas: "date date state state voucher voucher""attending attending guests guests offering offering""delete delete edit edit void void";
    }

    .table_units th,
    .table_units tr {

        grid-template-columns: 40% 30% 30%;
        grid-template-areas: "name name type""parent parent parent";
    }



    .table_units td:nth-child(1) {
        font-weight: bold;
    }

    .table_members tr {


        grid-template-columns: 10% 10% 10% 10% 10% 10% 10% 10% 10% 10%;
        grid-template-areas: "fullname fullname fullname fullname unit unit  unit unit unit unit"
            "ministry ministry ministry  ministry gender gender gender gender age age ";
    }



    .table_members .row_date,
    .table_members .row_sealing {
        display: none;
    }

    .table_clients td.row_details {

        justify-self: end;
    }

    .table_list_masterdata tr td {
        display: none;
    }


    .table_list_masterdata tr td:nth-last-child(-n+2),
    .table_list_masterdata tr td:first-child {

        display: table-cell;
        width: auto;
    }

    .table_quickcreate tr {

        grid-template-columns: 50% 50%;
        grid-template-areas: "firstname lastname""gender unit""dob dob";
    }


    section {

        padding: 6px;
    }

    .error {

        display: block;
    }

    .mobile_hide {

        display: none;
    }

    .box {
        flex: 1 0 0;
        margin-right: 0;
    }

    .box-10,
    .box-20,
    .box-25,
    .box-33,
    .box-50,
    .box-66,
    .box-100 {

        flex: 0 0 100%;
        margin-right: 0;

    }

    nav {


        width: 3em;

    }

    nav a {


        padding: 5px 10px;
        line-height: 130%;
        text-align: center;
    }

    nav a.active {}

    nav h2,
    nav h3,
    nav h5 {

        display: none;
    }

    nav a em {

        display: none;
    }

    aside {

        left: 3em;
        position: fixed;
        top: 0;
        right: 0;
        background-color: #2786cf;
        color: #ccc;
        line-height: 30px;
        height: 30px;
        z-index: 9999;
    }

    aside.topbar span {
        color: #fff;
    }


    aside select {
        display: none;
    }

    aside a em {

        display: none;
    }



    main {

        margin-left: 3em;
        padding-top: 2em;

        background-image: none;
    }

    ul.form li {

        display: block;
    }

    ul.form li label {

        display: block;
        text-align: left;
        width: 100%;
        font-weight: 600;
    }

    ul.form li label.inline {

        font-weight: 500;
    }

    ul.form li button {

        margin-left: 0;
    }


    select-single {

        width: 100%;
    }

    header h1 {

        padding: 0;
        font-size: 15px;
    }


    h1 span {

        font-size: 70%;
        color: #999;
        font-weight: normal;
    }


    ul {

        list-style-type: square;
        padding-left: 1.5em;
    }

    .table_report_list tr {
        grid-template-columns: 100%;
        grid-template-rows: auto;
        grid-template-areas: "link" "description";
    }

}



@media only screen and (max-width: 320px) {

    .table_jobs tr {

        grid-template-columns: 35px 1fr 1fr;
        grid-template-rows: auto;
        grid-template-areas: "id title title "
            ". description description"
            ". label actions";
    }

    .table_jobs .row_date {
        display: none;
    }

    .table_jobs .row_duration {
        display: none;
    }

    .table_jobs .row_date_end {
        display: none;
    }
}