.avatar-companion{margin:16px 0 20px;padding:14px;border:1px solid var(--border,#33404b);border-radius:20px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent,#70e2d4) 8%,transparent),transparent);min-width:0;overflow:hidden}
.avatar-topline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.avatar-label{font-size:11px;text-transform:uppercase;letter-spacing:.13em;font-weight:800;color:var(--accent,#70e2d4);margin-right:auto}.avatar-topline button{font-size:11px;min-height:36px}.avatar-stage{height:250px;position:relative;isolation:isolate;overflow:hidden;border-radius:16px;margin:8px 0;background:radial-gradient(ellipse at 50% 70%,color-mix(in srgb,var(--accent,#70e2d4) 16%,transparent),transparent 65%)}
.avatar-stage[hidden]{display:none}.avatar-canvas{position:absolute;inset:0;z-index:1}.avatar-canvas canvas{display:block;width:100%;height:100%;pointer-events:none}.avatar-halo{position:absolute;width:175px;height:175px;left:50%;top:20px;transform:translateX(-50%);border:1px solid color-mix(in srgb,var(--accent,#70e2d4) 40%,transparent);border-radius:50%;box-shadow:0 0 0 14px color-mix(in srgb,var(--accent,#70e2d4) 4%,transparent),0 0 0 30px color-mix(in srgb,var(--accent,#70e2d4) 3%,transparent)}
.avatar-placeholder{position:absolute;inset:0;display:grid;place-items:center;font-size:66px;color:var(--accent,#70e2d4)}.avatar-placeholder[hidden]{display:none}.avatar-name{position:absolute;z-index:2;left:12px;bottom:10px;font-size:11px;letter-spacing:.05em;background:#07121cd9;color:#fff;border:1px solid #ffffff24;border-radius:20px;padding:5px 10px}.avatar-wave{position:absolute;z-index:2;right:10px;bottom:7px;width:42px;height:42px;border-radius:50%;border:1px solid var(--accent,#70e2d4);background:#07121cd9;color:var(--accent,#70e2d4);font-size:25px;cursor:pointer}.avatar-status{margin:4px 0!important;font-size:12px!important}.avatar-help,.avatar-credit{font-size:10px!important;opacity:.7;line-height:1.5}.avatar-help{margin:6px 0 4px!important}.avatar-credit{text-underline-offset:3px}.avatar-topline button:focus-visible,.avatar-wave:focus-visible{outline:2px solid var(--accent,#70e2d4);outline-offset:3px}
.avatar-label,.avatar-name{font-size:.75rem}.avatar-topline button{font-size:.875rem}.avatar-status{font-size:.875rem!important}.avatar-help,.avatar-credit{font-size:.75rem!important}
.avatar-stage{height:300px}.avatar-halo{width:200px;height:200px;top:32px}.avatar-canvas{filter:drop-shadow(0 8px 14px #0003)}
.avatar-canvas{filter:none}.avatar-voices{display:grid;gap:6px;font-size:.875rem;margin:12px 0}.avatar-voices[hidden]{display:none}.avatar-voices select{min-width:0;width:100%;min-height:44px}.avatar-listen{min-height:44px;font-size:.875rem}.avatar-halo{opacity:calc(.6 + var(--voice-energy,0)*.4);box-shadow:0 0 calc(12px + var(--voice-energy,0)*28px) color-mix(in srgb,var(--accent,#70e2d4) 22%,transparent)}
@media(max-width:790px){.avatar-stage{height:210px}.avatar-companion{padding:12px}.avatar-topline button{min-height:44px}}
.avatar-cast{display:flex;position:absolute;inset:0;gap:4px;padding-bottom:54px}.avatar-member{position:relative;flex:1;min-width:0;border:1px solid transparent;border-radius:14px;overflow:hidden;transition:background .15s,border-color .15s}.avatar-member-canvas{position:absolute;inset:0}.avatar-member-name{position:absolute;bottom:2px;left:50%;transform:translateX(-50%);font-size:12px;padding:3px 9px;border-radius:20px;background:#07121ce6;color:#fff}.avatar-member.is-speaking{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.avatar-is-vocaloid .avatar-name{display:none}.avatar-cast[data-count="3"]{gap:2px}.avatar-is-vocaloid .avatar-stage{height:324px}.avatar-cast[data-count="1"] .avatar-member-name{bottom:6px}@media(max-width:790px){.avatar-is-vocaloid .avatar-stage{height:274px}}@media(prefers-reduced-motion:reduce){.avatar-member{transition:none}}
.site-update{position:fixed;z-index:10000;right:16px;bottom:88px;width:min(390px,calc(100vw - 32px));padding:18px;border:1px solid var(--accent,#70e2d4);border-radius:16px;background:var(--panel,#10242e);color:var(--text,#fff);box-shadow:0 12px 40px #0008}.site-update p{font-size:14px;line-height:1.5}.site-update button{min-height:44px}
.avatar-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0;min-width:0}.avatar-controls[hidden],.avatar-controls label[hidden]{display:none}.avatar-controls label{display:grid;gap:6px;min-width:0;font-size:.875rem}.avatar-controls .avatar-picker{grid-column:1/-1}.avatar-controls select{width:100%;min-width:0;min-height:44px;font-size:.875rem}.avatar-controls p{grid-column:1/-1;margin:0!important;font-size:.875rem!important;line-height:1.5;color:var(--muted)}
@media(max-width:390px){.avatar-controls{grid-template-columns:1fr}.avatar-controls label{grid-column:1/-1}}
