/* ==========================================================
   Source: admin-login.php | style block 1
   ========================================================== */

* { margin:0; padding:0; box-sizing:border-box; }
        body { font-family:'Inter',sans-serif; background:#f0f4f8; min-height:100vh; }
        .auth-container { width:100%; min-height:100vh; display:flex; background:#fff; box-shadow:0 0 30px rgba(0,0,0,0.05); }
        .image-section { flex:1; background:url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?q=80&w=1920&auto=format&fit=crop') center/cover no-repeat; position:relative; display:flex; align-items:center; justify-content:center; min-height:100vh; }
        .image-section::before { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(15,23,42,0.75),rgba(79,70,229,0.65)); backdrop-filter:blur(2px); }
        .image-content { position:relative; z-index:2; text-align:center; color:white; padding:2rem; max-width:400px; animation:fadeInUp 0.8s ease; }
        .image-content i { font-size:5rem; margin-bottom:1.5rem; display:block; text-shadow:0 4px 20px rgba(0,0,0,0.3); background:linear-gradient(135deg,#fff,#e2e8ff); -webkit-background-clip:text; background-clip:text; color:transparent; }
        .image-content h1 { font-size:2.6rem; font-weight:800; margin-bottom:1rem; line-height:1.2; letter-spacing:-0.5px; }
        .image-content p { font-size:1.1rem; line-height:1.6; opacity:0.95; font-weight:400; }
        .form-section { flex:1; padding:3rem; min-height:100vh; display:flex; flex-direction:column; justify-content:center; background:#ffffff; box-shadow:-8px 0 30px rgba(0,0,0,0.03); }
        .signin-title { font-size:2.2rem; font-weight:800; background:linear-gradient(120deg,#1e293b,#4f46e5); -webkit-background-clip:text; background-clip:text; color:transparent; letter-spacing:-0.3px; margin-bottom:2rem; }
        .signin-title i { background:none; -webkit-background-clip:unset; background-clip:unset; color:#4f46e5; margin-right:8px; }
        .form-container { width:100%; }
        .global-error { background:#fee2e2; border-left:4px solid #dc2626; padding:0.75rem 1rem; border-radius:1rem; margin-bottom:1.5rem; display:flex; align-items:center; gap:0.7rem; font-size:0.85rem; font-weight:500; color:#991b1b; }
        .global-error.hidden { display:none; }
        .global-success { background:#dcfce7; border-left:4px solid #22c55e; color:#166534; }
        .input-group { margin-bottom:1.5rem; }
        .input-label { display:flex; align-items:center; gap:0.4rem; font-weight:600; font-size:0.85rem; color:#1e293b; margin-bottom:0.5rem; }
        .input-label i { color:#4f46e5; }
        .input-field-wrapper { position:relative; display:flex; align-items:center; }
        .input-field-wrapper > i { position:absolute; left:1rem; color:#94a3b8; font-size:1rem; pointer-events:none; z-index:1; }
        .input-field-wrapper input { width:100%; padding:0.9rem 3rem 0.9rem 2.7rem; font-size:0.95rem; border:1.5px solid #e2e8f0; border-radius:1rem; font-family:'Inter',sans-serif; font-weight:500; background:#fefefe; transition:all 0.3s ease; color:#0f172a; }
        .input-field-wrapper input:focus { outline:none; border-color:#4f46e5; box-shadow:0 0 0 3px rgba(79,70,229,0.2); background:white; }
        .input-field-wrapper input.error-border { border-color:#dc2626; background:#fff5f5; }
        .password-toggle { position:absolute; right:1rem; top:50%; transform:translateY(-50%); background:transparent; border:none; cursor:pointer; color:#94a3b8; font-size:1.1rem; padding:0; display:flex; align-items:center; transition:color 0.2s; z-index:2; }
        .password-toggle:hover { color:#4f46e5; }
        .inline-error { font-size:0.7rem; font-weight:500; margin-top:0.45rem; margin-left:0.6rem; color:#dc2626; display:flex; align-items:center; gap:0.3rem; }
        .inline-error.hidden { display:none; }
        .forgot-password-row { display:flex; justify-content:flex-end; margin-top:0.25rem; margin-bottom:0.5rem; }
        .forgot-password { font-size:0.75rem; font-weight:500; color:#4f46e5; text-decoration:none; transition:color 0.2s; cursor:pointer; }
        .forgot-password:hover { color:#4338ca; text-decoration:underline; }
        .signin-btn { width:100%; background:linear-gradient(95deg,#4f46e5,#7c3aed); border:none; padding:1rem; border-radius:1rem; font-weight:700; font-size:1rem; color:white; display:flex; align-items:center; justify-content:center; gap:0.6rem; cursor:pointer; transition:all 0.3s ease; margin-top:0.5rem; margin-bottom:1rem; box-shadow:0 8px 20px rgba(79,70,229,0.3); font-family:'Inter',sans-serif; }
        .signin-btn:hover { background:linear-gradient(95deg,#4338ca,#6d28d9); transform:translateY(-2px); box-shadow:0 12px 25px rgba(79,70,229,0.4); }
        .back-dashboard-btn { display:inline-flex; align-items:center; justify-content:center; gap:0.6rem; padding:0.8rem 1.5rem; border:2px solid #e2e8f0; border-radius:1rem; font-weight:600; font-size:0.9rem; color:#475569; background:white; cursor:pointer; transition:all 0.3s ease; text-decoration:none; width:100%; font-family:'Inter',sans-serif; }
        .back-dashboard-btn:hover { background:#f8fafc; border-color:#cbd5e1; transform:translateY(-2px); box-shadow:0 4px 12px rgba(0,0,0,0.05); }
        .logout-link { display:inline-block; margin-top:0.8rem; font-size:0.8rem; color:#94a3b8; text-align:center; width:100%; }
        .logout-link a { color:#ef4444; text-decoration:none; font-weight:600; }
        .logout-link a:hover { text-decoration:underline; }
        @keyframes fadeInUp { from { opacity:0; transform:translateY(20px); } to { opacity:1; transform:translateY(0); } }
        @media (max-width:992px){ .auth-container{flex-direction:column;} .image-section{min-height:300px;} .form-section{padding:2rem;} }
        @media (max-width:768px){ .image-section{min-height:250px;} .form-section{padding:1.5rem;} .signin-title{font-size:1.8rem;} }
        @media (max-width:480px){ .image-section{min-height:200px;} .form-section{padding:1rem;} .signin-title{font-size:1.4rem;} .input-field-wrapper input{padding:0.8rem 2.5rem 0.8rem 2.2rem;} }
