.chat-file-picker { position:relative; display:flex; flex-shrink:0; }
.chat-file-picker > button { border:0; width:42px; height:42px; padding:0; border-radius:50%; display:grid; place-items:center; background:#f2f4f7; color:#858da3; cursor:pointer; }
.chat-file-picker > button:hover:not(:disabled) { background:#eaeaf5; color:#6866a2; }
.chat-file-picker > button:disabled { opacity:.45; cursor:default; }
.chat-file-feedback { position:absolute; bottom:54px; left:0; width:260px; max-width:65vw; padding:10px 12px; border:1px solid #e6e8ef; box-shadow:0 6px 24px #202a4812; background:#fff; border-radius:12px; font-size:11px; line-height:1.65; color:#7d849b; z-index:5; display:flex; gap:9px; align-items:flex-start; }
.chat-file-feedback.is-error { color:#a16d62; }
.chat-file-feedback > button { display:flex; padding:0; border:0; background:none; color:inherit; flex-shrink:0; }
.chat-file-drafts { display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:0 0 12px; list-style:none; max-height:152px; overflow:auto; }
.chat-file-draft { display:flex; align-items:center; gap:9px; min-width:0; max-width:min(300px,100%); box-sizing:border-box; background:#fff; border:1px solid #e6e8ef; border-radius:12px; padding:7px; color:#646d83; }
.chat-file-draft > img, .chat-file-icon { width:38px; height:38px; border-radius:7px; flex-shrink:0; object-fit:cover; }
.chat-file-icon { display:grid; place-items:center; background:#f2f3f8; color:#8b90aa; }
.chat-file-copy { display:flex; flex-direction:column; gap:2px; min-width:0; flex:1; }
.chat-file-copy strong { font-size:12px; line-height:1.5; font-weight:550; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.chat-file-copy small { font-size:10px; line-height:1.5; color:#9299ac; }
.chat-file-draft > button { border:0; padding:0; width:28px; height:28px; flex-shrink:0; display:grid; place-items:center; border-radius:7px; background:none; color:#989eb0; cursor:pointer; }
.chat-file-draft > button:disabled { opacity:.4; }
.chat-file-messages { width:100%; min-width:0; display:flex; flex-direction:column; gap:9px; }
.chat-file-message { display:flex; flex-direction:column; gap:7px; width:280px; max-width:100%; min-width:0; color:#5d6180!important; text-decoration:none!important; border-radius:9px; }
.chat-file-photo { display:block; width:100%; height:auto; max-height:280px; object-fit:contain; border-radius:12px; background:#ffffff66; }
.chat-file-label { display:flex; align-items:center; gap:10px; min-width:0; box-sizing:border-box; padding:10px; border:1px solid #8584ad24; border-radius:12px; background:#ffffffb8; }
.chat-file-label .chat-file-icon { background:#fff; }
.chat-file-label .chat-file-copy small { color:#767d91; }
.chat-file-label > svg { flex-shrink:0; box-sizing:content-box; padding:7px; border-radius:50%; background:#8277ed12; color:#7670ab; }
.chat-file-message:hover .chat-file-label { background:#fff; border-color:#8584ad40; }
.chat-file-message:hover .chat-file-copy strong { color:#4e63b9; }
.chat-file-message:focus-visible, .chat-file-picker > button:focus-visible, .chat-file-draft > button:focus-visible, .chat-file-feedback > button:focus-visible { outline:2px solid #8277ed; outline-offset:3px; }
.cc-bubble:has(> .chat-file-messages), .ac-bubble:has(> .chat-file-messages), .cc-bubble:has(> .chat-file-drafts), .ac-bubble:has(> .chat-file-drafts) { display:grid; grid-template-columns:minmax(0,1fr); width:max-content; }
.ac-bubble:has(> .chat-file-messages) > .ac-inline-time, .cc-bubble:has(> .chat-file-messages) > .cc-message-meta { justify-self:end; margin-left:auto; }
.cc-bubble .chat-file-drafts, .ac-bubble .chat-file-drafts { width:100%; margin:0; }
.cc-bubble .chat-file-draft, .ac-bubble .chat-file-draft { background:#ffffff66; border:0; }
.cc-widget .chat-file-picker > button { width:34px; height:34px; }
.cc-widget .chat-file-draft { max-width:100%; }
.cc-widget .chat-file-drafts { max-height:105px; }
.cc-widget .chat-file-photo { max-height:190px; }
.cc-attempt-status, .ac-send-status { flex-wrap:wrap; }
@media(max-width:760px) {
  .chat-file-picker > button, .chat-file-draft > button, .chat-file-feedback > button { width:44px; height:44px; min-width:44px; min-height:44px; }
  .chat-file-feedback { max-width:min(300px,calc(100vw - 80px)); width:max-content; box-sizing:border-box; align-items:center; }
  .chat-file-draft { max-width:100%; }
  .chat-file-message { min-height:44px; }
}
