/* Auth sayfaları (admin + süper admin) · 2026 tasarımı. body.auth-body değişkenleri burada tanımlıdır. */
@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;500;600;700;800;900&display=swap');
    /* ========== Auth sayfaları · 2026 tasarımı (b2bonline yönetim girişi ile aynı dil) ========== */
    *, *::before, *::after { box-sizing:border-box; }
    body.auth-body {
        --a-primary:#4f46e5; --a-primary-dk:#4338ca; --a-text:#0f172a; --a-muted:#64748b; --a-border:#e2e8f0; --a-bg:#eef2f7;
        font-family:'Nunito',sans-serif; margin:0; padding:0; min-height:100vh; background:var(--a-bg); color:var(--a-text); overflow-x:hidden;
    }
    .auth-container { display:flex; min-height:100vh; }

    /* Sol panel: indigo tanıtım alanı */
    .auth-brand {
        flex:0 0 45%; max-width:45%; position:relative; overflow:hidden;
        background:
            radial-gradient(circle at 1px 1px, rgba(255,255,255,.14) 1px, transparent 0) 0 0 / 28px 28px,
            linear-gradient(160deg,#4f46e5 0%,#6366f1 55%,#4f46e5 100%);
        display:flex; flex-direction:column; align-items:center; justify-content:center; padding:3rem;
    }
    .auth-brand::before { content:''; position:absolute; width:420px; height:420px; border-radius:50%; background:rgba(255,255,255,.08); top:-180px; right:-120px; }
    .auth-brand::after { content:''; position:absolute; width:260px; height:260px; border-radius:50%; background:rgba(255,255,255,.07); bottom:-90px; left:-90px; }
    .auth-shape-1, .auth-shape-2, .auth-shape-3 { position:absolute; border-radius:50%; background:rgba(255,255,255,.08); }
    .auth-shape-1 { width:110px; height:110px; bottom:22%; right:10%; }
    .auth-shape-2 { width:70px; height:70px; top:28%; left:14%; }
    .auth-shape-3 { width:40px; height:40px; top:56%; right:22%; }
    @keyframes authFadeInUp { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:translateY(0); } }

    .auth-brand-content { position:relative; z-index:2; text-align:center; max-width:400px; animation:authFadeInUp .5s ease-out; }
    .auth-brand-logo {
        width:72px; height:72px; border-radius:20px; display:inline-flex; align-items:center; justify-content:center; margin-bottom:1.25rem;
        background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.28);
    }
    .auth-brand-logo img { height:44px; width:auto; }
    .auth-brand-logo i { font-size:2rem; color:#fff; }
    .auth-brand-logo-text { margin-bottom:.5rem; }
    .auth-brand-logo-text img { max-height:52px; width:auto; max-width:100%; object-fit:contain; filter:brightness(0) invert(1); }
    .auth-brand h1 { font-size:2.1rem; font-weight:900; color:#fff; margin:0 0 .6rem; letter-spacing:-.02em; }
    .auth-brand p { font-size:1rem; color:rgba(255,255,255,.85); line-height:1.6; margin:0 0 1.75rem; }

    .auth-features { list-style:none; padding:0; margin:0 auto; text-align:left; display:inline-block; }
    .auth-features li { display:flex; align-items:center; gap:.75rem; color:#fff; font-size:.92rem; font-weight:600; margin-bottom:.9rem; }
    .auth-features li i { font-size:1.1rem; color:rgba(255,255,255,.85); flex-shrink:0; }

    /* Sağ panel: form */
    .auth-form-side { flex:1; display:flex; align-items:center; justify-content:center; padding:2rem; background:var(--a-bg); }
    .auth-form-wrapper { width:100%; max-width:430px; animation:authFadeInUp .45s ease-out .1s both; }
    .auth-card { background:transparent; padding:0; border:0; box-shadow:none; }

    .auth-card-icon { width:48px; height:48px; border-radius:14px; display:inline-flex; align-items:center; justify-content:center; font-size:1.25rem; color:#fff; margin-bottom:1rem; background:linear-gradient(135deg,#4f46e5,#6366f1); box-shadow:0 10px 22px -10px #4f46e5; }
    .auth-card-icon.register { background:linear-gradient(135deg,#059669,#10b981); box-shadow:0 10px 22px -10px #059669; }
    .auth-card-icon.forgot { background:linear-gradient(135deg,#d97706,#f59e0b); box-shadow:0 10px 22px -10px #d97706; }
    .auth-card-icon.reset { background:linear-gradient(135deg,#0284c7,#06b6d4); box-shadow:0 10px 22px -10px #0284c7; }

    .auth-card h2 { font-size:1.9rem; font-weight:900; color:var(--a-text); margin:0 0 .35rem; letter-spacing:-.02em; }
    .auth-card .auth-subtitle { font-size:.92rem; color:var(--a-muted); margin:0 0 1.9rem; line-height:1.5; }

    .auth-field { margin-bottom:1.2rem; }
    .auth-field label { display:flex; align-items:center; gap:.4rem; font-size:.78rem; font-weight:800; color:#334155; margin-bottom:.5rem; text-transform:uppercase; letter-spacing:.05em; }
    .auth-field label i { display:none; }

    .auth-input-wrap { position:relative; }
    .auth-input-wrap i.input-icon { position:absolute; left:.95rem; top:50%; transform:translateY(-50%); font-size:1rem; color:#94a3b8; z-index:2; transition:color .2s; }
    .auth-input-wrap input {
        width:100%; padding:.85rem .95rem .85rem 2.75rem; font-size:.95rem; font-weight:600; color:var(--a-text);
        border:1px solid var(--a-border); border-radius:12px; outline:none; background:#f8fafc; transition:all .2s;
    }
    .auth-input-wrap input::placeholder { color:#94a3b8; font-weight:500; }
    .auth-input-wrap input:focus { border-color:var(--a-primary); background:#fff; box-shadow:0 0 0 4px rgba(79,70,229,.14); }
    .auth-input-wrap input:focus ~ i.input-icon, .auth-input-wrap input:focus + i.input-icon { color:var(--a-primary); }
    .auth-input-wrap input.is-invalid { border-color:#ef4444; }

    .auth-pass-toggle { position:absolute; right:.85rem; top:50%; transform:translateY(-50%); background:none; border:none; color:#94a3b8; cursor:pointer; font-size:1.05rem; padding:0; z-index:2; }
    .auth-pass-toggle:hover { color:var(--a-primary); }

    .auth-check { display:flex; align-items:center; gap:.5rem; margin-bottom:1.4rem; }
    .auth-check input[type="checkbox"] { width:1.05rem; height:1.05rem; border-radius:4px; cursor:pointer; accent-color:var(--a-primary); }
    .auth-check label { font-size:.88rem; color:#334155; cursor:pointer; font-weight:600; }
    .auth-check a, .auth-form-wrapper a { color:var(--a-primary); font-weight:700; text-decoration:none; }

    .auth-btn {
        width:100%; padding:.9rem; font-size:1rem; font-weight:800; color:#fff; border:none; border-radius:12px; cursor:pointer;
        display:flex; align-items:center; justify-content:center; gap:.5rem; transition:transform .15s, box-shadow .15s;
        background:linear-gradient(135deg,#4f46e5,#4338ca); box-shadow:0 12px 24px -12px #4f46e5;
    }
    .auth-btn:hover { transform:translateY(-1px); box-shadow:0 16px 28px -12px #4f46e5; }
    .auth-btn.register { background:linear-gradient(135deg,#059669,#047857); box-shadow:0 12px 24px -12px #059669; }
    .auth-btn.forgot { background:linear-gradient(135deg,#d97706,#b45309); box-shadow:0 12px 24px -12px #d97706; }
    .auth-btn.reset { background:linear-gradient(135deg,#0284c7,#0369a1); box-shadow:0 12px 24px -12px #0284c7; }

    .auth-links { text-align:center; margin-top:1.4rem; }
    .auth-links p { font-size:.9rem; color:var(--a-muted); margin:0 0 .4rem; }
    .auth-links a { color:var(--a-primary); font-weight:800; text-decoration:none; }
    .auth-links a:hover { text-decoration:underline; }

    .auth-divider { display:flex; align-items:center; gap:1rem; margin:1.25rem 0; }
    .auth-divider::before, .auth-divider::after { content:''; flex:1; height:1px; background:var(--a-border); }
    .auth-divider span { font-size:.72rem; color:#94a3b8; text-transform:uppercase; font-weight:800; letter-spacing:.06em; }

    .auth-alert { padding:.75rem 1rem; border-radius:12px; font-size:.85rem; margin-bottom:1.25rem; display:flex; align-items:flex-start; gap:.5rem; }
    .auth-alert i { font-size:1rem; flex-shrink:0; margin-top:.05rem; }
    .auth-alert.success { background:#ecfdf5; border:1px solid #a7f3d0; color:#047857; }
    .auth-alert.danger { background:#fef2f2; border:1px solid #fecaca; color:#b91c1c; }

    .auth-footer { text-align:center; margin-top:1.75rem; }
    .auth-footer p { font-size:.78rem; color:#94a3b8; margin:0; }
    .auth-footer a { color:var(--a-primary); text-decoration:none; }

    .swal2-popup { border-radius:20px !important; font-family:'Nunito',sans-serif !important; }
    .swal2-actions button { border-radius:12px !important; font-weight:800 !important; }

    @media(max-width:992px) { .auth-brand { display:none; } .auth-form-side { padding:1.5rem; } }
    @media(max-width:576px) { .auth-card h2 { font-size:1.5rem; } }

/* Süper admin girişindeki eski koyu tema kalıntıları */
.auth-form-side::before { display:none !important; }
.auth-remember-wrap label { color:#334155 !important; font-weight:600; }
.auth-remember-wrap a { color:var(--a-primary) !important; font-weight:700; }

/* Gölgesiz, düz görünüm: buton, ikon kutusu, kart ve özellik kutularındaki tüm gölge / parlama efektleri kaldırılır.
   Sadece klavye odağında ince çerçeve kalır (erişilebilirlik). */
.auth-body :is(.auth-btn, .auth-btn:hover, .auth-card, .auth-card:hover, .auth-card-icon, .auth-brand-logo, .auth-features li, .auth-input-wrap input) {
    box-shadow: none !important; text-shadow: none !important;
}
.auth-body .auth-btn:hover { transform: none !important; filter: brightness(1.06); }
.auth-body .auth-btn::after { display: none !important; }
.auth-body .auth-input-wrap input:focus { box-shadow: 0 0 0 3px rgba(79, 70, 229, .12) !important; }
.auth-body .auth-features li:hover { transform: none !important; }
.auth-body .auth-brand h1 { text-shadow: none !important; }
.auth-body .auth-btn.login { background: var(--a-primary) !important; }
.auth-body .auth-btn.login:hover { background: var(--a-primary-dk) !important; filter: none; }
.auth-body .auth-card-icon.login { background: var(--a-primary) !important; }
.auth-body .auth-remember-wrap .auth-links { margin-top: 0 !important; text-align: right; }
.auth-body .auth-remember-wrap .auth-links p { color: var(--a-primary); font-size: .88rem; font-weight: 700; }
.auth-body .auth-remember-wrap label { display: inline-flex; align-items: center; gap: .5rem; }
