.reference-photos{margin:24px 0;padding:20px;border:2px dashed #ae8fcc;border-radius:18px;background:#faf6ff;color:#342444;min-width:0;}
.reference-photos-title{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;}
.reference-photos-title h3{font-size:20px;margin:0;}
.reference-free{border-radius:20px;background:#e1f4e9;color:#186144;padding:6px 10px;font-size:11px;font-weight:800;letter-spacing:.04em;}
.reference-photos p{font-size:14px;line-height:1.55;margin:10px 0;}
.reference-reassurance{font-weight:700;}
.reference-photos .reference-add{display:block;width:100%;min-height:50px;margin:16px 0 10px;padding:12px;border:0;border-radius:12px;background:#725098;color:#fff;font:inherit;font-weight:700;cursor:pointer;}
.reference-photos button:focus-visible{outline:3px solid #402558;outline-offset:3px;}
.reference-add:disabled{opacity:.6;cursor:wait;}
.reference-photos small{display:block;font-size:12px;line-height:1.5;}
.reference-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-top:12px;}
.reference-photo-card{min-width:0;border:1px solid #d9c9e7;border-radius:12px;padding:10px;background:#fff;display:flex;flex-direction:column;gap:6px;}
.reference-photo-card img{width:100%;height:110px;object-fit:contain;background:#f7f2fa;border-radius:7px;}
.reference-photo-card strong{font-size:12px;overflow-wrap:anywhere;}
.reference-photo-card span{font-size:11px;color:#614c74;}
.reference-photo-card button{margin-top:auto;min-height:44px;background:#f3edf8;border:1px solid #d9c9e7;border-radius:8px;color:#513b68;cursor:pointer;}
@media(max-width:420px){.reference-photos{padding:14px;}.reference-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
