.registration-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}.registration-modal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.7)}.registration-modal-content{position:relative;background-color:#fff;border-radius:12px;width:100%;max-width:900px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.3);z-index:10000}.close-btn{position:absolute;top:20px;right:20px;background:transparent;border:none;font-size:2rem;color:#666;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease;z-index:10001}.close-btn:hover{background-color:#f0f0f0;color:#dc2626}.registration-header{padding:30px 30px 20px;border-bottom:2px solid #f0f0f0}.registration-header h2{margin:0 0 10px;font-size:2rem;color:#333}.university-info{color:#666;font-size:1rem;margin-bottom:20px}.progress-bar{width:100%;height:8px;background-color:#e0e0e0;border-radius:10px;overflow:hidden;margin-bottom:10px}.progress-fill{height:100%;background:linear-gradient(90deg,#dc2626,#b91c1c);transition:width .3s ease}.step-indicator{text-align:center;color:#666;font-size:.9rem;font-weight:600}.registration-form{padding:30px}.form-step h3{font-size:1.5rem;color:#333;margin-bottom:20px;margin-top:0;padding-bottom:10px;border-bottom:2px solid #dc2626;font-weight:700}.form-step h4{font-size:1.2rem;color:#333;margin-bottom:15px;margin-top:25px;font-weight:600;padding-bottom:8px;border-bottom:1px solid #e0e0e0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-row:last-child{margin-bottom:0}.form-field{display:flex;flex-direction:column;margin-bottom:20px}.form-field:last-child{margin-bottom:0}.form-field.form-full{grid-column:1/-1}.form-field label{font-weight:600;color:#333;margin-bottom:8px;font-size:.95rem}.form-field input,.form-field select,.form-field textarea{padding:12px;border:2px solid #e0e0e0;border-radius:6px;font-size:1rem;transition:all .3s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.1)}.checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;margin-bottom:15px;font-weight:500;color:#333;line-height:20px}.checkbox-label input[type=checkbox]{vertical-align:middle;margin-bottom:0;position:relative}.checkbox-label span{vertical-align:middle}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;flex-shrink:0;accent-color:#dc2626;margin-top:0}.checkbox-label span{-webkit-user-select:none;-moz-user-select:none;user-select:none;line-height:20px}.upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.upload-field{display:flex;flex-direction:column}.upload-field label{font-weight:600;color:#333;margin-bottom:8px;font-size:.95rem}.upload-field input[type=file]{padding:10px;border:2px dashed #e0e0e0;border-radius:6px;cursor:pointer;transition:all .3s ease}.upload-field input[type=file]:hover{border-color:#dc2626;background-color:#fef2f2}.note{background-color:#fff3cd;border-left:4px solid #ffc107;padding:12px;margin-bottom:20px;font-size:.9rem;color:#856404}.form-navigation{display:flex;justify-content:space-between;gap:15px;margin-top:30px;padding-top:20px;border-top:2px solid #f0f0f0}.btn-primary,.btn-secondary,.btn-submit{padding:12px 30px;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary{background-color:#dc2626;color:#fff;margin-left:auto}.btn-primary:hover{background-color:#b91c1c;transform:translateX(3px)}.btn-secondary{background-color:#f0f0f0;color:#333}.btn-secondary:hover{background-color:#e0e0e0;transform:translateX(-3px)}.btn-submit{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;margin-left:auto;box-shadow:0 4px 12px rgba(220,38,38,.3)}.btn-submit:hover:not(:disabled){box-shadow:0 6px 20px rgba(220,38,38,.4);transform:translateY(-2px)}.btn-submit:disabled{opacity:.6;cursor:not-allowed}@media (max-width:768px){.registration-modal-content{max-width:100%;max-height:100vh;border-radius:0}.registration-header{padding:20px}.registration-header h2{font-size:1.5rem}.registration-form{padding:20px}.form-row{gap:15px}.form-row,.upload-grid{grid-template-columns:1fr}.form-navigation{flex-direction:column}.btn-primary,.btn-secondary,.btn-submit{width:100%;margin-left:0}}