:root {
    --brand-1: #7c3aed; /* mor */
    --brand-2: #06b6d4; /* camgöbeği */
    --glass: rgba(10,15,25,.68);
    --bd: rgba(255,255,255,.18);
}

html, body {
    height: 100%
}

body {
    background: radial-gradient(900px 420px at 8% -10%, rgba(124,58,237,.35), transparent 60%), radial-gradient(800px 520px at 110% 110%, rgba(6,182,212,.35), transparent 60%), linear-gradient(135deg, rgba(2,6,23,.65), rgba(2,6,23,.25)), url("/assets/images/login.jpg") center/cover no-repeat fixed;
    color: #e5e7eb;
}

.glass {
    background: var(--glass);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid var(--bd);
    border-radius: 1.25rem;
}

.text-brand {
    color: var(--brand-2);
}

.brand-badge {
    letter-spacing: .08em;
    font-weight: 700;
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: transparent;
    --bs-btn-border-color: transparent;
    background-image: linear-gradient(135deg,var(--brand-1),var(--brand-2));
    box-shadow: 0 6px 20px rgba(124,58,237,.35);
}

    .btn-primary:hover {
        filter: brightness(1.06);
        box-shadow: 0 8px 24px rgba(6,182,212,.35);
    }

/* --- Okunabilir koyu input --- */
.form-control.bg-dark {
    background-color: rgba(10,16,28,.95) !important;
    color: #ffffff !important;
    border: 1.5px solid rgba(59,130,246,.35);
    caret-color: #ffffff;
}

.form-control::placeholder {
    color: #e5e7eb !important;
    opacity: .85;
}

.form-floating > label {
    color: #e5e7eb !important;
    opacity: .92 !important;
}

.form-control.bg-dark:focus {
    color: #ffffff !important;
    border-color: #60a5fa !important;
    box-shadow: 0 0 0 .25rem rgba(59,130,246,.25) !important;
    background-color: rgba(10,16,28,.98) !important;
}

.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label {
    color: #f8fafc !important;
    opacity: 1 !important;
}

input:-webkit-autofill,
input:-webkit-autofill:focus {
    -webkit-text-fill-color: #ffffff !important;
    transition: background-color 9999s ease-in-out 0s;
}

.was-validated .form-control:invalid,
.form-control.is-invalid {
    border-color: #f87171 !important;
    box-shadow: 0 0 0 .25rem rgba(248,113,113,.25) !important;
    color: #ffffff !important;
}

/* --- Şifre alanı & göz butonu (sağ-alt) --- */
.pass-wrap {
    position: relative;
}

.eye-btn {
    position: absolute;
    right: .55rem;
    bottom: .55rem;
    top: auto;
    transform: none;
    border: 1px solid rgba(255,255,255,.25);
    color: #fff;
    background: rgba(255,255,255,.08);
    width: 36px;
    height: 36px;
    border-radius: .75rem;
    line-height: 1;
}

    .eye-btn:hover {
        background: rgba(255,255,255,.15);
    }
/* buton için sağ boşluk */
.form-floating.pass-wrap .form-control {
    padding-right: 3.25rem;
}

.form-floating.pass-wrap .invalid-feedback {
    margin-left: .125rem;
}
