/*
 * Aday Portalı BS5 (Metronic) layout'u. Kurumun birincil rengi layout'ta :root üzerinden basılır (PortalTheme::cssVariables()).
 */
.vt-portal-logo {
    max-height: 48px;
    max-width: 160px;
    width: auto;
}

/* Metronic demo başlığı VIDCO mavisi / koyu gri; portal açık zemin + kurum rengi şerit kullanır */
.vt-portal .app-header {
    border-top: 3px solid var(--bs-primary);
}

.vt-portal .app-header-primary {
    background-color: var(--bs-body-bg) !important;
    border-bottom: 1px solid var(--bs-gray-200);
}

.vt-portal .app-header-secondary {
    background-color: var(--bs-body-bg) !important;
}

.vt-portal .app-header-secondary .menu-title {
    white-space: nowrap;
}

.vt-portal .app-header-secondary .menu-link.active,
.vt-portal .app-header-secondary .menu-item.here > .menu-link {
    background-color: var(--bs-primary-light);
}

.vt-portal .app-header-secondary .menu-link.active .menu-title,
.vt-portal .app-header-secondary .menu-link.active .menu-icon i,
.vt-portal .app-header-secondary .menu-item.here > .menu-link .menu-title,
.vt-portal .app-header-secondary .menu-item.here > .menu-link .menu-icon i {
    color: var(--bs-primary);
}

@media (min-width: 992px) {
    body.vt-portal[data-kt-app-header-stacked=true] {
        --bs-app-header-primary-height: 70px;
        --bs-app-header-secondary-height: 56px;
    }

    .vt-portal .app-header-secondary {
        min-height: 56px;
        box-shadow: 0 6px 12px -8px rgba(0, 0, 0, .08);
    }

    .vt-portal .app-header-secondary .menu-link {
        border-radius: .475rem;
        padding-left: .85rem;
        padding-right: .85rem;
    }

    /* Misafirde "Online Aday İşlemleri": sağa yaslı birincil buton */
    .vt-portal .app-header-secondary .vt-online-btn > .menu-link {
        background-color: var(--bs-primary);
        padding-top: .6rem !important;
        padding-bottom: .6rem !important;
    }

    .vt-portal .app-header-secondary .vt-online-btn > .menu-link:hover,
    .vt-portal .app-header-secondary .vt-online-btn.show > .menu-link {
        background-color: var(--bs-primary-active);
    }

    .vt-portal .app-header-secondary .vt-online-btn > .menu-link .menu-title,
    .vt-portal .app-header-secondary .vt-online-btn > .menu-link .menu-icon i {
        color: var(--bs-primary-inverse) !important;
    }

    .vt-portal .app-header-secondary .vt-online-btn > .menu-link .menu-arrow:after {
        background-color: var(--bs-primary-inverse) !important;
    }
}

/* Flex çocukları içerik genişliğine uzamasın (sekmeler gibi nowrap içerik sayfayı taşırmasın) */
.vt-portal .app-page {
    max-width: 100%;
}

.vt-portal .app-wrapper,
.vt-portal .app-main {
    min-width: 0;
}

.vt-portal .app-content {
    padding-top: 1.75rem;
    padding-bottom: 2.5rem;
}

.vt-portal .app-footer {
    background: var(--bs-body-bg);
    border-top: 1px solid var(--bs-gray-200);
}

.vt-portal-payment-logo {
    max-height: 28px;
    width: auto;
}

/* Sekmeler dar ekranda yatay kaydırılır (sayfa değil) */
.vt-portal-tabs {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

.vt-portal-tabs::-webkit-scrollbar {
    display: none;
}

.vt-portal-whatsapp {
    position: fixed;
    right: 20px;
    bottom: 20px;
    width: 52px !important;
    height: 52px !important;
    z-index: 105;
}

/* Kurum içeriği (Config'ten gelen HTML) kart içinde okunur kalsın */
.vt-portal-content img {
    max-width: 100%;
    height: auto;
}

.vt-portal-content table {
    max-width: 100%;
}

/* Ana sayfa slider'ı */
.vt-portal-slider .carousel-item img {
    height: 300px;
    object-fit: cover;
}

.vt-portal-slider .carousel-caption {
    left: 2.5rem;
    right: 2.5rem;
    bottom: 2.25rem;
    max-width: 640px;
    text-shadow: 0 1px 3px rgba(0, 0, 0, .35);
}

@media (max-width: 767.98px) {
    .vt-portal-slider .carousel-item img {
        height: 170px;
    }

    .vt-portal-slider .carousel-caption {
        left: 1.25rem;
        right: 1.25rem;
        bottom: 1.5rem;
    }
}

/* Sınav kartı görseli */
.vt-exam-card-image img {
    width: 72px;
    height: auto;
    border-radius: .475rem;
}

/* CActiveForm hata mesajı: BS5 .invalid-feedback varsayılan gizli; yiiactiveform satır içi display ile yönetir */
.vt-portal .invalid-feedback.vt-error {
    display: block;
}

/* İstanbul Senin (İBB) ile giriş — LoginIBB::isActive() kurumunda */
.vt-portal .vt-ibb-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #CB0A5F;
    color: #FFFFFF;
    font-weight: 600;
}

.vt-portal .vt-ibb-btn:hover,
.vt-portal .vt-ibb-btn:focus {
    background-color: #A9084F;
    color: #FFFFFF;
}

.vt-ibb-logo {
    height: 22px;
    width: auto;
}

.vt-portal-vidco-logo {
    height: 22px;
    width: auto;
}

/* Model yardımcılarının (getTotalLabel, getRenderStatus vb.) ürettiği eski Bootstrap 2 etiketleri */
.vt-portal .label {
    display: inline-block;
    padding: .35rem .6rem;
    border-radius: .425rem;
    font-size: .85rem;
    font-weight: 600;
    line-height: 1;
    color: var(--bs-gray-700);
    background-color: var(--bs-gray-200);
}

.vt-portal .label-success { color: var(--bs-success); background-color: var(--bs-success-light); }
.vt-portal .label-important,
.vt-portal .label-danger { color: var(--bs-danger); background-color: var(--bs-danger-light); }
.vt-portal .label-warning { color: var(--bs-warning); background-color: var(--bs-warning-light); }
.vt-portal .label-info { color: var(--bs-info); background-color: var(--bs-info-light); }
.vt-portal .label-inverse { color: var(--bs-white); background-color: var(--bs-gray-800); }

/* Aday bilgileri gibi CDetailView tabloları */
.vt-detail-view th {
    width: 40%;
    color: var(--bs-gray-600);
    font-weight: 600;
}

.vt-detail-view td {
    color: var(--bs-gray-900);
}

.vt-file-preview img {
    max-height: 48px;
    width: auto;
    border-radius: .425rem;
}

/* Birim birleştirme: js/portal.join.js'in ürettiği birim listesi */
.vt-join-units ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.vt-join-units li {
    display: flex;
    align-items: flex-start;
    gap: .6rem;
    padding: .6rem 0;
    border-bottom: 1px dashed var(--bs-gray-200);
}

.vt-join-units li input[type=checkbox],
.vt-join-units .job_level_group > input[type=radio] {
    width: 1.15rem;
    height: 1.15rem;
    margin-top: .15rem;
    accent-color: var(--bs-primary);
    flex-shrink: 0;
}

.vt-join-units .job_level_group > label {
    font-weight: 700;
    margin-left: .4rem;
}

.vt-join-units .alert {
    border: 0;
    background-color: var(--bs-warning-light);
    color: var(--bs-gray-800);
}

/* ===== Başvuru formu (views5/front/application/_form) ===== */
.vt-application-form .vt-form-section .card-header {
    min-height: auto;
}

/* Bölüm başlıkları: açık ton gri sayfa zemininde kayboluyor, kurum renginde dolu başlık */
.vt-portal #kt_app_content_container .vt-application-form .vt-form-section > .card-header {
    background-color: var(--bs-primary);
    padding-top: .9rem !important;
    padding-bottom: .9rem;
    margin-bottom: 1.25rem;
}

.vt-portal #kt_app_content_container .vt-application-form .vt-form-section > .card-header .card-title {
    color: var(--bs-primary-inverse) !important;
}

/* portal.applicant.js'in ürettiği birim / grup listeleri */
.vt-job-level-list h4,
.vt-job-level-list h5 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--bs-gray-900);
    margin: 1rem 0 .5rem;
}

.vt-job-level-list ul {
    list-style: none;
    padding-left: 0;
    margin-bottom: .5rem;
}

.vt-job-level-list li {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    padding: .45rem 0;
    border-bottom: 1px dashed var(--bs-gray-200);
}

.vt-job-level-list input[type=checkbox],
.vt-job-level-list input[type=radio] {
    width: 1.1rem;
    height: 1.1rem;
    margin-top: .15rem;
    accent-color: var(--bs-primary);
    flex-shrink: 0;
}

.vt-job-level-list .selected,
.vt-job-level-list li.selected {
    color: var(--bs-success);
}

.vt-job-level-list .alert {
    border: 0;
    background-color: var(--bs-warning-light);
    color: var(--bs-gray-800);
    padding: .75rem 1rem;
}

.vt-job-level-list .job_level_group {
    border: 1px solid var(--bs-gray-300);
    border-radius: .625rem;
    padding: 1rem 1.25rem;
    margin-bottom: 1rem;
    cursor: pointer;
}

.vt-job-level-list .job_level_group.selected {
    border-color: var(--bs-success);
    background-color: var(--bs-success-light);
}

.vt-job-level-list .group-name {
    font-weight: 700;
    margin-left: .4rem;
}

.vt-job-level-list .group_unit {
    padding: .3rem 0 .3rem 1.6rem;
    font-size: .95rem;
}

/* Sınav programı kutuları (Genel Başvuru dahil) */
#examListField .exam-program {
    border: 1px solid var(--bs-gray-300);
    border-radius: .625rem;
    padding: 1rem 1.25rem;
    margin-bottom: .75rem;
    cursor: pointer;
    transition: border-color .15s, background-color .15s;
}

#examListField .exam-program:hover {
    border-color: var(--bs-primary);
}

#examListField .exam-program.selected {
    border-color: var(--bs-success);
    background-color: var(--bs-success-light);
}

#examListField .exam-program > label {
    font-weight: 700;
    color: var(--bs-gray-900);
    cursor: pointer;
    margin-bottom: .25rem;
}

#examListField .exam-program p,
#examListField .exam-program .exam-info {
    color: var(--bs-gray-700);
    font-size: .95rem;
    margin: 0;
}

#examListField .selected,
#examListField span.selected {
    color: var(--bs-success);
    font-weight: 600;
}

/* EAjaxUpload (fineuploader) butonu */
.vt-ajax-upload .qq-upload-button {
    display: inline-block;
    padding: .55rem 1rem;
    border-radius: .475rem;
    background-color: var(--bs-primary-light);
    color: var(--bs-primary);
    font-weight: 600;
    cursor: pointer;
}

.vt-ajax-upload .qq-upload-list {
    list-style: none;
    padding: 0;
    margin: .5rem 0 0;
    font-size: .9rem;
}

.vt-ajax-upload .qq-upload-drop-area {
    display: none !important;
}

/* IBAN hane kutuları; geri ödeme seçilmediğinde (portal.applicant.js .ibanFields gizler) boş kart da gizlenir */
.vt-iban-digit {
    width: 2.1rem;
    height: 2.5rem;
    font-weight: 600;
}

.vt-form-section:has(.ibanFields[style*="display: none"]) {
    display: none;
}

/* Kredi kartı önizlemesi (Card.js) dar ekranda taşmasın */
.payment_sections_tab .card-wrapper {
    max-width: 100%;
    overflow: hidden;
}

/* Anket: seçili seçenek */
.vt-survey-question .answer.active {
    border-style: solid !important;
    background-color: var(--bs-primary-light) !important;
}

.vt-survey-question .answer.active .vt-survey-char {
    background-color: var(--bs-primary);
    color: var(--bs-primary-inverse);
}

/* Vurgu rengi (PortalTheme::accentColor): başvuru çağrıları birincil renkten ayrışır */
.vt-portal .btn.btn-vt-accent {
    color: var(--vt-accent-inverse);
    background-color: var(--vt-accent);
    border-color: var(--vt-accent);
}

.vt-portal .btn.btn-vt-accent:hover,
.vt-portal .btn.btn-vt-accent:focus,
.vt-portal .btn.btn-vt-accent:active {
    color: var(--vt-accent-inverse);
    background-color: var(--vt-accent-active) !important;
    border-color: var(--vt-accent-active) !important;
}

.vt-portal .btn.btn-vt-accent i {
    color: var(--vt-accent-inverse);
}

/* Sınav türleri: kurum renginin koyu / orta / açık tonları (PortalTheme --vt-tone-*) */
.vt-portal .vt-exam-type {
    border-left: 3px solid var(--vt-tone-2);
    padding-left: 1rem;
}

.vt-portal .vt-exam-type-badge {
    display: inline-block;
    border-radius: .425rem;
    padding: .2rem .55rem;
    font-size: .85rem;
    font-weight: 600;
    margin-bottom: .35rem;
}

.vt-portal .vt-exam-type-teorical { border-left-color: var(--vt-tone-1); }
.vt-portal .vt-exam-type-teorical .vt-exam-type-badge { background-color: var(--vt-tone-1-bg); color: var(--vt-tone-1-fg); }
.vt-portal .vt-exam-type-interview { border-left-color: var(--vt-tone-2); }
.vt-portal .vt-exam-type-interview .vt-exam-type-badge { background-color: var(--vt-tone-2-bg); color: var(--vt-tone-2-fg); }
.vt-portal .vt-exam-type-performance { border-left-color: var(--vt-tone-3); }
.vt-portal .vt-exam-type-performance .vt-exam-type-badge { background-color: var(--vt-tone-3-bg); color: var(--vt-tone-3-fg); }

/* Başvuru türü kartları: ikonlar kurum renginin tonlarında */
.vt-portal .vt-tone-1 { background-color: var(--vt-tone-1-bg) !important; color: var(--vt-tone-1-fg) !important; }
.vt-portal .vt-tone-2 { background-color: var(--vt-tone-2-bg) !important; color: var(--vt-tone-2-fg) !important; }
.vt-portal .vt-tone-3 { background-color: var(--vt-tone-3-bg) !important; color: var(--vt-tone-3-fg) !important; }
.vt-portal [class*="vt-tone-"] i { color: inherit !important; }

/* Sayfadaki (iç içe olmayan) kartlar: üstte kurum renginde ince şerit, başlıkta açık ton */
.vt-portal #kt_app_content_container .card:not(.card .card):not(.modal .card):not(.vt-portal-slider):not([class*="bg-light"]) {
    box-shadow: inset 0 3px 0 var(--vt-tone-2), var(--bs-card-box-shadow);
}

.vt-portal #kt_app_content_container .card > .card-header {
    background-color: var(--vt-tone-3-bg);
}

.vt-portal #kt_app_content_container .card > .card-header .card-title,
.vt-portal #kt_app_content_container .card > .card-header .card-title h3 {
    color: var(--vt-tone-1-fg);
}

/* Tıklanabilir kartlar (başvuru türleri, sınav kartları) hover'da kurum renginde kenarlık */
.vt-portal .vt-application-type,
.vt-portal .vt-exam-card {
    transition: border-color .15s, transform .15s;
}

.vt-portal .vt-application-type:hover,
.vt-portal .vt-exam-card:hover {
    border-color: var(--vt-tone-2) !important;
    transform: translateY(-2px);
}
