* {
  box-sizing: border-box;
}

body {
  background-color: #fafafa;
  font-family: Poppins;
  font-size: 18px;
  color: #000000;
  margin: 0px;
  padding: 0px;
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* @media (hover: hover) and (pointer: fine) and (min-width: 1200px) {
  html {
      transform: scale(0.65);
      transform-origin: top left;
      width: 153.846%;
  }
} */

/*b, strong {
    font-family: Arial, sans-serif !important;
    font-weight: bold !important;
}*/

h1 {
  font-size: 42px;
  display: inline-block;
  margin: 0px;
}

h2 {
  font-size: 34px;
  display: inline-block;
  margin: 0px;
}

h3 {
  font-size: 26px;
  display: inline-block;
  margin: 0px;
}

h5 {
  font-size: 20px;
  display: inline-block;
  margin: 0px;
  font-weight: 300;
}

.h6-2025 {
  font-size: 18px;
  display: inline-block;
  margin: 0px;
  font-weight: 300;
}

p {
  font-size: 18px;
  margin: 0px;
}

/* PANEL REJESTRACJI */
.registration-p {
  font-size: 14px;
  line-height: 16px;
  font-weight: 300;
  margin: 0px;
}

.registration-t {
  font-size: 14px;
  line-height: 16px;
  text-transform: uppercase;
  font-weight: 300;
  margin: 0px;
}

/* POZOSTAŁE EKRANY */
@media only screen and (min-width: 768px) {
  .naglowek-maly {
    font-size: 26px;
  }
}
/* TELEFON */
@media only screen and (max-width: 767px) {
  .naglowek-maly {
    font-size: 18px;
  }
}
/* POZOSTAŁE EKRANY */
@media only screen and (min-width: 768px) {
  .naglowek-duzy {
    font-size: 50px;
  }
}
/* TELEFON */
@media only screen and (max-width: 767px) {
  .naglowek-duzy {
    font-size: 35px;
  }
}

a:link {
  color: #000000;
  text-decoration: none;
  margin: 0px;
  padding: 0px;
}

a:visited {
  color: #000000;
  text-decoration: none;
  margin: 0px;
  padding: 0px;
}

a:hover {
  color: #000000;
  text-decoration: none;
  margin: 0px;
  padding: 0px;
}

.icon {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  font-size: 28px;
  background: transparent !important;
  margin: 0px !important;
  padding: 0px !important;
  min-width: 0px !important;
}

/* ikony użyte w headerze */
.icon-header {
  object-fit: contain;
  filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(311deg) brightness(107%) contrast(102%);
}

/* ikony użyte w "co widzi klient" */
.icon-green {
  object-fit: contain;
  filter: invert(52%) sepia(80%) saturate(455%) hue-rotate(92deg) brightness(89%) contrast(95%);
}

/* ikony użyte w "co widzi klient" */
.icon-red {
  object-fit: contain;
  filter: invert(17%) sepia(76%) saturate(5892%) hue-rotate(358deg) brightness(98%) contrast(124%);
}

.icon-gray {
  object-fit: contain;
  filter: invert(72%) sepia(0%) saturate(3903%) hue-rotate(134deg) brightness(96%) contrast(77%);
  /* trochę jaśniejszy szary
    filter: invert(100%) sepia(0%) saturate(4960%) hue-rotate(282deg) brightness(113%) contrast(60%);
    */
}
/* licznik wiadomości w konwersacjach */
.licznik-wiadomosci {
  width: 30px;
  height: 30px;
  background-color: red;
  color: white;
  font-size: 18px;
  font-weight: 500;
  border-radius: 100px;
  position: absolute;
  padding: 2px;
  justify-content: center;
  align-items: center;
  text-align: center;
}

@keyframes miganie {
  0%,
  70% {
    opacity: 1;
  } /* Widoczny przez 70% czasu */
  80% {
    opacity: 0;
  } /* Szybkie zniknięcie między 70% a 80% */
  100% {
    opacity: 1;
  } /* Powrót do pełnej widoczności */
}

/* LOGO NAD PANELEM */
/* Ustawienie widoczności logo w zależności od ekranu - ukrycie na zbyt dużym ekranie */
@media only screen and (max-width: 1100px) {
  .logotyp-nolog {
    display: flex;
  }
}
/* Ustawienie widoczności logo w zależności od ekranu - ukrycie na zbyt dużym ekranie */
@media only screen and (min-width: 1101px) {
  .logotyp-nolog {
    display: none !important;
  }
}

/* LOGO W PANELU */
/* Ustawienie widoczności logo w zależności od ekranu - pokazanie na zbyt dużym ekranie */
@media only screen and (max-width: 1100px) {
  .logotyp-nolog-big {
    display: none !important;
  }
}
/* Ustawienie widoczności logo w zależności od ekranu - pokazanie na zbyt dużym ekranie */
@media only screen and (min-width: 1101px) {
  .logotyp-nolog-big {
    display: flex;
  }
}

/* Ustawienie kolumny poziomej na pion dla telefonów */
@media only screen and (max-width: 767px) {
  .mobile-column {
    flex-direction: column !important;
  }
}

/* Ustawienie kolumny poziomej na pion dla tabletu */
@media only screen and (max-width: 1100px) {
  .tablet-column {
    flex-direction: column !important;
  }
}

.iconround {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  font-size: 22px;
  background: var(--motyw01_dodatkowy);
  padding: 7px !important;
  min-width: 0px !important;
  color: #ffffff;
  border-radius: 100px;
}

.iconround-nowy {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  font-size: 22px;
  background: var(--motyw01_glowny);
  padding: 7px !important;
  min-width: 0px !important;
  color: #ffffff;
  border-radius: 100px;
}

.sub-noactiv {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  font-size: 22px;
  background: red;
  padding: 7px;
  min-width: 0px;
  color: #ffffff;
  border-radius: 100px;
}

.sub-activ {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  font-size: 22px;
  /*background: #16b155;*/
  background: #27ed00;
  padding: 7px;
  min-width: 0px;
  color: #ffffff;
  border-radius: 100px;
}

.sub-div-button {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  background: var(--motyw01_glowny);
  padding: 0px 15px 0px 15px;
  margin-left: 5px;
  min-width: 0px;
  color: #ffffff;
  border-radius: 100px;
  cursor: pointer;
}

.box {
  background-color: #ffffff;
  border-radius: 20px 20px 20px 20px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

/* plik conversations - zielony box jako tło dla białego boxa */
.box-transparent-front {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  padding: 10px 20px 10px 20px;
  margin-top: -1px;
  margin-bottom: -1px;
  gap: 10px;
}

/* plik conversations - zielony box jako tło dla białego boxa */
.box-transparent-back {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 0px 0px 0px 15px;
}

.box-with-border {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 5px 5px 5px 15px;
  border: 1px solid #dddddb;
  border-radius: 10px;
}

/* plik conversations - zielony box jako tło dla białego boxa */
.box-green {
  background-color: var(--motyw01_glowny);
  border-radius: 20px 20px 20px 20px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 0px 0px 0px 15px;
  margin-top: 7px;
  margin-bottom: 7px;
}

/* plik conversations - czerwony box jako tło dla białego boxa */
.box-red {
  background-color: red;
  border-radius: 20px 20px 20px 20px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 0px 0px 0px 15px;
  margin-top: 7px;
  margin-bottom: 7px;
}

/* plik conversations - biały box jako tło dla białego boxa */
.box-white-back {
  background-color: white;
  border-radius: 20px 20px 20px 20px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 0px 0px 0px 15px;
  margin-top: 7px;
  margin-bottom: 7px;
}

/* plik conversations - biały box jako nakładka dla red lub green box */
.box-white {
  background-color: white;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  padding: 20px 20px 20px 20px;
  border-radius: 0px 20px 20px 0px;
  margin-top: -2px;
  margin-bottom: -2px;
  margin-right: -2px;
}

/* ustawienia - biały box jako nakładka dla red lub green box */
.box-white-all {
  background-color: white;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  padding: 20px 20px 20px 30px;
  border-radius: 0px 20px 20px 0px;
  margin-top: -2px;
  margin-bottom: -2px;
  margin-right: -2px;
}

/* box w plikach payment - biały box jako nakładka dla red lub green box */
.box-payment {
  background-color: white;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  padding: 20px 20px 20px 30px;
  border-radius: 0px 20px 20px 0px;
  margin-top: -2px;
  margin-bottom: -2px;
  margin-right: -2px;
  flex-direction: column;
  justify-content: center;
  padding: 120px;
  min-height: 600px;
  text-align: center;
}

/* BOX w konfiguracji na podstawie box-payment */
.box-config {
  background-color: white;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  padding: 20px 20px 20px 30px;
  border-radius: 0px 20px 20px 0px;
  margin-top: -2px;
  margin-bottom: -2px;
  margin-right: -2px;
  flex-direction: column;
  justify-content: center;
  padding: 120px;
  text-align: center;
}

/* div dla zdjęcia profilowego */
.elipsa {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: var(--white) solid 4px;
  -webkit-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
}

/* Subskrypcje */
.box-sub {
  border-radius: 10px 10px 2px 2px;
  border: 2px solid #dddddb;
  border-bottom: 0px;
  padding: 20px;
  background-color: white;
}

.box-subgreen {
  background-color: var(--motyw01_glowny);
  border-radius: 10px 10px 10px 10px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 0px 0px 7px 0px;
  margin-top: 7px;
  margin-bottom: 7px;
}

/* REJESTRACJA - boxy pakietów */
.box-sub-rej {
  border-radius: 0px 0px 10px 10px;
  border: 2px solid #dddddb;
  border-top: 0px;
  padding: 20px;
  background-color: white;
}

.box-green-subs {
  background-color: var(--motyw01_glowny);
  width: 100%;
  height: 7px;
  margin-bottom: -1px;
  border-radius: 10px 10px 0px 0px;
}

/* Wnętrze aplikacji - BOXy z zielonym podcięciem */
.box-wew {
  border-radius: 10px 10px 0px 0px;
  border-top: 0px;
  padding: 20px;
  background-color: white;
}

.box-green-wew {
  background-color: var(--motyw01_glowny);
  width: 100%;
  height: 7px;
  margin-top: -1px;
  border-radius: 0px 0px 10px 10px;
}

/* Ekran splash - ustawienie boxów */
.box-splash {
  border-radius: 10px 10px 10px 10px;
  border: 2px solid #dddddb;
  padding: 20px;
  background-color: white;
  /*min-height: 310px;*/
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
}

/* Wybór subskrypcji przy rejestracji - ustawienie boxów */
@media only screen and (max-width: 1150px) {
  .box-subscription {
    display: flex;
    flex-direction: column;
    width: 100%;
    align-items: center;
    justify-content: center;
  }
}
@media only screen and (min-width: 1151px) {
  .box-subscription {
    display: flex;
    flex-direction: row;
    width: 100%;
    /* align-items: center; */
    align-items: stretch;
    justify-content: center;
  }
}

/* Biały filtr do svg */
.logo-biale {
  filter: invert(100%) sepia(3%) saturate(10%) hue-rotate(56deg) brightness(102%) contrast(101%);
}
.logo-zielone {
  filter: invert(52%) sepia(80%) saturate(455%) hue-rotate(92deg) brightness(89%) contrast(95%);
}

/* Kolumny - elementy układające treści w kolumny bez dodatkowego stylizowania, sluza do tworzenia siatki obiektow */
/* Dzięki temu jedna prosta klasa np. column100x-right tworzy kolumnę o szerokości 100% w układzie poziomym (X) z wyrównaniem do prawej */
/* Kolumny X - typ ROW */

.column50x-left {
  display: flex;
  flex-direction: row;
  width: 50%;
  align-items: flex-start;
  justify-content: flex-start;
}

.column50x-center {
  display: flex;
  flex-direction: row;
  width: 50%;
  align-items: flex-start;
  justify-content: center;
}

.column50x-right {
  display: flex;
  flex-direction: row;
  width: 50%;
  align-items: flex-start;
  justify-content: flex-end;
}

.column40x-left {
  display: flex;
  flex-direction: row;
  width: 40%;
  align-items: flex-start;
  justify-content: flex-start;
}

.column40x-center {
  display: flex;
  flex-direction: row;
  width: 40%;
  align-items: flex-start;
  justify-content: center;
}

.column40x-right {
  display: flex;
  flex-direction: row;
  width: 40%;
  align-items: flex-start;
  justify-content: flex-end;
}

.column60x-left {
  display: flex;
  flex-direction: row;
  width: 60%;
  align-items: flex-start;
  justify-content: flex-start;
}

.column60x-center {
  display: flex;
  flex-direction: row;
  width: 60%;
  align-items: flex-start;
  justify-content: center;
}
.column60x-center-center {
  display: flex;
  flex-direction: row;
  width: 60%;
  align-items: center;
  justify-content: center;
}

.column60x-right {
  display: flex;
  flex-direction: row;
  width: 60%;
  align-items: flex-start;
  justify-content: flex-end;
}

.column25x-left {
  display: flex;
  flex-direction: row;
  width: 25%;
  align-items: flex-start;
  justify-content: flex-start;
}

.column25x-center {
  display: flex;
  flex-direction: row;
  width: 25%;
  align-items: flex-start;
  justify-content: center;
}

.column25x-right {
  display: flex;
  flex-direction: row;
  width: 25%;
  align-items: flex-start;
  justify-content: flex-end;
}

.column20x-left {
  display: flex;
  flex-direction: row;
  width: 20%;
  align-items: flex-start;
  justify-content: flex-start;
}

.column20x-center {
  display: flex;
  flex-direction: row;
  width: 20%;
  align-items: flex-start;
  justify-content: center;
}

.column20x-right {
  display: flex;
  flex-direction: row;
  width: 20%;
  align-items: flex-start;
  justify-content: flex-end;
}

.column30x-center {
  display: flex;
  flex-direction: row;
  width: 30%;
  align-items: flex-start;
  justify-content: center;
}

.column75x-left {
  display: flex;
  flex-direction: row;
  width: 75%;
  align-items: flex-start;
  justify-content: flex-start;
}

.column75x-center {
  display: flex;
  flex-direction: row;
  width: 75%;
  align-items: flex-start;
  justify-content: center;
}

.column75x-right {
  display: flex;
  flex-direction: row;
  width: 75%;
  align-items: flex-start;
  justify-content: flex-end;
}

.column100x-left {
  display: flex;
  flex-direction: row;
  width: 100%;
  align-items: flex-start;
  justify-content: flex-start;
}

.column100x-center {
  display: flex;
  flex-direction: row;
  width: 100%;
  align-items: flex-start;
  justify-content: center;
}

.column100x-between {
  display: flex;
  flex-direction: row;
  width: 100%;
  align-items: center;
  justify-content: space-between;
}
.column100x-center-left {
  display: flex;
  flex-direction: row;
  width: 100%;
  align-items: center;
  justify-content: left;
}

.column100x-right {
  display: flex;
  flex-direction: row;
  width: 100%;
  align-items: flex-start;
  justify-content: flex-end;
}

/* KOLUMNY Y - Typ column */

.column50y-left {
  display: flex;
  flex-direction: column;
  width: 50%;
  align-items: flex-start;
  justify-content: center;
}

.column50y-center {
  display: flex;
  flex-direction: column;
  width: 50%;
  align-items: center;
  justify-content: center;
}

.column50y-right {
  display: flex;
  flex-direction: column;
  width: 50%;
  align-items: flex-end;
  justify-content: center;
}

.column40y-left {
  display: flex;
  flex-direction: column;
  width: 40%;
  align-items: flex-start;
  justify-content: center;
}

.column35y-left {
  display: flex;
  flex-direction: column;
  width: 35%;
  align-items: flex-start;
  justify-content: center;
}

.column40y-center {
  display: flex;
  flex-direction: column;
  width: 40%;
  align-items: center;
  justify-content: center;
}

.column60y-right {
  display: flex;
  flex-direction: column;
  width: 60%;
  align-items: flex-end;
  justify-content: center;
}

.column60y-left {
  display: flex;
  flex-direction: column;
  width: 60%;
  align-items: flex-start;
  justify-content: center;
}

.column60y-center {
  display: flex;
  flex-direction: column;
  width: 60%;
  align-items: center;
  justify-content: center;
}

.column60y-right {
  display: flex;
  flex-direction: column;
  width: 60%;
  align-items: flex-end;
  justify-content: center;
}

.column25y-left {
  display: flex;
  flex-direction: column;
  width: 25%;
  align-items: flex-start;
  justify-content: center;
}

.column25y-center {
  display: flex;
  flex-direction: column;
  width: 25%;
  align-items: center;
  justify-content: center;
}

.column25y-right {
  display: flex;
  flex-direction: column;
  width: 25%;
  align-items: flex-end;
  justify-content: center;
}

.column75y-left {
  display: flex;
  flex-direction: column;
  width: 75%;
  align-items: flex-start;
  justify-content: center;
}

.column75y-center {
  display: flex;
  flex-direction: column;
  width: 75%;
  align-items: center;
  justify-content: center;
}

.column75y-right {
  display: flex;
  flex-direction: column;
  width: 75%;
  align-items: flex-end;
  justify-content: center;
}

.column100y-left {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-start;
  justify-content: center;
}

.column100y-center {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  justify-content: center;
}

.column100y-right {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-end;
  justify-content: center;
}

.sitecontent {
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  margin-top: 150px;
}

.hiden {
  display: none !important;
  border-radius: 0px 0px 20px 20px;
  background-color: #f0f1f1;
  flex-direction: column;
  justify-content: flex-start;
  padding: 20px;
}

.hiden {
  display: none;
}

.nonactive {
  border-radius: 20px 20px 20px 20px !important;
}

.nonactive1 {
  border-radius: 20px 20px 20px 20px;
}

.active {
  display: flex !important;
}

/*open one card by default*/

.boxinbox .hiden:nth-child(0) {
  display: flex !important;
}

.hiden:nth-child(0) {
  display: flex;
  border-radius: 0px 0px 20px 20px;
  background-color: #f0f1f1;
  flex-direction: column;
  justify-content: flex-start;
  padding: 20px;
}

.boxinbox {
  border-radius: 0px 0px 20px 20px;
  background-color: #f0f1f1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 20px;
}

.boxinbox-inside {
  border-radius: 20px 20px 20px 20px;
  background-color: #ffffff;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 20px;
}

.boxinbox-row {
  display: flex;
  flex-direction: row;
}

.boxinbox-titlebar:nth-child(0) {
  border-radius: 20px 20px 20px 20px;
  background-color: var(--motyw01_glowny);
  padding: 10px 20px;
  color: #ffffff;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
}

.boxinbox-titlebar {
  border-radius: 20px 20px 0px 0px;
  background-color: var(--motyw01_glowny);
  padding: 10px 20px;
  color: #ffffff;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
}

.boxinbox-notitlebar {
  border-radius: 20px 20px 20px 20px;
  background-color: #f0f1f1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 20px;
}

.box-titlebar {
  min-height: 50px;
  border-radius: 20px 20px 0px 0px;
  background-color: var(--motyw01_dodatkowy);
  padding: 10px 20px;
  color: #ffffff;
  display: flex;
  flex-direction: row;
}

.box-titlebarICO {
  width: 60px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  font-size: 37px;
  margin-right: 10px;
}

.box-titlebarL {
  width: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.box-titlebarR {
  width: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
}

.box-content {
  padding: 20px;
}

.iconbutton {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background-color: var(--motyw01_glowny);
  padding: 12px;
  font-size: 23px;
  border-radius: 10px;
}
.iconbutton:hover,
.iconbutton:focus {
  color: #fff;
  background-color: var(--motyw01_glowny);
  border-color: var(--motyw01_glowny);
}
.iconbutton:active {
  color: #fff !important;
  background-color: var(--motyw01_glowny) !important;
  border-color: var(--motyw01_glowny);
  opacity: 0.8;
}

.iconbutton-document {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background-color: var(--motyw01_dodatkowy);
  padding: 12px;
  font-size: 23px;
  border-radius: 10px;
  border-width: 0px;
  margin-right: 5px;
  width: 40px;
  height: 40px;
}
.iconbutton-document:hover,
.iconbutton-document:focus {
  color: #fff;
  background-color: var(--motyw01_glowny);
  border-color: var(--motyw01_glowny);
}
.iconbutton-document:active {
  color: #fff !important;
  background-color: var(--motyw01_glowny) !important;
  border-color: var(--motyw01_glowny);
  opacity: 0.8;
}

.listing-titlebar {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  padding: 20px 20px;
  border-radius: 20px 20px 0px 0px;
  background-color: #ffffff;
}

.listing-titlebar-centered {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 20px 20px;
  border-radius: 20px 20px 0px 0px;
  background-color: #ffffff;
}

.listing-element {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 20px 20px;
  border-radius: 0px 0px 0px 0px;
  background-color: #ffffff;
  border-top: 1px solid #dddddd;
}

.listing-element-left {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  border-radius: 0px 0px 0px 0px;
  background-color: #ffffff;
  border-top: 1px solid #dddddd;
  padding: 10px 0px 0px 0px;
}

.listing-element-no-border {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 20px 20px;
  background-color: #ffffff;
}

.listing-element-ending {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 20px 20px;
  border-radius: 0px 0px 20px 20px;
  background-color: #ffffff;
  border-top: 1px solid #dddddd;
}

.listing-ending {
  display: flex;
  height: 10px;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  border-radius: 0px 0px 20px 20px;
  background-color: #ffffff;
  border-top: 1px solid #dddddd;
}

.listing-actionbar {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  padding: 10px 20px 10px 0;
  border-radius: 20px;
  background-color: #ffffff;
  margin-top: 10px;
}

.listing-center-all {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}

/* BEAUTYPLANY - PROGRES IKONA */

@keyframes growProgressBar {
  0%,
  33% {
    --pgPercentage: 0;
  }

  100% {
    --pgPercentage: var(--value);
  }
}

@property --pgPercentage {
  syntax: "<number>";
  inherits: false;
  initial-value: 0;
}

div[role="progressbar"] {
  --size: 7rem;
  /*width: var(--size);
    height: var(--size);*/
  --fg: var(--motyw01_dodatkowy);
  --bg: rgb(238, 238, 238);
  --pgPercentage: var(--value);
  animation: growProgressBar 3s 1 forwards;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: radial-gradient(closest-side, white 80%, transparent 0 99.9%, white 0), conic-gradient(var(--fg) calc(var(--pgPercentage) * 1%), var(--bg) 0);
  font-family: Helvetica, Arial, sans-serif;
  font-size: calc(var(--size) / 5);
  color: var(--fg);

  min-width: 80px;
  max-width: 180px;
  width: 80%;
  height: auto;
  aspect-ratio: 1/1;
}

div[role="progressbar"]::before {
  counter-reset: percentage var(--value);
  content: counter(percentage) "%";
}

/* MENU DROPDOWN - DOMYSLNIE DISPLAY NONE - POWINNO BYĆ WŁĄCZANE JAVASCRIPTEM ONCLICK*/

.dropdown {
  position: relative;
  display: inline-block;
}

.dropdown-content {
  display: flex;
  flex-direction: column;
  position: absolute;
  background-color: var(--motyw01_dodatkowy);
  color: #ffffff !important;
  min-width: 350px;
  z-index: 1;
  right: 0;
  padding: 10px;
  border-radius: 10px;
}

.dropdown-item {
  color: white !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  font-size: 23px;
}

/* DODATKOWO z NewCRM - style.css */
.dropbtn2 {
  background-color: var(--motyw01_glowny);
  color: white;
  font-size: 20px;
  border: none;
  cursor: pointer;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  padding: 0px;
  border-radius: 10px;
}

.dropdown2 {
  position: relative;
  display: inline-block;
  width: fit-content;
}

.dropdown2-content {
  display: none;
  position: absolute;
  background-color: var(--motyw01_glowny);
  color: white;
  min-width: 250px;
  z-index: 1;
  right: 0;
  border-radius: 10px;
  -webkit-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
}

.dropdown2-content a {
  color: white;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}

.dropdown2-content a:hover {
  background-color: var(--motyw01_glowny);
  border-radius: inherit;
}

.dropdown2:hover .dropdown2-content {
  display: block;
}

/* Grafika ładowania - proces ładowania */
.loader {
  border: 16px solid #f1f1f1;
  border-radius: 50%;
  border-top: 16px solid var(--motyw01_glowny);
  width: 200px;
  height: 200px;
  -webkit-animation: spin 2s linear infinite; /* Safari */
  animation: spin 2s linear infinite;
}

.box-payment-info {
  background-color: #f1f1f1;
  color: #bababa;
  border-radius: 500px;
  width: 200px;
  height: 200px;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* SWITCHE */

/* The switch - the box around the slider */

.switch {
  position: relative;
  display: inline-block;
  width: 75px;
  height: 38px;
}

/* Hide default HTML checkbox */

.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

/* The slider */

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

.slider:before {
  position: absolute;
  content: "";
  height: 30px;
  width: 30px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

input:checked + .slider {
  background-color: var(--motyw01_glowny);
}

input:focus + .slider {
  box-shadow: 0 0 1px var(--motyw01_glowny);
}

input:checked + .slider:before {
  -webkit-transform: translateX(36px);
  -ms-transform: translateX(36px);
  transform: translateX(36px);
}

/* Rounded sliders */

.slider.round {
  border-radius: 34px;
}

.slider.round:before {
  border-radius: 50%;
}

/* HEADER i INDEX */

/* klasa dla diva z ikonami */
.div-header {
  /* #2eb966; */
  /*background-color: var(--motyw01_dodatkowy);*/
  background-color: rgba(0, 0, 0, 0.1);
  margin-bottom: 10px;
  padding: 20px 15px 10px 15px;
  border-radius: 0px 0px 20px 20px;
  display: flex;
  align-items: center;
}

/* klasa dla diva z ikonami - obrócony o 90 stopni */
.div-header-rotate {
  /*background-color: var(--motyw01_dodatkowy);*/
  background-color: rgba(0, 0, 0, 0.1);
  margin-bottom: 10px;
  margin-top: 15px;
  padding: 5px 20px 10px 15px;
  border-radius: 20px 0px 0px 20px;
  display: flex;
  align-items: center;
}

#header {
  width: 100%;
  max-width: 100%;
  background-color: var(--motyw01_glowny);
  height: 100px;
  box-sizing: border-box;
  display: flex;
  padding: 0px;
  position: fixed;
  top: 0;
  z-index: 5000;
}

#header-lewy {
  width: 40%;
  display: flex;
  justify-content: flex-start;
  flex-direction: row;
  line-height: 60px;
  padding: 20px;
}

#header-lewy-dane {
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding-left: 15px;
}

#header-prawy {
  width: 60%;
  display: flex;
  justify-content: flex-end;
  vertical-align: middle;
  /*align-items: center;*/
  flex-direction: row;
  gap: 20px;
}

#navbar {
  display: flex;
  box-sizing: border-box;
  width: 100%;
  height: 50px;
  align-items: center;
  justify-content: flex-start;
  background-color: var(--motyw01_dodatkowy);
  padding-left: 20px;
  padding-right: 20px;
  position: fixed;
  top: 0;
  z-index: 4999;
  margin-top: 99px;
}

#navbarL {
  display: flex;
  width: 60%;
}

#navbarR {
  display: flex;
  justify-content: flex-end;
  width: 40%;
}

.noticewrapper {
  display: flex;
  box-sizing: border-box;
  width: calc(100% - 40px);
  min-height: 50px;
  align-items: center;
  justify-content: flex-start;
  /*background-color: var(--motyw01_glowny);*/
  background-color: rgb(0, 197, 0);
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 12px;
  padding-bottom: 12px;
  border-radius: 25px;
  position: fixed;
  top: 0;
  z-index: 39;
  margin-top: 0px;
  margin-left: 20px;
  margin-right: 20px;
  color: white !important;
  animation-duration: 7s;
  animation-name: noticewrapperslide;
  opacity: 0;
}

.noticewrapper-alert {
  display: flex;
  box-sizing: border-box;
  width: calc(100% - 40px);
  min-height: 50px;
  align-items: center;
  justify-content: flex-start;
  /*background-color: var(--motyw01_glowny);*/
  background-color: red;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 12px;
  padding-bottom: 12px;
  border-radius: 25px;
  position: fixed;
  top: 0;
  z-index: 39;
  margin-top: 0px;
  margin-left: 20px;
  margin-right: 20px;
  color: white !important;
  animation-duration: 7s;
  animation-name: noticewrapperslide;
  opacity: 0;
}

.blad {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  box-sizing: border-box;
  background-color: red;
  padding: 12px 20px 12px 20px;
  color: white;
  border-radius: 25px;
  width: 100%;
  margin-bottom: 10px;
}

.alert-success {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  box-sizing: border-box;
  background-color: var(--motyw01_dodatkowy);
  padding: 12px 20px 12px 20px;
  color: white;
  border-radius: 25px;
  width: 100%;
}

/* Styl komunikatu błędu */
#success-message {
  color: white;
  opacity: 1;
  transition: opacity 1s ease-in-out;

  display: flex;
  box-sizing: border-box;
  width: calc(100% - 40px);
  height: 50px;
  align-items: center;
  justify-content: flex-start;
  background-color: rgb(0, 197, 0);
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 12px;
  padding-bottom: 12px;
  border-radius: 25px;
  position: fixed;
  top: 0;
  z-index: 39;
  margin-top: 0px;
  margin-left: 20px;
  margin-right: 20px;
  color: white !important;
  animation-duration: 7s;
  animation-name: noticewrapperslide;
  display: none;
}

#success-message.hide {
  opacity: 0;
}

/* Styl komunikatu błędu */
#error-message {
  color: white;
  opacity: 1;
  transition: opacity 1s ease-in-out;

  display: flex;
  box-sizing: border-box;
  width: calc(100% - 40px);
  height: 50px;
  align-items: center;
  justify-content: flex-start;
  background-color: red;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 12px;
  padding-bottom: 12px;
  border-radius: 25px;
  position: fixed;
  top: 0;
  z-index: 39;
  margin-top: 0px;
  margin-left: 20px;
  margin-right: 20px;
  color: white !important;
  animation-duration: 7s;
  animation-name: noticewrapperslide;
  display: none;
}

#error-message.hide {
  opacity: 0;
}

@keyframes noticewrapperslide {
  /*0% {}

    20% {
        transform: translate(0px, 165px);
    }

    80% {
        transform: translate(0px, 165px);
    }

    100% {}*/
  0% {
    opacity: 0;
    transform: translateY(0);
  }

  20% {
    opacity: 1;
    transform: translateY(165px);
  }

  80% {
    opacity: 1;
    transform: translateY(165px);
  }

  100% {
    opacity: 0;
    transform: translateY(0);
  }
}

/* LOGOWANIE */

#logowanie {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 20px;
  height: 100vh;
}

.icona-bc {
  display: flex;
  text-indent: -9999px;
  width: 110px;
  height: 110px;
  background: url(/assets/img/BCLogo_svg_sygnet.svg);
  background-size: 110px 110px;
}

.icona-bc svg-text {
  fill: var(--motyw01_glowny) !important;
}

#login-top
/*
{
    height: 50vh;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding-top: 100px;
}
*/ {
  height: 50vh;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  margin: 0px;
  z-index: 0;
}

#login-bot {
  height: 50vh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  background-color: var(--motyw01_glowny);
  border-radius: 50px 50px 0px 0px;
  padding-bottom: 70px;
  position: absolute;
  width: 100%;
  bottom: 0;
  padding-top: 50vh;
  z-index: 1;
}

#login-box {
  display: flex;
  /* position: fixed; */
  position: relative;
  top: 50%;
  /* left: 15%; */
  /* margin-left: -10vw; */
  margin-top: -300px;
  min-height: 600px;
  background-color: #ffffff;
  border-radius: 20px 20px 20px 20px;
  width: 90vw;
  padding: 50px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 50;
}

body.login-page {
  position: relative;
  padding-bottom: 200px;
  min-height: 100vh;
  /* nowe */
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#logintop {
  display: flex;
  flex-direction: column;
  width: 100%;
  box-sizing: border-box;
  align-items: center;
  justify-content: flex-end;
  height: 20%;
}

#loginmid {
  display: flex;
  flex-direction: column;
  width: 100%;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  height: 50%;
}

#loginbox {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  width: 65%;
  padding: 20px;
  background-color: #ffffff;
}

#loginbox-title {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 65%;
  height: 50px;
  background-color: var(--motyw01_glowny);
}

#loginbot {
  display: flex;
  flex-direction: column;
  width: 100%;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  height: 30%;
}

.loginfield-icon {
  display: flex;
  min-height: 50px;
  height: 50px;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  width: 15%;
  padding: 10px;
  color: white;
  background-color: var(--motyw01_glowny);
  border-radius: 10px 0px 0px 10px;
  margin: 0px;
  font-size: 18px;
}

.loginfield-field {
  display: flex;
  min-height: 50px;
  height: 50px;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  width: 85%;
  padding: 10px;
  color: black;
  background-color: #ffffff;
  border-radius: 0px 10px 10px 0px;
  border: 1px solid #000000;
  border-left-style: none;
  font-size: 18px;
}

.ambasador-field {
  display: flex;
  min-height: 70px;
  height: 70px;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 10px;
  color: black;
  background-color: #ffffff;
  border-radius: 30px 30px 30px 30px;
  border: 1px solid #000000;
  font-size: 20px;
}

/* FORMULARZE */

.formularz {
  width: 100%;
  padding: 10px 20px;
  background-color: #ffffff;
  border: 1px solid #a5a5a5;
  border-radius: 10px;
  font-size: 18px;
}

.btn-login {
  background-color: var(--motyw01_dodatkowy);
  color: white;
  padding: 15px 35px;
  border-radius: 25px;
  border: none;
  cursor: pointer;
  width: 100%;
  font-size: 24px;
  font-weight: 500;
}
.btn-login:hover,
.btn-login:focus {
  color: #fff;
  background-color: var(--motyw01_dodatkowy);
  border-color: var(--motyw01_dodatkowy);
}
.btn-login:active {
  color: #fff !important;
  background-color: var(--motyw01_dodatkowy) !important;
  border-color: var(--motyw01_dodatkowy);
  opacity: 0.8;
}

.btn-login-deactive {
  background-color: #a9acaa;
  color: white;
  padding: 15px 35px;
  border-radius: 25px;
  border: none;
  cursor: pointer;
  width: 100%;
  font-size: 24px;
  font-weight: 500;
}

.btn_medicine {
  background-color: var(--motyw01_glowny);
  color: white;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  font-size: 18px;
  width: 220px;
  padding: 8px 20px;
  font-weight: 300;
  min-height: 42px;
}

.btn_medicine:hover,
.btn_medicine:focus {
  color: white;
  background-color: var(--motyw01_glowny);
  border-color: var(--motyw01_glowny);
}
.btn_medicine:active {
  color: white;
  background-color: var(--motyw01_glowny);
  border-color: var(--motyw01_glowny);
  opacity: 0.8;
}

.btn_medicine_square {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  cursor: pointer;
  font-size: 15px;
  padding: 2px;
  font-weight: 300;
  background: transparent;
  border: 1px solid black;
  aspect-ratio: 1/1;
  color: black;
  min-height: 42px;
}

.btn_medicine_square:hover,
.btn_medicine_square:focus {
  color: black;
  background-color: transparent;
  border-color: black;
}
.btn_medicine_square:active {
  color: black;
  background-color: transparent;
  border-color: black;
}

.btn {
  background-color: var(--motyw01_glowny);
  color: white;
  padding: 15px 35px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  font-size: 18px;
  font-weight: 500;
}

.btn:hover,
.btn:focus {
  color: #fff;
  background-color: var(--motyw01_glowny);
  border-color: var(--motyw01_glowny);
}
.btn:active {
  color: #fff !important;
  background-color: var(--motyw01_glowny) !important;
  border-color: var(--motyw01_glowny);
  opacity: 0.8;
}

/* Styl dla zablokowanego przycisku */
.btn:disabled {
  background-color: var(--motyw01_glowny);
  color: white;
  padding: 15px 35px;
  border-radius: 10px;
  border: none;
  font-size: 18px;
  font-weight: 500;
  cursor: not-allowed;
  opacity: 0.6; /* opcjonalnie dla wizualnego efektu */
}

.btn_white {
  background-color: white;
  color: black;
  padding: 15px 35px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  font-size: 18px;
  font-weight: 500;
}

.btn_white:hover,
.btn_white:focus {
  color: black;
  background-color: white;
  border-color: white;
}
.btn_white:active {
  color: black !important;
  background-color: white !important;
  border-color: white;
  opacity: 0.8;
}

.btn-square {
  background-color: var(--motyw01_glowny);
  color: white;
  padding: 10px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  font-size: 18px;
  font-weight: 500;
  justify-content: center;
  width: 50px;
  height: 50px;
}
.btn-square:hover,
.btn-square:focus {
  color: white;
  background-color: var(--motyw01_glowny);
}
.btn-square:active {
  color: white !important;
  background-color: var(--motyw01_glowny) !important;
  opacity: 0.8;
}

.btn-glow {
  background-color: var(--motyw01_glowny);
  color: white;
  padding: 15px 35px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  font-size: 18px;
  font-weight: 500;
  animation-name: button-glowing;
  animation-duration: 2s;
  animation-delay: 1s;
  animation-iteration-count: infinite;
}

/* Nowy button dla Subskrypcji itp. */
.btn-new {
  background-color: var(--motyw01_glowny);
  color: white;
  padding: 5px 25px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  font-size: 18px;
  font-weight: 500;
}
.btn-new:hover,
.btn-new:focus {
  color: white;
  background-color: var(--motyw01_glowny);
}
.btn-new:active {
  color: white !important;
  background-color: var(--motyw01_glowny) !important;
  opacity: 0.8;
}

/* Nowy button dla Subskrypcji  - jego kopia dla Payment */
.btn-payment {
  background-color: var(--motyw01_glowny);
  color: white;
  padding: 5px 25px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  font-size: 18px;
  font-weight: 500;
  margin-top: 10px;
  min-width: 350px;
}
.btn-payment:hover,
.btn-payment:focus {
  color: white;
  background-color: var(--motyw01_glowny);
}
.btn-payment:active {
  color: white !important;
  background-color: var(--motyw01_glowny) !important;
  opacity: 0.8;
}

/* Nowy button dla pobrania faktur */
.btn-fv {
  background-color: var(--motyw01_glowny);
  color: white;
  padding: 5px 10px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  font-size: 18px;
  font-weight: 500;
}
.btn-fv:hover,
.btn-fv:focus {
  color: white;
  background-color: var(--motyw01_glowny);
}
.btn-fv:active {
  color: white !important;
  background-color: var(--motyw01_glowny) !important;
  opacity: 0.8;
}

.btn-fv-gray {
  background-color: #bababa;
  color: white;
  padding: 5px 10px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  font-size: 18px;
  font-weight: 500;
}

.btn-sub {
  background-color: var(--motyw01_glowny);
  color: white;
  padding: 5px 5px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  font-size: 18px;
  font-weight: 500;
  width: 100%;
}
.btn-sub:hover,
.btn-sub:focus {
  color: white;
  background-color: var(--motyw01_glowny);
}
.btn-sub:active {
  color: white !important;
  background-color: var(--motyw01_glowny) !important;
  opacity: 0.8;
}

.btn-sub-white {
  background-color: white;
  color: black;
  padding: 5px 15px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  font-size: 18px;
  font-weight: 500;
  width: auto;
}
.btn-sub-white:hover,
.btn-sub-white:focus {
  color: black;
  background-color: white;
}
.btn-sub-white:active {
  color: black !important;
  background-color: white !important;
  opacity: 0.8;
}

.btn-sub-gray {
  background-color: #bababa;
  color: white;
  padding: 5px 25px;
  border-radius: 10px;
  border: none;
  font-size: 18px;
  font-weight: 500;
  width: 100%;
}

@keyframes button-glowing {
  0% {
    filter: brightness(100%);
  }

  50% {
    filter: brightness(170%);
  }

  100% {
    filter: brightness(100%);
  }
}

#canvasDiv {
  position: relative;
  border: 2px dashed grey;
  height: 300px;
}

/* Style the input container */

.input-container {
  display: flex;
  width: 100%;
  margin-bottom: 15px;
}

/* Style the form icons */

.icon {
  padding: 10px;
  background: var(--motyw01_dodatkowy);
  color: white;
  min-width: 50px;
  text-align: center;
}

/* Style the input fields */

.input-field {
  width: 100%;
  padding: 10px;
  outline: none;
  font-size: 18px;
}

.input-field:focus {
  border: 2px solid var(--motyw01_dodatkowy);
}

select {
  width: 100%;
  font-size: 18px;
  font-weight: 300;
  /*font-family: 'poppins-light';*/
  color: var(--black);
  padding: 3px;
  box-sizing: border-box;
  border: none;
  /*text-align: right;*/
  background-color: transparent;
  outline: none;
  text-align: left;
  appearance: none; /* Wyłącza domyślny wygląd */
  -webkit-appearance: none; /* Dla WebKit (Safari, iOS) */
  -moz-appearance: none; /* Dla Mozilli */
}

/* Set a style for the submit button */

input[type="radio"] {
  -ms-transform: scale(2);
  /* IE 9 */
  -webkit-transform: scale(2);
  /* Chrome, Safari, Opera */
  transform: scale(2);
  margin-bottom: 20px;
  margin-right: 15px;
}

input[type="radio"].no-margin-bottom {
  margin-bottom: 0;
}

input[type="checkbox"] {
  -ms-transform: scale(2);
  /* IE 9 */
  -webkit-transform: scale(2);
  /* Chrome, Safari, Opera */
  transform: scale(2);
  margin-bottom: 20px;
  margin-right: 15px;
}

.datapik {
  width: 100%;
  padding: 10px 20px;
  background-color: #ffffff;
  border: 1px solid #a5a5a5;
  border-radius: 10px;
  font-size: 18px;

  /* iOS-specific reset */
  -webkit-appearance: none;
  appearance: none;

  color: #000;
}

/* Placeholder styl (jeśli używasz JS datepickera lub masz placeholder) */
.datapik::placeholder {
  color: #a5a5a5;
  font-size: 18px;
}

/* Walidacja hasła / hasło */
#message {
  display: none;
}

/* Add a green text color and a checkmark when the requirements are right */
.valid {
  color: var(--motyw01_dodatkowy);
}

.valid:before {
  padding-left: 10px;
  position: relative;
  left: -10px;
  content: "✔";
}

/* Add a red text color and an "x" icon when the requirements are wrong */
.invalid {
  color: red;
}

.invalid:before {
  padding-left: 10px;
  position: relative;
  left: -10px;
  content: "✖";
}

/* BOXY GŁÓWNEJ */

.whitebox-listing {
  display: flex;
  width: 100%;
  margin-left: -0.5%;
  margin-right: -0.5%;
  align-items: flex-start;
  justify-content: center;
  min-height: 100px;
}

.colorbox33 {
  display: flex;
  flex-direction: column;
  width: 32%;
  height: 100%;
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 10px;
  background-color: var(--motyw01_glowny);
  color: white;
  border-radius: 20px;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 25px;
  padding-right: 25px;
  min-height: 200px;
}

.whiteboxiconbox {
  padding: 10px;
  width: 65px;
  height: 65px;
  color: #000000;
  background-color: #ffffff;
  border-radius: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 28px;
  margin-bottom: 8px;
}

.boxseparator1procent {
  width: 1.5%;
}

.nowosc {
  padding-top: 3px;
  padding-bottom: 3px;
  padding-left: 7px;
  padding-right: 7px;
  color: white;
  background-color: var(--motyw01_glowny);
  border-radius: 8px;
  animation: blysk 4s infinite;
}

@keyframes blysk {
  0% {
    background-color: var(--motyw01_dodatkowy);
  }

  70% {
    background-color: var(--motyw01_dodatkowy);
  }

  85% {
    background-color: var(--motyw01_glowny);
  }

  100% {
    background-color: var(--motyw01_dodatkowy);
  }
}

/* ANIMCAJCE przerobione przez ChatGPT na podstawnie https://codepen.io/jeryj/pen/LzPjdJ */

/* Wiggle */
/* Element, który będzie się ruszał */
.wiggle-element {
  display: flex;
}

/* Klasa aktywująca animację */
.wiggle-element.is-active {
  animation: 1.7s wiggle ease infinite;
}

/* Definicja animacji wiggle */
@keyframes wiggle {
  0% {
    transform: rotate(-3deg);
  }
  20% {
    transform: rotate(20deg);
  }
  40% {
    transform: rotate(-15deg);
  }
  60% {
    transform: rotate(5deg);
  }
  90% {
    transform: rotate(-1deg);
  }
  100% {
    transform: rotate(0);
  }
}
/* KONIEC ANIMACJI */

.rodobox p {
  font-size: 12px !important;
  line-height: 1.4 !important;
}

.sizedown p {
  font-size: 12px !important;
}

.pagination {
  list-style-type: none;
  padding: 10px 0;
  display: inline-flex;
  justify-content: space-between;
  box-sizing: border-box;
}

.pagination li {
  box-sizing: border-box;
  width: 50px;
  display: flex;
  justify-content: center;
  align-content: center;
  align-items: center;
  border-radius: 10px;
  height: 50px;
  margin: 0 10px;
}

.pagination li a {
  box-sizing: border-box;
  background-color: #e2e6e6;
  padding: 8px;
  text-decoration: none;
  font-size: 18px;
  font-weight: bold;
  color: var(--motyw01_dodatkowy);
  width: 50px;
  display: flex;
  justify-content: center;
  align-content: center;
  align-items: center;
  border-radius: 10px;
  height: 50px;
}

.pagination li a:hover {
  background-color: #d4dada;
}

.pagination .next a,
.pagination .prev a {
  text-transform: uppercase;
  font-size: 12px;
}

.pagination .currentpage a {
  background-color: var(--motyw01_dodatkowy);
  color: #fff;
}

.pagination .currentpage a:hover {
  background-color: var(--motyw01_dodatkowy);
}

.pagination-wrap {
  display: flex;
  width: 100%;
  justify-content: center;
}

/* login page start*/
.tab {
  display: none;
  width: 100%;
}

.savedprofile_wrapper {
  width: 100%;
  float: left;
  padding: 15px;
  margin-bottom: 15px;
}

.savedprofile_wrapper .savedprofile {
  display: flex;
  justify-content: space-between;
  position: relative;
  border: solid 1px gray;
  padding: 10px 20px 10px 0;
  margin: 0 -15px 0px -15px;
  border-radius: 0 10px 15px 10px;
  border-radius: 40px 25px 25px 40px;
}

.savedprofile_wrapper .savedprofile .signin {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
}

.savedprofile_wrapper .savedprofile .signin .userphoto {
  position: absolute;
  width: 100px;
  height: 100px;
  left: -2px;
}

.savedprofile_wrapper .savedprofile .signin .userphoto img {
  width: 100%;
  height: auto;
  border-radius: 50%;
}

.savedprofile_wrapper .savedprofile .username {
  display: flex;
  padding-left: 100px;
  justify-content: flex-start;
  align-content: center;
  padding-left: 110px;
}

.savedprofile_wrapper .savedprofile .actions {
}

.savedprofile_wrapper .savedprofile .actions .iconbutton {
}

.savedprofile_wrapper .savedprofile .actions .iconbutton span {
}

.profileswrap {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  flex-direction: column;
}

.loginfooter {
  text-align: center;
  border-top: solid 1px gray;
  padding-top: 30px;
  margin-top: 30px;
}

.loginfooter p {
  margin-bottom: 15px;
}

.loginfooter button {
  margin-bottom: 15px;
}

/* login page end*/

/*befor after photos start */
.beforeafterwrap {
  margin-top: 10px;
}

.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.beforeafterwrap .beforephotowrapper,
.beforeafterwrap .afterphotowrapper {
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  max-width: 100%;
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}

.beforeafterwrap .beforephotowrapper img,
.beforeafterwrap .afterphotowrapper img {
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  object-fit: cover;
  border-radius: 10px;
}

.beforeafterwrap .listing-actionbar {
  padding-left: 0;
  padding-right: 0;
  justify-content: space-between;
}

.beforeafterwrap .listing-actionbar .removephotos {
  margin-left: 10px;
}

/*befor after photos end */
.btn .fas,
.btn .fa {
  margin-right: 8px;
}

.question.error,
.question.error-checkbox,
.question.error-input {
  padding: 15px 30px;
  border-radius: 20px;
  border: solid 2px #f70000;
  position: relative;
}

/*
    .question.error:before {content: "\f12a";
        font: normal normal normal 14px/1 FontAwesome;
          font-size: 14px;
        font-size: 14px;
        font-size: inherit;
        text-rendering: auto;
        position: absolute;
        color: red;
        font-size: 30px;
        left: -30px;
    }*/
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
}

.additionphotobuttons {
  display: flex;
  flex-direction: row;
  margin-top: -20px;
  justify-content: space-around;
  width: 100%;
  align-content: center;
  align-items: center;
  border-top: solid 1px aliceblue;
  margin-top: 10px;
  padding-top: 10px;
}

.photowrap {
  position: relative;
}

.photowrap label {
  position: relative;
  margin-top: 30px;
}

.photowrap label img {
  aspect-ratio: 1/1;
  object-fit: cover;
  width: 100%;
  border-radius: 10px;
}

.photowrap label input {
  position: absolute;
  bottom: 0;
  right: 5px;
}

.modal-xl .modal-dialog {
  max-width: calc(100vw - 2rem) !important;
}

.modal-content {
  border-radius: 25px !important;
  background-color: #f0f1f1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.modal-body {
  padding: 0px !important;
}

.photosupload {
  margin: 20px;
}

.modal .boxinbox-inside {
  margin: 10px 20px 0;
}

.modal-header {
  justify-content: space-between;
}

.modal-header button,
.modal-header button:hover {
  background: none;
  padding-right: 0;
}

.modal-footer.boxinbox-inside {
  margin-bottom: 20px;
  flex-direction: row;
  justify-content: flex-end;
  margin-bottom: 20px;
  align-items: center;
}

.modal-content .gallery {
  max-height: calc(100vh - 500px);
  overflow: auto;
}

#uploadStatus {
  margin-top: 20px;
}

.photorotate {
  position: absolute;
  background: red;
  width: 60px;
  height: 60px;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 10px;
  color: #fff;
  background: var(--motyw01_dodatkowy);
  border-radius: 10px;
  left: 25px;
}

.photowrap .photorotate {
  top: 40px;
  left: 20px;
  width: 40px;
  height: 40px;
}

.modal-body p {
  padding: 15px;
}

.tmp_info {
  background-color: rgb(0, 197, 0);
  color: #fff;
  text-align: center;
  padding: 30px;
  margin-bottom: 30px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  border-radius: 20px;
}

html,
body {
  overscroll-behavior: none;
}

.notatkaklienta table {
  margin-top: 30px;
}

.notatkaklienta table td {
  border: solid 1px black;
  padding: 5px;
}

.dropdown-q-edit {
}

.dropdown-q-edit .dropdown-content {
}

.dropdown-q-edit .dropdown-content .iconbutton-dropdown {
  color: white !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  font-size: 23px;
  text-align: left;
  background: none;
  border: none;
}

.iconbutton-universal {
  color: white !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  padding-left: 0px;
  padding-right: 0px;
  font-size: 23px;
  text-align: left;
  background: none;
  border: none;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 15px;
}

.submitCopyQuestionFrom.inprogress {
  cursor: initial;
  background-color: #d9d9d9;
}
.submitCopyQuestionFrom .fa-spin {
  display: none;
}
.submitCopyQuestionFrom.inprogress .fa-check {
  display: none;
}
.submitCopyQuestionFrom.inprogress .fa-spin {
  display: inline-block;
}

/* PAGINACJA */
.pagination {
  display: flex;
  list-style: none;
  width: 100%;
  justify-content: center;
  margin-top: 20px;
}

.pagination-number,
.pagination-prev,
.pagination-next,
.pagination-text {
  padding: 10px;
  margin: 5px;
  text-decoration: none;
  color: #000;
  border: 1px solid #ddd;
  border-radius: 5px;
}

.pagination-current {
  padding: 10px;
  margin: 5px;
  background-color: var(--akcent);
  color: var(--motyw01_glowny);
  border: 1px solid var(--akcent);
  border-radius: 5px;
}

.pagination-ellipsis {
  padding: 10px;
  margin: 5px;
  color: #000;
}

.pagination-prev,
.pagination-next {
  font-weight: bold;
}

.pagination-prev:hover,
.pagination-next:hover,
.pagination-number:hover,
.pagination-text:hover {
  background-color: var(--akcent);
  color: var(--motyw01_glowny);
}

/* ////////////////////////////////////// */
/* //////// POPUP z regulaminami //////// */
/* ////////////////////////////////////// */

/* LINKI */
.reg-link {
  /* Styl dla klasy dot. linków */
  cursor: pointer;
  text-decoration: underline;
  color: black;
}

.reg-link2 {
  /* Styl dla klasy dot. linków */
  cursor: pointer;
  text-decoration: underline;
  color: black;
}

.reg-link:hover {
  color: var(--motyw01_dodatkowy); /* Styl dla klasy dot. linków - po najechaniu */
}

.reg-link2:hover {
  color: var(--motyw01_dodatkowy); /* Styl dla klasy dot. linków - po najechaniu */
}

/* POPUP */
.popup-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

/* TELEFON */
@media only screen and (max-width: 767px) {
  .popup-content {
    background: #fff;
    padding: 30px 30px 80px 30px;
    width: 90%;
    max-width: 800px;
    height: 830px; /* Stała wysokość popupu */
    overflow: hidden; /* Ukrycie nadmiarowej treści */
    border-radius: 8px;
    position: relative;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  }
}
/* POZOSTAŁE EKRANY */
@media only screen and (min-width: 768px) {
  .popup-content {
    background: #fff;
    padding: 30px 30px 80px 30px;
    width: 90%;
    max-width: 800px;
    height: 80%; /* Stała wysokość popupu */
    overflow: hidden; /* Ukrycie nadmiarowej treści */
    border-radius: 8px;
    position: relative;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  }
}

.popup-header {
  font-size: 26px;
  font-weight: bold;
  margin-bottom: 20px;
}

.popup-close {
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
  font-size: 20px;
}

/*.popup-body {
    overflow-y: auto;*/ /* Dodaj scroll pionowy */
/*height: calc(100% - 80px);*/ /* Dopasowanie wysokości treści do popupu */
/*padding-right: 10px;*/ /* Ułatwia przewijanie */
/*box-sizing: border-box;
    margin-bottom: 20px;
}*/

/* TELEFON */
@media only screen and (max-width: 767px) {
  .popup-body {
    overflow-y: auto; /* Dodaj scroll pionowy */
    height: 500px; /* Dopasowanie wysokości treści do popupu */
    padding-right: 10px; /* Ułatwia przewijanie */
    box-sizing: border-box;
    margin-bottom: 20px;
    font-size: 14px;
  }

  .popup-body p {
    font-size: 14px;
  }
}
/* POZOSTAŁE EKRANY */
@media only screen and (min-width: 768px) {
  .popup-body {
    overflow-y: auto; /* Dodaj scroll pionowy */
    height: calc(100% - 80px); /* Dopasowanie wysokości treści do popupu */
    padding-right: 10px; /* Ułatwia przewijanie */
    box-sizing: border-box;
    margin-bottom: 20px;
  }
}

.popup-footer button {
  padding: 10px 20px;
  background: var(--motyw01_glowny);
  color: white;
  border: none;
  border-radius: 5px;
  cursor: pointer;
}

/* POPUP Global_Popup.php */
.customModal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  display: none; /* Ukryj modal domyślnie */
  justify-content: center;
  align-items: center;
  z-index: 9999;
}

/* Modal content */
.customModal-content {
  background-color: white;
  border-radius: 15px 15px 10px 10px;
  text-align: center;
  width: 700px;
}

.customModal-header {
  background-color: var(--motyw01_glowny);
  color: white;
  border-radius: 10px 10px 0px 0px;
  padding: 10px;
}

.customModal-header h4 {
  margin: 0px;
}

.customModal-body {
  padding: 30px;
}

.customModal-buttons {
  display: flex;
  justify-content: center;
  margin-top: 20px;
  gap: 10px;
  width: 100%;
}

.customModal-accept {
  background-color: rgb(0, 197, 0);
  color: white;
  width: 50%;
}
.customModal-accept:hover,
.customModal-accept:focus {
  color: white;
  background-color: rgb(0, 197, 0);
}
.customModal-accept:active {
  color: white !important;
  background-color: rgb(0, 197, 0) !important;
  opacity: 0.8;
}

.customModal-noaccept {
  background-color: red;
  color: white;
  width: 50%;
}
.customModal-noaccept:hover,
.customModal-noaccept:focus {
  color: white;
  background-color: red;
}
.customModal-noaccept:active {
  color: white !important;
  background-color: red !important;
  opacity: 0.8;
}

.customModal-icon {
  width: 70px;
}

/* When modal has the active class, it will be visible */
.customModal.active {
  display: flex;
}

.no-scroll {
  overflow: hidden;
}

/* ////////////////////////////////////// */
/* ///////////// KONIEC POPUP /////////// */
/* ////////////////////////////////////// */

/* ///////////////////////////////////////////////////////////////////////////// */
/* //////// Stylizacja do flag w polach select dla numerów kierunkowych //////// */
/* ///////////////////////////////////////////////////////////////////////////// */

.select-with-images {
  appearance: none; /* Ukrycie domyślnego wyglądu przeglądarki */
  width: 100%;
  padding: 5px;
  font-size: 16px;
}

.select-with-images option {
  padding: 5px;
}

.select-with-images-container {
  position: relative;
  width: 100%;
  max-width: 300px;
}

.select-image-preview {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 16px;
  padding: 5px;
  border: 1px solid #ccc;
  border-radius: 5px;
  background: #fff;
  cursor: pointer;
}

.select2-selection--single {
  min-height: 50px;
}

/* KALENDARZ oraz na jego wzór elementy */
/* Input */

.input_2025_box {
  position: relative;
  width: 100%;
}

.box_search_result_2025 {
  display: flex;
  flex-direction: row;
  border-radius: 10px 10px 10px 10px;
  padding: 8px 8px 8px 15px;
  width: 100%;
  border: 1px solid #dddddb;
}

.input_2025_span {
  position: absolute;
  top: -9px; /* Wcześniej -25%, ale % psuje efekt dla wyższych pól np. textarea */
  font-size: 12px;
  padding: 0px 4px;
  background-color: white;
  margin-left: 6px;
  left: 1%;
  border-radius: 10px;
}

.input_2025_field {
  border: 1px solid #dddddb;
  border-radius: 10px;
  padding: 10px 10px;
  width: 100%;
  position: relative;
}

.input_2025_field_search {
  border: 1px solid #dddddb;
  border-right: none;
  border-radius: 10px 0px 0px 10px;
  padding: 10px 20px;
  width: 100%;
  position: relative;
}

.input_2025_search_button {
  border-radius: 0px 10px 10px 0px;
  padding: 10px 25px;
  border: 1px solid var(--motyw01_dodatkowy);
  color: white;
  background-color: var(--motyw01_dodatkowy);
  display: flex;
  align-items: center;
  gap: 5px;
  display: flex;
  align-items: center; /* Wyśrodkowanie w pionie */
  justify-content: center; /* Wyśrodkowanie w poziomie */
}

/* 2025.05 styl boxów z bocznym zdobieniem motywu */
.border_left {
  border-left: 15px solid var(--motyw01_glowny);
  border-radius: 20px;
  margin-bottom: 20px;
}

.border_left_inside {
  background-color: white;
  border-radius: 0px 20px 20px 0px;
  padding: 20px;
  gap: 15px;
}

.separator {
  border-top: 1px solid #eeeeee;
  display: flex;
  flex-direction: row;
  width: 100%;
  align-items: flex-start;
  justify-content: center;
}

.chevron_up {
  width: 70px;
  transform: rotate(270deg);
  filter: invert(86%) sepia(2%) saturate(17%) hue-rotate(325deg) brightness(93%) contrast(87%); /* #c1c1c1 */
}
.chevron_down {
  width: 70px;
  transform: rotate(90deg);
  filter: invert(86%) sepia(2%) saturate(17%) hue-rotate(325deg) brightness(93%) contrast(87%); /* #c1c1c1 */
}

/* Domyślnie ukryj */
.touch-only {
  display: none;
}
/* Pokaż tylko na ekranach dotykowych */
@media (hover: none) and (pointer: coarse) {
  .touch-only {
    display: flex;
  }
}

.box_shadow {
  -webkit-box-shadow: 0px 0px 20px -5px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0px 0px 20px -5px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 0px 20px -5px rgba(0, 0, 0, 0.3);
}

/* Styl dla elementu do zgłaszania błędów - kalendarz */
.report-error-widget {
  position: fixed;
  bottom: 20px;
  left: 20px;
  width: 60px;
  height: 60px;
  background-color: red; /* czerwony kolor koła */
  color: white;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 28px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
  z-index: 9999;
  cursor: pointer;
}

.validation-message-error {
  font-size: 14px;
  line-height: 16px;
  font-weight: 300;
  margin: 0px;
  margin-top: 5px;
  color: red;
}
/* Sliders */
input[type="range"] {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 20px;
  border-radius: 20px;
  outline: none;
  box-shadow: inset 0 0 0 1px #ffffff10, 0 2px 8px rgba(0, 0, 0, 0.25);
}
input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #e9eef8;
  border: 1px solid #00000040;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.45);
  cursor: pointer;
}
input[type="range"]::-moz-range-thumb {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #e9eef8;
  border: 1px solid #00000040;
  cursor: pointer;
}

/* Style dla zdjęć profilowych */
.profile-photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 3px solid #ffffff;
  border-radius: 20px;
  aspect-ratio: 1/1;
}

/* Mniejsze zdjęcie w headerze */
.profile-photo-header {
  width: 54px;
  height: 54px;
  border: 3px solid #ffffff;
  border-radius: 15px;
  object-fit: cover;
}

/* Ekran logowania */
.profile-userphoto {
  object-fit: cover;
  aspect-ratio: 1/1;
  border-radius: 20px !important;
}

.form-fixed-bottom {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  background: #fff;
  padding: 15px 20px;
  box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.1);

  max-width: 100%;
  margin: 0 auto;
  border-radius: 25px 25px 0 0;
}
.form-fixed-bottom .buttons-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* Style inputa dla wyszukiwarek */
.search-input {
  flex: 1;
  padding: 15px 12px;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 10px;
}

.listing-actionbar.search-bar {
  width: 100%;
  margin-bottom: 14px;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
