/*user-register.css*/

:root {
            --primary: #1a56db;
            --primary-dark: #0e3f9e;
            --primary-light: #e1effe;
            --secondary: #3f83f8;
            --success: #0e9f6e;
            --warning: #f05252;
            --text-dark: #1f2937;
            --text-light: #6b7280;
            --background: #f9fafb;
            --card-bg: #ffffff;
            --border-radius: 12px;
            --shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
        }
        
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }
        
        body {
            font-family: 'Poppins', sans-serif;
            background: var(--background);
            color: var(--text-dark);
            line-height: 1.6;
            min-height: 100vh;
            display: flex;
            flex-direction: column;
            padding: 0 16px;
        }
        
        .header {
            background: linear-gradient(135deg, #43cea2 0%, #185a9d 100%);
            color: white;
            padding: 1.5rem 0;
            text-align: center;
            border-radius: 0 0 var(--border-radius) var(--border-radius);
            margin: 0 -16px 2rem;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        }
        
        .header-content {
            max-width: 800px;
            margin: 0 auto;
            padding: 0 16px;
        }
        
        .logo {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 12px;
            font-size: 1.8rem;
            font-weight: 700;
            margin-bottom: 0.5rem;
        }
        
        .logo i {
            font-size: 2.2rem;
        }
        
        .header p {
            font-size: 1.1rem;
            opacity: 0.9;
            max-width: 600px;
            margin: 0 auto;
        }
        
        .register-container {
            max-width: 600px;
            margin: 0 auto 3rem;
            width: 100%;
            background: var(--card-bg);
            border-radius: var(--border-radius);
            box-shadow: var(--shadow);
            overflow: hidden;
            border: 1px solid #e5e7eb;
        }
        
        .form-header {
            background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
            color: white;
            padding: 1.5rem;
            text-align: center;
        }
        
        .form-header h2 {
            font-size: 1.7rem;
            font-weight: 600;
        }
        
        .form-header p {
            opacity: 0.9;
            margin-top: 0.5rem;
            font-size: 1rem;
        }
        
        #userRegisterForm {
            padding: 2rem 1.5rem;
        }
        
        .form-row {
            margin-bottom: 1.5rem;
            position: relative;
        }
        
        .form-row label {
            display: block;
            margin-bottom: 0.5rem;
            font-weight: 500;
            color: var(--text-dark);
            font-size: 0.95rem;
        }
        
        .required::after {
            content: " *";
            color: var(--warning);
        }
        
        .input-group {
            position: relative;
        }
        
        .input-icon {
            position: absolute;
            left: 12px;
            top: 50%;
            transform: translateY(-50%);
            color: var(--text-light);
            font-size: 1.1rem;
        }
        
        input, select {
            width: 100%;
            padding: 14px 16px 14px 44px;
            border: 1px solid #d1d5db;
            border-radius: 8px;
            font-size: 1rem;
            font-family: 'Poppins', sans-serif;
            background: white;
            transition: all 0.3s ease;
        }
        
        input:focus, select:focus {
            outline: none;
            border-color: var(--primary);
            box-shadow: 0 0 0 3px rgba(58, 130, 247, 0.2);
        }
        
        input::placeholder {
            color: #9ca3af;
        }
        
        select {
            appearance: none;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%236B7280' viewBox='0 0 16 16'%3E%3Cpath d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: right 16px center;
            background-size: 16px;
            padding-right: 40px;
        }
        
        .checkbox-container {
            display: flex;
            align-items: flex-start;
            gap: 10px;
            margin-top: 1.5rem;
        }
        
        .checkbox-container input {
            width: auto;
            margin-top: 4px;
        }
        
        .checkbox-container label {
            font-size: 0.95rem;
            color: var(--text-dark);
            line-height: 1.5;
        }
        
        .checkbox-container a {
            color: var(--primary);
            text-decoration: none;
            font-weight: 500;
        }
        
        .checkbox-container a:hover {
            text-decoration: underline;
        }
        
        #submitBtn {
            display: block;
            width: 100%;
            padding: 16px;
            background: linear-gradient(135deg, var(--success) 0%, #1da584 100%);
            color: white;
            border: none;
            border-radius: 8px;
            font-size: 1.1rem;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.3s ease;
            margin-top: 1.5rem;
            font-family: 'Poppins', sans-serif;
        }
        
        #submitBtn:hover {
            background: linear-gradient(135deg, #0d8c62 0%, #1a9470 100%);
            transform: translateY(-2px);
            box-shadow: 0 4px 12px rgba(14, 159, 110, 0.3);
        }
        
        #registerMessage {
            text-align: center;
            padding: 1rem;
            margin-top: 1.5rem;
            border-radius: 8px;
            font-weight: 500;
        }
        
        .success-message {
            background: #def7ec;
            color: #0e9f6e;
            border: 1px solid #bcf0da;
        }
        
        .error-message {
            background: #fde8e8;
            color: #c81e1e;
            border: 1px solid #fbd5d5;
        }
        
        .accommodation-other {
            margin-top: 0.8rem;
            display: none;
        }
        
        .footer {
            text-align: center;
            padding: 2rem 0;
            color: var(--text-light);
            font-size: 0.9rem;
            margin-top: auto;
        }
        
        .footer a {
            color: var(--primary);
            text-decoration: none;
        }
        
        .footer a:hover {
            text-decoration: underline;
        }
        
        .progress-steps {
            display: flex;
            justify-content: space-between;
            margin-bottom: 2rem;
            position: relative;
        }
        
        .progress-steps::before {
            content: '';
            position: absolute;
            top: 14px;
            left: 0;
            right: 0;
            height: 4px;
            background: #e5e7eb;
            z-index: 1;
        }
        
        .progress-bar {
            position: absolute;
            top: 14px;
            left: 0;
            height: 4px;
            background: var(--success);
            z-index: 2;
            transition: width 0.4s ease;
        }
        
        .step {
            position: relative;
            z-index: 3;
            text-align: center;
            width: 40px;
        }
        
        .step-circle {
            width: 32px;
            height: 32px;
            border-radius: 50%;
            background: white;
            border: 2px solid #e5e7eb;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 0.5rem;
            font-weight: 600;
            font-size: 0.9rem;
            color: var(--text-light);
            transition: all 0.3s ease;
        }
        
        .step.active .step-circle {
            background: var(--success);
            border-color: var(--success);
            color: white;
        }
        
        .step-label {
            font-size: 0.8rem;
            color: var(--text-light);
            white-space: nowrap;
        }
        
        .step.active .step-label {
            color: var(--text-dark);
            font-weight: 500;
        }
        
        .step-section {
            display: none;
        }
        
        .step-section.active {
            display: block;
        }
        
        .form-navigation {
            display: flex;
            justify-content: space-between;
            margin-top: 1.5rem;
        }
        
        .nav-btn {
            padding: 12px 24px;
            background: white;
            border: 2px solid var(--primary);
            border-radius: 8px;
            color: var(--primary);
            font-weight: 600;
            cursor: pointer;
            transition: all 0.2s ease;
            font-family: 'Poppins', sans-serif;
        }
        
        .nav-btn:hover {
            background: var(--primary-light);
        }
        
        .nav-btn.next {
            background: var(--primary);
            color: white;
        }
        
        .nav-btn.next:hover {
            background: var(--primary-dark);
        }
        
        .nav-btn:disabled {
            opacity: 0.5;
            cursor: not-allowed;
        }
        .form-navigation {
    display: flex;
    justify-content: flex-end;
    margin-top: 1.5rem;
}
        .nav-btn.back-btn, .nav-btn.event-details-btn, #prevBtn1, #prevBtn2, a[href="https://crfv-cpu.org"] {
    font-size: 0.9em;
    padding: 0.4em 1em;
}

/* Style for modal dropdown */
#editEventStatus {
  width: 100%;
  padding: 0.5em 2em 0.5em 0.8em;
  border: 1px solid #bdbdbd;
  border-radius: 6px;
  background: #f8fafc url("data:image/svg+xml,%3Csvg width='16' height='16' fill='gray' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6l4 4 4-4' stroke='gray' stroke-width='2' fill='none'/%3E%3C/svg%3E") no-repeat right 0.8em center/1em;
  font-size: 1em;
  appearance: none;
  cursor: pointer;
  transition: border-color 0.2s;
}

#editEventStatus:focus {
  border-color: #1976d2;
  outline: none;
}
        
        @media (max-width: 480px) {
            .header {
                padding: 1.2rem 0;
            }
            
            .logo {
                font-size: 1.5rem;
            }
            
            .form-header h2 {
                font-size: 1.4rem;
            }
            
            #userRegisterForm {
                padding: 1.5rem 1rem;
            }
            
            .form-row {
                margin-bottom: 1.2rem;
            }
            
            input, select {
                padding: 12px 14px 12px 40px;
                font-size: 0.95rem;
            }
            
            .step-label {
                font-size: 0.7rem;
            }
            
            .nav-btn {
                padding: 10px 18px;
                font-size: 0.95rem;
            }
        }
.nav-btn, .back-btn, #submitBtn {
    padding: 8px 16px !important;
    font-size: 14px !important;
    margin: 5px !important;
}

        .success-buttons {
            display: flex;
            gap: 10px;
            margin-top: 15px;
            flex-wrap: wrap;
        }
        button#registerAgainBtn.nav-btn.small-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 20px;
    font-size: 0.9rem;
    font-weight: 500;
    color: white;
    background: var(--primary);
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.3s ease;
}

button#registerAgainBtn.nav-btn.small-btn:hover {
    background: var(--primary-dark);
}

button#registerAgainBtn.nav-btn.small-btn i {
    font-size: 1rem;
}