/* 局域网窄屏布局和形象管理模态框，保留原桌面舞台结构。 */
button{white-space:nowrap;letter-spacing:0}input,select,textarea{max-width:100%;min-width:0}#top .logo{flex-shrink:0;letter-spacing:0}#top .logo small{letter-spacing:0}
#connectionNotice:empty{display:none}#connectionNotice{padding:8px 16px;background:var(--panel);border-bottom:1px solid var(--line);color:var(--warn);font-size:13px}
.avatar-dialog{width:min(880px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--line);border-radius:8px;color:var(--txt);background:var(--panel);margin:auto}
.avatar-dialog::backdrop{background:rgba(0,0,0,.65)}.avatar-dialog header{display:flex;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line)}.avatar-dialog h2{font-size:20px;margin:0;flex:1}.avatar-dialog header button{width:36px;height:36px;padding:0;font-size:22px}.avatar-body{padding:20px;display:grid;gap:20px;overflow:auto;max-height:calc(100dvh - 130px)}.avatar-current{color:var(--ok);overflow-wrap:anywhere;font-size:14px}
.avatar-tabs{display:flex;border-bottom:1px solid var(--line);gap:12px}.avatar-tabs button{border:0;background:transparent;border-radius:0;border-bottom:2px solid transparent;color:var(--dim)}.avatar-tabs button[aria-selected=true]{border-color:var(--acc);color:var(--txt)}.avatar-panel[hidden]{display:none}.avatar-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.avatar-toolbar input{flex:1;min-width:120px}
.avatar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}.avatar-card{min-width:0;border:1px solid var(--line);border-radius:8px;overflow:hidden}.avatar-card.current{border-color:var(--ok)}.avatar-card img{display:block;width:100%;aspect-ratio:3/4;object-fit:contain;background:var(--panel2)}.avatar-card p{margin:10px 10px 0;font-size:14px;overflow-wrap:anywhere}.avatar-card small{display:block;color:var(--dim);margin:4px 10px;font-size:12px;overflow-wrap:anywhere}.avatar-card button{margin:10px;width:calc(100% - 20px)}.avatar-upload{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:20px}.avatar-upload img{width:100%;aspect-ratio:9/16;object-fit:contain;background:var(--panel2);border:1px solid var(--line);border-radius:8px}.avatar-upload form{display:flex;flex-direction:column;gap:12px;min-width:0}.avatar-upload input{width:100%;min-width:0}.avatar-status{min-height:24px;color:var(--dim);font-size:14px;overflow-wrap:anywhere}.avatar-status.bad{color:var(--bad)}.avatar-status.good{color:var(--ok)}.avatar-dialog progress{width:100%;height:10px}.avatar-dialog :focus-visible{outline:2px solid var(--acc);outline-offset:3px}
@media(max-width:900px){#top{flex-wrap:wrap;gap:8px;padding:8px 12px}#top .logo small{display:none}#main{padding:8px;gap:8px;flex-direction:column;overflow-y:auto}#splitter{display:none}#videoWrap{flex:none;height:52dvh;min-height:300px;border:1px solid var(--line);border-radius:8px}#rightPanel{flex:none;width:100%;min-height:230px;border-radius:8px;overflow:visible}#trList{max-height:250px;overflow:auto}#drawer{position:fixed;inset:0;z-index:60;height:100dvh}#bottom{flex-wrap:wrap;padding:8px;gap:6px}#txt,#txtCmd{flex:1 1 calc(100% - 80px);width:0;min-width:0}#btnSend,#btnCmdSend{flex:0 0 64px}#btnItt,#btnSongs,#btnCmds,#btnRefs{padding:6px 8px;font-size:12px}#timerPill,#speakPill{max-width:180px;overflow:hidden;text-overflow:ellipsis}#fxPill{display:none}#mask .cap{max-width:100%;overflow-wrap:anywhere}#mask .maskRow{gap:6px}#mask{padding:12px 8px}#maskRow button{font-size:12px}#toasts{max-width:calc(100% - 20px)}.toast{max-width:100%;overflow-wrap:anywhere}#rightPanel>#songs,#rightPanel>#cmds,#rightPanel>#vpanel,#rightPanel>#refs{position:fixed;inset:0;width:100%;height:100dvh;z-index:65}#sessLog{max-width:95%}}
@media(max-width:480px){#top .pill{font-size:11px;padding:2px 6px}#top button{padding:7px 9px}#voicePill{max-width:140px;overflow:hidden;text-overflow:ellipsis}#dbody{padding:12px}.sect{padding:12px;border-radius:8px}.sect label{font-size:13px}.sect input[type=text],.sect select{min-width:0}.avatar-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.avatar-body{padding:14px}.avatar-upload{grid-template-columns:minmax(0,1fr)}.avatar-upload img{max-height:260px;aspect-ratio:auto}.avatar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.avatar-card p{font-size:13px}.avatar-toolbar{flex-direction:column}}
@media(prefers-reduced-motion:reduce){#drawer{transition:none}}
