/* --- 1. RESET & CÀI ĐẶT CHUNG --- */
        * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Roboto', 'DINPro', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
        
        body { 
            background-color: #000000; 
            color: #ffffff; 
            display: flex; 
            justify-content: center; 
            align-items: center; 
            min-height: 100vh; 
            overflow: hidden; 
            position: relative; /* Để header absolute theo body */
        }

        /* --- NEW: THANH MENU TRÊN CÙNG (HEADER) --- */
        .top-nav {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            padding: 20px 32px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            z-index: 100; /* Nằm trên cùng */
        }

        .logo-img {
            height: 24px; /* Chiều cao logo */
            width: auto;
            display: block;
            cursor: pointer;
        }

        .nav-right-icons {
            display: flex;
            gap: 20px;
            color: #ffffff;
            font-size: 18px;
        }
        .nav-right-icons i { cursor: pointer; transition: 0.2s; }
        .nav-right-icons i:hover { color: #1763eb; }

        /* --- 2. KHUNG CHÍNH (PC) --- */
        .login-card { 
            display: flex; 
            background-color: #131517; 
            border-radius: 16px; 
            width: 900px; 
            height: 620px; 
            box-shadow: 0 0 20px rgba(255, 255, 255, 0.05); 
            overflow: hidden; 
            position: relative;
            z-index: 10;
        }

        /* --- 3. CỘT TRÁI (FORM) --- */
        .form-side { 
            flex: 1; 
            padding: 30px 50px; 
            display: flex; 
            flex-direction: column; 
            position: relative; 
            justify-content: center; 
        }
        
        /* HEADER TRONG FORM */
        .header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 25px; }
        .header h2 { font-size: 26px; font-weight: 700; color: #ffffff; letter-spacing: 0.5px; }
        .qr-icon { font-size: 22px; color: #76808f; cursor: pointer; transition: 0.3s; }
        .qr-icon:hover { color: #ffffff; }

        /* INPUTS */
        .input-group { margin-bottom: 18px; }
        .label { display: block; font-size: 13px; color: #ffffff; font-weight: 500; margin-bottom: 8px; }
        
        .input-box { position: relative; background-color: #252831; border: 1px solid transparent; border-radius: 8px; transition: all 0.2s; }
        .input-box:hover { border-color: #484e5a; }
        .input-box.focus { border-color: #1763eb; }
        .input-box.error { border-color: #ff3b30 !important; }
        
        .error-message { color: #ff3b30; font-size: 12px; margin-top: 5px; display: none; }
        
        .input-box input { width: 100%; background: transparent; border: none; padding: 14px 40px 14px 16px; color: #ffffff; font-size: 14px; outline: none; }
        .input-box input::placeholder { color: #5d6575; }
        
        .input-action-icon { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); color: #76808f; cursor: pointer; font-size: 14px; display: none; }
        .input-box input:not(:placeholder-shown) + .input-action-icon { display: block; }
        #togglePassword { display: block; }

        /* SWITCH */
        .options-row { display: flex; align-items: center; margin-bottom: 25px; font-size: 12px; color: #ffffff; font-weight: 500; }
        .switch { position: relative; display: inline-block; width: 32px; height: 18px; margin-right: 10px; flex-shrink: 0; }
        .switch input { opacity: 0; width: 0; height: 0; }
        .slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #3b404b; transition: .4s; border-radius: 34px; }
        .slider:before { position: absolute; content: ""; height: 14px; width: 14px; left: 2px; bottom: 2px; background-color: white; transition: .4s; border-radius: 50%; }
        input:checked + .slider { background-color: #1763eb; }
        input:checked + .slider:before { transform: translateX(14px); }

        /* BUTTONS */
        .btn-primary { width: 100%; background-color: #1763eb; color: white; padding: 14px; border: none; border-radius: 25px; font-size: 16px; font-weight: 600; cursor: pointer; transition: background 0.2s; margin-bottom: 12px; }
        .btn-primary:hover { background-color: #2b70f5; }
        
        .links-row { display: flex; justify-content: center; font-size: 13px; margin-bottom: 10px; }
        .links-row span { color: #76808f; }
        .links-row a { color: #1763eb; text-decoration: none; font-weight: 500; margin-left: 4px;}
        .links-row a:hover { color: #4fa1f7; }

        .quen { display: flex; justify-content: center; min-height: 20px;}
        .quen a { text-decoration: none; font-weight: 500; font-size: 13px; color: #1763eb; }
        .quen a:hover { text-decoration: underline; color: #4fa1f7; }

        /* DIVIDER & SOCIAL */
        .divider { position: relative; text-align: center; margin: 25px 0 20px; }
        .divider::before { content: ""; position: absolute; top: 50%; left: 0; right: 0; height: 1px; background: #2b3139; z-index: 1; }
        .divider span { background: #131517; padding: 0 12px; color: #5d6575; font-size: 12px; position: relative; z-index: 2; }
        
        .btn-secondary { width: 100%; background-color: #252831; color: #ffffff; padding: 10px; border: none; border-radius: 20px; font-size: 13px; font-weight: 500; cursor: pointer; margin-bottom: 20px; transition: 0.2s; }
        .btn-secondary:hover { background-color: #313642; }
        
        .social-row { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
        .social-item { flex: 1; height: 42px; background-color: #252831; border-radius: 50%; display: flex; justify-content: center; align-items: center; cursor: pointer; transition: 0.2s; max-width: 42px; }
        .social-item:hover { background-color: #363c45; }
        .social-item i { font-size: 18px; }
        .fa-google { background: conic-gradient(from -45deg, #ea4335 110deg, #4285f4 90deg 180deg, #34a853 180deg 270deg, #fbbc05 270deg) 73% 55%/150% 150% no-repeat; -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent; }

        /* --- CỘT PHẢI (ẢNH) --- */
        .promo-side { width: 380px; margin: 10px; border-radius: 12px; background: linear-gradient(180deg, #161e2e 0%, #0e1219 100%); overflow: hidden; height: calc(100% - 20px); display: flex; align-items: center; justify-content: center; }
        .promo-image { width: 100%; height: 100%; background-image: url('https://www.mexc.com/api/file/download/F20251126135709138jb7p145qfGq5J3'); background-size: contain; background-repeat: no-repeat; background-position: center; }

        /* UTILITY */
        .hidden { display: none !important; }
        .fade-in { animation: fadeIn 0.5s ease forwards; opacity: 0; }
        @keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        /* =========================================
           RESPONSIVE MOBILE
           ========================================= */
        @media screen and (max-width: 768px) {
            body {
                overflow-y: auto; 
                height: auto;
                background-color: #131517; 
                align-items: flex-start; 
                padding-top: 50px; /* Chừa chỗ cho header */
            }
            
            /* Logo nhỏ lại chút trên mobile */
            .top-nav { padding: 15px 20px; background-color: #131517; }
            .logo-img { height: 20px; }

            .login-card {
                width: 100%;
                height: auto; 
                min-height: calc(100vh - 60px); 
                border-radius: 0; 
                box-shadow: none;
                flex-direction: column; 
                margin-top: 0;
            }

            .promo-side { display: none; }

            .form-side {
                padding: 30px 24px; 
                width: 100%;
                justify-content: flex-start; 
                padding-top: 40px;
            }
            .divider span { background: #131517; }
        }