/* insert into /media/templates/site/cassiopeia/css - Version vom 08.08.2025 */

h1, h2, h3, h4, h5, h6 { text-align: center; }
h1 { font-size: 34px; }
h2 { font-size: 32px; }
h3 { font-size: 32px; }
h4 { font-size: 28px; }
h5 { font-size: 23px; }
h6 { font-size: 18px; }

.btn {
    border-radius: 14px;
}

.main-top {
    background-color: #b0c4de ; /* lightsteelblue */
}

.menu {                 /* defines the margins for the banner */
    margin-top: 0;
}

.container-header > .container-nav {    /* contains the banner and search */ 
    padding: 0px;
}

.mybanner {             /* the banner, position: menu */
    width: 550px;
    max-width: 850px;
    position: sticky;
    top: 0;         /* take the full height from parent */
    bottom: 0;
    padding: 0 0 0 0;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: flex-start;
    box-sizing: border-box;
    align-items: center;
    align-content: center;
    background: linear-gradient(to right, #2E599C 40%, aliceblue 88%, white);
}

.mybanner img {
    height: 82px;
    width: auto;
    display: block;
    object-fit: contain;
}

.mybanner table {
  border-collapse: collapse;
}

.mybanner td {
  border: none;
  position: relative;
}

.mybanner td > a {
    text-decoration: none;
}

#bannerdiv {
    background:
        linear-gradient(red, transparent),
        url(\images\banners\Banner-foto01.jpg), url(images\banners\Siegel_Uni_Marburg.png);
    background-blend-mode: screen;
    padding: 15px;
    width: 550px;
    max-width: 850px;
    top: 0;             /* take full height of parent */
    bottom: 0; 
    padding: 0px;
    box-sizing: border-box;
    align-content: center;
    text-align: center;
    line-height: 1.2;
    font-family: arial, helvetica, sans-serif;
    font-size: clamp(1em, 2.8vw, 1.5em);
    font-weight: 500;
    color: WhiteSmoke;
}

#mybanner_cell_foto {
    flex: 0 0 auto; /* do not grow and do not shrink */
    padding: 0px;
}
#mybanner_cell_titel {
    text-align: center;
    line-height: 1.2;
    font-family: arial, helvetica, sans-serif;
    font-size: clamp(1em, 2.8vw, 1.5em);
    font-weight: 500;
    max-height: 82px;
    flex: 1 1 auto;     /* grow and shrink */
}
#mybanner_cell_titel a {
    color: WhiteSmoke;
}
#mybanner_cell_titel div {
    margin: 10px 10px 10px 20px; 
}
#mybanner_cell_siegel img {
    margin: 5px 20px 5px 20px;
    height: 72px;
    width: auto;
}
#mybanner_cell_siegel {
    flex: 0 0 auto;     /* do not grow and do not shrink */ 
}

.mod-languages {    /* site module Sprachauswahl: -> erweitert: CSS-Klasse Modul: sprachauswahl */
    background-color: White;
    border: 2px solid var(--cassiopeia-color-primary);  /* like background */
    border-radius: 15px;
    padding: 2px 2px 0 2px;
    width: 95px;
    height: 67px;
    margin: auto;       /* center between mybanner and container search */
    position: sticky;
    top: 0px;           /* take full height of parent but seems to be smaller */ 
    bottom: 0px;        /* because border color is equal background color */ 
}

    .pretext { height: 29px; }
    .pretext p { 
        padding: 2px;
        color: green; 
        text-align: center;
        line-height: 0.8;
        font-family: arial, helvetica, sans-serif;
        font-size: clamp(0.8em, 0.8em, 0.9em);
        font-weight: 300;
    }

    .lang-inline {      /* display language flags horizontally */
        height: 26px;
        margin: 0px;
        padding: 0px;
        display: flex;
        justify-content: space-around;
        align-items: center;
    }

    .lang-inline li {   
        padding: 0px !important; 
        display: flex !important;
        margin: 0px !important; 
        align-items: center !important; 
    }
    .lang-inline li a { /* same height for li and a; no padding */
        height: 26px !important;
        padding: 0px !important;
    }

    .lang-active {  /* sprachauswahl/language switcher: border around aktive language */
        border: 2px solid green;
        border-radius: 5px;
    }
    .lang-active * {padding: 0px 4px 2px 4px;} /* and center it */

.container-search {     /* center vertically the search element, position: search */
    margin: 0 20px 0 20px;
    padding-top: 11px;
    padding-bottom: 18px;
    margin-left: auto;  /* this will right align the search-box */
}

.metismenu.mod-menu .metismenu-item {   /* main menu untereinträge kompakter darstellen */
    line-height: 1.35;
    font-size: 1.0rem;
    padding: .4em 1em;
}

.article-info {         /* statistics: hits, last changed date */
    line-height: 0.8;
    font-size: 0.9rem;
}
p.bild_in_absatz {      /* für Absatz mit Bild mit rechts umfließenden Text */
    float: left;
    margin: 5px;
}
.listen_beitrag_h1 {    /* <h1>: für Beiträge, deren Inhalt eine Auflistung darstellt */
    text-align: center;
    margin-bottom: 1.2rem;
}
.listen_beitrag_h5, .listen_beitrag_h6, .listen_beitrag_p { /* <h5>, <h6> und <p>: für Beiträge, deren Inhalt eine Auflistung darstellt */
    margin-top: 0;
    margin-bottom: 0.4em;
    line-height: 125%;
}
.listen_beitrag_h5, .listen_beitrag_h6 {
    text-decoration-line: underline; 
}

#vita_total {           /* div with total vita (title and text) */
    background-color: #6a7a95;
    padding: 1em;
}

#vita_title {           /* div with vita's title */
    width: 100%;
    max-width: 100%;
    margin-bottom: 20px;
    padding: 0px;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    box-sizing: border-box;
    align-items: center;
    align-content: center;
}

#vita_title_flag {
    width: 100px;
    text-align: center;
    display: block;
    object-fit: contain;
    flex: 0 1 auto; /* do not grow but shrink */
}
#vita_title_flag img {
    width: 70px;
    height: auto;
}

#vita_title_text {
    text-align: center;
    font-size: 18pt;
    font-size: clamp(1em, 2.8vw, 1.75em);
    color: WhiteSmoke;
    flex: 1 3 auto;     /* grow and shrink */
}

#flaggen ul {
    width: 100% !important;
}

#flaggen li { /* für die flaggenleiste bei den Lebensläufen, position: main-top */
    margin-top: 0px;
    width: 55px;
    display: inline-block;
    padding: 5px 8px;
}

#flaggen *:hover::after {
    background-color: midnightblue;
    color: white;
    padding-left: 5px; padding-right: 5px;
    position: relative; top: -30px; left: -30px;
    border: 3px solid var(--cassiopeia-color-primary);
    border-radius: 5px;
    font-weight: bold;
    text-decoration: none; 
}

/*  1. Für jedes Untermenü des Menüs Flaggenleiste unter "Linktyp" > "CSS-Klasse für Link"
       die Klasse zwischen . und :hover eintragen, z.B. "flag_german"
    2. Für jede entsprechende Flagge von Flaggenleiste hier einen Einträge einstellen. */
    
.flag_german:hover::after { content: "deutsch - german"; }
.flag_bavarian:hover::after { content: "bayerisch - bavarian"; }
.flag_french:hover::after { content: "französisch - french - français"; }
.flag_english:hover::after { content: "englisch - english"; }
.flag_italian:hover::after { content: "italienisch - italian - italiano"; }
.flag_spain:hover::after { content: "spanisch - spain - español"; }
.flag_polish:hover::after { content: "polnisch - polish - polski"; }
.flag_romanian:hover::after { content: "rumänisch - romanian - românesc"; }
.flag_hungarian:hover::after { content: "ungarisch - hungarian - magyar"; }
.flag_russian:hover::after { content: "russisch - russian - pусская"; }
.flag_arabian:hover::after { content: "arabisch - arabic - السيرة الذاتية العربية"; }
.flag_korean:hover::after { content: "koreanisch - korean - 한국어 이력서"; }
.flag_chinese:hover::after { content: "chinesisch - chinese - 中文履歷"; }
.flag_mongolian:hover::after { content: "mongolisch - mongolian - mонгол"; }
.flag_japain:hover::after { content: "japanisch - japain - 履歴書"; }

.cv_parasmall {     /* für Lebensläufe (Curriculum Vitae) Absatz kleine Schrift */
    * {
        text-align: left;
        font-size: 12pt; 
        color: #ffffff;
    }
}
.cv_paranorm {      /* für Lebensläufe (Curriculum Vitae) Absatz normale Schrift */
    * {
        text-align: left;
        font-size: 13pt; 
        color: #ffffff;
    }
}

.breadcrumb-item + .breadcrumb-item::before {
    color: blue;        /* original content is "/" */
    content: var(--breadcrumb-divider, ">") /* rtl: var(--breadcrumb-divider, "<") */;
    padding: 0px 2px 0px 0px;
}

.cv_parasmall {     /* für Lebensläufe (Curriculum Vitae) Absatz kleine Schrift */
    * {
        text-align: left;
        font-size: 12pt; 
        color: #ffffff;
    }
}
.cv_paranorm {      /* für Lebensläufe (Curriculum Vitae) Absatz normale Schrift */
    * {
        text-align: left;
        font-size: 13pt; 
        color: #ffffff;
    }
}

.footer {       /* for footer in voelkerrecht.com, position: footer */
    div { 
        width: 100%;
        padding: 0 !important;
        font-size: 1.1em;
        line-height: normal;
    }
    
    /* link > visited > hover: Reihenfolge wichtig!) */
    a:link {
        color: WhiteSmoke;
    }
    a:hover {   /* mouse over link */
        color: tomato !important;
        font-size: 1.2em;
    }

}   /* end of footer div */

.includedTOC {  /* for imported table of contents (as articles) */
    max-width: 1400px;
    
    /* class is set by <div class="includedTOC"> and is used for articles */
    /* which have a link to a another article containing a table of contents  */
    
    table {
        table-layout: fixed;
        border-collapse: collapse;
        border: none;
        margin: auto;
	}

	tbody td:nth-child(1) {
		width: auto;
		vertical-align: bottom;
		text-align: left;
	}

	tbody td:nth-child(2) {
		width: 5em;
		vertical-align: bottom;
		text-align: right;
	}

	th, td {
		padding-top: 5px;
		padding-bottom: 5px;
		padding-left: 10px;
		padding-right: 3px;
		line-height: 1em;
	}

	tbody tr:nth-child(odd) {
		background-color: LightGray;
	}

	tbody tr:nth-child(even) {
		background-color: #f8f8ff;
	}
}   /* end of for imported table of contents (as articles) */

#memberships p {
	font-size: 1.2em;
	line-height: 110%;
	margin: 0.75em 0;
	padding-left: 3em;
	text-indent: -1.5em;
}

@media only screen and (max-width: 892px) { /****************************************************** max-width: 892px */
    #mod-custom121 {    /* mybanner's container */
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }
    .mybanner {         /* the banner, position: menu */
        width: 100%;
    }
    .mod-languages {    /* site module Sprachauswahl */
        height: 38px;
    }
    .pretext { height: 1px; } /* do not show "Sprache/Language" */
    .pretext p { line-height: 1px; font-size: 0px;}
    .lang-inline { margin: auto !important;
        align-items: center;}

    .container-search {     /* center vertically the search-box, position: search */
        height: 40px;
        padding-top: 0px;
        padding-bottom: 3px;
        margin: 2px !important;
    }

    .container-header .container-nav .container-search, .container-header .container-nav nav {
        margin-top: 2px !important;
    }
    
    #vita_title {
        margin-bottom: 20px;
    }
    #vita_title_flag {
        width: 75px;
    }
    #vita_title_flag img {
        width: 55px;
    }
    #flaggen li { /* für die flaggenleiste bei den Lebensläufen, position: main-top */
        padding: 4px 6px; 
    }
    #flaggen img { /* für die flaggenleiste bei den Lebensläufen, position: main-top */
        width: 35px; 
    }
}       /* end of @media only screen and (max-width: 892px) */

@media only screen and (max-width: 620px) { /****************************************************** max-width: 620px */
    #mod-custom121 {    /* mybanner's container */
        width: 100%;
    }
    .mybanner {         /* the banner, position: menu */
        width: 100%;
        height: 68px;
        max-height: 68px;
    }
    .mybanner img {
        height: 68px;
    }
    #mybanner_cell_titel {
        max-height: 68px;
        margin: 6px 6px 6px 12px;
    }
    #mybanner_cell_siegel img {
        margin: 4px 15px 4px 15px;
        height: 60px;
    }

    #vita_title {
        margin-bottom: 10px;
    }
    #vita_title_flag {
        width: 55px;
    }
    #vita_title_flag img {
        width: 40px;
        height: auto;
    }
    #flaggen li { /* für die flaggenleiste bei den Lebensläufen, position: main-top */
        padding: 3px 4px;
    }
    #flaggen img { /* für die flaggenleiste bei den Lebensläufen, position: main-top */
        width: 25px; 
    }
}           /* end of @media only screen and (max-width: 620px) */
