.volne-mista-wrapper {
    display: flex;
    align-items: flex-end; /* Zarovná label dolů k inputu */
    gap: 10px;             /* Mezera mezi label a inputem */
    height: 32px;          /* Nastaví výšku wrapperu stejně jako ostatní nadpisy */
}

.volne-mista-wrapper label {
    margin: 0;
    font-size: 16px;       /* Stejná velikost jako ostatní nadpisy (přizpůsob podle h4/h5) */
}

.prevoz-form {
    display: grid;
    grid-template-columns: 150px auto;
    grid-gap: 10px 20px;
    align-items: end; /* Zachováme zarovnání dolů */
}

.prevoz-form label {
    transform: translateY(-4px); /* Posune labely o pár pixelů nahoru */
}
/* Zúží všechny textové inputy, čísla, selecty a time/date v rámci formuláře */
.prevoz-form input:not([type="submit"]),
.prevoz-form select {
  height: 32px;   
  width: 160px;        /* změníš podle chuti: px, %, rem … */
  max-width: 100%;     /* aby na mobilu nepřetékalo */
  padding: 6px 8px;
  margin: 4px 8px 4px 0;
  box-sizing: border-box;
}

/* Textarea (Poznámky) necháme na plnou šířku, ale jen výšku omezíme */
.prevoz-form textarea {
  width: 100%;
  min-height: 120px;
  padding: 8px 10px;
  resize: vertical;
}

.prevoz-form .short {
    max-width: 140px !important;
    width: 100%;
    min-width: 0;           /* zruší fallback minimální šířku date/time */
    display: inline-block;  /* select někdy potřebuje */
}

.prevoz-form .very_short {
    max-width: 80px !important;
    width: 100%;
    min-width: 0;           /* zruší fallback minimální šířku date/time */
    display: inline-block;  /* select někdy potřebuje */
}

.prevoz-form .extra_short {
    max-width: 60px !important;
    width: 100%;
    min-width: 0;           /* zruší fallback minimální šířku date/time */
    display: inline-block;  /* select někdy potřebuje */
}
/* flex-break přetne řádek v libovolném flex‑wrap formuláři */
.prevoz-form .flex-break {
  flex: 0 0 100%;   /* zabere celou šířku → další prvek začne od nového řádku */
  height: 0;        /* nevytváří mezeru navíc */
}
#map {
  width: 100% !important;
  height: 500px !important;
  flex: 1 1 100%;
  min-height: 300px;
  display: block;
}

.leaflet-container {
  width: 100% !important;
  height: 100% !important;
}
#show_route {
      margin: 4px 8px 4px 0;
      display: inline-flex;           /* umožní zarovnání uvnitř */
  align-items: center;           /* vertikální centrování */
  justify-content: center; 
      background-color: #00d938; 
  flex: 0 1 auto;
  padding: 8px 10px;
  font-size: 14px;
  height: 32px;
  line-height: 32px;          /* zarovnání textu na střed */
   margin-left: 10px;
  box-sizing: border-box;
}

#add-stop {
      margin: 4px 0px 4px 0;
      display: inline-flex;           /* umožní zarovnání uvnitř */
  align-items: center;           /* vertikální centrování */
  justify-content: center; 
      background-color: blue; 
  flex: 0 1 auto;
  padding: 8px 10px;
  font-size: 14px;
  height: 32px;
  line-height: 32px;          /* zarovnání textu na střed */
   margin-left: 10px;
  box-sizing: border-box;
}
/* Na širší obrazovce můžeš políčka skládat vedle sebe */
@media (min-width: 600px) {
  .prevoz-form {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }
  .prevoz-form input:not([type="submit"]),
  .prevoz-form select {
    flex: 0 1 260px;          /* ostatní pole pevná šířka */
  }
  .prevoz-form textarea {
    flex: 1 1 100%;
  }

  /* ↓↓↓ Přidané pravidlo ↓↓↓ */
  .prevoz-form input[type="date"]{
    flex: 0 0 100% !important;          /* přinutí nový řádek */
    max-width: 100%;
  }
}
