/* base.css */

@media (min-width: 576px) {
    .container {
        max-width: 510px;
        padding-right: 0;
        padding-left: 0;
    }
}

@media (max-width: 767px) {
    .container {
        padding: 0 30px;
    }
}

@media (min-width: 768px) {
    .container {
        max-width: 700px;
    }
}

@media (min-width: 992px) {
    .container {
        max-width: 920px;
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 1130px;
    }
}

/* Globalne ustawienie box-sizing */
*, *::before, *::after {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
/* Resetowanie podstawowych stylów */
html, body {
    height: 100%;
}

html {
    scroll-behavior: smooth;
}

/* ------------------------------------------------------------
   Globalne zaznaczanie tekstu (selection) – kolor: --primary-color
------------------------------------------------------------ */
::selection {
    background: var(--primary-color);
    color: #ffffff;
}

::-moz-selection {
    background: var(--primary-color);
    color: #ffffff;
}

/* ------------------------------------------------------------
   Globalny scrollbar (pionowy + poziomy) – kolor: --primary-color
   - Chrome / Edge / Safari: ::-webkit-scrollbar*
   - Firefox: scrollbar-color / scrollbar-width
------------------------------------------------------------ */
html {
    /* Firefox */
    scrollbar-width: thin;
    scrollbar-color: var(--primary-color) rgba(0, 0, 0, 0.18);
    scrollbar-color: var(--primary-color) color-mix(in srgb, var(--text-color) 14%, transparent);
}

/* WebKit */
*::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

*::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.18);
    background: color-mix(in srgb, var(--text-color) 14%, transparent);
    border-radius: 999px;
}

*::-webkit-scrollbar-thumb {
    background: var(--primary-color);
    border-radius: 999px;
    border: 2px solid transparent;
    background-clip: padding-box;
}

*::-webkit-scrollbar-thumb:hover {
    background: var(--btn-hover-background-color, var(--primary-color));
}

*::-webkit-scrollbar-thumb:active {
    background: var(--btn-hover-background-color, var(--primary-color));
}

*::-webkit-scrollbar-corner {
    background: transparent;
}

body {
    font-family: 'Quicksand', sans-serif !important;
    background: var(--background-color) !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--text-color) !important;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important;
    min-height: 100vh !important;
}


h1, h2, h3, h4, h5, h6 {
    font-weight: 800;
    color: var(--text-color);
}

h2 span {
    font-weight: 300;
}

/* Usuwanie obramówek wokół obrazków */
img {
    border: none;
    outline: none;
}

/* Dodatkowe usuwanie obramówek dla innych elementów, jeśli to konieczne */
button {
    border: none;
    outline: none;
    background: none;
    color: inherit;
    cursor: pointer;
}

.form-check-input {
    --bs-form-check-bg: #7d7d7d !important;
    border: var(--bs-border-width) solid #1B223A !important;
}

.form-check-input:checked {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.form-check-input:focus {
    outline: none;
    border: 1px solid var(--primary-color);
    -webkit-box-shadow: 0 0 5px var(--primary-color);
            box-shadow: 0 0 5px var(--primary-color);
}

/* Mały odstęp */
.letter-spacing-small {
    letter-spacing: 1px;
}

/* Średni odstęp */
.letter-spacing-medium {
    letter-spacing: 2px;
}

/* Duży odstęp */
.letter-spacing-large {
    letter-spacing: 3px;
}

/* Bardzo duży odstęp */
.letter-spacing-xlarge {
    letter-spacing: 5px;
}

img {
    max-width: 100%;
    height: auto;
    border-style: none;
}

.navbar-brand img {
    height: 48px;
    -webkit-transition: opacity 0.3s ease, display 0.3s ease;
    -o-transition: opacity 0.3s ease, display 0.3s ease;
    transition: opacity 0.3s ease, display 0.3s ease;
}

/* Stylizacja dla logo w stopce */
.footer-logo-img {
    height: 48px;
    -webkit-transition: opacity 0.3s ease, display 0.3s ease;
    -o-transition: opacity 0.3s ease, display 0.3s ease;
    transition: opacity 0.3s ease, display 0.3s ease;
}

.footer-logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

/* Ukryj oba loga domyślnie */
.logo-light,
.logo-dark {
    display: none;
}

/* Wyświetl odpowiednie logo w trybie jasnym */
.light-mode .logo-light {
    display: block;
}

/* Wyświetl odpowiednie logo w trybie ciemnym */
.dark-mode .logo-dark {
    display: block;
}

.no-select {
    -webkit-user-select: none;  /* Safari */
    -moz-user-select: none;     /* Firefox */
    -ms-user-select: none;      /* Internet Explorer/Edge */
    user-select: none;          /* Standard */
}

.text-color{
    color: var(--text-color);
}

.tooltip {
  --bs-tooltip-bg: #333;
}

/* top */
.bs-tooltip-top .tooltip-arrow::before {
  border-top-color: var(--bs-tooltip-bg) !important;
}

/* bottom */
.bs-tooltip-bottom .tooltip-arrow::before {
  border-bottom-color: var(--bs-tooltip-bg) !important;
}

/* start (lewa strona) */
.bs-tooltip-start .tooltip-arrow::before {
  border-left-color: var(--bs-tooltip-bg) !important;
}

/* end (prawa strona) */
.bs-tooltip-end .tooltip-arrow::before {
  border-right-color: var(--bs-tooltip-bg) !important;
}

.tooltip-icon {
    width: 20px;
    height: 20px;
    background-color: #ffffff;
    background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23343a40" viewBox="0 0 14 14" role="img" focusable="false" aria-hidden="true"><path d="M6.9198484 1.0005452C3.6064257 1.0448929.95652234 3.7671873 1.0006091 7.0807404c.0443477 3.3121186 2.7663813 5.9628046 6.0796735 5.9187176 3.3127704-.044609 5.9631954-2.766903 5.9191084-6.0801953-.044347-3.3123792-2.766511-5.96293475-6.0795426-5.9187175zm-.017739 9.6516168l-.03313-.000522c-.5102594-.01513-.8699972-.391042-.855519-.8937359.0142173-.494085.3826943-.8527791.8761272-.8527791l.029609.0005218c.5244764.015522.8801707.3876503.8654316.9048223-.014609.4955199-.3773464.8416929-.8825185.8416929zm2.1462964-4.2598539c-.1199995.1704777-.3838681.3821726-.7163452.6412151l-.3661291.2527817c-.2009992.1562603-.3223031.3032597-.3678247.4479114-.0358695.1138691-.0534781.1439994-.0566085.3756508l-.0005217.058826H6.1429817l.00404-.1183039c.0170903-.4862593.0290903-.7723017.2306113-1.0086487.3161727-.371216 1.013605-.8203013 1.0432136-.8393447.0999126-.0752606.1841732-.1609559.2469121-.2525208.1467386-.2023036.2116949-.3615639.2116949-.5180851 0-.2171731-.0644346-.4180419-.1918689-.5968674-.1224778-.1725646-.3551726-.2599555-.6916931-.2599555-.3337814 0-.5623023.1059126-.6989975.3232162-.1406081.2234339-.2116948.4580852-.2116948.6978235v.059608H4.6437698l.00261-.062217c.0371724-.8829095.3523017-1.5186463.9362561-1.8896015.3669117-.2362165.8234318-.3559552 1.3561255-.3559552.6973018 0 1.2859518.1694342 1.7493849.5036069.4695635.3386074.7077365.845736.7077365 1.5072988 0 .3700421-.1168691.7176496-.347477 1.0335614z"/></svg>');
    background-repeat: no-repeat;
    background-size: contain;
    border-radius: 50%;
    cursor: pointer;
}

/* Wrapper – rozciąga się na całą szerokość i centruje zawartość */
.animation-wrapper {
  position: relative;
  display: block;
  width: 100%;
  text-align: center;
}

/* ------------------ MAINTENANCE ------------------ */

/* Sama animacja */
.maintenance-animation {
  width: 300px;
  height: 300px;
  display: block;
  margin: 0 auto;
}

/* Tekst pod animacją */
.maintenance-text {
  position: relative;
  margin: -9rem auto 0;
  width: auto;
  text-align: center;
  color: var(--text-color);
  pointer-events: none;
  z-index: 2;
}

/* Większy font na desktopach */
@media (min-width: 768px) {
    .maintenance-animation {
        width: 400px;
        height: 400px;
        display: block;
        margin: 0 auto;
    }
  
    .maintenance-text {
    font-size: 1.5rem;
    }
}

/* ------------------ INVITATION ------------------ */

/* Sama animacja */
.invitation-animation {
  width: 300px;
  height: 300px;
  display: block;
  margin: 0 auto;
}

/* Tekst pod animacją */
.invitation-text {
  position: relative;
  margin: -5rem auto 0;
  width: auto;
  text-align: center;
  color: var(--text-color);
  pointer-events: none;
  z-index: 2;
}

/* Większy font na desktopach */
@media (min-width: 768px) {
  .invitation-text {
    font-size: 1.5rem;
  }
}

/* Mobile */
@media (max-width: 767.98px) {
    .invitation-animation {
        width: 200px;
        height: 200px;
    }

    .invitation-text {
        margin: -3rem auto 0;
    }
}

/* ------------------ ERROR (representative) ------------------ */

/* Sama animacja */
.representative-ERROR-animation {
  width: 300px;
  height: 300px;
  display: block;
  margin: 0 auto;
}

/* Tekst pod animacją */
.representative-ERROR-text {
  position: relative;
  margin: 1rem auto 0;
  width: auto;
  text-align: center;
  color: var(--text-color);
  pointer-events: none;
  z-index: 2;
}

/* Większy font na desktopach */
@media (min-width: 768px) {
  .representative-ERROR-text {
    font-size: 1.5rem;
  }
}

/* Mobile */
@media (max-width: 767.98px) {
    .representative-ERROR-animation {
        width: 200px;
        height: 200px;
    }
}
.profiCreditDetails {
  display: none;
}