/* YolunÜstü V2 — shared search controls normalization
 * One visual frame for canonical location fields + readable V2 search CTA.
 */
body.yu-v2-app .driver-search-location-field .canonical-location-search,
body.yu-v2-app .driver-search-location-field .canonical-location-search:focus-within{
    position:relative!important;
    width:100%!important;
    min-width:0!important;
    min-height:48px!important;
    height:48px!important;
    display:flex!important;
    align-items:center!important;
    padding:0 14px 0 42px!important;
    margin:0!important;
    border:1px solid #dbe7ef!important;
    border-radius:15px!important;
    background:#fff!important;
    box-shadow:none!important;
    box-sizing:border-box!important;
}

body.yu-v2-app .driver-search-location-field .canonical-location-search:focus-within{
    border-color:#8fd8b6!important;
    box-shadow:0 0 0 4px rgba(10,174,102,.10)!important;
}

body.yu-v2-app .driver-search-location-field .canonical-location-search>i{
    position:absolute!important;
    left:14px!important;
    top:50%!important;
    width:18px!important;
    height:18px!important;
    display:grid!important;
    place-items:center!important;
    margin:0!important;
    transform:translateY(-50%)!important;
    z-index:4!important;
    pointer-events:none!important;
    color:#71839a!important;
    font-size:14px!important;
}

body.yu-v2-app .driver-search-location-field .canonical-location-search-input,
body.yu-v2-app .driver-search-location-field .canonical-location-search-input:focus{
    flex:1 1 auto!important;
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    outline:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#09285c!important;
    font-size:13px!important;
    font-weight:650!important;
    line-height:1.25!important;
    appearance:none!important;
    -webkit-appearance:none!important;
}

body.yu-v2-app .driver-search-location-field .canonical-location-search-input::placeholder{
    color:#71839a!important;
    opacity:1!important;
}

body.yu-v2-app .driver-search-submit,
body.yu-v2-app .driver-search-submit:hover,
body.yu-v2-app .driver-search-submit:focus{
    background:#0aae66!important;
    border:0!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    text-shadow:none!important;
    box-shadow:0 8px 18px rgba(10,174,102,.20)!important;
}

body.yu-v2-app .driver-search-submit:hover{
    background:#087c4b!important;
}

body.yu-v2-app .driver-search-submit i{
    color:#fff!important;
}

@media(max-width:760px){
    body.yu-v2-app .driver-search-location-field .canonical-location-search,
    body.yu-v2-app .driver-search-location-field .canonical-location-search:focus-within{
        min-height:46px!important;
        height:46px!important;
        padding-left:40px!important;
        border-radius:14px!important;
    }
    body.yu-v2-app .driver-search-location-field .canonical-location-search>i{left:12px!important;}
}

/* FINAL PARITY PASS — passenger/search and driver/requests use one identical control skin. */
body.yu-v2-app .driver-search-page .driver-search-location-field .canonical-location-search,
body.yu-v2-app .driver-search-page .driver-search-location-field .canonical-location-search:focus-within{
    border-style:solid!important;
    border-width:1px!important;
    border-color:#dbe7ef!important;
    background-color:#fff!important;
    background-image:none!important;
    box-shadow:none!important;
    overflow:visible!important;
}

body.yu-v2-app .driver-search-page .driver-search-location-field .canonical-location-search-input,
body.yu-v2-app .driver-search-page .driver-search-location-field .canonical-location-search-input:focus{
    display:block!important;
    border:0!important;
    border-style:none!important;
    border-width:0!important;
    border-color:transparent!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-color:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    appearance:none!important;
    -webkit-appearance:none!important;
    -moz-appearance:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    padding:0 34px 0 0!important;
    margin:0!important;
}

body.yu-v2-app .driver-search-page .driver-search-submit,
body.yu-v2-app .driver-search-page .driver-search-submit:hover,
body.yu-v2-app .driver-search-page .driver-search-submit:focus,
body.yu-v2-app .driver-search-page .driver-search-submit:active{
    background:#0aae66!important;
    background-image:none!important;
    background-color:#0aae66!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    border:0!important;
    border-color:transparent!important;
    box-shadow:0 8px 18px rgba(10,174,102,.20)!important;
}
body.yu-v2-app .driver-search-page .driver-search-submit:hover,
body.yu-v2-app .driver-search-page .driver-search-submit:focus-visible{
    background:#087c4b!important;
    background-image:none!important;
    background-color:#087c4b!important;
}
body.yu-v2-app .driver-search-page .driver-search-submit i,
body.yu-v2-app .driver-search-page .driver-search-submit svg{
    color:#fff!important;
    fill:#fff!important;
}

@media(max-width:760px){
    body.yu-v2-app .driver-search-page .driver-search-location-field .canonical-location-search,
    body.yu-v2-app .driver-search-page .driver-search-location-field .canonical-location-search:focus-within{
        min-height:46px!important;
        height:46px!important;
        padding:0 12px 0 40px!important;
        border-radius:14px!important;
    }
}



/* SEARCH FORM WIDTH FIX — exactly five desktop controls, no phantom grid columns.
 * Order: origin | destination | date_from | date_to | submit.
 */
@media (min-width:1280px){
    body.yu-v2-app .driver-search-page .driver-search-form{
        display:grid!important;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) 150px 150px 170px!important;
        gap:10px!important;
        align-items:stretch!important;
        width:100%!important;
        min-width:0!important;
    }
    body.yu-v2-app .driver-search-page .driver-search-form > *{
        grid-column:auto!important;
        min-width:0!important;
        width:100%!important;
    }
}

/* LOCATION DROPDOWN OVERLAY FIX — passenger/search + driver/requests
 * The canonical location menu must escape the rounded hero and layer above results.
 */
body.yu-v2-app .driver-search-page .driver-search-hero{
    position:relative!important;
    overflow:visible!important;
    z-index:20!important;
}
body.yu-v2-app .driver-search-page .driver-search-form-wrap{
    position:relative!important;
    z-index:30!important;
}
body.yu-v2-app .driver-search-page .driver-search-location-field{
    position:relative!important;
    z-index:40!important;
}
body.yu-v2-app .driver-search-page .driver-search-location-field .canonical-location-menu{
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:calc(100% + 6px)!important;
    width:100%!important;
    max-width:100%!important;
    z-index:9999!important;
}

/* LOCATION DROPDOWN OPTION ARROW FIX — arrow belongs to each row's far right. */
body.yu-v2-app .driver-search-page .canonical-location-option{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
}
body.yu-v2-app .driver-search-page .canonical-location-option-copy{
    display:block!important;
    flex:1 1 auto!important;
    min-width:0!important;
    width:auto!important;
}
body.yu-v2-app .driver-search-page .canonical-location-option > i{
    position:static!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
    flex:0 0 18px!important;
    width:18px!important;
    min-width:18px!important;
    max-width:18px!important;
    height:18px!important;
    margin:0 0 0 auto!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:#71839a!important;
    font-size:11px!important;
    line-height:1!important;
}
