/* ==========================================================================
   assets/css/ek.css — main.css'i TAMAMLAYAN ek stiller
   --------------------------------------------------------------------------
   main.css, frontend projesindeki SCSS'ten derleniyor ve her build'de
   yeniden yazılıyor. Bu yüzden PHP tarafında sonradan ihtiyaç duyulan
   sınıflar oraya değil buraya eklenir. header.php main.css'ten SONRA yükler.
   ========================================================================== */

/* --- main.css'te bulunmayan satır kırpma --- */
.line-clamp-1 {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* --- Otomatik iç linkler (haber metnindeki etiket bağlantıları) --- */
.news-content a.ic-link {
    color: #0b2545;
    text-decoration: none;
    border-bottom: 1px dashed rgba(255, 140, 0, .6);
    font-weight: 600;
}
.news-content a.ic-link:hover {
    color: #FF8C00;
    border-bottom-style: solid;
}

/* --- Haber/sayfa içeriği tipografisi --- */
.news-content p          { margin-bottom: 1.1rem; }
.news-content h2,
.news-content h3         { font-weight: 800; color: #0b2545; margin: 1.75rem 0 .75rem; }
.news-content h2         { font-size: 1.3rem; }
.news-content h3         { font-size: 1.1rem; }
.news-content img        { max-width: 100%; height: auto; border-radius: .75rem; margin: 1rem 0; }
.news-content ul,
.news-content ol         { margin: 0 0 1.1rem 1.25rem; }
.news-content li         { margin-bottom: .4rem; }
.news-content blockquote {
    border-inline-start: 4px solid #FF8C00;
    padding: .5rem 0 .5rem 1rem;
    margin: 1.25rem 0;
    color: #4b5563;
    font-style: italic;
}
.news-content table      { width: 100%; margin-bottom: 1.25rem; border-collapse: collapse; }
.news-content th,
.news-content td         { border: 1px solid #e5e7eb; padding: .5rem .75rem; font-size: .9rem; }

/* --- Reklam alanı --- */
.reklam-alani            { min-height: 1px; }
.reklam-alani img        { max-width: 100%; height: auto; }

/* --- Ulaşım portalı sefer saatleri --- */
.sefer-saati {
    display: block;
    width: 100%;
    padding: .45rem .25rem;
    border-radius: .5rem;
    font-weight: 600;
    font-size: .8rem;
    text-align: center;
    border: 1px solid #e5e7eb;
    background: #fff;
    color: #1f2937;
}
.sefer-saati.gidis  { border-color: #cfe2ff; background: #f7faff; color: #0d6efd; }
.sefer-saati.donus  { border-color: #badbcc; background: #f4fbf7; color: #198754; }
.sefer-saati.gecti  { opacity: .4; text-decoration: line-through; }
.sefer-saati.siradaki {
    border-color: #FF8C00;
    background: #fff7ed;
    color: #b45309;
    box-shadow: 0 0 0 2px rgba(255, 140, 0, .18);
}

/* Bootstrap'te responsive kenarlık yardımcısı yok; md ve üstünde ayırıcı */
@media (min-width: 768px) {
    .border-md-end { border-inline-end: 1px solid #dee2e6; }
}

/* --- Haber bölümü katmanları --- */
.haber-kat-baslik {
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #9ca3af;
}
.haber-manset-buyuk { min-height: 340px; }
.haber-manset-kucuk { min-height: 160px; }

@media (max-width: 767.98px) {
    .haber-manset-buyuk { min-height: 240px; }
    .haber-manset-kucuk { min-height: 140px; }
}

/* --- RTL küçük düzeltmeler --- */
[dir="rtl"] .list-group-item,
[dir="rtl"] .breadcrumb { text-align: right; }
[dir="rtl"] .news-content ul,
[dir="rtl"] .news-content ol { margin: 0 1.25rem 1.1rem 0; }

/* =========================================================================
 * CANLI UÇUŞ PANOSU
 * -------------------------------------------------------------------------
 * İki sütun (iç/dış hat), her sütunun kendi gelen-giden anahtarı.
 * Satırlar bilerek sıkı: eski tasarımda beş geniş sütun sayfayı şişiriyordu.
 *
 * Yazı boyutu tek bir değişkenden yönetilir. Ziyaretçi A− / A+ ile
 * büyütünce yalnızca --ucus-yazi değişir, düzen bozulmaz.
 * ===================================================================== */

#ucus-paneli {
    --ucus-yazi:   0.82rem;   /* satır metni */
    --ucus-saat:   0.95rem;   /* saat sütunu biraz daha büyük */
    --ucus-kucuk:  0.68rem;   /* havayolu adı, IATA kodu */
    --ucus-satir:  0.42rem;   /* dikey iç boşluk */
}
#ucus-paneli[data-ucus-boyut="0"] { --ucus-yazi: .74rem; --ucus-saat: .84rem; --ucus-kucuk: .62rem; --ucus-satir: .32rem; }
#ucus-paneli[data-ucus-boyut="2"] { --ucus-yazi: .95rem; --ucus-saat: 1.15rem; --ucus-kucuk: .78rem; --ucus-satir: .58rem; }
#ucus-paneli[data-ucus-boyut="3"] { --ucus-yazi: 1.12rem; --ucus-saat: 1.4rem; --ucus-kucuk: .9rem;  --ucus-satir: .75rem; }

/* --- Sütun --- */
.ucus-sutun {
    background: #fff;
    border-radius: 1rem;
    box-shadow: 0 .125rem .25rem rgba(0, 0, 0, .06);
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.ucus-sutun-basi {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    padding: .7rem .9rem;
    border-bottom: 1px solid #eef1f5;
}
.ucus-sutun-ad {
    font-size: .95rem;
    font-weight: 800;
    color: #0b2545;
    margin: 0;
}

/* --- Gelen / Giden anahtarı --- */
.ucus-yon-secici { display: inline-flex; gap: 2px; background: #f1f3f7; border-radius: 999px; padding: 3px; }
.ucus-yon-dugme {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    border: 0;
    background: transparent;
    border-radius: 999px;
    padding: .28rem .7rem;
    font-size: .72rem;
    font-weight: 700;
    color: #64748b;
    cursor: pointer;
    transition: background .15s, color .15s;
}
.ucus-yon-dugme:hover { color: #0b2545; }
.ucus-yon-dugme.etkin { background: #0b2545; color: #fff; box-shadow: 0 1px 3px rgba(0, 0, 0, .18); }
.ucus-adet {
    font-size: .62rem;
    font-weight: 800;
    background: rgba(0, 0, 0, .1);
    border-radius: 999px;
    padding: .05rem .35rem;
    min-width: 1.15rem;
    text-align: center;
}
.ucus-yon-dugme.etkin .ucus-adet { background: rgba(255, 255, 255, .25); }

/* --- Tablo --- */
.ucus-liste { overflow-x: auto; }
.ucus-tablo { width: 100%; border-collapse: collapse; font-size: var(--ucus-yazi); }
.ucus-tablo thead th {
    font-size: var(--ucus-kucuk);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: #94a3b8;
    background: #f8fafc;
    padding: .45rem .7rem;
    border-bottom: 1px solid #eef1f5;
    text-align: left;
    white-space: nowrap;
}
.ucus-tablo tbody td {
    padding: var(--ucus-satir) .7rem;
    border-bottom: 1px solid #f4f6f9;
    vertical-align: middle;
}
.ucus-tablo tbody tr:last-child td { border-bottom: 0; }
.ucus-tablo tbody tr:hover { background: #fafbfd; }

.ucus-tablo .s-saat  { width: 1%; white-space: nowrap; }
.ucus-tablo .s-ucus  { width: 1%; white-space: nowrap; }
.ucus-tablo .s-durum { width: 1%; white-space: nowrap; text-align: right; }

/* --- Hücre içerikleri --- */
.ucus-saat     { font-weight: 800; font-size: var(--ucus-saat); color: #0b2545; font-variant-numeric: tabular-nums; }
.ucus-gecikme  { display: block; font-size: var(--ucus-kucuk); font-weight: 700; color: #b45309; font-variant-numeric: tabular-nums; }
.ucus-gecikme::before { content: "→ "; }
.ucus-yarin {
    display: inline-block;
    margin-left: .3rem;
    font-size: .58rem;
    font-weight: 700;
    color: #64748b;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    border-radius: .3rem;
    padding: 0 .3rem;
    vertical-align: middle;
}
.ucus-kod      { display: block; font-weight: 800; color: #f97316; font-variant-numeric: tabular-nums; }
.ucus-havayolu { display: block; font-size: var(--ucus-kucuk); color: #94a3b8; }
.ucus-sehir    { font-weight: 600; color: #1e293b; }
.ucus-iata     { font-size: var(--ucus-kucuk); color: #94a3b8; margin-left: .25rem; }
.ucus-iata::before { content: "("; }
.ucus-iata::after  { content: ")"; }

.ucus-tablo .badge { font-size: var(--ucus-kucuk); font-weight: 700; padding: .25em .5em; }
.ucus-bos { text-align: center; color: #94a3b8; padding: 2rem .7rem !important; font-size: var(--ucus-kucuk); }

/* --- Yazı boyutu seçici --- */
.ucus-boyut-secici { display: inline-flex; align-items: center; gap: 2px; }
.ucus-boyut-etiket { font-size: .68rem; color: #94a3b8; margin-right: .35rem; }
.ucus-boyut-secici button {
    border: 1px solid #e2e8f0;
    background: #fff;
    color: #64748b;
    border-radius: .4rem;
    width: 1.9rem;
    height: 1.9rem;
    line-height: 1;
    font-weight: 800;
    cursor: pointer;
    transition: background .15s, color .15s, border-color .15s;
}
.ucus-boyut-secici button:nth-of-type(1) { font-size: .68rem; }
.ucus-boyut-secici button:nth-of-type(2) { font-size: .82rem; }
.ucus-boyut-secici button:nth-of-type(3) { font-size: .98rem; }
.ucus-boyut-secici button:nth-of-type(4) { font-size: 1.15rem; }
.ucus-boyut-secici button:hover  { border-color: #cbd5e1; color: #0b2545; }
.ucus-boyut-secici button.etkin  { background: #0b2545; border-color: #0b2545; color: #fff; }

/* --- Alt bilgi --- */
.ucus-altbilgi { margin: .9rem 0 0; font-size: .7rem; color: #94a3b8; }
.ucus-altbilgi.bayat { color: #b45309; font-weight: 600; }

/* --- Mobil --- */
@media (max-width: 575.98px) {
    #ucus-paneli { --ucus-yazi: .78rem; --ucus-saat: .9rem; }
    .ucus-sutun-basi { padding: .6rem .7rem; }
    .ucus-tablo thead th,
    .ucus-tablo tbody td { padding-left: .5rem; padding-right: .5rem; }
    .ucus-yon-dugme span:not(.ucus-adet) { display: none; }  /* dar ekranda yalnızca ikon + sayı */
}

/* --- RTL --- */
[dir="rtl"] .ucus-tablo thead th,
[dir="rtl"] .ucus-tablo tbody td { text-align: right; }
[dir="rtl"] .ucus-tablo .s-durum { text-align: left; }
[dir="rtl"] .ucus-iata { margin-left: 0; margin-right: .25rem; }
[dir="rtl"] .ucus-gecikme::before { content: "← "; }
