/* Client conversations share the support history; surfaces follow the selected theme. */
#messenger-panel.appeals-panel,#messenger-panel.appeals-panel .messenger-heading,#messenger-panel.appeals-panel .messenger-dialog{background:var(--surface);color:var(--text)}
#messenger-panel.appeals-panel .messenger-conversations{background:var(--subtle);border-color:var(--line)}
#messenger-panel.appeals-panel .communication-tabs button[aria-pressed=true]{background:var(--blue-soft)}
.appeals-panel .messenger-body{min-height:0;overflow:hidden}
.client-stage-new{--stage-color:#2866c2}.client-stage-accepted{--stage-color:#177786}.client-stage-waiting{--stage-color:#99630d}.client-stage-answered{--stage-color:#b54c25}.client-stage-done{--stage-color:#17794d}.client-stage-closed,.client-stage-unknown{--stage-color:#64748b}
html[data-theme=dark] .client-stage-new{--stage-color:#81b8ff}html[data-theme=dark] .client-stage-accepted{--stage-color:#67d3e1}html[data-theme=dark] .client-stage-waiting{--stage-color:#edc377}html[data-theme=dark] .client-stage-answered{--stage-color:#ffac89}html[data-theme=dark] .client-stage-done{--stage-color:#69dba7}
.client-stage{display:inline-flex;align-items:center;gap:5px;color:var(--stage-color);font-size:10px;font-weight:600;line-height:1.45;white-space:normal}
.client-stage::before{content:"";width:6px;height:6px;flex-shrink:0;border-radius:50%;background:currentColor}
#messenger-panel .client-conversation{border-left:3px solid var(--stage-color);border-radius:8px;margin-bottom:6px;padding-left:8px;align-items:center;color:var(--text)}
#messenger-panel .client-conversation.selected{background:var(--blue-soft)}
#messenger-panel .client-conversation strong{color:var(--text)}
#messenger-panel .client-conversation small{color:var(--muted)}
.client-conversation .client-stage{margin-top:5px}
.client-conversation .initials{background:var(--blue-soft);color:var(--blue);width:32px;height:32px;flex-shrink:0}
.client-list-footer{display:grid;gap:6px;padding:12px 3px}.client-list-footer .button{font-size:11px;min-height:36px;justify-content:center}
.client-chat-header{padding:14px 16px 12px;border-bottom:1px solid var(--line);flex-shrink:0;background:var(--surface)}
.client-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.client-title>strong{font-size:14px;line-height:1.4;overflow-wrap:anywhere}.client-title .client-stage{flex-shrink:0;max-width:120px}
.client-context{display:grid;grid-template-columns:1fr 1fr;gap:9px 16px;margin:0}.client-context>div{min-width:0}.client-context>div:last-child{grid-column:1/-1;display:flex;align-items:center;gap:8px}
.client-context dt{font-size:10px;color:var(--muted);margin-bottom:3px}.client-context dd{margin:0;font-size:12px;font-weight:600;overflow-wrap:anywhere}.client-context .text-btn{padding:0;min-height:0;border:0;background:none;color:var(--blue);font-size:12px;white-space:normal;text-align:left}
.client-context .project-support-active{color:var(--green)}.client-context .project-support-paused{color:var(--amber)}.client-context .project-support-ended{color:var(--red)}
.client-header-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.client-header-actions .button{font-size:11px;padding:7px 9px;min-height:34px}.client-header-actions .icon{width:15px;height:15px}
.client-messages{flex:1;min-height:60px;overflow:auto;overscroll-behavior:contain;padding:16px;display:flex;flex-direction:column;gap:12px;background:var(--subtle)}
.client-message{align-self:flex-start;max-width:90%;min-width:90px;padding:10px 12px;border:1px solid var(--line);background:var(--surface);border-radius:14px 14px 14px 4px;overflow-wrap:anywhere}
.client-message.mine{align-self:flex-end;border-radius:14px 14px 4px 14px;background:var(--blue-soft)}.client-message p{margin:0;font-size:13px;line-height:1.55;white-space:pre-wrap}.client-message footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-top:6px;font-size:9px;color:var(--muted)}
.client-event{align-self:center;font-size:10px;color:var(--muted);text-align:center}.client-event time{display:block;font-size:9px;margin-top:3px}
.client-compose{padding:10px 14px 12px;flex-shrink:0;border-top:1px solid var(--line);background:var(--surface)}
.client-compose-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px;font-size:10px;color:var(--muted)}.client-compose-top .text-btn{font-size:11px;padding:3px 0;border:0;min-height:28px;background:transparent;color:var(--blue)}
.client-compose textarea{display:block;width:100%;min-height:70px;max-height:180px;resize:vertical;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--input-bg);color:var(--input-text);font:inherit;font-size:13px;line-height:1.5}
.client-compose textarea:focus{outline:2px solid var(--blue);outline-offset:1px}.client-send-row{display:flex;align-items:center;gap:12px;margin-top:8px}.client-send-row>small{flex:1;color:var(--muted);font-size:10px;line-height:1.45}.client-send-row>.button{flex-shrink:0;font-size:12px;padding:8px 10px;min-height:36px}.client-send-row .icon{width:16px;height:16px}
.client-key-hint{display:block;margin-top:7px;color:var(--muted);font-size:9px}
.client-chat-error{padding:10px 14px;font-size:12px;color:var(--red);background:var(--surface);border-bottom:1px solid var(--line);flex-shrink:0}.client-chat-error[hidden]{display:none}
.client-project-modal .field{margin-bottom:16px}.client-project-modal hr{border:0;border-top:1px solid var(--line);margin:20px 0}.client-project-modal .form-actions{flex-wrap:wrap}
@media(max-width:760px),(max-width:1024px) and (max-height:600px) and (pointer:coarse){
  #messenger-panel .client-conversation{padding-left:12px;margin-bottom:8px}.client-conversation .client-stage{font-size:12px}
  .client-chat-header{padding:10px max(14px,env(safe-area-inset-right)) 10px max(14px,env(safe-area-inset-left))}.client-title{margin-bottom:8px}.client-title>strong{font-size:14px}.client-context{gap:6px 12px}.client-context dt{font-size:11px}.client-context dd,.client-context .text-btn{font-size:13px}
  .client-context .text-btn{min-height:28px}.client-header-actions{margin-top:8px}.client-header-actions .button{min-height:44px;font-size:12px}
  .client-messages{padding:14px;min-height:40px}.client-message p{font-size:15px}.client-message footer{font-size:10px}
  .client-compose{padding:6px max(12px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.client-compose textarea{font-size:16px;min-height:60px;max-height:140px}.client-compose-top .text-btn{min-height:36px;font-size:12px}.client-send-row>.button{min-height:44px}
  .keyboard-open .client-title,.keyboard-open .client-context,.keyboard-open .client-key-hint{display:none}.keyboard-open .client-header-actions{margin-top:0}.keyboard-open .client-compose textarea{height:52px;min-height:44px;max-height:90px}.keyboard-open .client-compose-top,.keyboard-open .client-send-row>small{display:none}.keyboard-open .client-send-row{justify-content:flex-end}.keyboard-open .client-compose-top{margin-bottom:2px}
}
.client-message{border:1.5px solid #20a66a}.client-message.mine{border:1.5px solid #2479ef}
