@keyframes js-apply-slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.js-apply-opportunity .modal-backdrop{z-index:1000;background-color:#00000080;justify-content:flex-end;align-items:center;display:flex;position:fixed;inset:0}.js-apply-opportunity .modal-container{background:#fff;border-radius:12px 0 0 12px;width:100%;max-width:550px;height:100vh;animation:.3s ease-out js-apply-slideIn;overflow-y:auto;box-shadow:-10px 0 25px -5px #0000001a,-5px 0 10px -5px #0000000a}.js-apply-opportunity .modal-header{justify-content:space-between;align-items:center;padding:24px 24px 0;display:flex}.js-apply-opportunity .modal-title{color:#111827;margin:0;font-size:20px;font-weight:700}.js-apply-opportunity .close-btn{cursor:pointer;color:#6b7280;background:#f3f4f6;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.js-apply-opportunity .close-btn:hover{color:#374151;background:#e5e7eb}.js-apply-opportunity .close-btn svg{width:16px;height:16px}.js-apply-opportunity .job-info-card{background:#f9fafb;border-radius:8px;margin:20px 24px;padding:16px}.js-apply-opportunity .job-info-content{justify-content:space-between;align-items:center;display:flex}.js-apply-opportunity .job-details{flex:1}.js-apply-opportunity .job-title{color:#111827;margin:0 0 4px;font-size:16px;font-weight:700}.js-apply-opportunity .company-name{color:#6b7280;margin:0;font-size:.875rem}.js-apply-opportunity .company-logo{margin-left:16px}.js-apply-opportunity .logo-circle{background:#e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex;overflow:hidden}.js-apply-opportunity .logo-circle img{width:24px;height:24px}.js-apply-opportunity .greeting-section{padding:0 24px 20px}.js-apply-opportunity .greeting{color:#111827;margin:0 0 8px;font-size:16px;font-weight:700}.js-apply-opportunity .instructions{color:#374151;margin:0;font-size:.875rem;line-height:1.5}.js-apply-opportunity .questions-form{padding:0 24px 24px}.js-apply-opportunity .question-group{margin-bottom:24px}.js-apply-opportunity .question-group:last-child{margin-bottom:0}.js-apply-opportunity .question-label{color:#374151;margin-bottom:12px;font-size:.875rem;font-weight:500;display:block}.js-apply-opportunity .question-input,.js-apply-opportunity .question-select{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:8px;width:100%;padding:12px 16px;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.js-apply-opportunity .question-select{cursor:pointer}.js-apply-opportunity .question-input:focus,.js-apply-opportunity .question-select:focus{border-color:#5865f2;outline:none;box-shadow:0 0 0 3px #5865f21a}.js-apply-opportunity .question-input::placeholder{color:#9ca3af}.js-apply-opportunity .checkbox-group fieldset{border:none;margin:0;padding:0}.js-apply-opportunity .checkbox-group .checkbox-row{flex-direction:column;gap:12px;margin-top:8px;display:flex}.js-apply-opportunity .checkbox-group .checkbox-item{cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:8px;display:flex}.js-apply-opportunity .checkbox-group .checkbox-item:hover{background-color:#f9fafb}.js-apply-opportunity .checkbox-group .checkbox-input{accent-color:#5865f2;cursor:pointer;width:16px;height:16px;min-height:0}.js-apply-opportunity .checkbox-group .checkbox-label{color:#374151;cursor:pointer;font-size:.875rem}.js-apply-opportunity .form_group{margin-bottom:20px}.js-apply-opportunity .form_group:last-child{margin-bottom:0}.js-apply-opportunity .invalid-feedback{color:#dc2626;margin-top:4px;font-size:12px;display:block}.js-apply-opportunity .modal-actions{justify-content:flex-end;gap:12px;padding:0 24px 24px;display:flex;position:fixed;bottom:0;left:0;right:0}.js-apply-opportunity .back-btn{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:10px 20px;font-size:.875rem;font-weight:500}.js-apply-opportunity .back-btn:hover{background:#f9fafb;border-color:#9ca3af}.js-apply-opportunity .save-btn{color:#fff;cursor:pointer;background:#5865f2;border:none;border-radius:8px;padding:10px 20px;font-size:.875rem;font-weight:500}.js-apply-opportunity .save-btn:hover{background:#4752c4}@media (max-width:640px){.js-apply-opportunity .modal-container{border-radius:0;max-width:100%}}
