.person-avatar,.house-avatar{overflow:hidden;flex-shrink:0}
.person-avatar img,.house-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.profile-photo-editor{display:flex;align-items:center;gap:22px;padding:22px;border:1px solid #40313b;background:linear-gradient(115deg,#261c25,#19181d);border-radius:18px}
.profile-photo-preview{width:112px;height:112px;border-radius:50%;background:#40303f;flex:none;display:grid;place-items:center;overflow:hidden;color:#ff9cab;font-size:42px;font-weight:700;box-shadow:0 0 0 5px #201921}
.profile-photo-preview img{width:100%;height:100%;object-fit:cover}
.profile-photo-controls{min-width:0;flex:1}.profile-photo-controls .form-field{margin:0}.profile-photo-controls .form-field>small{font-weight:400;color:var(--muted,#b7adb7)}
.profile-photo-controls input[type=file]{max-width:100%;font-size:13px;border:0;padding:8px 0;background:transparent}.profile-photo-controls input::file-selector-button{border:1px solid #65505c;border-radius:20px;background:#342632;color:#f7eaf1;padding:9px 14px;margin-right:10px;cursor:pointer}
.profile-photo-controls p{font-size:12px;margin:6px 0 12px}.profile-photo-controls button{font-size:12px;min-height:32px;padding:5px 13px}
.photo-input-error{color:#ffa1b1}
.profile-moderation-guide{color:var(--muted,#b7adb7);font-size:13px;line-height:1.65;margin:0}
.profile-moderation-notice{font-size:14px;line-height:1.6;padding:16px 18px;border:1px solid #54463c;background:#29221f;border-radius:12px;margin:16px 0;color:#e4d5c5}
.profile-moderation-notice.is-published{background:#172921;border-color:#305742;color:#c9efda}
.profile-check-status:empty{display:none}.profile-check-status{color:#f6b8c4;font-size:14px;margin:0;display:flex;align-items:center;gap:9px}
.profile-check-status.is-checking:before{content:'';width:13px;height:13px;border:2px solid #67505b;border-top-color:#f7bac6;border-radius:50%;animation:profile-check-spin .8s linear infinite}
.profile-portrait{display:inline-flex;width:100px;height:100px;align-items:center;justify-content:center;border-radius:50%;background:#352432;overflow:hidden;margin:0 0 18px;font-size:36px;color:#ffc0ce}.profile-portrait img{width:100%;height:100%;object-fit:cover}
@keyframes profile-check-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.profile-check-status.is-checking:before{animation:none}}
@media(max-width:600px){.profile-photo-editor{align-items:flex-start;gap:16px;padding:18px}.profile-photo-preview{width:76px;height:76px;font-size:32px}.profile-photo-controls input[type=file]{font-size:11px}.profile-photo-controls input::file-selector-button{display:block;margin-bottom:7px}.profile-photo-controls .form-field{font-size:14px}}
