/*------------------------------------*\
	#FLAG SECTION STYLES
	Ana sayfadaki bayraklar bölümü özel stilleri
	Not: Global reset (*) ve body stilleri kaldırıldı 
	çünkü ana sayfada kullanılıyor ve tüm sayfayı etkilememeli
\*------------------------------------*/

/* Flag bölümü için özel container - sadece flag.php içindeki container */
.flags-section-container { 
    max-width: 1200px; 
    margin: 0 auto; 
    padding: 10px 20px 0; 
}

/* Başlık */
.title-section { 
    text-align: center; 
    margin: 25px 0 15px; 
    padding-top: 30px; 
    animation: fadeIn 1.2s ease-in-out; 
}

.title-section h1 { 
    font-size: 30px; 
    font-weight: 700; 
    color: #2c3e50; 
    letter-spacing: 1px; 
    text-transform: uppercase; 
    display: inline-block; 
}

.title-underline { 
    width: 80px; 
    height: 3px; 
    background: linear-gradient(to right, #ff2e63, #ff7b00); 
    margin: 8px auto 0; 
    border-radius: 5px; 
}

@keyframes fadeIn { 
    from {
        opacity: 0; 
        transform: translateY(-10px);
    } 
    to {
        opacity: 1; 
        transform: translateY(0);
    } 
}

/* Video Bölümü */
.video-section { 
    display: flex; 
    justify-content: center; 
    align-items: center; 
    margin-bottom: 10px; 
    padding: 10px; 
}

.video-wrapper { 
    position: relative; 
    justify-content: center; 
    width: 100%; 
    border-radius: 8px; 
    overflow: hidden; 
}

.video-wrapper video { 
    width: 50%; 
    margin: auto; 
    height: auto; 
    display: block; 
    filter: brightness(1.09); 
}

/* Video Yükleme/Hata */
.video-loading, 
.video-error {
    display: flex; 
    justify-content: center; 
    align-items: center; 
    height: 200px; 
    border-radius: 8px; 
    margin: auto; 
    width: 50%;
}

.video-loading { 
    background-color: #f0f0f0; 
}

.video-loading p { 
    color: #666; 
    font-size: 16px; 
}

.video-error { 
    display: none; 
    background-color: #f8d7da; 
    padding: 20px; 
    text-align: center; 
}

.video-error p { 
    color: #721c24; 
    margin-bottom: 15px; 
}

.retry-button { 
    background: #007bff; 
    color: #fff; 
    border: none; 
    padding: 8px 16px; 
    border-radius: 4px; 
    cursor: pointer; 
    font-size: 14px; 
}

.retry-button:hover { 
    background: #0056b3; 
}

/* FLAGS SLIDER – DÜZENLENMİŞ */
.flags-slider-container {
    width: 100%;
    overflow: hidden;
    background: #fff;
    padding: 20px 0;
    position: relative;
    margin-top: -10px;
    margin-bottom: 20px;
}

.flags-slider { 
    width: 100%; 
    overflow: hidden; 
    position: relative; 
}

.flags-track {
    display: flex;
    gap: 22px; /* eşit aralık */
    animation: slide 30s linear infinite;
    width: max-content;
    will-change: transform;
}

.flag-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 140px;
    padding: 12px 10px;
    background: none;
    transition: transform .25s ease, box-shadow .25s ease;
}

.flag-item:hover { 
    transform: translateY(-4px); 
    box-shadow: 0 8px 16px rgba(0,0,0,0.08); 
}

/* Sabit oran + tek tip ölçü */
.flag-item img {
    width: 72px;           /* Masaüstü genişlik */
    aspect-ratio: 3 / 2;   /* 3:2 oranı */
    height: auto;
    object-fit: cover;     /* farklı oranları düzgün kırpar */
    display: block;
    border-radius: 6px;
    border: 1px solid #ddd;
    background: #fff;
    box-shadow: 0 2px 6px rgba(0,0,0,0.06);
    margin-bottom: 8px;
    image-rendering: auto;
}

.flag-item span {
    font-size: 14px;
    font-weight: 600;
    color: #2c3e50;
    white-space: nowrap;
}

/* Akış animasyonu: 2 kopya ile pürüzsüz döngü */
@keyframes slide { 
    0% {
        transform: translateX(0);
    } 
    100% {
        transform: translateX(-50%);
    } 
}

/* Responsive */
@media (max-width: 992px) {
    .video-wrapper, 
    .video-loading, 
    .video-error { 
        max-width: 90%; 
    }
    
    .flag-item { 
        min-width: 120px; 
    }
    
    .flag-item img { 
        width: 64px; 
    } /* tablet */
    
    .flags-track { 
        gap: 18px; 
    }
}

@media (max-width: 768px) {
    .title-section h1 { 
        font-size: 22px; 
        letter-spacing: .5px; 
    }
    
    .title-underline { 
        width: 60px; 
        height: 2.5px; 
    }
    
    .video-section { 
        margin-bottom: 5px; 
    }
    
    .video-wrapper video, 
    .video-loading, 
    .video-error { 
        width: 70%; 
    }
    
    .flag-item { 
        min-width: 105px; 
        margin-top: 5px;
    }
    
    .flag-item img { 
        width: 58px; 
    }
    
    .flag-item span { 
        font-size: 12px; 
    }
    
    .flags-track { 
        animation: slide 25s linear infinite; 
        gap: 16px; 
    }
}

@media (max-width: 480px) {
    .flags-section-container { 
        padding: 5px 10px 0; 
    }
    
    .video-section { 
        padding: 5px; 
        margin-bottom: 0; 
    }
    
    .flag-item { 
        min-width: 88px; 
        padding: 10px 8px; 
        margin-top: 20px;
    }
    
    .flag-item img { 
        width: 52px; 
    } /* mobil */
    
    .flag-item span { 
        font-size: 11px; 
    }
    
    .flags-slider-container { 
        padding: 15px 0; 
        margin-top: 0px;
    }
}

