h1 {
  color: rgb(0, 0, 0);
  font-size: 21pt;
  text-align:left;
  font-family: Arial, Helvetica, sans-serif;
}

h2 {color: rgb(41, 39, 39); font-size: 17pt}
h3 {color: rgb(11, 27, 61); font-size: 15pt}
p {font-size: 15pt; text-align: left; color: rgb(0, 0, 0)}
li {font-size: 15pt}
a {
  color: rgb(43, 3, 13);
  font-size: 15pt;
}

.topnav {
  overflow: hidden;
  background-color: rgb(11, 27, 61);
}

.topnav a {
  float: left;
  color: #f2f2f2;
  text-align: left;
  padding: 15px;
  text-decoration: none;
  font-size: 16pt;
}

.topnav a:hover {
  text-decoration: underline
}

.topnav a.active {
  background-color: #000000;
  color: white;
}

/* Right-aligned section inside the top navigation */
.topnav-right {
  float: right;
}

.topnav .icon {
  display: none;
}

.topnav .icon7 {
  position: absolute;
  right: 47.8px;
  top: 0;
}

.topnav .icon3 {
  position: absolute;
  right: 0px;
  top: 0;
}

.img-container {
  text-align: center;
  display: block;
}

div.center {
  text-align: center;
}

body{
    background-color: #f0f0f0;
    font-family: sans-serif;
    border: 0;
    margin: 0;
    padding: 0;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.body-container {
  margin-left: 18%;
  margin-right: 18%;
  margin-bottom: 1.4%;
  margin-top: 1.4%;
  background-color: #fff;
  padding: 2%;
  padding-top: 0%;
  border-radius: 0.5%;
}

@media screen and (max-width: 68em) {
  body{
    background-color: white
  }

  .body-container {
    margin-left: 1%;
    margin-right: 1%;
  }
}

#obalovydiv {
  background: #ffffff;
  width: 100%;
  font: Verdana, sans-serif;
}

.obsah {
  padding-left:35px;
  padding-right:35px;
  padding-top:0px;
  padding-bottom:20px;
}

.topnav a:hover {
  text-decoration: underline;
}

.topnav a.active {
  background-color: rgb(11, 27, 61);
  color: white;
}


/* Responsive navigation menu (for mobile devices) */
@media screen and (max-width: 68em) {
  .predmety {
    display: none;
  }
  
  .topnav a:not {display: none;}
  .topnav a {
    float: left;
    font-size: 15pt;
  }

  .topnav-right a:not(:nth-child(0)) {display: none;}




  .topnav a.icon {
    float: right;
    display: block;
  }
}

@media screen and (max-width: 68em) {
  .predmety {
    display: none;
  }
  
  .topnav.responsive {position: relative;}
  .topnav.responsive .icon {
    position: absolute;
    right: 0;
    top: 0;
  }



  
  .topnav-right{
    float: left;
  }

  .topnav.responsive a {
    float: none;
    display: block;
    text-align: left;
  }
  .obsah {
    padding-left:15px;
    padding-right:15px;
    padding-top:0px;
    padding-bottom:20px;


  }
}

div.scroll {
  margin: 4px, 4px;
  padding: 4px;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
}

#hp  {
  float: right;    
   margin: 0 0 0 15px;
  }


footer {
  margin-top: auto;
  background-color: rgb(11, 27, 61);
  width: 100%;
  text-align: center;
  padding-bottom: 15px;
	padding-top: 15px;
  bottom: 0;
}

footer a {
  color: #ffffff;
  font-size: 13pt;

}

article {
  margin: auto 0;
}

.question {
  margin-bottom: 1.2em;
}

.kvizy h2{
  color: rgb(255, 0, 162);
}

.kvizy {
  color: rgb(255, 0, 162);
}

button {
  background-color: rgb(11, 27, 61);
  color: white;
  padding-top: 0.625em;
  padding-right: 1.25em;
  padding-bottom: 0.625em;
  padding-left: 1.25em;
  border-radius: 8%;
  cursor: pointer;
}

.cislo-otazky{
  font-weight: bold;
}

.practise {
  color: rgb(0, 126, 210);
}

.practise h2 {
  color: rgb(0, 126, 210);
}

.teorie {
  color: rgb(154, 8, 47);
}

.teorie h2 {
  color: rgb(154, 8, 47);
}

.yt {
  overflow-x: hidden;
}

.yt-sekce {
  text-align: center;
  overflow-x: hidden;
  padding-left: 10px;
  padding-right: 10px;
}

@media screen and (max-width: 68em) {
.yt {
  width: 100%;
  text-align: center;
  overflow-x: hidden;
}
}


a.no-underline {
 text-decoration: none;
 color: inherit;
 font-size: 1.17em;
}

dl {
  margin: 0;
}

dt {
  font-size: 1.17em;
  text-decoration: underline;
}

dd {
  font-size: 1em;
  color:#555;
  margin-left: 0; /* Odsazení definic */
  margin-top: 0.7em;
}

.project {
  margin-top: 1em;
  margin-bottom: 1em;
  padding: 0.7em;
  border-style: solid;
  border-color: #ccc;
  border-radius: 0.8em;
  display: flex;
  align-items: center;
  flex-direction: row;
  page-break-inside: avoid; /* Zabránit rozdělení na více stránek */
}

.project-profile {
  width: 7em;
  height: 7em;
  border-radius: 50%;
  margin-right: 1em;
}

@media screen and (max-width: 68em) {
  dd {
    display: none;
  }
}

.form-container {
  background: #ffffff;
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  max-width: 400px;
  width: 100%;
}

.form-container label {
  display: block;
  margin-bottom: 5px;
  font-weight: bold;
}

.form-container input,
.form-container textarea {
  width: 100%;
  padding: 10px;
  margin-bottom: 15px;
  border: 1px solid #ccc;
  border-radius: 5px;
  font-size: 16px;
}

.form-container button {
  width: 100%;
  padding: 10px;
  background-color: rgb(11, 27, 61);
  border: none;
  border-radius: 5px;
  color: #ffffff;
  font-size: 16px;
  cursor: pointer;
}

.form-container button:hover {
  background-color: #000000;
}

ul.breadcrumb {
  list-style: none;
  margin: 10;
  padding: 0;
}

ul.breadcrumb li {
  display: inline;
}


ul.breadcrumb li+li:before {
  content: ">\00a0";
}

.block-example {
  background-color: #f4edf5;
  padding: 15px;
  border-radius: 5px;
  margin-bottom: 20px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

span.dalsi-dila {
  color: rgb(5, 50, 175);
}

.extra-clenstvi {
  color: rgb(255, 89, 0);
}

.v-priprave {
  color: rgb(16, 255, 3);
}

.pdf {
  color: rgb(7, 11, 237);
}

.odkaz-video {
  color: rgb(5, 50, 175);
}

.odkaz-audio {
  color: rgb(10, 150, 70);
}

.odkaz-ekniha {
  color: rgb(120, 20, 20);
}

.odkazy-lista {
  font-size: 13pt;
}

a.home-button {
  font-weight: bold;
}

a.extra-button {
  color: rgb(252, 134, 0);
  font-weight: bold;
}

.rozbor-polozka {
  font-weight: bold;
}

.header {
  text-align: center;
  margin-bottom: 0px;
}

.header h1 {
  font-size: 2.5em;
  color: rgb(11, 27, 61);
  margin-bottom: 10px;
  text-align: center;
}

.header p {
  padding-left: 15%;
  padding-right: 15%;
}

@media screen and (max-width: 68em) {
  .header p {
    padding-left: 0%;
    padding-right: 0%;
  }

.header h1 {
  font-size: 2em;
}
}

.header p {
  font-size: 1.2em;
  color: #666;
  text-align: center;
}


/* Sections */
.section {
  margin-bottom: 40px;
}

.section h2 {
  font-size: 1.8em;
  margin-bottom: 20px;
  color: #333;
  border-bottom: 3px solid #2a5298;
  padding-bottom: 5px;
}

.section a {
  font-weight: bold;
}

/* Card styles */
.card {
  background: white;
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 20px;
  padding: 15px;
  transition: transform 0.3s, box-shadow 0.3s;
  /* Make the whole card clickable */
  text-decoration: none;
  color: #333;
  display: block;
}

.card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
}

/* Card categories */
.card.teorie {
  border-left: 10px solid #4CAF50;
}

.card.practise {
  border-left: 10px solid #FF9800;
}

.card.kvizy {
  border-left: 10px solid #2196F3;
}

.card.zelena {
  border-left: 10px solid #4CAF50;
}

.card.oranzova {
  border-left: 10px solid #FF9800;
}

.card.modra {
  border-left: 10px solid #2196F3;
}

.card.cervena {
  border-left: 10px solid #ff0000;
}

.card.zluta {
  border-left: 10px solid #e7ee10;
}

.card.cerna {
  border-left: 10px solid #000000;
}



.git-command {
  background-color: #e7f3fe;
  border: 1px solid #b3d7ff;
  border-radius: 5px;
  padding: 2px 5px;
  font-family: monospace;
}
.git {
  background-color: #e7f3fe;
  border: 1px solid #b3d7ff;
  border-radius: 5px;
  padding: 10px;
  overflow: auto;
}

/* Třída pro rozmazání obsahu */
.blurred code {
    filter: blur(5px);
    transition: filter 0.3s ease;
}

/* Když odstraníme třídu blurred, kód se zobrazí ostře */
.visible code {
    filter: none;
}

/* Překryvný text na rozmazané části */
.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.8); /* Bílý průhledný překryv */
    color: black;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    pointer-events: auto; /* Umožnit kliknutí na překryv */
    z-index: 1; /* Zajistit, aby byl překryvný text nad ostatními elementy */
}

/* Skrytí překryvu, když je kód viditelný */
.hidden {
    display: none;
}

/* Aby kontejner s kódem měl relativní pozici */
#codeBlock {
    position: relative;
    margin: 20px 0; /* Přidání prostoru nad a pod kódem */
}


/* Modal základní styly */
.modal {
  display: none; /* Skryté ve výchozím stavu */
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.4); /* Poloprůhledné pozadí */
}
.modal-content {
  background-color: #fff;
  margin: 12% auto;
  padding: 20px;
  border-radius: 10px; /* Zakulacené rohy */
  width: 80%;
  max-width: 500px;
  text-align: center;
  position: relative; /* Abychom mohli umístit křížek na správné místo */
}
/* Křížek pro zavření modalu */
.close {
  color: #fff; /* Bílé písmo */
  font-size: 30px;
  font-weight: bold;
  position: absolute;
  top: -15px; /* Posuneme křížek nad roh */
  right: -15px; /* Posuneme křížek na pravý horní roh */
  cursor: pointer;
  background-color: #9c9b9b; /* Červené pozadí pro křížek */
  border-radius: 50%; /* Kulatý tvar pro křížek */
  width: 40px; /* Velikost kolečka */
  height: 40px; /* Velikost kolečka */
  display: flex;
  align-items: center;
  justify-content: center;
}
/* Efekt na křížek při najetí myší */
.close:hover,
.close:focus {
  background-color: #0B1B3D; /* Tmavší červená při najetí */
  color: #fff;
}

@media (max-width: 768px) {
  .modal-content {
    margin: 40% auto;
  }
}


/* Stylování pouze pro seznam s id="subject-list" */
#subject-list {
  list-style: none; /* Odstranění standardních odrážek */
  padding: 0;
  margin: 20px 0;
}

#subject-list li {
  display: flex;
  align-items: center;
  padding: 8px 0;
  font-size: 1rem;
  color: #333;
  font-weight: 500;
}

/* Stylování odrážky */
#subject-list li::before {
  content: '✓';
  color: #4CAF50;
  font-weight: bold;
  margin-right: 10px;
}

/* Stylování odkazu v rámci li */
#subject-list li a {
  text-decoration: none;
  color: inherit; /* Přizpůsobí se barvě textu li */
}

/* Stylování položek při najetí myší */
#subject-list li:hover {
  color: #4CAF50;
  cursor: pointer;
}

/* Zvýraznění odrážky při najetí */
#subject-list li:hover::before {
  color: #388E3C;
}

.photo-gallery {
  display: flex;
  gap: 10px; /* Padding between images, works for both horizontal and vertical */
  justify-content: center; /* Center images horizontally */
}

.photo-gallery img {
  width: 50%; /* Each image takes half the container width */
  height: 100%; /* Maintain aspect ratio */
}

/* Media query for mobile devices */
@media (max-width: 768px) {
  .photo-gallery {
      flex-direction: column; /* Stack images vertically */
      align-items: center; /* Center images */
      gap: 30px; /* Explicitly ensure padding between stacked images */
  }

  .photo-gallery img {
      width: 100%; /* Full width on mobile */
      height: auto; /* Maintain aspect ratio */
  }
}

.s {
  color: #9c9b9b;
  font-size: 13pt;
}

.old_price {
  color: #6e6e6e;
  font-weight: bold;
  font-size: 14pt;
}

.actual_price {
  color:rgb(0, 17, 255);
  color: rgb(11, 27, 61);
  font-weight: bold;
  font-size: 17pt;
}

.myForm .cta-button {
  background-color: red;
}


.myForm {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center; /* vycentrování vodorovně */
}

.myForm .inputMailField {
  max-width: 430px;
}

.myForm .mailLabel {
    max-width: 430px;
    font-size: 11pt;
}

.inputMailField::placeholder {
  font-size: 15px;
  /* color: #888; */
}