/* Sayfa arka planını sabitleyin */
html, body {
    height: 100%;
    margin: 0;
    /* Çok daha açık ve ferah bir ton geçişi */
    background: linear-gradient(135deg, #ffffff 0%, #E8EEF2 100%);
    background-attachment: fixed;
    -webkit-font-smoothing: antialiased;
}

/* Sayfa sarmalayıcısını tam ekran yapın */
.page-wrapper {
    display: flex;
    flex-direction: column;
    min-height: 80vh; /* Bu satır çok kritik */
}

/* İçeriğin kalan alanı kaplamasını sağlar */
.main-content { 
    flex: 1 0 auto; 
    display: flex; /* İçeriği dikeyde de merkezlemek için */
    align-items: center; 
    justify-content: center;
}

footer { 
    flex-shrink: 0; 
    background: linear-gradient(135deg, #ffffff 0%, #E8EEF2 100%);
}

/* --- Bileşenler ve Kartlar --- */
.sidebar-sticky { position: sticky; top: 20px; }
.logo-img { width: 100%; }

.result-card { transition: 0.3s; border-left: 5px solid #0d6efd; border-radius: 12px; }
.result-card:hover { transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,0,0,0.1) !important; }

.logo-container { 
    flex: 0 0 130px; height: 130px; display: flex; align-items: center; 
    justify-content: center; border: 1px solid #dee2e6; border-radius: 12px; 
    padding: 8px; box-shadow: 0 2px 4px rgba(0,0,0,0.05); 
}
.logo-container img { max-width: 100%; max-height: 100%; object-fit: contain; }

/* --- Form ve Arama --- */
.search-input.ana {
    border: 2px solid #ddd !important;
    padding: 15px 25px !important;
    transition: all 0.3s ease;
    line-height: 1.5;
    outline: none; /* Tarayıcının kendi mavi çerçevesini gizler */
}

.search-input.ana:focus {
    /* Buradaki renk kodunu kendi istediğiniz renkle değiştirin */
    border-color: #06375F !important; 
    
    /* Box-shadow rengini de border rengine uygun yapalım */
    box-shadow: 0 0 15px rgba(6, 55, 95, 0.2) !important; 
}

.brand-title { font-size: 2.9rem; font-weight: 800; color: #06375F; letter-spacing: -1px; }
.brand-title .text { color: #1C86AE; }

.brand-aciklama {
  max-width: 600px;
  width: 100%;       /* Mobil ekranlarda tam genişlik kaplamasını sağlar */
  padding-left: 1rem;      /* Kenarlardan taşmayı önlemek için güvenli boşluk */
  padding-right: 1rem;
  font-size: 0.95rem;      /* Mobilde daha okunabilir bir yazı boyutu */
  line-height: 1.5;        /* Satır aralığını ferahlatır */
  box-sizing: border-box;  /* Padding'in genişliğe dahil olmasını sağlar */
}

/* Küçük telefon ekranları için ekstra iyileştirme (İsteğe bağlı) */
@media (max-width: 1024px) {
  .brand-aciklama {
    font-size: 0.8rem;     
  }
}

.auth-card { border: none; border-radius: 20px; box-shadow: 0 10px 25px rgba(0,0,0,0.1); overflow: hidden; }
.form-control { border-radius: 10px; padding: 12px; border: 1px solid #e0e0e0; }

/* --- Butonlar --- */
.btn-primary.btn-isrt {
    font-weight: 600;
    background-color: #0885BE;
    border: 1px solid #0885BE;
    color: #FFFFFF;
    border-radius: 4px;
    cursor: pointer;
    transition: background 0.3s ease;
}
.btn-primary.btn-isrt:hover { background-color: #084a80; }

.btn-outline-primary.btn-outline-isrt {
    color: #0885BE;
    background-color: transparent;
    border: 1px solid #0885BE;
}
.btn-outline-primary.btn-outline-isrt:hover {
    color: #FFFFFF;
    background-color: #0885BE;
    border-color: #0885BE;
}
.btn-outline-primary.btn-outline-isrt:active {
    background-color: #06375F !important;
    border-color: #06375F !important;
}

/* --- Pagination ve Yardımcı --- */
.text-primary.text-isrt { color: #0885BE !important; }
.page-link { color: #0d6efd; font-weight: 500; }
.page-item.active .page-link { background-color: #06375F; border-color: #06375F; color: white; }
.card .sponsor { font-size: 12px; display: inline-flex; align-items: center; vertical-align: middle; }

/* --- Responsive (Mobil) --- */
@media (max-width: 767px) {
    .result-card .card-body { flex-direction: column !important; text-align: center; }
    .logo-container { display: flex !important; margin-bottom: 15px; justify-content: center; }
    .result-card .border-end { border-right: none !important; padding-right: 0 !important; margin-bottom: 15px; }
    .result-card .ps-4 { padding-left: 0 !important; width: 100% !important; }
    .logo-img { width: 80%; }
    .brand-title { font-size: 1.8rem !important; white-space: nowrap; line-height: 18px; }
    .brand-aciklama { font-size: 0.9rem !important; white-space: nowrap; }
    .giris-title { white-space: nowrap; }
    
    .hero-gradient {
        padding: 1.5rem !important;
        border-radius: 16px !important;
    }
    .firm-logo-wrapper {
        width: 100px !important;
        height: 100px !important;
        margin: 0 auto;
    }
    .firm-title-main {
        font-size: 1.25rem !important;
        word-break: break-word;
    }
    .elite-card {
        padding: 1.25rem !important;
        border-radius: 14px !important;
    }
}

.icon-box { 
    width: 50px; 
    height: 50px; 
    min-width: 50px; /* Esnemeyi engellemek için */
    display: flex; 
    align-items: center; 
    justify-content: center;
    border-radius: 50%; /* Tam yuvarlak olması için 50% yapın */
    font-size: 1.2rem;
    flex-shrink: 0; /* Kutunun sıkışmasını engeller */
}

/* --- Belli Belirsiz Soluk Mavi Sponsorlu Kart Tasarımı --- */
.result-card.sponsor-bg {
    background: linear-gradient(135deg, #ffffff 0%, #f7f9fc) !important; /* Neredeyse tamamen beyaz, fark edilmeyecek kadar soluk mavi geçişi */
    border: 1px solid #edf1f7 !important; /* Çok zayıf çerçeve */
    border-left: 5px solid #c8d8eb !important; /* Sol çizgi maximum derecede soluklaştırıldı */
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03) !important; /* Standart normal kart gölgesine yaklaştırıldı */
    position: relative;
    overflow: hidden;
}

/* Kartın üzerine gelindiğinde (hover) hafif vurgu */
.result-card.sponsor-bg:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.08) !important;
}

/* Öne çıkan / Sponsor rozeti ve içindeki ikonlar */
.result-card.sponsor-bg .badge,
.sponsor-bg .badge.bg-warning {
    background: linear-gradient(135deg, #f4f8fc 0%, #c8d8eb) !important;
    color: #444444 !important; /* Çok koyu olmayan soft gri yazı */
    font-weight: 600;
    padding: 6px 12px;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.03);
}

.result-card.sponsor-bg .badge i,
.result-card.sponsor-bg .badge svg,
.sponsor-bg .badge.bg-warning i,
.sponsor-bg .badge.bg-warning svg {
    color: #444444 !important;
    fill: #444444 !important;
}

.elite-card { 
    background: linear-gradient(135deg, #ffffff 0%, #f0f7ff) !important; 
    border-radius: 24px; 
    box-shadow: 0 10px 40px rgba(0,0,0,0.05);
    border: 1px solid #cce3f3 !important; 
    transition: transform 0.4s ease;
}

.hero-gradient { 
    background: linear-gradient(135deg, #0885BE 0%, #06375F) !important; 
    border-radius: 32px; 
    color: white;
}

.status-pill { background: rgba(255,255,255,0.8); backdrop-filter: blur(5px); }

/* Inputlara genişlik ve şıklık katar */
.form-control, .form-select {
    padding: 0.8rem 1rem !important;
    border-radius: 0.75rem !important;
    font-size: 0.95rem;
}

/* Etiket kutusu için genişletilmiş alan */
#input-tag-wrapper {
    padding: 0.5rem 1rem !important;
    border-radius: 0.75rem !important;
    min-height: 50px !important;
}

/* Input alanlarını daha belirgin yapalım */
.form-control, .form-select, #input-tag-wrapper {
    background-color: #f1f3f5 !important; /* Çok hafif koyulaştırılmış bir gri */
    border: 1px solid #dee2e6 !important; /* Hafif bir kenarlık ekler */
    transition: all 0.3s ease;
}

/* Tıklandığında (focus) mavi vurgu */
.form-control:focus, .form-select:focus, #input-tag-wrapper:focus-within {
    background-color: #ffffff !important;
    border-color: #0d6efd !important;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.1);
}

.mobile-filter-fixed {
    position: fixed !important;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    z-index: 1040;
    border-radius: 0 50px 50px 0 !important;
    padding: 12px 16px !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.2) !important;
}

/* Checkbox'ı daha belirgin ve profesyonel yapan stil */
.custom-checkbox {
    width: 1.2rem !important;
    height: 1.2rem !important;
    border: 1px solid #0d6efd !important; /* Mavi çerçeve */
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}

/* Checkbox'ın üzerine gelince biraz büyümesi/parlaması */
.custom-checkbox:hover {
    border-color: #055160 !important;
    box-shadow: 0 0 5px rgba(13, 110, 253, 0.5);
}

.responsive-lead {
    /* 0.9rem (en küçük), 1.25rem (ideal), 1.3rem (en büyük ekranlar için) */
    font-size: clamp(0.9rem, 1.2vw + 0.5rem, 1.3rem);
    line-height: 1.6;
}

@media (max-width: 576px) {
    /* Input grubunu yan yana sabitleyip alt alta kaymasını önler */
    .input-group.input-group-lg {
        flex-wrap: nowrap !important;
    }
    
    /* Buton boyutunu ve iç boşluğunu mobile uygun hale getirir */
    .input-group-lg > .btn { 
        padding: 0.5rem 0.75rem !important; 
        font-size: 0.9rem !important;
        white-space: nowrap !important;
    }
    
    /* Input yazı boyutunu küçülterek taşmayı engeller */
    .input-group-lg > .form-control { 
        font-size: 0.9rem !important; 
        height: auto !important;
    }
}

/* Hover efekti */
.hover-shadow:hover { 
    box-shadow: 0 4px 6px rgba(0,0,0,0.1); 
}

/* Sadece mobilde (576px ve altı) yatay kaydırma aktif olsun */
@media (max-width: 576px) {
    #popular-tags-container {
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none; /* Firefox için kaydırma çubuğunu gizle */
        -ms-overflow-style: none; /* IE ve Edge için */
        padding-bottom: 5px;
    }
    
    /* Chrome, Safari ve Opera için kaydırma çubuğunu gizle */
    #popular-tags-container::-webkit-scrollbar {
        display: none;
    }
}

#searchInput:focus {
    box-shadow: none !important;
    border-color: #dee2e6 !important; /* Mevcut border rengini korur */
}