/* auth sayfalari icin harici stiller: _auth-styles partial'indan tasinan auth-* temasi + auth sayfalarindan tasinan ek siniflar */
.auth-section {
    position: relative;
    padding: 90px 16px;
    min-height: 88vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background:
        radial-gradient(620px 420px at 12% 8%, rgba(61,90,254, 0.07), transparent 60%),
        radial-gradient(620px 460px at 88% 92%, rgba(14,165,164, 0.08), transparent 60%),
        #fbfaf8;
    overflow: hidden;
}
.auth-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(15,23,42, 0.035) 1px, transparent 1px);
    background-size: 22px 22px;
    -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 50%, #000 30%, transparent 75%);
            mask-image: radial-gradient(ellipse 70% 60% at 50% 50%, #000 30%, transparent 75%);
    pointer-events: none;
}
.auth-card {
    position: relative;
    background: #fff;
    border: 1px solid #ece9e4;
    border-radius: 22px;
    padding: 44px 40px 38px;
    box-shadow: 0 30px 70px -28px rgba(15,23,42, 0.28), 0 6px 18px -10px rgba(15,23,42, 0.12);
    width: 100%;
    max-width: 448px;
    margin: 0 auto;
    overflow: hidden;
}
.auth-card::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 5px;
    background: linear-gradient(90deg, #3D5AFE 0%, #0EA5A4 100%);
}
/* Marka logosu */
.auth-card .auth-logo {
    display: block;
    margin: 4px auto 22px;
    max-height: 44px;
    width: auto;
}
/* Opsiyonel ikon rozeti (forgot/reset) */
.auth-card .auth-icon {
    width: 58px;
    height: 58px;
    margin: 0 auto 18px;
    border-radius: 17px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: linear-gradient(135deg, #3D5AFE 0%, #0EA5A4 100%);
    box-shadow: 0 12px 26px -10px rgba(14,165,164, 0.6);
}
.auth-card .auth-title {
    font-family: 'Mulish', 'Inter', sans-serif;
    font-weight: 800;
    font-size: 25px;
    letter-spacing: -0.3px;
    color: #0F172A;
    text-align: center;
    margin: 0 0 7px;
}
.auth-card .auth-subtitle {
    color: #6b6b76;
    font-size: 14.5px;
    line-height: 1.55;
    text-align: center;
    margin: 0 auto 28px;
    max-width: 330px;
    font-family: 'Mulish', sans-serif;
}
.auth-card .auth-field { margin-bottom: 18px; }
.auth-card .auth-field label {
    display: block;
    font-weight: 700;
    font-size: 13.5px;
    color: #0F172A;
    margin-bottom: 7px;
    font-family: 'Mulish', sans-serif;
}
.auth-card .auth-field input[type="email"],
.auth-card .auth-field input[type="password"],
.auth-card .auth-field input[type="text"] {
    width: 100%;
    padding: 14px 16px;
    border: 1.5px solid #e6e3dd;
    border-radius: 12px;
    font-size: 15px;
    color: #0F172A;
    background: #fcfcfb;
    transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
    outline: none;
    box-sizing: border-box;
    font-family: 'Mulish', sans-serif;
}
.auth-card .auth-field input::placeholder { color: #aeaca6; }
.auth-card .auth-field input:focus {
    border-color: #0EA5A4;
    box-shadow: 0 0 0 4px rgba(14,165,164, 0.12);
    background: #fff;
}
.auth-card .auth-field input.is-invalid {
    border-color: #3D5AFE;
    box-shadow: 0 0 0 4px rgba(61,90,254, 0.10);
}
.auth-card .auth-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 22px;
    flex-wrap: wrap;
}
.auth-card .auth-check {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 22px;
}
.auth-card .auth-check input[type="checkbox"] {
    width: 18px;
    height: 18px;
    min-width: 18px;
    accent-color: #0EA5A4;
    cursor: pointer;
    margin-top: 2px;
}
.auth-card .auth-check label {
    font-size: 13.5px;
    color: #6b6b76;
    cursor: pointer;
    margin: 0;
    line-height: 1.55;
    font-family: 'Mulish', sans-serif;
}
.auth-card .auth-check a,
.auth-card .auth-link {
    color: #3D5AFE;
    text-decoration: none;
    font-weight: 700;
    font-size: 13.5px;
    font-family: 'Mulish', sans-serif;
}
.auth-card .auth-check a:hover,
.auth-card .auth-link:hover { text-decoration: underline; color: #2536C4; }
.auth-card .auth-submit {
    width: 100%;
    padding: 15px;
    border: none;
    border-radius: 12px;
    background: linear-gradient(135deg, #3D5AFE 0%, #0EA5A4 100%);
    color: #fff;
    font-size: 15.5px;
    font-weight: 800;
    cursor: pointer;
    transition: transform 0.18s, box-shadow 0.18s, filter 0.18s;
    font-family: 'Mulish', 'Inter', sans-serif;
    letter-spacing: 0.2px;
    box-shadow: 0 14px 30px -12px rgba(14,165,164, 0.5);
}
.auth-card .auth-submit:hover { transform: translateY(-2px); box-shadow: 0 18px 36px -12px rgba(14,165,164, 0.6); filter: saturate(1.05); }
.auth-card .auth-submit:active { transform: translateY(0); }
.auth-card .auth-footer {
    text-align: center;
    margin-top: 26px;
    padding-top: 20px;
    border-top: 1px solid #f0ede8;
    font-size: 14px;
    color: #6b6b76;
    font-family: 'Mulish', sans-serif;
}
.auth-card .auth-footer a {
    color: #3D5AFE;
    font-weight: 800;
    text-decoration: none;
}
.auth-card .auth-footer a:hover { text-decoration: underline; color: #2536C4; }
.auth-card .auth-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.auth-alert {
    padding: 13px 16px;
    border-radius: 12px;
    margin-bottom: 20px;
    font-size: 13.5px;
    line-height: 1.5;
    font-family: 'Mulish', sans-serif;
}
.auth-alert-success {
    background: #eafaf1;
    color: #1c7a47;
    border: 1px solid #c3eed5;
}
.auth-alert-danger {
    background: #fdecef;
    color: #2536C4;
    border: 1px solid #f6cdd5;
}
.auth-alert-danger ul { margin: 0; padding-left: 18px; }

@media (max-width: 576px) {
    .auth-section { padding: 56px 0; min-height: 84vh; }
    .auth-card { padding: 34px 24px 28px; margin: 0 16px; border-radius: 20px; }
    .auth-card .auth-title { font-size: 23px; }
}

/* Asagidaki siniflar auth sayfalarindaki statik style attribute'larindan tasindi (auth-submit vb. temel kurallardan sonra tanimli kalmali) */
.auth2-logo-img { height:50px; width:auto; display:block; }
.auth2-terms-err { display:block; margin:-12px 0 16px; }
.auth2-google-note { text-align:center; font-size:12px; color:var(--body); margin:12px 0 0; line-height:1.5; }
.auth-card .auth-submit.auth-submit-inline { width: auto; padding: 12px 28px; font-size: 14px; }
.auth-card .auth-link.auth-link-plain { background: none; border: none; cursor: pointer; font-size: 14px; }
.auth-center-block { text-align:center; margin-top:24px; }
.auth-card .auth-submit.auth-submit-link { display:inline-block; text-decoration:none; text-align:center; }
.auth-role-box { background:#f8f7ff; border:1px solid #e8e7ff; border-radius:8px; padding:16px; margin-bottom:24px; text-align:center; }
.auth-role-label { font-size:13px; color:#6e6e6e; }
.auth-role-value { font-size:14px; font-weight:700; color:#6C63FF; margin-left:6px; }
.auth-invite-desc { color:#4a4a4a; font-size:14px; line-height:1.6; margin-bottom:20px; }
.auth-card .auth-field input.auth-input-disabled { background:#f3f4f6; cursor:not-allowed; }
