:root{
  --bg:#f4f7fb; --panel:#ffffff; --panel-soft:#f8fafc; --line:#e6ebf2; --line-strong:#d8e0ea;
  --text:#1e293b; --muted:#778397; --blue:#315f9d; --blue-2:#244d86; --blue-soft:#eef4fb;
  --green:#2f8a6b; --green-soft:#eaf7f1; --amber:#9b741f; --amber-soft:#fff7df; --red:#b85454; --red-soft:#fff0f0;
  --shadow:0 12px 38px rgba(27,45,75,.10); --radius:14px;
}
*{box-sizing:border-box} html,body{margin:0;height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}
button,input,textarea,select{font:inherit} button{cursor:pointer} .hidden{display:none!important}.muted{color:var(--muted)} code{font-size:.9em;background:#eef2f7;padding:2px 5px;border-radius:5px}
.login-screen{height:100%;display:grid;place-items:center;background:radial-gradient(circle at 30% 15%,#edf4ff 0,#f5f8fc 40%,#eff3f8 100%)}
.login-card{width:min(420px,92vw);background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:32px;display:grid;gap:18px}.login-card h1{margin:0;font-size:26px}.login-card p{margin:4px 0 0}.login-note{font-size:12px;line-height:1.5}.brand-mark{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,#2b548c,#4c79b5);color:white;display:grid;place-items:center;font-weight:800;letter-spacing:.5px;box-shadow:0 8px 20px rgba(49,95,157,.22)}.brand-mark.small{width:38px;height:38px;border-radius:11px;font-size:13px}.stack-gap{display:grid;gap:14px}.stack-gap label,.modal-card label{display:grid;gap:7px;font-size:13px;font-weight:650}.stack-gap input,.modal-card input,.modal-card select,.modal-card textarea{width:100%;border:1px solid var(--line-strong);border-radius:10px;padding:11px 12px;background:white;outline:none}.stack-gap input:focus,.modal-card input:focus,.modal-card textarea:focus,.modal-card select:focus{border-color:#88a7ce;box-shadow:0 0 0 3px rgba(49,95,157,.08)}
.btn{border:1px solid transparent;border-radius:9px;padding:9px 13px;font-weight:650;background:white;color:var(--text)}.btn.primary{background:var(--blue);color:#fff}.btn.primary:hover{background:var(--blue-2)}.btn.soft{background:var(--blue-soft);color:var(--blue);border-color:#d8e6f6}.btn.ghost{border-color:var(--line);background:#fff}.btn.wide{width:100%}.danger-text{color:var(--red)!important}
.app-shell{height:100%;display:grid;grid-template-rows:58px 1fr;overflow:hidden}.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:#fff;border-bottom:1px solid var(--line);padding:0 16px;z-index:20}.brand-area{display:flex;align-items:center;gap:10px}.brand-area>div:last-child{display:grid}.brand-area strong{font-size:14px}.brand-area span{font-size:11px;color:var(--muted)}.mode-switch{background:var(--panel-soft);border:1px solid var(--line);padding:3px;border-radius:10px;display:flex;gap:2px}.mode-btn{border:0;background:transparent;color:var(--muted);padding:7px 14px;border-radius:7px;font-weight:650}.mode-btn.active{background:#fff;color:var(--text);box-shadow:0 1px 4px rgba(0,0,0,.06)}.top-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px}.connection-pill{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:12px;color:var(--muted)}.status-dot{width:7px;height:7px;border-radius:50%;background:#a7b1c1}.connection-pill.online .status-dot{background:#45a67e}.connection-pill.demo .status-dot{background:#5d84b8}.connection-pill.demo{background:#f4f8fd;color:#58708f}.connection-pill.error .status-dot{background:#d05f5f}.icon-text-btn,.user-chip{border:1px solid var(--line);background:white;border-radius:9px;padding:7px 10px;color:#4e596a;display:flex;align-items:center;gap:6px}.user-chip{padding:5px 8px}.user-menu-wrap{position:relative}.dropdown{position:absolute;right:0;top:44px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:5px;min-width:130px;z-index:80}.dropdown button{width:100%;border:0;background:#fff;padding:9px;text-align:left;border-radius:7px}.dropdown button:hover{background:var(--panel-soft)}
.avatar{width:40px;height:40px;border-radius:50%;background:#e8eef7;color:#315f9d;display:grid;place-items:center;font-weight:800;font-size:12px;flex:none}.avatar.large{width:64px;height:64px;font-size:17px}.avatar.tiny{width:28px;height:28px;font-size:9px}.tiny-badge,.tab-badge{background:#d95d5d;color:white;border-radius:999px;min-width:18px;height:18px;padding:0 5px;display:inline-grid;place-items:center;font-size:10px}
.workspace{display:grid;grid-template-columns:330px minmax(480px,1fr) 300px;min-height:0}.left-panel,.right-panel,.conversation-panel{min-height:0;background:#fff}.left-panel{border-right:1px solid var(--line);display:grid;grid-template-rows:auto auto auto auto 1fr}.right-panel{border-left:1px solid var(--line);overflow:auto;background:#fbfcfe}.left-tabs{display:grid;grid-template-columns:1fr 1fr 1fr;border-bottom:1px solid var(--line);padding:8px 10px 0}.left-tab{border:0;background:transparent;padding:11px 4px;color:var(--muted);font-weight:650;border-bottom:2px solid transparent}.left-tab.active{color:var(--blue);border-bottom-color:var(--blue)}.search-wrap{margin:12px 12px 8px;border:1px solid var(--line);background:var(--panel-soft);border-radius:10px;padding:9px 10px;display:flex;gap:8px;align-items:center}.search-wrap input{border:0;background:transparent;outline:0;width:100%;font-size:13px}.scope-row{display:flex;gap:6px;padding:0 12px 10px}.scope{border:1px solid var(--line);background:white;border-radius:999px;padding:6px 10px;font-size:11px;color:var(--muted)}.scope.active{background:var(--blue-soft);color:var(--blue);border-color:#d8e6f6}.scope.filter{margin-left:auto}.filter-bar{padding:0 12px 10px;display:grid;grid-template-columns:1fr 1fr;gap:6px}.filter-bar select{border:1px solid var(--line);border-radius:8px;padding:7px;font-size:11px;background:white}.conversation-list{overflow:auto;border-top:1px solid #f0f3f7}.conversation-item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;padding:12px;border-bottom:1px solid #eef2f6;cursor:pointer;transition:.15s}.conversation-item:hover{background:#fafcff}.conversation-item.active{background:#f1f6fc}.conversation-item .middle{min-width:0}.conversation-item .topline{display:flex;align-items:center;gap:6px}.conversation-item .name{font-weight:700;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-item .preview{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}.conversation-item .time{font-size:10px;color:#98a2b1}.unread{background:var(--blue);color:#fff;border-radius:999px;min-width:20px;height:20px;display:grid;place-items:center;font-size:10px;margin-top:8px}.tag-wrap{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.tag{border-radius:999px;padding:3px 7px;font-size:9px;font-weight:700;background:#edf2f7;color:#4a5568}.mini-status{font-size:9px;padding:3px 6px;border-radius:999px;background:#f1f4f8;color:#6c7888}
.conversation-panel{display:flex;min-width:0}.empty-state{margin:auto;text-align:center;color:var(--muted);max-width:300px}.empty-icon{width:58px;height:58px;border-radius:18px;margin:0 auto 14px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;font-size:28px}.empty-state h2{color:var(--text);font-size:18px;margin-bottom:6px}.empty-state p{font-size:13px;line-height:1.5}.conversation-content{width:100%;display:grid;grid-template-rows:auto 1fr auto auto;min-height:0}.conversation-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line);gap:12px}.contact-head{display:flex;gap:10px;align-items:center;min-width:0}.name-line{display:flex;gap:7px;align-items:baseline}.name-line strong{font-size:14px}.name-line span{font-size:11px}.meta-line{font-size:10px;color:var(--muted);display:flex;gap:5px;margin-top:3px}.header-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap;justify-content:flex-end}.header-actions .btn{padding:7px 9px;font-size:11px}.icon-btn{border:1px solid var(--line);background:#fff;border-radius:8px;width:32px;height:32px;color:#667386}.status-chip{font-size:10px;font-weight:700;border-radius:999px;padding:5px 8px;background:#eef2f7;color:#5d6978}.status-chip.queue{background:#fff4dc;color:#96711f}.status-chip.active{background:#eaf4ff;color:#315f9d}.status-chip.wait{background:#f0ecff;color:#7554ad}.status-chip.done{background:#e9f7f0;color:#2c8062}
.timeline{overflow:auto;padding:24px max(20px,5vw);background:#f6f8fb;display:flex;flex-direction:column;gap:10px}.day-separator{align-self:center;font-size:10px;color:#8a95a5;background:white;border:1px solid var(--line);border-radius:999px;padding:4px 8px}.message-row{display:flex;gap:6px;max-width:78%;align-items:center}.message-row.inbound{align-self:flex-start}.message-row.outbound{align-self:flex-end;flex-direction:row-reverse}.bubble{padding:9px 11px;border-radius:13px;border:1px solid var(--line);background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.02);min-width:90px}.message-reply-btn{opacity:.55;border:1px solid var(--line);background:#fff;color:#637286;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;transition:.15s;flex:none}.message-row:hover .message-reply-btn,.message-reply-btn:focus{opacity:1}.message-reply-btn:hover{background:var(--blue-soft);color:var(--blue);border-color:#cbdbee}.outbound .bubble{background:#eaf2fc;border-color:#d8e6f6}.bubble .author{font-size:9px;font-weight:800;color:var(--blue);margin-bottom:4px}.bubble .body{font-size:13px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.bubble .meta{display:flex;justify-content:flex-end;gap:6px;font-size:9px;color:#8d98a7;margin-top:5px}.internal-note{align-self:center;max-width:76%;background:#fff8db;border:1px solid #f1df96;border-radius:12px;padding:9px 12px;color:#765e18;font-size:12px}.event-line{align-self:center;font-size:10px;color:#8591a1;background:rgba(255,255,255,.8);border:1px dashed #d8dfe8;border-radius:999px;padding:5px 9px}.attachment-card{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.6);border:1px solid rgba(0,0,0,.06);padding:8px;border-radius:9px;margin-top:6px}.attachment-card a{font-size:11px;color:var(--blue);text-decoration:none}.reply-mini{font-size:10px;color:#6f7d8d;border-left:3px solid #8ca7ca;padding-left:7px;margin-bottom:6px}.reply-bar{background:#f4f7fb;border-top:1px solid var(--line);padding:6px 12px;font-size:11px;display:flex;justify-content:space-between;color:#607084}.reply-bar button{border:0;background:transparent}.composer-mode{background:#fff7d6;border-top:1px solid #f0df9e;padding:7px 14px;font-size:11px;color:#725c1f}.composer{display:grid;grid-template-columns:auto auto auto auto minmax(0,1fr) auto auto auto auto;gap:5px;padding:9px;border-top:1px solid var(--line);background:#fff;align-items:end}.composer-icon{border:0;background:transparent;width:34px;height:34px;border-radius:8px;color:#617083}.composer-icon:hover{background:var(--panel-soft)}.composer-icon.active{background:#fff3c8;color:#876816}.composer textarea,.team-composer textarea{resize:none;max-height:120px;border:1px solid var(--line);border-radius:10px;min-height:38px;padding:9px 11px;outline:none;line-height:18px}.composer textarea:focus,.team-composer textarea:focus{border-color:#a0b8d6}.send-btn{border:0;border-radius:10px;width:38px;height:38px;background:var(--blue);color:white;font-size:16px}.quick-wrap,.emoji-wrap{position:relative}.quick-menu{position:absolute;bottom:44px;left:0;width:330px;max-height:280px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:6px;z-index:60}.emoji-picker{position:absolute;bottom:44px;left:0;width:360px;height:330px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);z-index:75;overflow:hidden;display:grid;grid-template-rows:auto 1fr}.emoji-tabs{display:flex;gap:2px;padding:7px;border-bottom:1px solid var(--line);overflow-x:auto;background:#fbfcfe}.emoji-tab{border:0;background:transparent;min-width:32px;height:32px;border-radius:8px;font-size:17px}.emoji-tab:hover,.emoji-tab.active{background:var(--blue-soft)}.emoji-grid{padding:9px;overflow:auto;display:grid;grid-template-columns:repeat(8,1fr);gap:3px;align-content:start}.emoji-option{border:0;background:transparent;border-radius:7px;height:35px;font-size:22px;line-height:1}.emoji-option:hover{background:#f0f4f9;transform:scale(1.08)}.quick-item{padding:9px;border-radius:8px;cursor:pointer}.quick-item:hover{background:var(--panel-soft)}.quick-item strong{font-size:11px;color:var(--blue)}.quick-item div{font-size:11px;margin-top:3px;color:#617083}
.right-empty{padding:30px 20px;color:var(--muted);font-size:12px;text-align:center}.contact-profile{text-align:center;padding:22px 16px 16px;border-bottom:1px solid var(--line)}.contact-profile .avatar{margin:auto}.contact-profile h3{margin:9px 0 2px;font-size:15px}.detail-section{padding:14px 15px;border-bottom:1px solid var(--line)}.section-title{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#8390a1;margin-bottom:10px}.text-btn{border:0;background:transparent;color:var(--blue);font-size:10px;text-transform:none}.detail-row{display:flex;justify-content:space-between;gap:10px;font-size:11px;padding:5px 0}.detail-row span{color:var(--muted)}.detail-row strong{text-align:right}.field-list{display:grid;gap:8px}.field-line{display:grid;gap:4px}.field-line label{font-size:10px;color:var(--muted)}.field-line input{border:1px solid var(--line);border-radius:8px;padding:8px;font-size:11px;background:#fff}.notes-box{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px;min-height:82px;resize:vertical;font-size:11px}.reminder-list{display:grid;gap:7px}.reminder-item{border:1px solid var(--line);border-radius:8px;padding:8px;background:white}.reminder-item strong{font-size:10px}.reminder-item p{font-size:11px;margin:4px 0}.reminder-item button{border:0;background:transparent;color:var(--blue);font-size:10px;padding:0}
.team-workspace{display:grid;grid-template-columns:280px minmax(420px,1fr) 250px;min-height:0}.team-left,.team-center,.team-right{background:#fff;min-height:0}.team-left{border-right:1px solid var(--line);display:grid;grid-template-rows:auto 1fr}.team-left-head{padding:18px;border-bottom:1px solid var(--line)}.team-left-head h3,.team-right h3{margin:0 0 3px;font-size:15px}.room-list{overflow:auto}.room-item{padding:13px 15px;border-bottom:1px solid #eef2f6;cursor:pointer}.room-item.active{background:#f1f6fc}.room-item .room-top{display:flex;justify-content:space-between}.room-item strong{font-size:12px}.room-item p{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:4px 0 0}.team-center{display:grid;grid-template-rows:auto 1fr auto}.team-header{padding:14px 16px;border-bottom:1px solid var(--line)}.team-header strong{font-size:14px}.team-header .muted{font-size:10px;margin-top:3px}.team-timeline{overflow:auto;padding:20px max(18px,6vw);background:#f6f8fb;display:flex;flex-direction:column;gap:10px}.team-message{display:flex;gap:8px;align-items:flex-start}.team-message.mine{flex-direction:row-reverse}.team-message .bubble{max-width:72%}.team-message.mine .bubble{background:#eaf2fc;border-color:#d8e6f6}.team-composer{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px;border-top:1px solid var(--line)}.team-right{border-left:1px solid var(--line);padding:16px;overflow:auto}.member-list{display:grid;gap:9px;margin:15px 0}.member{display:flex;gap:8px;align-items:center;font-size:11px}.info-card{border:1px solid var(--line);background:#f8fafc;border-radius:10px;padding:12px;margin-top:18px}.info-card strong{font-size:11px}.info-card p{font-size:10px;line-height:1.5;color:var(--muted);margin-bottom:0}
.modal{border:0;padding:0;background:transparent}.modal::backdrop{background:rgba(31,41,55,.32);backdrop-filter:blur(2px)}.modal-card{width:min(460px,92vw);background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:18px;display:grid;gap:14px}.modal-card.wide{width:min(760px,94vw)}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.modal-head h3{margin:0;font-size:16px}.modal-head p{font-size:11px;margin:3px 0 0}.modal-actions{display:flex;justify-content:flex-end;gap:7px}.tag-options{display:flex;flex-wrap:wrap;gap:8px}.tag-option{border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:11px;background:#fff}.tag-option.selected{box-shadow:0 0 0 2px rgba(49,95,157,.15);border-color:#8cadd5}.connection-state-card{display:flex;align-items:center;gap:12px;background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:13px}.status-orb{width:14px;height:14px;background:#a7b1c1;border-radius:50%;box-shadow:0 0 0 5px #eef2f6}.connection-state-card.online .status-orb{background:#45a67e;box-shadow:0 0 0 5px #e8f5ef}.connection-state-card strong{font-size:13px}.connection-state-card p{font-size:10px;margin:3px 0 0}.qr-area{text-align:center;border:1px dashed var(--line-strong);padding:14px;border-radius:12px}.qr-area img{max-width:240px;max-height:240px;background:white}.qr-area p{font-size:10px;color:var(--muted)}.connection-actions{display:flex;gap:8px}.mock-tools{display:grid;gap:8px}.mock-tools h4{margin:0}.mock-tools p{font-size:10px;margin:0}.mock-tools textarea{min-height:70px}.scheduled-list{display:grid;gap:8px;max-height:60vh;overflow:auto}.scheduled-item{display:grid;grid-template-columns:1fr auto;gap:10px;border:1px solid var(--line);border-radius:10px;padding:11px}.scheduled-item strong{font-size:11px}.scheduled-item p{font-size:11px;margin:4px 0;color:#576578}.scheduled-item .meta{font-size:9px;color:var(--muted)}
#toast{position:fixed;right:18px;bottom:18px;z-index:200;display:grid;gap:8px}.toast-item{background:#18212e;color:white;padding:10px 13px;border-radius:10px;box-shadow:var(--shadow);font-size:11px;max-width:340px;animation:toastin .2s ease}.toast-item.error{background:#a94747}@keyframes toastin{from{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}
@media(max-width:1100px){.workspace{grid-template-columns:300px 1fr}.right-panel{position:absolute;right:0;top:58px;bottom:0;width:310px;z-index:15;box-shadow:var(--shadow)}.right-panel.collapsed{display:none}.top-actions .icon-text-btn span{display:none}.team-workspace{grid-template-columns:260px 1fr}.team-right{display:none}}
@media(max-width:760px){.topbar{grid-template-columns:1fr auto}.mode-switch{display:none}.workspace{grid-template-columns:1fr}.left-panel{position:absolute;inset:58px 0 0 0;z-index:12}.conversation-panel{display:none}.right-panel{display:none}.top-actions .connection-pill{display:none}}

.real-connection-help{background:#f7faff;border:1px solid #dce7f5;border-radius:12px;padding:12px 14px;font-size:12px;color:#40516a}.real-connection-help strong{display:block;margin-bottom:7px}.real-connection-help ol{margin:0 0 7px 18px;padding:0;display:grid;gap:5px}.real-connection-help p{margin:0}.connection-actions .wide{flex:1}.text-btn{border:0;background:transparent;color:#637a99;font-size:11px;padding:2px 0;text-align:left}.text-btn:hover{text-decoration:underline}.qr-area.connecting{background:#fbfdff}.qr-area.success{border-color:#a9d9c3;background:#f4fbf7}

/* =========================================================
   VAA Atendimento v0.3.0 — UI aditiva
   ========================================================= */
.app-shell{position:relative}
.v030-view-label{min-width:170px;justify-content:center;background:#f8fafc;color:var(--text);font-weight:750;font-size:13px;padding:8px 14px}
.app-nav{position:absolute;left:0;top:58px;bottom:0;width:64px;background:#fff;border-right:1px solid var(--line);z-index:18;display:flex;flex-direction:column;align-items:center;gap:7px;padding:12px 7px}
.app-nav-btn{width:50px;min-height:48px;border:0;background:transparent;color:#718096;border-radius:11px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;position:relative}
.app-nav-btn:hover{background:#f5f8fc;color:var(--blue)}
.app-nav-btn.active{background:var(--blue-soft);color:var(--blue)}
.nav-icon{font-size:18px;line-height:1}.nav-label{font-size:8px;font-weight:700;max-width:48px;overflow:hidden;text-overflow:ellipsis}
.app-view{margin-left:64px}
.connection-pill{cursor:pointer}

.workspace{--left-width:330px;grid-template-columns:var(--left-width) minmax(420px,1fr) 300px;position:relative}
.left-panel{position:relative;grid-template-rows:auto auto auto auto auto 1fr}
.panel-density-tools{height:28px;padding:5px 10px 0;display:flex;justify-content:flex-end;gap:3px}
.mini-icon-btn,.mini-action-btn{border:1px solid transparent;background:transparent;color:#718096;border-radius:7px;min-width:27px;height:25px;display:grid;place-items:center;font-size:12px}
.mini-icon-btn:hover,.mini-icon-btn.active,.mini-action-btn:hover{background:var(--blue-soft);color:var(--blue);border-color:#dce8f6}
.left-action-row{display:flex;align-items:center;padding-right:10px}.left-action-row .search-wrap{flex:1;min-width:0;margin-right:5px}.mini-action-btn{border-color:var(--line);background:#fff;width:32px;height:32px}
.left-resize-handle{position:absolute;right:-3px;top:0;bottom:0;width:6px;cursor:col-resize;z-index:10}
.left-resize-handle:hover{background:rgba(49,95,157,.14)}
.filter-bar{grid-template-columns:1fr 1fr 1fr}
.connection-tag{border-radius:999px;padding:3px 7px;font-size:9px;font-weight:700;background:#edf4fb;color:#315f9d}
.contact-chat-btn{border:1px solid var(--line);width:31px;height:31px;background:#fff;border-radius:8px;color:var(--blue)}
.contact-chat-btn:hover{background:var(--blue-soft)}

.workspace.left-collapsed{--left-width:54px}
.workspace.left-collapsed .left-tabs,.workspace.left-collapsed .left-action-row,.workspace.left-collapsed .scope-row,.workspace.left-collapsed .filter-bar,.workspace.left-collapsed .conversation-list,.workspace.left-collapsed .left-resize-handle{display:none!important}
.workspace.left-collapsed .panel-density-tools{height:100%;padding:10px 0;align-items:flex-start;justify-content:center}.workspace.left-collapsed #leftCollapseBtn{display:grid;transform:rotate(180deg);width:36px;height:36px;border:1px solid var(--line)}

.right-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.right-action-btn{border:1px solid var(--line);background:#fff;color:var(--blue);border-radius:9px;padding:8px;font-size:10px;font-weight:700}.right-action-btn:hover{background:var(--blue-soft)}
.title-actions{display:flex;gap:8px}.mini-card-list{display:grid;gap:7px}.mini-info-card{border:1px solid var(--line);border-radius:9px;background:#fff;padding:8px;text-align:left;display:grid;gap:3px;color:var(--text);width:100%}.mini-info-card:hover{border-color:#c9d9ec;background:#fbfdff}.mini-info-card.static{cursor:default}.mini-info-card strong{font-size:10px}.mini-info-card span{font-size:10px;color:var(--muted);line-height:1.35}.mini-info-card small{font-size:9px;color:var(--blue)}.mini-actions{display:flex;gap:8px;margin-top:3px}.mini-actions button{border:0;background:transparent;color:var(--blue);font-size:9px;padding:0}.mini-actions button:last-child{color:var(--red)}

/* Módulos CRM / Agenda / Configurações */
.module-view{min-height:0;background:var(--bg);overflow:auto;padding:24px 26px 30px}
.module-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.module-header h2{font-size:24px;margin:0;color:#274f87}.module-header p{margin:5px 0 0;color:var(--muted);font-size:12px}.module-actions{display:flex;gap:8px}
.module-toolbar,.agenda-toolbar{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}.toolbar-spacer{flex:1}.inline-field{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted)}.inline-field select,.agenda-toolbar select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 9px;color:var(--text);font-size:11px}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;margin-bottom:14px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;display:grid;gap:5px}.metric-card span{font-size:10px;color:var(--muted);text-transform:uppercase;font-weight:750;letter-spacing:.03em}.metric-card strong{font-size:22px;color:#244d86}.metric-card small{font-size:10px;color:var(--muted)}
.kanban{display:flex;align-items:flex-start;gap:12px;overflow-x:auto;padding:2px 2px 16px;min-height:460px}.kanban-column{min-width:280px;width:300px;background:#f5f7fa;border:1px solid var(--line);border-radius:13px;overflow:hidden;transition:.15s}.kanban-column.drag-over{border-color:#7fa4d2;background:#edf4fc}.kanban-column>header{background:#fff;border-bottom:1px solid var(--line);padding:11px 12px;display:flex;justify-content:space-between;align-items:center}.kanban-column>header>div{display:flex;gap:7px;align-items:center}.kanban-column>header strong{font-size:12px}.kanban-column>header small{font-size:10px;color:var(--blue)}.stage-count{background:#eef2f7;border-radius:999px;min-width:20px;height:20px;display:grid;place-items:center;font-size:9px}.kanban-add{width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;color:var(--blue);padding:10px;font-size:11px;font-weight:650}.kanban-add:hover{background:#fbfdff}.kanban-cards{padding:9px;display:grid;gap:8px}.kanban-empty{font-size:10px;color:#9aa5b4;text-align:center;padding:20px 5px}.opportunity-card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:10px;cursor:pointer;display:grid;gap:9px}.opportunity-card:hover{border-color:#c9d8eb;box-shadow:0 3px 12px rgba(36,77,134,.06)}.opp-top{display:flex;align-items:center;gap:8px}.opp-top>div:last-child{min-width:0;display:grid}.opp-top strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.opp-top span{font-size:10px;color:#566579;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.opp-meta,.opp-footer{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:9px}.opp-meta>span:first-child{font-weight:750;color:var(--blue)}.next-action{background:#f0f5fb;color:#56769d;border-radius:999px;padding:3px 6px}.next-action.overdue{background:#fff0f0;color:#b85454}.opp-footer{border-top:1px solid #f0f3f7;padding-top:7px;color:var(--muted)}.opp-footer button{border:1px solid var(--line);background:#fff;color:var(--blue);border-radius:6px;padding:3px 7px;margin-left:3px}

.segmented{display:flex;border:1px solid var(--line);border-radius:9px;padding:2px;background:#f8fafc}.segmented button{border:0;background:transparent;padding:7px 12px;border-radius:7px;color:var(--muted);font-size:11px}.segmented button.active{background:#fff;color:var(--blue);box-shadow:0 1px 4px rgba(0,0,0,.05)}.agenda-nav{display:flex;align-items:center;gap:6px}.agenda-nav strong{font-size:12px;min-width:160px;text-transform:capitalize}.agenda-board{display:grid;gap:12px}.agenda-board.week{grid-template-columns:repeat(7,minmax(150px,1fr));overflow-x:auto}.agenda-board.day{grid-template-columns:minmax(300px,760px)}.agenda-day{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.agenda-day>header{padding:10px 12px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;text-transform:capitalize}.agenda-day>header strong{font-size:11px}.agenda-day>header span{font-size:9px;background:#eef2f7;border-radius:999px;padding:2px 6px}.agenda-day>div{padding:8px;display:grid;gap:7px}.activity-card{width:100%;border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px;text-align:left;display:grid;grid-template-columns:44px 1fr;gap:8px}.activity-card:hover{background:#fbfdff;border-color:#cad9eb}.activity-card time{font-size:10px;color:var(--blue);font-weight:700}.activity-card div{display:grid;gap:2px}.activity-card strong{font-size:10px}.activity-card span,.activity-card small{font-size:9px;color:var(--muted)}.activity-card.done{opacity:.55}.agenda-empty{font-size:10px;color:var(--muted);padding:16px;text-align:center}.agenda-board.month{display:block}.month-head{display:grid;grid-template-columns:repeat(7,1fr);background:#fff;border:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0}.month-head span{padding:8px;text-align:center;font-size:10px;color:var(--muted);font-weight:700}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);background:#fff;border-left:1px solid var(--line);border-top:1px solid var(--line)}.month-cell{min-height:115px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px;display:flex;flex-direction:column;gap:4px}.month-cell.outside{background:#fafbfc;color:#aab2bd}.month-cell header{font-size:10px;font-weight:700}.month-activity{border:0;border-radius:5px;background:#eff5fc;color:#365f93;font-size:8px;text-align:left;padding:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-activity span{font-weight:800;margin-right:4px}.month-activity.done{text-decoration:line-through;opacity:.55}.month-cell small{font-size:8px;color:var(--muted)}

.admin-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:14px;overflow-x:auto}.admin-tab{border:0;background:transparent;padding:10px 13px;color:var(--muted);font-size:11px;font-weight:700;border-bottom:2px solid transparent}.admin-tab.active{color:var(--blue);border-bottom-color:var(--blue)}.admin-content{background:#fff;border:1px solid var(--line);border-radius:13px;padding:16px;min-height:320px}.admin-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:14px}.admin-section-head h3{margin:0;font-size:15px}.admin-section-head p{font-size:10px;color:var(--muted);margin:4px 0 0}.settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}.settings-card{border:1px solid var(--line);border-radius:11px;padding:12px}.settings-card-head{display:flex;justify-content:space-between;gap:10px}.settings-card-head>div{display:grid}.settings-card-head strong{font-size:12px}.settings-card-head span{font-size:9px;color:var(--muted)}.live-badge{font-size:9px;border-radius:999px;padding:4px 7px;height:max-content}.live-badge.online{background:var(--green-soft);color:var(--green)}.live-badge.offline{background:#f1f3f6;color:#758092}.settings-card dl{margin:12px 0;display:grid;gap:6px}.settings-card dl>div{display:flex;justify-content:space-between;font-size:10px}.settings-card dt{color:var(--muted)}.settings-card dd{margin:0;font-weight:650}.card-actions{display:flex;gap:5px;flex-wrap:wrap}.settings-list{display:grid;gap:7px}.settings-list-row{border:1px solid var(--line);border-radius:10px;padding:9px 11px;display:flex;align-items:center;gap:9px}.settings-list-row .grow{flex:1;display:grid}.settings-list-row strong{font-size:11px}.settings-list-row span{font-size:9px;color:var(--muted)}

.form-grid{display:grid;gap:11px}.form-grid.two{grid-template-columns:1fr 1fr}.form-grid .span-two{grid-column:1/-1}.modal-card label,.stack-gap label{display:grid;gap:5px;font-size:11px;font-weight:650;color:#3f4d5e}.modal-card input,.modal-card select,.modal-card textarea,.stack-gap input,.stack-gap select,.stack-gap textarea{border:1px solid var(--line-strong);border-radius:9px;padding:9px 10px;background:#fff;color:var(--text);outline:none}.modal-card input:focus,.modal-card select:focus,.modal-card textarea:focus{border-color:#93b0d4;box-shadow:0 0 0 3px rgba(49,95,157,.08)}.modal-actions.split{justify-content:space-between}.actions-right{display:flex;gap:7px}.switch-line{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px!important;font-weight:500!important}.switch-line input{width:auto}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:6px}.check-card{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;border:1px solid var(--line);border-radius:8px;padding:7px!important;font-weight:500!important}.check-card input{width:auto}.manager-section{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}.manager-section:first-child{border-top:0;padding-top:0;margin-top:0}.manager-section h4,.manager-head h4{font-size:12px;margin:0 0 8px}.manager-head{display:flex;justify-content:space-between}.manager-row{display:grid;grid-template-columns:2fr 1fr 70px auto auto;gap:6px;align-items:center;margin-bottom:6px}.manager-row.simple{grid-template-columns:1fr auto auto}.manager-row input,.manager-row select{min-width:0}.empty-module{background:#fff;border:1px dashed var(--line-strong);border-radius:12px;padding:32px;text-align:center;color:var(--muted)}

@media(max-width:1250px){.metric-grid{grid-template-columns:repeat(2,1fr)}.agenda-board.week{grid-template-columns:repeat(7,180px)}.workspace{grid-template-columns:var(--left-width) minmax(380px,1fr)}.right-panel{position:absolute;right:0;top:0;bottom:0;width:310px;z-index:15;box-shadow:var(--shadow)}}
@media(max-width:900px){.app-nav{width:54px}.app-view{margin-left:54px}.nav-label{display:none}.app-nav-btn{width:42px}.module-view{padding:16px}.metric-grid{grid-template-columns:1fr 1fr}.form-grid.two{grid-template-columns:1fr}.form-grid .span-two{grid-column:auto}.check-grid{grid-template-columns:1fr}.manager-row{grid-template-columns:1fr}.month-cell{min-height:90px}.top-actions .icon-text-btn span{display:none}}

/* v0.3.0 — mídia recebida, fotos reais e observações expansíveis */
.avatar.has-photo,.avatar:has(.avatar-img){overflow:hidden;background:#e8eef7}
.avatar-img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}
.message-media{margin-top:6px;max-width:min(360px,70vw)}
.message-media img{display:block;max-width:100%;max-height:360px;border-radius:10px;border:1px solid var(--line);object-fit:contain;background:#f7f9fc}
.message-media video{display:block;width:min(360px,100%);max-height:360px;border-radius:10px;background:#111}
.message-media audio{display:block;width:min(330px,100%);height:38px}
.media-download{display:inline-block;margin-top:5px;font-size:10px;color:var(--blue);text-decoration:none}
.notes-box.expanded{min-height:260px;max-height:440px}

/* v0.3.1 — refinamentos operacionais */
.header-connection-select{max-width:150px;height:32px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--blue);font-size:10px;font-weight:700;padding:0 26px 0 9px;outline:none}.header-connection-select:focus{border-color:#8baad0;box-shadow:0 0 0 3px rgba(49,95,157,.08)}.header-connection-select:disabled{opacity:.65;cursor:default}
.custom-audio{display:grid;grid-template-columns:34px auto minmax(90px,1fr) 42px;align-items:center;gap:7px;width:min(360px,72vw);padding:7px 8px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}.custom-audio audio{display:none}.audio-play,.audio-speed{border:1px solid var(--line);background:#fff;color:var(--blue);border-radius:8px;height:30px;font-size:10px;font-weight:750;cursor:pointer}.audio-play{width:34px}.audio-speed{width:42px}.audio-time{font-size:9px;color:var(--muted);white-space:nowrap}.audio-progress{width:100%;accent-color:var(--blue);cursor:pointer}
.business-hours-list{display:grid;gap:7px}.business-hour-row{display:grid;grid-template-columns:92px 110px 100px 26px 100px 100px 26px 100px;gap:7px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff}.business-hour-row>strong{font-size:11px}.business-hour-row input[type=time]{min-width:0;border:1px solid var(--line-strong);border-radius:8px;padding:7px 8px;background:#fff}.business-hour-row>span{font-size:9px;color:var(--muted);text-align:center}.settings-list-row small{font-size:9px;color:var(--muted);margin-top:3px;line-height:1.35}.quick-item.empty{color:var(--muted);cursor:default}
.team-workspace.app-view{margin-left:64px;min-width:0;overflow:hidden}.team-left,.team-center,.team-right{min-width:0}.team-left{overflow:hidden}.room-list{min-width:0}.room-item{min-width:0}.team-center{overflow:hidden}.team-timeline{min-width:0}.team-message{min-width:0}.team-message .bubble{min-width:0;overflow-wrap:anywhere}
@media(max-width:1100px){.team-workspace.app-view{margin-left:64px}.business-hour-row{grid-template-columns:90px 100px 1fr 24px 1fr;}.business-hour-row input[data-hour-open2],.business-hour-row input[data-hour-close2]{grid-column:auto}.header-connection-select{max-width:120px}}
@media(max-width:900px){.team-workspace.app-view{margin-left:54px}.business-hour-row{grid-template-columns:1fr 1fr}.business-hour-row>strong{grid-column:1/-1}.business-hour-row>span{display:none}.custom-audio{grid-template-columns:34px 1fr 42px}.audio-time{grid-column:1/-1;order:2}}
.scope-connection{min-width:112px;max-width:150px;border:1px solid var(--line);background:#fff;color:var(--blue);border-radius:999px;padding:5px 24px 5px 8px;font-size:9px;outline:none}.scope-connection:focus{border-color:#8baad0}.scope-row{flex-wrap:wrap}

/* =========================================================
   VAA Atendimento v0.3.3 — hotfix de transições operacionais
   ========================================================= */
.topbar{
  background:#eef3f9;
  border-bottom-color:#dbe3ed;
}
.topbar .icon-text-btn,.topbar .user-chip,.topbar .connection-pill{background:rgba(255,255,255,.78)}
.app-nav{background:#f9fbfd}
.nav-icon{width:20px;height:20px;display:grid;place-items:center}
.nav-icon svg,.panel-mode-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.app-nav-btn.active .nav-icon{color:var(--blue)}

.workspace{
  --right-width:300px;
  grid-template-columns:var(--left-width) minmax(420px,1fr) var(--right-width);
}
.workspace.right-collapsed{--right-width:0px}
.workspace.right-collapsed .right-panel{display:none!important}
.workspace.left-collapsed{--left-width:44px}
.workspace.left-collapsed .left-panel{width:44px;overflow:hidden}

.conversation-panel{display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;background:#fff}
.conversation-panel>.empty-state,.conversation-panel>.conversation-content{min-height:0}
.conversation-panel>.empty-state{align-self:center;justify-self:center}
.attendance-context-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 14px;border-bottom:1px solid var(--line);background:#f6f9fc;min-height:56px}
.attendance-context-bar>div{display:grid;gap:2px}.attendance-context-bar strong{font-size:11px}.attendance-context-bar span{font-size:10px;color:var(--muted)}
.attendance-context-bar select{min-width:220px;max-width:340px;border:1px solid #cfd9e6;background:#fff;border-radius:9px;padding:8px 30px 8px 10px;color:var(--blue);font-size:11px;font-weight:700;outline:none}.attendance-context-bar select:focus{border-color:#8baad0;box-shadow:0 0 0 3px rgba(49,95,157,.08)}

.conversation-header{background:#f8fafc}
.timeline,.team-timeline{
  background-color:#f4f7fb;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='84' viewBox='0 0 84 84'%3E%3Cg fill='none' stroke='%23315f9d' stroke-opacity='.055' stroke-width='1.2'%3E%3Crect x='12' y='14' width='22' height='16' rx='5'/%3E%3Cpath d='M16 30l-4 5v-5M52 17h16v16H52zM56 21h8M56 25h8M56 29h5'/%3E%3Ccircle cx='23' cy='58' r='11'/%3E%3Cpath d='M18 58h10M23 53v10M52 55c5-8 14-8 19 0-5 8-14 8-19 0Z'/%3E%3Ccircle cx='61.5' cy='55' r='2.5'/%3E%3C/g%3E%3Ctext x='39' y='46' font-family='Arial' font-size='9' font-weight='700' fill='%23315f9d' fill-opacity='.04'%3EVA%3C/text%3E%3C/svg%3E");
  background-repeat:repeat;
}

.panel-mode-btn{display:grid;place-items:center}
.panel-mode-btn.active{background:var(--blue-soft);color:var(--blue);border-color:#bcd0e7;box-shadow:0 0 0 2px rgba(49,95,157,.06)}
.right-panel{width:var(--right-width);min-width:0}
.right-view{min-width:0}
.right-view-head{padding:14px 16px;border-bottom:1px solid var(--line);background:#fff}.right-view-head>div{display:grid;gap:3px}.right-view-head strong{font-size:13px}.right-view-head span{font-size:10px;color:var(--muted)}
.connection-empty{padding:26px 18px;text-align:center;display:grid;gap:5px;color:var(--muted)}.connection-empty strong{font-size:12px;color:var(--text)}.connection-empty span{font-size:10px;line-height:1.45}
.contact-operational{display:flex;gap:6px;flex-wrap:wrap;margin-top:5px}.contact-operational span{font-size:9px;color:#6f7d8d;background:#f1f4f8;border-radius:999px;padding:2px 6px}
.contact-item .conversation-edge{display:grid;justify-items:end;align-content:start;gap:6px}

/* O contexto da conexão fica no painel central, não na coluna esquerda. */
.scope-connection{display:none!important}

@media(max-width:1250px){
  .workspace{grid-template-columns:var(--left-width) minmax(380px,1fr) var(--right-width)}
  .right-panel{position:relative;right:auto;top:auto;bottom:auto;width:var(--right-width);z-index:auto;box-shadow:none}
  .attendance-context-bar select{min-width:180px}
}
@media(max-width:1020px){
  .workspace{--right-width:0px;grid-template-columns:var(--left-width) minmax(360px,1fr)}
  .right-panel:not(.hidden){position:absolute;right:0;top:0;bottom:0;width:310px;z-index:25;box-shadow:var(--shadow);display:block!important}
  .attendance-context-bar{align-items:flex-start;flex-direction:column;gap:7px}.attendance-context-bar select{width:100%;max-width:none}
}

/* =========================================================
   VAA Atendimento v0.3.4 — separação visual + scroll + CRM
   ========================================================= */
:root{
  --bg:#eef3f8;
  --panel-soft:#f4f7fb;
  --line:#dbe3ed;
  --line-strong:#cbd6e3;
}
.topbar{background:#e7eef6;border-bottom:1px solid #cfd9e6}
.app-nav{background:#f4f7fb;border-right:1px solid #d2dce8}
.left-panel{background:#f9fbfd;border-right:1px solid #cfd9e6;min-height:0;overflow:hidden}
.conversation-panel{background:#fff;border-right:1px solid #dbe3ed}
.right-panel{background:#f7f9fc;border-left:1px solid #cfd9e6}
.left-tabs{background:#f7f9fc;border-bottom:1px solid #d9e2ec}
.left-action-row,.operational-tools-row{background:#fbfcfe}
.operational-tools-row{align-items:center;border-bottom:1px solid #e3e9f0;padding:0 12px 9px}
.operational-tab-hint{font-size:9.5px;color:#7b8797;line-height:1.25;flex:1}
.operational-tools-row .filter{margin-left:auto}
.conversation-list{min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;border-top:1px solid #e2e8f0;background:#fff}
.conversation-item{border-bottom-color:#e4eaf1}
.conversation-item.active{background:#eaf2fb}
.conversation-header{background:#f3f7fb;border-bottom-color:#d7e0ea}
.timeline{min-height:0;overflow-y:auto;scrollbar-gutter:stable}
.right-panel{min-height:0;overflow-y:auto;scrollbar-gutter:stable}
.team-timeline,.room-list{scrollbar-gutter:stable}

.crm-chart-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:14px}
.crm-chart-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.crm-chart-head>div{display:grid;gap:3px}.crm-chart-head strong{font-size:12px}.crm-chart-head span{font-size:10px;color:var(--muted)}
.crm-chart-total{font-size:10px;color:var(--blue);font-weight:700}
.crm-stage-chart{height:190px;display:flex;align-items:flex-end;gap:12px;overflow-x:auto;padding:8px 4px 2px;scrollbar-gutter:stable}
.crm-bar-item{min-width:84px;flex:1;max-width:150px;height:100%;display:grid;grid-template-rows:20px 1fr 34px;align-items:end;text-align:center}
.crm-bar-value{font-size:10px;font-weight:750;color:#52657d}
.crm-bar-track{height:100%;min-height:110px;background:#f1f4f8;border:1px solid #e0e7ef;border-radius:8px 8px 4px 4px;display:flex;align-items:flex-end;overflow:hidden}
.crm-bar-fill{width:100%;background:linear-gradient(180deg,#5a83ba,#315f9d);border-radius:7px 7px 3px 3px;min-height:3px;transition:height .2s ease}
.crm-bar-label{font-size:9px;color:#69778a;line-height:1.2;padding-top:6px;white-space:normal;overflow:hidden}

/* As abas superiores são a navegação operacional. Não repetir Minhas/Fila/Todas abaixo. */
.scope-row .scope[data-scope]{display:none!important}

@media(max-width:900px){
  .crm-stage-chart{height:170px;gap:8px}.crm-bar-item{min-width:72px}
}

/* =========================================================
   VAA Atendimento v0.3.5 — layout dark-blue inspirado na aprovação
   ========================================================= */
:root{
  --bg:#edf2f8;
  --panel:#ffffff;
  --panel-soft:#f4f8fc;
  --line:#d8e1ec;
  --line-strong:#c2cfdf;
  --text:#17314f;
  --muted:#6f8094;
  --blue:#0c3a7d;
  --blue-2:#082f67;
  --blue-3:#133f86;
  --blue-soft:#eaf2fc;
  --navy:#082f67;
  --navy-2:#0c3f84;
  --sidebar:#0b3a7b;
  --sidebar-2:#0a356f;
  --shadow:0 16px 40px rgba(8,33,73,.12);
  --radius:16px;
}
html,body{background:var(--bg);color:var(--text)}
.login-screen{background:radial-gradient(circle at 20% 0%,#f6f9fd 0,#edf3f8 45%,#e6edf6 100%)}
.login-card{border-radius:24px;border-color:#d9e3ef;box-shadow:0 24px 60px rgba(12,42,86,.10)}
.login-brand-logo{width:68px;height:68px;object-fit:contain;display:block}
.brand-mark,.brand-mark.small{background:linear-gradient(135deg,#0c3a7d,#214f94)}
.app-shell{grid-template-rows:74px 1fr;background:var(--bg)}
.topbar{
  grid-template-columns:minmax(260px,auto) minmax(420px,1fr) auto;
  gap:18px;
  padding:0 18px 0 0;
  background:linear-gradient(180deg,var(--navy) 0%, var(--blue) 100%);
  border-bottom:0;
  box-shadow:0 8px 30px rgba(7,34,73,.18);
}
.brand-area{padding-left:16px;display:flex;align-items:center}
.brand-area-law{min-width:0}
.brand-logo-full{height:46px;width:auto;display:block;object-fit:contain;filter:brightness(0) invert(1) contrast(1.03)}
.brand-area-copy{display:none}
.topbar-center{display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px;min-width:0}
.topbar-search-shell{
  min-width:0;display:flex;align-items:center;gap:12px;
  height:44px;padding:0 12px 0 14px;
  background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);
  border-radius:14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.topbar-search-shell input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#fff;font-size:15px}
.topbar-search-shell input::placeholder{color:rgba(255,255,255,.72)}
.topbar-search-icon{color:#fff;font-size:18px;line-height:1;opacity:.96}
.topbar-shortcut{font-size:12px;font-weight:700;color:rgba(255,255,255,.84);padding:5px 8px;border-radius:9px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
.mode-switch{
  justify-self:center;min-width:190px;justify-content:center;align-items:center;display:flex;
  background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);
  color:#fff;border-radius:14px;padding:11px 16px;font-weight:800;letter-spacing:.2px;box-shadow:none;
}
.mode-switch #currentModuleLabel{color:#fff}
.mode-btn.active{background:rgba(255,255,255,.16);color:#fff;box-shadow:none}
.top-actions{gap:10px}
.connection-pill,.icon-text-btn,.user-chip{
  min-height:42px;border-radius:13px;border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);color:#fff;backdrop-filter:blur(6px)
}
.connection-pill.demo{background:rgba(255,255,255,.08);color:#fff}
.connection-pill .status-dot{background:#c2d0e5}.connection-pill.online .status-dot{background:#53d18d}
.icon-text-btn:hover,.user-chip:hover,.connection-pill:hover{background:rgba(255,255,255,.14)}
.user-chip .avatar{background:rgba(255,255,255,.14);color:#fff}
.dropdown{margin-top:4px}
#appNav{
  background:linear-gradient(180deg,var(--sidebar) 0%, var(--sidebar-2) 100%);
  border-right:0;box-shadow:8px 0 20px rgba(8,33,73,.08)
}
.app-nav-btn{color:rgba(255,255,255,.80)}
.app-nav-btn:hover{background:rgba(255,255,255,.08);color:#fff}
.app-nav-btn.active{background:rgba(255,255,255,.12);color:#fff}
.app-nav-btn.active::before{background:#fff}
.workspace,.team-workspace.app-view,.crm-wrap,.agenda-wrap,.admin-wrap{background:var(--bg)}
.left-panel,.conversation-panel,.right-panel,.team-left,.team-center,.team-right,.crm-card,.agenda-card,.admin-card{
  border-radius:0;background:transparent
}
.left-panel{background:#fff;border-right:1px solid #d5dfeb;box-shadow:0 6px 24px rgba(8,33,73,.04)}
.conversation-panel{background:#f7fafe;border-right:1px solid #d5dfeb}
.right-panel{background:#f9fbfd;border-left:1px solid #d5dfeb}
.panel-density-tools{background:#fff;border-bottom:1px solid #e3eaf2}
.mini-icon-btn,.mini-action-btn{border-color:#d7e1ec;background:#fff;color:var(--blue)}
.mini-icon-btn.active{background:var(--blue-soft);border-color:#bfd3ea;color:var(--blue)}
.left-tabs{padding:10px 14px 0;background:#fff;border-bottom:1px solid #e1e8f0}
.left-tab{font-size:17px;font-weight:800;padding:15px 6px 14px;color:#6f8094}
.left-tab.active{color:var(--blue);border-bottom-width:3px}
.left-action-row{background:#fff;padding-bottom:4px}
.search-wrap{margin:14px 14px 8px;border:1px solid #d3dde8;background:#f7fafd;border-radius:14px;padding:12px 13px;box-shadow:inset 0 1px 0 #fff}
.search-wrap input{font-size:14px;color:var(--text)}
.scope-row.operational-tools-row{padding:0 14px 12px;background:#fff;border-bottom:1px solid #eef3f7;gap:8px}
.scope,.filter-bar select,.header-connection-select{border:1px solid #d7e1ec;background:#fff;color:#6a7d92;border-radius:999px;font-weight:700}
.scope{padding:8px 13px;font-size:12px}
.scope.active{background:var(--blue-soft);border-color:#c1d4eb;color:var(--blue)}
.scope.filter{margin-left:auto}
.conversation-list{background:#fff;border-top:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#c6d4e6 transparent}
.conversation-item{position:relative;padding:14px 14px;border-bottom:1px solid #edf2f7}
.conversation-item:hover{background:#f6f9fd}
.conversation-item.active{background:#edf4fd}
.conversation-item.active::before{content:'';position:absolute;left:0;top:10px;bottom:10px;width:4px;border-radius:0 4px 4px 0;background:var(--blue)}
.conversation-item .name{font-size:15px;color:#17314f}
.conversation-item .preview{font-size:13px;color:#6c7d91}
.tag{background:#eef3f8;color:#607387}
.unread{background:var(--blue)}
.connection-empty,.right-empty{color:#6d7f92}
.attendance-context-bar{
  margin:14px 14px 0;border:1px solid #d7e1eb;background:#fff;border-radius:16px;
  min-height:68px;padding:14px 16px;box-shadow:0 10px 25px rgba(8,33,73,.05)
}
.attendance-context-bar strong{font-size:13px;color:var(--blue)}
.attendance-context-bar span{font-size:11px}
.attendance-context-bar select{border-radius:12px;border-color:#cfdae7;background:#f8fbfe;color:var(--blue);font-size:12px;padding:10px 12px}
.empty-state{background:transparent}
.empty-icon{background:var(--blue-soft);color:var(--blue)}
.conversation-content{padding:14px 14px 14px 14px;gap:12px;background:#f7fafe}
.conversation-header{
  padding:14px 16px;border:1px solid #d9e3ee;border-radius:18px;background:#fff;
  box-shadow:0 10px 28px rgba(8,33,73,.05)
}
.name-line strong{font-size:15px;color:#17314f}
.meta-line{font-size:11px}
.header-actions .btn,.header-actions .icon-btn,.header-actions .header-connection-select{min-height:38px;border-radius:12px}
.header-actions .btn.soft,.btn.soft{background:#e8f3ec;border-color:#cde8d6;color:#2e7e60}
.header-actions .btn.ghost,.btn.ghost{background:#fff;border-color:#d5e0ec;color:#23466f}
.btn.primary,.send-btn{background:linear-gradient(180deg,var(--blue-3),var(--blue));box-shadow:0 10px 18px rgba(12,58,125,.20)}
.btn.primary:hover{background:linear-gradient(180deg,var(--blue),var(--blue-2))}
.icon-btn.panel-mode-btn.active{background:var(--blue-soft);border-color:#bfd3ea;color:var(--blue)}
.timeline,.team-timeline{
  position:relative;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#c6d4e6 transparent;
  border:1px solid #d9e3ee;border-radius:20px;background-color:#f6f9fd;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='92' height='92' viewBox='0 0 92 92'%3E%3Cg fill='%230c3a7d' fill-opacity='.06'%3E%3Cpolygon points='18,69 34,41 50,69'/%3E%3Cpolygon points='42,44 54,24 66,44 54,64'/%3E%3Cpolygon points='58,69 74,41 90,69' transform='translate(-4 0)'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat:repeat;background-size:92px 92px;box-shadow:inset 0 1px 0 #fff;
}
.day-separator{background:#e8eff8;border-color:#d5dfec;color:#516a89;padding:7px 14px;font-size:11px;font-weight:700}
.bubble{border-radius:18px;padding:13px 15px;border-color:#dce5ef;box-shadow:0 8px 20px rgba(8,33,73,.04)}
.inbound .bubble{background:#fff}
.outbound .bubble{background:#eaf2ff;border-color:#d3e0f4}
.bubble .author{font-size:11px}
.bubble .body{font-size:14px;line-height:1.5}
.bubble .meta{font-size:10px}
.composer,.reply-bar,.composer-mode{
  border:1px solid #d9e3ee;border-radius:18px;background:#fff;box-shadow:0 10px 25px rgba(8,33,73,.05)
}
.reply-bar{padding:10px 14px;border-bottom:0;border-radius:16px 16px 0 0}
.composer-mode{padding:8px 14px;border-bottom:0;border-radius:16px 16px 0 0}
.composer{padding:10px 12px;gap:8px}
.composer textarea{font-size:14px;color:var(--text)}
.composer-icon{border-radius:12px;border:1px solid #d7e1ec;background:#fff;color:#5a6f88}
.send-btn{border-radius:14px}
.right-panel{padding:14px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#c6d4e6 transparent}
.right-empty{margin:0;border:1px dashed #d2ddea;border-radius:18px;background:#fff;padding:24px}
.contact-profile,.detail-section,.right-view-head{
  background:#fff;border:1px solid #d9e3ee;border-radius:18px;box-shadow:0 10px 25px rgba(8,33,73,.04)
}
.contact-profile{padding:20px 18px}
.detail-section{margin-top:12px;padding:14px 16px}
.right-view-head{padding:16px 18px;margin-bottom:12px}
.section-title{margin-bottom:12px}
.text-btn{color:var(--blue)}
.notes-box,.field-list input,.field-list select{border-color:#d4deea;border-radius:12px;background:#fbfdff}
.mini-info-card,.mini-info-card.static{
  border-radius:14px;border:1px solid #dbe4ee;background:#fbfdff;box-shadow:none
}
.crm-chart-card,.summary-card,.kanban-column,.opportunity-card,.agenda-item,.admin-section{
  border-color:#d7e1eb;border-radius:18px;box-shadow:0 10px 26px rgba(8,33,73,.04);background:#fff
}
.crm-bar-track{background:#eef3f8;border-color:#e0e7f0}
.crm-bar-fill{background:linear-gradient(180deg,#2a5da5,#0c3a7d)}
#kanban{gap:16px}
.kanban-column{padding:0;overflow:hidden}.kanban-column>header{background:#f7fafe;border-bottom:1px solid #e7edf4;padding:14px 16px}
.kanban-add{border-top:1px solid #e7edf4;background:#fbfdff}
.modal-card,dialog{border-radius:20px}
.quick-menu,.emoji-picker{border-radius:18px;border-color:#d9e3ee;box-shadow:var(--shadow)}

@media(max-width:1200px){
  .topbar{grid-template-columns:minmax(220px,auto) minmax(240px,1fr) auto}
  .brand-logo-full{height:40px}
  .topbar-center{grid-template-columns:1fr}
  .mode-switch{justify-self:start;min-width:160px}
}
@media(max-width:1020px){
  .topbar{grid-template-columns:1fr auto;row-gap:10px;height:auto;padding:12px 12px 12px 0}
  .topbar-center{grid-column:1/-1;padding-left:14px;padding-right:14px}
  .brand-logo-full{height:36px}
  .top-actions{justify-content:flex-end;flex-wrap:wrap}
}
@media(max-width:760px){
  .topbar-search-shell{height:40px}.topbar-shortcut{display:none}
  .mode-switch{width:100%;justify-self:stretch;justify-content:center}
}
.app-nav{top:74px}
@media(max-width:1020px){.app-nav{top:86px}}

/* =========================================================
   VAA Atendimento v0.3.6 — refinamento visual + chats internos customizáveis
   ========================================================= */
/* topo: remover o aspecto esbranquiçado dos controles e dar mais presença à marca */
.topbar .connection-pill,
.topbar .icon-text-btn,
.topbar .user-chip{
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.topbar .connection-pill:hover,
.topbar .icon-text-btn:hover,
.topbar .user-chip:hover{background:rgba(255,255,255,.11)!important}
.brand-area{min-width:292px;padding-left:22px}
.brand-logo-full{height:58px;width:auto;max-width:265px;object-fit:contain;filter:brightness(0) invert(1);opacity:.98}

/* mini logos: menores, espaçados e discretos como no layout aprovado */
.timeline,.team-timeline{
  background-color:#f5f8fc;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='124' height='96' viewBox='0 0 124 96'%3E%3Cg transform='translate(46 33)' fill='%230c3a7d' fill-opacity='.045'%3E%3Cpolygon points='0,24 10,7 20,24'/%3E%3Cpolygon points='12,9 20,-5 28,9 20,23'/%3E%3Cpolygon points='22,24 32,7 42,24'/%3E%3C/g%3E%3C/svg%3E")!important;
  background-repeat:repeat!important;
  background-size:124px 96px!important;
}

/* chat da equipe: voltar a separar visualmente os canais */
.team-workspace{grid-template-columns:300px minmax(460px,1fr) 260px;gap:0;background:var(--bg)}
.team-left,.team-center,.team-right{background:#fff}
.team-left{border-right:1px solid #cfd9e6;box-shadow:6px 0 18px rgba(8,33,73,.035)}
.team-left-head{padding:18px 18px 15px;border-bottom:1px solid #d9e2ec;background:#f9fbfd}
.team-left-head-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}
.team-left-head-actions>div{display:grid;gap:3px}
.team-new-room-btn{width:34px;height:34px;border-radius:10px;border:1px solid #cbd7e5;background:#fff;color:var(--blue);font-size:20px;line-height:1;display:grid;place-items:center;font-weight:600}
.team-new-room-btn:hover{background:var(--blue-soft);border-color:#b9cde5}
.room-list{overflow-y:auto;background:#fff;scrollbar-width:thin;scrollbar-color:#c6d4e6 transparent}
.room-item{padding:14px 16px;border-bottom:1px solid #dfe7ef;background:#fff;transition:.14s}
.room-item:hover{background:#f6f9fd}
.room-item.active{background:#edf4fd;box-shadow:inset 4px 0 0 var(--blue)}
.room-item .room-top{align-items:center;gap:8px}
.room-title-wrap{display:flex;align-items:center;gap:7px;min-width:0}
.room-title-wrap strong{font-size:13px;color:#17314f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.room-hash{font-weight:900;color:var(--blue);font-size:14px}
.room-fixed{font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#6e8196;background:#eef3f8;border-radius:999px;padding:3px 6px}
.room-item p{font-size:11px;color:#738397;margin:5px 0 0 21px}
.team-empty{padding:24px 18px;color:var(--muted);font-size:11px;text-align:center}
.team-center{display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#f7fafe;min-width:0}
.team-header{min-height:70px;padding:14px 18px;border-bottom:1px solid #d5dfeb;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px}
.team-header strong{font-size:15px;color:#17314f}
.team-header .muted{font-size:10px;margin-top:4px}
.team-room-edit{font-size:11px;padding:8px 11px}
.team-timeline{margin:12px;border:1px solid #d9e3ee;border-radius:18px;padding:22px max(18px,5vw);min-height:0;overflow-y:auto;box-shadow:inset 0 1px 0 #fff}
.team-message{gap:9px}
.team-message .bubble{max-width:70%;border-radius:16px;padding:11px 13px}
.team-message.mine .bubble{background:#eaf2ff;border-color:#d3e0f4}
.team-empty-timeline{margin:auto;color:#8492a4;font-size:11px;background:rgba(255,255,255,.74);border:1px solid #dfe7f0;border-radius:999px;padding:8px 12px}
.team-composer{margin:0 12px 12px;padding:9px;border:1px solid #d9e3ee;border-radius:16px;background:#fff;box-shadow:0 9px 22px rgba(8,33,73,.04)}
.team-right{border-left:1px solid #d5dfeb;background:#f9fbfd;padding:18px;overflow-y:auto}
.team-right h3{font-size:14px;color:#17314f;margin-bottom:12px}
.member-list{display:grid;gap:7px;margin:0}
.member{padding:8px 9px;border:1px solid #e0e7ef;border-radius:11px;background:#fff}
.info-card{border-color:#dbe4ed;background:#fff;border-radius:13px}

/* modal de criação/edição de chats internos */
.team-room-members-field{display:grid;gap:8px}
.team-room-members-field>span{font-size:13px;font-weight:650}
.team-room-member-options{display:grid;gap:7px;max-height:260px;overflow-y:auto;padding:2px}
.team-member-option{display:grid!important;grid-template-columns:auto 32px 1fr;align-items:center;gap:9px;padding:9px 10px;border:1px solid #dce5ef;border-radius:11px;background:#fbfdff;cursor:pointer}
.team-member-option:hover{background:#f5f9fd}
.team-member-option input{width:15px!important;height:15px;margin:0}
.team-member-option>span:last-child{display:grid;gap:2px}
.team-member-option strong{font-size:11px}.team-member-option small{font-size:9px;color:var(--muted)}
.modal-actions.split{justify-content:flex-start}.modal-actions.split .toolbar-spacer{flex:1}

@media(max-width:1200px){
  .brand-area{min-width:245px}.brand-logo-full{height:50px;max-width:225px}
  .team-workspace{grid-template-columns:270px minmax(420px,1fr)}
  .team-right{display:none}
}
.brand-area{min-width:350px;padding-left:24px}
.brand-logo-full{height:52px;width:323px;max-width:323px;object-fit:contain;filter:none;opacity:1}
@media(max-width:1200px){.brand-area{min-width:300px}.brand-logo-full{height:46px;width:auto;max-width:285px}}

/* =========================================================
   VAA Atendimento v0.3.7 — busca, edição de mensagens e agenda integrada
   ========================================================= */
/* topo sem busca global: foco na navegação operacional */
.topbar{grid-template-columns:minmax(300px,360px) minmax(180px,1fr) auto}
.topbar-center{display:flex;align-items:center;justify-content:center;min-width:0}
.topbar-center .mode-switch{justify-self:auto;min-width:210px}

/* contadores das abas */
.tab-badge.neutral{background:#eaf1fb;color:var(--blue);border:1px solid #cddbed}
.left-tab.active .tab-badge.neutral{background:var(--blue);color:#fff;border-color:var(--blue)}

/* fundo com a marca oficial em miniatura, sem reconstrução geométrica */
.timeline,.team-timeline{
  background-color:#f5f8fc!important;
  background-image:url('/assets/logo-watermark-tile.png')!important;
  background-repeat:repeat!important;
  background-size:110px 86px!important;
}

/* área de conversa: cabeçalho + busca + timeline + auxiliares + composer */
.conversation-content{grid-template-rows:auto auto minmax(0,1fr) auto auto auto}
.conversation-search-bar{
  display:grid;grid-template-columns:auto minmax(120px,1fr) auto auto auto auto;
  align-items:center;gap:7px;margin:0 2px;padding:8px 10px;
  background:#fff;border:1px solid #d9e3ee;border-radius:14px;
  box-shadow:0 7px 18px rgba(8,33,73,.035)
}
.conversation-search-bar.hidden{display:none!important}
.conversation-search-icon{font-size:17px;color:var(--blue)}
.conversation-search-bar input{border:0;outline:0;background:transparent;color:var(--text);min-width:0;font-size:13px;padding:5px 3px}
.conversation-search-count{font-size:10px;font-weight:750;color:#6b7e94;min-width:34px;text-align:center}
.conversation-search-nav{width:30px;height:30px;border:1px solid #d8e2ed;border-radius:9px;background:#fff;color:#526b88;font-weight:800}
.conversation-search-nav:hover{background:var(--blue-soft);color:var(--blue);border-color:#c2d5eb}
.search-match .bubble,.internal-note.search-match{box-shadow:0 0 0 2px rgba(26,91,164,.18),0 8px 20px rgba(8,33,73,.04)}
.search-current .bubble,.internal-note.search-current{box-shadow:0 0 0 3px rgba(12,58,125,.48),0 8px 20px rgba(8,33,73,.06)}

/* ações de mensagem */
.message-row-tools{display:flex;align-items:center;gap:4px;opacity:.18;transition:.15s;flex:none}
.message-row:hover .message-row-tools,.message-row:focus-within .message-row-tools{opacity:1}
.message-tool-btn,.message-row-tools .message-reply-btn{
  width:28px;height:28px;border:1px solid #d9e2ec;border-radius:50%;background:#fff;color:#65778d;
  display:grid;place-items:center;font-size:12px;line-height:1
}
.message-tool-btn:hover,.message-row-tools .message-reply-btn:hover{background:var(--blue-soft);border-color:#c5d7eb;color:var(--blue)}
.message-tool-btn.danger:hover{background:#fff1f1;border-color:#f0c7c7;color:#b84d4d}
.message-row.deleted .bubble{opacity:.72;background:#f5f7fa;border-style:dashed}
.deleted-message{font-style:italic;color:#8290a1}
.internal-note{position:relative}
.internal-note .message-actions{display:inline-flex;gap:4px;margin-left:8px;vertical-align:middle}
.internal-note .message-actions button{border:0;background:transparent;color:#7a6b36;padding:1px 4px;border-radius:5px}
.internal-note .message-actions button:hover{background:rgba(118,94,24,.08)}
.team-message-actions{display:flex;gap:7px;justify-content:flex-end;margin-top:7px;padding-top:6px;border-top:1px solid rgba(84,105,130,.12)}
.team-message-actions button{border:0;background:transparent;color:#66798f;font-size:9px;font-weight:700;padding:2px 4px}
.team-message-actions button:hover{color:var(--blue);text-decoration:underline}
.team-message.deleted .bubble{opacity:.72;border-style:dashed}

/* agenda clicável e atalho direto para conversa */
.agenda-clickable-date{cursor:pointer;transition:background .12s ease,box-shadow .12s ease}
.agenda-clickable-date:hover{background:#f7faff}
.agenda-day-add{float:right;color:#91a2b6;font-size:13px;opacity:0;transition:.12s}
.month-cell:hover .agenda-day-add{opacity:1;color:var(--blue)}
.agenda-empty{border:1px dashed #dce5ef;border-radius:10px;padding:13px;color:#91a0b1;text-align:center;font-size:10px}
.agenda-clickable-date:hover .agenda-empty{border-color:#bfd1e6;color:var(--blue);background:#fbfdff}
.activity-card-wrap,.month-activity-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:5px}
.activity-card-wrap{margin-bottom:7px}
.activity-card-wrap .activity-card{margin:0;min-width:0;width:100%}
.activity-chat-shortcut{border:1px solid #ccd9e7;background:#fff;color:var(--blue);border-radius:9px;min-width:32px;padding:0 7px;font-weight:800;cursor:pointer}
.activity-chat-shortcut:hover{background:var(--blue-soft);border-color:#b9cee6}
.month-activity-wrap{margin:3px 5px}
.month-activity-wrap .month-activity{margin:0;min-width:0;width:100%}
.month-activity-wrap .activity-chat-shortcut{min-width:25px;border-radius:6px;font-size:10px;padding:0 4px}

@media(max-width:1200px){
  .topbar{grid-template-columns:minmax(265px,310px) 1fr auto}
}
@media(max-width:900px){
  .conversation-search-bar{grid-template-columns:auto 1fr auto auto auto}.conversation-search-count{grid-column:auto}
}

/* v0.3.8 — status de entrega em português + exclusão remota preservada */
.message-status{font-weight:650;display:inline-flex;align-items:center;gap:2px;white-space:nowrap}
.message-status b{font-family:Arial,sans-serif;letter-spacing:-2px;font-size:10px}
.sent-status{color:#6f8094}.delivered-status{color:#5e7897}.read-status{color:#2f78c8}.failed-status{color:#b84c4c}.pending-status{color:#8b7a54}.inbound-status{color:#7c8999}.deleted-status{color:#8a95a4}.remote-deleted-status{color:#a25c5c;font-weight:800}
.message-row.remote-deleted .bubble{position:relative;opacity:.78;border-style:dashed;filter:saturate(.8)}
.message-row.remote-deleted .bubble::after{content:"";position:absolute;left:10px;right:10px;top:50%;border-top:1.5px solid rgba(164,70,70,.62);transform:rotate(-2.5deg);pointer-events:none;z-index:3}
.message-row.remote-deleted .bubble .body{text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:rgba(164,70,70,.72)}
.message-row.remote-deleted .message-media,.message-row.remote-deleted .attachment-card{opacity:.76}

/* =========================================================
   VAA Atendimento v0.3.9 — composer fixo dentro da conversa
   ========================================================= */
/* Mantém o painel central estritamente limitado à altura disponível da aplicação. */
.workspace{height:100%;min-height:0;overflow:hidden}
.conversation-panel{height:100%;min-height:0;overflow:hidden}
.conversation-content{
  height:100%;
  max-height:100%;
  min-height:0;
  overflow:hidden;
  grid-template-rows:auto auto minmax(0,1fr) auto auto auto;
  padding-bottom:12px;
}
/* Somente o histórico deve rolar verticalmente. */
.timeline{
  min-height:0;
  height:100%;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
}
/* Busca, barras auxiliares e composer nunca participam do scroll do histórico. */
.conversation-header,.conversation-search-bar,.reply-bar,.composer-mode,.composer{flex:none}
.composer{
  position:relative;
  z-index:8;
  margin:0 0 2px;
  min-height:58px;
  align-items:center;
  box-shadow:0 10px 26px rgba(8,33,73,.08);
}
.composer textarea{
  min-height:40px;
  max-height:112px;
  overflow-y:auto;
  align-self:center;
}
/* Garante respiro e clique seguro nos controles inferiores, inclusive em telas menores. */
@media(max-height:760px){
  .conversation-content{padding:8px 8px 10px;gap:8px}
  .conversation-header{padding:10px 12px}
  .timeline{padding-top:16px;padding-bottom:16px}
  .composer{min-height:54px;padding:8px 10px}
}

/* v0.3.10 — tags com maior contraste */
.tag{font-weight:800;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}

/* v0.3.11 — Backup */
.backup-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}
.backup-status-card{border:1px solid var(--line);background:#fbfdff;border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:5px;min-width:0}
.backup-status-card span{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:800}
.backup-status-card strong{font-size:14px;color:var(--text);overflow-wrap:anywhere}
.backup-status-card small{font-size:10px;color:var(--muted);overflow-wrap:anywhere}
.backup-info{margin:0 0 14px}.backup-info p{margin:5px 0 0}
.backup-list-head{display:flex;justify-content:space-between;align-items:center;margin:14px 0 8px;color:var(--text)}
.backup-list-head span{font-size:10px;color:var(--muted)}
.backup-list .settings-list-row small{display:block;margin-top:3px;color:#93a0b2;overflow-wrap:anywhere}
@media(max-width:900px){.backup-status-grid{grid-template-columns:1fr}}

/* =========================================================
   VAA Atendimento v0.3.12 — edição remota + respiro do composer
   ========================================================= */
/* O campo de escrita continua fora do scroll, mas agora possui uma faixa visual própria
   com respiro inferior suficiente para não ficar colado à borda da janela. */
.conversation-content{
  padding-bottom:24px;
}
.composer{
  margin-bottom:4px;
}
@media(max-height:760px){
  .conversation-content{padding-bottom:16px}
  .composer{margin-bottom:2px}
}


/* =========================================================
   VAA Atendimento v0.3.14 — voz + aviso de edição remota
   ========================================================= */
.voice-btn{font-size:15px}
.voice-recorder{margin:8px 12px 0;border:1px solid #cfdceb;background:#f8fbff;border-radius:12px;padding:9px 11px;box-shadow:0 3px 12px rgba(31,67,112,.05)}
.voice-recording-state,.voice-preview-state{display:flex;align-items:center;gap:9px;min-height:38px}
.voice-recording-state strong{font-size:11px;color:#324d6d}
.voice-recording-state #voiceTimer{font-variant-numeric:tabular-nums;font-size:11px;font-weight:800;color:#294f84;margin-right:auto}
.voice-dot{width:9px;height:9px;border-radius:50%;background:#d65a5a;box-shadow:0 0 0 4px rgba(214,90,90,.12);animation:vaaVoicePulse 1.2s ease-in-out infinite}
.voice-preview-state audio{height:34px;min-width:220px;flex:1}
.voice-preview-state .muted{font-size:10px;white-space:nowrap}
@keyframes vaaVoicePulse{0%,100%{opacity:1}50%{opacity:.45}}
.edit-content-warning{margin-top:7px;padding:7px 8px;border:1px solid #ead9a7;border-left:3px solid #c69a36;border-radius:8px;background:#fffaf0;color:#6f5a28;display:grid;gap:2px;font-size:9.5px;line-height:1.35;max-width:360px}
.edit-content-warning strong{font-size:9.5px;color:#735819}
@media(max-width:850px){
  .voice-recording-state,.voice-preview-state{flex-wrap:wrap}
  .voice-preview-state audio{min-width:180px;width:100%}
}

/* =========================================================
   VAA Atendimento v0.3.15 — voz robusta + leitura por atendente + refinamento visual
   ========================================================= */
.brand-area{gap:9px;padding-left:12px}
.brand-area-law{min-width:52px}
.brand-logo-mark{width:34px;height:34px;object-fit:contain;display:block;background:#fff;border-radius:9px;padding:3px;box-shadow:0 2px 8px rgba(0,0,0,.10)}
.brand-logo-full{display:none!important}

.composer-tool.prominent{width:auto;min-width:42px;height:38px;padding:0 9px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid #bdd0e6;background:#eef5fd;color:#0c3a7d;box-shadow:0 3px 10px rgba(12,58,125,.07)}
.composer-tool.prominent:hover{background:#e2eefc;border-color:#9ebce0;transform:translateY(-1px)}
.composer-tool.prominent svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.composer-tool .tool-label{font-size:10px;font-weight:800;display:none}
.voice-btn{background:#edf4ff!important;color:#0c3a7d!important}
.schedule-tool{background:#eef7ff!important;color:#145a97!important}
.reminder-tool{background:#fff7e8!important;color:#926515!important;border-color:#ead8ae!important}
@media(min-width:1480px){.composer-tool .tool-label{display:inline}.composer-tool.prominent{min-width:68px}}

.voice-recorder{margin:8px 12px 0;border:1px solid #b8cee6;background:#f5f9ff;border-radius:14px;padding:10px 12px;box-shadow:0 5px 16px rgba(31,67,112,.08)}
.voice-recorder.permission-pending{background:#f8fbff}
.voice-recorder.recording{border-color:#dca8a8;background:#fff8f8}
.voice-recorder.error{border-color:#e1b1b1;background:#fff5f5}
.voice-recording-state strong{font-size:12px}
.voice-recording-state #voiceTimer{font-size:13px;min-width:42px}
.voice-btn.recording{background:#fff0f0!important;color:#b83d3d!important;border-color:#dfaaaa!important;box-shadow:0 0 0 3px rgba(184,61,61,.08)}

.unread-scope{margin-left:auto!important}
.unread-scope.active{background:#e8f1ff;border-color:#aac4e7;color:#0c3a7d}
.scope.filter{margin-left:0}
.conversation-item.is-unread .name{font-weight:900;color:#0b2f5f}
.conversation-item.is-unread .preview{font-weight:700;color:#425d7d}
.read-state-btn.is-unread{background:#e7f0ff!important;border-color:#b7cae4!important;color:#0c3a7d!important}
.read-state-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

@media(max-width:1180px){.brand-area-law{min-width:48px}.brand-logo-mark{width:32px;height:32px}}


/* Grupos do WhatsApp — ficam em Contatos e nunca na Fila */
.group-contact-item .group-avatar{box-shadow:0 0 0 2px #dbe9f8}
.group-contact-chip,.mini-status.group-status,.status-chip.group-status{background:#e9f2fd!important;color:#174f88!important;border-color:#c5d9ef!important}
.group-contact-item .contact-operational{align-items:center}
.group-contact-item .conversation-edge{align-items:flex-end}
.group-member-list{display:grid;gap:6px;margin-top:7px}
.group-member{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px;border:1px solid #e5ebf2;border-radius:10px;background:#fbfdff}
.avatar.tiny{width:30px;height:30px;min-width:30px;font-size:10px}
.group-member-copy{display:grid;min-width:0;gap:2px}
.group-member-copy strong{font-size:11px;color:#203b5b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.group-member-copy span{font-size:9px;color:#7b8898;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.group-admin-badge{font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.3px;padding:3px 6px;border-radius:999px;background:#edf3fa;color:#45627f}


/* VAA Atendimento v0.3.16 — correção do composer: 9 controles na mesma linha */
.composer{grid-template-columns:auto auto auto auto minmax(0,1fr) auto auto auto auto;}
@media(max-width:760px){.composer{grid-template-columns:auto auto auto auto minmax(120px,1fr) auto auto auto auto;overflow-x:auto}}


/* =========================================================
   VAA Atendimento v0.3.18 — áudio + nome interno de contato
   ========================================================= */
.audio-progress{
  --audio-progress:0%;
  appearance:none;
  -webkit-appearance:none;
  height:5px;
  border-radius:999px;
  border:0;
  outline:0;
  background:linear-gradient(to right,var(--blue) 0,var(--blue) var(--audio-progress),#cdd7e5 var(--audio-progress),#cdd7e5 100%);
}
.audio-progress::-webkit-slider-runnable-track{height:5px;border-radius:999px;background:transparent}
.audio-progress::-moz-range-track{height:5px;border-radius:999px;background:#cdd7e5}
.audio-progress::-moz-range-progress{height:5px;border-radius:999px;background:var(--blue)}
.audio-progress::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--blue);border:0;margin-top:-4.5px;box-shadow:0 0 0 2px #fff;cursor:pointer}
.audio-progress::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--blue);border:2px solid #fff;cursor:pointer}
.contact-name-field{display:grid;gap:5px;font-size:10px;color:var(--muted)}
.contact-name-field input{width:100%;height:34px;border:1px solid var(--line-strong);border-radius:9px;padding:0 10px;background:#fff;color:var(--ink);outline:none}
.contact-name-field input:focus{border-color:#7fa3d0;box-shadow:0 0 0 3px rgba(21,70,132,.08)}
.contact-whatsapp-name{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-top:8px;font-size:10px;color:var(--muted)}
.contact-whatsapp-name strong{color:var(--ink);font-weight:650;text-align:right;overflow-wrap:anywhere}
#contactIdentitySection>small{display:block;margin-top:7px;line-height:1.35}


/* VAA Atendimento 0.3.19 — correções finais de UX */
/* O cabeçalho usa somente o símbolo enviado pelo usuário. Regras antigas de logo horizontal ficam neutralizadas. */
.topbar{grid-template-columns:64px minmax(180px,1fr) auto!important;min-height:58px!important;height:58px!important;padding-left:8px!important}
.brand-area,.brand-area-law{min-width:0!important;width:52px!important;max-width:52px!important;padding:0!important;margin:0!important;justify-content:center!important;overflow:hidden!important}
.brand-logo-mark{display:block!important;width:38px!important;height:38px!important;max-width:38px!important;max-height:38px!important;object-fit:contain!important;border-radius:50%!important;padding:0!important;background:transparent!important;box-shadow:none!important}
.brand-area .brand-logo-full,.brand-area-copy{display:none!important}
@media(max-width:760px){.topbar{grid-template-columns:54px 1fr auto!important;height:auto!important;min-height:58px!important}.brand-area,.brand-area-law{width:46px!important;max-width:46px!important}.brand-logo-mark{width:34px!important;height:34px!important}}

/* Não existe mais modo compacto. Só recolher/abrir a lista. */
.panel-density-tools{height:32px!important;padding:5px 10px 3px!important}
.panel-density-tools #leftCollapseBtn{display:grid!important}

/* Não lida manual é lembrete azul; contador vermelho/numérico continua reservado a novas mensagens. */
.conversation-item.manual-unread{background:linear-gradient(90deg,rgba(13,75,145,.045),transparent 60%)}
.manual-unread-dot{width:9px;height:9px;border-radius:50%;background:#1677dc;display:block;box-shadow:0 0 0 2px #fff;margin:2px auto 0}
.conversation-menu-wrap{position:relative;display:grid;justify-items:end}
.conversation-more-btn{width:24px;height:24px;border:1px solid #d8e1ec;border-radius:7px;background:#fff;color:#607087;display:grid;place-items:center;opacity:0;pointer-events:none;transition:.12s;cursor:pointer;font-size:13px;line-height:1}
.conversation-item:hover .conversation-more-btn,.conversation-more-btn:focus,.conversation-menu-wrap:focus-within .conversation-more-btn{opacity:1;pointer-events:auto}
.conversation-row-menu{position:absolute;right:0;top:27px;z-index:100;width:max-content;min-width:170px;padding:5px;background:#fff;border:1px solid #d8e1ec;border-radius:10px;box-shadow:0 8px 24px rgba(18,42,70,.14)}
.conversation-row-menu button{border:0;background:#fff;width:100%;text-align:left;padding:9px 10px;border-radius:7px;color:#25384f;font-size:12px;cursor:pointer;white-space:nowrap}
.conversation-row-menu button:hover{background:#f1f6fc}
@media(hover:none),(pointer:coarse){.conversation-more-btn{opacity:1;pointer-events:auto}}

/* Resposta: barra evidente e cancelamento sempre disponível. */
.reply-bar{padding:8px 12px!important;background:#eef5fd!important;border-top:1px solid #cbddef!important;border-left:4px solid var(--blue);align-items:center!important;gap:10px!important}
.reply-bar-copy{display:grid;gap:2px;min-width:0}.reply-bar-copy strong{font-size:10px;color:var(--blue)}.reply-bar-copy span{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reply-bar #cancelReplyBtn{width:30px;height:30px;border:1px solid #cbd9e8!important;border-radius:8px!important;background:#fff!important;color:#4f6278!important;font-size:20px!important;cursor:pointer;flex:none}

/* Grupo no padrão de painel Geral / Membros. */
.group-details{border-top:1px solid var(--line)}
.group-detail-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);background:#fff}
.group-detail-tab{border:0;border-bottom:2px solid transparent;background:#fff;padding:13px 8px;color:#5f6e80;font-weight:700;cursor:pointer}
.group-detail-tab.active{color:var(--blue);border-bottom-color:var(--blue)}
.group-tab-panel{margin:0!important;border-top:0!important}

/* Slider precisa aceitar arraste com alvo confortável. */
.audio-progress{height:20px!important;touch-action:none;cursor:pointer!important}
.audio-progress::-webkit-slider-runnable-track{height:6px!important}.audio-progress::-moz-range-track{height:6px!important}
.audio-progress::-webkit-slider-thumb{width:16px!important;height:16px!important;margin-top:-5px!important}.audio-progress::-moz-range-thumb{width:16px!important;height:16px!important}


/* =========================================================
   VAA Atendimento v0.3.20 — fechamento das correções do teste real
   ========================================================= */

/* A faixa de resposta, estados auxiliares e composer ocupam linhas próprias.
   Evita a sobreposição visual observada ao responder. */
.conversation-content{
  grid-template-rows:auto auto minmax(0,1fr) auto auto auto auto!important;
}
.voice-recorder{flex:none;position:relative;z-index:7}
.reply-bar{position:relative;z-index:9;margin:0 10px}
.composer-mode{position:relative;z-index:8;margin:0 10px}
.composer{position:relative;z-index:8}

/* Gravação visível no próprio composer, no ponto em que o atendente olha ao enviar. */
.voice-recording-inline{
  grid-column:5;
  min-width:0;
  height:40px;
  border:1px solid #e0b4b4;
  background:#fff7f7;
  border-radius:11px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 9px;
  color:#7a3131;
}
.voice-recording-inline strong{font-size:11px;white-space:nowrap}
#voiceInlineTimer{font-variant-numeric:tabular-nums;font-size:12px;font-weight:900;margin-left:auto;color:#9a3434;min-width:42px;text-align:right}
.voice-inline-action{height:28px;border-radius:8px;border:1px solid #dbcaca;background:#fff;padding:0 9px;font-size:10px;font-weight:800;color:#6b4650;cursor:pointer}
.voice-inline-action.stop{color:#174f88;border-color:#bfd0e3}
.voice-inline-action.cancel{width:28px;padding:0;color:#a42b2b;border-color:#e1bbbb;font-size:16px}
.composer.voice-active #messageInput{display:none!important}
.composer.voice-active .voice-recording-inline{display:flex!important}
@media(max-width:900px){
  .voice-recording-inline strong{display:none}
  .voice-recording-inline{gap:5px;padding:0 6px}
  .voice-inline-action.stop{padding:0 6px}
}

/* Nome interno: edição pontual por lápis, sem ocupar uma seção inteira. */
.contact-profile-name-row{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:8px}
.contact-profile-name-row h3{margin:0!important}
.contact-name-edit-btn{border:0;background:transparent;color:#55718f;width:26px;height:26px;border-radius:7px;display:grid;place-items:center;cursor:pointer;font-size:14px}
.contact-name-edit-btn:hover{background:#edf4fb;color:var(--blue)}
.contact-name-inline-editor{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px;margin:9px auto 4px;max-width:290px}
.contact-name-inline-editor input{min-width:0;height:34px;border:1px solid var(--line-strong);border-radius:9px;padding:0 9px;background:#fff;color:var(--ink);outline:none}
.contact-name-inline-editor input:focus{border-color:#7fa3d0;box-shadow:0 0 0 3px rgba(21,70,132,.08)}
.contact-name-inline-editor .btn{min-height:34px;padding:0 8px;font-size:9px}

/* O menu de notificações precisa caber no dropdown do usuário. */
#notificationToggleBtn{white-space:nowrap}

/* Aba escolhida do grupo permanece estável durante sincronizações e re-renders. */
.group-detail-tab:focus-visible{outline:2px solid #8fb0d6;outline-offset:-3px}

/* =========================================================
   VAA Atendimento v0.3.21 — painel enxuto, autosave e reações
   ========================================================= */
.filter-bar{grid-template-columns:1fr 1fr 1fr}
.field-list textarea{width:100%;border:1px solid #d4deea;border-radius:12px;background:#fbfdff;padding:9px;font-size:11px;line-height:1.45;resize:vertical;min-height:72px;outline:none}
.field-list textarea:focus{border-color:#9db7d8;box-shadow:0 0 0 3px rgba(21,70,132,.06)}
.field-list textarea.expanded{min-height:240px;max-height:460px}
.field-label-row{display:flex;align-items:center;justify-content:space-between;gap:8px}
.autosave-status{font-size:9px;font-weight:700;color:#4e8b6e;text-transform:none;letter-spacing:0;min-width:48px;text-align:right}
.autosave-status.error{color:#b34d4d}

.message-stack{display:grid;gap:4px;min-width:0}
.reaction-picker-wrap{position:relative;display:grid;place-items:center}
.message-reaction-btn{width:28px;height:28px;border:1px solid #d9e2ec;border-radius:50%;background:#fff;color:#65778d;display:grid;place-items:center;font-size:14px;line-height:1;cursor:pointer}
.message-reaction-btn:hover{background:var(--blue-soft);border-color:#c5d7eb;color:var(--blue)}
.reaction-picker{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);z-index:80;background:#fff;border:1px solid #d7e1ec;border-radius:12px;box-shadow:0 8px 24px rgba(21,46,79,.16);padding:6px;display:grid;gap:5px;min-width:max-content}
.outbound .reaction-picker{left:auto;right:0;transform:none}
.reaction-quick,.reaction-extra{display:flex;align-items:center;gap:2px}
.reaction-picker button[data-react-message],.reaction-more-btn{border:0;background:transparent;width:31px;height:31px;border-radius:8px;font-size:18px;display:grid;place-items:center;cursor:pointer}
.reaction-picker button[data-react-message]:hover,.reaction-more-btn:hover{background:#f0f4f9;transform:scale(1.06)}
.reaction-more-btn{font-size:17px;color:#5e7188;font-weight:800}
.message-reactions{display:flex;gap:4px;flex-wrap:wrap;margin-top:-2px;padding:0 3px}
.reaction-chip{border:1px solid #d7e1ec;background:#fff;border-radius:999px;padding:2px 7px;font-size:12px;line-height:18px;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.reaction-chip span{font-size:9px;color:#65778d;margin-left:2px}
.reaction-chip.mine{border-color:#abc6e6;background:#edf5ff}

/* Durante gravação, o estado ocupa claramente a área principal do composer. */
.composer.voice-active{grid-template-columns:auto auto auto auto minmax(220px,1fr) auto auto auto auto}
.composer.voice-active .voice-recording-inline{box-shadow:0 0 0 2px rgba(182,56,56,.05)}
.composer.voice-active .voice-dot{flex:none}
@media(max-width:900px){
  .filter-bar{grid-template-columns:1fr}
  .voice-recording-inline strong{display:block}
}

/* =========================================================
   VAA Atendimento v0.3.22 — correção cirúrgica do áudio gravado
   ========================================================= */
/* Durante a gravação, evita que o botão geral de texto seja confundido com envio do áudio. */
.composer.voice-active .voice-recording-inline{grid-column:5/10;min-width:0}
.composer.voice-active #voiceBtn,
.composer.voice-active #scheduleBtn,
.composer.voice-active #reminderBtn,
.composer.voice-active #sendBtn{display:none!important}
.voice-inline-action:disabled{opacity:.55;cursor:not-allowed}

/* Ao parar, a prévia ocupa a própria barra do composer e fica impossível "sumir" acima dela. */
.voice-preview-inline{
  grid-column:5/10;
  min-width:0;
  min-height:42px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:4px 6px 4px 8px;
  border:1px solid #c8d8e9;
  background:#f7fbff;
  border-radius:11px;
}
.voice-preview-inline audio{height:34px;min-width:180px;flex:1;max-width:none}
.voice-preview-duration{font-variant-numeric:tabular-nums;font-size:11px;font-weight:800;color:#52677f;white-space:nowrap}
.voice-preview-action,.voice-preview-send{
  height:32px;border-radius:8px;padding:0 10px;font-size:10px;font-weight:800;cursor:pointer;white-space:nowrap;
}
.voice-preview-action{border:1px solid #cbd8e6;background:#fff;color:#37536f}
.voice-preview-action:hover{background:#edf4fb}
.voice-preview-action.danger{width:34px;padding:0;color:#aa2e2e;border-color:#e2bbbb}
.voice-preview-send{border:1px solid #174f88;background:#174f88;color:#fff}
.voice-preview-send:hover{filter:brightness(.96)}
.voice-preview-send:disabled{opacity:.55;cursor:wait}
.composer.voice-preview-active #messageInput,
.composer.voice-preview-active #voiceBtn,
.composer.voice-preview-active #scheduleBtn,
.composer.voice-preview-active #reminderBtn,
.composer.voice-preview-active #sendBtn{display:none!important}
.composer.voice-preview-active .voice-preview-inline{display:flex!important}
@media(max-width:900px){
  .voice-preview-inline{gap:5px;padding:4px 5px}
  .voice-preview-inline audio{min-width:140px}
  .voice-preview-action{padding:0 7px}
  .voice-preview-duration{display:none}
}

/* =========================================================
   VAA Atendimento v0.3.24 — operação segura + biblioteca
   ========================================================= */
.topbar-connection-select{
  height:34px;min-width:138px;max-width:190px;padding:0 30px 0 11px;
  border:1px solid rgba(255,255,255,.22);border-radius:10px;
  background:#194d88;color:#fff;font:inherit;font-size:11px;font-weight:700;
  outline:none;cursor:pointer;
}
.topbar-connection-select:hover,.topbar-connection-select:focus{background:#215b99;border-color:rgba(255,255,255,.38)}
.topbar-connection-select option{background:#fff;color:#26384d}
.header-connection-label{
  display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border:1px solid #c9d8e8;
  border-radius:9px;background:#f7fbff;color:#385775;font-size:10px;font-weight:800;white-space:nowrap;
}
.ownership-notice{
  flex:none;text-align:center;padding:9px 14px;border-top:1px solid #d7e1ec;background:#f7f9fc;
  color:#52667d;font-size:11px;font-weight:700;
}
.ownership-notice strong{color:#263d57}
.contact-start-btn{
  flex:none;border:1px solid #c8d8ea;border-radius:8px;background:#fff;color:#24578c;
  padding:5px 8px;font-size:9px;font-weight:800;cursor:pointer;
}
.contact-start-btn:hover{background:#edf5ff}
.media-library-entry{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;
  border:0;border-top:1px solid #e0e7ef;border-bottom:1px solid #e0e7ef;background:#fff;
  padding:13px 2px;text-align:left;cursor:pointer;color:#18324f;
}
.media-library-entry:hover{background:#f8fbff}
.media-library-entry-copy{display:grid;gap:3px;min-width:0}
.media-library-entry-copy strong{font-size:11px}.media-library-entry-copy small{font-size:9px;color:#718196;font-weight:500}
.media-library-entry-meta{display:flex;align-items:center;gap:7px;color:#41627f;font-size:12px;font-weight:800}
.media-library-head{display:flex;align-items:center;gap:10px;padding:13px 12px;border-bottom:1px solid #dfe7f0}
.media-library-head>div{display:grid;gap:2px}.media-library-head strong{font-size:12px}.media-library-head span{font-size:9px;color:#77879a}
.media-library-back{width:30px;height:30px;border:1px solid #d5dfeb;border-radius:8px;background:#fff;color:#405a75;font-size:18px;cursor:pointer}
.media-library-back:hover{background:#f1f6fb}
.media-library-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #d5dfeb;padding:0 8px}
.media-library-tab{height:39px;border:0;border-bottom:2px solid transparent;background:transparent;color:#556a81;font-size:10px;font-weight:800;cursor:pointer}
.media-library-tab span{display:inline-flex;justify-content:center;min-width:20px;padding:1px 5px;margin-left:3px;border-radius:10px;background:#eaf0f6;color:#55708d}
.media-library-tab.active{color:#164e89;border-bottom-color:#2467ae}.media-library-tab.active span{background:#dcecff;color:#245c96}
.media-library-content{padding:11px;overflow:auto;min-height:160px}
.media-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.media-library-tile{position:relative;min-width:0;border:1px solid #dce5ee;border-radius:9px;overflow:hidden;background:#f6f8fb;aspect-ratio:1/1}
.media-library-tile img,.media-library-tile video{width:100%;height:100%;display:block;object-fit:cover;background:#eef2f6}
.media-library-tile .media-download{position:absolute;right:5px;bottom:5px;width:26px;height:26px;display:grid;place-items:center;border-radius:7px;background:rgba(255,255,255,.94);box-shadow:0 2px 8px rgba(27,54,83,.18);text-decoration:none;color:#244f7e;font-weight:900}
.media-library-list{display:grid;gap:7px}
.media-library-row{display:flex;align-items:center;gap:9px;padding:9px;border:1px solid #dde6ef;border-radius:9px;background:#fff;min-width:0}
.media-library-row-copy{display:grid;gap:2px;min-width:0;flex:1}.media-library-row-copy strong,.media-library-row-copy a{font-size:10px;color:#213e5c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-library-row-copy small{font-size:8px;color:#7b8999}
.media-library-row>a.media-download{flex:none;text-decoration:none;border:1px solid #cfdae6;border-radius:7px;padding:5px 7px;color:#24578c;font-size:9px;font-weight:800;background:#fff}
.media-library-empty{padding:22px 10px;text-align:center;color:#7b8999;font-size:10px}
.reaction-global-picker{
  position:fixed!important;left:auto;right:auto;top:auto;bottom:auto;z-index:600;
  width:360px;max-width:calc(100vw - 20px);height:330px;max-height:56vh;
  transform:none!important;box-shadow:0 12px 36px rgba(22,45,74,.22);
}
@media(max-width:900px){
  .topbar-connection-select{min-width:112px;max-width:140px}
  .media-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.media-library-tile{display:flex;flex-direction:column;aspect-ratio:auto;min-height:132px}
.media-library-tile>a:not(.media-download){display:block;flex:1;min-height:98px}
.media-library-tile img,.media-library-tile video{height:108px}
.media-library-tile-meta{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:6px 7px;background:#fff;font-size:8px;color:#78889a}
.media-library-tile-meta a{color:#245b95;text-decoration:none;font-weight:800}
.media-doc-list,.media-link-list{display:grid;gap:7px}
.media-doc-item,.media-link-item{display:flex;align-items:center;gap:9px;padding:9px;border:1px solid #dde6ef;border-radius:9px;background:#fff;text-decoration:none;color:#243f5b;min-width:0}
.media-doc-item:hover,.media-link-item:hover{background:#f7fbff;border-color:#cbdbea}
.media-doc-icon,.media-link-icon{width:28px;height:28px;border-radius:7px;background:#edf4fb;display:grid;place-items:center;flex:none;color:#336492;font-weight:900}
.media-doc-item>span:nth-child(2),.media-link-item>span:nth-child(2){display:grid;gap:2px;min-width:0;flex:1}
.media-doc-item strong,.media-link-item strong{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.media-doc-item small,.media-link-item small{font-size:8px;color:#7b8999}
.media-doc-download{flex:none;font-size:16px;color:#275d95}


/* =========================================================
   Robustez operacional + composer + chat interno
   ========================================================= */
.connection-pill{cursor:default!important;user-select:none}
.composer textarea{min-height:44px;max-height:144px;overflow-y:hidden;transition:height .08s ease}
.composer{grid-template-columns:auto auto auto auto minmax(180px,1fr) auto auto auto auto;align-items:end}
@media(max-width:1280px){.composer{gap:4px;padding:8px}.composer-icon{width:32px;height:36px}.composer-tool.prominent{min-width:36px;height:36px;padding:0 7px}.send-btn{width:36px;height:36px}}
.team-room-head-actions,.team-header-actions{display:flex;align-items:center;gap:6px}.team-archived-btn{border:1px solid #d7e1ec;background:#fff;color:#5a6f88;border-radius:9px;padding:6px 9px;font-size:10px;font-weight:750}.team-archived-btn.active{background:#edf4fd;color:#174f88;border-color:#bfd2e7}.team-composer.hidden{display:none!important}


/* Gestão visual de conexões */
.connection-admin-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.connection-admin-title-row h3{margin:0}
.connection-admin-filters{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.mini-filter{border:1px solid #cbd9e8;background:#fff;color:#47617d;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:800;cursor:pointer}
.mini-filter:hover{background:#f4f8fc}
.mini-filter.active{background:#174f88;border-color:#174f88;color:#fff}
