        :where([class^="ri-"])::before { content: "\f3c2"; }
        
        :root {
            --bg-body: #f5f7fa;
            --bg-surface: #ffffff;
            --text-primary: #0f172a;
            --text-muted: #6b7280;
            --border-soft: #e5e7eb;
            --accent: #4A90E2;
            --shadow-soft: 0 10px 30px rgba(15, 23, 42, 0.08);
        }
        
        [data-theme="dark"] {
            --bg-body: #0b1220;
            --bg-surface: #0f172a;
            --text-primary: #e2e8f0;
            --text-muted: #94a3b8;
            --border-soft: #1e293b;
            --accent: #38bdf8;
            --shadow-soft: 0 10px 30px rgba(0, 0, 0, 0.4);
            color-scheme: dark;
        }
        
        body {
            font-family: 'Inter', sans-serif;
            background-color: var(--bg-body);
            color: var(--text-primary);
            transition: background-color 0.3s ease, color 0.3s ease;
        }
  
        
        .form-input {
            transition: border-color 0.3s ease, background-color 0.3s ease, color 0.3s ease;
            background-color: transparent;
            color: var(--text-primary);
            border-color: var(--border-soft);
        }
        
        .form-input:focus {
            border-color: var(--accent);
        }
        
        .form-input:focus + .floating-label,
        .form-input:not(:placeholder-shown) + .floating-label {
            transform: translateY(-24px) scale(0.85);
            color: var(--accent);
        }
        
        .floating-label {
            transform-origin: left top;
            transition: all 0.3s ease;
            pointer-events: none;
            color: var(--text-muted);
        }
        
        .toggle-password {
            transition: color 0.3s ease;
            color: var(--text-muted);
        }
        
        .toggle-password:hover {
            color: var(--accent);
        }
        
        .social-btn {
            transition: all 0.3s ease;
        }
        
        .social-btn:hover {
            transform: translateY(-2px);
        }
        
        .custom-checkbox {
            position: relative;
            cursor: pointer;
        }
        
        .custom-checkbox input {
            position: absolute;
            opacity: 0;
            cursor: pointer;
        }
        /* testing */
        .checkmark {
            transition: all 0.2s ease;
            border: 2px solid var(--border-soft);
            background-color: var(--bg-surface);
        }
        
        .custom-checkbox input:checked ~ .checkmark {
            background-color: var(--accent);
            border-color: var(--accent);
        }
        
        .checkmark:after {
            content: "";
            position: absolute;
            display: none;
            left: 6px;
            top: 2px;
            width: 5px;
            height: 10px;
            border: solid white;
            border-width: 0 2px 2px 0;
            transform: rotate(45deg);
        }
        
        .custom-checkbox input:checked ~ .checkmark:after {
            display: block;
        }
        
        .primary-btn {
            background: linear-gradient(135deg, #4A90E2 0%, #357ABD 100%);
            transition: all 0.3s ease;
        }
        
        .primary-btn:hover {
            transform: translateY(-2px);
            box-shadow: 0 8px 15px rgba(74, 144, 226, 0.3);
        }
        
        .divider::before, .divider::after {
            content: '';
            flex: 1;
            border-bottom: 1px solid var(--border-soft);
        }
        
        .divider {
            display: flex;
            align-items: center;
            gap: 1rem;
            margin: 1.5rem 0;
        }

         .spinner {
          border: 2px solid transparent;
          border-top: 2px solid white;
          border-radius: 50%;
          width: 20px;
          height: 20px;
          animation: spin 0.6s linear infinite;
          display: inline-block;
          vertical-align: middle;
        }

        @keyframes spin {
          to { transform: rotate(360deg); }
        }
       .text-3d {
          color: #1e40af; 
          text-shadow: 
            1px 1px 0 #1e3a8a, 
            2px 2px 0 #1e3a8a,
            3px 3px 0 #1e3a8a,
            4px 4px 0 #1e3a8a,
            5px 5px 0 rgba(0, 0, 0, 0.3);
          transform: translateY(0);
        }
        
        .login-container {
            background-color: var(--bg-surface);
            box-shadow: var(--shadow-soft);
            transition: background-color 0.3s ease, box-shadow 0.3s ease;
        }
