/* Aday ekranlarının ortak mobil düzeni; yönetim panelinden bağımsızdır. */
.candidate-app .candidate-page-shell,
.candidate-app #kt_app_root,
.candidate-app #kt_app_root .flex-column-fluid,
.candidate-app .candidate-page-shell > *,
.candidate-app .candidate-page-shell .card,
.candidate-app .candidate-page-shell .card-body,
.candidate-app .candidate-page-shell form,
.candidate-app .candidate-page-shell .row > div,
.candidate-app .candidate-page-shell .fv-row {
    min-width: 0;
    max-width: 100%;
}

.candidate-summary-value {
    height: auto;
    min-height: 2.5rem;
    white-space: normal;
    overflow-wrap: anywhere;
}

.candidate-app .select2-container .select2-selection__rendered,
.candidate-select-dropdown .select2-results__option {
    overflow-wrap: anywhere;
}

@media (max-width: 767.98px) {
    .candidate-app { background-attachment: scroll; }
    .candidate-app .candidate-page-shell,
    .candidate-app #kt_app_root .candidate-page-shell {
        width: 100%;
        padding: 16px 12px !important;
    }
    .candidate-app .candidate-page-shell > .card {
        width: 100%;
        border-radius: 16px;
    }
    .candidate-app .candidate-page-shell .card-body {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
    .candidate-app .candidate-page-shell > .card > .card-body {
        padding-top: 24px !important;
        padding-bottom: 24px !important;
    }
    .candidate-app .candidate-page-shell .alert,
    .candidate-app .candidate-page-shell .notice,
    .candidate-app .candidate-page-shell .form-label,
    .candidate-app .candidate-page-shell .form-check-label,
    .candidate-app .candidate-page-shell .engel-file-row,
    .candidate-app .candidate-page-shell .flex-grow-1 {
        min-width: 0;
        overflow-wrap: anywhere;
    }
    .candidate-app .candidate-page-shell .form-control,
    .candidate-app .candidate-page-shell .form-select,
    .candidate-app .select2-search__field {
        font-size: 16px !important;
    }
    .candidate-app .candidate-page-shell .form-control:not(.form-control-sm),
    .candidate-app .candidate-page-shell .form-select {
        min-height: 48px;
    }
    .candidate-app .candidate-page-shell .btn {
        min-height: 44px;
        white-space: normal;
        overflow-wrap: anywhere;
        touch-action: manipulation;
    }
    .candidate-app .candidate-page-shell .btn-icon,
    .candidate-app .modal .btn-close { min-width: 44px; min-height: 44px; }
    .candidate-app .candidate-page-shell .form-check {
        min-height: 44px;
        align-items: flex-start;
    }
    .candidate-app .candidate-page-shell .form-check-input {
        flex-shrink: 0;
        margin-top: 3px;
    }
    .candidate-app .candidate-page-shell .form-check-label {
        min-height: 44px;
        padding-top: 2px;
    }
    .candidate-app .candidate-page-shell .notice { padding: 16px !important; }
    .candidate-app .candidate-page-shell .notice .pe-7 { padding-right: 0 !important; }
    .candidate-app .candidate-payment-actions { gap: 16px; flex-direction: column !important; }
    .candidate-app .candidate-payment-actions .btn { width: 100%; }
    .candidate-app .candidate-page-shell .card-title { padding-left: 16px !important; }
    .candidate-app .candidate-page-shell .select2-container {
        width: 100% !important;
        min-width: 0;
        max-width: 100%;
    }
    .candidate-app .select2-container .select2-selection--single {
        height: auto !important;
        min-height: 48px;
    }
    .candidate-app .select2-container .select2-selection__rendered {
        display: block;
        line-height: 1.5 !important;
        white-space: normal !important;
        padding-top: 12px !important;
        padding-bottom: 12px !important;
        padding-right: 2.5rem !important;
        text-overflow: clip;
    }
    .candidate-app .select2-dropdown { max-width: calc(100vw - 24px); }
    .candidate-app .select2-results__option { min-height: 44px; white-space: normal; overflow-wrap: anywhere; }
    .candidate-app .candidate-form-actions {
        display: flex !important;
        flex-wrap: wrap;
        gap: 12px;
        padding-top: 16px;
        padding-bottom: env(safe-area-inset-bottom, 0px);
        border-top: 1px solid var(--candidate-border);
    }
    .candidate-app .candidate-form-actions > .btn { flex: 1 1 100%; width: 100%; }
    .candidate-app .candidate-page-shell .candidate-form-actions > .btn { font-size: 16px; }
    .candidate-app .candidate-form-actions > [type="submit"] { order: -1; }
    .candidate-app #registerCodeTimer,
    .candidate-app #resetCodeTimer { flex-wrap: wrap; }
    .candidate-app #registerResendActions { display: grid; gap: 12px; }
    .candidate-app #registerResendActions .btn { width: 100%; margin-left: 0 !important; }
    .candidate-app .engel-file-row { flex-wrap: wrap; gap: 8px; }
    .candidate-app .engel-file-row__name { overflow-wrap: anywhere; }
    .candidate-app .donem-kart,
    .candidate-app .basvuru-durum-kart { padding: 24px 16px; }
    .candidate-app .ziraatheader .logos { margin: 0; min-width: 0; }
    .candidate-app .ziraatheader .logos img { max-width: min(180px, 35vw); margin: 0; }
    .candidate-app .candidate-header-actions .d-sm-flex { display: none !important; }
    .candidate-app .candidate-mobile-support { display: flex !important; }
    .candidate-app .modal .btn { min-height: 44px; white-space: normal; }
    .candidate-app .modal .btn-icon { min-width: 44px; }
    .candidate-app .modal-dialog { margin: 12px; }
    .candidate-app .modal-footer { gap: 8px; padding-bottom: max(16px, env(safe-area-inset-bottom)); }
    .candidate-app .modal-footer > .btn { flex: 1 1 100%; margin: 0; }
}

@media (max-width: 575.98px) {
    .candidate-app .login-bg > div { padding: 24px 16px !important; }
    .candidate-app .login-bg .d-grid { width: 100%; margin-left: 0 !important; margin-right: 0 !important; }
    .candidate-app .kayit-bg .btn { width: 100%; }
    .candidate-app .candidate-page-shell .table { table-layout: fixed; width: 100%; }
    .candidate-app .candidate-page-shell .table td,
    .candidate-app .candidate-page-shell .table th { white-space: normal; overflow-wrap: anywhere; }
}

@media (prefers-reduced-motion: reduce) {
    .candidate-app .sp-bar-fill,
    .candidate-app .sp-bubble { transition: none; }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .candidate-app .candidate-page-shell .btn { min-height: 44px; }
    .candidate-app .candidate-page-shell .form-control,
    .candidate-app .candidate-page-shell .form-select { font-size: 16px; }
}

/* KVKK bağlantısı satır yüksekliğini artırınca kutu metnin üstünde kalmamalı. */
@media (max-width: 767.98px) {
    .candidate-app .candidate-page-shell .candidate-kvkk-consent { align-items: center; }
    .candidate-app .candidate-kvkk-consent .form-check-input { margin-top: 0; }
    .candidate-app .candidate-kvkk-consent .form-check-label {
        min-height: 0;
        padding-top: 0;
        line-height: 1.6;
    }
    .candidate-app .candidate-kvkk-consent .form-check-label .btn-link {
        min-height: 0;
        line-height: inherit;
        vertical-align: baseline;
    }
}

/* Mobil başlık: marka solda, çıkış aynı satırın sağında. */
@media (max-width: 767.98px) {
    .candidate-app .ziraatheader .candidate-header-row {
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 12px;
        min-height: 48px;
    }
    .candidate-app .ziraatheader .candidate-header-row .logos {
        flex: 1 1 auto;
        justify-content: flex-start;
        width: auto;
        height: 48px;
        min-height: 48px;
        gap: 8px !important;
        margin: 0;
    }
    .candidate-app .ziraatheader .candidate-header-row .logos img {
        height: 36px;
        max-height: 36px;
        max-width: calc(50% - 8px);
        width: auto;
        margin: 0;
    }
    .candidate-app .ziraatheader .candidate-header-row .logos img:first-child {
        max-width: min(160px, calc(100% - 58px));
    }
    .candidate-app .ziraatheader .candidate-header-row .logos img:only-child {
        height: 40px;
        max-height: 40px;
        max-width: min(210px, 100%);
    }
    .candidate-app .ziraatheader .candidate-header-actions {
        align-self: center;
        flex: 0 0 auto;
    }
    .candidate-app .candidate-header-logout {
        justify-content: center;
        gap: 6px;
        min-height: 44px;
        padding: 8px 12px !important;
        border: 1px solid var(--candidate-border);
        border-radius: 10px;
        background: var(--candidate-surface);
        color: var(--candidate-muted);
        font-size: 13px;
        white-space: nowrap;
    }
    .candidate-app .candidate-header-logout:hover,
    .candidate-app .candidate-header-logout:focus-visible {
        color: var(--bank-primary);
        border-color: var(--bank-primary);
    }
}

@media (max-width: 767.98px) {
    .candidate-app .ziraatheader .candidate-header-row--guest .logos {
        justify-content: center;
    }
    .candidate-app .ziraatheader .candidate-header-row--guest .candidate-header-actions {
        display: none !important;
    }
}
