.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);display:none;align-items:center;justify-content:center;z-index:1000}
.modal-overlay.active{display:flex}
.modal-otp{background:white;border-radius:16px;padding:40px;max-width:450px;width:100%;position:relative;box-shadow:0 20px 60px rgba(0,0,0,0.3);animation:slideUp .3s ease}
@keyframes slideUp{from{opacity:0;transform:translateY(20px)}
to{opacity:1;transform:translateY(0)}
}
.close-btn{position:absolute;top:20px;right:20px;background:0;border:0;font-size:24px;cursor:pointer;color:#666;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}
.close-btn:hover{background:#f5f5f5;color:#333}
.modal-subtitle{color:#666;font-size:14px;margin-bottom:24px}
.form-group{margin-bottom:20px}
.form-group label{display:block;font-size:14px;color:#666;margin-bottom:8px}
.form-group input,.form-group select{width:100%;padding:14px 16px;border:1px solid #e0e0e0;border-radius:8px;font-size:16px;transition:all .3s}
.form-group input:focus,.form-group select:focus{outline:0;border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,0.1)}
.form-group input:disabled{background:#f5f5f5;color:#666;cursor:not-allowed}
.form-group input.error{border-color:#f44336}
.error-message{color:#f44336;font-size:12px;margin-top:6px;display:none}
.error-message.show{display:block}
.otp-container{display:flex;gap:10px;margin-bottom:12px}
.ot-input{width:48px;height:48px;text-align:center;font-size:20px;font-weight:600;border:2px solid #e0e0e0;border-radius:8px;transition:all .3s}
.ot-input:focus{border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,0.1);outline:0}
.otp-timer-text{color:#666;font-size:13px;margin-bottom:8px}
.resend-btn{background:0;border:0;color:#667eea;font-size:13px;cursor:pointer;text-decoration:underline;padding:0;display:none}
.resend-btn.show{display:inline-block}
.resend-btn:hover{color:#5568d3}
.info-text{color:#999;font-size:12px;margin-top:8px}
.primary-btn{background:#ff6b35;color:white;border:0;padding:14px 40px;border-radius:30px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;margin-top:10px}
.primary-btn:hover{background:#e65a2b;transform:translateY(-2px);box-shadow:0 8px 20px rgba(255,107,53,0.3)}
.primary-btn:disabled{background:#ccc;cursor:not-allowed;transform:none;box-shadow:none}
.trigger-btn{background:#667eea;color:white;border:0;padding:16px 48px;border-radius:30px;font-size:18px;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 10px 30px rgba(102,126,234,0.3)}
.trigger-btn:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 15px 40px rgba(102,126,234,0.4)}
select{appearance:none;background-image:url("data:image/svg+xml,%3Csvgxmlns='http://www.w3.org/2000/svg'width='12'height='12'viewBox='001212'%3E%3Cpathfill='%23333'd='M69L14h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}
.loading{opacity:.6;pointer-events:none}
select{cursor:pointer;background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}
.spec-tabs .tab-spec.active{color:#fabb04}