
.modal-overlay{position:fixed;inset:0;z-index:100;background:rgba(14,14,18,.45);backdrop-filter:blur(4px);
  display:none;align-items:center;justify-content:center;padding:1.25rem}
.modal-overlay.modal-visible{display:flex}
.modal-content{background:var(--paper);border-radius:var(--r-lg);padding:2rem;max-width:420px;width:100%;
  box-shadow:0 40px 90px -40px rgba(0,0,0,.5)}
.modal-title{font-size:1.35rem;letter-spacing:-0.02em}
.modal-subtitle{color:var(--ink-soft);margin-top:.4rem;margin-bottom:1.3rem}
.referral-options{display:flex;flex-direction:column;gap:.55rem}
.referral-option{display:flex;align-items:center;gap:.7rem;border:1px solid var(--line-2);border-radius:var(--r);
  padding:.8rem 1rem;cursor:pointer;transition:.2s}
.referral-option:hover{border-color:var(--ink)}
.referral-option input{accent-color:var(--accent)}
.referral-option-text{font-size:.95rem}
.referral-other-container{margin-top:.7rem}
.referral-other-input{width:100%;border:1px solid var(--line-2);border-radius:var(--r);padding:.7rem 1rem;
  font-family:var(--f-body);font-size:.95rem;outline:none}
.referral-other-input:focus{border-color:var(--ink)}
.modal-content .modal-title{margin-bottom:1.3rem}
.referral-submit{margin-top:1.3rem;width:100%;background:var(--accent);color:#fff;border:0;border-radius:var(--pill);
  padding:.85rem;font-family:var(--f-body);font-weight:600;font-size:.98rem;cursor:pointer;transition:.2s}
.referral-submit:hover{background:var(--accent-press)}
.referral-skip{margin-top:.6rem;width:100%;background:none;border:0;color:var(--grey);font-family:var(--f-body);
  font-size:.9rem;cursor:pointer;padding:.5rem}

