/* css/chat.css — M-12: panel chat (js/ui/chat-ui.js). Kiri-bawah; auto-pudar saat sepi; sentuh: ikon 💬 + panel naik ke atas saat mengetik (agar tak tertutup keyboard). */
#chat{position:fixed;left:max(12px,env(safe-area-inset-left));bottom:max(44px,calc(env(safe-area-inset-bottom) + 44px));width:min(430px,calc(50vw - 24px));min-width:240px;z-index:6;display:flex;flex-direction:column;gap:3px;font:13px/1.35 system-ui,sans-serif;color:#fff;pointer-events:none;transition:opacity .35s}
#chat[hidden],#chatbtn[hidden]{display:none}
#chat.idle:not(.typing){opacity:0}
body.invopen #chat:not(.typing){display:none}
#chat .ch-tabs{display:none;gap:3px;flex-wrap:wrap}
#chat.typing .ch-tabs{display:flex;pointer-events:auto}
#chat .ch-tab{position:relative;padding:2px 8px;border-radius:6px;border:1px solid rgba(255,255,255,.4);background:rgba(0,0,0,.55);color:#ddd;font:600 11px/16px system-ui,sans-serif;cursor:pointer}
#chat .ch-tab.on{background:rgba(74,144,226,.85);color:#fff;border-color:#fff}
#chat .ch-tab i{font-style:normal;margin-left:4px;padding:0 4px;border-radius:8px;background:#e5484d;color:#fff;font-size:10px}
#chat .ch-tab i[hidden]{display:none}
#chat .ch-log{display:flex;flex-direction:column;max-height:9.6em;overflow-y:auto;overflow-x:hidden;padding:3px 6px;border-radius:6px;background:rgba(0,0,0,.28);text-shadow:0 1px 2px #000;scrollbar-width:thin}
#chat.typing .ch-log{max-height:12em;background:rgba(0,0,0,.55);pointer-events:auto}
#chat .cl{overflow-wrap:anywhere;word-break:break-word}
#chat .cg{font-weight:700;opacity:.85}
#chat .cw{font-weight:700}
#chat .cl-global .cg,#chat .cl-global .cw{color:#ffd37a}
#chat .cl-party .cg,#chat .cl-party .cw{color:#8ad4ff}
#chat .cl-whisper{color:#ffb3f3}
#chat .cl-sys{color:#a7e8a7;font-style:italic}
#chat .ch-row{display:none;gap:4px}
#chat.typing .ch-row{display:flex;pointer-events:auto}
#chat .ch-in{flex:1;min-width:0;padding:5px 8px;border-radius:6px;border:2px solid rgba(255,255,255,.6);background:rgba(0,0,0,.7);color:#fff;font:14px system-ui,sans-serif;outline:none}
#chat .ch-in:focus{border-color:#4a90e2}
#chat .ch-go,#chat .ch-x{width:34px;border-radius:6px;border:2px solid rgba(255,255,255,.55);background:rgba(0,0,0,.6);color:#fff;font-size:14px;cursor:pointer}
#chatbtn{display:none;position:fixed;right:max(270px,calc(env(safe-area-inset-right) + 270px));top:max(10px,env(safe-area-inset-top));z-index:7;width:44px;height:44px;border-radius:10px;border:2px solid rgba(255,255,255,.55);background:rgba(0,0,0,.5);color:#fff;font-size:20px;line-height:1;padding:0}
#chatbtn b{position:absolute;right:-5px;top:-6px;min-width:16px;padding:0 3px;border-radius:9px;background:#e5484d;font:700 10px/16px system-ui,sans-serif}
#chatbtn b[hidden]{display:none}
body.touch #chatbtn:not([hidden]){display:block}
body.touch #chat{bottom:max(200px,calc(env(safe-area-inset-bottom) + 190px));width:min(46vw,300px);font-size:12px}
body.touch #chat .ch-log{max-height:6.8em}
body.touch #chat.typing{top:max(64px,calc(env(safe-area-inset-top) + 58px));bottom:auto;width:min(560px,calc(100vw - 24px - env(safe-area-inset-left)));font-size:13px}
body.touch #chat.typing .ch-log{max-height:9em}
