/* Yucelsoft Custom Styles - Logo Colors */
:root {
    --primary-color: #102947;
    --secondary-color: #14415a;
    --accent-color: #1a5276;
    --text-color: #333;
    --light-bg: #f8f9fa;
}

body {
    padding-top: 70px;
    color: var(--text-color);
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

/* Navigation */
.navbar-default {
    background-color: var(--primary-color);
    border-color: var(--secondary-color);
}

    .navbar-default .navbar-brand,
    .navbar-default .navbar-nav > li > a {
        color: #fff !important;
    }

        .navbar-default .navbar-brand:hover,
        .navbar-default .navbar-nav > li > a:hover {
            color: #e6e6e6 !important;
        }

    .navbar-default .navbar-toggle .icon-bar {
        background-color: #fff;
    }

/* Buttons */
.btn-primary {
    background-color: var(--primary-color);
    border-color: var(--secondary-color);
}

    .btn-primary:hover {
        background-color: var(--secondary-color);
        border-color: var(--accent-color);
    }

/* Footer */
.footer {
    background-color: var(--light-bg);
    border-top: 1px solid #e7e7e7;
    padding: 20px 0;
    margin-top: 40px;
}

/* Product Cards */
/*.product-card {
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 15px;
    margin-bottom: 20px;
    transition: box-shadow 0.3s ease;
}

    .product-card:hover {
        box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    }*/

/* Product Cards */
.product-card {
    border: 2px solid var(--secondary-color);
    border-radius: 8px;
    padding: 15px;
    margin-bottom: 20px;
    transition: all 0.3s ease;
    background-color: rgba(16, 41, 71, 0.05); /* Hafif mavi tonunda arkaplan */
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

    .product-card:hover {
        box-shadow: 0 6px 12px rgba(0,0,0,0.15);
        border-color: var(--accent-color);
        background-color: rgba(16, 41, 71, 0.08); /* Hover durumunda biraz daha koyu */
        transform: translateY(-2px);
    }

.product-image {
    max-width: 100%;
    height: auto;
    margin-bottom: 15px;
    border-radius: 4px;
}

/*.product-image {
    max-width: 100%;
    height: auto;
    margin-bottom: 15px;
}
*/
/* Homepage Hero Section */
.hero-section {
    background: linear-gradient(135deg, var(--primary-color), var(--accent-color));
    color: white;
    padding: 60px 0;
    text-align: center;
    margin-bottom: 40px;
}

    .hero-section h1 {
        font-size: 3em;
        margin-bottom: 20px;
    }

    .hero-section p {
        font-size: 1.2em;
        margin-bottom: 30px;
    }

/* Forms */
.form-control:focus {
    border-color: var(--secondary-color);
    box-shadow: 0 0 0 0.2rem rgba(16, 41, 71, 0.25);
}

/* Responsive */
@media (max-width: 768px) {
    .hero-section h1 {
        font-size: 2em;
    }

    .navbar-brand img {
        height: 25px;
    }
}

/* Validation */
.field-validation-error {
    color: #d9534f;
    font-size: 0.9em;
}

.input-validation-error {
    border-color: #d9534f;
}


/* Checkbox düzeltmeleri */
.checkbox input[type="checkbox"] {
    margin-right: 5px;
    margin-top: 2px;
}

.checkbox label {
    font-weight: normal;
    margin-bottom: 0;
    cursor: pointer;
}

/* Login Güvenlik Stilleri */
.progress {
    height: 25px;
    border-radius: 4px;
    background-color: #f5f5f5;
    box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
}

.progress-bar {
    font-size: 12px;
    line-height: 25px;
    font-weight: bold;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
    transition: width 0.6s ease;
}

/* Kritik uyarı animasyonu */
@keyframes pulseWarning {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.02);
    }

    100% {
        transform: scale(1);
    }
}

.alert-danger#criticalWarning {
    animation: pulseWarning 2s infinite;
    border-left: 4px solid #d9534f;
}

/* Deneme sayacı */
.attempts-counter {
    font-family: 'Courier New', monospace;
    font-weight: bold;
    font-size: 1.1em;
}

.attempts-low {
    color: #d9534f;
    font-weight: bold;
}

.attempts-medium {
    color: #f0ad4e;
}

.attempts-normal {
    color: #5cb85c;
}

/* Responsive düzenlemeler */
@media (max-width: 768px) {
    .progress {
        height: 20px;
    }

    .progress-bar {
        font-size: 10px;
        line-height: 20px;
    }
}


/* Şifre Değiştirme Sayfası Özel Stiller */
.password-change-panel {
    border: 1px solid var(--yucelsoft-secondary);
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(16, 41, 71, 0.1);
}

.password-change-header {
    background: linear-gradient(135deg, var(--yucelsoft-primary), var(--yucelsoft-secondary));
    color: white;
    border-radius: 8px 8px 0 0;
    padding: 15px 20px;
    border-bottom: none;
}

.password-change-body {
    padding: 25px;
    background-color: white;
    border-radius: 0 0 8px 8px;
}

.yucelsoft-btn-primary {
    background: linear-gradient(135deg, var(--yucelsoft-primary), var(--yucelsoft-secondary));
    color: white;
    border: 1px solid var(--yucelsoft-primary);
    padding: 8px 20px;
    border-radius: 4px;
    transition: all 0.3s ease;
}

    .yucelsoft-btn-primary:hover {
        background: linear-gradient(135deg, var(--yucelsoft-secondary), var(--yucelsoft-accent));
        color: white;
        transform: translateY(-1px);
        box-shadow: 0 2px 8px rgba(16, 41, 71, 0.3);
    }

.yucelsoft-btn-secondary {
    background-color: var(--yucelsoft-secondary);
    color: white;
    border: 1px solid var(--yucelsoft-secondary);
    padding: 6px 15px;
    border-radius: 4px;
    transition: all 0.3s ease;
}

    .yucelsoft-btn-secondary:hover {
        background-color: var(--yucelsoft-primary);
        color: white;
        transform: translateY(-1px);
    }

/* Input grupları için özel stiller */
.yucelsoft-input-group {
    border-radius: 4px;
    overflow: hidden;
}

    .yucelsoft-input-group .form-control {
        border: 1px solid var(--yucelsoft-secondary);
        border-right: none;
        border-radius: 4px 0 0 4px;
    }

    .yucelsoft-input-group .input-group-btn .btn {
        border: 1px solid var(--yucelsoft-secondary);
        border-left: none;
        border-radius: 0 4px 4px 0;
        background-color: white;
        color: var(--yucelsoft-primary);
    }

        .yucelsoft-input-group .input-group-btn .btn:hover {
            background-color: var(--yucelsoft-light);
            border-color: var(--yucelsoft-primary);
        }

/* Şifre kuralları kutusu */
.password-rules-box {
    background-color: var(--yucelsoft-light);
    border: 1px solid #dee2e6;
    border-left: 4px solid var(--yucelsoft-secondary);
    border-radius: 4px;
    padding: 15px;
    margin-top: 10px;
}

/* HTML Content Stilleri */
.html-content {
    line-height: 1.6;
    font-size: 14px;
}

    .html-content h1 {
        color: #102947;
        font-size: 2em;
        margin: 1em 0 0.5em 0;
        border-bottom: 2px solid #14415a;
        padding-bottom: 0.3em;
    }

    .html-content h2 {
        color: #14415a;
        font-size: 1.5em;
        margin: 1.5em 0 0.5em 0;
    }

    .html-content h3 {
        color: #1a5276;
        font-size: 1.2em;
        margin: 1.2em 0 0.5em 0;
    }

    .html-content p {
        margin-bottom: 1em;
        text-align: justify;
    }

    .html-content ul,
    .html-content ol {
        margin-bottom: 1em;
        padding-left: 2em;
    }

    .html-content li {
        margin-bottom: 0.5em;
    }

    .html-content table {
        width: 100%;
        margin-bottom: 1em;
        border-collapse: collapse;
        border: 1px solid #ddd;
    }

        .html-content table th {
            background: linear-gradient(135deg, #102947, #14415a);
            color: white;
            padding: 12px;
            text-align: left;
            font-weight: bold;
        }

        .html-content table td {
            padding: 10px 12px;
            border: 1px solid #ddd;
        }

        .html-content table tr:nth-child(even) {
            background-color: #f8f9fa;
        }

    .html-content .alert {
        padding: 15px;
        margin: 1em 0;
        border: 1px solid transparent;
        border-radius: 4px;
        border-left: 4px solid;
    }

    .html-content .alert-info {
        background-color: #d9edf7;
        border-color: #bce8f1;
        color: #31708f;
        border-left-color: #31708f;
    }

    .html-content .alert-warning {
        background-color: #fcf8e3;
        border-color: #faebcc;
        color: #8a6d3b;
        border-left-color: #8a6d3b;
    }

    .html-content .alert-success {
        background-color: #dff0d8;
        border-color: #d6e9c6;
        color: #3c763d;
        border-left-color: #3c763d;
    }

/* Policy ve Terms Özel Stiller */
.policy-section,
.terms-section {
    background: white;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    margin-bottom: 30px;
}

.policy-content h2,
.terms-content h2 {
    color: #102947;
    border-left: 4px solid #102947;
    padding-left: 15px;
}

/* Responsive */
@media (max-width: 768px) {
    .html-content table {
        font-size: 12px;
    }

        .html-content table th,
        .html-content table td {
            padding: 8px;
        }
}