/* =========================================================
   TuristulLiber — Cautarea din header + autocomplete (endpoint REST tl/v1/search/suggest)
   Prefix: tls- . Stil aliniat cu pagina de rezultate (srh-): pill alb, verde #69b706, Oswald / Open Sans.
   ========================================================= */

/* ---------- Bara de cautare (containerul .Header__Search vine din tema) ---------- */
.Header__Search form.tls-form{ position:relative; }
.Header__Search .tls-form .input-group{ position:relative; flex-wrap:nowrap; align-items:center; }
.Header__Search .tls-ico{ position:absolute; left:18px; top:50%; transform:translateY(-50%); z-index:16; color:#69b706; font-size:18px; pointer-events:none; }

/* !important doar unde regulile vechi din general.css il folosesc deja (height, box-shadow, colturi) */
.Header__Search .tls-input{
    width:100%; height:52px !important; padding:0 52px 0 46px; border:2px solid transparent; border-radius:52px !important; background:#fff;
    font-family:'Open Sans', sans-serif; font-size:16px; /* 16px: iOS nu face zoom la focus */ color:#363636;
    box-shadow:0 10px 30px rgba(0,0,0,.16) !important; -webkit-appearance:none; appearance:none; transition:border-color .2s ease, box-shadow .2s ease;
}
.Header__Search .tls-input:focus{ background:#fff; border-color:#69b706; outline:0; box-shadow:0 12px 34px rgba(105,183,6,.28) !important; }
.Header__Search .tls-input::-webkit-search-cancel-button{ display:none; }
.Header__Search .tls-input::placeholder{ color:#9a9a9a; }
.Header__Search .tls-form .input-group-append{ position:absolute; right:8px; top:50%; transform:translateY(-50%); z-index:16; margin:0; }
.Header__Search .tls-form .input-group-append a.sClose{
    position:static; display:flex; align-items:center; justify-content:center; width:34px; height:34px; padding:0; border-radius:50%;
    background:#f0f2f5 !important; transition:background .2s ease;
}
.Header__Search .tls-form .input-group-append a.sClose:hover{ background:#e3e7ec !important; }
.Header__Search .tls-form .input-group-append a.sClose i{ font-size:12px; color:#6b6b6b; }

/* ---------- Lista de sugestii ---------- */
.tls-list{
    position:absolute; left:0; right:0; top:calc(100% + 8px); bottom:auto; z-index:120; background:#fff; border-radius:20px; overflow:hidden auto;
    border:1px solid #eef0f4; box-shadow:0 18px 44px rgba(0,0,0,.18); max-height:min(80vh, 520px); overscroll-behavior:contain; text-align:left;
}
.tls-list[hidden]{ display:none; }
.tls-list.is-loading{ opacity:.65; }

.tls-item{ display:flex; align-items:center; gap:12px; padding:10px 16px; color:inherit; text-decoration:none; border-bottom:1px solid #f4f5f7; cursor:pointer; }
.tls-item:hover, .tls-item.is-active{ background:#f3f9ec; color:inherit; text-decoration:none; }
.tls-img{ flex-shrink:0; width:46px; height:46px; border-radius:12px; overflow:hidden; background:#69b706 center/cover no-repeat; display:flex; align-items:center; justify-content:center; color:#fff; font-size:20px; }
.tls-main{ flex:1; min-width:0; display:flex; flex-direction:column; gap:1px; }
.tls-title{ flex:1; min-width:0; font-family:'Open Sans', sans-serif; font-size:14.5px; font-weight:600; line-height:1.35em; color:#363636; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.tls-type{ display:inline-flex; align-items:center; gap:5px; font-family:'Oswald', sans-serif; font-size:10.5px; font-weight:600; text-transform:uppercase; letter-spacing:.05em; color:#4f8f0a; }
.tls-list mark{ background:#fff1bf; color:inherit; padding:0 1px; border-radius:3px; }

.tls-all{ justify-content:center; gap:6px; font-family:'Oswald', sans-serif; font-size:13px; font-weight:600; text-transform:uppercase; letter-spacing:.05em; color:#4f8f0a; border-bottom:0; background:#fafcf7; }
.tls-all i{ font-size:11px; }
.tls-empty{ padding:18px 16px; text-align:center; color:#9a9a9a; font-family:'Open Sans', sans-serif; font-size:14px; }

/* Cautari recente (bara goala, la focus) */
.tls-head{ display:flex; align-items:center; justify-content:space-between; padding:12px 16px 6px; font-family:'Oswald', sans-serif; font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.06em; color:#9a9a9a; }
.tls-clear{ border:0; background:none; cursor:pointer; padding:2px 4px; color:#9a9a9a; font-family:'Open Sans', sans-serif; font-size:12px; text-transform:none; letter-spacing:0; text-decoration:underline; }
.tls-clear:hover{ color:#4f8f0a; }
.tls-item--recent{ padding:9px 16px; }
.tls-item--recent i{ color:#b4bcc6; font-size:15px; width:22px; text-align:center; flex-shrink:0; }
.tls-item--recent:last-child{ border-bottom:0; }

/* ---------- Desktop: panou plutitor in dreapta, centrat vertical pe bara de navigare ---------- */
@media (min-width:992px){
    .Header__Search{ top:9px; right:15px; left:auto; min-width:0; width:min(480px, calc(100% - 30px)); border-top:0; }
}

/* ---------- Mobil / tableta: bara pe toata latimea, sub gutter ---------- */
@media (max-width:991px){
    .Header__Search{ top:0; left:0; right:0; min-width:100%; padding:9px 12px; background:#fff; border-top:0; box-shadow:0 8px 18px rgba(0,0,0,.12); }
    .Header__Search .tls-input{ height:48px !important; box-shadow:none !important; background:#f6f8fb; }
    .Header__Search .tls-input:focus{ box-shadow:none !important; }
    .Header__Search .tls-list{ left:0; right:0; top:100%; border-radius:0 0 18px 18px; border-top:1px solid #eef0f4; max-height:calc(100vh - 140px); }
    .tls-list{ box-shadow:0 18px 30px rgba(0,0,0,.14); }
}
@media (prefers-reduced-motion:reduce){ .Header__Search .tls-input{ transition:none; } }
