/* pet-modal.css — shared "Pet Friendly Property Managers" modal (buy/listings/rent) */
.pet-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:9000;display:flex;align-items:center;justify-content:center;padding:1rem}
.pet-modal{background:#1e293b;border:1px solid #334155;border-radius:14px;width:100%;max-width:560px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.pet-modal-header{padding:1.1rem 1.4rem .9rem;border-bottom:1px solid #334155;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.pet-modal-title{font-size:1.05rem;font-weight:700;color:#f1f5f9;margin:0}
.pet-modal-close{background:transparent;border:none;color:#94a3b8;cursor:pointer;font-size:1.3rem;line-height:1;padding:.2rem .5rem;border-radius:4px;transition:color .15s}
.pet-modal-close:hover{color:#f1f5f9}
.pet-modal-close:focus-visible{outline:2px solid #FBBF24;outline-offset:2px;color:#f1f5f9}
.pet-modal-body{overflow-y:auto;padding:.75rem 1rem 1rem}
.pet-modal-intro{font-size:.8rem;color:#94a3b8;margin-bottom:.9rem;line-height:1.5}
.pm-row{display:flex;align-items:flex-start;gap:.75rem;padding:.65rem .5rem;border-radius:8px;transition:background .15s}
.pm-row:hover{background:#0f172a}
.pm-row+.pm-row{border-top:1px solid #1e293b}
.pm-main{flex:1;min-width:0}
.pm-head{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.pm-pet-badge{font-size:.65rem;font-weight:700;padding:.15rem .45rem;border-radius:10px;white-space:nowrap;flex-shrink:0}
.pm-pet-yes{background:#FBBF2420;color:#FBBF24;border:1px solid #FBBF2440}
.pm-pet-partial{background:#f9731620;color:#fb923c;border:1px solid #fb923c40}
.pm-name{font-size:.88rem;font-weight:600;color:#e2e8f0}
.pm-areas{font-size:.73rem;color:#94a3b8;margin-top:.15rem;line-height:1.4}
.pm-links{display:flex;gap:.5rem;align-items:center;flex-shrink:0}
.pm-link{font-size:.72rem;color:#60a5fa;text-decoration:none;font-weight:500}
.pm-link:hover{color:#93c5fd}
.pm-phone{font-size:.72rem;color:#94a3b8;text-decoration:none}
.pm-phone:hover{color:#cbd5e1}

/* Card layout on phones — badge inline with name, full-width 44px tap targets */
@media(max-width:560px){
  .pet-modal-overlay{padding:.5rem}
  .pet-modal{max-height:90vh;border-radius:12px}
  .pet-modal-header{padding:.85rem 1rem .7rem}
  .pet-modal-title{font-size:.95rem;line-height:1.25}
  .pet-modal-body{padding:.5rem .7rem .85rem}
  .pet-modal-intro{font-size:.75rem;margin-bottom:.75rem}
  .pm-row{flex-direction:column;align-items:stretch;gap:.5rem;padding:.75rem;background:#0f172a;border:1px solid #334155;border-radius:10px}
  .pm-row:hover{background:#0f172a}
  .pm-row+.pm-row{border-top:1px solid #334155;margin-top:.5rem}
  .pm-links{gap:.5rem;width:100%;min-width:0}
  .pm-links a{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;min-height:44px;padding:.55rem .5rem;border:1px solid #334155;border-radius:8px;text-align:center;font-size:.8rem;overflow-wrap:anywhere}
  .pm-link{background:#FBBF2415}
  .pm-phone{background:transparent}
}
@media(prefers-reduced-motion:reduce){
  .pm-row,.pet-modal-close{transition:none}
}
