/* === ÖZEL UO İMLEÇ STİLLERİ === */

/* 1. Varsayılan İmleç (Eldiven) */
/* (cursor.cur dosyanızı kullanır) */
html,
body {
    /* '/cursors/' yolu ana dizini işaret eder. */
    cursor: url('/assets/cursors/cursor.cur'), auto;
}

/* 2. Link / Tıklanabilir İmleç (Açık El) */
/* (linkselect.cur dosyanızı kullanır) */
a,
.accordion-button,
button,
[role="button"],
[onclick],
[data-bs-toggle="modal"],
input[type="submit"],
input[type="button"],
input[type="reset"],
input[type="checkbox"],
input[type="radio"],
label,
select,
.btn,
.page-link,
.dropdown-item,
.form-range,
.form-check-label, /* <-- YENİ EKLEDİĞİNİZ SATIR (Checkbox etiketleri) */
.form-select,       /* <-- YENİ EKLEDİĞİNİZ SATIR (Açılır listeler) */
.nav-link,
.search-btn,
.social-icons a,
.theme-toggle-btn,
.list-group-item-action {
    cursor: url('/assets/cursors/linkselect.cur'), pointer !important;
}

/* === SLIDER TUTAMACI (THUMB) İÇİN ÖZEL KURALLAR === */
/* Bu kurallar, .form-range kuralından daha spesifiktir */

/* WebKit (Chrome, Safari, Edge) */
.form-range::-webkit-slider-thumb {
    cursor: url('/assets/cursors/linkselect.cur'), pointer !important;
}

/* Mozilla (Firefox) */
.form-range::-moz-range-thumb {
    cursor: url('/assets/cursors/linkselect.cur'), pointer !important;
}

/* Microsoft (IE / Eski Edge) */
.form-range::-ms-thumb {
    cursor: url('/assets/cursors/linkselect.cur'), pointer !important;
}

/* === SLIDER ÇUBUĞU (TRACK) İÇİN ÖZEL KURALLAR === */

/* WebKit (Chrome, Safari, Edge) */
.form-range::-webkit-slider-runnable-track {
    cursor: url('/assets/cursors/linkselect.cur'), pointer !important;
}

/* Mozilla (Firefox) */
.form-range::-moz-range-track {
    cursor: url('/assets/cursors/linkselect.cur'), pointer !important;
}

/* Microsoft (IE / Eski Edge) */
.form-range::-ms-track {
    cursor: url('/assets/cursors/linkselect.cur'), pointer !important;
    /* IE'nin bu kuralı uygulaması için bu satırlar gerekebilir */
    background-color: transparent;
    border-color: transparent;
    color: transparent;
}

/* 3. Metin Seçim İmleci (I-şekli) */
/* (text.cur dosyanızı kullanır) */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="number"],
textarea,
[contenteditable="true"] {
    cursor: url('/assets/cursors/text.cur'), text !important;
}

/* 4. Meşgul / Bekleme İmleçleri (Animasyonlu) */
/* BU KISIM OTOMATİK ÇALIŞMAZ, JAVASCRIPT GEREKTİRİR */

/* (busy.ani dosyanız - klasik kum saati) */
/* Bir işlem olurken JS ile body'e "busy" class'ı eklerseniz bu imleç görünür */
body.busy,
body.busy * {
    cursor: url('/assets/cursors/busy.ani'), wait;
}

/* (wib.ani dosyanız - arka planda çalışma) */
/* Bir işlem olurken JS ile body'e "progress" class'ı eklerseniz bu imleç görünür */
body.progress,
body.progress * {
    cursor: url('/assets/cursors/wib.ani'), progress;
}


/* === GENEL === */
body {
  padding-top: 40px;
  background-color: #f4f6f8;
  color: #212529;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  line-height: 1.5;
  margin: 0;
}

/* === NAVBAR === */
.navbar {
  background-color: #e5e7eb;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  border-bottom: 1px solid #ced4da;
  z-index: 1000;
}
.navbar-brand {
  display: flex;
  align-items: center;
  font-weight: bold;
  margin-right: 3rem;
}
.navbar-nav {
  gap: 0.2rem;
  flex-wrap: wrap; 
}
.navbar-nav .nav-link {
  position: relative;
  color: #212529;
  font-weight: 500;
  padding-bottom: 6px;
  transition: color 0.3s ease;
}
.navbar-nav .nav-link:hover {
  color: #3b82f6;
}

/* Aktif olan <li>'nin içindeki linki de mavi yap (Çakışma Çözümü) */
.navbar-nav .nav-item.dropdown.active > .nav-link {
  color: #3b82f6;
}

.navbar-nav .nav-link.active {
  color: #3b82f6;
}

.navbar-nav .nav-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0%;
  height: 2px;
  background-color: #3b82f6;
  transition: width 0.3s ease;
}

/* Hover sırasında alt çizgi göster (Dropdown toggle hariç) */
.navbar-nav .nav-link:not(.dropdown-toggle):hover::after {
  width: 100%;
}

/* Aktif linkte alt çizgi kalıcı olsun (Dropdown toggle hariç) */
.navbar-nav .nav-link:not(.dropdown-toggle).active::after {
  width: 100%;
}

/* MAVİ ODAKLANMA ÇERÇEVESİNİ KALDIR */
.navbar .nav-link:focus,
.navbar .nav-link.dropdown-toggle:focus,
.navbar .nav-link:active {
    box-shadow: none !important;
    outline: none !important;
}

/* Arama butonunda alt çizgiyi ve link stilini iptal et */
.navbar .search-btn {
  text-decoration: none !important;
}
.navbar .search-btn::after {
  display: none !important;
}

.navbar-toggler:focus {
  box-shadow: none !important;
}

.nav-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.nav-footer .card-text {
    margin-bottom: 0;
    line-height: 1.5;
}
.nav-footer .btn-outline-secondary {
    background-color: transparent;
    border-color: #6c757d;
    color: #6c757d;
}
.nav-footer .btn-outline-secondary:hover {
    background-color: transparent !important;
    border-color: #6c757d;
    color: #6c757d;
}
.btn-download {
    font-size: 1.25rem;
    padding: 0.75rem 1.5rem;
    font-weight: 600;
    border-radius: 8px;
}
[data-bs-theme="light"] .btn-download {
    background-color: #0d6efd;
    border-color: #0d6efd;
    color: #fff;
}
[data-bs-theme="light"] .btn-download:hover {
    background-color: #0d6efd;
    border-color: #0d6efd;
}
[data-bs-theme="dark"] .btn-download {
    background-color: #0d6efd;
    border-color: #0d6efd;
}
[data-bs-theme="dark"] .btn-download:hover {
    background-color: #0d6efd;
    border-color: #0d6efd;
}

/* === ÜYE İKONU DARK TEMA DÜZELTMESİ === */
[data-bs-theme="dark"] .online-user-item .fa-user-circle.text-success {
    color: #198754 !important; /* Bootstrap'in standart yeşil rengini koru */
}

/* KARAKTER BUİLD */
.theme-aware-btn {
    background-color: #0d6efd;
    color: #fff;
}
[data-theme="dark"] .theme-aware-btn {
    background-color: #0d6efd;
    color: #1a2024;
}
.menu-card, .content-card {
    border-radius: 0.5rem;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.menu-card .card-title {
    color: #3b82f6;
}

.form-range {
    accent-color: #3b82f6;
}
[data-theme="dark"] .form-range {
    accent-color: #3b82f6;
}
#characterSelect:focus, #skills:focus {
    outline: none;
    box-shadow: none;
}
.stat-title, .skill-title, .summary-stat-title, .summary-skill-title {
    color: #3b82f6;
}
[data-theme="dark"] .stat-title, [data-theme="dark"] .skill-title,
[data-theme="dark"] .summary-stat-title, [data-theme="dark"] .summary-skill-title {
    color: #3b82f6;
}
@media (max-width: 768px) {
    .form-range, .form-select, .btn {
        font-size: 14px;
    }
    .card-body {
        padding: 1rem;
    }
}

/* === NAVBAR Tema Butonu === */
.theme-toggle-btn {
    position: relative;
    width: 60px;
    height: 34px;
    background: none;
    border: none;
    cursor: url('/assets/cursors/linkselect.cur'), pointer !important;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
}

/* Kaydırılabilir anahtar (toggle slider) */
.toggle-slider {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    background-color: #ced4da;
    border-radius: 34px;
    padding: 4px;
    transition: background-color 0.3s ease;
    cursor: url('/assets/cursors/linkselect.cur'), pointer !important;
}

/* Tema simgeleri (güneş ve ay) */
.toggle-icon {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.2rem;
    color: #fff;
    transition: transform 0.3s ease, opacity 0.3s ease;
    z-index: 1; 
}

.sun {
    left: 8px;
    opacity: 1;
}

.moon {
    right: 8px;
    opacity: 0.3;
}

/* Kaydırıcı (slider knob) */
.toggle-slider::before {
    content: "";
    position: absolute;
    width: 26px;
    height: 26px;
    background-color: #fff;
    border-radius: 50%;
    top: 4px;
    left: 4px;
    transition: transform 0.3s ease, background-color 0.3s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    z-index: 2; 
}

/* Dark mode'da stil değişiklikleri */
[data-bs-theme="dark"] .toggle-slider {
    background-color: #4b5563;
}

[data-bs-theme="dark"] .toggle-slider::before {
    background-color: #e9ecef;
}

/* Tema geçişi sırasında animasyon */
[data-bs-theme="light"] .toggle-slider::before {
    transform: translateX(0);
}

[data-bs-theme="dark"] .toggle-slider::before {
    transform: translateX(26px);
}

[data-bs-theme="light"] .sun {
    opacity: 1;
}

[data-bs-theme="light"] .moon {
    opacity: 0.3;
}

[data-bs-theme="dark"] .sun {
    opacity: 0.3;
}

[data-bs-theme="dark"] .moon {
    opacity: 1;
}

/* Tema ve arama ikonlarını eşitle */
.search-btn {
    display: flex;
    align-items: center;
    padding: 0;
    margin-right: 0.5rem; 
}

.search-btn i {
    font-size: 1.5rem;
    line-height: 1;
    width: 1.5rem;
    text-align: center;
    color: #0d6efd;
}

/* Bu kısmı ekleyin */
.d-lg-flex {
    display: none !important;
}

@media (min-width: 992px) {
    .d-lg-flex {
        display: flex !important;
    }
}


/* === YENİ AÇILIR MENÜ STİLLERİ === */
.navbar .dropdown-toggle::after {
    display: none !important;
}

.navbar .dropdown-menu {
    border-radius: 0.75rem; 
    border: none;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1); 
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    margin-top: 0.5rem; 
    animation: fadeInDown 0.3s ease-in-out; 
    max-height: none;
    overflow-y: visible;
    overflow-x: hidden; /* YATAY SCROLL SORUNUNU ÇÖZER */
}

.dropdown-item {
    display: flex;
    align-items: center;
    gap: 0.75rem; 
    padding: 0.5rem 1.25rem;
    font-weight: 500;
    transition: all 0.2s ease-in-out; 
}

.dropdown-item i.fa-fw {
    color: #3b82f6; 
    transition: color 0.2s ease-in-out;
}

.dropdown-item:hover {
    background-color: #f0f5ff; 
    color: #212529;
    transform: translateX(5px); 
}

.dropdown-item:hover i.fa-fw {
    color: #1d4ed8; 
}

/* Dark Tema için Menü Stilleri */
[data-bs-theme="dark"] .navbar .dropdown-menu {
    background-color: #2a3439;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}

[data-bs-theme="dark"] .dropdown-item {
    color: #e9ecef;
}

[data-bs-theme="dark"] .dropdown-item:hover {
    background-color: #343a40;
    color: #fff;
}
[data-bs-theme="dark"] .dropdown-item:hover i.fa-fw {
    color: #60a5fa;
}


/* Açılır Menü Animasyonu */
@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* === MASAÜSTÜ İÇİN AÇILIR MENÜ DAVRANIŞI === */
@media (min-width: 992px) {
  /* Üzerine gelince açılma */
  .navbar .nav-item.dropdown:hover > .dropdown-menu {
    display: block;
  }
  /* Scroll'u sadece masaüstüne ekle */
  .navbar .dropdown-menu {
      max-height: 400px;
      overflow-y: auto;
  }
}


/* === LİNK === */
.page-link-custom {
    text-decoration: none;
    color: #212529;
    transition: color 0.2s ease;
}
.page-link-custom:hover {
    color: #3b82f6;
    text-decoration: none;
}
.page-link-custom.active {
    color: #3b82f6;
    font-weight: normal;
}

/* === CARD === */
.card {
    margin-top: 20px;
    padding: 1rem;
    border-radius: 12px;
    border: 1px solid #dee2e6;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
    height: auto; 
}

.card .row {
    flex-wrap: wrap;
    align-items: stretch; 
    min-height: 0;
}
.card img {
    width: 100%;
}
.card .card-body {
    flex-grow: 1;
    padding: 1rem;
}
.card a:not([class*="btn"]) {
    color: #212529;
    text-decoration: none;
    font-weight: normal;
    transition: color 0.2s ease;
}

/* Sadece gerçek linkleri mavi yap; .btn ve .nav-link olanları etkileme */
.card a:hover:not(.btn):not(.nav-link) {
  color: #3b82f6;
}

/* Aktif/active durumda da sadece normal linkleri mavi yap */
.card a:active:not(.btn):not(.nav-link),
.card a.active:not(.btn):not(.nav-link) {
  color: #3b82f6;
}


/* === HABER CARD === */
.card.mb-3 {
    width: 100%;
}
.card.mb-3 .row {
    align-items: stretch;
}
.card.mb-3 img {
    height: auto;
    max-height: 200px;
    width: 100%;
}
.card.mb-3 .card-title {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    padding-top: 0;
    color: #3b82f6;
}
.card.mb-3 .card-title a {
    color: inherit;
}
@media (max-width: 768px) {
    .card .row {
        flex-direction: column;
    }
    .card img {
        max-height: 150px;
    }
    .card.mb-3 .card-body {
        padding: 1rem;
    }
    .news-card .hr-wrapper {
        top: 150px; 
    }
}

/* === HABER DETAY SAYFASI RESİM === */
.news-image {
    margin-top: 20px; 
    width: 100%;
    height: 150px;
    object-fit: cover;
}
@media (min-width: 768px) {
    .news-image {
        height: auto !important;
        max-height: none !important;
        object-fit: contain !important;
    }
    .card .col-md-3 {
        height: auto; 
        overflow: visible; 
        display: block; 
        min-height: 0; 
    }
    .card .row {
        align-items: stretch;
        min-height: 0;
    }
}

/* === CONTAINER === */
.container {
    padding-top: 20px;
    padding-bottom: 40px;
}

/* === GELİŞTİRİLMİŞ FOOTER === */
.footer {
    background-color: #e5e7eb;
    color: #212529;
    padding: 40px 0 20px 0;
    margin-top: auto;
    width: 100%;
    box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.15);
    text-align: left;
}

.footer-links h5 {
    color: #3b82f6; 
    margin-bottom: 1rem;
    font-size: 1rem;
}

.footer-links ul {
    padding-left: 0;
}

.footer-links ul li {
    margin-bottom: 0.5rem;
}

.footer-links ul li a {
    text-decoration: none;
    color: #212529;
    transition: all 0.2s ease-in-out;
}

.footer-links ul li a:hover {
    color: #3b82f6;
    padding-left: 5px; 
}


.footer-hr {
    border-top: 1px solid #ced4da;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.footer-bottom p {
    margin-bottom: 0.25rem;
    font-size: 0.9rem;
    color: #6c757d;
}

/* === FOOTER SOSYAL MEDYA İKONLARI (DAİMA RENKLİ) === */

/* İkonların temel görünümü (Daire şekli, boyutu, BEYAZ ikon rengi) */
.social-icons a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    font-size: 1.1rem;
    border-width: 2px;
    border-style: solid;
    border-radius: 50%;
    margin: 0 5px 10px 5px;
    text-decoration: none;
    transition: all 0.2s ease-in-out;
    color: #fff; /* İkon rengi artık daima beyaz */
}

/* Her ikonun varsayılan marka rengi */
.social-icons a[href*="pinterest.com"] {
  background-color: #E60023;
  border-color: #E60023;
}
.social-icons a[href*="twitch.tv"] {
  background-color: #9146FF;
  border-color: #9146FF;
}
.social-icons a[href*="facebook.com"] {
  background-color: #1877F2;
  border-color: #1877F2;
}
.social-icons a[href*="x.com"] {
  background-color: #000000;
  border-color: #000000;
}
.social-icons a[href*="instagram.com"] {
  background-color: #E4405F;
  border-color: #E4405F;
}

/* Üzerine gelince uygulanacak genel efekt */
.social-icons a:hover {
    transform: translateY(-3px);
    filter: brightness(90%); /* Rengi hafif koyulaştırarak tepki ver */
}

/* === DARK THEME Gelişmiş Footer === */
[data-bs-theme="dark"] .footer {
    background-color: #14171a;
    color: #e9ecef;
}

[data-bs-theme="dark"] .footer-links ul li a {
    color: #e9ecef;
}

[data-bs-theme="dark"] .footer-links ul li a:hover {
    color: #3b82f6;
}

[data-bs-theme="dark"] .footer-hr {
    border-top: 1px solid #4b5563;
}

[data-bs-theme="dark"] .footer-bottom p {
    color: #adb5bd;
}

@media (max-width: 768px) {
    .footer {
        text-align: center;
    }
    .footer-links .col-md-4 {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
}

/* === DARK THEME === */
[data-bs-theme="dark"] html,
/* === DARK THEME === */
[data-bs-theme="dark"] {
  --bs-body-bg: #2b3035; /* Bootstrap'in değişkenini burada ez */
  /* İsteğe bağlı: Metin rengi zaten --bs-body-color ile ayarlanıyor,
     ama istersen buraya da --bs-body-color: #e9ecef; ekleyebilirsin */
}

/* Değişkenin body'e uygulandığından emin olmak için (Bootstrap bunu zaten yapar ama garanti olsun) */
[data-bs-theme="dark"] body {
  background-color: var(--bs-body-bg); /* Değişkenin değerini kullan */
  color: var(--bs-body-color, #e9ecef); /* Metin rengi için de değişkeni kullan (varsayılan #e9ecef) */
}
[data-bs-theme="dark"] .navbar {
    background-color: #1a2024 !important;
    color: #e9ecef !important;
    border-bottom: 3px solid #2a3439;
}
[data-bs-theme="dark"] .navbar-nav .nav-link {
    color: #e9ecef;
}
[data-bs-theme="dark"] .navbar-nav .nav-link:hover {
    color: #3b82f6;
}
[data-bs-theme="dark"] .navbar-nav .nav-link.active {
    color: #3b82f6;
}
[data-bs-theme="dark"] .navbar-nav .nav-link.active::after {
    width: 100%;
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 2px;
    background-color: #3b82f6;
}

[data-bs-theme="dark"] .card {
    background-color: #2a3439;
    color: #e9ecef;
    border: 1px solid #4b5563;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

[data-bs-theme="dark"] .card a {
    color: #e9ecef;
}

/* Dark temada sadece normal linkleri mavi yap; nav-link ve btn hariç */
[data-bs-theme="dark"] .card a:hover:not(.btn):not(.nav-link) {
  color: #3b82f6;
}

/* (İsteğe bağlı) aktif link için de aynı daraltmayı uygula */
[data-bs-theme="dark"] .card a.active:not(.btn):not(.nav-link) {
  color: #3b82f6;
}

/* Sadece kart içindeki normal aktif linkleri mavi yap */
[data-bs-theme="dark"] .card a.active:not(.nav-link):not(.btn) {
  color: #3b82f6;
}

[data-bs-theme="dark"] .footer {
    background-color: #14171a;
    color: #e9ecef;
    border-top: 3px solid #2a3439;
    box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.5);
}

[data-bs-theme="dark"] .page-link-custom {
    color: #e9ecef;
}
[data-bs-theme="dark"] .page-link-custom:hover {
    color: #3b82f6;
    text-decoration: none;
}
[data-bs-theme="dark"] .page-link-custom.active {
    color: #3b82f6;
}
[data-bs-theme="dark"] .main-content,
[data-bs-theme="dark"] .content-wrapper,
[data-bs-theme="dark"] section {
    background-color: #0f0f0f;
}

[data-bs-theme="dark"] .dropdown-divider {
    border-top-color: #4b5563;
}
[data-bs-theme="dark"] .dropdown-header {
    color: #adb5bd;
}

/* === MOBIL NAVBAR DÜZENİ === */
@media (max-width: 991.98px) {
    .navbar .container-fluid {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .navbar-brand {
        margin-right: auto;
    }
    .navbar-toggler {
        margin-left: 0;
    }
    #theme-toggle-mobile {
        margin-right: 10px;
    }
    .navbar-nav {
        margin-top: 0.2rem;
    }
}

/* === ADMIN PANELİ SAYFA DÜZENLEMELERİ === */
.sortable-list .list-group-item {
    padding: 10px 15px;
    transition: all 0.2s;
}
.sortable-list .list-group-item:hover {
    background-color: #f1f3f5;
}
[data-bs-theme="dark"] .sortable-list .list-group-item:hover {
    background-color: #00df0b;
}

/* Dark temada içerik kartı içindeki list item arkaplanını şeffaf yap */
[data-bs-theme="dark"] .content-card .list-group-item {
  background-color: transparent !important;
  border-color: #4b5563; /* istersen sınırı da koyu temayla eşle */
}

/* Hover’da da siyaha dönmesin */
[data-bs-theme="dark"] .content-card .list-group-item-action:hover,
[data-bs-theme="dark"] .content-card .list-group-item-action:focus {
  background-color: rgba(255,255,255,0.04) !important; /* çok hafif */
}

.page-info {
    flex-grow: 1;
    padding-right: 10px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.page-actions {
    display: flex;
    gap: 5px;
    align-items: center;
    justify-content: flex-end;
}
.page-actions .btn {
    min-width: 70px;
    text-align: center;
}

/* === MODERN MOBİL MENÜ (OFFCANVAS) STİLLERİ v7 (Nihai) === */
@media (max-width: 991.98px) {
  /* Offcanvas ana panelini özelleştir */
  .offcanvas.offcanvas-end {
    border-left: none;
    box-shadow: -5px 0 25px rgba(0,0,0,0.1);
    width: 80%; /* YENİ: Menü genişliğini %80 yap, arkası daha fazla görünsün */
  }

  /* Menü başlığını (header) düzenle */
  .offcanvas-header {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #e9ecef;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .offcanvas-title {
    font-size: 1.4rem;
    font-weight: 600;
  }
  
  /* BAŞLIĞA EKLENEN LOGO İÇİN STİL */
  .offcanvas-logo {
    height: 28px;
    width: auto;
  }
  
  /* Kapatma butonunu güzelleştir */
  .offcanvas-header .btn-close {
    opacity: 0.6;
    transition: opacity 0.2s ease, transform 0.2s ease;
  }
  .offcanvas-header .btn-close:hover {
    opacity: 1;
    transform: rotate(90deg);
  }
  
  /* Kapatma butonuna tıklandığında çıkan mavi çerçeveyi kaldır */
  .offcanvas-header .btn-close:focus {
    box-shadow: none;
  }
  
  /* Menü gövdesi için padding */
  .offcanvas-body {
    padding: 0.25rem 0;
  }

  /* Linkler arasına ayırıcı çizgi ekle */
  .offcanvas-body .nav-item {
    border-bottom: 1px solid #f0f2f5;
  }
  .offcanvas-body .nav-item:last-child {
    border-bottom: none;
  }

  /* Menü Linkleri (EN SIKIŞIK HALİ) */
  .offcanvas-body .nav-link {
    font-size: 1.05rem;
    font-weight: 500;
    padding: 0.45rem 1.5rem;
    border-left: 4px solid transparent;
    display: flex;
    align-items: center;
    gap: 1rem;
    transition: all 0.2s ease-in-out;
  }
  
  .offcanvas-body .nav-link::after {
    display: none;
  }

  /* Aktif link ve üzerine gelince efekt */
  .offcanvas-body .nav-link.active,
  .offcanvas-body .nav-link:hover {
    color: #0d6efd;
    background-color: rgba(13, 110, 253, 0.05);
    border-left-color: #0d6efd;
    font-weight: 600;
  }
}

/* === MODERN MOBİL MENÜ (DARK TEMA) v7 (Nihai) === */
@media (max-width: 991.98px) {
  [data-bs-theme="dark"] .offcanvas.offcanvas-end {
     box-shadow: -5px 0 25px rgba(0,0,0,0.3);
  }

  [data-bs-theme="dark"] .offcanvas-header {
    border-bottom-color: #343a40;
  }
  
  [data-bs-theme="dark"] .offcanvas-header .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
  }

  [data-bs-theme="dark"] .offcanvas-body .nav-item {
    border-bottom-color: #2a3439;
  }

  [data-bs-theme="dark"] .offcanvas-body .nav-link.active,
  [data-bs-theme="dark"] .offcanvas-body .nav-link:hover {
    color: #60a5fa;
    background-color: rgba(96, 165, 250, 0.1);
    border-left-color: #60a5fa;
    font-weight: 600;
  }
}

/* === FOOTER LİSTE İKONLARINI RENKLENDİRME === */

/* Hızlı Erişim Sütunu */
.footer-links .fa-newspaper     { color: #3b82f6 !important; } /* Mavi */
.footer-links .fa-server        { color: #10b981 !important; } /* Yeşil */
.footer-links .fa-theater-masks { color: #8b5cf6 !important; } /* Mor */
.footer-links .fa-shield-alt    { color: #ef4444 !important; } /* Kırmızı */
.footer-links .fa-shield-halved { color: #22c55e !important; } /* Açık Yeşil */
.footer-links .fa-folder-open   { color: #f97316 !important; } /* Turuncu */
.footer-links .fa-download      { color: #0ea5e9 !important; } /* Gök Mavisi */

/* Bilgilendirme Sütunu */
.footer-links .fa-info-circle   { color: #06b6d4 !important; } /* Camgöbeği */
.footer-links .fa-envelope      { color: #f59e0b !important; } /* Amber */
.footer-links .fa-user-shield   { color: #14b8a6 !important; } /* Turkuaz */
.footer-links .fa-cookie-bite   { color: #a16207 !important; } /* Kahverengi */
.footer-links .fa-gavel         { color: #78716c !important; } /* Gri */
.footer-links .fa-file-contract { color: #64748b !important; } /* Kurşun Rengi */

@media (max-width: 991.98px) {
  .offcanvas .dropdown-menu {
    position: static;
    float: none;
    display: none !important; /* JS ile açılacak */
    margin: 1rem;
    transition: opacity 0.15s ease-in-out;
  }
  .offcanvas .dropdown.show .dropdown-menu,
  .offcanvas .dropdown-menu.show {
    display: block !important;
    opacity: 1;
  }
}



/* Nav açıkken yatay kaydırmayı engelle */
@media (max-width: 991.98px){
  body.nav-open { overflow-x: hidden; }
  /* Menü içinde sadece dikey kaydırmaya izin ver */
  .navbar-collapse, .offcanvas { touch-action: pan-y; overscroll-behavior-x: contain; }
  /* Uzun metinler taşmasın */
  .navbar .dropdown-menu { white-space: normal; max-width: 100vw; }
}

/* Nav açıkken yatay taşmayı *tamamen* kapat */
html.nav-open,
body.nav-open {
  overflow-x: hidden !important;
}

/* Offcanvas / collapse içeriklerinde yatay taşmayı engelle */
@media (max-width: 991.98px){
  .offcanvas,
  .offcanvas-body,
  .navbar-collapse,
  .navbar-nav {
    overflow-x: hidden !important;
  }
  /* Sadece dikey kaydırmaya izin ver; yatay pan'ı kapat */
  .offcanvas,
  .offcanvas-body,
  .navbar-collapse {
    touch-action: pan-y pinch-zoom;
    overscroll-behavior-x: none;
  }
  /* Dropdown içerikleri ekrana sığsın */
  .navbar .dropdown-menu {
    white-space: normal;
    max-width: 100vw;
  }
}

/* Modal X butonundaki mavi odak halkasını kaldır */
.modal .btn-close:focus,
.modal .btn-close:active,
.modal .btn-close:focus:active,
.modal .btn-close:focus-visible {
  box-shadow: none !important;
  outline: 0 !important;
}

/* === ONLINE USERS SAYFASI (GÜNCELLENMİŞ) === */
.online-user-item {
    border-bottom: 1px solid #dee2e6;
    padding: 1rem 0; /* Genel padding artır, ferah olsun */
}
.online-user-item:last-child {
    border-bottom: none;
}
[data-bs-theme="dark"] .online-user-item {
    border-bottom: 1px solid #343a40;
    background-color: transparent !important; /* Siyah olmasını engelle */
}

.online-user-item .user-name {
    font-size: 1.1rem;
}
.online-user-item .current-page,
.online-user-item .country-info,
.online-user-item .time-info {
    font-size: 0.9rem;
    color: #495057;
    display: flex;
    align-items: center;
    /* margin-bottom: 0.5rem; */ /* BU SATIRI SİLİN VEYA YORUMA ALIN */
}
.online-user-item .page-link-custom {
    color: #495057;
    text-overflow: ellipsis; /* Uzun metinleri kısalt */
    overflow: hidden;
    white-space: nowrap;
    max-width: 100%;
}
.online-user-item .page-link-custom:hover {
    color: #0d6efd;
}

/* Dark Tema */
[data-bs-theme="dark"] .online-user-item .current-page,
[data-bs-theme="dark"] .online-user-item .country-info,
[data-bs-theme="dark"] .online-user-item .time-info,
[data-bs-theme="dark"] .online-user-item .page-link-custom {
    color: #ced4da;
}
[data-bs-theme="dark"] .online-user-item .page-link-custom:hover {
    color: #60a5fa;
}
[data-bs-theme="dark"] .online-user-item .fa-user-circle,
[data-bs-theme="dark"] .online-user-item .fa-file-alt,
[data-bs-theme="dark"] .online-user-item .fa-globe,
[data-bs-theme="dark"] .online-user-item .fa-clock {
    color: #ced4da !important; /* İkonlar için koyu tema rengi */
}

/* Mobil Cihazlar için Düzenleme */
@media (max-width: 991.98px) {
    .online-user-item .current-page {
        padding-left: 0; /* Sol padding kaldır */
    }
}

/* Mobilde "Ziyaretçi #X" linkini kalın yap ve altı çizgiyi kaldır */
@media (max-width: 767.98px) {
  .online-user-item a.user-name {
    font-weight: 700 !important;
    text-decoration: none !important;
    display: inline-block;            /* dokunma alanı genişlesin */
  }

/* Collapse içindeki FA bayrak ikonunun görünürlüğünü garanti et */
.online-user-item .collapse i.fa-flag {
    display: inline-block !important;
    font-size: 1rem;
    margin-right: .5rem;
}

/* Mobildeki online kullanıcı detaylarını girintili yap */
.mobile-info-wrapper {
    padding-left: 3rem; /* Girinti miktarını buradan ayarlayabilirsiniz */
}
}

/* Sunucu tablosunu koyu temada transparan yapar */
[data-bs-theme="dark"] .serverTable {
    --bs-table-bg: transparent;
    --bs-table-color: var(--bs-light); /* Metin rengini açık gri yapar */
    --bs-table-striped-bg: rgba(255, 255, 255, 0.05); /* Şeritli satırlar için hafif koyuluk */
    --bs-table-hover-bg: rgba(255, 255, 255, 0.1);  /* Üzerine gelince hafif koyuluk */
    --bs-table-border-color: rgba(255, 255, 255, 0.15); /* Kenarlıkları daha az belirgin yapar */
}

/* ================================
   Form Odak (Focus) ve Durum Stili
   - Tüm kontrol tiplerinde aynı görünüm
   - Kalın mavi halo yok, net ama sade sınır vurgusu
   - Input-group ve floating label ile uyumlu
   - Geçerli/geçersiz durum renkleriyle senkron
   ================================ */

/* Tema değişkenleri (isterseniz renklere buradan hükmedin) */
:root {
  --focus-border: #86b7fe;                         /* odak kenar rengi */
  --focus-outline: transparent;                    /* outline istemiyorsanız transparent bırakın */
  --ig-bg: var(--bs-tertiary-bg);                  /* input-group text arkaplanı */
}
[data-bs-theme="dark"] {
  --focus-border: #86b7fe; /* isterseniz daha doygun bir tonda kullanın */
  --ig-bg: var(--bs-tertiary-bg);
}

/* Konteyner ve toggle */
.password-wrapper { position: relative; }
.password-toggle {
  position: absolute; top: 50%; right: 15px;
  transform: translateY(-50%); 
  cursor: url('/assets/cursors/linkselect.cur'), pointer !important; /* <-- DEĞİŞİKLİK */
  z-index: 5;
}

/* Yardım/validasyon metinleri */
.validation-message { font-size: .875em; min-height: 1.2em; }

/* INPUT-GROUP hizalama ve köşe uyumu */
.input-group-text {
  background-color: var(--ig-bg);
  border-right: 0;
  transition: border-color .15s ease-in-out, color .15s ease-in-out;
}
.input-group .form-control { border-left: 0; }
.input-group .input-group-text {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group .form-floating .form-control {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

/* Focus davranışı – kalın mavi halo yok, kenar rengi ile vurgu */
.form-control:focus,
.form-select:focus,
.form-check-input:focus,
.btn:focus,
.nav-link:focus {
  box-shadow: none !important;
  outline: 0;
  border-color: var(--focus-border) !important;
}

/* Input-group içindeki bir alan odakta iken, grup elemanının da kenarı vurgulansın */
.input-group:focus-within .input-group-text {
  border-color: var(--focus-border);
}

/* Geçersiz/Geçerli durumlar input-group tarafında senkron */
.input-group:has(.form-control.is-invalid) .input-group-text {
  border-color: var(--bs-form-invalid-border-color);
  color: var(--bs-form-invalid-color);
}
.input-group:has(.form-control.is-valid) .input-group-text {
  border-color: var(--bs-form-valid-border-color);
  color: var(--bs-form-valid-color);
}

/* Bootstrap’in arka plan “tik/çarpı” ikonunu kapatmak isterseniz */
.password-wrapper .form-control.is-valid,
.password-wrapper .form-control.is-invalid {
  background-image: none;
}

/* Valid/Invalid odakta da halo yok */
.form-control.is-invalid:focus,
.form-control.is-valid:focus {
  box-shadow: none;
}

/* (İSTEĞE BAĞLI) İnce bir odak halkası da isterseniz, şu bloğu açın:
.form-control:focus-visible,
.form-select:focus-visible,
.form-check-input:focus-visible,
.btn:focus-visible,
.nav-link:focus-visible {
  outline: 2px solid rgba(134,183,254,.45);
  outline-offset: 2px;
}
*/

/* (İSTEĞE BAĞLI) Sadece formlarda uygulamak istiyorsanız .btn ve .nav-link satırlarını kaldırın */

/* 1) İkon tarafı kırmızıysa, fokus olduğunda input da kırmızı kalsın */
.input-group:has(.input-group-text.text-danger) .form-control:focus,
.input-group:has(.input-group-text.border-danger) .form-control:focus,
.input-group:has(.input-group-text.bg-danger-subtle) .form-control:focus {
  border-color: var(--bs-danger) !important;
}

/* 2) Benzer şekilde success/info/warning için istersen eşleştir */
.input-group:has(.input-group-text.text-success) .form-control:focus,
.input-group:has(.input-group-text.border-success) .form-control:focus,
.input-group:has(.input-group-text.bg-success-subtle) .form-control:focus {
  border-color: var(--bs-success) !important;
}
.input-group:has(.input-group-text.text-warning) .form-control:focus,
.input-group:has(.input-group-text.border-warning) .form-control:focus,
.input-group:has(.input-group-text.bg-warning-subtle) .form-control:focus {
  border-color: var(--bs-warning) !important;
}
.input-group:has(.input-group-text.text-info) .form-control:focus,
.input-group:has(.input-group-text.border-info) .form-control:focus,
.input-group:has(.input-group-text.bg-info-subtle) .form-control:focus {
  border-color: var(--bs-info) !important;
}

/* 3) Geçersiz/Geçerli durumlar (Bootstrap ile tutarlı kalsın) */
.form-control.is-invalid,
.form-control.is-invalid:focus {
  border-color: var(--bs-form-invalid-border-color) !important;
  box-shadow: none;
}
.form-control.is-valid,
.form-control.is-valid:focus {
  border-color: var(--bs-form-valid-border-color) !important;
  box-shadow: none;
}

/* 4) Input-group ikonu da senkron (zaten vardı ama pekiştirelim) */
.input-group:has(.form-control.is-invalid) .input-group-text {
  border-color: var(--bs-form-invalid-border-color) !important;
  color: var(--bs-form-invalid-color) !important;
}
.input-group:has(.form-control.is-valid) .input-group-text {
  border-color: var(--bs-form-valid-border-color) !important;
  color: var(--bs-form-valid-color) !important;
}

/* Tıklama anında mavi "tap highlight" efektini kapat (mobil Safari/Chrome) */
a, .btn, .nav-link, .social-icons a {
  -webkit-tap-highlight-color: transparent; /* iOS/Android WebKit */
}

/* Fare/dokunma ile tıklamada mavi focus halkasını kaldır */
a:focus,
a:active,
.social-icons a:focus,
.social-icons a:active {
  outline: none !important;
  box-shadow: none !important;
}

/* Klavye ile gezinen kullanıcılar için erişilebilir odak halkasını koru */
a:focus-visible,
.nav-link:focus-visible,
.btn:focus-visible,
.social-icons a:focus-visible {
  outline: 2px solid rgba(59,130,246,.45); /* ince, şık bir halka */
  outline-offset: 2px;
  box-shadow: none !important;
}

/* (İsteğe bağlı) Font Awesome <i> ikonunun kendisinde olası odakları da sustur */
i.fa:focus { outline: none !important; }

/* Sosyal ikon butonlarında anlık mavi çerçeveyi tamamen kapatmak istersen */
.social-icons a:focus,
.social-icons a:active,
.social-icons a:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

/* === PAGINATION (Sayfalama) Standart Stilleri === */
.pagination .page-link {
    color: var(--bs-primary);
    background-color: var(--bs-tertiary-bg);
    border-color: var(--bs-border-color-translucent);
    transition: all 0.2s ease-in-out;
}

.pagination .page-link:hover {
    color: var(--bs-primary-text-emphasis);
    background-color: var(--bs-secondary-bg);
    border-color: var(--bs-border-color);
}

.pagination .page-item.active .page-link {
    color: #fff;
    background-color: #0d6efd;
    border-color: #0d6efd;
    font-weight: bold;
}

/* Odaklanma (focus) durumunda çıkan mavi gölgeyi kaldır */
.pagination .page-link:focus {
    box-shadow: none;
}

/* Dark temada aktif sayfa linkinin rengini daha belirgin yap */
[data-bs-theme="dark"] .pagination .page-item.active .page-link {
    color: #fff;
}

.cta-box {
    border-color: var(--bs-secondary-border-subtle) !important;
}

/* Rastgele Blog Kartı Stilleri */
.random-blog-item .avatar {
    width: 40px;
    height: 40px;
    font-size: 1rem;
    margin-right: 12px;
    flex-shrink: 0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold; /* <-- YENİ EKLENEN SATIR */
}

.random-blog-item .post-title {
    /* Uzun başlıkların tasarımı bozmamasını sağlar */
    max-width: 100%;
}

.random-blog-item.list-group-item-action:hover {
    background-color: transparent;
}