/* Referral source modal - Figma-aligned styles */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');
.referral-source-modal.modal{padding-right:0 !important}
.referral-source-modal .modal-dialog{max-width:440px !important;width:calc(100% - 1rem);margin:1.75rem auto}
.referral-source-modal .modal-content{border:1px solid #295FAF;border-radius:12px;padding:24px;background-color:#FFFFFF;display:flex;flex-direction:column;gap:16px;box-shadow:0 4px 24px rgba(0,0,0,.08);overflow:visible}
.referral-source-modal *,.referral-source-modal *:before,.referral-source-modal *:after{box-sizing:border-box}
.referral-modal__title{font-family:'Roboto','Helvetica Neue',Arial,sans-serif;font-weight:700;font-size:23px;line-height:1.3;text-align:center;color:#27282B;margin:0;letter-spacing:-.3px;word-wrap:break-word;overflow-wrap:break-word}
.referral-modal__divider{height:1px;width:100%;background-color:#D8DEE6;margin:0}
.referral-modal__subtitle{font-family:'Roboto','Helvetica Neue',Arial,sans-serif;font-weight:400;font-size:16px;line-height:1.3;color:#27282B;text-align:left;margin:0}
.referral-modal__content{display:flex;flex-direction:column;gap:16px;width:100% !important;align-self:stretch !important;box-sizing:border-box}
.referral-modal__list{display:flex;flex-direction:column;gap:4px;width:100% !important;align-self:stretch !important}
.referral-option{display:flex;align-items:center;justify-content:space-between;padding:5px 0;margin:0;gap:8px;cursor:pointer;font-weight:400;width:100%;align-self:stretch}
.referral-option__main{display:flex;align-items:center;gap:8px;flex:1 1 100%;min-width:0;width:100%}
.referral-radio{position:absolute;opacity:0;pointer-events:none;width:0;height:0;margin:0}
.referral-radio__visual{width:24px;height:24px;min-width:24px;border:2px solid #295FAF;border-radius:50%;background-color:#FFFFFF;position:relative;box-sizing:border-box;display:inline-block;flex-shrink:0}
.referral-radio:checked + .referral-radio__visual::after{content:'';position:absolute;top:50%;left:50%;width:10px;height:10px;background-color:#295FAF;border-radius:50%;transform:translate(-50%,-50%)}
.referral-option__label{font-family:'Roboto','Helvetica Neue',Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.3;color:#27282B;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.referral-icon{width:24px;height:24px;min-width:24px;flex-shrink:0;display:block;border-radius:5.65px}
.referral-modal__input-wrap{width:100% !important;align-self:stretch !important;display:block;box-sizing:border-box;flex:0 0 auto}
.referral-modal__input{width:100% !important;min-width:100%;display:block;padding:12px 16px 13px;background-color:#FFFFFF;border:1px solid #D8DEE6;border-radius:8px;font-family:'Roboto','Helvetica Neue',Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.3;color:#27282B;resize:none;box-sizing:border-box !important;outline:none;min-height:44px;max-width:100%;margin:0}
.referral-modal__input::placeholder{color:#919BA9}
.referral-modal__input:focus{border-color:#295FAF}
.referral-modal__error{display:block;margin-top:4px;color:#D7282A;font-family:'Roboto','Helvetica Neue',Arial,sans-serif;font-size:12px}
.referral-modal__buttons{display:flex;flex-direction:row;justify-content:space-between;align-items:center;width:100%;gap:8px}
.referral-modal__btn{font-family:'Roboto','Helvetica Neue',Arial,sans-serif;font-weight:700;font-size:12px;line-height:1.17;border:none;cursor:pointer;border-radius:8px;transition:background-color .15s ease,color .15s ease}
.referral-modal__btn--primary{background-color:#295FAF;color:#FFFFFF;padding:16px 28px;height:44px;display:inline-flex;align-items:center;justify-content:center}
.referral-modal__btn--primary:hover{background-color:#1f4d93;color:#FFFFFF}
.referral-modal__btn--primary:disabled{background-color:#919BA9;cursor:not-allowed}
.referral-modal__btn--link{background:transparent;color:#295FAF;padding:16px 28px;height:44px;display:inline-flex;align-items:center;justify-content:center}
.referral-modal__btn--link:hover{text-decoration:underline;color:#295FAF}
