.resident-photo{position:relative;display:inline-flex;flex:none;align-items:center;justify-content:center;width:40px;height:48px;border:1px solid #d9e3ef;border-radius:7px;background:var(--accent-soft);overflow:hidden;vertical-align:middle}
.resident-photo-fallback{color:#6282a5;font-size:17px;font-weight:600}.resident-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:var(--surface-subtle)}.resident-photo-large{width:84px;height:100px;border-radius:var(--radius-lg)}.resident-photo-large .resident-photo-fallback{font-size:30px}.resident-photo-block{display:flex;flex:none;flex-direction:column;gap:4px;align-items:center}.resident-photo-block .text-button{font-size:var(--font-xs);padding:5px;min-height:32px;white-space:nowrap}
.resident-person{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:10px;align-content:center;justify-content:normal}.resident-person>.resident-photo{grid-column:1;grid-row:1 / span 3;align-self:center}.resident-person>strong,.resident-person>.resident-person-meta,.resident-person>.resident-mobile-facility{grid-column:2}.resident-tile-heading .resident-photo{width:44px;height:54px}.resident-tile-heading .resident-person{grid-template-columns:44px minmax(0,1fr)}
#resident-photo-dialog{max-width:560px}.photo-resident-name{margin:0 0 16px;overflow-wrap:anywhere}.photo-resident-name strong{font-size:18px}.photo-resident-name span{display:block;color:var(--muted);font-size:var(--font-sm);margin-top:6px}.photo-preview{display:flex;align-items:center;justify-content:center;min-height:230px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg);overflow:hidden}.photo-preview>img{display:block;width:100%;height:280px;object-fit:contain}.photo-preview>span{color:var(--muted);font-size:var(--font-md);padding:20px;text-align:center}#photo-status{line-height:1.8;min-height:24px}#photo-form .field{margin:16px 0}#resident-photo-file{width:100%;min-width:0;font-size:var(--font-md);padding:10px;background:white}#resident-photo-dialog .modal-content{overflow-wrap:anywhere}#resident-photo-dialog .error-box{margin-top:16px}
@media(max-width:600px){.resident-list-table .resident-person{grid-template-columns:30px minmax(0,1fr);column-gap:6px}.resident-list-table .resident-photo{width:30px;height:39px;border-radius:5px}.resident-list-table .resident-photo-fallback{font-size:14px}.resident-photo-large{width:65px;height:80px}.resident-heading{align-items:flex-start}.resident-photo-block .text-button{font-size:11px}.photo-preview{min-height:190px}.photo-preview>img{height:230px}#resident-photo-file{font-size:12px}.resident-photo-block{max-width:76px}}
@media print{.resident-photo-block .text-button{display:none}.resident-photo{print-color-adjust:exact}}
