/*----------------------------------------------------------------------------
    Deubner Base Stylesheet – Bootstrap 5
    Gemeinsame Styles für alle Portale (Steuern, Recht, Akademie).
    Farben werden über CSS Custom Properties gesteuert – Theme-Datei zuerst laden:
      themes/theme-steuern.css | themes/theme-recht.css | themes/theme-akademie.css
----------------------------------------------------------------------------*/

/*----------------------------------------------------------------------------
    App Rahmen
----------------------------------------------------------------------------*/

html {
    position: relative;
    min-height: 100%;
}
a {
    color: var(--color-primary);
    text-decoration: none;
}
a:focus, a:hover {
    color: var(--color-primary-dark);
    text-decoration: underline;
}
.nav-link {
    padding-left: 0px;
    color: #808080;
}

.headerline {
    background: #F4F4F4 0% 0% no-repeat padding-box;
    opacity: 1;
}
h1.logo, div.logo {
    background: url("../images/logo_sprite.png") no-repeat scroll var(--logo-offset) #fff;
    border-radius: 0 0 0 6px;
    height: 40px;
    margin: 5px 10px 0 0;
    padding: 0;
    text-indent: -9999px;
    width: 62px;
    float: left;
}
.color {
    background: var(--color-primary) !important;
    color: white !important;
}
.color:hover {
    background: var(--color-primary-dark) !important;
    color: white !important;
}
.color-invert {
    background: transparent !important;
    color: var(--color-primary) !important;
}
.coloractive {
    background: var(--color-primary-dark) !important;
    color: white !important;
}

.btn-default {
    background: transparent !important;
    color: #212529 !important;
    border: #ccc 1px solid;
}
.btn-default:hover {
    background: #e1e0e0 !important;
}
.lizenztext {
    font: italic normal normal 14px/29px "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #333333;
}
.sitename {
    color: var(--color-primary);
    text-transform: uppercase;
    margin-left: 20px;
}
.copyright {
    text-align: left;
    font: italic normal normal 14px/29px "Helvetica Neue", Helvetica, Arial, sans-serif;
    letter-spacing: 0px;
    margin: 30px 10px 0 0;
    line-height: 20px;
    color: #808080;
}
.logoutbutton > li > a {
    background: #fff;
    font-size: 14px;
    color: var(--color-primary);
    text-shadow: none;
    text-decoration: none !important;
    display: block;
    padding: 0.45rem;
}
.logoutbutton > li > a:hover,
.logoutbutton > li > a:focus,
.logoutbutton > li > a:active {
    background: var(--color-primary-darker);
    color: white;
}
.navbar .container-fluid {
    background: var(--color-primary);
}
#navbar-content {
    font-size: 0.9rem;
}

div.logofooter {
    background: url("../images/logo_grau.png");
    height: 40px;
    margin: 30px 10px 0 0;
    padding: 0;
    text-indent: -9999px;
    width: 62px;
    float: left;
}
.footer {
    position: absolute;
    bottom: 0px;
    width: 100%;
}
.footercontainer {
    background: #F4F4F4;
    opacity: 1;
}
/* Footer Nav-Link */
.navbar-nav:hover, .nav-link:hover, .nav-link:focus {
    color: var(--color-primary-mid);
    text-decoration: none;
}

.page-item.active .page-link {
    background: var(--color-primary-mid) !important;
    color: white !important;
}
.page-link {
    color: var(--color-primary-mid) !important;
}
.breadcrumb-home {
    font-size: 0.85em !important;
}
.accordion-button:not(.collapsed) {
    background: var(--color-primary-mid) !important;
    color: white !important;
}
.badge-filter {
    top: 12px;
    right: 12px;
}
.badge-header {
    top: 18px;
    right: 12px;
}
.badge-offcanvas-header {
    top: 10px;
    right: 12px;
}
.floating {
    background-color: #FFFFFF !important;
}

/*----------------------------------------------------------------------------
    Content / Buttons
----------------------------------------------------------------------------*/
.btn-primary {
    color: white;
    background-color: var(--color-primary) !important;
    border-color: white !important;
}
.btn-primary:hover {
    color: white !important;
    background-color: var(--color-primary-dark) !important;
    border-color: var(--color-primary-dark) !important;
}
.btn-check:checked + .btn-primary:focus,
.btn-check:active + .btn-primary:focus,
.btn-primary:active:focus,
.btn-primary.active:focus,
.show > .btn-primary.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.25rem var(--color-primary-dark);
}
.btn-check:checked + .btn-primary,
.btn-check:active + .btn-primary,
.btn-primary:active,
.btn-primary.active,
.show > .btn-primary.dropdown-toggle {
    color: white !important;
    background-color: var(--color-primary-dark) !important;
    border-color: var(--color-primary-dark) !important;
}
.btn-check:focus + .btn-primary, .btn-primary:focus {
    color: white;
    background-color: var(--color-primary-dark);
    border-color: var(--color-primary-dark);
    box-shadow: 0 0 0 0.25rem var(--color-primary);
}
.btn-check:focus + .btn, .btn:focus {
    outline: 0;
    box-shadow: 0 0 0 0.25rem var(--color-primary);
}

.btn-link {
    color: var(--color-primary);
}
.btn-link:focus, .btn-link:hover {
    color: var(--color-primary);
    text-decoration: underline;
    background-color: transparent;
}
.btn-success {
    color: #fff;
    border-color: var(--color-success-border);
    background: var(--color-primary);
    background-image: linear-gradient(var(--color-primary), var(--color-primary));
}
.btn-success:focus, .btn-success:hover {
    background: var(--color-primary);
    background-position: 0 -15px;
}
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:focus,
.dropdown-menu > .active > a:hover {
    background-color: var(--color-primary);
    background-image: linear-gradient(to bottom, var(--color-primary) 0, var(--color-primary) 100%);
    background-repeat: repeat-x;
}
.btn-success.active,
.btn-success.focus,
.btn-success:active,
.btn-success:focus,
.btn-success:hover,
.open > .dropdown-toggle.btn-success {
    color: #fff;
    background-color: var(--color-primary-darker);
    border-color: var(--color-success-border);
}

.preview_check {
    border-style: solid;
    border-width: 1px;
    box-shadow: 10px 10px 5px grey;
}
.checklinks {
    padding: 20px;
    text-align: right;
}
.pdflink a {
    min-width: 70px;
    margin-right: 10px;
}
.officelink {
    background-color: var(--color-primary);
    font-weight: bold;
    width: 160px;
    height: 35px;
    border-radius: 5px;
    margin-bottom: 10px;
    text-align: center;
}
.officelink > .glyphstx {
    border-style: none;
}
.officelink > a {
    color: #FFFFFF;
    vertical-align: middle;
    padding-top: 2px;
}
.officelink > span {
    color: #FFFFFF;
    vertical-align: middle;
}
.iframe_preview {
    width: 100%;
    height: 500px;
}
.panel-group > .panel-default > .panel-heading {
    background-image: none;
    color: #333;
    border-color: #ddd;
    background-color: #fff;
    width: auto;
}
#accordion.panel-group > .panel-default > .panel-heading {
    background-image: none;
    color: #333;
    border-color: #ddd;
    background-color: #fff;
}
.list-group .panel-group > .panel-default {
    width: 260px;
}
.panel-group > .panel-default > .panel-heading:hover {
    background-image: none;
    color: #333;
    border-color: #ddd;
    background-image: linear-gradient(to bottom, #fff 0, #ddd 100%);
}
table.deub_g_aenderungsnachweis th,
table.deub_g_aenderungsnachweis td,
table.deub_e_normal th,
table.deub_e_normal td {
    border: 1px solid black;
    padding: 4px;
}
input[readonly]:hover {
    cursor: pointer;
}
#quell-box {
    margin-top: 60px;
    font-size: 85%;
    padding: 0px;
    background-color: #FAFAFA;
}
#metabox {
    padding: 15px;
    border-style: solid;
    border-width: 1px;
    border-color: #CCCCCC;
    background-color: #FDFDFD;
    -webkit-border-radius: 4px;
    border-radius: 4px;
}
div.metaicon {
    text-align: center;
}
.metaicon:first-child {
    font-size: 1.2em;
}
.meta1titel, .meta1 {
    display: block;
    font-weight: bold;
    text-align: center;
    font-size: 1.2em;
    padding-top: 5px;
}
.meta2titel {
    display: block;
    font-weight: bold;
    padding-top: 5px;
    font-size: 0.9em;
}
.meta2 {
    display: block;
}
.date-button {
    margin-top: 10px;
}
.date-ok:before {
    content: "\e013";
    font-family: "Glyphicons Halflings";
    display: inline-block;
}
.date-cancel:before {
    content: "\e014";
    font-family: "Glyphicons Halflings";
    display: inline-block;
}
.deub_g_media > img {
    max-width: 600px;
}
.btn_zur_rubrik {
    background: linear-gradient(var(--color-primary), var(--color-primary));
    color: #FFFFFF;
    border-color: var(--color-primary);
    border-top-color: var(--color-btn-rubrik-top);
    border-right-color: var(--color-primary);
}
.btn_zur_rubrik:hover {
    background: linear-gradient(var(--color-primary-darker), var(--color-primary-darker));
    color: #FFFFFF;
    border-color: var(--color-primary-darker);
}
.filterlink {
    background: linear-gradient(var(--color-primary), var(--color-primary));
}
.filterlink > span {
    color: #FFFFFF;
}
.breadcrumb > li + li:before {
    content: "\3E";
}
.panel-heading .accordion-toggle:after {
    font-family: 'Glyphicons Halflings';
    content: "\e080";
    float: right;
    color: grey;
}
.panel-heading .accordion-toggle.collapsed:after {
    content: "\e080";
}
.nav-button {
    padding: 5px;
    text-align: center;
    font-size: 1.5em;
}
.navbar-default .navbar-brand {
    color: #fff;
}
.navbar-default .list-group {
    max-height: 300px;
    margin-bottom: 10px;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
}
.nopadding {
    padding: 0 !important;
    margin: 0 !important;
}
.telexbar {
    background-color: var(--color-primary);
}
h1 {
    font-size: 1.7em;
}
h5 {
    font-weight: bold;
}
header.globalHeader {
    margin: auto;
}
.login {
    color: var(--color-primary);
}
.nav .navbar-nav .glyphstx {
    font-size: 1em;
    padding: 0.2em;
    border-color: #ffff;
    border-style: solid;
    border-width: 1px;
    color: #ffff;
    line-height: 1.5;
}
.glyphstx {
    font-size: 1.4em;
    padding: 0.2em;
    border-color: var(--color-primary);
    border-style: solid;
    border-width: 1px;
    color: var(--color-primary);
    line-height: 1.5;
}
.glyphstxbc {
    font-size: 1em;
    padding: 0.2em;
    border-color: var(--color-primary);
    border-style: solid;
    border-width: 1px;
    color: var(--color-primary);
    line-height: 1.5;
}
.nav .glyphstxanh {
    font-size: 1em;
    border-style: solid;
    border-width: 1px;
    padding: 0.2em;
    padding-left: 0.4em;
    border-color: #ffffff;
    color: #ffffff;
    line-height: 1.5;
    width: 2em;
}
.nav .icon-gesetz {
    font-size: 1.2em;
    border-style: solid;
    border-width: 1px;
    padding: 0.2em;
    padding-left: 0.4em;
    border-color: #ffffff;
    color: #ffffff;
    line-height: 1;
    top: 1px;
    display: inline-block;
}
.nav .icon-rechtsprechung {
    font-size: 1.2em;
    border-style: solid;
    border-width: 1px;
    padding: 0.2em;
    padding-left: 0.4em;
    border-color: #ffffff;
    color: #ffffff;
    width: 2em;
    line-height: 1;
    top: 1px;
    display: inline-block;
}
.meta {
    font-size: 2em;
}
.stxmeta, .meta1 {
    text-align: center;
    font-weight: bold;
    margin-top: 10px;
    margin-bottom: 10px;
}
.gesmeta {
    font-size: 1.5em;
}
.stxmeta2, .meta2 {
    margin-bottom: 10px;
}
.active .glyphstx {
    color: #ffffff;
    border-color: #ffffff;
}
.active .glyphstxanh {
    color: #ffffff;
    border-color: #ffffff;
}
span.highlight {
    font-weight: bold;
}
span.deub_g_liste span.deub_g_listenelement {
    margin-top: 11px;
    display: block;
    position: relative;
}
.deub_e_normal {
    font-weight: normal;
    font-size: 15px;
    line-height: 20px;
}
p.deub_g_titel {
    clear: both;
    color: #333333;
}
.deub_g_gabsnr {
    position: relative;
    display: block;
    float: left;
    left: 0em;
    color: #333333;
}
.deub_g_gabstxb {
    position: relative;
    display: block;
    left: 0.5em;
    margin-left: 2em;
    color: #333333;
}
div.deub_inhalt, p.deub_inhalt {
    margin-top: 0px;
    color: #333333;
}
div.deub_nav {
    display: none;
}
p.deub_g_utitel {
    clear: both;
    color: #333333;
}
#dok-box {
    margin-top: 60px;
    font-size: 85%;
    padding: 0px;
}
#admin-box {
    font-size: 85%;
    padding: 0px;
}
.quelle {
    margin-bottom: 10px;
}
.deub_vwa_fett, .deub_vwa_artueber {
    font-weight: bold;
}
span.deub_FETT {
    font-weight: bold;
}
span.deub_KURSIV {
    font-style: italic;
}
.deub_e_foot {
    position: relative;
}
.deub_e_foot a {
    text-decoration: none;
    color: var(--color-primary);
}
.deub_e_white_content {
    display: none;
    position: absolute;
    top: 60px;
    left: 30px;
    width: 300px;
    padding: 16px;
    border: 2px solid #BBBBBB;
    background-color: white;
    z-index: 2;
    overflow: auto;
}
.gotopbutton {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 30px;
    z-index: 99;
    font-size: 18px;
    border: none;
    outline: none;
    background: var(--color-primary);
    color: white;
    cursor: pointer;
    padding: 15px;
    border-radius: 1px;
}
.gotopbutton:hover {
    background-color: var(--color-primary-darker);
}
a.list-group-item {
    overflow: auto;
}
.list-group-item.active,
.list-group-item.active:hover {
    color: #ffffff;
    border-color: #ffffff;
    background: var(--color-primary);
}
input[type=text]:focus, textarea:focus {
    box-shadow: 0px 5px 5px rgba(18, 141, 189, 0.5);
    border: 1px solid rgba(18, 141, 189, 0.5);
}
.quell-box {
    margin-top: 60px;
    font-size: 90%;
    background-color: #FAFAFA;
}
.ueberschrift {
    font-size: 170%;
}
.zwischenueberschrift.ebene2 {
    font-size: 140%;
}
.telextipp_ueberschrift, .hinweis_ueberschrift, .kommentar_ueberschrift, .fazit_ueberschrift {
    font-size: 140%;
}
.telextipp, .hinweis, .fazit, .kommentar {
    border-top-style: solid;
    border-bottom-style: solid;
    border-width: 1px;
    border-color: var(--color-primary);
    padding-bottom: 5px;
    margin-bottom: 20px;
}
.hervorhebung {
    font-weight: bold;
}
.praxistipp_ueberschrift {
    font-size: 150%;
}
.glyphicon {
    position: relative;
    top: 1px;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    font-style: normal;
    font-weight: 400;
    line-height: 1;
}
.panel-heading .glyphicon {
    opacity: 0.7;
    font-size: 1em;
    padding: 0.2em;
    border-color: var(--color-primary);
    border-style: solid;
    border-width: 1px;
    color: var(--color-primary);
    line-height: 1.5;
}
.deub_titel {
    font-size: .8em;
}
.deub_titel_text {
    font-size: 2em;
}
h2.deub_e_kurzleitsatz {
    display: none;
}
.deub_e_titel {
    font-size: 1.3em;
    margin-top: 1.3em;
}
.deub_e_leitsatz_text {
    font-size: .6em;
    font-weight: bold;
    display: block;
    line-height: 1.3em;
}
.deub_e_normenkette {
    font-size: 1em;
}
.paywall li {
    display: block;
}
.subtitle {
    font-weight: bold;
    margin-bottom: 1em;
}
.vor_zurueck_nav {
    margin-bottom: 10px;
}
.paywall li:before {
    content: "\e067";
    font-family: 'Glyphicons Halflings';
    float: left;
    margin-left: -17px;
    color: #000000;
}
.list-group-item {
    overflow: hidden;
}
a.list-group-item:focus, a.list-group-item:hover {
    color: #555;
    text-decoration: none;
    background-color: #f5f5f5;
}
.deub_vwa_amtltitel {
    font-size: 170%;
}
.deub_vwa_verwanartueber, .deub_vwa_verwanabschnittueber {
    font-size: 150%;
}
.deub_vwa_verwanartueber > * {
    font-size: 15px;
}
.bestellbutton {
    height: 40px;
    width: 100px;
    margin-top: -2px;
    margin-left: -7px;
    background: var(--color-primary) 0% 0% no-repeat padding-box;
    border-radius: 0px 2px 2px 0px;
    color: white;
    opacity: 1;
    text-align: center;
    font-size: 14px;
    letter-spacing: 0px;
}
.bestellbutton:focus, .bestellbutton:hover {
    background: var(--color-primary-darker) 0% 0% no-repeat padding-box;
    color: white;
}
.deubnerTitel {
    color: var(--color-primary);
    font-family: sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    text-overflow: inherit;
    padding-left: 0px;
}
.breadcrumb > li + li::before {
    padding: 0 5px;
    color: var(--color-primary);
    content: ">";
}
.breadcrumb {
    list-style: none;
    margin-top: 20px;
}
#Detailsuche a {
    color: #fff;
}
#Detailsuche a:hover {
    color: #fff;
}
#Detailsuche .panel-heading {
    background-color: var(--color-primary);
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
    margin-right: 15px;
    margin-left: 15px;
    border: 0px;
}
#Detailsuche .panel-heading:hover {
    background-image: none;
    color: #ddd;
    border-color: var(--color-primary-darker);
    background-color: var(--color-primary-darker);
    text-decoration: underline;
}
#Detailsuche .panel {
    border: 0px;
}
#Detailsuche .panel-default {
    border: 0px;
}

/*----------------------------------------------------------------------------
    Recht-spezifische Styles (nur aktiv wenn Portal = Recht)
----------------------------------------------------------------------------*/
.portal-recht h4 { font-size: 1.25rem; }
.portal-recht h5 { font-size: 0.9em; }
.portal-recht .headerline .freischaltpulldown {
    left: -60%;
    top: 75%;
}
.portal-recht .pagination > li.active > a {
    border-color: var(--color-primary);
    background: var(--color-primary);
}
.portal-recht .pagination > li > a {
    color: var(--color-primary);
}
