// ws_scss uebergibt die TypoScript-Konstanten (plugin.tx_wsscss.variables bzw.
// page.includeCSS.main.variables) per Compiler::addVariables() als SCSS-Strings.
// In Sass sind aber nur `false` und `null` falsy — "0" und "false" sind truthy.
// Ein `enable-dark-mode = 0` waere ohne diese Normalisierung also wirkungslos,
// weil `@if $enable-dark-mode` trotzdem greift. Die injizierten Werte kommen
// zudem ohne `!default` in den Root-Scope, sind also nicht per `!default`
// ueberschreibbar — deshalb wird nach dem `!default`-Fallback explizit
// zugewiesen.
@function ts-boolean($value) {
  @if $value == null or $value == false or $value == 0 or $value == "0" or $value == "" or $value == "false" or $value == "off" or $value == "no" {
    @return false;
  }
  @return true;
}

$primary: #005262 !default;
$secondary: #55aa63 !default;
$lightblue: #87c8e6 !default;
$white: #fff !default;

$prefix: bs- !default;

/* background of boxed page */
$page-bg: #fff !default;

// Eigene Farben, automatisch über die Klasse .c-<color>
$custom-colors: (
  dark-gray: #005262,
  gray: #999,
  graylight: #f7f7f7
) !default;

$icon-colors: (
  text: var(--#{$prefix}body-color),
  primary: var(--#{$prefix}primary),
  secondary: var(--#{$prefix}secondary)
) !default;

$icon-sizes: (
  sm: 2rem,
  md: 3rem,
  lg: 4rem,
  xl: 6rem
) !default;

$font-family-sans-serif: 'Open Sans', "Helvetica Neue", Helvetica, Arial, sans-serif !default;
$headings-font-family: $font-family-sans-serif !default;

$h1-font-size: 2.0rem !default;
$h2-font-size: 1.8rem !default;
$h3-font-size: 1.5rem !default;
$h4-font-size: 1.3rem !default;
$h5-font-size: 1.1rem !default;
$h6-font-size: 1rem !default;

$headings-margins-bottom: (
  h1: 2.5rem,
  h2: 2rem,
  h3: 0.5rem,
  h4: 0.5rem,
  h5: 0.5rem,
  h6: 0.5rem
) !default;

$font-size-base: 0.95rem !default;

$breadcrumb-padding-vertical: .35rem !default;
$breadcrumb-bg: transparent !default;
$breadcrumb-divider-color: #949494 !default;
$breadcrumb-padding-y: .35rem !default;
$breadcrumb-color: rgba(#000, .7) !default;

$font-path: 'EXT:template/Resources/Public/Fonts/';
$t3b-font-path: 'EXT:template/Resources/Public/Fonts/T3Bootstrap/';


$navbar-color: rgba(#000, .7) !default;
$navbar-brand-margin-end: 3rem !default;
$navbar-light-color: rgba(var(--#{$prefix}emphasis-color-rgb), .75) !default;

$scroll-to-top-color: rgb(220, 220, 220) !default;

// Labels

$label-default-bg: #818a91 !default;
$label-primary-bg: #0275d8 !default;
$label-success-bg: #5cb85c !default;
$label-info-bg: #5bc0de !default;
$label-warning-bg: #f0ad4e !default;
$label-danger-bg: #d9534f !default;

$label-color: #fff !default;
$label-link-hover-color: #fff !default;
$label-font-weight: bold !default;


$custom-file-text: (
  en: "Choose file...",
  de: "Datei wählen..."
) !default;


$body-color: #444 !default;
$link-color: $primary !default;

$spacer: 1rem !default;

$spacers: (
  0: 0,
  1: $spacer * .25,
  2: $spacer * .5,
  3: $spacer,
  4: $spacer * 1.5,
  5: $spacer * 3,
  6: $spacer * 4,
  7: $spacer * 5
) !default;

$navbar-nav-link-padding-x: 1rem !default;

// news meta
$news-meta-color: #6c757d !default;
$news-meta-item-padding: .5rem !default;

$news-meta-margin-bottom: 1rem !default;

$news-meta-divider-color: #6c757d !default;
$news-meta-active-color: #6c757d !default;
$news-meta-divider: quote("|") !default;


$page-footer-bg: #F7F7F7 !default;
$page-footer-headline-color: #000 !default;
$page-footer-color: null !default;
$page-footer-link-hover-color: null !default;
$page-footer-headline-font-size: 1.2rem !default;
$page-footer-row-padding-y: 2rem !default;
$page-footer-logo-height: 2.5rem !default;
$page-footer-logo-spacing-top: 2rem !default;


$headings-font-style: normal !default;
$headings-color: inherit !default;

// dark mode
$enable-dark-mode: false !default;
$enable-dark-mode: ts-boolean($enable-dark-mode);
$color-mode-type: media-query !default;

// contrast mode
$enable-contrast-mode: false !default;
$enable-contrast-mode: ts-boolean($enable-contrast-mode);
$contrast-mode-type: media-query !default;

$mobile-menu-bg: #ffffff !default;
$mobile-menu-color-icon: rgb(0 0 0 / 0.4) !default;
$mobile-menu-color-text: rgb(0 0 0 / 0.8) !default;
$mobile-menu-color-text-dimmed: rgb(0 0 0 / 0.8) !default;
$mobile-menu-color-background-highlight: rgb(0 0 0 / 0.05) !default;
$mobile-menu-color-background-emphasis: rgb(255 255 255 / 0.75) !default;
$mobile-menu-color-border: rgb(0 0 0 / 0.15) !default;


$enable-cssgrid: true !default;


$example-border-color: #ddd !default;
$example-color: #959595 !default;
$example-bg: transparent !default;

// page hero
$page-hero-bg: #6B6B6B !default;
$page-hero-color: #fff !default;
$page-hero-color-inverted: #000 !default;
$page-hero-text-bg: transparent !default;
$page-hero-filter-dark-bg: rgba(0, 0, 0, .4) !default;

// Inline-Text-Background-Padding (Selektor `div > span, p, h1…h6`).
$page-hero-text-bg-padding-y: 0.2rem !default;
$page-hero-text-bg-padding-x: 0.4rem !default;

// Hero-Typography — Default-Size, Mobile- / Desktop-Stufe.
$page-hero-headline-font-size-mobile: 2rem !default;
$page-hero-headline-font-size-desktop: 2.5rem !default;
$page-hero-text-font-size-mobile: 1.1rem !default;
$page-hero-text-font-size-desktop: 1.5rem !default;

// Hero-Modifier `--size-small` — min-height der Content-Spalte.
$page-hero-min-height-small: 15rem !default;

// Hero-Modifier `--size-big` — min-height pro Breakpoint und
// vergrößerte Headline-Typografie ab `sm`.
$page-hero-min-height-big-desktop: 32rem !default;
$page-hero-min-height-big-tablet: 18rem !default;
$page-hero-min-height-big-mobile: 16rem !default;
$page-hero-headline-font-size-big: 3rem !default;
$page-hero-headline-line-height-big: 4rem !default;
$page-hero-text-padding-big: 4px !default;

// Hero-Modifier `--padding` — Innenabstand der Content-Spalte.
$page-hero-content-padding-y: 3rem !default;
$page-hero-content-padding-x: 2rem !default;

// Hero-Carousel-Caption — Titel + Beschreibung der Slides.
$page-hero-carousel-title-font-size: 2rem !default;
$page-hero-carousel-title-margin-bottom: 1rem !default;
$page-hero-carousel-description-max-width: 800px !default;


$page-header-bg: rgba(#fff, .9) !default;
$page-header-height-mobile: 5rem !default;
$page-header-height-tablet: 6rem !default;
$page-header-height-desktop: 9rem !default;

$page-header-middle-bg: transparent !default;

$scroll-margin-top: 8rem !default;

$nav-meta-link-color: var(--#{$prefix}nav-meta-link-color) !default;
$nav-calltoaction-link-color: var(--#{$prefix}nav-calltoaction-link-color) !default;
$nav-calltoaction-link-hover-color: var(--#{$prefix}nav-calltoaction-link-hover-color) !default;
$nav-calltoaction-sidebar-color: #fff !default;
$nav-calltoaction-sidebar-shadow: 0 0 4px 0 rgba(0, 0, 0, .34) !default;
$dropdown-search-shadow: 0 0 3px #bbb !default;


$display1-font-size: 5rem !default;
$display2-font-size: 4.5rem !default;
$display3-font-size: 4rem !default;
$display4-font-size: 3.5rem !default;
$display5-font-size: 3rem !default;
$display6-font-size: 2.5rem !default;


$display-font-sizes: (
  1: $display1-font-size,
  2: $display2-font-size,
  3: $display3-font-size,
  4: $display4-font-size,
  5: $display5-font-size,
  6: $display6-font-size
);

$input-border-color: #6c757d !default; /* WCAG 2.1 AA 1.4.11  */
$input-focus-border-color: var(--#{$prefix}input-focus-border-color) !default;
$input-btn-focus-box-shadow: var(--#{$prefix}focus-ring-box-shadow) !default;

$form-check-input-border: var(--#{$prefix}border-width) solid $input-border-color !default;
$form-check-input-checked-bg-color:       var(--#{$prefix}primary) !default;
$form-check-input-checked-border-color:   var(--#{$prefix}primary) !default;

$fontfile-timestamp: 1735083597 !default;

$mobile-menu-bg: #fff !default;

$offcanvas-bg-color:  var(--#{$prefix}mobile-menu-bg) !default;

