/* High Contrast Mode Styles */
:root {
  --yellow-highcontrast: #fffc32;
}

body.high-contrast {
  background-color: #000;
  color: var(--yellow-highcontrast);
}

/* Links */
body.high-contrast a {
  color: var(--yellow-highcontrast);
}

/* Headers */
body.high-contrast h1,
body.high-contrast h2,
body.high-contrast h3,
body.high-contrast h4,
body.high-contrast h5,
body.high-contrast h6,
body.high-contrast p,
body.high-contrast span,
body.high-contrast time {
  color: var(--yellow-highcontrast) !important;
}

/* Buttons */
body.high-contrast .cssa-btn,
body.high-contrast .skk_filters_btn_search,
body.high-contrast input[type="button"],
body.high-contrast input[type="submit"],
body.high-contrast .btn {
  background-color: var(--yellow-highcontrast) !important;
  color: #000000 !important;
  border: 2px solid var(--yellow-highcontrast) !important;
  text-decoration: none !important;
  font-weight: bold !important;
}

body.high-contrast .cssa-btn:hover,
body.high-contrast .btn:hover,
body.high-contrast input[type="button"]:hover,
body.high-contrast input[type="submit"]:hover,
body.high-contrast button:hover {
  background-color: #000000 !important;
  color: var(--yellow-highcontrast) !important;
  text-decoration: none !important;
}

body.high-contrast .cssa-btn:disabled,
body.high-contrast .btn:disabled,
body.high-contrast input[type="button"]:disabled,
body.high-contrast input[type="submit"]:disabled,
body.high-contrast button:disabled {
  opacity: 0.6;
}

/* Nav Menu */
body.high-contrast .navbar {
  background-color: #000000 !important;
  border: 0.5px solid var(--yellow-highcontrast) !important;
}

body.high-contrast .navbar-nav .nav-link {
  color: var(--yellow-highcontrast) !important;
}

body.high-contrast .navbar-nav .nav-link:hover {
  border-color: var(--yellow-highcontrast) !important;
}

/* Backgrounds */
body.high-contrast .cssa-grey,
body.high-contrast .cssa-news,
body.high-contrast .cssa-about,
body.high-contrast .cssa-offers,
body.high-contrast .cssa-job,
body.high-contrast .cssa-wrapper,
body.high-contrast section,
body.high-contrast
  div:not(
    .cssa-top__page-box,
    .timeline__item,
    .cssa-top__page-box__name,
    .carousel-caption
  ) {
  background-color: #000000 !important;
  color: var(--yellow-highcontrast) !important;
}

/* Background Images - Remove all */
body.high-contrast .cssa-map__page,
body.high-contrast .cssa-offers__central,
body.high-contrast .cssa-offers__green,
body.high-contrast .cssa-element,
body.high-contrast .cssa-job,
body.high-contrast .cssa-element__page {
  background-image: none !important;
  background: #000000 !important;
}

body.high-contrast .cssa-element {
  display: none !important;
}

/* Improve carousel controls in high contrast mode */
body.high-contrast .carousel-control-prev,
body.high-contrast .carousel-control-next {
  background-color: rgba(0, 0, 0, 0.7) !important;
  border: 2px solid var(--yellow-highcontrast) !important;
  width: 50px !important;
  height: 50px !important;
  border-radius: 50% !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  opacity: 1 !important;
}

body.high-contrast .carousel-control-prev-icon,
body.high-contrast .carousel-control-next-icon {
  filter: invert(100%) sepia(100%) saturate(2000%) hue-rotate(0deg)
    brightness(100%) contrast(100%) !important;
}

body.high-contrast .carousel-indicators [data-bs-target] {
  background-color: var(--yellow-highcontrast) !important;
  border: 1px solid var(--yellow-highcontrast) !important;
  width: 15px !important;
  height: 15px !important;
  border-radius: 50% !important;
  margin: 0 5px !important;
}

/* Form elements */
body.high-contrast input,
body.high-contrast select,
body.high-contrast textarea {
  background-color: #000000 !important;
  color: var(--yellow-highcontrast) !important;
  border: 1px solid var(--yellow-highcontrast) !important;
}

body.high-contrast input::placeholder,
body.high-contrast textarea::placeholder {
  color: var(--yellow-highcontrast) !important;
  opacity: 0.7 !important;
}

/* Override any potential background colors from inline styles */
body.high-contrast [style*="background-color"] {
  background-color: #000000 !important;
}

/* Additional styling for main sections */
body.high-contrast .cssa-top,
body.high-contrast .cssa-about,
body.high-contrast .cssa-top__page,
body.high-contrast .cssa-job,
body.high-contrast .cssa-map__page {
  border: 0.5px solid var(--yellow-highcontrast) !important;
  position: relative !important;
}

/* Tables */
body.high-contrast table,
body.high-contrast th,
body.high-contrast td {
  background-color: #3b360b !important;
  color: var(--yellow-highcontrast) !important;
}

body.high-contrast th {
  background-color: #000000 !important;
}

body.high-contrast select,
body.high-contrast option {
  background-color: #000000 !important;
  color: var(--yellow-highcontrast) !important;
}

body.high-contrast option:checked body.high-contrast option:checked {
  background-color: #3b360b !important;
}

/* Footer */
body.high-contrast footer {
  background-color: #000000 !important;
  color: var(--yellow-highcontrast) !important;
  border: 1px solid var(--yellow-highcontrast) !important;
}

body.high-contrast .contrast-toggle-icon {
  background: linear-gradient(
    135deg,
    #000 0%,
    #000 50%,
    var(--yellow-highcontrast) 50%,
    var(--yellow-highcontrast) 100%
  );
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

/* Dropdowns and Modals */
body.high-contrast .dropdown-menu,
body.high-contrast .modal-content,
body.high-contrast .popover,
body.high-contrast .tooltip {
  background-color: #000000 !important;
  border: 3px solid var(--yellow-highcontrast) !important;
}

body.high-contrast .modal-header,
body.high-contrast .modal-footer {
  border-color: var(--yellow-highcontrast) !important;
}

body.high-contrast .home-page-svg {
  display: none;
}

body.high-contrast .cssa-btn__small {
  background-color: var(--yellow-highcontrast);
  color: #000000 !important;
  border-color: transparent !important;
}

body.high-contrast .cssa-btn__small:hover {
  background-color: #000000;
  color: var(--yellow-highcontrast) !important;
  border-color: var(--yellow-highcontrast) !important;
}

body.high-contrast .cssa-news__block-image:hover {
  border-color: transparent;
}

body.high-contrast .cssa-job__employee-circle {
  border-color: var(--yellow-highcontrast) !important;
}

body.high-contrast .cssa-job__employee-circle:hover {
  border-color: var(--yellow-highcontrast) !important;
}

body.high-contrast .cssa-job__slider .slick-prev {
  background: url("../assets/arrow-left-mob-yellow.svg") no-repeat !important;
}

body.high-contrast .cssa-job__slider .slick-next {
  background: url("../assets/arrow-right-mob-yellow.svg") no-repeat !important;
}

/* Mobile styles */
@media screen and (max-width: 575.98px) {
  body.high-contrast .cssa-job__slider .slick-next {
    background: url("../assets/arrow-right-mob-yellow.svg") no-repeat !important;
  }
}

body.high-contrast .timeline ol li:not(:last-child)::after {
  background: var(--yellow-highcontrast) !important;
}

body.high-contrast .timeline ol li {
  background-color: var(--yellow-highcontrast) !important;
}

body.high-contrast .timeline .arrow {
  color: #000000 !important;
  background-color: var(--yellow-highcontrast);
  border: 2px solid var(--yellow-highcontrast) !important;
}

body.high-contrast .timeline .arrow:hover {
  color: var(--yellow-highcontrast) !important;
}

body.high-contrast .cssa-footer svg {
  color: var(--yellow-highcontrast) !important;
}

body.high-contrast .cssa-social__footer svg {
  fill: var(--yellow-highcontrast) !important;
  stroke: var(--yellow-highcontrast) !important;
}

body.high-contrast .cssa-social__footer svg:hover path {
  fill: #000000 !important;
  stroke: #000000 !important;
}

body.high-contrast .cssa-social__footer svg:hover g:first-child {
  fill: var(--yellow-highcontrast) !important;
}

body.high-contrast .timeline ol li:nth-child(odd) div::before {
  border-color: #000000 transparent transparent transparent;
}

body.high-contrast .timeline ol li:nth-child(even) div::before {
  top: -8px;
  border-width: 8px 0 0 8px;
  border-color: transparent transparent transparent #000000;
}

body.high-contrast .carousel-caption {
  background-color: transparent !important;
}

body.high-contrast .cssa-footer__link:hover {
  font-weight: 600;
  color: var(--yellow-highcontrast);
  text-decoration: underline;
}

body.high-contrast .carousel-caption {
  background: none !important; /* Usuwa tło z całego caption */
}

body.high-contrast .carousel-caption .container {
  background: none !important; /* Usuwa tło z całego caption */
}
body.high-contrast .carousel-caption .row {
  background: none !important; /* Usuwa tło z całego caption */
}

body.high-contrast .carousel-caption .row .col-xs-12 {
  background: #000;
  padding-left: 1rem !important;
  padding-right: 1rem !important;
  padding-top: 1em !important;
  margin-top: 2rem !important;
  padding-bottom: 1rem !important;
}

body.high-contrast .timeline__item {
  background-color: #3b360b !important;
  color: var(--yellow-highcontrast) !important;
}

body.high-contrast .cssa-top__page-box__name h1 {
  background-color: #000000 !important;
}

body.high-contrast .job-offers-section {
  background-color: #3b360b !important;
}

body.high-contrast .job-offers-section div {
  background-color: #3b360b !important;
}

body.high-contrast .cssa-offers__green {
  border: 0.5px solid var(--yellow-highcontrast) !important;
}

body.high-contrast .cssa-offers__green:after {
  display: none;
}

body.high-contrast .cssa-offers__central {
  border: 0.5px solid var(--yellow-highcontrast) !important;
}

body.high-contrast .cssa-offers__central:before {
  display: none;
}

body.high-contrast .cssa-list li:before {
  background-color: var(--yellow-highcontrast) !important;
}

body.high-contrast .nav-link {
  font-weight: 500 !important;
}

body.high-contrast .nav-link::after {
  background: url("../assets/arrow-down-yellow.svg") no-repeat !important;
}

body.high-contrast .cssa-nav_icon {
  color: var(--yellow-highcontrast) !important;
  stroke: var(--yellow-highcontrast) !important;
  fill: var(--yellow-highcontrast) !important;
}

body.high-contrast .cssa-nav__hamburger {
  content: url("../assets/hamburger-yellow.svg") !important;
}

body.high-contrast .closebtn {
  stroke: var(--yellow-highcontrast);
}

body.high-contrast .btn-close {
  stroke: var(--yellow-highcontrast);
}

body.high-contrast .modal-close {
  fill: #000000;
  stroke: var(--yellow-highcontrast) !important;
}

body.high-contrast .skk_container {
  border: 0.5px solid var(--yellow-highcontrast) !important;
  color: var(--yellow-highcontrast);
}

body.high-contrast .skk_filters label {
  color: var(--yellow-highcontrast);
}

body.high-contrast .cssa-map__page {
  color: var(--yellow-highcontrast) !important;
}

body.high-contrast .cssa_logos {
  background-color: #ffffff !important;
  padding: 0.5rem !important;
}

body.high-contrast .cc-window {
  border: 1px solid var(--yellow-highcontrast) !important;
}

body.high-contrast .cc-compliance .cc-btn {
  background-color: var(--yellow-highcontrast) !important;
  color: black !important;
  border: 1px solid var(--yellow-highcontrast) !important;
}

body.high-contrast .cc-btn:hover {
  background-color: black !important;
  color: var(--yellow-highcontrast) !important;
  border: 1px solid var(--yellow-highcontrast) !important;
}

body.high-contrast .cc-link {
  color: var(--yellow-highcontrast) !important;
  text-decoration: underline !important;
}
