/* EnFavori Seyahat — gerçek site için uygulama görünümlü responsive katman */
:root{
    --app-navy:#0d2138;
    --app-navy-2:#123354;
    --app-blue:#1487e8;
    --app-orange:#ff7518;
    --app-ink:#132238;
    --app-muted:#718096;
    --app-line:#e4eaf1;
    --app-soft:#f6f8fb;
    --app-shadow:0 14px 40px rgba(13,33,56,.10);
}

.mobile-app-topbar,.mobile-app-nav{display:none}

/* Footer — masaüstünde daha temiz ve kurumsal */
.site-footer-v2{
    background:linear-gradient(180deg,#0b1828 0%,#081522 100%)!important;
    padding:56px 0 24px!important;
}
.footer-v2-grid{
    grid-template-columns:minmax(300px,1.65fr) repeat(3,minmax(135px,.75fr))!important;
    gap:56px!important;
    align-items:start;
}
.footer-brand-v2 img{
    display:block!important;
    height:34px!important;
    max-width:205px!important;
    margin:0 0 16px!important;
}
.footer-brand-v2 .footer-section-name{
    display:block!important;
    margin:0 0 12px!important;
    color:#eef5fb!important;
    font-size:14px!important;
    font-weight:850!important;
}
.footer-brand-v2 p{
    margin:0!important;
    max-width:370px!important;
    color:#94a8bd!important;
    font-size:13px!important;
    line-height:1.75!important;
}
.footer-column-v2 strong{
    margin-bottom:16px!important;
    font-size:13px!important;
    letter-spacing:.02em;
}
.footer-column-v2 a{
    margin:10px 0!important;
    color:#9db0c4!important;
    transition:color .18s ease,transform .18s ease;
}
.footer-column-v2 a:hover{color:#fff!important;transform:translateX(2px)}
.footer-bottom-v2{
    margin-top:46px!important;
    padding-top:22px!important;
    color:#7890a8!important;
}

/* Mobil uygulama iskeleti */
@media(max-width:760px){
    html{background:#f4f6f9}
    body{
        background:#f6f8fb!important;
        padding-bottom:calc(72px + env(safe-area-inset-bottom));
        -webkit-tap-highlight-color:transparent;
    }

    .site-header{display:none!important}
    .site-footer-v2{display:none!important}

    .mobile-app-topbar{
        position:sticky;
        top:0;
        z-index:80;
        height:60px;
        padding:0 14px;
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
        background:rgba(255,255,255,.97);
        border-bottom:1px solid #e8edf3;
        backdrop-filter:blur(18px);
        -webkit-backdrop-filter:blur(18px);
    }
    .mobile-app-topbar.is-home{
        position:absolute;
        left:0;right:0;top:0;
        background:linear-gradient(180deg,rgba(7,24,42,.92),rgba(7,24,42,.10));
        border-bottom:0;
        color:#fff;
    }
    .mobile-app-brand{display:flex;align-items:center;gap:9px;min-width:0}
    .mobile-app-brand img{display:block;height:25px;width:auto;max-width:150px}
    .mobile-app-topbar.is-home .mobile-app-brand img{filter:brightness(0) invert(1)!important}
    .mobile-app-brand span{font-size:12px;font-weight:850;color:var(--app-navy)}
    .mobile-app-topbar.is-home .mobile-app-brand span{color:#fff}
    .mobile-top-title{min-width:0;flex:1}
    .mobile-top-title strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:1.1;color:var(--app-ink)}
    .mobile-top-title small{display:block;margin-top:3px;color:#7b8ba0;font-size:10.5px;font-weight:650}
    .mobile-icon-button{
        width:36px;height:36px;flex:0 0 36px;
        border:1px solid #e1e7ee;
        border-radius:50%;
        display:grid;place-items:center;
        background:#fff;color:var(--app-navy);
        font-size:18px;font-weight:800;
    }
    .mobile-app-topbar.is-home .mobile-icon-button{
        background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.22);color:#fff;
    }
    .mobile-top-actions{display:flex;align-items:center;gap:8px}

    .mobile-app-nav{
        position:fixed;
        left:0;right:0;bottom:0;
        z-index:100;
        height:calc(68px + env(safe-area-inset-bottom));
        padding:6px 7px env(safe-area-inset-bottom);
        display:grid;
        grid-template-columns:repeat(5,1fr);
        background:rgba(255,255,255,.98);
        border-top:1px solid #e1e7ee;
        box-shadow:0 -10px 30px rgba(13,33,56,.08);
        backdrop-filter:blur(18px);
        -webkit-backdrop-filter:blur(18px);
    }
    .mobile-app-nav a{
        min-width:0;
        display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
        color:#64748b;
        font-size:9.5px;font-weight:750;
    }
    .mobile-app-nav .nav-icon{width:22px;height:22px;display:grid;place-items:center;font-size:20px;line-height:1}
    .mobile-app-nav a.is-active{color:#0b83e6}

    /* Ana sayfa — görseldeki uygulama ana ekran mantığı */
    body.is-travel-home .travel-hero-v2{
        padding:92px 0 28px!important;
        min-height:auto;
        background:
            radial-gradient(circle at 82% 16%,rgba(46,167,255,.24),transparent 27%),
            radial-gradient(circle at 8% 74%,rgba(24,210,195,.13),transparent 28%),
            linear-gradient(155deg,#071b31 0%,#0c2b4c 58%,#123d64 100%)!important;
    }
    body.is-travel-home .travel-hero-v2:after{display:none}
    body.is-travel-home .travel-kicker{display:none}
    body.is-travel-home .travel-hero-v2 h1{
        max-width:290px;
        margin:0 0 10px!important;
        font-size:32px!important;
        line-height:1.06!important;
        letter-spacing:-1.2px!important;
    }
    body.is-travel-home .travel-hero-v2 .hero-lead{
        max-width:320px;
        font-size:13.5px!important;
        line-height:1.55!important;
        color:#dbe6f2!important;
    }
    body.is-travel-home .travel-search-v2{
        margin-top:26px!important;
        padding:10px!important;
        border-radius:22px!important;
        border:1px solid rgba(255,255,255,.22)!important;
        box-shadow:0 22px 55px rgba(0,0,0,.26)!important;
    }
    body.is-travel-home .travel-tabs-v2{display:none!important}
    body.is-travel-home .travel-search-form-v2[data-panel="flight"]{display:none!important}
    body.is-travel-home .travel-search-form-v2[data-panel="hotel"]{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
    body.is-travel-home .travel-search-form-v2[data-panel="hotel"] .search-control-v2:first-child,
    body.is-travel-home .travel-search-form-v2[data-panel="hotel"] .search-control-v2:nth-child(4),
    body.is-travel-home .travel-search-form-v2[data-panel="hotel"] .search-submit-v2{grid-column:1/-1}
    body.is-travel-home .search-control-v2{
        min-height:58px!important;
        padding:8px 10px!important;
        border-radius:13px!important;
    }
    body.is-travel-home .search-control-icon{display:none!important}
    body.is-travel-home .search-control-copy>span{font-size:9px!important}
    body.is-travel-home .search-control-v2 input,
    body.is-travel-home .search-control-v2 select{font-size:13.5px!important;font-weight:700!important}
    body.is-travel-home .search-submit-v2{
        min-height:54px!important;
        border-radius:13px!important;
        font-size:14px!important;
    }
    body.is-travel-home .travel-search-bottom{display:none!important}
    body.is-travel-home .home-section-v2{padding-top:34px!important;padding-bottom:34px!important}

    /* Otel liste ekranı — uygulama kart modeli */
    body.is-hotels-index .hotel-search-hero{display:none!important}
    body.is-hotels-index .hotel-results-shell{
        width:100%!important;
        padding:14px 12px 26px!important;
    }
    body.is-hotels-index .hotel-results-topbar{
        margin:0 0 12px!important;
        padding:0 0 12px!important;
        border-bottom:0!important;
    }
    body.is-hotels-index .breadcrumbs{display:none!important}
    body.is-hotels-index .hotel-results-topbar h2{
        font-size:21px!important;
        line-height:1.15!important;
        letter-spacing:-.55px!important;
    }
    body.is-hotels-index .hotel-results-topbar p{
        margin-top:4px!important;
        font-size:11px!important;
        color:#8290a2!important;
    }
    body.is-hotels-index .results-top-actions{
        margin-top:10px!important;
        display:flex!important;
        gap:7px!important;
        flex-wrap:nowrap!important;
        overflow-x:auto;
        scrollbar-width:none;
        padding-bottom:2px;
    }
    body.is-hotels-index .results-top-actions::-webkit-scrollbar{display:none}
    body.is-hotels-index .result-count{display:none!important}
    body.is-hotels-index .filter-mobile-button{
        display:inline-flex!important;
        min-height:38px!important;
        padding:0 13px!important;
        border-radius:10px!important;
        font-size:11.5px!important;
        white-space:nowrap;
    }
    body.is-hotels-index .sort-form{width:auto!important;min-width:max-content}
    body.is-hotels-index .sort-form label{
        min-height:38px!important;
        padding:0 10px!important;
        border-radius:10px!important;
        gap:6px!important;
    }
    body.is-hotels-index .sort-form label span{font-size:9px!important}
    body.is-hotels-index .sort-form select{font-size:11.5px!important}
    body.is-hotels-index .hotel-results-layout{display:block!important}

    body.is-hotels-index .hotel-filter-panel{
        position:fixed!important;
        left:0!important;right:0!important;bottom:0!important;top:auto!important;
        z-index:120!important;
        max-height:78vh!important;
        overflow-y:auto!important;
        border-radius:24px 24px 0 0!important;
        border:1px solid #dfe6ee!important;
        box-shadow:0 -24px 70px rgba(6,25,45,.24)!important;
        transform:translateY(110%);
        display:block!important;
        visibility:hidden;
        transition:transform .22s ease,visibility .22s ease;
    }
    body.is-hotels-index .hotel-filter-panel.is-open{transform:translateY(0);visibility:visible}
    body.is-hotels-index .hotel-filter-panel form{padding:20px 16px 26px!important}
    body.is-hotels-index .filter-panel-head strong{font-size:20px!important}
    body.is-hotels-index .filter-apply-button{
        position:sticky;bottom:0;z-index:2;
        min-height:50px!important;
        border-radius:13px!important;
        background:var(--app-navy)!important;
    }

    body.is-hotels-index .hotel-results{gap:10px!important}
    body.is-hotels-index .hotel-card-pro{
        display:grid!important;
        grid-template-columns:42% minmax(0,58%)!important;
        grid-template-rows:auto auto!important;
        min-height:178px!important;
        border-radius:17px!important;
        overflow:hidden!important;
        background:#fff!important;
        border:1px solid #e2e8f0!important;
        box-shadow:0 7px 22px rgba(13,33,56,.055)!important;
    }
    body.is-hotels-index .hotel-card-pro .hotel-media{
        grid-column:1!important;
        grid-row:1/3!important;
        min-height:178px!important;
        height:100%!important;
        border-radius:0!important;
    }
    body.is-hotels-index .hotel-card-pro .compare-badge{display:none!important}
    body.is-hotels-index .hotel-card-pro .hotel-body{
        grid-column:2!important;
        grid-row:1!important;
        padding:12px 11px 7px!important;
        min-width:0;
    }
    body.is-hotels-index .hotel-card-pro .hotel-heading{gap:6px!important}
    body.is-hotels-index .hotel-card-pro .hotel-heading h3{
        margin:3px 0 0!important;
        font-size:15.5px!important;
        line-height:1.18!important;
        letter-spacing:-.3px!important;
    }
    body.is-hotels-index .hotel-card-pro .stars{font-size:10px!important;letter-spacing:.5px!important}
    body.is-hotels-index .hotel-card-pro .favorite-button{
        width:31px!important;height:31px!important;flex:0 0 31px!important;font-size:18px!important;
    }
    body.is-hotels-index .hotel-card-pro .hotel-location{
        margin:8px 0 0!important;
        font-size:10.5px!important;
        line-height:1.25!important;
    }
    body.is-hotels-index .hotel-card-pro .hotel-address{
        margin:6px 0 0!important;
        font-size:9.5px!important;
        line-height:1.35!important;
        display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
    }
    body.is-hotels-index .hotel-card-pro .amenity-row,
    body.is-hotels-index .hotel-card-pro .hotel-trust-row{display:none!important}
    body.is-hotels-index .hotel-card-pro .hotel-action{
        grid-column:2!important;
        grid-row:2!important;
        padding:8px 11px 11px!important;
        border:0!important;
        border-top:1px solid #eef2f6!important;
        background:#fff!important;
        align-items:flex-start!important;
        justify-content:flex-start!important;
        text-align:left!important;
        gap:3px!important;
    }
    body.is-hotels-index .hotel-card-pro .hotel-action small{font-size:9px!important}
    body.is-hotels-index .hotel-card-pro .hotel-price{font-size:17px!important;line-height:1.1!important}
    body.is-hotels-index .hotel-card-pro .positive-note,
    body.is-hotels-index .hotel-card-pro .provider-note{display:none!important}
    body.is-hotels-index .hotel-card-pro .primary-action,
    body.is-hotels-index .hotel-card-pro .secondary-action{
        width:100%!important;
        min-height:38px!important;
        margin-top:6px!important;
        padding:8px 9px!important;
        border-radius:10px!important;
        font-size:10.5px!important;
    }
    body.is-hotels-index .hotel-pagination{
        margin-top:16px!important;
        padding:0!important;
        justify-content:center!important;
        gap:8px!important;
    }
    body.is-hotels-index .hotel-pagination .secondary-action{padding:9px 11px!important;font-size:11px!important}
    body.is-hotels-index .hotel-pagination>span{font-size:11px!important}

    /* Otel detay — görseldeki fotoğraf üstte, fiyat hemen altında */
    body.is-hotel-detail .hotel-detail-header{display:none!important}
    body.is-hotel-detail .hotel-detail-grid-section{
        width:100%!important;
        padding:0 0 24px!important;
    }
    body.is-hotel-detail .hotel-gallery{
        height:300px!important;
        margin:0!important;
        border-radius:0!important;
        grid-template-columns:1fr!important;
    }
    body.is-hotel-detail .hotel-gallery-side{display:none!important}
    body.is-hotel-detail .hotel-gallery-main{position:relative}
    body.is-hotel-detail .mobile-hotel-title{
        display:block!important;
        padding:17px 16px 14px;
        background:#fff;
        border-bottom:1px solid #e8edf3;
    }
    .mobile-hotel-title{display:none}
    body.is-hotel-detail .mobile-hotel-title .stars{font-size:12px!important}
    body.is-hotel-detail .mobile-hotel-title-row{display:flex;align-items:flex-start;gap:10px;justify-content:space-between}
    body.is-hotel-detail .mobile-hotel-title h1{
        margin:5px 0 7px!important;
        font-size:24px!important;
        line-height:1.08!important;
        letter-spacing:-.75px!important;
    }
    body.is-hotel-detail .mobile-hotel-title p{margin:0!important;color:#718096!important;font-size:11.5px!important;line-height:1.45!important}
    body.is-hotel-detail .hotel-detail-layout{
        display:flex!important;
        flex-direction:column!important;
        gap:12px!important;
        padding:12px!important;
    }
    body.is-hotel-detail .hotel-offer-panel{
        order:1!important;
        width:100%!important;
        position:static!important;
        border-radius:17px!important;
        box-shadow:0 7px 24px rgba(13,33,56,.07)!important;
    }
    body.is-hotel-detail .hotel-detail-main{order:2!important;gap:12px!important}
    body.is-hotel-detail .offer-panel-head{padding:16px!important}
    body.is-hotel-detail .offer-panel-head h2{font-size:20px!important}
    body.is-hotel-detail .offer-panel-head p{font-size:11px!important}
    body.is-hotel-detail .provider-offer-list{padding:10px!important}
    body.is-hotel-detail .provider-offer-card{padding:13px!important;border-radius:13px!important}
    body.is-hotel-detail .provider-offer-price strong{font-size:22px!important}
    body.is-hotel-detail .provider-offer-card .primary-action{min-height:46px!important;border-radius:11px!important;font-size:12px!important}
    body.is-hotel-detail .detail-card{padding:18px!important;border-radius:17px!important}
    body.is-hotel-detail .detail-card-heading h2{font-size:20px!important}
    body.is-hotel-detail .detail-copy{font-size:12px!important;line-height:1.6!important}
    body.is-hotel-detail .detail-amenities{grid-template-columns:1fr 1fr!important;gap:7px!important}
    body.is-hotel-detail .detail-amenities span{padding:9px!important;font-size:10.5px!important}

    /* Diğer travel ekranlarında da app kabuğu */
    main{min-height:calc(100vh - 128px)}
}

@media(max-width:390px){
    body.is-hotels-index .hotel-card-pro{grid-template-columns:39% minmax(0,61%)!important}
    body.is-hotels-index .hotel-card-pro .hotel-heading h3{font-size:14.5px!important}
    body.is-hotels-index .hotel-card-pro .hotel-price{font-size:16px!important}
    body.is-travel-home .travel-hero-v2 h1{font-size:30px!important}
}
