/* Premium Font Yüklemesi */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* Genel Sıfırlama ve Font Ayarı */
.ccm-custom-header-wrapper,
.ccm-custom-header,
#ccm-sidebar,
.ccm-hamburger-btn,
.ccm-nav-menu,
.ccm-inline-menu {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    box-sizing: border-box !important;
}

/* Özel Header Yapısı */
.ccm-custom-header-wrapper {
    width: 100% !important;
    background: var(--ccm-bg-color) !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.06) !important;
    position: relative !important;
    z-index: 999 !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.03) !important;
}

.ccm-custom-header {
    display: none !important;
    width: 100% !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
    padding: 18px 24px !important;
    align-items: center !important;
    justify-content: space-between !important;
}

.ccm-col {
    display: flex !important;
    align-items: center !important;
    gap: 25px !important;
}

.ccm-col-left { justify-content: flex-start !important; }
.ccm-col-center { justify-content: center !important; flex: 1 !important; }
.ccm-col-right { justify-content: flex-end !important; }

/* Cihaz Görünümleri */
@media (min-width: 993px) {
    .ccm-header-desktop { display: flex !important; }
}
@media (min-width: 769px) and (max-width: 992px) {
    .ccm-header-tablet { display: flex !important; }
}
@media (max-width: 768px) {
    .ccm-header-mobile { display: flex !important; padding: 15px 15px !important; }
}

/* Hamburger İkonu Genel (Çizgili olanlar) */
.ccm-hamburger-btn:not(.ccm-icon-text_button) {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    cursor: pointer !important;
    padding: 12px !important;
    border-radius: 12px !important;
    background: rgba(0,0,0,0.03) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.ccm-hamburger-btn:not(.ccm-icon-text_button):hover {
    background: rgba(0,0,0,0.08) !important;
    transform: scale(1.05) !important;
}

.ccm-hamburger-lines {
    width: 24px !important;
    height: 18px !important;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
}
.ccm-hamburger-lines span {
    display: block !important;
    height: 2.5px !important;
    width: 100% !important;
    background: var(--ccm-icon-color) !important;
    border-radius: 4px !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Tasarım Şablonları: İkon Stilleri */
.ccm-icon-minimal .ccm-hamburger-lines span:nth-child(2) { display: none !important; }
.ccm-icon-minimal .ccm-hamburger-lines { justify-content: space-evenly !important; height: 14px !important; }

.ccm-icon-modern .ccm-hamburger-lines span:nth-child(2) { width: 50% !important; margin-left: auto !important; }
.ccm-hamburger-btn.ccm-icon-modern:hover .ccm-hamburger-lines span:nth-child(2) { width: 100% !important; }
.ccm-icon-modern .ccm-hamburger-lines span:nth-child(3) { width: 75% !important; margin-left: auto !important; }
.ccm-hamburger-btn.ccm-icon-modern:hover .ccm-hamburger-lines span:nth-child(3) { width: 100% !important; }

.ccm-hamburger-dots {
    width: 24px !important;
    height: 20px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    align-items: center !important;
}
.ccm-hamburger-dots span {
    display: block !important;
    width: 5px !important;
    height: 5px !important;
    background: var(--ccm-icon-color) !important;
    border-radius: 50% !important;
}

/* PREMIUM BUTON TASARIMI (Metinli Buton) */
.ccm-icon-text_button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    padding: 14px 28px !important;
    border-radius: 50px !important;
    background: var(--ccm-icon-color) !important;
    color: #ffffff !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.15) !important;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    text-decoration: none !important;
}
.ccm-icon-text_button:hover {
    transform: translateY(-3px) scale(1.02) !important;
    box-shadow: 0 15px 35px rgba(0,0,0,0.2) !important;
    filter: brightness(1.1) !important;
}
.ccm-icon-text_button:active {
    transform: translateY(1px) !important;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1) !important;
}
.ccm-icon-text_button .ccm-hamburger-lines {
    width: 20px !important;
    height: 14px !important;
}
.ccm-icon-text_button .ccm-hamburger-lines span {
    background: #ffffff !important;
    height: 2px !important;
    border-radius: 2px !important;
}
.ccm-icon-text_button .ccm-text-btn-label {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    white-space: nowrap !important;
    letter-spacing: 0.3px !important;
}

/* Mevcut Menüye İnjeksiyon Sınıfı */
.ccm-injected-hamburger {
    display: inline-flex !important; 
    align-items: center !important;
    vertical-align: middle !important;
    height: 100% !important;
    transform: translateY(var(--ccm-inject-offset, 0px)) !important;
    margin-right: 15px !important;
}
.ccm-injected-hamburger .ccm-hamburger-btn {
    margin: 0 !important;
}

/* Alternatif Menü Gizleme Sınıfları */
@media (max-width: 768px) {
    .ccm-injected-hamburger.ccm-hide-mobile { display: none !important; }
}
@media (min-width: 769px) and (max-width: 992px) {
    .ccm-injected-hamburger.ccm-hide-tablet { display: none !important; }
}

/* Logolar ve İnline Menüler */
.ccm-logo img { max-height: 55px !important; width: auto !important; object-fit: contain !important; }
.ccm-logo-text { font-size: 26px !important; font-weight: 800 !important; text-decoration: none !important; color: var(--ccm-text-color) !important; letter-spacing: -0.8px !important; }

.ccm-inline-menu { display: flex !important; list-style: none !important; margin: 0 !important; padding: 0 !important; gap: 30px !important; align-items: center !important; }
.ccm-inline-menu li a { text-decoration: none !important; color: var(--ccm-text-color) !important; font-weight: 600 !important; font-size: 16px !important; transition: color 0.3s ease !important; position: relative !important; }
.ccm-inline-menu li a:hover { color: var(--ccm-icon-color) !important; }

/* Çekmece Menüsü (Sidebar) Genel - PREMIUM GÖRÜNÜM */
#ccm-sidebar {
    position: fixed !important;
    top: 0 !important;
    bottom: 0 !important;
    width: var(--ccm-width) !important;
    max-width: 85vw !important;
    background: var(--ccm-bg-color) !important;
    z-index: 100001 !important;
    box-shadow: 0 0 50px rgba(0,0,0,0.2) !important;
    transition: transform 0.5s cubic-bezier(0.77, 0, 0.175, 1) !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Açılış Yönleri */
#ccm-sidebar.ccm-dir-left {
    left: 0 !important;
    right: auto !important;
    transform: translateX(-100%) !important;
    border-radius: 0 24px 24px 0 !important;
}
#ccm-sidebar.ccm-dir-right {
    right: 0 !important;
    left: auto !important;
    transform: translateX(100%) !important;
    border-radius: 24px 0 0 24px !important;
}
#ccm-sidebar.ccm-sidebar-open {
    transform: translateX(0) !important;
}

.ccm-sidebar-header {
    padding: 30px 35px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    background: var(--ccm-icon-color) !important;
    color: #fff !important;
    border-radius: inherit !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1) !important;
    z-index: 2 !important;
}

.ccm-sidebar-title {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: var(--ccm-sidebar-title-color) !important;
    margin: 0 !important;
    letter-spacing: -0.5px !important;
}

#ccm-close-btn {
    font-size: 40px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    transition: all 0.4s ease !important;
    color: rgba(255,255,255,0.7) !important;
    font-weight: 300 !important;
}
#ccm-close-btn:hover { transform: rotate(90deg) scale(1.2) !important; color: #fff !important; }

.ccm-sidebar-content { padding: 25px 0 !important; overflow-y: auto !important; flex: 1 !important; }
.ccm-nav-menu { list-style: none !important; padding: 0 !important; margin: 0 !important; }

/* MENÜ TASARIM ŞABLONLARI (PREMIUM GÜNCELLEME) */

/* 1. Default (Çizgili) */
.ccm-style-default .ccm-nav-menu li { border-bottom: 1px solid rgba(0,0,0,0.05) !important; }
.ccm-style-default .ccm-nav-menu li:last-child { border-bottom: none !important; }
.ccm-style-default .ccm-nav-menu li a {
    display: block !important; padding: 18px 35px !important; text-decoration: none !important;
    color: var(--ccm-text-color) !important; font-size: 17px !important; font-weight: 600 !important;
    transition: all 0.3s ease !important;
}
.ccm-style-default .ccm-nav-menu li a:hover { background: rgba(0,0,0,0.02) !important; padding-left: 45px !important; color: var(--ccm-icon-color) !important; }

/* 2. Clean (Sade) */
.ccm-style-clean .ccm-nav-menu li { border-bottom: none !important; }
.ccm-style-clean .ccm-nav-menu li a {
    display: block !important; padding: 15px 35px !important; text-decoration: none !important;
    color: var(--ccm-text-color) !important; font-size: 17px !important; font-weight: 600 !important;
    transition: all 0.3s ease !important;
}
.ccm-style-clean .ccm-nav-menu li a:hover { padding-left: 45px !important; color: var(--ccm-icon-color) !important; }

/* 3. Rounded (Premium Buton Görünümü) */
.ccm-style-rounded .ccm-nav-menu li { border-bottom: none !important; margin-bottom: 12px !important; }
.ccm-style-rounded .ccm-nav-menu li a {
    display: flex !important; align-items: center !important;
    padding: 16px 25px !important; margin: 0 25px !important; text-decoration: none !important;
    color: var(--ccm-text-color) !important; font-size: 16px !important; font-weight: 600 !important;
    background: rgba(0,0,0,0.03) !important; border-radius: 14px !important;
    transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0) !important;
}
.ccm-style-rounded .ccm-nav-menu li a:hover {
    background: #ffffff !important;
    transform: translateX(8px) scale(1.02) !important;
    color: var(--ccm-icon-color) !important;
    box-shadow: 0 8px 20px rgba(0,0,0,0.08) !important;
}

/* Alt Menü Standartları */
.ccm-nav-menu .sub-menu { display: none !important; background: rgba(0,0,0,0.01) !important; padding-left:0 !important; list-style:none !important; margin-top: 5px !important; }
.ccm-nav-menu li:hover > .sub-menu { display: block !important; }
.ccm-nav-menu .sub-menu li a { padding-left: 55px !important; font-size: 15px !important; font-weight: 500 !important; opacity: 0.8 !important; }
.ccm-style-rounded .ccm-nav-menu .sub-menu li a { padding-left: 25px !important; margin-left: 45px !important; background: transparent !important; box-shadow: none !important; }
.ccm-style-rounded .ccm-nav-menu .sub-menu li a:hover { background: rgba(0,0,0,0.03) !important; transform: translateX(5px) !important; }

/* Karanlık Arka Plan (Overlay) Blur Efektli */
#ccm-sidebar-overlay {
    position: fixed !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important;
    background: rgba(0,0,0,0.4) !important; z-index: 100000 !important; opacity: 0 !important; visibility: hidden !important;
    transition: opacity 0.5s ease, visibility 0.5s ease !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
}
#ccm-sidebar-overlay.ccm-overlay-active { opacity: 1 !important; visibility: visible !important; }
