/* =============================================================================
   APP GLOBAL STYLES
   -----------------------------------------------------------------------------
   Inline `<style>`'dan dış dosyaya taşınan global kurallar.
   `?v=filemtime` cache buster ile yüklenir → değişiklik anında yansır.
   ============================================================================= */


/* -----------------------------------------------------------------------------
   1) iOS Safari ZOOM ÖNLEME
----------------------------------------------------------------------------- */
@media (max-width: 767.98px) {
    input[type="text"],
    input[type="search"],
    input[type="email"],
    input[type="tel"],
    input[type="url"],
    input[type="password"],
    input[type="number"],
    input[type="date"],
    input[type="datetime-local"],
    input[type="month"],
    input[type="time"],
    input[type="week"],
    select,
    textarea,
    .form-control,
    .form-select {
        font-size: 16px !important;
    }
}


/* -----------------------------------------------------------------------------
   2) CALENTIM TAKVİM SAAT/RANGE PANELİ KAPAT
----------------------------------------------------------------------------- */
.calentim-timepickers,
.calentim-timepicker,
.calentim-timepicker-start,
.calentim-timepicker-end,
.calentim-hour-minute-seperator,
.calentim-ranges,
.calentim-right,
.calentim-range-header-container,
.calentim-range-header,
.calentim-range {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}
.calentim-input.calentim-input-vertical-range .calentim-left { width: 100% !important; }


/* -----------------------------------------------------------------------------
   3) MOBİL ALT SABİT BAR (.mobile-bottom) — FOOTER ÇAKIŞMASI ÇÖZÜMÜ
   -----------------------------------------------------------------------------
   `.mobile-bottom`: position:fixed; bottom:10px; height:44px; z-index:22.
   Yani viewport altından 54px alanı kaplar.

   Önceki çözümlerde body padding-bottom denenmişti ama main.css/style-768.css
   içinde body için yüksek specificity'li kurallar olabilir → override riski.

   YENİ STRATEJİ — 3 katmanlı, BİRBİRİNDEN BAĞIMSIZ:

     (a) FOOTER'A DOĞRUDAN PADDING-BOTTOM:
         `footer .bg-white:last-child` → footer'ın son beyaz bloğuna 90px
         padding ekleyerek son satırın görünmesini garantiler. Body'ye değil
         footer'a doğrudan ekliyoruz → specificity yüksek, override yok.

     (b) BODY PADDING-BOTTOM (yedek katman):
         body altına ek 20px güvenlik. (a) kuralı yetmezse devreye girer.

     (c) JS — INTERSECTIONOBSERVER:
         `<footer>` ekrana girer girmez `.mobile-bottom` barı fade-out olur.
         Kullanıcı footer'ı okurken bar tamamen kaybolur.
         Bu en sağlam katman çünkü bar görünmediğinde çakışma olmaz.

   Üç katmandan biri çalışmasa bile diğerleri devreye girer.
----------------------------------------------------------------------------- */

/* (a) FOOTER son beyaz bloğa zorunlu padding-bottom — mobilde mobile-bottom
       barına yer aç. Specificity: footer + class + last-child, çok yüksek. */
@media (max-width: 991.98px) {
    footer .bg-white:last-child,
    footer > div.bg-white:last-of-type {
        padding-bottom: 90px !important;
    }

    /* (b) Body padding-bottom: yedek güvenlik. (a) yeterli değilse devreye girer. */
    body.theme-pro,
    body {
        padding-bottom: 20px;
    }

    /* mobile-bottom için yumuşak fade transition */
    .mobile-bottom {
        transition: opacity .25s ease, transform .25s ease;
        will-change: opacity, transform;
    }

    /* (c) JS tarafından eklenen `.is-near-footer` class'ı: bar'ı tamamen gizle.
           Pointer-events:none → kapalı durumda yanlışlıkla tıklamayı önler. */
    .mobile-bottom.is-near-footer {
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateY(60px) !important;
    }
}
