.photo-upload{margin:28px 0 20px;padding:24px 0;border-top:1px solid var(--line,#dce2dc);border-bottom:1px solid var(--line,#dce2dc)}
.photo-upload h2{font-size:19px!important;letter-spacing:-.02em;margin:0 0 12px}.photo-upload h2 span{font-size:12px;font-weight:400;color:#52636a;margin-left:8px;letter-spacing:0}
.photo-upload>p{font-size:13px;line-height:1.65}.photo-picker-actions{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 10px}
.photo-choice{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:11px 16px;border:1px solid #8da28d;border-radius:4px;background:#f7f9f4;font-size:13px;font-weight:600;cursor:pointer;overflow:hidden;color:#183c30}
.photo-choice:hover{background:#e9f0e3}.photo-choice:focus-within{outline:3px solid #34852b;outline-offset:3px}.photo-choice input[type=file]{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;padding:0;cursor:pointer}
.camera-choice{display:none}.photo-upload .photo-feedback{margin:8px 0;color:#193f2e;white-space:pre-line;overflow-wrap:anywhere}.photo-upload .photo-feedback.error{color:#a12c1b}.photo-upload .photo-count{font-size:12px;font-weight:600;margin:14px 0}
.photo-previews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0;margin:0;list-style:none}.photo-previews:empty{display:none}.photo-preview{min-width:0;border:1px solid #dce2dc;border-radius:4px;overflow:hidden;background:#fff}
.photo-preview img{display:block;width:100%;height:145px;object-fit:cover}.photo-preview-info{padding:12px}.photo-preview-name{display:block;font-size:12px;font-weight:600;overflow-wrap:anywhere;line-height:1.5}.photo-preview-size{display:block;font-size:11px;color:#52636a;margin-top:4px}
.photo-remove{background:none;border:0;border-bottom:1px solid currentColor;color:#254c36;padding:8px 0 3px;margin-top:9px;font-size:12px;cursor:pointer}.photo-remove:focus-visible{outline:3px solid #34852b;outline-offset:3px}.photo-upload .photo-privacy{font-size:12px;margin:18px 0 0;color:#52636a}
.admin-attachments{margin:24px 0;white-space:normal}.admin-attachments h4{font-size:17px;margin:0 0 16px}.admin-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.admin-photo{margin:0;min-width:0;border:1px solid #dce2dc;padding:12px;border-radius:4px}.admin-photo>a:first-child{display:block}.admin-photo img{display:block;width:100%;height:165px;object-fit:cover;background:#eef1e9}.admin-photo figcaption{font-size:12px;margin-top:10px;line-height:1.6}.admin-photo .photo-download{display:inline-block;font-size:12px;text-decoration:underline;margin-top:7px;min-height:30px;padding:6px 0}
@media(max-width:760px){.photo-upload{padding:20px 0}.camera-choice{display:inline-flex}.photo-picker-actions{gap:10px}.photo-choice{flex:1;min-width:120px}.photo-previews{gap:10px}.photo-preview img{height:110px}.photo-preview-info{padding:10px}.admin-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-photo img{height:130px}}
@media(max-width:360px){.photo-previews,.admin-photo-grid{grid-template-columns:1fr}.photo-preview img{height:160px}}
