/* Module: base.css - Extracted from style.css */

/*
Theme Name: Vatansoft News
Theme URI: https://yenivatan.com.au
Description: yenivatan.com.au için özel haber portalı teması
Version: 1.0.0
Author: Vatansoft
Author URI: https://yenivatan.com.au
Text Domain: vatansoft-news
*/

/* ============================================
   ACCESSIBILITY UTILITIES
   ============================================ */
/* Screen reader only - SEO için görsel olarak gizli ama ekran okuyucular için görünür */
.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* ============================================
   GLOBAL RESET
   ============================================ */
html,
body {
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: clip !important;
    /* Sticky uyumlu */
    overflow-y: visible !important;
    /* Dikey scroll sticky için şart */
    height: auto !important;
    font-family: 'Open Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    /* Yenivatan.com.au benzeri serif font */
    background: #F9F9F9 !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    color: #333 !important;
}

/* Başlıklar için Roboto */
h1 {
    font-family: 'Roboto', Arial, 'Helvetica Neue', Helvetica, sans-serif !important;
    font-weight: 600 !important;
    font-size: 28px !important;
}

h2 {
    font-family: 'Roboto', Arial, 'Helvetica Neue', Helvetica, sans-serif !important;
    font-weight: 600 !important;
    font-size: 24px !important;
}

h3 {
    font-family: 'Roboto', Arial, 'Helvetica Neue', Helvetica, sans-serif !important;
    font-weight: 600 !important;
    font-size: 20px !important;
}

h4,
h5,
h6 {
    font-family: 'Roboto', Arial, 'Helvetica Neue', Helvetica, sans-serif !important;
    font-weight: 600 !important;
    font-size: 18px !important;
}

.archive-title,
.news-title,
.section-head h3 {
    font-family: 'Roboto', Arial, 'Helvetica Neue', Helvetica, sans-serif !important;
    font-weight: 600 !important;
    font-size: 18px !important;
    text-transform: none !important;
}

/* Navigasyon ve butonlar */
.btn-green,
.btn-dark,
button {
    font-family: 'Open Sans', Arial, 'Helvetica Neue', Helvetica, sans-serif !important;
}

/* Kategori etiketleri için Roboto */
.news-cat-badge,
.card-cat,
.category-badge,
.manset-cat,
.slide-category {
    font-family: 'Roboto', Arial, 'Helvetica Neue', Helvetica, sans-serif !important;
}

/* Slider pagination numaraları için Metropolis */
.pagination-number {
    font-family: 'Metropolis', sans-serif !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    line-height: 16px !important;
}

.pagination-dot {
    font-family: Arial, sans-serif !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    line-height: 21px !important;
}


/* ============================================
   UTILITY CLASSES - Inline Style Optimizations
   ============================================ */

/* ============================================
   CONSISTENT HOMEPAGE SECTION SPACING SYSTEM
   ============================================ */

/* Base: Remove all default margins/padding from home-section */
.home-section {
    margin-top: 0;
    margin-bottom: 25px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
}

/* yv-section modules also need margin-bottom: 25px */
.yv-section {
    margin-bottom: 25px !important;
}

/* Consistent vertical spacing between adjacent home sections */
/* Tüm ana sayfa modülleri (home-section + WebTV yv-section) arasında 25px boşluk */
.home-section+.home-section,
.home-section+.yv-section,
.yv-section+.home-section,
.yv-section+.yv-section,
.home-section+section,
section+.home-section,
.yv-section+section,
section+.yv-section {
    margin-top: 25px !important;
}

/* WebTV modülünün kendi iç dikey padding'ini sadeleştir (genel aralığa uysun) */
body.vatansoft-homepage-template .webtv-module {
    padding: 22px 18px !important;
}

/* Web TV modülünde tek tip (Open Sans) font kullan */
body.vatansoft-homepage-template .webtv-module {
    font-family: 'PT Sans', 'Open Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

body.vatansoft-homepage-template .webtv-module .webtv-featured h2 {
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.vatansoft-homepage-template .webtv-module .webtv-side-item h4 {
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 16px !important;
    margin: 0 !important;
}

/* Foto Galeri modülü - Web TV gibi görünüm */
body.vatansoft-homepage-template .fotogaleri-module,
body.vatansoft-homepage-template .fotogaleri-module * {
    font-family: 'Open Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

body.vatansoft-homepage-template .fotogaleri-module h3,
body.vatansoft-homepage-template .fotogaleri-module .fotogaleri-featured h3 {
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    color: #e0e0e0 !important;
    margin-top: 10px !important;
}

body.vatansoft-homepage-template .fotogaleri-module h2,
body.vatansoft-homepage-template .fotogaleri-module .fotogaleri-featured h2 {
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    color: #cfcfcf !important;
    margin-top: 10px !important;
}

body.vatansoft-homepage-template .fotogaleri-module h5,
body.vatansoft-homepage-template .fotogaleri-module .fotogaleri-side-item h5 {
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 16px !important;
    color: #ffffff !important;
    font-family: 'Roboto', sans-serif !important;
}

body.vatansoft-homepage-template .fotogaleri-module h4,
body.vatansoft-homepage-template .fotogaleri-module .fotogaleri-side-item h4 {
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 16px !important;
    color: #ffffff !important;
    font-family: 'Roboto', sans-serif !important;
    margin: 0 !important;
}

body.vatansoft-homepage-template .fotogaleri-module .fotogaleri-side-item:hover h4,
body.vatansoft-homepage-template .fotogaleri-module .fotogaleri-side-item:hover h5 {
    color: #ffffff !important;
}

/* Foto Galeri grid layout */
.fotogaleri-content.grid-2-1 {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 20px;
}

.fotogaleri-side-grid.grid-2-col {
    display: flex;
    flex-direction: column;
    gap: 10px;
    justify-content: space-between;
    height: 100%;
}

@media (max-width: 768px) {
    .fotogaleri-content.grid-2-1 {
        grid-template-columns: 1fr;
    }

    .fotogaleri-side-grid.grid-2-col {
        grid-template-columns: 1fr;
    }
}

/* Tablet/Mobile: Aynı boşluk (15px) korunur */

/* Manşet Slider ile Yatay Manşet arasındaki boşluğu ayarla */
.manset-section.home-section+.yatay-manset-section.home-section {
    margin-top: 20px !important;
}

/* Yatay Manşet ile Son Haberler arasındaki boşluğu ayarla (aynı değer - ortalamak için) */
.yatay-manset-section.home-section+.news-section.home-section.son-haberler-grid {
    margin-top: 20px !important;
}

/* Normal manşet ile Son Haberler arası (yatay manşet yoksa) */
.manset-section.home-section+.news-section.home-section.son-haberler-grid {
    margin-top: 15px !important;
    /* Pagination bar ile SON HABERLER arası 15px */
}

/* Manşet section'ın padding-bottom'unu kaldır, margin-top kullanıyoruz */
.manset-section.home-section {
    padding-bottom: 0;
    margin-bottom: 0;
}

/* Slider Pagination Bar - Normal manşet genişliğinde (enlemesine) */
.manset-section.home-section .slider-pagination-bar {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 0 !important;
    margin-bottom: -12px !important;
    padding: 0 !important;
    background: #020617 !important;
    border-top: 0 !important;
    overflow: hidden !important;
    position: relative !important;
    top: -12px !important;
    border-bottom-left-radius: var(--radius) !important;
    border-bottom-right-radius: var(--radius) !important;
}

/* Normal manşet section'ın alt boşluğu - pagination bar dahil */
.manset-section.home-section {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* SADECE normal manşet slider için pagination numbers ortalanmış - ÇOK SPESİFİK */
/* Diğer modüller Plugin CSS'i ile çalışmaya devam edecek (space-between) */
body.vatansoft-homepage-template .vatan-content .manset-section.home-section:not(.buyuk-manset-section) .slider-pagination-bar .pagination-numbers {
    justify-content: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    flex-wrap: nowrap !important;
    padding: 0 !important;
}

/* Kategori sayfalarındaki manşet slider pagination numaraları ortalanmış */
.taxonomy-haber_kategori .manset-section .slider-pagination-bar .pagination-numbers,
.archive .manset-section .slider-pagination-bar .pagination-numbers {
    justify-content: center !important;
    display: flex !important;
    align-items: center !important;
    gap: 3px !important;
    flex-wrap: wrap !important;
}

/* Kategori sayfalarındaki manşet slider üstünde kategori başlığı */
.category-manset-header {
    margin-bottom: 20px !important;
}

.category-manset-header .category-title {
    font-family: 'Roboto', Arial, 'Helvetica Neue', Helvetica, sans-serif !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    color: #333 !important;
    margin: 0 0 10px 0 !important;
    display: inline-block !important;
    font-style: normal !important;
    text-transform: none !important;
}

.category-manset-header .category-title-line {
    width: 100% !important;
    height: 2px !important;
    background: #000 !important;
    margin-top: 5px !important;
}

/* Normal manşet section ile diğer modüller arası boşluk - 15px */
.manset-section.home-section+.home-section,
.manset-section.home-section+.news-section,
.manset-section.home-section+.cat-section,
.manset-section.home-section+.yv-section,
body.vatansoft-homepage-template .manset-section.home-section+* {
    margin-top: 15px !important;
}


/* Legacy yv-section support (for sections outside main column) */
.yv-section {
    margin-bottom: 20px;
    padding-top: 20px;
}

.yv-section:first-child {
    padding-top: 0;
}

.yv-section:last-child {
    margin-bottom: 0;
}

.grid-3-col {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.grid-3-col.gap-30 {
    gap: 30px !important;
}

.grid-4-col {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    /* Increased from 10px for better spacing */
}

@media (max-width: 768px) {
    .grid-4-col {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
}

@media (max-width: 480px) {
    .grid-4-col {
        grid-template-columns: 1fr;
        gap: 15px;
    }
}

.flex-center {
    display: flex;
    align-items: center;
    justify-content: center;
}

.text-center {
    text-align: center;
}


============================================*/

/* Buton Stilleri */
.theme-btn,
.search-btn {
    background: transparent;
    border: none;
    color: #fff !important;
    font-size: 16px !important;
    line-height: 1 !important;
    cursor: pointer;
    width: 32px !important;
    height: 32px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s;
    border-radius: 4px;
    outline: none !important;
    flex-shrink: 0 !important;
}

.theme-btn span,
.theme-btn svg,
.search-btn svg {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 16px !important;
    height: 16px !important;
    line-height: 1 !important;
}

.theme-btn:hover,
.search-btn:hover {
    background: #d32f2f !important;
    color: #fff !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.theme-btn:hover span,
.theme-btn:hover svg,
.search-btn:hover svg {
    color: #fff !important;
    filter: none !important;
    /* Filtre kafa karıştırabilir, temizliyoruz */
}

.dark-icon {
    display: inline-block;
}

.light-icon {
    display: none;
}

body.dark-mode .dark-icon {
    display: none;
}

body.dark-mode .light-icon {
    display: inline-block;
}

/* ============================================
   VATANSOFT UNIFIED DARK THEME v3 (Design System)
   ============================================ */

:root {
    /* 1. PALETTE DEFINITION (Single Source of Truth) */
    --vatan-dark-bg: #121212;
    /* Main Background - Material Standard */
    --vatan-dark-surface: #1E1E1E;
    /* Cards, Widgets, Menus */
    --vatan-dark-border: #333333;
    /* Subtle borders */
    --vatan-dark-text-main: #E4E6EB;
    /* High readability text */
    --vatan-dark-text-sec: #B0B3B8;
    /* Secondary text */
    --vatan-dark-accent: #CF6679;
    /* Desaturated Red (Eye-friendly) */
    --vatan-dark-input: #2D2D2D;
    /* Form inputs */
}

/* 2. GLOBAL DARK MODE ACTIVATION */
body.dark-mode {
    background-color: var(--vatan-dark-bg) !important;
    color: var(--vatan-dark-text-main) !important;
}

/* 3. UNIFIED BACKGROUNDS (The "Single Grey Tone" Rule) */
/* Forces all structural elements to use the same background color */
body.dark-mode .vatan-site-wrapper,
body.dark-mode .vatan-main,
body.dark-mode .vatan-main-content,
body.dark-mode .vatan-container,
body.dark-mode .site-content,
body.dark-mode #page,
body.dark-mode .vatan-content-grid,
body.dark-mode .vatan-content,
body.dark-mode .vatan-header-top,
body.dark-mode .vatan-header-main,
body.dark-mode .vatan-footer,
body.dark-mode .sur-manset-wrapper,
body.dark-mode .vatan-flash-news-bar,
body.dark-mode .finance-ticker-wrapper {
    background-color: var(--vatan-dark-bg) !important;
    border-color: var(--vatan-dark-border) !important;
}

/* 4. CARD & SURFACE SYSTEM */
/* All cards, widgets, and boxed content use the Surface color */
body.dark-mode .news-card,
body.dark-mode .news-item,
body.dark-mode .post-card,
body.dark-mode .sidebar-widget,
body.dark-mode .widget,
body.dark-mode .widget-content,
body.dark-mode .vatan-slider-wrapper,
body.dark-mode .category-module,
body.dark-mode .webtv-module,
body.dark-mode .fotogaleri-module,
body.dark-mode .author-box,
body.dark-mode .related-posts,
body.dark-mode .comments-area,
body.dark-mode .ilan-list-item,
body.dark-mode .firma-list-item,
body.dark-mode .duyuru-list-item,
body.dark-mode .etkinlik-list-item,
body.dark-mode .author-bio-card,
body.dark-mode .single-post-card,
body.dark-mode .page-content-card,
body.dark-mode .vatansoft-anket-box,
body.dark-mode .weather-box,
body.dark-mode .sports-box,
body.dark-mode .exchange-box,
body.dark-mode .slider-caption,
body.dark-mode .vatan-nav ul li ul.vatan-submenu {
    background-color: var(--vatan-dark-surface) !important;
    color: var(--vatan-dark-text-main) !important;
    border: 1px solid var(--vatan-dark-border) !important;
    box-shadow: none !important;
    /* Flat design for better contrast */
}

/* Remove "Patchy" Backgrounds from Containers */
body.dark-mode .home-section,
body.dark-mode .yv-section,
body.dark-mode .news-section,
body.dark-mode .cat-section,
body.dark-mode .manset-section,
body.dark-mode .sidebar-module,
body.dark-mode .sidebar-column .widget {
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* 5. NAVIGATION & MENU */
body.dark-mode .vatan-nav {
    background-color: var(--vatan-dark-bg) !important;
    /* Changed to bg for consistency */
    border-top: 1px solid var(--vatan-dark-border) !important;
    border-bottom: 1px solid var(--vatan-dark-border) !important;
}

body.dark-mode .vatan-nav ul li a {
    color: var(--vatan-dark-text-main) !important;
    border-right: 1px solid var(--vatan-dark-border) !important;
}

body.dark-mode .vatan-nav ul li a:hover,
body.dark-mode .vatan-nav ul li ul.vatan-submenu li a:hover {
    background-color: #333 !important;
    /* Slight highlight */
    color: #fff !important;
}

body.dark-mode .vatan-nav ul li ul.vatan-submenu li a {
    background-color: transparent !important;
    border-bottom: 1px solid var(--vatan-dark-border) !important;
    color: var(--vatan-dark-text-sec) !important;
}

/* 6. TYPOGRAPHY & CONTRAST (WCAG Compliant) */
body.dark-mode h1,
body.dark-mode h2,
body.dark-mode h3,
body.dark-mode h4,
body.dark-mode h5,
body.dark-mode h6,
body.dark-mode strong,
body.dark-mode .news-title a,
body.dark-mode .widget-title,
body.dark-mode .section-title,
body.dark-mode .poll-question {
    color: var(--vatan-dark-text-main) !important;
}

body.dark-mode p,
body.dark-mode li,
body.dark-mode span,
body.dark-mode .news-excerpt,
body.dark-mode .entry-content {
    color: var(--vatan-dark-text-sec) !important;
}

body.dark-mode .news-meta,
body.dark-mode .date,
body.dark-mode .author,
body.dark-mode .meta-item {
    color: #777 !important;
    /* Lower contrast for metadata */
}

body.dark-mode a {
    color: var(--vatan-dark-text-main) !important;
    text-decoration: none;
}

body.dark-mode a:hover {
    color: var(--vatan-dark-accent) !important;
}

/* 7. BUTTONS & INTERACTIVE ELEMENTS */
body.dark-mode .theme-btn,
body.dark-mode .btn,
body.dark-mode button,
body.dark-mode input[type="submit"],
body.dark-mode .slider-pagination-bar .pagination-number,
body.dark-mode .post-pagination .page-numbers {
    background-color: var(--vatan-dark-input) !important;
    color: var(--vatan-dark-text-main) !important;
    border: 1px solid var(--vatan-dark-border) !important;
}

body.dark-mode .theme-btn:hover,
body.dark-mode .btn:hover,
body.dark-mode .pagination-number.active,
body.dark-mode .page-numbers.current {
    background-color: var(--vatan-dark-accent) !important;
    color: #fff !important;
    border-color: var(--vatan-dark-accent) !important;
}

/* Slider Pagination Strip */
body.dark-mode .slider-pagination-bar {
    background-color: var(--vatan-dark-surface) !important;
    border-top: 1px solid var(--vatan-dark-border) !important;
}

/* 8. FORMS & INPUTS */
body.dark-mode input,
body.dark-mode textarea,
body.dark-mode select {
    background-color: var(--vatan-dark-input) !important;
    color: #fff !important;
    border: 1px solid var(--vatan-dark-border) !important;
}

body.dark-mode ::placeholder {
    color: #888 !important;
}

/* 9. IFRAMES & EXTERNAL WIDGETS */
/* Invert white iframes to make them dark compatible */
body.dark-mode iframe[src*="mackolik"],
body.dark-mode iframe[src*="standings"],
body.dark-mode iframe[src*="fixture"],
body.dark-mode .sports-box iframe {
    filter: invert(0.93) hue-rotate(180deg) !important;
    /* 0.93 creates a dark grey close to #121212 */
}

/* Maps need normal colors but dimmed brightness */
body.dark-mode iframe[src*="maps"] {
    filter: brightness(0.7) invert(0) !important;
}

/* 10. UNIVERSAL WHITE KILLER */
/* Target any remaining white elements inline or via classes */
body.dark-mode .bg-white,
body.dark-mode .bg-light,
body.dark-mode *[style*="background-color: #fff"],
body.dark-mode *[style*="background: white"],
body.dark-mode *[style*="background: #fff"] {
    background-color: var(--vatan-dark-surface) !important;
    color: var(--vatan-dark-text-main) !important;
}

/* 11. TABLE STYLES */
body.dark-mode table {
    background-color: var(--vatan-dark-surface) !important;
}

body.dark-mode tr:nth-child(even) {
    background-color: #262626 !important;
}

body.dark-mode td,
body.dark-mode th {
    border-color: var(--vatan-dark-border) !important;
}

/* Footer Bottom adjustments */
body.dark-mode .footer-bottom {
    background-color: #000 !important;
    /* Pure black for bottommost bar */
}
