/* Shared lightweight portraits; profile dimensions stay in site.css. */
.header-avatar-slot{display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;font-style:normal}
.header-avatar-slot>.header-avatar{display:block;width:30px;height:30px;object-fit:cover;border:1px solid #696b75;border-radius:50%;background:#303233}
.admin-header-avatar,.user-list-avatar{display:block;width:36px;height:36px;object-fit:cover;border:1px solid #637086;border-radius:9px;background:#26364e;flex:0 0 36px}
.admin-header-avatar.avatar-letter,.user-list-avatar.avatar-letter{display:grid;place-items:center;font-size:18px;font-weight:700;color:#ffcd84}
.admin-user-identity{display:flex;align-items:center;gap:12px;min-width:160px}
.admin-user-identity>div{min-width:0}
@media(max-width:760px){.header-avatar-slot{flex-basis:27px;width:27px;height:27px}.header-avatar-slot>.header-avatar{width:27px;height:27px}}

.avatar-change-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;margin-top:12px;padding:7px 8px;border:1px solid #696b75;border-radius:8px;background:#393b40;color:#f5f5f8;font:inherit;font-size:12px;font-weight:650;line-height:1.3;cursor:pointer}
.avatar-change-button:hover{background:#474950;border-color:#9f87dc}
.avatar-change-button:focus-visible{outline:3px solid #be9cff;outline-offset:3px}
body.avatar-picker-open{overflow:hidden}
.avatar-picker{width:min(860px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #5b5d67;border-radius:16px;background:#292b30;color:#f4f4f8;box-shadow:0 22px 80px #0009;overflow:hidden}
.avatar-picker::backdrop{background:#07080cbf}
.avatar-picker-form{display:flex;flex-direction:column;max-height:min(780px,calc(100dvh - 34px));margin:0;min-height:0}
.avatar-picker-heading{display:flex;align-items:center;gap:12px;padding:18px 20px;border-bottom:1px solid #474950;flex:0 0 auto}
.avatar-picker-heading>div{min-width:0;flex:1}
.avatar-picker-heading h2{margin:0;font-size:22px;line-height:1.3;letter-spacing:0}
.avatar-picker-heading p{margin:4px 0 0;color:#bcbec8;font-size:12px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.avatar-picker-preview{width:48px;height:48px;flex:0 0 48px;object-fit:cover;border:1px solid #717380;border-radius:10px;background:#303233}
.avatar-picker-close{display:grid;place-items:center;width:44px;height:44px;padding:0;flex:0 0 44px;border:0;border-radius:8px;background:transparent;color:#c7c9d2;font-size:28px;line-height:1;cursor:pointer}
.avatar-picker-close:hover{background:#3d3f46;color:white}
.avatar-picker-tabs{display:flex;gap:8px;padding:12px 20px;border-bottom:1px solid #474950;flex:0 0 auto}
.avatar-picker-tab{display:flex;align-items:center;justify-content:center;gap:10px;flex:1;min-height:44px;padding:8px 12px;border:1px solid #5b5d68;border-radius:8px;background:#36383e;color:#c8cad4;font:inherit;font-size:14px;font-weight:650;cursor:pointer}
.avatar-picker-tab[aria-selected=true]{background:#7048d2;color:white;border-color:#b49beb}
.avatar-picker-tab>span{padding:2px 6px;border-radius:5px;background:#0003;font-size:11px;font-variant-numeric:tabular-nums}
.avatar-picker-gallery{min-height:0;overflow:auto;overscroll-behavior:contain}
.avatar-picker-panel[hidden]{display:none}
.avatar-picker-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;padding:16px 20px}
.avatar-choice{display:block;position:relative;min-width:0;margin:0;cursor:pointer}
.avatar-choice-input{position:absolute;width:1px!important;height:1px!important;min-height:0!important;margin:0;padding:0;border:0;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.avatar-choice-art{display:block;position:relative;aspect-ratio:1;overflow:hidden;border:2px solid transparent;border-radius:11px;background:#393b40;transition:border-color .12s,box-shadow .12s}
.avatar-choice-art>img{display:block;width:100%;height:100%;object-fit:cover}
.avatar-choice:hover .avatar-choice-art{border-color:#b9a4e7}
.avatar-choice-input:checked+.avatar-choice-art{border-color:#c3a1ff;box-shadow:0 0 0 2px #7950d3}
.avatar-choice-input:focus-visible+.avatar-choice-art{outline:3px solid #e6d4ff;outline-offset:2px}
.avatar-choice-check{display:none;position:absolute;right:4px;bottom:4px;width:22px;height:22px;place-items:center;border-radius:50%;background:#7048d2;border:1px solid #ded0ff;color:white;font-size:14px;font-weight:800;line-height:1}
.avatar-choice-input:checked+.avatar-choice-art .avatar-choice-check{display:grid}
.avatar-choice-name{display:block;margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#c4c6d0;font-size:10px;line-height:1.35;text-align:center}
.avatar-picker-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid #474950;flex:0 0 auto}
.avatar-picker-footer>.button{min-height:44px;font-size:14px;padding:10px 18px}
.avatar-picker-save{background:#7048d2!important;border-color:#a481f0!important;color:white!important}
.avatar-picker-save:hover{background:#8054e7!important}
.avatar-picker-save:disabled{opacity:.45;cursor:default}
.avatar-picker-error{padding:10px 20px;background:#512a39;color:#ffd1df;font-size:13px;flex:0 0 auto}
.avatar-picker-error p{margin:0;line-height:1.4}
.avatar-picker-tab:focus-visible,.avatar-picker-close:focus-visible{outline:3px solid #dec4ff;outline-offset:2px}
@media(max-width:620px){.avatar-picker-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;padding:14px}.avatar-picker-heading,.avatar-picker-tabs{padding-left:14px;padding-right:14px}.avatar-picker-heading h2{font-size:20px}}
@media(max-width:480px){.avatar-change-button{font-size:11px;margin-top:8px;padding:6px 3px}.avatar-picker{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:12px}.avatar-picker-form{max-height:calc(100dvh - 18px)}.avatar-picker-heading{padding:12px;gap:9px}.avatar-picker-heading h2{font-size:18px}.avatar-picker-heading p{font-size:11px}.avatar-picker-preview{width:42px;height:42px;flex-basis:42px}.avatar-picker-tabs{gap:7px;padding:10px 12px}.avatar-picker-tab{gap:6px;padding:7px 8px;font-size:12px}.avatar-picker-tab>span{font-size:10px}.avatar-picker-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 8px;padding:12px}.avatar-choice-name{font-size:10px}.avatar-picker-footer{padding:12px;gap:8px}.avatar-picker-footer>.button{flex:1;font-size:12px;padding:9px 8px}}
@media(prefers-reduced-motion:reduce){.avatar-choice-art{transition:none}}

.avatar-change-button[hidden]{display:none}
