/**
 * Site renk temaları (data-theme) ve ortak bileşen stilleri.
 * Şablon özel düzenlemeleri: css/site-templates.css
 */

/* -------------------------------------------------------------------------- */
/* 1) Palet token’ları (:root’ta tanımlı, [data-theme] ile eşlenir)           */
/* -------------------------------------------------------------------------- */
:root {
    --green-primary: #1a5d1a;
    --green-secondary: #116530;
    --green-light: #e8f3e8;
    --green-dark: #0e4c0e;
    --green-gradient-start: #1a5d1a;
    --green-gradient-end: #116530;
    --green-contrast: #ffffff;
    --green-primary-rgb: 26, 93, 26;

    --purple-primary: #6a1b9a;
    --purple-secondary: #4a148c;
    --purple-light: #f3e5f5;
    --purple-dark: #38006b;
    --purple-gradient-start: #6a1b9a;
    --purple-gradient-end: #4a148c;
    --purple-contrast: #ffffff;
    --purple-primary-rgb: 106, 27, 154;

    --orange-primary: #e65100;
    --orange-secondary: #ef6c00;
    --orange-light: #fff3e0;
    --orange-dark: #b53d00;
    --orange-gradient-start: #e65100;
    --orange-gradient-end: #ef6c00;
    --orange-contrast: #ffffff;
    --orange-primary-rgb: 230, 81, 0;

    --red-primary: #c62828;
    --red-secondary: #d32f2f;
    --red-light: #ffebee;
    --red-dark: #b71c1c;
    --red-gradient-start: #c62828;
    --red-gradient-end: #d32f2f;
    --red-contrast: #ffffff;
    --red-primary-rgb: 198, 40, 40;

    --yellow-primary: #ffc107;
    --yellow-secondary: #ffb300;
    --yellow-light: #fff8e1;
    --yellow-dark: #ff8f00;
    --yellow-gradient-start: #ffc107;
    --yellow-gradient-end: #ffb300;
    --yellow-contrast: #000000;
    --yellow-primary-rgb: 255, 193, 7;

    --blue-primary: #1976d2;
    --blue-secondary: #1565c0;
    --blue-light: #e3f2fd;
    --blue-dark: #0d47a1;
    --blue-gradient-start: #1976d2;
    --blue-gradient-end: #1565c0;
    --blue-contrast: #ffffff;
    --blue-primary-rgb: 25, 118, 210;

    --black-primary: #212121;
    --black-secondary: #111111;
    --black-light: #eceff1;
    --black-dark: #000000;
    --black-gradient-start: #424242;
    --black-gradient-end: #212121;
    --black-contrast: #ffffff;
    --black-primary-rgb: 33, 33, 33;

    --brown-primary: #5d4037;
    --brown-secondary: #3e2723;
    --brown-light: #efebe9;
    --brown-dark: #3e2723;
    --brown-gradient-start: #6d4c41;
    --brown-gradient-end: #4e342e;
    --brown-contrast: #ffffff;
    --brown-primary-rgb: 93, 64, 55;

    --turquoise-primary: #00897b;
    --turquoise-secondary: #00695c;
    --turquoise-light: #e0f2f1;
    --turquoise-dark: #004d40;
    --turquoise-gradient-start: #009688;
    --turquoise-gradient-end: #00695c;
    --turquoise-contrast: #ffffff;
    --turquoise-primary-rgb: 0, 137, 123;

    --navy-primary: #1565c0;
    --navy-secondary: #0d47a1;
    --navy-light: #e3f2fd;
    --navy-dark: #082654;
    --navy-gradient-start: #1976d2;
    --navy-gradient-end: #0d47a1;
    --navy-contrast: #ffffff;
    --navy-primary-rgb: 21, 101, 192;

    --pink-primary: #c2185b;
    --pink-secondary: #880e4f;
    --pink-light: #fce4ec;
    --pink-dark: #4a002f;
    --pink-gradient-start: #d81b60;
    --pink-gradient-end: #880e4f;
    --pink-contrast: #ffffff;
    --pink-primary-rgb: 194, 24, 91;

    --teal-primary: #00796b;
    --teal-secondary: #004d40;
    --teal-light: #e0f2f1;
    --teal-dark: #00251a;
    --teal-gradient-start: #00897b;
    --teal-gradient-end: #004d40;
    --teal-contrast: #ffffff;
    --teal-primary-rgb: 0, 121, 107;

    --lime-primary: #afb42b;
    --lime-secondary: #827717;
    --lime-light: #f9fbe7;
    --lime-dark: #524c00;
    --lime-gradient-start: #c0ca33;
    --lime-gradient-end: #827717;
    --lime-contrast: #1a1a1a;
    --lime-primary-rgb: 175, 180, 43;

    --indigo-primary: #3949ab;
    --indigo-secondary: #1a237e;
    --indigo-light: #e8eaf6;
    --indigo-dark: #0d1642;
    --indigo-gradient-start: #5c6bc0;
    --indigo-gradient-end: #1a237e;
    --indigo-contrast: #ffffff;
    --indigo-primary-rgb: 57, 73, 171;

    --cyan-primary: #00acc1;
    --cyan-secondary: #00838f;
    --cyan-light: #e0f7fa;
    --cyan-dark: #006064;
    --cyan-gradient-start: #26c6da;
    --cyan-gradient-end: #00838f;
    --cyan-contrast: #ffffff;
    --cyan-primary-rgb: 0, 172, 193;

    --coral-primary: #ff7043;
    --coral-secondary: #e64a19;
    --coral-light: #fbe9e7;
    --coral-dark: #bf360c;
    --coral-gradient-start: #ff8a65;
    --coral-gradient-end: #e64a19;
    --coral-contrast: #ffffff;
    --coral-primary-rgb: 255, 112, 67;

    --amber-primary: #ffa000;
    --amber-secondary: #ff6f00;
    --amber-light: #fff8e1;
    --amber-dark: #e65100;
    --amber-gradient-start: #ffb300;
    --amber-gradient-end: #ff6f00;
    --amber-contrast: #1a1a1a;
    --amber-primary-rgb: 255, 160, 0;

    --slate-primary: #546e7a;
    --slate-secondary: #37474f;
    --slate-light: #eceff1;
    --slate-dark: #263238;
    --slate-gradient-start: #607d8b;
    --slate-gradient-end: #37474f;
    --slate-contrast: #ffffff;
    --slate-primary-rgb: 84, 110, 122;

    --rose-primary: #ec407a;
    --rose-secondary: #ad1457;
    --rose-light: #fce4ec;
    --rose-dark: #880e4f;
    --rose-gradient-start: #f06292;
    --rose-gradient-end: #ad1457;
    --rose-contrast: #ffffff;
    --rose-primary-rgb: 236, 64, 122;

    --olive-primary: #689f38;
    --olive-secondary: #33691e;
    --olive-light: #f1f8e9;
    --olive-dark: #1b5e20;
    --olive-gradient-start: #7cb342;
    --olive-gradient-end: #33691e;
    --olive-contrast: #ffffff;
    --olive-primary-rgb: 104, 159, 56;

    /* Varsayılan (yeşil) aktif tema */
    --primary-color: var(--green-primary);
    --secondary-color: var(--green-secondary);
    --light-color: var(--green-light);
    --dark-color: var(--green-dark);
    --gradient-start: var(--green-gradient-start);
    --gradient-end: var(--green-gradient-end);
    --contrast-color: var(--green-contrast);
    --primary-color-rgb: var(--green-primary-rgb);
}

/* -------------------------------------------------------------------------- */
/* 2) data-theme eşlemeleri                                                   */
/* -------------------------------------------------------------------------- */
[data-theme="green"] {
    --primary-color: var(--green-primary);
    --secondary-color: var(--green-secondary);
    --light-color: var(--green-light);
    --dark-color: var(--green-dark);
    --gradient-start: var(--green-gradient-start);
    --gradient-end: var(--green-gradient-end);
    --contrast-color: var(--green-contrast);
    --primary-color-rgb: var(--green-primary-rgb);
}

[data-theme="purple"] {
    --primary-color: var(--purple-primary);
    --secondary-color: var(--purple-secondary);
    --light-color: var(--purple-light);
    --dark-color: var(--purple-dark);
    --gradient-start: var(--purple-gradient-start);
    --gradient-end: var(--purple-gradient-end);
    --contrast-color: var(--purple-contrast);
    --primary-color-rgb: var(--purple-primary-rgb);
}

[data-theme="orange"] {
    --primary-color: var(--orange-primary);
    --secondary-color: var(--orange-secondary);
    --light-color: var(--orange-light);
    --dark-color: var(--orange-dark);
    --gradient-start: var(--orange-gradient-start);
    --gradient-end: var(--orange-gradient-end);
    --contrast-color: var(--orange-contrast);
    --primary-color-rgb: var(--orange-primary-rgb);
}

[data-theme="red"] {
    --primary-color: var(--red-primary);
    --secondary-color: var(--red-secondary);
    --light-color: var(--red-light);
    --dark-color: var(--red-dark);
    --gradient-start: var(--red-gradient-start);
    --gradient-end: var(--red-gradient-end);
    --contrast-color: var(--red-contrast);
    --primary-color-rgb: var(--red-primary-rgb);
}

[data-theme="yellow"] {
    --primary-color: var(--yellow-primary);
    --secondary-color: var(--yellow-secondary);
    --light-color: var(--yellow-light);
    --dark-color: var(--yellow-dark);
    --gradient-start: var(--yellow-gradient-start);
    --gradient-end: var(--yellow-gradient-end);
    --contrast-color: var(--yellow-contrast);
    --primary-color-rgb: var(--yellow-primary-rgb);
}

[data-theme="blue"] {
    --primary-color: var(--blue-primary);
    --secondary-color: var(--blue-secondary);
    --light-color: var(--blue-light);
    --dark-color: var(--blue-dark);
    --gradient-start: var(--blue-gradient-start);
    --gradient-end: var(--blue-gradient-end);
    --contrast-color: var(--blue-contrast);
    --primary-color-rgb: var(--blue-primary-rgb);
}

[data-theme="black"] {
    --primary-color: var(--black-primary);
    --secondary-color: var(--black-secondary);
    --light-color: var(--black-light);
    --dark-color: var(--black-dark);
    --gradient-start: var(--black-gradient-start);
    --gradient-end: var(--black-gradient-end);
    --contrast-color: var(--black-contrast);
    --primary-color-rgb: var(--black-primary-rgb);
}

[data-theme="brown"] {
    --primary-color: var(--brown-primary);
    --secondary-color: var(--brown-secondary);
    --light-color: var(--brown-light);
    --dark-color: var(--brown-dark);
    --gradient-start: var(--brown-gradient-start);
    --gradient-end: var(--brown-gradient-end);
    --contrast-color: var(--brown-contrast);
    --primary-color-rgb: var(--brown-primary-rgb);
}

[data-theme="turquoise"] {
    --primary-color: var(--turquoise-primary);
    --secondary-color: var(--turquoise-secondary);
    --light-color: var(--turquoise-light);
    --dark-color: var(--turquoise-dark);
    --gradient-start: var(--turquoise-gradient-start);
    --gradient-end: var(--turquoise-gradient-end);
    --contrast-color: var(--turquoise-contrast);
    --primary-color-rgb: var(--turquoise-primary-rgb);
}

[data-theme="navy"] {
    --primary-color: var(--navy-primary);
    --secondary-color: var(--navy-secondary);
    --light-color: var(--navy-light);
    --dark-color: var(--navy-dark);
    --gradient-start: var(--navy-gradient-start);
    --gradient-end: var(--navy-gradient-end);
    --contrast-color: var(--navy-contrast);
    --primary-color-rgb: var(--navy-primary-rgb);
}

[data-theme="pink"] {
    --primary-color: var(--pink-primary);
    --secondary-color: var(--pink-secondary);
    --light-color: var(--pink-light);
    --dark-color: var(--pink-dark);
    --gradient-start: var(--pink-gradient-start);
    --gradient-end: var(--pink-gradient-end);
    --contrast-color: var(--pink-contrast);
    --primary-color-rgb: var(--pink-primary-rgb);
}

[data-theme="teal"] {
    --primary-color: var(--teal-primary);
    --secondary-color: var(--teal-secondary);
    --light-color: var(--teal-light);
    --dark-color: var(--teal-dark);
    --gradient-start: var(--teal-gradient-start);
    --gradient-end: var(--teal-gradient-end);
    --contrast-color: var(--teal-contrast);
    --primary-color-rgb: var(--teal-primary-rgb);
}

[data-theme="lime"] {
    --primary-color: var(--lime-primary);
    --secondary-color: var(--lime-secondary);
    --light-color: var(--lime-light);
    --dark-color: var(--lime-dark);
    --gradient-start: var(--lime-gradient-start);
    --gradient-end: var(--lime-gradient-end);
    --contrast-color: var(--lime-contrast);
    --primary-color-rgb: var(--lime-primary-rgb);
}

[data-theme="indigo"] {
    --primary-color: var(--indigo-primary);
    --secondary-color: var(--indigo-secondary);
    --light-color: var(--indigo-light);
    --dark-color: var(--indigo-dark);
    --gradient-start: var(--indigo-gradient-start);
    --gradient-end: var(--indigo-gradient-end);
    --contrast-color: var(--indigo-contrast);
    --primary-color-rgb: var(--indigo-primary-rgb);
}

[data-theme="cyan"] {
    --primary-color: var(--cyan-primary);
    --secondary-color: var(--cyan-secondary);
    --light-color: var(--cyan-light);
    --dark-color: var(--cyan-dark);
    --gradient-start: var(--cyan-gradient-start);
    --gradient-end: var(--cyan-gradient-end);
    --contrast-color: var(--cyan-contrast);
    --primary-color-rgb: var(--cyan-primary-rgb);
}

[data-theme="coral"] {
    --primary-color: var(--coral-primary);
    --secondary-color: var(--coral-secondary);
    --light-color: var(--coral-light);
    --dark-color: var(--coral-dark);
    --gradient-start: var(--coral-gradient-start);
    --gradient-end: var(--coral-gradient-end);
    --contrast-color: var(--coral-contrast);
    --primary-color-rgb: var(--coral-primary-rgb);
}

[data-theme="amber"] {
    --primary-color: var(--amber-primary);
    --secondary-color: var(--amber-secondary);
    --light-color: var(--amber-light);
    --dark-color: var(--amber-dark);
    --gradient-start: var(--amber-gradient-start);
    --gradient-end: var(--amber-gradient-end);
    --contrast-color: var(--amber-contrast);
    --primary-color-rgb: var(--amber-primary-rgb);
}

[data-theme="slate"] {
    --primary-color: var(--slate-primary);
    --secondary-color: var(--slate-secondary);
    --light-color: var(--slate-light);
    --dark-color: var(--slate-dark);
    --gradient-start: var(--slate-gradient-start);
    --gradient-end: var(--slate-gradient-end);
    --contrast-color: var(--slate-contrast);
    --primary-color-rgb: var(--slate-primary-rgb);
}

[data-theme="rose"] {
    --primary-color: var(--rose-primary);
    --secondary-color: var(--rose-secondary);
    --light-color: var(--rose-light);
    --dark-color: var(--rose-dark);
    --gradient-start: var(--rose-gradient-start);
    --gradient-end: var(--rose-gradient-end);
    --contrast-color: var(--rose-contrast);
    --primary-color-rgb: var(--rose-primary-rgb);
}

[data-theme="olive"] {
    --primary-color: var(--olive-primary);
    --secondary-color: var(--olive-secondary);
    --light-color: var(--olive-light);
    --dark-color: var(--olive-dark);
    --gradient-start: var(--olive-gradient-start);
    --gradient-end: var(--olive-gradient-end);
    --contrast-color: var(--olive-contrast);
    --primary-color-rgb: var(--olive-primary-rgb);
}

/* -------------------------------------------------------------------------- */
/* 3) Yardımcı sınıflar                                                       */
/* -------------------------------------------------------------------------- */
.gradient-bg {
    background: linear-gradient(135deg, var(--gradient-start), var(--gradient-end));
    color: var(--contrast-color);
}

.primary-bg {
    background-color: var(--primary-color);
    color: var(--contrast-color);
}

.secondary-bg {
    background-color: var(--secondary-color);
    color: var(--contrast-color);
}

.light-bg {
    background-color: var(--light-color);
    color: var(--dark-color);
}

.primary-text {
    color: var(--primary-color);
}

.secondary-text {
    color: var(--secondary-color);
}

.contrast-text {
    color: var(--contrast-color);
}

.primary-border {
    border-color: var(--primary-color);
}

.secondary-border {
    border-color: var(--secondary-color);
}

.hover-primary:hover {
    background-color: var(--primary-color);
    color: var(--contrast-color);
}

.hover-secondary:hover {
    background-color: var(--secondary-color);
    color: var(--contrast-color);
}

.form-control:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 0.2rem rgba(var(--primary-color-rgb), 0.25);
}

.theme-btn {
    background: var(--primary-color);
    color: var(--contrast-color);
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    transition: all 0.3s ease;
}

.theme-btn:hover {
    background: var(--secondary-color);
}

.security-banner {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    color: var(--contrast-color);
    padding: 8px 15px;
    font-size: 12px;
    font-weight: 500;
    text-align: center;
    position: relative;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.security-banner .security-content {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    max-width: 1200px;
    margin: 0 auto;
}

.security-banner .security-icon {
    font-size: 14px;
    opacity: 0.9;
}

.security-banner .security-text {
    font-size: 11px;
    line-height: 1.3;
}

@media (max-width: 768px) {
    .security-banner {
        padding: 6px 10px;
        font-size: 10px;
    }

    .security-banner .security-content {
        gap: 6px;
    }

    .security-banner .security-icon {
        font-size: 12px;
    }

    .security-banner .security-text {
        font-size: 9px;
    }
}

.theme-notification {
    background: var(--light-color);
    border-left: 4px solid var(--primary-color);
    color: var(--dark-color);
}

.theme-progress {
    background: var(--light-color);
}

.theme-progress-bar {
    background: linear-gradient(135deg, var(--gradient-start), var(--gradient-end));
}

/* Diğer ürünler banner */
.other-products-banner {
    width: 100%;
    margin-bottom: 20px;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    position: relative;
}

.banner-link {
    display: block;
    text-decoration: none;
    color: inherit;
    width: 100%;
}

.banner-content {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    padding: 15px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    animation: bannerSlide 3s ease-in-out infinite;
}

.banner-content::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    animation: shimmer 2s infinite;
}

.banner-icon {
    font-size: 24px;
    margin-right: 15px;
    animation: bounce 2s infinite;
}

.banner-text {
    flex: 1;
    display: flex;
    flex-direction: column;
    color: white;
}

.banner-main-text {
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 2px;
}

.banner-sub-text {
    font-size: 12px;
    opacity: 0.9;
    font-weight: 400;
}

.banner-arrow {
    font-size: 20px;
    color: white;
    margin-left: 15px;
    transition: transform 0.3s ease;
}

.banner-link:hover .banner-content {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}

.banner-link:hover .banner-arrow {
    transform: translateX(5px);
}

.banner-link:hover {
    text-decoration: none;
    color: inherit;
}

@keyframes bannerSlide {
    0%, 100% {
        transform: translateX(0);
    }
    50% {
        transform: translateX(2px);
    }
}

@keyframes shimmer {
    0% {
        left: -100%;
    }
    100% {
        left: 100%;
    }
}

@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-3px);
    }
    60% {
        transform: translateY(-2px);
    }
}

@media (max-width: 768px) {
    .banner-content {
        padding: 12px 15px;
    }

    .banner-main-text {
        font-size: 14px;
    }

    .banner-sub-text {
        font-size: 11px;
    }

    .banner-icon {
        font-size: 20px;
        margin-right: 10px;
    }

    .banner-arrow {
        font-size: 18px;
        margin-left: 10px;
    }
}
