/* ===================================
   OBILET WIDGET - NON-KRİTİK CSS
   DOSYA OLARAK YÜKLENİR
   =================================== */

/* Hover & Focus States */
.city-input:hover,
.date-input-display:hover{
    border-color:#d23b38;
}

.city-input:focus,
.date-input-display:focus{
    outline:none;
    border-color:#d23b38;
    box-shadow:0 0 0 3px rgba(210,59,56,0.1);
}

/* Date Input System */
.date-input-wrapper{
    position:relative;
    display:block;
}

.date-input-real{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    opacity:0;
    cursor:pointer;
    z-index:5;
    pointer-events:auto;
    margin:0;
    padding:12px 14px;
    border:none;
}

.date-input-real::-webkit-calendar-picker-indicator{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    margin:0;
    padding:0;
    opacity:0;
    cursor:pointer;
}

.date-input-real::-webkit-clear-button,
.date-input-real::-webkit-inner-spin-button{
    display:none;
    -webkit-appearance:none;
}

input[type="date"]::-webkit-datetime-edit-fields-wrapper,
input[type="date"]::-webkit-datetime-edit-text,
input[type="date"]::-webkit-datetime-edit-month-field,
input[type="date"]::-webkit-datetime-edit-day-field,
input[type="date"]::-webkit-datetime-edit-year-field{
    display:none;
}

.date-input-display{
    padding:12px 40px 12px 14px;
    position:relative;
    z-index:1;
    pointer-events:none;
}

.date-icon{
    position:absolute;
    right:14px;
    top:50%;
    transform:translateY(-50%);
    font-size:16px;
    color:#666;
    pointer-events:none;
    z-index:2;
}

/* City Dropdown */
.city-input-wrapper{
    position:relative;
}

.city-dropdown{
    position:absolute;
    top:calc(100% + 6px);
    left:0;
    right:0;
    background:#fff;
    border:2px solid #d23b38;
    border-radius:8px;
    max-height:300px;
    overflow-y:auto;
    z-index:9999;
    display:none;
    box-shadow:0 8px 24px rgba(0,0,0,0.15);
    animation:slideDown 0.3s ease;
}

@keyframes slideDown{
    from{opacity:0;transform:translateY(-10px)}
    to{opacity:1;transform:translateY(0)}
}

.city-dropdown.show{
    display:block;
}

.dropdown-search{
    position:sticky;
    top:0;
    background:#f8f9fa;
    padding:10px;
    border-bottom:1px solid #e0e0e0;
}

.dropdown-search input{
    width:100%;
    padding:8px 10px;
    border:1px solid #ddd;
    border-radius:6px;
    font-size:14px;
}

.dropdown-search input:focus{
    outline:none;
    border-color:#d23b38;
}

.dropdown-section{
    padding:6px 0;
}

.dropdown-section-title{
    padding:6px 14px;
    font-size:11px;
    font-weight:600;
    color:#999;
    text-transform:uppercase;
    letter-spacing:0.5px;
}

.dropdown-item{
    padding:10px 14px;
    cursor:pointer;
    transition:background 0.2s ease;
}

.dropdown-item:hover{
    background:#f8f9fa;
}

.no-results{
    padding:20px;
    text-align:center;
    color:#999;
}

/* Swap Button Animations */
.swap-button{
    transition:all 0.3s ease;
}

.swap-button:hover{
    color:#d23b38;
    border-color:#d23b38;
    transform:rotate(180deg);
    box-shadow:0 4px 12px rgba(210,59,56,0.2);
}

.swap-button:active{
    transform:rotate(180deg) scale(0.95);
}

/* Mobile Swap Button */
@media (max-width:767px){
    .swap-button:hover{
        transform:rotate(90deg);
    }
}

/* Date Quick Buttons */
.date-quick-btn{
    transition:all 0.3s ease;
}

.date-quick-btn:hover{
    background:#fff;
    border-color:#d23b38;
    color:#d23b38;
}

/* Search Button */
.search-button{
    transition:all 0.3s ease;
}

.search-button:hover{
    transform:translateY(-2px);
    box-shadow:0 6px 20px rgba(210,59,56,0.4);
}

.search-button:active{
    transform:translateY(0);
}

/* Error Message */
.error-message{
    background:#fee;
    border-left:4px solid #d23b38;
    padding:10px;
    border-radius:4px;
    margin-top:8px;
    font-size:13px;
    color:#d23b38;
    display:none;
    animation:shake 0.3s ease;
}

@keyframes shake{
    0%,100%{transform:translateX(0)}
    25%{transform:translateX(-5px)}
    75%{transform:translateX(5px)}
}

.error-message.show{
    display:block;
}

/* Loading State */
.loading{
    pointer-events:none;
    opacity:0.6;
}

.loading .search-button::after{
    content:'';
    display:inline-block;
    width:14px;
    height:14px;
    border:2px solid rgba(255,255,255,0.3);
    border-top-color:#fff;
    border-radius:50%;
    margin-left:8px;
    animation:spin 0.6s linear infinite;
}

@keyframes spin{
    to{transform:rotate(360deg)}
}

/* Mobile Adjustments */
@media (max-width:767px){
    .form-group{margin-bottom:0}
    .search-button{margin-top:5px}
}
