/**
 * CSS Sizes Chart
 * 
 * <600px - Extra Small (phones)
 * <768px - Small (phone + tablet portrait)
 * <992px - Medium (Laptop + tablet)
 * <1200px - Large (Laptop + small desktops)
 * >1200px - Extra Large (Desktop)
 */
/* ---------------------------------- FONTS --------------------------------- */
@font-face {
  font-family: "San Francisco";
  font-weight: 400;
  src: url("https://applesocial.s3.amazonaws.com/assets/styles/fonts/sanfrancisco/sanfranciscodisplay-regular-webfont.woff");
}

@font-face {
  font-family: "NasalizationRg";
  font-weight: normal;
  src:  url('/assets/fonts/NasalizationRg-Regular.woff2') format('woff2'),
        url('/assets/fonts/NasalizationRg-Regular.woff') format('woff'),
        url('/assets/fonts/NasalizationRg-Regular.TTF') format('truetype');
	
}
@font-face {
  font-family: 'Matrix';
  src: url('/assets/fonts/5x5-Dots.ttf.woff') format('woff');
}





html, body {
    height: 100%;
    margin: 0;
    overflow: hidden;
}

.main-content {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
}

.page-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.container-fluid {
    flex: 1;
    overflow-y: auto;
    padding: 20px;
    box-sizing: border-box;
}

.vertical-menu {
    width: 250px;
    transition: width 0.3s, display 0.3s;
}

}

.time-display {
    font-family: Arial, sans-serif;
    font-size: 1.0rem;
    text-align: center;
}










/* ---------------------------------- Content --------------------------------- */
.page-content {
    padding: calc(70px + 24px) calc(24px / 2) 0 calc(24px / 2) !important;
}

/* ---------------------------------- MAPS --------------------------------- */
.leaflet-control-zoom-in {
    background-color: #fff !important;  /* Beispiel: Hintergrundfarbe */
    color: #000 !important;             /* Beispiel: Textfarbe */
    border: none !important;            /* Beispiel: keine Umrandung */
    font-size: 18px !important;         /* Beispiel: Schriftgröße */
    width: 30px !important;             /* Beispiel: Breite */
    height: 30px !important;            /* Beispiel: Höhe */
    line-height: 30px !important;       /* Beispiel: Zeilenhöhe */
}
.leaflet-control-zoom-out {
    background-color: #fff !important;  /* Beispiel: Hintergrundfarbe */
    color: #000 !important;             /* Beispiel: Textfarbe */
    border: none !important;            /* Beispiel: keine Umrandung */
    font-size: 18px !important;         /* Beispiel: Schriftgröße */
    width: 30px !important;             /* Beispiel: Breite */
    height: 30px !important;            /* Beispiel: Höhe */
    line-height: 30px !important;       /* Beispiel: Zeilenhöhe */
}+

/* ---------------------------- SELECT 2 / FORM ---------------------------- */

/* Standard Inputs */
.form-control {
    background: linear-gradient(180deg, rgba(17,28,51,.92), rgba(13,22,44,.92)) !important;
    background-clip: padding-box !important;
    border: 1px solid rgba(148,163,184,.14) !important;
    border-radius: 12px !important;
    color: #e5e7eb !important;
    box-shadow: none !important;
    transition: all .18s ease;
}

.form-control:hover {
    background: rgba(148,163,184,.08) !important;
    border-color: rgba(148,163,184,.24) !important;
}

.form-control:focus {
    background: linear-gradient(180deg, rgba(17,28,51,.96), rgba(13,22,44,.96)) !important;
    border-color: rgba(56,189,248,.35) !important;
    color: #e5e7eb !important;
    box-shadow: 0 0 0 1px rgba(56,189,248,.15) inset !important;
}

/* Placeholder */
.form-control::placeholder {
    color: #94a3b8 !important;
}

/* Select2 Single */
.select2-container .select2-selection--single {
    background: linear-gradient(180deg, rgba(17,28,51,.92), rgba(13,22,44,.92)) !important;
    border: 1px solid rgba(148,163,184,.14) !important;
    border-radius: 12px !important;
    height: 42px !important;
    box-shadow: none !important;
    transition: all .18s ease;
}

.select2-container .select2-selection--single:hover {
    background: rgba(148,163,184,.08) !important;
    border-color: rgba(148,163,184,.24) !important;
}

.select2-container--default.select2-container--open .select2-selection--single,
.select2-container--default.select2-container--focus .select2-selection--single {
    border-color: rgba(56,189,248,.35) !important;
    box-shadow: 0 0 0 1px rgba(56,189,248,.15) inset !important;
}

/* Select2 Text */
.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #e5e7eb !important;
    line-height: 40px !important;
    padding-left: 12px !important;
    padding-right: 36px !important;
}

/* Select2 Placeholder */
.select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #94a3b8 !important;
}

/* Select2 Arrow */
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 40px !important;
    right: 10px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: #94a3b8 transparent transparent transparent !important;
}

/* Select2 Dropdown */
.select2-dropdown {
    background: linear-gradient(180deg, rgba(17,28,51,.98), rgba(13,22,44,.98)) !important;
    border: 1px solid rgba(148,163,184,.16) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 10px 30px rgba(0,0,0,.35) !important;
}

/* Search inside dropdown */
.select2-search--dropdown {
    padding: 12px !important;
    background: transparent !important;
    border-bottom: 1px solid rgba(148,163,184,.10) !important;
}

.select2-search--dropdown .select2-search__field {
    background: rgba(148,163,184,.06) !important;
    border: 1px solid rgba(148,163,184,.14) !important;
    border-radius: 10px !important;
    color: #e5e7eb !important;
    padding: 10px 12px !important;
    box-shadow: none !important;
    outline: none !important;
}

.select2-search--dropdown .select2-search__field:focus {
    border-color: rgba(56,189,248,.35) !important;
    box-shadow: 0 0 0 1px rgba(56,189,248,.15) inset !important;
}

/* Results */
.select2-results__options {
    background: transparent !important;
    color: #e5e7eb !important;
    padding: 6px 0 !important;
}

/* Result rows */
.select2-results__option {
    background: transparent !important;
    color: #e5e7eb !important;
    padding: 10px 14px !important;
    transition: background .15s ease, color .15s ease;
}

/* Highlighted row */
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
    background: rgba(56,189,248,.14) !important;
    color: #ffffff !important;
}

/* Selected row */
.select2-container--default .select2-results__option[aria-selected=true] {
    background: rgba(148,163,184,.08) !important;
    color: #38bdf8 !important;
}

/* Disabled / loading */
.select2-results__option--disabled,
.select2-results__option[aria-disabled=true],
.select2-results__option--load-more {
    color: #94a3b8 !important;
    background: transparent !important;
}

/* Remove old broken color force */
.select2-results * {
    color: inherit !important;
}

/* Badge Light im Dark Theme neutraler */
.badge-light {
    color: #e5e7eb !important;
    background: rgba(148,163,184,.10) !important;
    border: 1px solid rgba(148,163,184,.14) !important;
}

/* Search form */
.search-form .form-control {
    border-radius: 12px !important;
    width: 250px;
}

/* Map filter untouched */
#map.dark-filter {
    filter: brightness(0.6) invert(1) contrast(3) hue-rotate(200deg) saturate(0.3) brightness(0.7);
}

/* Modal Select2 */
.modal-open .select2-dropdown {
    z-index: 10060 !important;
}

.modal-open .select2-close-mask {
    z-index: 10055 !important;
}

/* Input groups */
.input-group-text {
    flex: 1 !important;
    background: linear-gradient(180deg, rgba(17,28,51,.92), rgba(13,22,44,.92)) !important;
    border: 1px solid rgba(148,163,184,.14) !important;
    color: #e5e7eb !important;
}

.form-control,
.select2-container {
    width: 100% !important;
    max-width: 100% !important;
}

.input-group {
    display: flex !important;
    flex-wrap: nowrap !important;
}

.select2-container--above.select2-container--focus {
    overflow: hidden;
}

/* ---------------------------- Tabels ---------------------------- */

.table {
    --bs-table-bg: transparent !important;
    --bs-table-accent-bg: transparent !important;
    --bs-table-striped-color: #212529 !important;
    --bs-table-active-color: #212529 !important;
    --bs-table-active-bg: rgba(0, 0, 0, 0.1) !important;
    --bs-table-hover-color: #212529 !important;
    --bs-table-hover-bg: rgba(0, 0, 0, 0.075) !important;
    width: 100% !important;
    vertical-align: top !important;
    border-color: #dee2e6 !important;
    text-align: center !important;
    border: none !important;
}

.table th {
    text-align: center !important;
    border: none !important;
}

.table td {
    text-align: center !important;
    border: none !important;
}



/* ---------------------------- GENERAL SETTINGS ---------------------------- */
:root {
  font-size: 16px;
  font-family: "San Francisco", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  --transition-speed: 600ms;
}

a {
    color: #fff !important;
    text-decoration: none; 
}

.ndf-font {
  font-family: 'NasalizationRg' !important;
}
.table {
	--bs-table-striped-color: unset !important;
}
.accordion-item {
  background-color: unset !important;
}
.accordion-body {
  background-color: unset !important;
}


/* ---------------------------------- BODY ---------------------------------- */
body {
  color: var(--font-color);
  background-color: var(--background-color);
  margin: 0;
  padding: 0;
  overflow-y: scroll; /* or overflow: auto; */
}


/* ---------------------------------- MAIN ---------------------------------- */
main {
padding-top:6rem;
  margin-left: 6rem;
margin-right: 0;
padding-right: 2rem;
  height: 95vh;
  text-align: center;
  overflow-y: auto;
}

/* ---------------------------------- FORM ---------------------------------- */
.form-control-plaintext {
	 color: var(--font-color);
}


/* ---------------------------------- CARDS --------------------------------- */
.card {
    background-color: var(--card-background-color);
    border-color: #067ec1;
}

/* Header */
.card-header {
    background-color: var(--card-header);
    color: white;
    text-align: center !important;
}

.card-header a { 
    color: white; 
}

.card-header i { 
    color: white; 
}

.card .card-header h5 { 
    font-size: 114% !important;
}

/* Body bleibt unverändert */
.card-body .rotate i {
    color: rgba(20, 20, 20, 0.15);
    position: absolute;
    right: -10px;
    bottom: 0;
    display: block;
    transform: rotate(-45deg);
}

/* =========================
   Leaderboard Footer Fix
   ========================= */
.card-footer {
    background: rgba(255,255,255,0.04) !important;
    border-top: 1px solid rgba(255,255,255,0.08) !important;
    color: rgba(255,255,255,0.92) !important;
    padding: .35rem .85rem !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 2 !important;
}

.card-footer,
.card-footer * {
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
}

.card-footer.text-end {
    padding-right: 1rem !important;
}

.card-footer.text-start {
    padding-left: 1rem !important;
}



/* ---------------------------------- ACCORDION--------------------------------- */
/* ACCORDION NORD FLY STYLE */

.accordion-item{
    background: var(--card-background-color) !important;
    border: 1px solid var(--nfg-line) !important;
    border-radius: 12px !important;
    overflow: hidden;
    margin-bottom: 8px;
}

/* Header */
.accordion-button{
    background: rgba(255,255,255,0.03) !important;
    color: var(--font-color) !important;
    border: none !important;
    box-shadow: none !important;
    padding: 12px 16px;
    font-weight: 500;
    transition: all .2s ease;
}

/* Hover */
.accordion-button:hover{
    background: rgba(56,189,248,.06) !important;
}

/* Active */
.accordion-button:not(.collapsed){
    background: rgba(56,189,248,.10) !important;
    color: #38bdf8 !important;
}

/* Arrow */
.accordion-button::after{
    filter: brightness(1.8);
}

/* Body */
.accordion-body{
    background: rgba(255,255,255,0.02) !important;
    color: var(--font-color) !important;
    border-top: 1px solid var(--nfg-line);
}

/* Icon spacing */
.accordion-button i{
    margin-right: 8px;
    color: #38bdf8;
}





/* -------------------------------- SCROLLBAR ------------------------------- */
::-webkit-scrollbar {
  width: 0;
  display: none;
}

::-webkit-scrollbar-track {
  background: var(--background-color);
}

::-webkit-scrollbar-thumb {
  background: var(--background-color);
}


/* ---------------------------------- LINKS --------------------------------- */
a {
  color: var(--font-color);
  text-decoration: none;
  transition: all 0.125s ease;
}

a:hover,
.pointer:hover {
  color: var(--light-font);
}

a:hover img,
.pointer:hover img {
  background-color: var(--light-font);;
}
.no-highlight {
  -webkit-user-select: none !important;  /* Chrome, Opera, Safari */
  -moz-user-select: none !important;     /* Firefox */
  -ms-user-select: none !important;      /* Internet Explorer/Edge */
  user-select: none !important;          /* Non-prefixed version, currently supported by almost all browsers */
  outline: none !important;              /* Remove outline on focus */
  cursor: pointer !important;            /* Change cursor to pointer */
}

.no-highlight img {
  pointer-events: none !important;       /* Prevents image itself from receiving pointer events */
}


/* ------------------------------ BRAND IMAGES ------------------------------ */
.brand-logo,
.brand-logo * {
  width: 16px;
  height: 16px;
  margin: 5px;
  
  background: var(--font-color);
  border-radius: 25%;
}

/* ------------------------------ Generic Classes ------------------------------ */
/* Generic Classes */
.bg-transparent { background-color: transparent; }

/* Fixed Basic Height For All Overflow-Auto Content */
.overflow-auto { max-height: 400px; }

/* Image Resizing - By Width */
.img-r10 { width: 10%; height: auto;}
.img-r15 { width: 15%; height: auto;}
.img-r20 { width: 20%; height: auto;}
.img-r25 { width: 25%; height: auto;}
.img-r50 { width: 50%; height: auto;}
.img-r75 { width: 75%; height: auto;}
.img-r90 { width: 90%; height: auto;}
.img-r100 { width: 99%; height: auto;}

/* Image Resizing - By Height */
.img-rh10 { width: auto; height: 10%;}
.img-rh15 { width: auto; height: 15%;}
.img-rh20 { width: auto; height: 20%;}
.img-rh25 { width: auto; height: 25%;}
.img-rh50 { width: auto; height: 50%;}
.img-rh75 { width: auto; height: 75%;}
.img-rh90 { width: auto; height: 90%;}
.img-rh100 { width: auto; height: 99%;}

/* Fixed Height Images */
.img-h20 { width: auto; height: 20px;}
.img-h25 { width: auto; height: 25px;}
.img-h30 { width: auto; height: 30px;}
.img-h35 { width: auto; height: 35px;}
.img-h40 { width: auto; height: 40px;}
.img-h45 { width: auto; height: 45px;}
.img-h50 { width: auto; height: 50px;}
.img-h60 { width: auto; height: 60px;}
.img-h70 { width: auto; height: 70px;}
.img-h80 { width: auto; height: 80px;}
.img-h90 { width: auto; height: 90px;}
.img-h100 { width: auto; height: 100px;}
.img-h125 { width: auto; height: 125px;}
.img-h150 { width: auto; height: 150px;}
.img-h175 { width: auto; height: 175px;}
.img-h200 { width: auto; height: 200px;}

/* Max Height Images */
.img-mh20 { width: auto; max-height: 20px;}
.img-mh30 { width: auto; max-height: 30px;}
.img-mh40 { width: auto; max-height: 40px;}
.img-mh50 { width: auto; max-height: 50px;}
.img-mh60 { width: auto; max-height: 60px;}
.img-mh70 { width: auto; max-height: 70px;}
.img-mh80 { width: auto; max-height: 80px;}
.img-mh90 { width: auto; max-height: 90px;}
.img-mh100 { width: auto; max-height: 100px;}
.img-mh125 { width: auto; max-height: 125px;}
.img-mh150 { width: auto; max-height: 150px;}
.img-mh175 { width: auto; max-height: 175px;}
.img-mh200 { width: auto; max-height: 200px;}

.white{
  color: #FEC601 !important;
}

