
html {
  scroll-behavior: smooth;
}
body {
  scroll-behavior: smooth;
}
#main {
  scroll-behavior: smooth;
}


   body {
      font-family: Arial, sans-serif;
	  font-family: 'Roboto', sans-serif;
	  font-family: 'Montserrat', sans-serif;
      text-align: center;
      background: #1a1a1a;
      color: white;
      margin: 0;
      padding: 0;
    }
body {
  background-image: url('img/img-bg-1600x900.jpg'); /* Podmień na URL swojego obrazka */
  background-size: cover;
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
}


    .container {
      max-width: 800px;
      margin: auto;
      padding: 20px;
      /* Usunięto obramowanie i zaokrąglenia */
      background: #1a1a1a;
    }

    /* Nagłówek z obrazkiem */
    .header {
      margin-bottom: 20px;
    }
    .header img {
      max-width: 100%;
      height: auto;
    }
    .tabs {
      display: flex;
      justify-content: space-between;
      cursor: pointer;
      margin-bottom: 10px;
    }
    .tab {
      flex: 1;
      margin: 0 5px;
      padding: 10px;
      background: #333;
      color: #fff;
      border-radius: 5px;
      display: flex;
      flex-direction: column;
      align-items: center;
      transition: background 0.3s ease, color 0.3s ease;
    }
    .tab:hover {
      background: #fff;
      color: #000;
    }
    .tab.active {
      background: #f1f1f1;
      color: #000;
    }
	
/* dodatkowy styl dla przycisku Informacje ogólne, który będzie miał szerokość połowy kontenera, aby nie był za duży */
.extra-tab {
  width: 50%;
  width: 100%;
  margin: 0 auto 20px auto; /* wyśrodkowanie */
}
.extra-tab {
    display: flex;
}
	
    .tab-icon {
      font-size: 2rem;
    }
    .tab-label {
      margin-top: 5px;
    }
    .tab-content {
      display: none;
      margin-top: 20px;
    }
.tab-content.active {
  display: block;
}
.active .tab-content {
    display: block;
}

.tab-content p {
    line-height: 1.6;
    margin-bottom: 15px;
    color: #828282;
    padding: 0 0px;
    width: 85%;
    margin-left: auto;
    margin-right: auto;
}
.tab-content p strong,
ul li strong {
    color: #bababa;
}
.tab-content p.red strong {
    color: #be0000;
}
.tab-content .info-intro p {
    width: 95%;
}

.tab-content.plain p, ul li {
    text-align: left;
    color: #828282;
}

ul li {
    line-height: 1.5em;
}




    .form-group {
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 10px;
	  margin-bottom: 0px;
    }
    input[type="text"] {
      width: 80%;
      padding: 10px;
      margin: 5px 0;
      text-align: center;
      background: #333;
      color: #fff;
      border: 1px solid #555;
      border-radius: 3px;
      font-size: 1.2em;
    }
    .checkbox-group {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      margin-left: 10%;
    }
    /* Stylizacja checkboxów */
    input[type="checkbox"] {
      -webkit-appearance: none;
      appearance: none;
      width: 20px;
      height: 20px;
      background: #000;
      border: 2px solid #ccc;
      border-radius: 3px;
      cursor: pointer;
      position: relative;
      outline: none;
      transition: background 0.3s, border 0.3s;
    }
    input[type="checkbox"]:checked {
      background: #fff;
      border: 2px solid #000;
    }
    input[type="checkbox"]:checked::after {
      content: '\2713';
      font-size: 16px;
      color: #000;
      position: absolute;
      top: -3px;
      left: 2px;
      font-weight: bold;
    }
    label {
      display: flex;
      align-items: center;
    }
    label input {
      margin-right: 10px;
    }
    /* Styl przycisków – taki sam jak zakładek, większa czcionka */
    .btn {
      padding: 10px;
      background: #666;
      color: #fff;
      border: none;
      cursor: pointer;
      width: 83%;
      margin-top: 10px;
      border-radius: 5px;
      transition: background 0.3s ease, color 0.3s ease;
      font-size: 1.3em;
    }
    .btn:hover {
      background: #fff;
      color: #000;
    }
    .btn:active {
      background: #f1f1f1;
      color: #000;
    }
    /* Klasy pomocnicze do formatowania wyników */
    .info-label {
      color: #ccc;
      font-size: 1em;
      margin-right: 5px;
    }
    .result-value {
      background: #3e3e3e;
      color: #fff;
      padding: 5px 10px;
      border-radius: 5px;
      font-weight: bold;
    }
    .highlight {
      background: #fff;
      color: #000;
      padding: 2px 5px;
      border-radius: 5px;
    }
    .highlight-important {
      background: #fff;
      color: #000;
      padding: 5px 10px;
      border-radius: 5px;
      font-weight: bold;
    }
    .highlight-subimportant {
      background: #3e3e3e;
      color: #fff;
      padding: 5px 10px;
      border-radius: 5px;
      font-weight: bold;
    }
    /* Komunikaty błędów */
    .error-message {
      color: #be0000 !important;
      margin-top: 15px;
    }
    /* Stopka */
    footer {
      margin-top: 20px;
      padding: 20px;
      background: #333;
      color: #ccc;
      font-size: 0.9em;
    }
footer {
    background: rgba(0,0,0,0.6);
}
	
    footer p {
      margin: 5px 0;
    }
footer p.info {
    color: #737373;
    padding-bottom: 7px;
}
footer .highlight {
    font-weight: bold;
}
footer .highlight:hover {
    background: black;
    color: white;
}
	
hr {
  border: none;
  height: 1px;
  background: linear-gradient(to right, transparent, #555, transparent);
  margin: 20px 0;
}
hr.sepa {
    border: none;
    height: 1px;
    background: linear-gradient(to right, #222, #555, #222);
    margin: 5px 0;
}
	
/* Małe logo nad stopką */
    .small-logo-container {
      position: relative;
      width: 50px;   /* ustalona szerokość logo */
      height: 50px;  /* ustalona wysokość logo */
      margin: 50px auto 20px; /* wycentrowane i z odstępem od treści */
    }
    /* Każdy kwadrat w małym logo */
    .small-logo-container .square {
      position: absolute;
      width: 50%;
      height: 50%;
      overflow: hidden;
    }
    /* Pozycjonowanie kwadratów */
    .small-logo-container .top-left {
      top: 0;
      left: 0;
      background: transparent;
    }
    .small-logo-container .top-right {
      top: 0;
      right: 0;
      background: #fff;
      border-top-right-radius: 10px;  /* mniejszy promień – 10px zamiast 30px */
    }
    .small-logo-container .bottom-left {
      bottom: 0;
      left: 0;
      background: #fff;
      border-bottom-left-radius: 10px;
    }
    .small-logo-container .bottom-right {
      bottom: 0;
      right: 0;
      background: transparent;
    }
    /* Kropki wewnątrz kwadratów – zmniejszone proporcjonalnie */
    .small-logo-container .circle {
      position: absolute;
      width: 12px;   /* mniejsza średnica kropki */
      height: 12px;
      border-radius: 50%;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
    }
    /* Kolory kropek zgodnie z oryginałem */
    .small-logo-container .top-left .circle {
      background: #fff;
    }
    .small-logo-container .top-right .circle {
      background: #000;
    }
    .small-logo-container .bottom-left .circle {
      background: #000;
    }
    .small-logo-container .bottom-right .circle {
      background: #fff;
    }
/*  MLNS-e */


.info-intro {
    background: rgba(0, 0, 0, 0.3);
    padding: 10px 15px;
    border-radius: 5px;
    margin-bottom: 20px;
}
.info-intro p {
    color: #b9b9b9;
}

.info-section {
    width: 90%;
	width: initial;
    max-width: 800px;
    margin: 0 auto 25px auto;
    text-align: left;
}

.info-section h3 {
    color: #fff;
    border-bottom: 1px solid #444;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
.info-content {
    display: flex;
    align-items: normal;
    background-color: #232323;
    padding: 15px;
    border-radius: 5px;
}
.info-section p strong,
.info-section p b {
  color: #b9b9b9;
  font-weight: bold;
}


.info-icon {
    font-size: 50px;
    color: #fff;
    margin-right: 15px;
    flex-shrink: 0;
    padding-top: 10px;
    margin-left: 5px;
    min-width: 65px;
}

.info-section p {
    line-height: 1.6;
    margin-bottom: 15px;
    color: #828282;
    width: 100%;
    margin-left: auto;
    margin-right: 10px;
    text-align: left;
    margin-top: 5px;
    margin-left: 15px;
}
#info p {
    text-align: justify;
    width: 90%;
	
  text-align: justify;
  /* Wartość 'inter-word' sprawia, że przeglądarka dostosowuje odstępy między wyrazami */
  text-justify: inter-word;
	
}
.tab-content h3 {
    background-color: #2a2a2a;
    padding: 10px;
	    color: #fff;
    border-bottom: 1px solid #444;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
.tab-content #fameResult h3 {
    background-color: transparent;
    border-bottom: 0px;
}
div#grafResult p {
    line-height: 1.2em;
}

h3 i {
    padding-right: 10px;
    font-size: 1.8em;
    vertical-align: middle;
}

#informacje i {
    color: #a954c4;
}
#utrudnienia h3 i {
    color: #be0000;
}


#utrudnienia.tab-content div div p {
    width: 95%;
}


    /* Style dla przycisku Scroll to Top */
    #scrollToTopBtn {
      position: fixed;
      bottom: 20px;
      right: 30px;
      z-index: 9999;
      font-size: 18px;
      border: none;
      outline: none;
      background-color: #555;
      color: white;
      cursor: pointer;
      padding: 15px;
      border-radius: 4px;
      display: none; /* Domyślnie ukryty */

    }
    #scrollToTopBtn:hover {
      background-color: #333;
    }

#scrollToTopBtn:hover {
  background-color: #333;
}




	
	
	
	
  /* Poprawka responsywna dla wyników na urządzeniach mobilnych */

@media screen and (max-width: 600px) {
  .highlight-important,
  .highlight-subimportant,
  .result-value {
    display: inline-block;   /* blokuje element, wymusza przejście do nowej linii */
    margin-top: 5px;         /* lekki odstęp */
  }

  .summary {
    line-height: 1.4;
  }
hr.sepa {
    background: linear-gradient(to right, #222, #555, #222);
    margin: 5px 0;
}
  
  .tab-label {
    margin-top: 10px;
    font-size: 0.9em;
}
 .tab-content p {
    font-size: 0.9em;
	width: 95%;
}
.info-section p {
    line-height: 1.4;
    font-size: 0.9em;
}
h2 {
    font-size: 1.35em;
}
.info-section h3 {
    font-size: 1.1em;
}
input[type="text"] {
    font-size: 1.0em;
}
footer p {
    font-size: 0.9em;
}
  
  
}

	