body {
    font-family: Arial, sans-serif !important;
    font-size:   12pt !important;
    line-height: 155% !important;
    margin:      0 !important;
}

* {
    -moz-box-sizing:    border-box;
    -webkit-box-sizing: border-box;
    box-sizing:         border-box;
}

h1, h2, h3, h4 {
    font-weight: bold !important;
}

h1 {
    font-size:   2.50em;
    line-height: 1.3;
    margin:      1em 0 1em 0 !important;
}

h1.top {
    margin: 0 0 1em 0 !important;
}

h2.large {
    font-size:   1.72em;
    line-height: 1.4;
    margin:      1em 0 1em 0 !important;
}

h2 {
    font-size:   1.43em;
    line-height: 1.5;
    margin:      1em 0 1em 0 !important;
}

h3 {
    font-size:     1.14em;
    line-height:   1.5;
    margin:        1em 0 1em 0 !important;
    border-bottom: 1px solid #b3b3b3;
}

h4 {
    font-size:    1.14em;
    line-height:  1.5;
    margin:       1em 0 1em 0 !important;
    padding-left: .5em;
    border-left:  3px solid #cccccc;
}

h5 {
    font-size:   1.14em;
    font-weight: normal;
    line-height: 1.5;
    margin:      .8em 0;
    color:       #4d4d4d;
}

h6 {
    font-size:   1.07em;
    font-style:  italic;
    line-height: 1.6;
    margin:      .8em 0;
    color:       #737373;
}

a {
    text-decoration: none;
    color:           #3070b3;
}


a:hover {
    text-decoration: underline !important;
    color:           #3070b3 !important;
}

::placeholder {
    color:   black;
    opacity: 0.2;
}

div#main-space {
    display:               grid;
    grid-template-areas:
			'left content right';
    grid-template-columns: min-content auto min-content;
    padding:               0 5em;
}

div#main-space div#content {
    grid-area: content;
    overflow:  hidden;
}

div#main-space div#left-slot {
    grid-area:    left;
    width:        15em;
    margin-right: 1em;
}

div#main-space div#right-slot {
    grid-area:   right;
    width:       15em;
    margin-left: 1em;
}

div#header {
}


div#header div#header-title {
    display:               grid;
    grid-gap:              1ex;
    grid-template-columns: auto min-content min-content;
    position:              relative;
    margin:                39px 5em 38px 5em;
    /*height:           4em;*/
    background-color:      white;
}

div#header div.orgname {
    color: #3070b3;
}

div#header div.sitename {
    color: #3070b3;
}

div#header div#header-title img#header-tum-logo {
    /*position: absolute;*/
    /*top:      38px;*/
    /*right:    5em;*/
}

div#header div#header-title div#test-mode {
    background-color: #85b5e8;
    border:           1px solid #3070b3;
    padding:          1ex;
    position:         absolute;
    right:            10em;
}

div#header div#header-title div#test-mode div.title {
    font-weight: bold;
    font-size:   130%;
}

div#header div#header-title div#test-mode p.text {
    display: none;
}

div#header div#header-title div#test-mode ul {
    font-size:   80%;
    line-height: 1em;
    display:     none;
}

div#header div#header-title div#test-mode:hover p.text {
    display: initial;
}

div#header div#header-title div#test-mode:hover ul {
    display: inherit;
}

div#header div#header-actions {
    display:          table;
    width:            100%;
    height:           2em;
    padding:          11px 5em 11px 5em;
    background-color: #f7f7f7;
}

div#header div#header-actions a {
    margin:              0 0 0 1em;
    padding:             0 0 0 1em;
    background-image:    url('/static_tum/icons/action_default.gif');
    background-repeat:   no-repeat;
    background-position: center left;
}

div#header div#header-actions a#logout {
    background-image: url('/static_tum/icons/icn_tum_logout.svg');
}

div#header div#header-actions a#login {
    background-image: url('/static_tum/icons/icn_tum_login.svg');
}

div#header div#leftactions {
    display: table-cell;
}

div#header div#rightactions {
    display:        table-cell;
    text-align:     right;
    vertical-align: top;
}

div#header div#user-header {
    display:               grid;
    grid-gap:              0;
    grid-template-columns: min-content auto auto min-content min-content;
    padding:               1em 5em 1em 5em;
    border-width:          0 0 0 0;
    border-style:          solid;
    border-color:          #e5e5e5;
    background-color:      #f7f7f7;
}

div#header div#user-header > div {
    margin-right: 1em;
}

div#header div#user-header div#infos-user {
    white-space: nowrap;
}

div#header div#user-header div#actions-user {
}

div#header div#user-header div#actions-user li.action a {
    text-decoration: none;
    color:           #8f8f8f;
    white-space:     nowrap;
}

div#header div#user-header div#actions-user li.action img {
    margin-right:   1ex;
    vertical-align: baseline;
    max-height:     1em;
    max-width:      1em;

}

div#header div#user-header div#actions-global {
    text-align: right;
}

div#header div#user-header div#actions-global li.action {
    margin: 0 0 0 1em;
}

div#header div#user-header div#actions-global li.action a {
    text-decoration: none;
    color:           #8f8f8f;
    white-space:     nowrap;

}

div#header div#user-header div#actions-global li.action img {
    margin-right:   1ex;
    vertical-align: baseline;
    max-height:     1em;
    max-width:      1em;
}

div#header div#user-header div#header-language-selector {
    margin-right: 0;
    white-space:  nowrap;
}

div#header div#user-header div#header-language-selector a.language {
    margin-right:    0;
    text-decoration: none;
    color:           #8f8f8f;
}

div#header div#user-header div#header-language-selector a.language.active {
    font-weight: bold;
}

div#header div#user-header div.menu {
    position:            relative;
    display:             inline-block;
    margin:              0 1em;
    padding:             0 14px 0 0;
    text-align:          left;
    color:               #8f8f8f;
    background-image:    url('/static_tum/icons/icn_tum_arrowdown.svg');
    background-repeat:   no-repeat;
    background-position: right center;

}

div#header div#user-header div.menu div.dropdown {
    position:    absolute;
    top:         1.5em;
    right:       -1ex;
    display:     none;
    padding:     1ex 3px 3px 3px;
    white-space: nowrap;
}

div#header div#user-header div.menu:hover div.dropdown {
    z-index:          99;
    display:          block;
    background-color: #f7f7f7;

}

div#header div#user-header div.menu div.dropdown a {
    display: block;
    margin:  0;
}

div#footer {
    height:           3em;
    margin-top:       2em;
    padding:          11px 5em 11px 5em;
    background-color: #e6e6e6;
}

div#footer a {
    font-size:       87%;
    font-weight:     bold;
    margin:          0 3em 0 0;
    text-decoration: None;
    color:           #333333;
}

div#footer span#copyright {
    text-align: right;
}


div.content {
    padding: 0 5em;
}

div#config-overview div#config-groups {
    columns: 40em auto;
}

div#config-overview div#config-groups div.config-group {
    page-break-inside: avoid;
    margin-bottom:     1em;
}

div#config-overview div#config-groups div.config-group div.title {
    font-weight:   bold;
    font-size:     120%;
    border-bottom: 1px solid darkgray;
    margin-bottom: 1ex;
}

form.deform {
    max-width: 60em;
}

form.deform div.panel-heading {
    display: none;
}

form#login fieldset legend {
    display: None
}

fieldset.loginbox table {
    width: 100%;
}

fieldset.loginbox table input.textfield {
    width: 100%
}

table tr.clickable:hover {
    cursor:           pointer;
    color:            #23527c;
    background-color: #d7eeff !important;
}

table.entrylist {
    min-width:        40em;
    border-spacing:   5px;
    border:           1px solid darkgray;
    background-color: #f8f8f8;
}

table.entrylist tr.even {
    background-color: whitesmoke;
}

table.entrylist th, table.entrylist td {
    padding: 1px 3px;
}

/* Tabs */
div.tabhead {
    display:      none;
    max-width:    40em;
    margin-top:   1em;
    padding-left: 1em;
}

div.tabhead a {
    position:         relative;
    top:              0;
    padding:          2px 1em;
    text-decoration:  none !important;
    border:           1px solid darkgray;
    border-radius:    5px 5px 0 0;
    background-color: #cccccc;
}

div.tabhead a.active {
    z-index:          20;
    border-bottom:    1px solid white;
    background-color: transparent;
}

div.tabbody {
    position: relative;
    padding:  1ex;
    border:   1px solid darkgrey;
}

div.tabbody legend {
    display: none;
}

div.tabbody fieldset {
    margin: 0;
}

div.possible_tabbody {
    position: relative;
    padding:  1ex;
    border:   1px solid darkgrey;
}

/* Actions */

div#object-action-box {
    position:              relative;
    margin-top:            1.5em;
    margin-bottom:         1em;
    display:               grid;
    grid-template-areas:
        "title admin"
		"title object";
    grid-template-columns: min-content auto;
}

div#object-action-box div#object-class-title {
    grid-area:        title;
    font-size:        1.333em;
    font-weight:      bold;
    font-style:       italic;
    line-height:      1em;
    float:            left;
    padding:          1ex;
    color:            #737373;
    background-color: #e6e6e6;
    vertical-align:   center;
    white-space:      nowrap;
}


div#object-action-box div.object-actions {
    min-height:   1.5em;
    padding-left: 1em;

}

div#object-action-box #admin-actions {
    background-color: #e6e6e6;
    grid-area:        admin;
}

div#object-action-box #object-actions {
    background-color: #f7f7f7;
    grid-area:        object;
}

div#object-action-box #object-workflow {
    font-size:        80%;
    position:         absolute;
    top:              -1.6em;
    right:            1em;
    padding:          0 1em;
    border-radius:    5px;
    background-color: #e6e6e6;
}

div#object-action-box #object-workflow a {
    display:         none;
    text-decoration: none;
    color:           inherit;
}

div#object-action-box #object-workflow:hover {
    z-index: 100;
}

div#object-action-box #object-workflow:hover div#status {
    font-weight: bold;
}

div#object-action-box #object-workflow:hover a {
    display: block;
}

div#object-action-box #object-workflow:hover a:hover {
    color: blue;
}

div#object-action-box div.object-actions ul.actions, li.action {
    position: relative;
    display:  inline-block;
    margin:   0 1em 0 0;
    padding:  0;
}

div#object-action-box div.object-actions li.action div.tag {
    font-size:   70%;
    line-height: 1;
    position:    absolute;
    top:         -0.5em;
    right:       -1em;
}

div#object-action-box div.object-actions li.action div.tag div.value {
    font-weight:      bold;
    padding:          2px;
    color:            white;
    border-radius:    4px;
    background-color: #e00000;
}

div#object-action-box div.object-actions li.action a {
    text-decoration: #333333;
    color:           inherit;
}

div#object-action-box div.object-actions img {
    margin:         3px 4px 0 0;
    vertical-align: baseline;
    max-width:      1.3em;
    max-height:     1em;
}

div#object-action-box div.object-actions ul.actions {
    display:             inline;
    margin:              0;
    padding:             0;
    list-style-position: outside;
    list-style-type:     none;
}


div#status-message-box {
    margin-bottom: 1ex;
}

div#status-message-box div.status-message {
    font-weight: bold;
    padding:     1ex;
}

div#status-message-box div#messages {
    padding-left:        48px;
    color:               #ffffff;
    background-color:    #3070b3;
    background-image:    url(/static-mytum/icons/icn-info.png);
    background-repeat:   no-repeat;
    background-position: 12px center;
}

div#status-message-box div#warnings {
    padding-left:        48px;
    color:               #ffffff;
    background-color:    #ff913c;
    background-image:    url(/static-mytum/icons/icn-info.png);
    background-repeat:   no-repeat;
    background-position: 12px center;
}

div#status-message-box div#errors {
    padding-left:        48px;
    color:               #ffffff;
    background-color:    #ff5155;
    background-image:    url(/static-mytum/icons/icn-info.png);
    background-repeat:   no-repeat;
    background-position: 12px center;
}

div#breadcrumbs-box a {
    text-decoration:  none;
    color:            inherit;
    background-color: #e0e0e0;
    padding:          2px 1ex;
    border-radius:    5px;
    margin-right:     1ex;
}

div#breadcrumbs-box a.active {
    font-weight: bold;
}

div#breadcrumbs-box a:hover {
    text-decoration:  none !important;
    background-color: #85b5e8;
}

/* Development Styles */

div.slot {
    height:           100%;
    border:           1px solid darkblue;
    background-color: lightblue;
}

div#mgd-language-switch {
    position:      fixed;
    right:         0;
    bottom:        0;
    padding:       2px;
    border:        1px solid black;
    border-right:  none;
    border-bottom: none;
    border-radius: 5px 0 0 0;
    background:    lightgray;
}

div.portlet.boxed {
    max-width:  16em;
    margin-top: 1ex;
    border:     1px solid darkgray;

}

div.portlet.boxed div.title {
    padding:          3px;
    color:            white;
    background-color: #3070b3;
}

div.portlet.boxed div.separator {
    background-color: #e6e6e6;
    border-bottom:    1px solid darkgray;
    border-top:       1px solid darkgray;
    text-align:       center;
    padding:          3px;
    font-weight:      bold;
}

div.portlet.boxed div.value {
    position: relative;
    padding:  3px;
}

div.portlet.boxed div.value.even {
    background-color: #e0e0e0;
}

div.portlet.boxed div.value.odd {
    background-color: #f0f0f0;
}

div.portlet.boxed a.button {
    display:    block;
    text-align: center;
}

div.portlet.boxed div.value a.btn {
    display:       block;
    text-align:    center;
    border:        1px solid darkgray;
    border-radius: 4px;
    padding:       initial;
}

a.button {
    display:          inline-block;
    margin:           3px;
    padding:          0 1em;
    color:            #3070b3;
    border:           1px solid darkgrey;
    background-color: #e6e6e6;
}

a.button.block {
    display:    block;
    text-align: center;
}

p.notice {
    font-size:        70%;
    line-height:      initial;
    padding:          1ex;
    color:            black;
    border:           1px solid darkgray;
    background-color: #f7f7f7;
}

/* Use a media query to add a breakpoint at 800px: */
@media screen and (max-width: 800px) {

    h1 {
        font-size: 160%;
    }

    div#main-space {
        display: inherit;
    }

    div#user-header {
        display:               grid;
        grid-gap:              3px !important;
        grid-template-columns: min-content auto auto min-content !important;
        grid-template-rows:    min-content min-content;
        grid-template-areas:
            'user-infos user-actions languages'
			'quicklinks global-actions global-actions';
    }

    div#header div#infos-user {
        font-size: 80%;
        grid-area: user-infos;
    }

    div#header div#actions-user {
        grid-area: user-actions;
    }

    div#header div#actions-global {
        grid-area: global-actions;
    }

    div#header div#header-language-selector {
        text-align: right;
        grid-area:  languages;
    }

    div#header div#quicklinks {
        grid-area: quicklinks;
    }

    div#main-space div#right-slot {
        width:       inherit;
        margin-left: inherit;
    }

    div#header div#user-header {
        padding: 1ex 1em 1ex 1em;
    }

    div#header div#header-title img#header-tum-logo {
        right: 1em;
    }

    div#header div#header-title {
        margin: 39px 1em 38px 1em;
    }

    div#main-space {
        padding: 0 1em;
    }

    div.content {
        padding: 0 1em;
    }

    div#footer {
        margin-top: 2em;
        padding:    11px 1em 11px 1em;
    }

    div#object-action-box {
        display: none;
    }

    div.portlet.boxed {
        max-width: inherit;
    }
}
