html {
    font-size: 0.875rem; /* 14px */
    overflow-y: scroll; /* Her zaman dikey kaydırma çubuğu ayır */
    position: relative;
    min-height: 100%;
}

@media (min-width: 48rem) {
    html {
        font-size: 1rem; /* 16px */
    }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 0.00625rem white, 0 0 0 0.015625rem #258cfb; /* 0.1px ve 0.25px */
}

body {
    margin-bottom: 3.75rem; /* 60px */
}

    /* Sadece login sayfasında arka plan ekleme */
    body.login-background {
        background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.9)), url('/images/loginpage.jpeg') no-repeat center center fixed;
        background-size: cover;
        overflow: hidden; /* Kaydırma çubuğunu kaldırır */
        height: 100vh; /* Tüm ekran yüksekliğini kaplar */
        margin: 0; /* Herhangi bir ekstra boşluğu kaldırır */
    }

.table-responsive {
    box-shadow: 0 0 0.3125rem rgba(0, 0, 0, 0.3); /* 5px */
}

thead th {
    vertical-align: middle; /* Dikeyde ortalama */
}

#loading {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(255, 255, 255, 0.8);
    z-index: 1050;
    visibility: hidden; /* Başlangıçta görünmez olacak */
    text-align: center;
    align-items: center;
    justify-content: center;
}

.spinner-border {
    width: 3rem; /* 48px */
    height: 3rem; /* 48px */
}

.badge {
    font-size: 1rem; /* 16px */
}

/* Bildirim (alert) kutusu */
#alert-box {
    position: fixed;
    bottom: 1.25rem; /* 20px */
    right: 1.25rem; /* 20px */
    z-index: 1050;
    display: none;
    padding: 0.9375rem; /* 15px */
    border-radius: 0.3125rem; /* 5px */
    color: white;
    font-size: 1rem; /* 16px */
    box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.2); /* 4px ve 8px */
}

    /* Başarılı mail gönderme mesajı için yeşil renk */
    #alert-box.success {
        background-color: #28a745;
    }

    /* Hatalı mail gönderme mesajı için kırmızı renk */
    #alert-box.error {
        background-color: #dc3545;
    }

/* Tüm input, textarea, select ve button öğeleri için focus çizgisini kaldır */
input:focus, textarea:focus, select:focus, button:focus {
    outline: none; /* Mavi çizgiyi kaldır */
    box-shadow: none; /* Ekstra gölge varsa kaldır */
}

/* Login Page Input Group */
.login-input .form-control {
    height: 2.5rem; /* 40px */
    font-size: 0.875rem; /* 14px */
    border-radius: 0;
    border-left: none;
}

.login-input .input-group-text {
    height: 2.5rem; /* 40px */
    font-size: 0.875rem; /* 14px */
    background-color: #f8f9fa;
    border-right: none;
}

/* Mavi border ve gölgeyi kaldır */
.login-input .form-control:focus {
    box-shadow: none;
    border-color: #ced4da;
}

/* Search Input Group */
.search-input .form-control {
    height: 2.25rem; /* 36px */
    font-size: 0.875rem; /* 14px */
    border-radius: 0;
    border-right: none;
}

.search-input .btn {
    height: 2.25rem; /* 36px */
    font-size: 0.875rem; /* 14px */
    margin-left: -0.0625rem; /* -1px */
}

/* Search Form Input Focus */
.search-input .form-control:focus {
    box-shadow: none;
    border-color: #80bdff;
}

.line-chart-container {
    max-width: 100%;
    margin: 0 auto;
    padding: 1.25rem; /* 20px */
    display: flex;
    flex-direction: column;
    align-items: center;
}

.line-chart {
    width: 100%;
    height: 18.75rem; /* 300px */
    border: 0.0625rem solid #ccc; /* 1px */
    background: #f9f9f9;
}

    .line-chart path {
        fill: none;
        stroke: #007bff;
        stroke-width: 0.125rem; /* 2px */
    }

    .line-chart circle {
        fill: #007bff;
        stroke: #fff;
        stroke-width: 0.09375rem; /* 1.5px */
    }

    .line-chart text {
        font-size: 0.625rem; /* 10px */
        fill: #333;
    }

.text-center a {
    color: inherit; /* Link rengi */
    transition: transform 0.2s; /* Hover efekt */
}

    .text-center a:hover {
        transform: scale(1.1); /* Hover sırasında büyütme */
        color: #007bff; /* Mavi renk */
    }

.text-center i {
    display: block; /* İkonu üstte tut */
}

.text-center p {
    margin: 0;
    font-size: 0.85rem; /* 13.6px */
}
/* Navbar */
.navbar {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1050;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Sidebar */
#sidebar {
    width: 16rem; /* Sidebar genişliği */
    background-color: white !important;
    position: fixed;
    top: 3.5rem; /* Navbar yüksekliği */
    left: 0;
    height: calc(100vh - 3.5rem);
    overflow-y: auto;
    z-index: 1040;
    transition: all 0.3s ease;
    box-shadow: 4px 0 6px rgba(0, 0, 0, 0.1);
}

@media (max-width: 768px) {
    #sidebar {
        position: fixed;
        top: 3.5rem; /* Navbar yüksekliği */
        width: 100%; /* Küçük ekranlarda tam genişlik */
        height: auto; /* Küçük ekranlarda otomatik yükseklik */
    }

        #sidebar.collapse:not(.show) {
            display: none;
        }

        #sidebar.collapse.show {
            display: block;
        }
}

/* Page Content */
.flex-grow-1 {
    margin-left: 15rem; /* Sidebar genişliği */
    transition: margin-left 0.3s ease;
    padding-top: 6rem !important; /* Navbar yüksekliği kadar boşluk */
}

@media (max-width: 768px) {
    .flex-grow-1 {
        margin-left: 0; /* Küçük ekranlarda tam genişlik */
    }
}

/* Sidebar Menüsü */
#sidebar ul {
    padding: 0 !important;
    border: none !important;
}

    #sidebar ul li {
        list-style: none !important;
        border: none !important;
    }

    #sidebar ul ul {
        margin-left: 1rem !important;
    }

        #sidebar ul ul li {
            margin-bottom: 0.5rem !important;
        }

/* Çökme animasyonu */
#reportsMenu.collapse:not(.show) {
    display: none !important;
}

#reportsMenu.collapse.show {
    display: block !important;
}

/* Sidebar bağlantıları */
#sidebar a, #sidebar button {
    font-size: 1rem !important;
    text-decoration: none !important;
}

    #sidebar a:hover, #sidebar button:hover {
        background-color: #e9ecef !important; /* Hover sırasında açık gri arka plan */
        color: blue !important;
    }

#sidebar i {
    font-size: 1.2rem !important;
}

#sidebarButton {
    color: black !important;
    border: none !important;
}

    #sidebarButton:hover {
        background-color: white !important; /* Hover sırasında arka plan beyaz kalsın */
        color: blue !important; /* Yazı rengi mavi */
    }

    #sidebarButton:focus {
        outline: none;
        box-shadow: none;
    }

/* Seçili menü için özel stil */
.menu-item.active,
#sidebar a.active {
    background-color: #007bff; /* Mavi arka plan */
    color: white !important; /* Beyaz yazı rengi */
    font-weight: bold; /* Daha belirgin hale getirmek için */
}

/* Raporlar menüsü açıldığında chevron döndürme */
button[aria-expanded="true"] i {
    transform: rotate(180deg);
    transition: transform 0.3s ease;
}

button[aria-expanded="false"] i {
    transform: rotate(0deg);
    transition: transform 0.3s ease;
}

/* Küçük ekranlar için responsive sidebar */
@media (max-width: 768px) {
    #sidebar {
        transform: translateX(-100%); /* Başlangıçta görünmez */
    }

        #sidebar.collapse.show {
            transform: translateX(0); /* Görünür yap */
            transition: transform 0.3s ease-in-out;
        }

    #sidebarButton {
        color: #007bff; /* Sidebar buton rengi */
    }
    #sidebarButton .active{
        color: white; /* Sidebar buton rengi */
    }
}

/* Hover ve aktif durumlar */
#reportsMenu a:hover {
    background-color: #007bff; /* Mavi arka plan */
    color: blue !important; /* Beyaz yazı rengi */
    border-color: #007bff;
}

#reportsMenu .active {
    background-color: #007bff; /* Mavi arka plan */
    color: white !important; /* Beyaz yazı rengi */
    border-color: #007bff;
}

.nav-item.dropdown .dropdown-toggle:focus {
    outline: none; /* Mavi çerçeveyi kaldırır */
    box-shadow: none; /* Gölgeyi kaldırır */
}

.nav-item.dropdown .dropdown-toggle i {
    transition: none !important; /* Dönme animasyonunu iptal eder */
    transform: none !important; /* Dönme etkisini kaldırır */
}

.d-flex a:hover {
    color: #007bff !important; /* Hover sırasında mavi renk */
    text-decoration: underline !important; /* Alt çizgi ile vurgulama */
}

/* Kart düzeni */
.card {
    border: 1px solid #ddd; /* Kenarlık */
    border-radius: 8px; /* Hafif yuvarlak köşeler */
}

/* Kart başlık ve metin stili */
.card-title {
    font-size: 1.2rem;
    font-weight: bold;
}

.card-text {
    font-size: 1.5rem;
    font-weight: bold;
}

/* Kartların yüksekliği */
.row-cols-md-3 .col {
    display: flex;
    flex-direction: column;
}

.card.h-100 {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Responsive ayar */
@media (max-width: 768px) {
    .card-text {
        font-size: 1.2rem; /* Küçük ekranlar için yazı boyutu */
    }
}

.dropdown-menu {
    position: absolute !important; /* Diğer öğeleri etkilemesin */
    top: calc(100% + 5px); /* Dropdown'un butonun hemen altında açılmasını sağlar */
    right: 0; /* Sağ tarafa hizala */
    left: auto; /* Sola kaymaması için */
    z-index: 1060; /* Navbar öğelerinden daha üstte olsun */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Hafif gölge */
}

.nav-item .btn {
    position: relative; /* Dropdown butonun pozisyonu korunur */
}

/* Mobilde kullanıcı menüsüne özel */
@media (max-width: 768px) {
    .dropdown-menu {
        width: 200px; /* Genişlik ayarla */
    }
}
