.chat-avatar-dialog{width:min(96vw,760px);max-height:92dvh;overflow:auto;border:0;border-radius:18px;padding:0;background:#fff;color:#152625;box-shadow:0 24px 70px #0007}
.chat-avatar-dialog::backdrop{background:#061d1bcb}
.avatar-editor{padding:22px;font:16px/1.4 Inter,system-ui,sans-serif}
.avatar-heading h2{font-size:1.3rem;margin:0 0 3px}.avatar-heading p{margin:0 0 16px;color:#506361;font-size:.9rem}
.avatar-workspace{display:grid;grid-template-columns:minmax(190px,290px) 1fr;gap:22px;align-items:start}
.avatar-preview{position:sticky;top:0;display:grid;justify-items:center;gap:10px}
.avatar-preview canvas{display:block;width:100%;max-width:290px;height:auto;aspect-ratio:1;border-radius:50%;border:3px solid #62c5bb;background:#ddf3f1}
.avatar-preview p{text-align:center;color:#536966;font-size:.82rem;margin:0}
.avatar-controls{min-width:0;display:grid;gap:15px}.avatar-controls fieldset{border:0;padding:0;margin:0;min-width:0}.avatar-controls legend,.avatar-zoom{font-weight:800;color:#305753;font-size:.9rem;margin-bottom:8px}
.avatar-tabs{display:flex;gap:7px;overflow-x:auto;padding:4px 3px 9px;scrollbar-width:thin;scroll-snap-type:x proximity}
.avatar-tabs button{flex:none;min-height:44px;padding:8px 13px;border:1px solid #abcac5;border-radius:999px;background:#f3faf8;color:#255b55;font:inherit;font-size:.88rem;font-weight:800;cursor:pointer;scroll-snap-align:center}
.avatar-tabs button[aria-selected=true]{background:#107f76;border-color:#107f76;color:white;box-shadow:0 3px 10px #107f7640}
.avatar-tabs button:focus-visible{outline:3px solid #155b54;outline-offset:2px}
.avatar-panels{min-height:176px}.avatar-panel[hidden]{display:none!important}.avatar-panel{display:grid;gap:18px;align-content:start;animation:avatar-panel-in .2s ease-out}
@keyframes avatar-panel-in{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.avatar-portraits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.avatar-choice{display:grid;justify-items:center;gap:5px;min-height:132px;padding:8px;border:2px solid #d4e4e1;border-radius:12px;background:#f4faf9;color:#214d49;font:inherit;font-weight:800;cursor:pointer}
.avatar-choice img{display:block;width:94px;height:94px;object-fit:contain;border-radius:50%;background:linear-gradient(135deg,#b8e9e3,#3aa89e)}
.avatar-choice[aria-pressed=true]{border-color:#0c8077;background:#e4f5f1;box-shadow:0 0 0 2px #49bcb3}
.avatar-choice:focus-visible,.avatar-swatches button:focus-visible{outline:3px solid #157d75;outline-offset:2px}
.avatar-swatches{display:flex;flex-wrap:wrap;gap:13px;padding:5px}.avatar-swatches button{width:44px;height:44px;min-height:44px;border:2px solid #fff;border-radius:50%;background:var(--swatch);box-shadow:0 0 0 1px #718e8a;cursor:pointer}
.avatar-swatches button[aria-pressed=true]{box-shadow:0 0 0 3px #167b73,0 0 0 5px #fff}
.avatar-swatches .avatar-original{background:repeating-conic-gradient(#e9f0ef 0 25%,#fff 0 50%) 50% / 12px 12px;color:#174f4a;font-size:1.35rem;font-weight:800;line-height:1}
.avatar-zoom{display:grid;gap:8px}.avatar-zoom input{width:100%;accent-color:#168177;min-height:32px}
.avatar-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.avatar-actions button{min-height:44px;border:1px solid #449d95;border-radius:9px;background:white;color:#155e58;padding:9px 14px;font-weight:800;cursor:pointer}.avatar-actions [data-save]{background:#50beb4;border-color:#50beb4;color:#061819}.avatar-actions button:disabled{opacity:.5}
.avatar-error{min-height:1.2em;margin:7px 0 0;color:#a23333;font-size:.85rem}
@media(max-width:620px){.avatar-editor{padding:16px}.avatar-workspace{grid-template-columns:1fr;gap:15px}.avatar-preview{position:sticky;top:-16px;z-index:2;background:#fff;padding:7px 0 12px;border-bottom:1px solid #d6e6e3}.avatar-preview canvas{max-width:180px}.avatar-preview p{font-size:.76rem}.avatar-actions button{flex:1}}
@media(max-height:650px) and (max-width:620px){.avatar-preview canvas{max-width:130px}}
@media(prefers-reduced-motion:reduce){.avatar-panel{animation:none}.avatar-tabs{scroll-behavior:auto}}
