/* --- BASE.CSS (TEMEL AYARLAR) --- */

/* 1. Kapsamlı Reset */
*, *::before, *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* 2. HTML & Body Temelleri */
html {
    scroll-behavior: smooth; /* Sayfa içi linklerde yumuşak kaydırma */
    font-size: 16px; /* Referans font boyutu */
}

body {
    font-family: var(--font-family);
    background-color: var(--bg-body);
    color: var(--text-main);
    line-height: 1.6;
    min-height: 100vh; /* Footer'ı altta tutmak için zemin */
    
    /* Font Render İyileştirmeleri */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    
    transition: background-color 0.3s ease, color 0.3s ease;
}

/* 3. Medya Öğeleri */
img, picture, video, canvas, svg {
    display: block;
    max-width: 100%;
    height: auto; /* Orantılı boyutlandırma */
}

/* 4. Linkler */
a {
    text-decoration: none;
    color: inherit;
    transition: var(--transition);
}

ul, ol {
    list-style: none;
}

/* 5. Form Elemanları Mirası */
input, button, textarea, select {
    font: inherit;
    color: inherit;
}

/* 6. Erişilebilirlik (Odaklanma) */
:focus-visible {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
}

/* 7. Ana Kapsayıcı (Container) */
.container {
    max-width: var(--container-width);
    margin: 0 auto;
    padding: 0 1.5rem; /* 24px (Standartlaştırma) */
    width: 100%;
}

/* 8. Yardımcı Sınıflar (Utilities) */
.text-center { text-align: center; }
.text-right { text-align: right; }
.text-left { text-align: left; }

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

.mb-1 { margin-bottom: 0.25rem; }
.mb-2 { margin-bottom: 0.5rem; }
.mb-3 { margin-bottom: 1rem; }
.mb-4 { margin-bottom: 1.5rem; }
.mb-5 { margin-bottom: 3rem; }

.mt-1 { margin-top: 0.25rem; }
.mt-2 { margin-top: 0.5rem; }
.mt-3 { margin-top: 1rem; }
.mt-4 { margin-top: 1.5rem; }
.mt-5 { margin-top: 3rem; }

/* 9. Mobil Uyumluluk Ayarları */
@media (max-width: 768px) {
    .container {
        padding: 0 1rem; /* Mobilde kenar boşluğunu biraz azalt */
    }
}