Revolutionize Your Hiring Experience
The all-in-one platform for seamless recruitment, smart candidate management, and powerful analytics. Make hiring effortless and stand out in your industry.
Get Started
Smart Candidate Matching
AI-powered algorithms connect you with the best talent, saving time and improving quality.
Collaborative Workflows
Empower your team with real-time collaboration, notes, and feedback on every candidate.
Insightful Analytics
Track hiring metrics, visualize progress, and optimize your recruitment strategy with actionable insights.
Branded Experience
Customize your portal to reflect your brand and create a memorable impression for candidates.

Ready to transform your hiring?

Join Hirely today and experience the future of recruitment.

Sign Up Now
body { font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; background: var(--background-secondary); min-height: 100vh; color: var(--text-primary); line-height: 1.6; font-size: 15px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* Auth check overlay */ .auth-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: var(--background-secondary); display: flex; flex-direction: column; align-items: center; justify-content: center; z-index: 9999; } .auth-check-spinner { width: 50px; height: 50px; border: 4px solid rgba(220, 38, 38, 0.2); border-radius: 50%; border-top-color: var(--primary-red); animation: spin 1s infinite linear; } .auth-message { font-size: 1.1em; font-weight: 600; color: var(--text-primary); margin-bottom: 10px; } .auth-submessage { color: var(--text-secondary); text-align: center; max-width: 300px; } /* Navigation Header */ .nav-header { background: var(--background-primary); border-bottom: 1px solid var(--border-color); position: fixed; top: 0; left: 0; right: 0; z-index: 100; padding: 16px 0; } .nav-container { max-width: 1200px; margin: 0 auto; padding: 0 24px; display: flex; align-items: center; justify-content: space-between; } .logo { display: flex; align-items: center; gap: 12px; } .logo-icon { width: 42px; height: 42px; background: var(--primary-red); border-radius: 10px; display: flex; align-items: center; justify-content: center; position: relative; box-shadow: 0 4px 12px rgba(220, 38, 38, 0.2); } .logo-icon::before { content: 'E2'; color: white; font-weight: 800; font-size: 16px; } .logo-text { font-size: 1.25em; font-weight: 700; color: var(--text-primary); letter-spacing: -0.02em; } .logo-text span { color: var(--primary-red); } .user-menu { display: flex; align-items: center; gap: 24px; } .user-avatar { width: 40px; height: 40px; background: var(--primary-red); border-radius: 10px; display: flex; align-items: center; justify-content: center; color: white; font-weight: 600; cursor: pointer; transition: transform 0.2s; } .user-avatar:hover { transform: scale(1.05); } /* Main Container */ .main-container { max-width: 1200px; margin: 0 auto; padding: 100px 24px 40px; } /* Hero Section */ .hero-section { text-align: center; margin-bottom: 60px; } .hero-title { font-size: 3em; font-weight: 800; color: var(--text-primary); margin-bottom: 16px; letter-spacing: -0.02em; } .hero-subtitle { font-size: 1.25em; color: var(--text-secondary); max-width: 600px; margin: 0 auto; } /* Progress Overview */ .progress-overview { background: var(--background-primary); border-radius: 20px; padding: 32px; margin-bottom: 40px; box-shadow: var(--shadow-md); } .progress-title { font-size: 1.5em; font-weight: 700; margin-bottom: 24px; } .progress-bar-container { background: var(--background-tertiary); height: 12px; border-radius: 6px; overflow: hidden; margin-bottom: 8px; } .progress-bar-fill { height: 100%; background: linear-gradient(90deg, var(--primary-red), var(--primary-red-dark)); transition: width 0.5s cubic-bezier(0.4, 0, 0.2, 1); border-radius: 6px; position: relative; } .progress-bar-fill::after { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent); animation: shimmer 2s infinite; } @keyframes spin { to { transform: rotate(360deg); } } @keyframes shimmer { 0% { transform: translateX(-100%); } 100% { transform: translateX(100%); } } .progress-text { text-align: right; font-size: 0.875em; color: var(--text-secondary); font-weight: 600; } /* Timeline */ .timeline-container { position: relative; padding: 0 20px; } .timeline-line { position: absolute; left: 50%; top: 0; bottom: 0; width: 4px; background: var(--border-light); transform: translateX(-50%); } .timeline-progress { position: absolute; left: 50%; top: 0; width: 4px; background: var(--primary-red); transform: translateX(-50%); transition: height 0.5s cubic-bezier(0.4, 0, 0.2, 1); } /* Timeline Steps */ .timeline-step { display: flex; align-items: center; margin-bottom: 60px; position: relative; } .timeline-step:nth-child(even) { flex-direction: row-reverse; } .timeline-step:nth-child(even) .step-content { text-align: right; } .step-content { flex: 1; padding: 0 40px; } .step-number { position: absolute; left: 50%; transform: translateX(-50%); width: 60px; height: 60px; background: var(--background-primary); border: 4px solid var(--border-light); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 1.25em; color: var(--text-secondary); z-index: 10; transition: all 0.3s ease; } .timeline-step.completed .step-number { background: var(--success-green); border-color: var(--success-green); color: white; } .timeline-step.current .step-number { background: var(--primary-red); border-color: var(--primary-red); color: white; transform: translateX(-50%) scale(1.1); box-shadow: 0 8px 24px rgba(220, 38, 38, 0.3); } .timeline-step.locked .step-number { background: var(--background-tertiary); border-color: var(--border-light); color: var(--text-muted); } .step-card { background: var(--background-primary); border-radius: 16px; padding: 28px; box-shadow: var(--shadow-md); border: 2px solid var(--border-light); transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); cursor: pointer; max-width: 480px; width: 100%; } .timeline-step:nth-child(even) .step-card { margin-left: auto; } .step-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); border-color: var(--primary-red); } .timeline-step.locked .step-card { opacity: 0.6; cursor: not-allowed; } .timeline-step.locked .step-card:hover { transform: none; box-shadow: var(--shadow-md); border-color: var(--border-light); } .step-title { font-size: 1.25em; font-weight: 700; color: var(--text-primary); margin-bottom: 8px; } .step-description { color: var(--text-secondary); margin-bottom: 16px; line-height: 1.6; } .step-status { display: inline-flex; align-items: center; gap: 6px; padding: 6px 14px; border-radius: 20px; font-size: 0.875em; font-weight: 600; } .step-status.pending { background: var(--background-tertiary); color: var(--text-secondary); } .step-status.in-progress { background: var(--warning-amber-light); color: var(--warning-amber); } .step-status.completed { background: var(--success-green-light); color: var(--success-green); } .step-status.locked { background: var(--background-tertiary); color: var(--text-muted); } /* Modal */ .modal-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.5); backdrop-filter: blur(4px); display: flex; align-items: center; justify-content: center; z-index: 1000; opacity: 0; visibility: hidden; transition: all 0.3s ease; padding: 20px; } .modal-overlay.active { opacity: 1; visibility: visible; } .modal { background: var(--background-primary); border-radius: 20px; max-width: 600px; width: 100%; max-height: 90vh; overflow-y: auto; transform: scale(0.9); transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1); } .modal-overlay.active .modal { transform: scale(1); } .modal-header { padding: 32px 32px 24px; border-bottom: 1px solid var(--border-light); } .modal-title { font-size: 1.5em; font-weight: 700; color: var(--text-primary); margin-bottom: 8px; } .modal-subtitle { color: var(--text-secondary); } .modal-body { padding: 32px; } .modal-footer { padding: 24px 32px 32px; display: flex; gap: 12px; justify-content: flex-end; } /* Forms */ .form-group { margin-bottom: 24px; } .form-label { display: block; margin-bottom: 8px; font-weight: 600; color: var(--text-primary); } .form-input, .form-select, .form-textarea { width: 100%; padding: 12px 16px; border: 2px solid var(--border-light); border-radius: 10px; font-size: 0.9375em; font-family: inherit; transition: all 0.2s ease; background: var(--background-primary); } .form-textarea { min-height: 100px; resize: vertical; } .form-input:focus, .form-select:focus, .form-textarea:focus { outline: none; border-color: var(--primary-red); box-shadow: 0 0 0 4px rgba(220, 38, 38, 0.1); } .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; } @media (max-width: 600px) { .form-row { grid-template-columns: 1fr; } } /* File Upload */ .upload-area { border: 2px dashed var(--border-color); border-radius: 12px; padding: 40px; text-align: center; transition: all 0.3s ease; cursor: pointer; background: var(--background-secondary); } .upload-area:hover { border-color: var(--primary-red); background: var(--primary-red-light); } .upload-area.dragging { border-color: var(--primary-red); background: var(--primary-red-light); transform: scale(1.02); } .upload-area.success { border-color: var(--success-green); background: var(--success-green-light); } .upload-icon { width: 64px; height: 64px; margin: 0 auto 16px; background: var(--primary-red-light); border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 2em; color: var(--primary-red); } .upload-icon.success { background: var(--success-green-light); color: var(--success-green); } .upload-text { font-weight: 600; color: var(--text-primary); margin-bottom: 4px; } .upload-subtext { font-size: 0.875em; color: var(--text-secondary); } .uploaded-file { display: flex; align-items: center; gap: 12px; padding: 16px; background: var(--success-green-light); border-radius: 10px; margin-top: 16px; transition: all 0.2s ease; } .uploaded-file:hover { transform: translateX(4px); } .uploaded-file-icon { width: 40px; height: 40px; background: var(--success-green); color: white; border-radius: 8px; display: flex; align-items: center; justify-content: center; } .uploaded-file-info { flex: 1; } .uploaded-file-name { font-weight: 600; color: var(--text-primary); } .uploaded-file-size { font-size: 0.875em; color: var(--text-secondary); } /* Video Interview Embed */ .video-interview-container { width: 100%; height: 600px; border-radius: 16px; overflow: hidden; box-shadow: var(--shadow-lg); position: relative; background: #000; display: flex; align-items: center; justify-content: center; } .video-interview-container::before { content: 'Loading video interview...'; position: absolute; color: #666; font-size: 14px; z-index: 0; } .video-interview-container iframe { position: relative; z-index: 1; background: white; } /* Radio Options */ .radio-group { display: flex; gap: 16px; margin-top: 12px; } .radio-card { flex: 1; position: relative; } .radio-card input[type="radio"] { position: absolute; opacity: 0; } .radio-card-label { display: block; padding: 16px 24px; background: var(--background-primary); border: 2px solid var(--border-light); border-radius: 12px; text-align: center; font-weight: 600; color: var(--text-secondary); cursor: pointer; transition: all 0.2s ease; } .radio-card:hover .radio-card-label { border-color: var(--primary-red); color: var(--text-primary); } .radio-card input[type="radio"]:checked + .radio-card-label { background: var(--primary-red-light); border-color: var(--primary-red); color: var(--primary-red); } /* Test Center Results */ .test-center-results { margin-top: 24px; max-height: 400px; overflow-y: auto; } .test-center-card { background: var(--background-primary); border: 2px solid var(--border-light); border-radius: 12px; padding: 20px; margin-bottom: 16px; transition: all 0.2s ease; } .test-center-card:hover { border-color: var(--primary-red); transform: translateY(-2px); box-shadow: var(--shadow-md); } .test-center-name { font-weight: 700; color: var(--text-primary); margin-bottom: 8px; font-size: 1.1em; } .test-center-address { color: var(--text-secondary); margin-bottom: 12px; line-height: 1.5; } .test-center-actions { display: flex; gap: 12px; flex-wrap: wrap; } .test-center-link { color: var(--primary-red); text-decoration: none; font-weight: 600; font-size: 0.875em; padding: 8px 16px; border: 2px solid var(--primary-red); border-radius: 8px; transition: all 0.2s ease; } .test-center-link:hover { background: var(--primary-red); color: white; } /* Available Slots */ .slots-container { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 16px; margin-top: 24px; } .slot-card { background: var(--background-primary); border: 2px solid var(--border-light); border-radius: 12px; padding: 20px; text-align: center; cursor: pointer; transition: all 0.2s ease; } .slot-card:hover { border-color: var(--primary-red); transform: translateY(-2px); box-shadow: var(--shadow-md); } .slot-card.selected { background: var(--primary-red-light); border-color: var(--primary-red); } .slot-date { font-weight: 700; color: var(--text-primary); margin-bottom: 4px; } .slot-time { color: var(--text-secondary); font-size: 0.875em; } .slot-status { margin-top: 8px; font-size: 0.75em; color: var(--text-muted); } /* Selected slot styling */ .slot-card.selected { background: var(--primary-red-light); border-color: var(--primary-red); transform: scale(1.02); box-shadow: 0 4px 12px rgba(220, 38, 38, 0.2); } /* Confirmed slot styling */ .slot-card.confirmed { background: var(--success-green-light); border-color: var(--success-green); cursor: default; } .slot-card.confirmed:hover { transform: none; box-shadow: var(--shadow-md); } /* Meeting link styling */ .meeting-link { color: var(--primary-red); text-decoration: none; font-size: 0.75em; font-weight: 600; display: inline-flex; align-items: center; gap: 4px; padding: 4px 8px; background: var(--primary-red-light); border-radius: 6px; border: 1px solid var(--primary-red); } .meeting-link:hover { background: var(--primary-red); color: white; } /* Buttons */ .btn { padding: 12px 24px; border-radius: 10px; font-size: 0.9375em; font-weight: 600; border: none; cursor: pointer; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); display: inline-flex; align-items: center; gap: 8px; } .btn-primary { background: var(--primary-red); color: white; } .btn-primary:hover { background: var(--primary-red-dark); transform: translateY(-2px); box-shadow: 0 8px 16px rgba(220, 38, 38, 0.3); } .btn-secondary { background: var(--background-tertiary); color: var(--text-primary); } .btn-secondary:hover { background: var(--border-color); } .btn-success { background: var(--success-green); color: white; } .btn-success:hover { background: var(--success-green-dark); transform: translateY(-2px); box-shadow: 0 8px 16px rgba(16, 185, 129, 0.3); } .btn-sm { padding: 8px 16px; font-size: 0.875em; } .btn:disabled { opacity: 0.6; cursor: not-allowed; transform: none !important; box-shadow: none !important; } .btn-primary:disabled:hover { background: var(--primary-red); } /* Toast */ .toast { position: fixed; bottom: 24px; right: 24px; padding: 16px 24px; background: var(--background-primary); border-radius: 12px; box-shadow: var(--shadow-xl); display: flex; align-items: center; gap: 12px; transform: translateY(100px); opacity: 0; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); z-index: 1000; } .toast.show { transform: translateY(0); opacity: 1; } .toast-icon { width: 24px; height: 24px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 700; } .toast.success { border-left: 4px solid var(--success-green); } .toast.success .toast-icon { background: var(--success-green-light); color: var(--success-green); } .toast.error { border-left: 4px solid var(--primary-red); } .toast.error .toast-icon { background: var(--primary-red-light); color: var(--primary-red); } .toast.info { border-left: 4px solid var(--warning-amber); } .toast.info .toast-icon { background: var(--warning-amber-light); color: var(--warning-amber); } /* Loading Spinner */ .loading-spinner { display: inline-block; width: 20px; height: 20px; border: 3px solid rgba(220, 38, 38, 0.2); border-radius: 50%; border-top-color: var(--primary-red); animation: spin 1s infinite linear; } /* Hidden elements */ .hidden { display: none; } /* Responsive */ @media (max-width: 768px) { .hero-title { font-size: 2em; } .timeline-line { left: 40px; } .timeline-progress { left: 40px; } .timeline-step { flex-direction: column !important; margin-bottom: 40px; } .timeline-step:nth-child(even) { flex-direction: column !important; } .step-number { left: 40px !important; transform: translateX(-50%) !important; } .timeline-step.current .step-number { transform: translateX(-50%) scale(1.1) !important; } .step-content { padding: 0; margin-left: 80px; text-align: left !important; } .timeline-step:nth-child(even) .step-content { text-align: left !important; } .step-card { margin-top: 20px; } .timeline-step:nth-child(even) .step-card { margin-left: 0; } .video-interview-container { height: 400px; } }
Checking authentication...
Please wait while we verify your access

Welcome to Your Journey

Complete each step below to move forward with your application and visa process

Overall Progress

0% Complete
1

Personal Information

Provide your personal details including name, address, education, and other important information

Start Now
2

CV Upload & Video Interview

Upload your resume and complete a brief video interview to introduce yourself

Locked
3

Confirm Financial Status

Verify you meet the financial requirements for your visa application

Locked
4

Book English Test

Schedule your English proficiency test if required

Locked
5

Technical Interview

Choose a slot for your technical skills assessment

Locked
6

Client Interview

Book an interview slot with potential employers

Locked
7

Complete Visa Application

Fill out all required visa forms and upload supporting documents

Locked