/**
* Style-Anpassungen für Bootstrap und diverse LVU-Kosmetik in 2025
*/

/* ----- Variables ----- */
:root {
    --feu-TABLET: 48rem; /* em x Font-Size (16px) = 768px */
    --feu-DESKTOP: 62rem; /* em x Font-Size (16px) = 992px */
    
    --feu-white: #ffffff;
    --feu-white-trans: #ffffffe0;
    --feu-blue-1: #004c97;
    --feu-blue-1-trans: #004c97e0;

    --feu-blue-2: #2f6daa;

    --feu-blue-3: #6694C1;    

    --feu-black: #000000;
    --feu-darkgray: #454545;
    --feu-gray: #666666;
    --feu-light-gray: #E4E4E4;
}

/* ----- Fonts ----- */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: local('Roboto'), local('Roboto-Regular'), url('./fonts/Roboto/Roboto-Regular.ttf');
}
@font-face {
    font-family: 'Roboto-bold';
    font-style: bold;
    font-weight: 700;
    src: local('Roboto-Bold'), url('./fonts/Roboto/Roboto-Bold.ttf');
}
@font-face {
    font-family: 'Roboto-black';
    font-style: black;
    font-weight: 900;
    src: local('Roboto-Black'), url('./fonts/Roboto/Roboto-Black.ttf');
}
@font-face {
    font-family: 'RobotoCondensed';
    font-style: normal;
    font-weight: 400;
    src: local('RobotoCondensed'), local('RobotoCondensed-Regular'), url('./fonts/RobotoCondensed/RobotoCondensed-Regular.ttf');
}
@font-face {
    font-family: 'RobotoCondensed-bold';
    font-style: bold;
    font-weight: 700;
    src: local('RobotoCondensed-Bold'), url('./fonts/RobotoCondensed/RobotoCondensed-Bold.ttf');
}
/* ===== Fonts ===== */




/* ----- General Styles ----- */
* {
    font-family: Roboto;
    margin:0;
    padding:0;
}
h1, h2, h3, h4, h5 {
    font-family: Roboto-bold;
    margin: 1rem 0 1.5rem 0;
}
h1 {
    font-size: 2rem;
}
h2 {
    font-size: 1.7rem;
}
h3 {
    font-size: 1.5rem;
}
h4 {
    font-size: 1.3rem;
}
h5 {
    font-size: 1.2rem;
}


.bg-feu-dark {
    background-color: var(--feu-blue-1);
}
.btn-feu {
    background-color: var(--feu-blue-1);
    color: var(--feu-white) !important;
    border-radius: 0;
}
.btn-feu:hover {
    background-color: var(--feu-blue-2);
    color: var(--feu-white);
}
.pfeil:before {
    font-family: bootstrap-icons;
    font-size: 70%;
    content: "\F285 ";
}

/* ====== General Styles ====== */

/* Bootstrap Modifications */
.btn-primary {
    background-color: var(--feu-blue-1);
    border-radius: 0;
}
.btn-primary:hover {
    background-color: var(--feu-blue-2);
    color: var(--feu-white);
}

.navbar-toggler:focus {
    box-shadow: none !important;
}

/* HEADER */
.logo-wrapper {
    margin: 1.75rem 0 1.75rem 0;
}
.second-logo-wrapper {
    margin-top: 8px;
}
.second-logo {
  display: block;
  border-left: 4px solid var(--feu-blue-1);
  padding: 3px 1rem 0 1rem;
  margin: 0 1rem 0 1rem;

  font-family: "RobotoCondensed";
  font-size: 2rem;
  color: var(--feu-blue-1);
  letter-spacing: -0.04em;
}

@media (max-width: 768px) {
    .second-logo {
        font-size: 1rem;    
    }  
}

/* ----------- Main Nav START -------------- */

.nav-link {
    font-size: 1.1rem;
    color: var(--feu-white) !important;
    padding-left: 1.2rem !important;
    padding-right: 1.2rem !important;
    font-family: Roboto-bold;
}
.nav-link:hover {
    text-decoration: underline !important;
    color: var(--feu-white);
    background-color: var(--feu-blue-2);
}
.nav-link.active {
    text-decoration: underline;
    background-color: var(--feu-blue-2);
}

.navbar .navbar-toggler .navbar-toggler-icon.navbar-search-icon {
    background-image: url("/lvuweb/images/icon_search.svg");
    background-size: 23px;
}

.navbar-toggler {
    border: 0;
}
.navbar-toggler:active,
.navbar-toggler:focus  {
    border: 0 !important;
}
.search_box {
    border-bottom: 1px solid var(--feu-blue-1);
    padding-top: 1rem;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
}
/* ----------- Main Nav ENDE -------------- */



/* -----------SEITENNAVIGATION START  -------------- */

.side-navigation {
    margin-top: 4rem;
    margin-right: 2rem;
    width: 900px;
}

.side-navigation > ul > li {
    border-top: 1px solid var(--feu-blue-1);
}
.side-navigation > ul > li:last-child {
    border-bottom: 1px solid var(--feu-blue-1);
}

.side-navigation a {
    color: var(--feu-blue-1);
    text-decoration: none;
    padding: 0.4rem 0;
}
.side-navigation a:hover {
    color: var(--feu-blue-2);
    text-decoration: underline;
}

.side-navigation .side-navigation-control {
    margin: auto;
    border-left: 1px solid var(--feu-light-gray);
}

.side-navigation .btn-toggle::focus {
    border: 1px solid var(--feu-blue-1);
}

.side-navigation .btn-toggle::before {    
  width: 1.25em;
  line-height: 0;
  content: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='rgba%280,76,151,1%29' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 14l6-6-6-6'/%3e%3c/svg%3e");
  transition: transform .35s ease;
  transform: rotate(90deg);
  transform-origin: .5em 50%;
  vertical-align: middle;
}
.side-navigation .btn-toggle[aria-expanded="true"]::before {
  transform: rotate(-90deg);
}

.side-navigation .submenu > li {
  border-top: 1px solid var(--feu-blue-1);
  font-size: 0.9rem;
  padding: 0.25em 1em 0.25em 1.5em;
}
.side-navigation .submenu > li > .submenu-item {
  display: block;
}


/* -----------SEITENNAVIGATION ENDE  -------------- */

input.form-control, 
textarea {
    border: 1px solid var(--feu-blue-1) !important;
    border-radius: 0;
}
input.for-control:focus {
    border: 2px solid red;
}
input.for-control:placeholder {
    color: red !important;
}

#seite {
	position: static;
	top: auto;
	left: auto;
	width: auto;
	font-size: 1em;
}


/* ----- Footer ----- */
footer {
    background-color: #ddd;
}

footer h2{
    font-size: 14pt;
}

footer li a {
    text-decoration: underline;
    font-size: 1rem;
    color: var(--feu-black) !important;
}
footer li a:hover {
    color: var(--feu-darkgray) !important;
}
footer #socialmedia-list .social-icon { 
    font-size: 2rem;
}
footer #socialmedia-list .x-icon {
    display: inline-block;
    vertical-align: 0.5rem;
    line-height: 1;
}
footer #socialmedia-list .x-icon:hover svg {
    fill: var(--feu-darkgray);
}

footer #socialmedia-list .social-icon:hover { 
    color: var(--feu-darkgray);
}
footer .socialmedia-list-horizontal  > li { 
    display: inline-block; 
    margin-right: 1rem;
}
footer .footer-blue {
    background-color: var(--feu-blue-1);
    color: var(--feu-white);
}
footer .footer-logo {
    margin: 0 0 1rem 0;
}
@media (min-width: 62rem) {
    footer .footer-logo {
        margin: 0;
    }
}
/* ===== Footer ===== */


/* ----------------------------------- ANPASSUNGEN SPEZIELL FÜR VU -------------------------
Teilweise werden bestehende stlyes überschrieben.*/
.feu-cleanup {
    margin: 0em;
}

form.lvustandard input { 
	border: 1px solid black;
	border-radius: 3px;
    padding: 3px 5px;
/*	font-weight:bold; */
    font-size:1em; 
/*    color:var(--feu-white); */
/*    background-color:var(--feu-blue-1); */
    cursor:pointer; 
}
form.lvustandard td input { 
	border: 1px solid black;
	border-radius: 3px;
    padding: 3px 5px;
/*	font-weight:bold; */
    font-size:1em; 
/*    color:var(--feu-white); */
/*    background-color:var(--feu-blue-1); */
    cursor:pointer; 
}

form.lvustandard input.aktion { 
	border: 1px solid black;
	border-radius: 3px;
    padding: 3px 5px;
	font-weight:bold;
    font-size:1em;
    color:var(--feu-white);
    background-color:var(--feu-blue-1);
    cursor:pointer; 
}
div.suchformular {
    margin-bottom: 1.75em;
}
#zusatzinformation ul {
    padding-left: 0;
    width: auto;
}
#inhalt,
#information,
#navigation {
    width: auto; 
    float: none;
    margin-top: 0;
}

#information {
    margin-right: 1em;
}

#zusatzinformation  {
   width: auto; 
    float: none;
    clear: both;
    padding: 1.4em 0 0 5px;
}

table.portal_aussen {
  background-color: var(--feu-white);
  border: 1px solid var(--feu-blue-2);
}
table.portal th.portal_normal {
  background-color: var(--feu-blue-2);
  color: var(--feu-white);
}
div.semesterzeile {
    background-color: var(--feu-light-gray);
    padding: 0.2em 0.2em;
}
th {
    background-color: var(--feu-light-gray);
}
#brotkruemelpfad  {
    margin: 0;
}
#brotkruemelpfad a {
    border:0;
    padding: 0.3em 0.3em 0.3em 0;
}
#brotkruemelpfad li:not(.letzter):after {
    content: "/";
    padding-right: 0.3em;
}

/* die frühere, schöne Darstellung des Fieldsets wiederherstellen */
legend { float: none;
		 width: auto;} 
		 
#navigation .themennavigation li { background-image: none; }

h1,h2,h3,h4 { margin: 0; }

/* Abstände von Forms und Buttons in Tabellen im LVU-Fieldset erhöhen*/
fieldset.lvustandard table, fieldset.lvustandard tr, fieldset.lvustandard td, fieldset.lvustandard th {
  border: 0;
  padding: 3px 5px;
  margin: 0;
}


