[data-loading=""],[data-loading=show],[data-loading*=\|show]{display:none}

/*
 * Styles for the custom date/time picker Stimulus controllers
 * (date_picker_controller.ts, time_picker_controller.ts, datetime_picker_controller.ts).
 * Brand accent color: #44577a.
 */

.picker-backing {
    display: none !important;
}

.picker-input-wrap .picker-display {
    padding-right: 2.5rem;
}

/* The display input is read-only by design (select-only picker) — keep it looking interactive */
.picker-input-wrap .picker-display[readonly]:not(:disabled) {
    background-color: var(--bs-body-bg, #fff);
    cursor: pointer;
}

.picker-input-wrap .picker-trigger {
    position: absolute;
    top: 50%;
    right: 0.25rem;
    transform: translateY(-50%);
    padding: 0.125rem 0.5rem;
    border: 0;
    color: #6c757d;
    line-height: 1;
}

.picker-input-wrap .picker-trigger:hover:not(:disabled) {
    color: #44577a;
}

/* The popover is appended to document.body and positioned from JS
   (modules/picker/popover.ts) — an in-page absolute popover would compete
   only within its nearest stacking context and could end up below other
   page elements. */
.picker-popover {
    position: fixed;
    z-index: 2000; /* above navbars and Bootstrap modal (1055) */
    min-width: 19rem;
    max-width: calc(100vw - 1rem);
    padding: 0.75rem;
    overflow-y: auto; /* scrolls internally when JS caps max-height near viewport edges */
    background: #fff;
    border: 1px solid var(--bs-border-color, #dee2e6);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.picker-header .form-select {
    width: auto;
    flex: 1 1 auto;
}

.picker-header .picker-nav {
    flex: 0 0 auto;
    padding: 0.25rem 0.5rem;
    border-color: #8d99a7 !important;
}

.picker-weekdays {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    margin-top: 0.5rem;
    color: #6c757d;
    font-size: 0.75rem;
    text-align: center;
}

.picker-week {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
}

.picker-day {
    width: 2.25rem;
    height: 2.25rem;
    margin: 1px auto;
    padding: 0;
    background: none;
    border: 0;
    border-radius: 50%;
    color: inherit;
    font-size: 0.875rem;
}

.picker-day:hover:not(:disabled) {
    background: #e9ecef;
}

.picker-day:focus-visible {
    outline: 2px solid #44577a;
    outline-offset: 1px;
}

.picker-day.outside {
    color: #adb5bd;
}

.picker-day.today {
    border: 1px solid #44577a;
}

.picker-day.selected {
    background: #44577a;
    color: #fff;
}

.picker-day:disabled {
    color: #ced4da;
    cursor: default;
}

.picker-footer {
    margin-top: 0.5rem;
    padding-top: 0.5rem;
    border-top: 1px solid var(--bs-border-color, #dee2e6);
}

/* Month-only mode: 3x4 grid of month names */

.picker-months {
    margin-top: 0.5rem;
}

.picker-months-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2px;
}

.picker-month {
    margin: 1px;
    padding: 0.5rem 0.25rem;
    background: none;
    border: 0;
    border-radius: 0.25rem;
    color: inherit;
    font-size: 0.875rem;
}

.picker-month:hover:not(:disabled) {
    background: #e9ecef;
}

.picker-month:focus-visible {
    outline: 2px solid #44577a;
    outline-offset: 1px;
}

.picker-month.today {
    border: 1px solid #44577a;
}

.picker-month.selected {
    background: #44577a;
    color: #fff;
}

.picker-month:disabled {
    color: #ced4da;
    cursor: default;
}

/* Time popover: scrollable hour/minute columns */

.picker-popover-time {
    display: none;
    gap: 0.25rem;
    min-width: 0;
    padding: 0.25rem;
}

.picker-popover-time:not([hidden]) {
    display: flex;
}

.picker-time-column {
    display: flex;
    flex-direction: column;
    gap: 2px;
    max-height: 14rem;
    padding: 0.25rem;
    overflow-y: auto;
    scrollbar-width: none;
}

.picker-time-column::-webkit-scrollbar {
    display: none;
}

.picker-time-column + .picker-time-column {
    border-left: 1px solid var(--bs-border-color, #dee2e6);
}

.picker-time-option {
    min-width: 3.5rem;
    border: 0;
}

.picker-time-option:hover:not(:disabled) {
    background: #e9ecef;
}

.picker-time-option.selected {
    background: #44577a;
    color: #fff;
}

.picker-time-option:disabled {
    color: #ced4da;
}

/* Compound datetime layout: date input ~2/3, time input ~1/3 */

.custom-datetime-picker .cdp-date {
    flex: 3 1 0;
    min-width: 0;
}

.custom-datetime-picker .cdp-time {
    flex: 2 1 0;
    min-width: 0;
}

.input-group > .cdp-date .form-control {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
}

.input-group > .cdp-time .form-control {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
}

.note-editor.note-frame.fullscreen {
    background-color: white;
}
.note-modal-backdrop {
    z-index: 0 !important;
}

.note-modal {
    background-color: rgba(0,0,0,0.5);
}

.note-modal-content {
    margin-top: 20em !important;
}

.note-modal-footer {
    height: 50px !important;
}
.email_repeat {
    display: none !important;
}

.required::after {
    content: " *";
    color: red;
}

a img.img-fill {
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: 30% 50%;
       object-position: 30% 50%;
    height: 100%;
    width: 100%;
}

.form-control, .form-select, .modal-input:not([disabled]), .input-group-text {
    border-color: #8d99a7;
}

.modal-input:not([disabled]) {
    background-color: #fff !important;
}

.modal-input:focus {
    outline: none !important;
}

/*
.ts-control {
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
}

.ts-control input {
    font-size: 1.0625rem;
}
*/

.smap-suggest {
    margin-top: 55px !important;
}

.smap .card-footer {
    padding: 0 !important;
    border-top: 0 !important;
}

.smap .card-header {
    padding: 0 !important;
    border-bottom: 0 !important;
}

.smap .card-body {
    padding: 0 !important;
}

.area-in, .area-park {
    /*display: inline;*/
}

.card-body span.area {
    color: #fff;
    margin:0.1em;
    padding-left:0.3em;
    padding-right:0.3em;
    opacity: .6;
}

.ico-card {
    z-index: 500;
    width: 88%;
    padding: 10px;
    border-width: 1px;
}

.pointer {
    cursor: pointer;
}

@keyframes spinner {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
.loader {
    display: none;
    background-color: rgba(255, 255, 255, 0.9);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99999;
    align-items: center;
    justify-content: center;
}
.loader-active > .loader {
    display: flex;
    animation-name: fadeIn;
    animation-duration: 0.3s;
}
.loader__spinner {
    font-size: 15px;
    display: block;
    border-radius: 50%;
    width: 14em;
    height: 14em;
    margin: 20vh auto;
    position: relative;
    text-indent: -9999em;
    border-top: 1.1em solid rgba(51, 94, 234, 0.1);
    border-right: 1.1em solid rgba(51, 94, 234, 0.1);
    border-bottom: 1.1em solid rgba(51, 94, 234, 0.1);
    border-left: 1.1em solid #335eea;
    transform: translateZ(0);
    animation: scaleIn 0.8s 0.3s both ease, spinner 0.8s infinite cubic-bezier(0.575, 0.315, 0.725, 0.965);
}
.takephoto {
    margin: auto;
    margin-top: -8em;
    z-index: 100;
    position: relative;
}

/* hack because click on disabled select no triger event in safari */
#parking_ticket_priceItem:disabled {
    z-index: -1;
}


.logo-selector{
    display: flex;
    align-items: center;
}

.logo-preview{
    height: 50px;
    width: auto;
}

video#qr-reader {
    width: 100%;
    /* add ZOOM to camera of qr-scanner */
    transform:scale(1.7, 1.7) !important;
    max-height: 15em;
}

#qr-status-text {
    margin: auto;
    margin-top: -3em;
    z-index: 100;
    position: relative;
    visibility: hidden;
    width: 80%;
}

.same-width
{
    min-width: 18em;
    max-width: 18em;
}

.toggleMe {
    height: auto;
    transition: height .5s ease;
}

.toggleMe:not(.toggleMe-active) {
    display: none;
}

.text-left {
    text-align: left;
}

.non-underline-link {
    text-decoration: none !important;
}

.z-2 {
    z-index: 2;
}

/* modal provozovatele */
.provozovatele-container::-webkit-scrollbar {
    display: none;
  }

  .provozovatele-list {
    list-style-type: disc;
    padding-left: 1.5rem;
    margin-bottom: 0;
  }

  .provozovatele-list li {
    margin-bottom: 0.75rem;
    color: var(--bs-primary);
  }

  .provozovatele-list li a {
    color: #000;
    text-decoration: none;
  }

  .provozovatele-list li a:hover {
    color: var(--bs-primary);
  }

  /* Vertikální čára pouze na větších obrazovkách */
  @media (min-width: 768px) {
    .border-end-md {
      border-right: 1px solid #869ab8 !important;
      padding-right: 1.5rem;
    }
    .col-md-6:last-child {
      padding-left: 1.5rem;
    }
  }


