:root {
    --bg-color: #0d0d0d;
    --text-color: #ffffff;
    --border: #333333;
    --primary: #888888;
    --header-bg: rgba(13, 13, 13, 0.95);
}

* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Segoe UI', system-ui, sans-serif; }

/* Temel font boyutu */
html { font-size: 16px; }

body {
    background-color: var(--bg-color);
    color: var(--text-color);
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    width: 100%;
    overflow-x: hidden; /* Yana taşmaları kesin engeller */
}

/* AKIŞKAN FONT (Fluid Typography)
   Minimum 1.2rem, ideali 4vw, maksimum 2.5rem. Ekranla beraber nefes alır. */
.site-logo {
    font-size: clamp(1.2rem, 3vw, 2rem);
    font-weight: 900;
    letter-spacing: 2px;
    color: #fff;
    text-decoration: none;
}

/* HEADER 
   Boşluklar da (padding) ekrana göre esner */
.site-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%; /* İŞTE EKSİK OLAN VE HER ŞEYİ MAHVEDEN SATIR BU */
    padding: clamp(15px, 2vw, 25px) clamp(20px, 5vw, 60px);
    border-bottom: 1px solid var(--border);
    background: var(--header-bg);
    position: sticky;
    top: 0;
    z-index: 100;
}

/* ÖZEL DİL SEÇİCİ (Vanilla JS ile açılacak) */
.custom-lang-wrapper {
    position: relative;
    display: inline-block;
}

.lang-btn {
    background: #1a1a1a;
    color: #fff;
    border: 1px solid var(--border);
    /* Buton boyutu da ekrana göre büyür/küçülür */
    padding: clamp(6px, 1.5vw, 10px) clamp(12px, 2vw, 20px);
    border-radius: 6px;
    cursor: pointer;
    font-size: clamp(0.85rem, 1.5vw, 1rem);
    display: flex;
    align-items: center;
    gap: 8px;
    transition: 0.2s ease;
}

.lang-btn:hover { border-color: #fff; }

.lang-dropdown {
    display: none; /* JS ile class eklenecek */
    position: absolute;
    right: 0;
    top: 110%;
    background: #1a1a1a;
    border: 1px solid var(--border);
    border-radius: 6px;
    min-width: 100%;
    box-shadow: 0 4px 15px rgba(0,0,0,0.7);
    z-index: 101;
    flex-direction: column;
    overflow: hidden;
}

.lang-dropdown.show { display: flex; }

.lang-dropdown a {
    color: #ccc;
    padding: 10px 15px;
    text-decoration: none;
    text-align: center;
    font-size: clamp(0.8rem, 1.2vw, 0.9rem);
    border-bottom: 1px solid var(--border);
    transition: 0.2s;
}

.lang-dropdown a:last-child { border-bottom: none; }
.lang-dropdown a:hover, .lang-dropdown a.active { background: #333; color: #fff; }

/* ORTA İÇERİK */
.site-main {
    flex: 1;
    width: 100%;
    max-width: 1200px; 
    margin: 0 auto; 
    
    display: flex;
    flex-direction: column;
    align-items: center; 
    justify-content: center; 
    
    /* İŞTE SENİN TASARIMI KURTARAN VE EKSİK OLAN SATIR */
    text-align: center; 
    
    padding: clamp(30px, 5vw, 60px) clamp(20px, 5vw, 60px);
}

/* FOOTER */
.site-footer {
    text-align: center; 
    padding: clamp(15px, 3vw, 30px); 
    border-top: 1px solid var(--border);
    font-size: clamp(0.75rem, 1.2vw, 0.9rem);
    color: #777;
}

/* GERÇEK MEDYA SORGULARI (Telefonlara Özel Müdahaleler) */
@media (max-width: 480px) {
    /* Çok küçük ekranlarda logo ve dil menüsü çok sıkışmasın diye ince ayar */
    .site-header { padding: 15px 20px; }
    .lang-btn { padding: 6px 12px; }
}


