.booking-search-wrapper {
    background: #ffffff;
    padding: 30px 40px;
    border-radius: 15px;
    max-width: 1100px;
    margin: 0 auto;
    font-family: 'Plus Jakarta Sans', sans-serif;
    box-shadow: 0 4px 20px rgba(0,0,0,0.05);
    box-sizing: border-box;
}

.search-fields-row {
    display: grid;
    grid-template-columns: 3fr 3fr 3fr 48px;
    gap: 12px;
    align-items: stretch;
    width: 100%;
}

.orbit-field-group {
    display: flex;
    align-items: center;
    background: #f8f8f8;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 0 16px;
    position: relative;
    height: 48px;
    transition: border 0.2s ease;
    touch-action: manipulation;
}

.orbit-field-group:focus-within, .orbit-field-group:hover {
    border-color: #aaa;
}

.field-icon {
    color: #888;
    font-size: 14px;
    margin-right: 12px;
    pointer-events: none; 
}

.split-group {
    padding: 0;
}

.split-half {
    display: flex;
    align-items: center;
    height: 100%;
    cursor: pointer;
}

.date-half {
    flex: 3;
    padding: 0 0 0 16px;
}

.date-half input {
    pointer-events: none;
}

.time-half {
    flex: 2;
    padding: 0 16px 0 0;
    display: none;
}

.split-divider {
    width: 1px;
    height: 24px;
    background: #ddd;
    display: none;
}

.split-group.has-time .time-half { display: flex; }
.split-group.has-time .split-divider { display: block; }

/* FIX ZA ZUMIRANJE - 16px font umjesto 0.9rem */
.orbit-field-group input[type="text"],
.date-display-input,
.orbit-custom-select {
    background: transparent;
    border: none;
    outline: none;
    width: 100%;
    font-size: 16px !important; 
    font-weight: 300;
    color: #444;
    font-family: inherit;
    padding: 0;
    cursor: pointer;
}

.date-display-input {
    touch-action: manipulation;
}

.orbit-custom-select {
    position: relative;
}

.time-select { text-align: center; }
.select-selected { padding: 13px 0; user-select: none; }

.select-items {
    position: absolute;
    background-color: #ffffff;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 99;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
    max-height: 250px;
    overflow-y: auto;
    margin-top: 5px;
    padding: 5px 0;
}

.time-select .select-items { left: -20px; right: -20px; }
.select-hide { display: none; }
.select-items div { padding: 10px 20px; cursor: pointer; transition: background 0.1s; }
.select-items div:hover { background-color: #f1f3f5; font-weight: 500; }

.select-items::-webkit-scrollbar { width: 6px; }
.select-items::-webkit-scrollbar-track { background: transparent; }
.select-items::-webkit-scrollbar-thumb { background: #ccc; border-radius: 10px; }

.orbit-submit-btn {
    width: 48px;
    height: 48px;
    background: #189132 !important;
    color: white !important;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
    padding: 0;
}

.orbit-submit-btn i { font-size: 1.2rem; }
.orbit-submit-btn:hover { background: #127a28 !important; }

/* -------------------------------------
   FLATPICKR OVERRIDES (Fix za simetriju)
-------------------------------------- */
.flatpickr-calendar {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    background: #ffffff !important;
    border: none !important;
    box-shadow: 0 15px 40px rgba(0,0,0,0.12) !important;
    border-radius: 20px !important;
    padding: 20px !important;
    width: auto !important;
}

.flatpickr-months { margin-bottom: 15px; }
.flatpickr-months .flatpickr-month { background: transparent !important; color: #111 !important; fill: #111 !important; }

/* Asimetrija Fix - Centriranje mjeseca i godine */
.flatpickr-current-month { 
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    left: 0 !important;
    padding: 0 !important;
    font-size: 16px !important; 
    font-weight: 600 !important; 
    color: #111 !important; 
}
.flatpickr-current-month .flatpickr-monthDropdown-months { 
    font-weight: 600; 
    color: #111; 
    appearance: none; 
    margin: 0 !important;
    padding: 0 !important;
}
.flatpickr-current-month input.cur-year { 
    font-weight: 600 !important; 
    color: #111 !important; 
    margin: 0 !important;
    padding: 0 !important;
}
.numInputWrapper { 
    width: 65px !important; 
    display: inline-block !important; 
}
.numInputWrapper span { display: none !important; }

.flatpickr-weekday { color: #888 !important; font-weight: 500 !important; font-size: 11px !important; text-transform: uppercase; }
.flatpickr-day { color: #333 !important; font-weight: 400 !important; border: none !important; border-radius: 50% !important; transition: all 0.2s !important; }
.flatpickr-day:hover { background: #f1f3f5 !important; color: #000 !important; }
.flatpickr-day.inRange { background: #f1f3f5 !important; border-color: #f1f3f5 !important; color: #111 !important; box-shadow: none !important; }

/* Aktivni datumi */
.flatpickr-day.selected, 
.flatpickr-day.startRange, 
.flatpickr-day.endRange {
    background: #189132 !important;
    border-color: #189132 !important;
    color: #fff !important;
    font-weight: 600 !important;
}

/* Prošli datumi posivljeni i ne-klikabilni */
.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover {
    color: #d3d3d3 !important;
    background: transparent !important;
    cursor: not-allowed !important;
}

.flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay { opacity: 0 !important; cursor: default !important;}

@media (max-width: 992px) {
    .search-fields-row { grid-template-columns: 1fr 1fr; }
    .flatpickr-calendar { width: 300px !important; }
    .booking-search-wrapper {
        padding: 20px 16px;
        max-width: 100%;
    }
}

@media (max-width: 600px) {
    .search-fields-row { grid-template-columns: 1fr; }
    .orbit-submit-btn { width: 100%; }
    .booking-search-wrapper {
        padding: 16px 12px;
        max-width: 100%;
        border-radius: 0;
    }
    .orbit-field-group {
        height: 44px;
    }
    /* Veći font na mobitelu da spriječi automatski zoom (iOS) */
    .orbit-field-group input[type="text"],
    .date-display-input,
    .select-selected {
        font-size: 16px !important;
        touch-action: manipulation;
    }
}
