@import "fonts.css";
@import "variables.css";
@import "header.css";
@import "darkmode.css";

body {
  font-family: var(--font-family-body, var(--font-family));
  font-size: var(--font-size-body, 16px);
  background-color: var(--bg-color);
  color: var(--font-color-body, var(--text-color));
  transition:
    background-color 0.3s ease,
    color 0.3s ease;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(
    --font-family-headings,
    var(--font-family-body, var(--font-family))
  );
  color: var(--font-color-headings, var(--font-color-body, var(--text-color)));
}

.uk-heading-small,
.uk-heading-medium,
.uk-heading-large,
.uk-heading-xlarge,
.uk-heading-2xlarge,
.uk-card-title,
.uk-article-title,
.uk-h1,
.uk-h2,
.uk-h3,
.uk-h4,
.uk-h5,
.uk-h6 {
  font-family: var(
    --font-family-headings,
    var(--font-family-body, var(--font-family))
  );
  color: var(--font-color-headings, var(--font-color-body, var(--text-color)));
}

h1 {
  font-size: var(--font-size-h1, 2rem);
  margin-bottom: var(--margin-bottom-h1, 1.5rem);
}
h2 {
  font-size: var(--font-size-h2, 1.75rem);
  margin-bottom: var(--margin-bottom-h2, 1.25rem);
}
h3 {
  font-size: var(--font-size-h3, 1.5rem);
  margin-bottom: var(--margin-bottom-h3, 1.1rem);
}
h4 {
  font-size: var(--font-size-h4, 1.25rem);
  margin-bottom: var(--margin-bottom-h4, 1rem);
}
h5 {
  font-size: var(--font-size-h5, 1.1rem);
  margin-bottom: var(--margin-bottom-h5, 0.9rem);
}
h6 {
  font-size: var(--font-size-h6, 1rem);
  margin-bottom: var(--margin-bottom-h6, 0.8rem);
}

[data-site-scope-card] {
  /* background-color: var(--accent-orange-light); */
  border-color: color-mix(in srgb, var(--primary-color) 22%, #d9a461);
}

/* Ensure consent CTA buttons keep accessible contrast across theme overrides */
#global-consent-banner .uk-button-primary,
.js-row-consent-action[data-consent-value="1"] {
  color: #fff;
}

#global-consent-banner .uk-button-primary:hover,
#global-consent-banner .uk-button-primary:focus-visible,
.js-row-consent-action[data-consent-value="1"]:hover,
.js-row-consent-action[data-consent-value="1"]:focus-visible {
  color: #fff;
}

/* @media (min-width: 1200px) {
    .uk-grid-column-large > *,
    .uk-grid-large > * {
        padding-left: 20px;
    }
} */

div.dtsb-searchBuilder div.dtsb-logicContainer {
  background-color: none !important;
  background: none !important;
}

div.dtsb-searchBuilder button.dtsb-button {
  background-color: none !important;
  background: none !important;
  border-radius: 4px!important  ;
}
.uk-border-rounded {
    border-radius: 4px;
}


div.dt-container .dt-paging .dt-paging-button.current, div.dt-container .dt-paging .dt-paging-button.current:hover

 {
   
    background: none!important;
}




table.dataTable>thead>tr>th, table.dataTable>thead>tr>td

 {
    border-bottom: none!important;
}

/* .uk-table-divider>:not(:first-child)>tr
{
    border-top: none!important;
} */

/* Tabellenansicht weniger links und rechts Container */
@media (min-width: 1200px) {
    .uk-card-body {
        padding: 40px 20px;
    }
}
@media (min-width: 960px) {
    .uk-container:not(.uk-container-small):not(.uk-container-xsmall):not(.uk-container-large):not(.uk-container-xlarge):not(.uk-container-expand) {
        padding-left: 20px;   
        padding-right: 20px;
    }
}
@media (min-width: 640px) {
    .uk-container:not(.uk-container-small):not(.uk-container-xsmall):not(.uk-container-large):not(.uk-container-xlarge):not(.uk-container-expand) {
        padding-left: 20px; 
        padding-right: 20px;
    }
}

/* Login background should follow theme settings (uses CSS variables set in page) */
body.login-bg {
  background-color: var(--bg-color) !important;
  background-image: linear-gradient(rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0.2) 100%) !important;
  min-height: 100vh;
  padding: 40px 20px;
}

/* Search term highlight inside pages */
mark.search-term-highlight {
  background-color: #ffeb3b !important; /* vibrant modern yellow */
  color: #000 !important;
  padding: 0 2px;
  border-radius: 3px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
  font-weight: 500;
  transition: background-color 0.2s ease, color 0.2s ease;
}
[data-theme='dark'] mark.search-term-highlight {
  background-color: #f57f17 !important; /* warm dark-mode friendly orange/yellow */
  color: #fff !important;
}
html:not(.search-highlight-on) mark.search-term-highlight {
  background-color: transparent !important;
  color: inherit !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-weight: inherit !important;
}