﻿/* Existing registration input compatibility, shared by both form variants. */
    .client-registration-page {
        color-scheme: light only;
    }

    /* Tüm cihazlar için temel form stilleri - Site.css Safari koyu temasını ezmek için */
    .register-card input[type="text"],
    .register-card input[type="email"],
    .register-card input[type="password"],
    .register-card input[type="tel"],
    .register-card select,
    .register-card textarea {
        background-color: #ffffff !important;
        color: #212529 !important;
        -webkit-text-fill-color: #212529 !important;
        opacity: 1 !important;
        border: 1px solid #ced4da !important;
        border-radius: 0.375rem;
    }

        /* Placeholder rengi */
        .register-card input::placeholder,
        .register-card textarea::placeholder {
            color: #6c757d !important;
            -webkit-text-fill-color: #6c757d !important;
            opacity: 1 !important;
        }

        /* Autofill durumunda arka plan rengini koruma */
        .register-card input:-webkit-autofill,
        .register-card input:-webkit-autofill:hover,
        .register-card input:-webkit-autofill:focus,
        .register-card select:-webkit-autofill,
        .register-card select:-webkit-autofill:hover,
        .register-card select:-webkit-autofill:focus {
            -webkit-box-shadow: 0 0 0 1000px #ffffff inset !important;
            -webkit-text-fill-color: #212529 !important;
            background-color: #ffffff !important;
            transition: background-color 5000s ease-in-out 0s;
        }

    /* Label stilleri */
    .register-card label,
    .register-card .form-label {
        color: #212529 !important;
        -webkit-text-fill-color: #212529 !important;
    }

    /* intl-tel-input (.iti) container: TÜM tarayıcılarda genişlik ve erişilebilirlik garantisi */
    .register-card .iti {
        display: block !important;
        width: 100% !important;
    }

    .register-card .iti input[type="tel"],
    .register-card .iti input[type="text"],
    .register-card .iti .iti__tel-input {
        width: 100% !important;
        height: 44px !important;
        min-height: 44px !important;
        box-sizing: border-box !important;
        touch-action: manipulation !important;
        -webkit-user-select: text !important;
        user-select: text !important;
        pointer-events: auto !important;
    }

    /* iPhone Safari için özel düzeltmeler */
    @supports (-webkit-touch-callout: none) {
        .register-card select,
        .register-card select option {
            background-color: #ffffff !important;
            color: #212529 !important;
            -webkit-text-fill-color: #212529 !important;
            -webkit-appearance: none !important;
            appearance: none !important;
        }

            .register-card select:focus {
                background-color: #ffffff !important;
                color: #212529 !important;
                -webkit-text-fill-color: #212529 !important;
                outline: none;
                border-color: #86b7fe !important;
                box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25) !important;
            }

        .register-card input[type="text"],
        .register-card input[type="email"],
        .register-card input[type="password"],
        .register-card input[type="tel"],
        .register-card textarea {
            font-size: 16px !important;
            -webkit-appearance: none !important;
            appearance: none !important;
            background-color: #ffffff !important;
            color: #212529 !important;
            -webkit-text-fill-color: #212529 !important;
        }

            .register-card select,
            .register-card .iti input[type="tel"],
            .register-card input[type="tel"][id="Phone"] {
                font-size: 16px;
                height: 44px;
                line-height: 1.3;
                padding: 0.5rem 0.75rem;
            }

        .register-card select {
            min-height: 44px;
            max-height: 50px;
            border-radius: 0.375rem;
            overflow-y: auto;
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e") !important;
            background-repeat: no-repeat !important;
            background-position: right 0.75rem center !important;
            background-size: 16px 12px !important;
            padding-right: 2.25rem !important;
        }

        .register-card .iti,
        .register-card .iti input[type="tel"] {
            width: 100% !important;
        }

        /* Mobilde input'un tıklanabilir/dokunulabilir olmasını garanti et */
        .register-card .iti input[type="tel"] {
            -webkit-user-select: text !important;
            user-select: text !important;
            pointer-events: auto !important;
            touch-action: manipulation !important;
        }

        .register-card .iti__country-list {
            max-height: 220px;
            overflow-y: auto;
            background-color: #ffffff !important;
            color: #212529 !important;
        }

            .register-card .iti__country-list .iti__country {
                background-color: #ffffff !important;
                color: #212529 !important;
            }
        /* Safari'deki .form-row koyu tema kuralını burada da eziyoruz (en yüksek specificity) */
        .register-card .form-row input,
        .register-card .form-row textarea,
        .register-card .form-row select,
        .register-card .form-row .k-input-inner {
            background-color: #ffffff !important;
            color: #212529 !important;
            -webkit-text-fill-color: #212529 !important;
        }
    }

    /* Prefers color scheme dark için override - her zaman light görünüm */
    @media (prefers-color-scheme: dark) {
        .register-card,
        .register-card input[type="text"],
        .register-card input[type="email"],
        .register-card input[type="password"],
        .register-card input[type="tel"],
        .register-card select,
        .register-card select option,
        .register-card textarea {
            background-color: #ffffff !important;
            color: #212529 !important;
            -webkit-text-fill-color: #212529 !important;
        }

            .register-card label,
            .register-card .form-label {
                color: #212529 !important;
                -webkit-text-fill-color: #212529 !important;
            }
            /* Dark mode + Safari: .form-row koyu tema kurallarını ezme */
            .register-card .form-row input,
            .register-card .form-row textarea,
            .register-card .form-row select,
            .register-card .form-row .k-input-inner {
                background-color: #ffffff !important;
                color: #212529 !important;
                -webkit-text-fill-color: #212529 !important;
            }
    }

/* Client registration landing layout; shared by the two registration variants. */
body.client-registration-page {
    --registration-ink: #152c3b;
    --registration-muted: #526571;
    --registration-accent: #126859;
    display: block;
    min-height: 100vh;
    height: auto;
    padding: 0;
    color: var(--registration-ink);
    background: radial-gradient(ellipse at 10% 36%, #dfede5 0, transparent 48%), #f5f7f4;
}
.client-registration-page .header-bar {
    position: relative;
    height: auto;
    min-height: 88px;
    gap: 20px;
    padding: 22px max(24px, calc((100% - 1200px) / 2));
    background: transparent;
    box-shadow: none;
    border-bottom: 1px solid #dbe3dd;
}
.client-registration-page .header-logo { min-width: 0; }
.client-registration-page .header-logo img { max-width: min(240px, 44vw) !important; }
.client-registration-page .footer-bar {
    position: static;
    height: auto;
    min-height: 64px;
    padding: 20px 24px;
    justify-content: center;
    background: transparent;
    box-shadow: none;
}
.client-registration-page .small-text { font-size: 12px; }
.client-registration-page > .small-text {
    max-width: 1000px;
    margin: 0 auto;
    padding: 24px;
    line-height: 1.7;
    text-align: center;
}
.client-registration {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
    align-items: center;
    gap: clamp(36px, 6vw, 88px);
    max-width: 1248px;
    margin: 0 auto;
    padding: 64px 24px 48px;
}
.client-registration-intro { min-width: 0; }
.client-registration-eyebrow {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 22px;
    color: var(--registration-accent);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .14em;
    line-height: 1.6;
}
.client-registration-eyebrow > span { width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.client-registration-intro h1 {
    max-width: 620px;
    margin: 0 0 24px;
    color: var(--registration-ink);
    font-size: clamp(36px, 4.4vw, 62px);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -.045em;
    overflow-wrap: anywhere;
}
.client-registration-lead { max-width: 450px; color: var(--registration-muted); font-size: 17px; line-height: 1.8; }
.client-registration-visual {
    margin: 28px 0;
    overflow: hidden;
    border-radius: 16px;
    background: #e4eade;
    aspect-ratio: 2 / 1;
}
.client-registration-visual img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 65%;
}
.client-registration-steps { margin: 0; padding: 24px 0 0; border-top: 1px solid #cfdcd3; list-style: none; }
.client-registration-steps li { display: flex; gap: 18px; margin-bottom: 20px; }
.client-registration-steps li > span { color: var(--registration-accent); font-size: 12px; line-height: 24px; font-weight: 700; }
.client-registration-steps h2 { margin: 0 0 5px; color: var(--registration-ink); font-size: 15px; font-weight: 600; }
.client-registration-steps p { margin: 0; color: var(--registration-muted); font-size: 13px; line-height: 1.7; }
.client-registration-form { min-width: 0; }
.client-registration .register-card {
    width: 100%;
    min-width: 0;
    max-width: none;
    margin: 0;
    padding: clamp(24px, 3.4vw, 44px);
    border: 1px solid #dde5df;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 22px 64px -32px #183b3540;
}
.client-registration-form .client-registration-eyebrow { margin-bottom: 10px; }
.client-registration-form h2 { margin: 0 0 10px; font-size: 28px; font-weight: 600; color: var(--registration-ink); }
.client-registration-form-description { margin-bottom: 28px; color: var(--registration-muted); font-size: 14px; line-height: 1.7; }
.client-registration-submit.btn { width: 100%; min-height: 50px; margin-top: 10px; border-color: var(--registration-accent); border-radius: 8px; background: var(--registration-accent); color: #fff; font-size: 16px; font-weight: 600; }
.client-registration-submit.btn:hover { background: #0c5145; border-color: #0c5145; }
.client-registration-submit i { margin-inline-start: 10px; }
.client-registration-signin { margin: 24px 0 0; text-align: center; font-size: 13px; line-height: 1.7; }
.client-registration-signin a { color: var(--registration-accent); text-decoration: underline; text-underline-offset: 3px; }
.client-registration :is(a, button, input, select):focus-visible { outline: 3px solid #367f70; outline-offset: 3px; }
@media (max-width: 800px) {
    .client-registration { grid-template-columns: minmax(0, 1fr); max-width: 620px; padding-top: 36px; gap: 28px; }
    .client-registration-intro h1 { max-width: 520px; font-size: clamp(34px, 7vw, 48px); }
    .client-registration-lead { font-size: 15px; }
    .client-registration-visual {
    margin: 28px 0;
    overflow: hidden;
    border-radius: 16px;
    background: #e4eade;
    aspect-ratio: 2 / 1;
}
.client-registration-visual img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 65%;
}
.client-registration-steps { display: none; }
    .client-registration-eyebrow { margin-bottom: 14px; }
}
@media (max-width: 380px) {
    .client-registration { padding-inline: 16px; }
    .client-registration .register-card { padding: 22px 18px; }
}
