/* 512px artwork surrounds the central 384px avatar; outer ornaments stay visible. */
body .avatar.has-avatar-frame{position:relative;overflow:visible;isolation:isolate;display:inline-block;border:0;padding:0!important}
.avatar.has-avatar-frame>.avatar-clip{display:block;position:relative;width:100%;height:100%;overflow:hidden;border-radius:16%;z-index:0}
.avatar.image-avatar.has-avatar-frame>.avatar-clip>img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--avatar-x,50%) var(--avatar-y,50%);transform:scale(var(--avatar-zoom,1));transform-origin:var(--avatar-x,50%) var(--avatar-y,50%);border:0;border-radius:0;pointer-events:none}
body .avatar.has-avatar-frame>img.avatar-frame-layer{position:absolute;inset:auto;left:-16.6666667%;top:-16.6666667%;display:block;width:133.3333333%;height:133.3333333%;max-width:none;object-fit:contain;object-position:center;transform:none;border:0;border-radius:0;pointer-events:none;z-index:2}
.member-profile .profile-avatar-edit:has(.has-avatar-frame){overflow:visible;clip-path:none}
.avatar-frame-settings{padding:0 24px 24px}
.avatar-frame-settings h3{font-size:15px;font-weight:500;color:#c2d3e4}
.avatar-frame-choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:12px;margin-top:16px}
.member-dialog .avatar-frame-choice{position:relative;display:flex;flex-direction:column;align-items:center;gap:18px;padding:24px 12px 15px;margin:0;border:1px solid #97badc26;border-radius:12px;cursor:pointer;text-align:center;font-size:12px}
.member-dialog .avatar-frame-choice input{position:absolute;top:9px;left:9px;width:16px;height:16px;padding:0;accent-color:var(--accent)}
.avatar-frame-choice:has(input:checked){background:#203045;border-color:#8094bb}
.avatar-frame-choice:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}
.avatar-frame-choice .avatar{width:66px;height:66px;border-radius:16%}
.avatar-frame-choice>span:last-child{overflow-wrap:anywhere}
.profile-name-row>[data-action=user-control]{margin-left:auto;font-size:11px}
.forum-dialog.user-control-dialog{width:min(780px,calc(100% - 28px))}
.user-control-dialog .user-control-body{padding-bottom:20px}
.user-control-dialog .member-tabs{margin:16px 20px 0}
.user-control-page{padding:24px;display:grid;gap:18px;min-width:0}
.user-control-page[hidden]{display:none}
.user-control-page h3{font-size:16px;font-weight:500;margin:0;color:#d8e4ef}
.user-control-summary{display:flex;align-items:center;gap:24px;padding:16px 12px}
.user-control-summary h3{font-size:23px;margin:0 0 5px;overflow-wrap:anywhere}
.user-control-summary p,.user-control-note{color:#9cb0c4;font-size:13px;line-height:1.6}
.user-control-page .f-actions{flex-wrap:wrap}
.user-control-page .danger{color:#f29b9b;border-color:#c75c5c70;background:#803a3a25}
.user-control-dialog .dialog-error,.user-control-feedback{padding:0 24px}
.user-ip-list{display:grid;gap:12px}
.user-ip-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;padding:18px;border:1px solid #97badc26;border-radius:12px;background:#0a111c66}
.user-ip-row>div:first-child{min-width:0}
.user-ip-row code{display:block;color:#e0e9f0;font-size:14px;overflow-wrap:anywhere}
.user-ip-row .user-ip-state{display:block;margin:6px 0;color:#b6c8db;font-size:12px}
.user-ip-row small{color:#819bb4;font-size:11px;line-height:1.7}
.user-ip-row p{font-size:12px;color:#f2a4a4;overflow-wrap:anywhere}
.user-ip-row .f-actions{max-width:100%}
.same-ip-results:empty{display:none}
.same-ip-member{padding:18px 0;border-bottom:1px solid #97badc26}
.same-ip-member p{font-size:12px;line-height:1.7;overflow-wrap:anywhere;color:#9cb0c4}
.user-frame-catalog{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:14px}
.user-frame-card{display:flex;align-items:center;flex-direction:column;gap:15px;padding:26px 15px 18px;border:1px solid #97badc26;border-radius:12px;background:#0a111c66}
.user-frame-card strong{font-size:13px;text-align:center;overflow-wrap:anywhere}
.user-frame-card>span:not(.avatar){font-size:11px;color:#9cb0c4}
.frame-catalog-dialog .f-fields>.f-button{justify-self:start}
@media(max-width:767px){.avatar-frame-settings{padding:0 20px 20px}.user-control-page{padding:20px}.user-control-summary{gap:20px}.profile-name-row>[data-action=user-control]{margin-left:0}.user-ip-row .f-actions{width:100%;align-items:stretch;flex-direction:column}.user-ip-row .f-button{width:100%;text-align:center}}
