
/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   PALETA HELLO VIAGENS â€” PÃ´r do sol acima das nuvens
   Azul marinho + Coral/PÃªssego + Celeste + Ã‚mbar
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
:root{
  /* Fundos */
  --bg:        #0D1117;
  --bg-2:      #161B22;
  --bg-3:      #1C2333;
  --bg-4:      rgba(255,255,255,.06);

  /* Identidade */
  --coral:     #E87BB0;   /* rosa quente â€” pÃ´r do sol rosado */
  --coral-2:   #F0A8CC;   /* rosa claro / pÃªssego rosado */
  --coral-3:   #C45A90;   /* rosa profundo */
  --amber:     #E8A0D0;   /* lilÃ¡s rosado */
  --celeste:   #9B8FDD;   /* lilÃ¡s/lavanda â€” complementar */
  --celeste-2: #7B6FBF;
  --malva:     #D4A0E8;   /* malva suave */
  --navy:      #1C1040;   /* azul noturno profundo */

  /* Compat com cÃ³digo existente */
  --rosa:         #E87BB0;
  --rosa-claro:   #F0A8CC;
  --rosa-escuro:  #C45A90;
  --laranja:      #E8A0D0;
  --dourado:      #F0A8CC;
  --roxo:         #9B8FDD;
  --azul:         #9B8FDD;

  /* Glass */
  --glass:        rgba(255,255,255,.05);
  --glass-2:      rgba(255,255,255,.08);
  --border:       rgba(255,255,255,.08);
  --border-2:     rgba(255,255,255,.13);

  /* Compat */
  --cinza-1:      rgba(255,255,255,.05);
  --cinza-2:      rgba(255,255,255,.09);
  --cinza-3:      rgba(255,255,255,.20);
  --sombra:       rgba(0,0,0,.40);

  /* Texto */
  --branco:   #EFF6FF;
  --texto:    #EFF6FF;
  --texto-2:  #C4D4EE;
  --texto-3:  #90A8C8;

  /* Gradientes */
  --grad-sunset:  linear-gradient(135deg,#C45A90 0%,#E87BB0 45%,#F0A8CC 100%);
  --grad-soft:    linear-gradient(160deg,#0D1117 0%,#161B22 50%,#1C2333 100%);
  --grad-card:    linear-gradient(145deg,rgba(255,255,255,.05),rgba(78,170,220,.03));

  --trans: .2s cubic-bezier(.4,0,.2,1);
}

*{font-family:'Inter','Segoe UI',system-ui,-apple-system,sans-serif;}
html,body{height:100%;overflow:hidden;}
body{
  font-size:15px;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  background:var(--bg);
  color:var(--texto);
}
body::before{
  content:'';position:fixed;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(ellipse 70% 50% at 15% 55%,rgba(255,122,89,.05) 0%,transparent 55%),
    radial-gradient(ellipse 60% 40% at 85% 20%,rgba(78,170,220,.07) 0%,transparent 50%),
    radial-gradient(ellipse 50% 60% at 55% 95%,rgba(196,122,184,.03) 0%,transparent 50%);
}

/* â•â• LOGIN â•â• */
#login-screen{
  position:fixed;inset:0;z-index:100;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,#0a0518 0%,#1a0a2e 25%,#3D1A50 50%,#8B3070 70%,#C45A90 85%,#F0A8CC 100%);
  transition:opacity .5s,visibility .5s;
}
#login-screen.hidden{opacity:0;visibility:hidden;}
.cloud{position:absolute;border-radius:50%;background:rgba(255,180,150,.14);filter:blur(50px);animation:floatCloud 8s ease-in-out infinite;}
.cloud-1{width:320px;height:180px;bottom:12%;left:3%;}
.cloud-2{width:440px;height:200px;bottom:8%;left:38%;animation-delay:2s;}
.cloud-3{width:260px;height:150px;bottom:18%;right:4%;background:rgba(200,150,220,.12);animation-delay:4s;}
.cloud-4{width:200px;height:120px;bottom:28%;left:22%;background:rgba(255,140,66,.10);animation-delay:1s;}
@keyframes floatCloud{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px) translateX(6px)}}
.plane-anim{position:absolute;animation:flyPlane 12s linear infinite;}
.plane-1{font-size:2.8rem;top:28%;animation-duration:12s;animation-delay:0s;}
.plane-2{font-size:1.8rem;top:15%;animation-duration:18s;animation-delay:4s;}
.plane-3{font-size:1.4rem;top:52%;animation-duration:22s;animation-delay:7s;}
.plane-4{font-size:2.2rem;top:70%;animation-duration:15s;animation-delay:2s;}
.plane-5{font-size:1.1rem;top:38%;animation-duration:28s;animation-delay:10s;}
.plane-6{font-size:3.2rem;top:82%;animation-duration:10s;animation-delay:5s;}
@keyframes flyPlane{0%{left:-80px;opacity:0}5%{opacity:1}95%{opacity:1}100%{left:calc(100% + 80px);opacity:0}}
.login-card{
  position:relative;z-index:2;
  background:rgba(255,255,255,.10);
  backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);
  border:1px solid rgba(255,255,255,.22);
  border-radius:24px;padding:48px 44px 44px;width:420px;max-width:94vw;
  box-shadow:0 32px 80px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.25);
  animation:cardIn .7s cubic-bezier(.2,1,.3,1) both;
}
@keyframes cardIn{from{opacity:0;transform:translateY(28px) scale(.97)}to{opacity:1;transform:none}}
.login-logo{display:flex;flex-direction:column;align-items:center;margin-bottom:32px;}
.login-logo img{width:220px;border-radius:20px;box-shadow:0 8px 32px rgba(0,0,0,.5);animation:logoPulse 3s ease-in-out infinite;object-fit:cover;}
@keyframes logoPulse{0%,100%{filter:drop-shadow(0 4px 16px rgba(232,123,176,.4))}50%{filter:drop-shadow(0 8px 24px rgba(240,168,204,.5))}}
.login-subtitle{color:rgba(255,220,210,.75);font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;margin-top:10px;}
.login-form{display:flex;flex-direction:column;gap:14px;}
.input-group{display:flex;flex-direction:column;gap:5px;}
.input-group label{color:rgba(255,220,210,.8);font-size:.75rem;font-weight:600;letter-spacing:.08em;}
.input-group input{
  background:rgba(255,255,255,.10);border:1px solid rgba(255,200,180,.28);border-radius:10px;
  padding:13px 15px;color:#fff;font-size:.93rem;outline:none;transition:var(--trans);
}
.input-group input::placeholder{color:rgba(255,200,180,.45);}
.input-group input:focus{border-color:rgba(255,122,89,.6);background:rgba(255,255,255,.14);box-shadow:0 0 0 3px rgba(255,122,89,.15);}
.btn-login{
  margin-top:6px;background:var(--grad-sunset);border:none;border-radius:12px;padding:15px;
  color:#fff;font-size:.95rem;font-weight:700;letter-spacing:.04em;cursor:pointer;
  position:relative;overflow:hidden;transition:var(--trans);box-shadow:0 4px 20px rgba(232,123,176,.4);
}
.btn-login:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(232,123,176,.5);}
.btn-login::after{content:'';position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.12),transparent);pointer-events:none;}
.login-error{
  background:rgba(220,50,50,.2);border:1px solid rgba(220,50,50,.35);border-radius:8px;
  padding:10px 14px;color:#FFB3B3;font-size:.83rem;display:none;
}
.login-loading{
  display:none;align-items:center;justify-content:center;gap:8px;
  color:rgba(255,220,210,.75);font-size:.88rem;margin-top:10px;
}
.spinner{width:20px;height:20px;border:2px solid rgba(255,200,180,.3);border-top-color:var(--coral);border-radius:50%;animation:spin .7s linear infinite;}
@keyframes spin{to{transform:rotate(360deg)}}

/* â•â• APP â•â• */
#app{display:none;height:100vh;flex-direction:column;position:relative;z-index:1;}
#app.visible{display:flex;}

/* â•â• TOPBAR â•â• */
.topbar{
  height:56px;
  background:rgba(13,17,23,.98);
  border-bottom:1px solid var(--border);
  display:flex;align-items:center;padding:0 20px 0 0;
  flex-shrink:0;z-index:50;
  box-shadow:0 1px 0 rgba(255,255,255,.04);
}
.topbar-logo{
  width:68px;min-width:68px;
  display:flex;align-items:center;justify-content:center;
  padding:0 16px;border-right:1px solid var(--border);height:100%;
}
.topbar-logo img{height:44px;border-radius:10px;object-fit:cover;box-shadow:0 2px 8px rgba(0,0,0,.4);}
.topbar-center{flex:1;min-width:0;display:flex;align-items:center;padding:0 20px;gap:10px;overflow:hidden;}
.topbar-channel-name{font-size:.95rem;font-weight:700;color:var(--branco);display:flex;align-items:center;gap:8px;}
.topbar-channel-desc{font-size:.79rem;color:var(--texto-3);padding-left:10px;border-left:1px solid var(--border);}
.topbar-actions{display:flex;align-items:center;gap:8px;margin-left:auto;}
.topbar-btn{
  background:none;border:none;cursor:pointer;width:34px;height:34px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:1.05rem;
  color:var(--texto-3);transition:var(--trans);
}
.topbar-btn:hover{background:var(--glass-2);color:var(--coral-2);}
.user-avatar{
  width:34px;height:34px;border-radius:50%;background:var(--grad-sunset);
  display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.78rem;
  cursor:pointer;transition:var(--trans);position:relative;overflow:hidden;
}
.user-avatar:hover{transform:scale(1.08);}
.user-avatar img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;border-radius:50%;}

/* â• â•  LAYOUT â• â•  */
.main-layout{display:flex;flex:1;overflow:hidden;min-height:0;position:relative;}

/* â• â•  SIDEBAR â• â•  */

:root {
  --sidebar-width: 280px;
}

/* ── NOVA BARRA PRIMÁRIA (Expande no Hover) ── */
.primary-sidebar {
  width: 68px;
  min-width: 68px;
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(28px);
  -webkit-backdrop-filter: blur(28px);
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 0 24px 24px 0;
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  z-index: 50;
  transition: width 0.3s cubic-bezier(0.2, 0, 0.2, 1), background 0.3s, box-shadow 0.3s;
  overflow: hidden;
  position: relative;
  box-shadow: 4px 0 24px rgba(0,0,0,0.15);
}

.primary-sidebar:hover,
.primary-sidebar.expanded {
  width: 260px;
  min-width: 260px;
  background: rgba(18, 28, 50, 0.35);
  box-shadow: 8px 0 32px rgba(0,0,0,0.4);
}

/* Ocultar elementos de texto quando NÃO estiver em hover nem expanded */
.primary-sidebar:not(:hover):not(.expanded) .ch-name,
.primary-sidebar:not(:hover):not(.expanded) .primary-user-info {
  display: none !important;
  opacity: 0;
  transition: opacity 0.2s;
}

.primary-sidebar:hover .ch-name,
.primary-sidebar.expanded .ch-name,
.primary-sidebar:hover .primary-user-info,
.primary-sidebar.expanded .primary-user-info {
  opacity: 1;
}

/* collapsed: trava em 68px mesmo no hover (usado quando calc está aberta) */
.primary-sidebar.collapsed,
.primary-sidebar.collapsed:hover {
  width: 68px !important;
  min-width: 68px !important;
  background: rgba(255,255,255,0.04) !important;
  box-shadow: 4px 0 24px rgba(0,0,0,0.15) !important;
}
.primary-sidebar.collapsed .ch-name,
.primary-sidebar.collapsed:hover .ch-name,
.primary-sidebar.collapsed .primary-user-info,
.primary-sidebar.collapsed:hover .primary-user-info {
  display: none !important;
}
.primary-sidebar.collapsed .sidebar-crm-btn,
.primary-sidebar.collapsed:hover .sidebar-crm-btn {
  justify-content: center !important;
  padding: 10px 0 !important;
}

/* Ajustes de botão para manter o ícone centralizado quando recolhido */
.primary-sidebar:not(:hover):not(.expanded) .sidebar-crm-btn {
  justify-content: center;
  padding: 10px 0;
}

.primary-sidebar:hover .sidebar-crm-btn,
.primary-sidebar.expanded .sidebar-crm-btn {
  justify-content: flex-start;
  padding: 10px 16px;
}

.primary-divider {
  border: 0;
  height: 1px;
  background: rgba(255,255,255,0.05);
  margin: 8px 16px;
}

/* User profile na primary sidebar */
.primary-user-section {
  display: flex;
  align-items: center;
  padding: 16px;
  margin-top: auto;
  border-top: 1px solid rgba(255,255,255,0.05);
  overflow: hidden;
  white-space: nowrap;
}
.primary-user-info {
  margin-left: 12px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

/* ── BARRA SECUNDÁRIA (Sub-menus) ── */
.sidebar {
  width: 260px;
  min-width: 260px;
  background: rgba(18, 28, 50, 0.35);
  backdrop-filter: blur(28px);
  -webkit-backdrop-filter: blur(28px);
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 0 24px 24px 0;
  display: flex;
  flex-direction: column;
  overflow: visible;
  transition: margin-left 0.3s cubic-bezier(0.2, 0, 0.2, 1);
  position: relative;
  z-index: 49;
}

.sidebar.hidden {
  margin-left: -260px;
  border-right: none;
}

.sidebar-crm-btn {
  justify-content: flex-start;
  padding: 10px 16px;
  white-space: nowrap;
}

.sidebar-crm-btn.active {
  background: rgba(255,255,255,0.1);
}

/* Resizer handle (Opcional, mas mantido para consistência) */
#sidebar-resizer {
  position: absolute;
  top: 0;
  right: -3px;
  bottom: 0;
  width: 6px;
  cursor: col-resize;
  z-index: 100;
}
#sidebar-resizer:hover {
  background: rgba(255,255,255,0.1);
}

/* ── Scrollbar global moderna ── */
* {
  scrollbar-width: thin;
  scrollbar-color: rgba(255,255,255,.12) transparent;
}
*::-webkit-scrollbar { width: 5px; height: 5px; }
*::-webkit-scrollbar-track { background: transparent; }
*::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,.12);
  border-radius: 10px;
}
*::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,.25); }

/* classes de acento opcional (mesmas regras, só mudam a cor do thumb) */
.slim-scroll-purple {
  scrollbar-color: rgba(192,132,252,.30) transparent;
}
.slim-scroll-purple::-webkit-scrollbar-thumb { background: rgba(192,132,252,.30); }
.slim-scroll-purple::-webkit-scrollbar-thumb:hover { background: rgba(192,132,252,.55); }

.sidebar-scroll{flex:1;overflow-y:auto;padding:8px 0;}
.sidebar-section{margin-bottom:2px;}
.sidebar-category-header{display:flex;align-items:center;gap:6px;padding:5px 10px 3px;user-select:none;cursor:pointer;}
.sidebar-category-header:hover .category-name{color:var(--coral-2);}
.category-toggle{font-size:.68rem;color:var(--texto-3);transition:transform var(--trans);flex-shrink:0;}
.category-toggle.open{transform:rotate(90deg);}
.category-name{
  font-size:.70rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;
  color:rgba(255,255,255,.68);transition:var(--trans);flex:1;
}
.cat-actions{display:none;gap:2px;}
.sidebar-category-header:hover .cat-actions{display:flex;}
.cat-btn{
  background:none;border:none;cursor:pointer;font-size:.72rem;color:rgba(255,255,255,.52);
  width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:3px;transition:var(--trans);
}
.cat-btn:hover{color:var(--coral);background:rgba(255,122,89,.12);}
.channel-list{padding:1px 6px;}
.recentes-section{padding:0 6px 6px;}
.recentes-header{
  display:flex;align-items:center;gap:6px;padding:6px 6px 4px;
  font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;
  color:rgba(255,255,255,.45);
}
.recentes-header .recentes-dot{
  width:5px;height:5px;border-radius:50%;background:var(--coral);opacity:.8;flex-shrink:0;
  animation:pulse-dot 2s ease-in-out infinite;
}
@keyframes pulse-dot{0%,100%{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}
.channel-item.recente-unread .ch-name{font-weight:600;color:rgba(255,255,255,.96);}
.recentes-divider{height:1px;background:rgba(255,255,255,.07);margin:4px 6px 6px;}
.channel-item.sortable-ghost{opacity:.35;background:rgba(255,122,89,.15);border-radius:7px;}
.channel-item.sortable-drag{opacity:.9;box-shadow:0 4px 18px rgba(0,0,0,.45);border-radius:7px;}
.channel-list.sortable-over{background:rgba(255,122,89,.06);border-radius:8px;min-height:28px;}
.sidebar-section.sortable-ghost{opacity:.35;}
.sidebar-section.sortable-drag{opacity:.9;box-shadow:0 4px 18px rgba(0,0,0,.45);}
.ch-drag-handle{cursor:grab;color:rgba(255,255,255,.22);font-size:.7rem;flex-shrink:0;padding:0 2px;display:none;line-height:1;}
.channel-item:hover .ch-drag-handle{display:block;}
.cat-drag-handle{cursor:grab;color:rgba(255,255,255,.22);font-size:.7rem;flex-shrink:0;padding:0 2px;margin-right:2px;display:none;line-height:1;}
.sidebar-category-header:hover .cat-drag-handle{display:block;}
.channel-item{
  display:flex;align-items:center;gap:7px;padding:6px 10px;border-radius:7px;cursor:pointer;
  font-size:.88rem;color:rgba(255,255,255,.88);
  transition:var(--trans);position:relative;user-select:none;
}
.channel-item:hover{background:rgba(255,255,255,.10);color:rgba(255,255,255,.96);}
.channel-item.active{
  background:linear-gradient(90deg,rgba(255,122,89,.16),rgba(255,184,76,.06));
  color:var(--coral-2);font-weight:600;
  border-left:2px solid var(--coral);padding-left:8px;
}
.ch-icon{font-size:.9rem;flex-shrink:0;}
.ch-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.hv-tip{position:fixed;z-index:999;background:rgba(22,27,34,.97);border:1px solid var(--border-2);border-radius:8px;padding:6px 12px;font-size:.8rem;color:var(--branco);pointer-events:none;white-space:nowrap;box-shadow:0 4px 16px rgba(0,0,0,.5);opacity:0;transition:opacity .15s;backdrop-filter:blur(12px);}

.ch-actions{display:none;gap:2px;}
.channel-item:hover .ch-actions{display:flex;}
.ch-action-btn{
  background:none;border:none;cursor:pointer;font-size:.72rem;padding:2px 4px;
  border-radius:4px;color:rgba(255,255,255,.52);transition:var(--trans);
}
.ch-action-btn:hover{color:var(--coral);background:rgba(255,122,89,.12);}
.sidebar-bottom{
  padding:10px;border-top:1px solid var(--border);
  display:flex;align-items:center;gap:9px;
  background:rgba(10,13,20,.5);
}
.sidebar-user-info{flex:1;overflow:hidden;}
.sidebar-user-name{font-size:.86rem;font-weight:700;color:rgba(255,255,255,.90);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sidebar-user-status{font-size:.78rem;color:var(--texto-3);display:flex;align-items:center;gap:3px;}
.status-dot{width:6px;height:6px;border-radius:50%;background:#3fb950;flex-shrink:0;}
.sidebar-logout{
  background:none;border:none;cursor:pointer;font-size:.95rem;color:var(--texto-3);
  width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:var(--trans);
}
.sidebar-logout:hover{color:#ff5555;background:rgba(255,85,85,.1);}

/* ══ CONTENT AREA ══ */
.content-area {
  flex: 1; display: flex; flex-direction: column; overflow: hidden;
  background: #1b263b;
  min-height: 0; transition: background 0.3s;
  position: relative;
}
.channel-drawer-chat {
  flex: 1;
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}

.content-area.mode-chat::before,
#whats-chat-area::before,
.channel-drawer-chat::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  background: url('../assets/hello_viagens_chat_bg.png') repeat;
  background-size: 650px;
  opacity: 0.35;
  pointer-events: none;
}
.content-area > *,
#whats-chat-area > *,
.channel-drawer-chat > * {
  position: relative;
  z-index: 1;
}

.chat-wrapper {
  flex: 1; display: flex; flex-direction: column; overflow: hidden;
  max-width: 1200px; width: 100%; margin: 0 auto;
  background-color: transparent;
  position: relative;
}
.content-tabs{
  display:flex;align-items:center;padding:0 18px;
  border-bottom:1px solid var(--border);
  background:rgba(10,13,20,.95);
  gap:2px;flex-shrink:0;
}
.tab-btn{
  padding:11px 16px;border:none;background:none;cursor:pointer;
  font-size:.88rem;font-weight:600;
  color:var(--texto-3);border-bottom:2px solid transparent;
  transition:var(--trans);margin-bottom:-1px;
}
.tab-btn:hover{color:var(--coral-2);}
.tab-btn.active{color:var(--coral-2);border-bottom-color:var(--coral);}

/* ══ BUSCA ══ */
.search-bar{
  display:none;align-items:center;gap:10px;padding:7px 18px;
  background:rgba(10,13,20,.75);border-bottom:1px solid var(--border);flex-shrink:0;
}
.search-bar.open{display:flex;}
.search-bar input{
  flex:1;border:1px solid var(--border-2);border-radius:9px;
  padding:7px 11px;font-size:.86rem;color:var(--branco);
  outline:none;background:rgba(255,255,255,.06);
}
.search-bar input:focus{border-color:rgba(255,122,89,.35);}
.search-close{background:none;border:none;cursor:pointer;font-size:1rem;color:var(--texto-3);}
.search-close:hover{color:var(--coral);}
.search-results-bar{
  padding:4px 18px;background:rgba(10,13,20,.7);font-size:.76rem;
  color:var(--texto-3);border-bottom:1px solid var(--border);
}
.search-highlight{background:rgba(255,184,76,.2);border-radius:3px;padding:0 2px;color:var(--amber);}

/* ══ CHAT (ESTILO BITRIX / WHATSAPP) ══ */
/* ═ CHAT (ESTILO BITRIX / WHATSAPP) ═ */
.chat-view{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative;}
.messages-area{
  flex:1;overflow-y:auto;padding:16px 18px 8px;
  display:flex;flex-direction:column;gap:4px;
}
.msg-date-divider{display:flex;justify-content:center;margin:16px 0;}
.msg-date-divider hr{display:none;}
.msg-date-divider span{
  font-size:.75rem;color:#fff;font-weight:700;
  background:rgba(0,0,0,.2);padding:4px 12px;border-radius:12px;
}
.message{display:flex;gap:8px;padding:4px 6px;position:relative;}
.message.mine{flex-direction:row-reverse;}
.message.nao-vista{background:rgba(255,122,89,.15);border-radius:8px;}

.msg-avatar{
  width:32px;height:32px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-weight:700;font-size:.8rem;flex-shrink:0;
  margin-top:auto;position:relative;overflow:hidden;
}
.msg-avatar img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
.message.mine .msg-avatar{display:none;} /* Oculta avatar proprio */

.msg-body{
  max-width:80%;
  display:flex;flex-direction:column;
  padding:6px 10px 4px;
  box-shadow:0 2px 6px rgba(0,0,0,0.25);
  position:relative;
}

/* Bolha Outros */
.message.other .msg-body{
  background:#f4e9ea; /* Rosa pastel acinzentado */
  border-radius:14px 14px 14px 0;
}
/* Bolha Propria */
.message.mine .msg-body{
  background:#007aff; /* Azul iMessage */
  border-radius:14px 14px 0 14px;
}

.msg-name{font-weight:700;font-size:.85rem;color:#e07a3c;margin-bottom:2px;}
.message.mine .msg-name{display:none;}

.msg-content-wrapper{display:flex;flex-direction:column;}

/* Citacao (Reply) dentro do balao de mensagem */
.msg-quote{
  background: rgba(0,0,0,0.06);
  border-left: 3px solid #e07a3c;
  padding: 4px 8px;
  border-radius: 4px;
  margin-bottom: 4px;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  transition: background 0.2s;
}
.message.mine .msg-quote{
  background: rgba(255,255,255,0.15);
  border-left: 3px solid #fff;
}
.msg-quote:hover{
  background: rgba(0,0,0,0.1);
}
.message.mine .msg-quote:hover{
  background: rgba(255,255,255,0.25);
}
.msg-quote-name{
  font-size: 0.75rem;
  font-weight: 700;
  color: #e07a3c;
  margin-bottom: 2px;
}
.message.mine .msg-quote-name{
  color: #fff;
}
.msg-quote-text{
  font-size: 0.8rem;
  color: rgba(0,0,0,0.65);
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.message.mine .msg-quote-text{
  color: rgba(255,255,255,0.85);
}

.msg-text{
  font-size:.95rem;color:#222;line-height:1.4;word-break:break-word;
}
.message.mine .msg-text{color:#ffffff;}

.msg-footer{
  display:flex;justify-content:flex-end;align-items:center;gap:4px;
  margin-top:2px;margin-left:20px;
}
.msg-time{font-size:.7rem;color:rgba(0,0,0,.45);}
.message.mine .msg-time{color:rgba(255,255,255,.7);}
.msg-edited{font-size:.7rem;color:rgba(0,0,0,.4);font-style:italic;}
.message.mine .msg-edited{color:rgba(255,255,255,.6);}
.msg-check{font-size:.75rem;color:#34b7f1;margin-left:2px;}
.message.mine .msg-check{color:#ffffff;}

.msg-mention{color:#007bff;font-weight:700;background:rgba(0,123,255,.1);border-radius:4px;padding:0 3px;}
.message.mine .msg-mention{color:#fff;background:rgba(255,255,255,.25);}

.msg-link{color:#007bff;text-decoration:none;word-break:break-all;}
.msg-link:hover{text-decoration:underline;}
.message.mine .msg-link{color:#fff;text-decoration:underline;}
.message.mine .msg-link:hover{color:rgba(255,255,255,.8);}

.msg-image{margin-top:6px;max-width:320px;border-radius:10px;overflow:hidden;border:1px solid var(--border);cursor:pointer;}
.msg-image img{width:100%;display:block;transition:transform var(--trans);}
.msg-image:hover img{transform:scale(1.02);}
.msg-file{
  margin-top:6px;display:inline-flex;align-items:center;gap:9px;
  background:var(--glass);border:1px solid var(--border);border-radius:9px;
  padding:9px 13px;cursor:pointer;transition:var(--trans);
  text-decoration:none;color:var(--texto-2);font-size:.82rem;
}
.msg-file:hover{background:rgba(255,122,89,.08);border-color:rgba(255,122,89,.25);}
.msg-actions{position:absolute;right:6px;top:3px;display:none;gap:3px;z-index:5;}
.message.mine .msg-actions{right:auto;left:6px;}
.message:hover .msg-actions{display:flex;}
.msg-action{
  background:rgba(13,17,23,.96);border:1px solid var(--border-2);border-radius:6px;
  padding:3px 7px;font-size:.72rem;cursor:pointer;color:var(--texto-3);
  transition:var(--trans);
}
.msg-action:hover{border-color:rgba(255,122,89,.4);color:var(--coral-2);}
.msg-reactions{display:flex;flex-wrap:wrap;gap:3px;margin-top:3px;}
.reaction-pill{
  background:var(--glass);border:1px solid var(--border);border-radius:11px;
  padding:2px 7px;font-size:.75rem;cursor:pointer;
  display:flex;align-items:center;gap:3px;transition:var(--trans);
}
.reaction-pill:hover{border-color:rgba(255,122,89,.35);background:rgba(255,122,89,.07);}
.reaction-pill.mine{background:rgba(255,122,89,.14);border-color:var(--coral);color:var(--coral-2);}
.msg-edit-area{margin-top:4px;}
.msg-edit-input{
  width:100%;border:1px solid rgba(255,122,89,.3);border-radius:8px;
  padding:8px 10px;font-size:.88rem;
  color:var(--branco);outline:none;resize:none;background:rgba(255,255,255,.06);
}
.msg-edit-btns{display:flex;gap:6px;margin-top:5px;}
.msg-edit-save{background:var(--grad-sunset);border:none;border-radius:7px;padding:5px 14px;color:#fff;font-size:.78rem;font-weight:700;cursor:pointer;}
.msg-edit-cancel{background:var(--glass);border:1px solid var(--border-2);border-radius:7px;padding:5px 12px;color:var(--texto-2);font-size:.78rem;cursor:pointer;}

/* ══ REACTION PICKER ══ */
.reaction-picker{
  position:absolute;bottom:calc(100% + 6px);right:0;
  background:rgba(13,17,23,.97);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1px solid var(--border-2);border-radius:12px;padding:8px;
  box-shadow:0 8px 32px rgba(0,0,0,.55);display:none;flex-wrap:wrap;
  gap:2px;width:240px;z-index:30;animation:fadeUp .15s ease;
}
.reaction-picker.open{display:flex;}
@keyframes fadeUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.rp-btn{
  background:none;border:none;cursor:pointer;font-size:1.2rem;width:32px;height:32px;
  border-radius:7px;display:flex;align-items:center;justify-content:center;transition:background var(--trans);
}
.rp-btn:hover{background:rgba(255,122,89,.14);}

/* ══ INPUT AREA (PILULA FLUTUANTE) ══ */
.input-area{
  padding:10px 20px 20px;flex-shrink:0;position:relative;background:transparent;
}
.emoji-picker{
  position:absolute;bottom:88px;left:16px;
  background:rgba(18,28,50,0.95);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  border:1px solid rgba(255,255,255,.15);border-radius:18px;
  box-shadow:0 12px 40px rgba(0,0,0,.6);display:none;
  flex-direction:column;width:340px;max-height:420px;z-index:20;
  animation:fadeUp .2s ease;overflow:hidden;
}
.emoji-picker.open{display:flex;}
.emoji-picker-tabs{
  display:flex;gap:2px;padding:7px 7px 0;
  border-bottom:1px solid rgba(255,255,255,.05);flex-shrink:0;overflow-x:auto;
}
.emoji-picker-tabs::-webkit-scrollbar{height:3px;}
.emoji-picker-tabs::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:3px;}
.emoji-tab{
  background:none;border:none;cursor:pointer;font-size:1.05rem;padding:4px 6px;
  border-radius:6px;transition:background var(--trans);flex-shrink:0;
}
.emoji-tab:hover,.emoji-tab.active{background:rgba(255,255,255,.1);}
.emoji-picker-search{
  margin:6px 8px 2px;border:1px solid rgba(255,255,255,.15);border-radius:10px;
  padding:8px 12px;font-size:.85rem;color:var(--branco);
  outline:none;background:rgba(0,0,0,.2);width:calc(100% - 16px);
}
.emoji-picker-search:focus{border-color:rgba(78,170,220,.5);}
.emoji-picker-search::placeholder{color:rgba(255,255,255,.3);}
.emoji-picker-grid{flex:1;overflow-y:auto;padding:6px;display:flex;flex-wrap:wrap;gap:2px;}
.emoji-btn{
  background:none;border:none;cursor:pointer;font-size:1.28rem;width:36px;height:36px;
  border-radius:8px;display:flex;align-items:center;justify-content:center;transition:background var(--trans);
}
.emoji-btn:hover{background:rgba(255,255,255,.1);}

.input-box{
  background:rgba(255,255,255,0.08);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  border:1px solid rgba(255,255,255,.15);
  border-radius:24px;overflow:visible;transition:all var(--trans);
  display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(0,0,0,0.3);
}
.input-box:focus-within{border-color:rgba(255,255,255,.2);box-shadow:0 12px 40px rgba(0,0,0,0.4), 0 0 0 1px rgba(255,255,255,.05);}
.input-toolbar{
  display:flex;align-items:center;gap:3px;padding:6px 12px 0;
  border-bottom:none;
}
.toolbar-btn{
  background:none;border:none;cursor:pointer;font-size:1rem;color:rgba(255,255,255,.5);
  width:32px;height:32px;display:flex;align-items:center;justify-content:center;
  border-radius:8px;transition:var(--trans);
}
.toolbar-btn:hover{color:#fff;background:rgba(255,255,255,.08);}
.input-row{display:flex;align-items:flex-end;gap:10px;padding:6px 14px 12px;}
#msg-input{
  flex:1;border:none;outline:none;resize:none;background:transparent;
  font-size:.9rem;color:var(--branco);
  line-height:1.5;min-height:24px;max-height:140px;overflow-y:auto;
}
#msg-input::placeholder{color:var(--texto-3);}
.send-btn{
  background:var(--grad-sunset);border:none;border-radius:9px;
  width:36px;height:36px;display:flex;align-items:center;justify-content:center;
  cursor:pointer;color:#fff;font-size:1rem;transition:var(--trans);
  box-shadow:0 2px 10px rgba(232,123,176,.3);flex-shrink:0;
}
.send-btn:hover{transform:scale(1.08);box-shadow:0 4px 16px rgba(232,123,176,.45);}
.upload-preview{display:none;flex-wrap:wrap;gap:8px;padding:7px 10px;border-bottom:1px solid var(--border);}
.upload-preview.active{display:flex;}
.preview-item{position:relative;background:var(--glass);border:1px solid var(--border);border-radius:7px;overflow:hidden;}
.preview-item img{width:60px;height:60px;object-fit:cover;display:block;}
.preview-name{padding:6px 8px;font-size:.7rem;color:var(--texto-2);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.preview-remove{
  position:absolute;top:2px;right:2px;background:rgba(0,0,0,.6);border:none;border-radius:50%;
  width:16px;height:16px;cursor:pointer;color:#fff;font-size:.70rem;
  display:flex;align-items:center;justify-content:center;
}

/* â•â• FÃ“RUM â•â• */
.forum-view{flex:1;overflow:hidden;display:flex;flex-direction:column;}
.forum-list{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:10px;}
.forum-new-btn{
  background:var(--grad-sunset);border:none;border-radius:11px;padding:10px 22px;
  color:#fff;font-size:.87rem;font-weight:700;cursor:pointer;
  display:flex;align-items:center;gap:7px;
  transition:var(--trans);box-shadow:0 2px 12px rgba(232,123,176,.25);align-self:flex-start;margin-bottom:4px;
}
.forum-new-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(232,123,176,.35);}
.topic-card{
  background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:13px;
  padding:14px 16px;cursor:pointer;transition:var(--trans);display:flex;gap:12px;align-items:flex-start;
}
.topic-card:hover{border-color:rgba(255,122,89,.28);transform:translateY(-2px);box-shadow:0 6px 24px rgba(0,0,0,.4);}
.topic-votes{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:38px;}
.vote-btn{background:none;border:none;cursor:pointer;font-size:.95rem;color:rgba(255,255,255,.3);transition:color var(--trans);line-height:1;}
.vote-btn:hover{color:var(--coral);}
.vote-count{font-size:.82rem;font-weight:700;color:var(--texto-2);}
.topic-content{flex:1;min-width:0;}
.topic-title{font-size:.95rem;font-weight:700;color:var(--branco);margin-bottom:5px;}
.topic-preview{
  font-size:.82rem;color:rgba(255,255,255,.4);line-height:1.5;
  overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
}
.topic-meta{display:flex;align-items:center;gap:10px;margin-top:9px;flex-wrap:wrap;}
.topic-tag{
  background:rgba(255,122,89,.10);border:1px solid rgba(255,122,89,.22);
  color:var(--coral-2);padding:2px 9px;border-radius:9px;font-size:.7rem;
  font-weight:600;
}
/* Tags de serviÃ§o no fÃ³rum herdam cor dos servico-tag */
.topic-tag.tag-aereo{background:rgba(78,170,220,.15);color:#80C4F0;border-color:rgba(78,170,220,.3);}
.topic-tag.tag-hospedagem{background:rgba(155,143,221,.15);color:#B8AAEE;border-color:rgba(155,143,221,.3);}
.topic-tag.tag-pacote{background:rgba(232,123,176,.15);color:#F0A8CC;border-color:rgba(232,123,176,.3);}
.topic-tag.tag-seguro{background:rgba(60,200,138,.12);color:#60D890;border-color:rgba(60,200,138,.25);}
.topic-tag.tag-transfer{background:rgba(255,200,60,.12);color:#FFD080;border-color:rgba(255,200,60,.25);}
.topic-tag.tag-concierge{background:rgba(232,160,80,.15);color:#F0C070;border-color:rgba(232,160,80,.3);}
.topic-tag.tag-consultoria{background:rgba(180,200,100,.12);color:#C8D880;border-color:rgba(180,200,100,.25);}
.topic-tag.tag-roteiro{background:rgba(100,180,220,.12);color:#80C8E8;border-color:rgba(100,180,220,.25);}
.topic-tag.tag-passeios{background:rgba(200,120,220,.12);color:#D890E8;border-color:rgba(200,120,220,.25);}
.topic-tag.tag-milhas{background:rgba(255,180,50,.12);color:#FFB830;border-color:rgba(255,180,50,.25);}
.topic-tag.tag-chip{background:rgba(80,200,180,.12);color:#60D8C8;border-color:rgba(80,200,180,.25);}
/* optgroup styling */
.modal-select optgroup{color:rgba(255,255,255,.4);font-size:.72rem;font-weight:700;letter-spacing:.05em;}
.modal-select option{color:rgba(255,255,255,.85);background:#1a1f2e;}
.topic-stats{font-size:.72rem;color:rgba(255,255,255,.55);}
.topic-author{margin-left:auto;font-size:.72rem;color:rgba(255,255,255,.55);display:flex;align-items:center;gap:5px;}
.topic-detail{flex:1;display:flex;flex-direction:column;overflow:hidden;}
.topic-detail-header{padding:14px 18px;border-bottom:1px solid var(--border);background:rgba(10,13,20,.5);flex-shrink:0;}
.topic-back-btn{
  background:none;border:none;cursor:pointer;display:flex;align-items:center;gap:5px;
  font-size:.83rem;color:var(--coral);font-weight:600;
  margin-bottom:9px;transition:gap var(--trans);
}
.topic-back-btn:hover{gap:9px;}
.topic-detail-title{font-size:1.25rem;font-weight:700;color:var(--branco);margin-bottom:5px;}
.topic-detail-body{font-size:.9rem;color:var(--texto-2);line-height:1.6;margin-top:7px;}
.replies-area{flex:1;overflow-y:auto;padding:14px 18px;display:flex;flex-direction:column;gap:10px;}
.reply-card{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:11px;padding:12px 14px;}
.reply-header{display:flex;align-items:center;gap:9px;margin-bottom:7px;}
.reply-avatar{
  width:30px;height:30px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-weight:700;font-size:.72rem;flex-shrink:0;
}
.reply-name{font-weight:700;font-size:.84rem;color:var(--branco);}
.reply-time{font-size:.74rem;color:rgba(255,255,255,.52);margin-left:auto;}
.reply-text{font-size:.85rem;color:var(--texto-2);line-height:1.55;}
.reply-input-area{padding:10px 18px 14px;flex-shrink:0;border-top:1px solid var(--border);}
.reply-box{display:flex;gap:9px;align-items:flex-end;}
#reply-input{
  flex:1;border:1px solid var(--border-2);border-radius:11px;padding:9px 13px;
  font-size:.88rem;color:var(--branco);outline:none;resize:none;
  background:rgba(255,255,255,.05);min-height:42px;max-height:100px;transition:border-color var(--trans);
}
#reply-input:focus{border-color:rgba(255,122,89,.35);}
#reply-input::placeholder{color:var(--texto-3);}

/* â•â• MODAIS â•â• */
.modal-overlay{
  position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.78);
  display:none;align-items:center;justify-content:center;
}
.modal-overlay.open{display:flex;}
.modal{
  background:rgba(20,27,44,.99);
  border:1px solid var(--border-2);border-radius:18px;padding:26px 26px 22px;
  width:460px;max-width:95vw;
  box-shadow:0 8px 32px rgba(0,0,0,.6);
}
.modal-title{font-size:1rem;font-weight:700;color:var(--branco);margin-bottom:16px;display:flex;align-items:center;gap:9px;}
.modal-close{margin-left:auto;background:none;border:none;cursor:pointer;font-size:1.1rem;color:var(--texto-3);transition:color var(--trans);}
.modal-close:hover{color:var(--coral);}
.modal-field{margin-bottom:14px;}
.modal-label{display:block;font-size:.72rem;font-weight:700;color:var(--texto-3);margin-bottom:6px;letter-spacing:.06em;text-transform:uppercase;}
.modal-input,.modal-textarea,.modal-select{
  width:100%;border:1px solid rgba(255,255,255,.13);border-radius:8px;
  padding:7px 10px;font-size:.85rem;
  color:#EFF6FF;outline:none;background:rgba(255,255,255,.06);
  transition:border-color var(--trans);box-sizing:border-box;
}
.modal-textarea{resize:vertical;min-height:88px;}
.modal-input:focus,.modal-textarea:focus,.modal-select:focus{border-color:rgba(255,122,89,.38);}
.modal-input::placeholder,.modal-textarea::placeholder{color:var(--texto-3);}
.modal-select option{background:#1C2333;color:var(--branco);}
select,
.modal-select,
.hw-select,
.select-status {
  color-scheme: dark;
}
select option,
.modal-select option,
.hw-select option,
.select-status option {
  background-color: #1C2333;
  color: #F0F6FF;
}
select option:checked,
.modal-select option:checked,
.hw-select option:checked,
.select-status option:checked {
  background-color: #2D3A55;
  color: #F0A8CC;
}
.icon-picker{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px;}
.icon-option{
  background:var(--glass);border:1px solid var(--border);border-radius:7px;
  width:36px;height:36px;display:flex;align-items:center;justify-content:center;
  font-size:1.15rem;cursor:pointer;transition:var(--trans);
}
.icon-option:hover,.icon-option.selected{border-color:var(--coral);background:rgba(255,122,89,.12);}
.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px;}

/* â•â• MODAL FLEX â€” scroll interno, dropdowns livres â•â• */
.modal-flex{
  padding:0 !important;
  display:flex;flex-direction:column;
  overflow:hidden;
}
.modal-flex .modal-title{
  padding:20px 24px 16px !important;
  margin-bottom:0 !important;
  flex-shrink:0;
  border-bottom:1px solid var(--border);
}
.modal-flex .modal-scroll{
  overflow-y:auto;flex:1;min-height:0;
  padding:20px 24px 20px;
  display:flex;flex-direction:column;gap:16px;
}
.modal-flex .modal-scroll .modal-field{margin-bottom:0;}
.modal-flex .modal-scroll label.modal-label{display:block;margin-bottom:6px;}
.modal-flex .modal-scroll input.modal-input,
.modal-flex .modal-scroll select.modal-select,
.modal-flex .modal-scroll textarea.modal-textarea{display:block;width:100%;}
.modal-flex .modal-actions{
  flex-shrink:0;
  border-top:1px solid var(--border);
  padding:14px 24px 18px !important;
  margin-top:0 !important;
}
.btn-cancel{
  background:rgba(255,255,255,.07);border:1px solid var(--border-2);border-radius:9px;
  padding:9px 18px;font-size:.85rem;font-weight:600;
  color:var(--texto-2);cursor:pointer;transition:var(--trans);
}
.btn-cancel:hover{background:rgba(255,255,255,.11);color:var(--branco);}
.btn-save{
  background:var(--grad-sunset);border:none;border-radius:9px;padding:9px 22px;
  font-size:.85rem;font-weight:700;color:#fff;
  cursor:pointer;transition:var(--trans);box-shadow:0 2px 10px rgba(232,123,176,.25);
}
.btn-save:hover{transform:translateY(-1px);box-shadow:0 4px 18px rgba(232,123,176,.4);}
.config-note{
  background:rgba(255,184,76,.07);border:1px solid rgba(255,184,76,.2);border-radius:9px;
  padding:11px 13px;font-size:.8rem;color:#FFD580;line-height:1.5;margin-bottom:14px;
}

/* â•â• PERFIL DROPDOWN â•â• */
.profile-dropdown{
  position:fixed;z-index:100;right:14px;top:62px;width:250px;
  background:rgba(13,17,23,.97);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  border:1px solid var(--border-2);border-radius:15px;
  box-shadow:0 16px 48px rgba(0,0,0,.65);display:none;overflow:hidden;
}
.profile-dropdown.open{display:block;animation:fadeUp .2s ease;}
.profile-header{
  background:var(--grad-sunset);padding:18px 14px 13px;
  display:flex;flex-direction:column;align-items:center;gap:5px;
}
.profile-avatar-big{
  width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.22);
  border:2px solid rgba(255,255,255,.45);display:flex;align-items:center;justify-content:center;
  color:#fff;font-weight:700;font-size:1.2rem;
  cursor:pointer;transition:var(--trans);position:relative;overflow:hidden;
}
.profile-avatar-big img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
.profile-avatar-big:hover{transform:scale(1.05);}
.profile-name-edit{color:#fff;font-weight:700;font-size:.95rem;text-align:center;}
.profile-email{color:rgba(255,255,255,.75);font-size:.74rem;}
.profile-menu-item{
  display:flex;align-items:center;gap:9px;padding:10px 14px;cursor:pointer;
  font-size:.84rem;color:var(--texto-2);
  transition:background var(--trans);border-bottom:1px solid var(--border);
}
.profile-menu-item:last-child{border-bottom:none;}
.profile-menu-item:hover{background:rgba(255,122,89,.07);color:var(--branco);}

/* â•â• NOTIFICAÃ‡Ã•ES â•â• */
.notif-badge{
  position:absolute;top:-5px;right:-6px;min-width:18px;height:18px;border-radius:9px;
  background:linear-gradient(135deg,#C45A90,#E87BB0);
  color:#fff;font-size:.70rem;font-weight:800;
  display:none;align-items:center;justify-content:center;
  border:2px solid var(--bg);padding:0 4px;
  box-shadow:0 0 0 2px rgba(232,123,176,.4),0 2px 8px rgba(196,90,144,.5);
  animation:badgePulse 2s ease-in-out infinite;
}
@keyframes badgePulse{
  0%,100%{box-shadow:0 0 0 2px rgba(232,123,176,.4),0 2px 8px rgba(196,90,144,.5);}
  50%{box-shadow:0 0 0 5px rgba(232,123,176,.0),0 4px 14px rgba(196,90,144,.6);}
}
.notif-badge.show{display:flex;}

/* â”€â”€ Dropdown â”€â”€ */
.notif-dropdown{
  position:fixed;z-index:1001;right:54px;top:62px;width:340px;
  background:rgba(13,17,23,.98);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);
  border:1px solid rgba(232,123,176,.18);border-radius:18px;
  box-shadow:0 20px 60px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.04);
  display:none;flex-direction:column;overflow:hidden;
  max-height:82vh;
}
.notif-dropdown.open{display:flex !important;animation:fadeUp .2s ease;}

/* â”€â”€ Header com gradiente â”€â”€ */
.notif-header{
  background:linear-gradient(135deg,rgba(196,90,144,.18) 0%,rgba(155,143,221,.12) 100%);
  border-bottom:1px solid rgba(232,123,176,.15);
  padding:14px 16px 12px;flex-shrink:0;
}
.notif-header-top{
  display:flex;align-items:center;justify-content:space-between;margin-bottom:2px;
}
.notif-header-title{
  display:flex;align-items:center;gap:8px;
  font-size:.95rem;font-weight:700;color:var(--branco);
}
.notif-header-icon{
  width:28px;height:28px;border-radius:8px;
  background:linear-gradient(135deg,#C45A90,#E87BB0);
  display:flex;align-items:center;justify-content:center;font-size:.85rem;
  box-shadow:0 2px 8px rgba(196,90,144,.4);
}
.notif-header-sub{font-size:.74rem;color:var(--texto-3);}
.notif-header-actions{display:flex;gap:6px;align-items:center;}
.notif-clear{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);
  border-radius:7px;cursor:pointer;font-size:.72rem;color:var(--texto-3);
  padding:4px 9px;transition:all var(--trans);
}
.notif-clear:hover{background:rgba(232,123,176,.12);border-color:rgba(232,123,176,.3);color:var(--coral-2);}

/* â”€â”€ Tabs â”€â”€ */
.notif-tabs{
  display:flex;border-bottom:1px solid var(--border);
  background:rgba(255,255,255,.02);flex-shrink:0;
}
.notif-tab{
  flex:1;padding:9px 0;font-size:.79rem;font-weight:700;
  background:none;border:none;cursor:pointer;color:var(--texto-3);
  transition:color var(--trans);position:relative;
}
.notif-tab.active{color:var(--coral-2);}
.notif-tab.active::after{
  content:'';position:absolute;bottom:0;left:15%;width:70%;height:2px;
  background:linear-gradient(90deg,#C45A90,#E87BB0);border-radius:2px 2px 0 0;
}
.notif-tab-count{
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#C45A90,#E87BB0);
  color:#fff;border-radius:8px;font-size:.68rem;min-width:16px;height:16px;
  padding:0 4px;margin-left:4px;
}

/* â”€â”€ Lista â”€â”€ */
#notif-list{overflow-y:auto;flex:1;}
#notif-list::-webkit-scrollbar{width:3px;}
#notif-list::-webkit-scrollbar-thumb{background:rgba(232,123,176,.2);border-radius:3px;}

/* â”€â”€ Grupo de data â”€â”€ */
.notif-group-label{
  padding:8px 16px 4px;font-size:.66rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.1em;
  color:rgba(255,255,255,.28);
  background:rgba(255,255,255,.02);
  border-bottom:1px solid var(--border);
}

/* â”€â”€ Item â”€â”€ */
.notif-item{
  display:flex;align-items:flex-start;gap:11px;
  padding:11px 14px;
  border-bottom:1px solid var(--border);
  border-left:2px solid transparent;
  transition:background var(--trans),border-left-color var(--trans),padding-left var(--trans);
  cursor:pointer;position:relative;
}
.notif-item:hover{
  background:rgba(232,123,176,.06);
  border-left-color:var(--coral);
  padding-left:16px;
}
.notif-item:last-child{border-bottom:none;}
.notif-item.unread::before{
  content:'';position:absolute;top:14px;right:14px;
  width:6px;height:6px;border-radius:50%;
  background:linear-gradient(135deg,#C45A90,#E87BB0);
  box-shadow:0 0 6px rgba(232,123,176,.6);
}

/* â”€â”€ Ãcone colorido por categoria â”€â”€ */
.notif-icon{
  width:32px;height:32px;border-radius:9px;flex-shrink:0;margin-top:1px;
  display:flex;align-items:center;justify-content:center;font-size:.88rem;
}
.notif-icon-viagem  {background:rgba(78,170,220,.12);color:#80C4F0;}
.notif-icon-crise   {background:rgba(255,80,80,.12);color:#FF9090;}
.notif-icon-concierge{background:rgba(155,143,221,.14);color:#B8AAEE;}
.notif-icon-ia      {background:rgba(60,200,138,.12);color:#60D890;}
.notif-icon-portal  {background:rgba(232,160,80,.12);color:#F0C070;}
.notif-icon-chat    {background:rgba(232,123,176,.12);color:#F0A8CC;}
.notif-icon-sistema {background:rgba(255,255,255,.07);color:var(--texto-3);}

/* â”€â”€ ConteÃºdo do item â”€â”€ */
.notif-body{flex:1;min-width:0;}
.notif-cat{
  font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;
  margin-bottom:2px;
}
.notif-cat-viagem   {color:#80C4F0;}
.notif-cat-crise    {color:#FF9090;}
.notif-cat-concierge{color:#B8AAEE;}
.notif-cat-ia       {color:#60D890;}
.notif-cat-portal   {color:#F0C070;}
.notif-cat-chat     {color:var(--coral-2);}
.notif-cat-sistema  {color:var(--texto-3);}
.notif-text{font-size:.92rem;color:rgba(255,255,255,.75);line-height:1.5;word-break:break-word;font-weight:400;}
.notif-item.unread .notif-text{color:var(--branco);font-weight:600;font-size:.95rem;}
.notif-time{font-size:.72rem;color:rgba(255,255,255,.38);margin-top:3px;}

/* â”€â”€ Chevron â”€â”€ */
.notif-chevron{color:rgba(255,255,255,.2);font-size:.7rem;flex-shrink:0;margin-top:6px;transition:color var(--trans);}
.notif-item:hover .notif-chevron{color:var(--coral-2);}

/* â”€â”€ Empty â”€â”€ */
.notif-empty{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:36px 20px;gap:10px;color:var(--texto-3);
}
.notif-empty-icon{font-size:2rem;opacity:.4;}
.notif-empty-text{font-size:.84rem;text-align:center;line-height:1.5;}

/* â”€â”€ RodapÃ© "Ver todas" â”€â”€ */
.notif-footer{
  border-top:1px solid var(--border);padding:10px 14px;flex-shrink:0;
  background:rgba(255,255,255,.02);
}
.notif-footer-btn{
  width:100%;background:none;border:1px solid rgba(232,123,176,.2);
  border-radius:9px;padding:8px;cursor:pointer;
  font-size:.78rem;font-weight:600;color:var(--coral-2);
  transition:all var(--trans);
}
.notif-footer-btn:hover{background:rgba(232,123,176,.1);border-color:rgba(232,123,176,.4);}
/* â•â• BANNER NOTIFICAÃ‡ÃƒO â•â• */
.notif-banner{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:500;background:rgba(13,17,23,.97);backdrop-filter:blur(20px);border:1px solid rgba(255,122,89,.35);border-radius:14px;padding:12px 18px;display:flex;align-items:center;gap:12px;box-shadow:0 8px 32px rgba(0,0,0,.5);animation:fadeUp .3s ease;white-space:nowrap;}
.notif-banner-text{font-size:.82rem;color:var(--texto-2);}
.notif-banner-btn{background:var(--coral);color:#fff;border:none;border-radius:8px;padding:6px 14px;font-size:.78rem;font-weight:700;cursor:pointer;}
.notif-banner-close{background:none;border:none;color:var(--texto-3);cursor:pointer;font-size:.9rem;padding:2px 4px;}
.ch-unread{background:var(--coral);color:#fff;font-size:.68rem;font-weight:800;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px;flex-shrink:0;margin-left:auto;}
.channel-item.has-unread .ch-name{color:var(--branco);font-weight:700;}
.mention-dropdown{position:fixed;z-index:9999;background:rgba(13,17,23,.97);backdrop-filter:blur(20px);border:1px solid var(--border-2);border-radius:12px;box-shadow:0 12px 36px rgba(0,0,0,.6);min-width:220px;max-height:220px;overflow-y:auto;display:none;}
.mention-dropdown.open{display:block;animation:fadeUp .15s ease;}
.mention-item{display:flex;align-items:center;gap:9px;padding:8px 12px;cursor:pointer;transition:background var(--trans);}
.mention-item:hover,.mention-item.active{background:rgba(255,122,89,.1);}
.mention-avatar{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.70rem;font-weight:700;flex-shrink:0;}
.mention-name{font-size:.82rem;color:var(--branco);}
.mention-tag{color:var(--coral);font-weight:700;}

/* â•â• LIGHTBOX â•â• */
.lightbox{position:fixed;inset:0;z-index:300;background:rgba(0,0,0,.88);display:none;align-items:center;justify-content:center;}
.lightbox.open{display:flex;}
.lightbox img{max-width:90vw;max-height:90vh;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.6);}
.lightbox-close{
  position:absolute;top:18px;right:22px;background:rgba(255,255,255,.15);border:none;cursor:pointer;
  color:#fff;font-size:1.4rem;width:38px;height:38px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;transition:background var(--trans);
}
.lightbox-close:hover{background:rgba(255,255,255,.28);}

/* â•â• EMPTY â•â• */
.empty-state{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:11px;padding:40px;color:var(--texto-3);text-align:center;
}
.empty-icon{font-size:3rem;margin-bottom:4px;opacity:.4;}
.empty-title{font-size:.95rem;font-weight:700;color:var(--texto-2);}
.empty-desc{font-size:.83rem;line-height:1.5;max-width:280px;}

/* â•â• TOASTS â•â• */
.toast-container{position:fixed;bottom:22px;right:22px;z-index:400;display:flex;flex-direction:column;gap:7px;}
.toast{
  background:rgba(16,22,38,.97);border:1px solid var(--border-2);border-radius:11px;
  padding:11px 15px;font-size:.83rem;color:var(--texto);
  box-shadow:0 8px 26px rgba(0,0,0,.55);display:flex;align-items:center;gap:9px;max-width:275px;
  animation:slideIn .3s cubic-bezier(.2,1,.3,1) both;
}
.toast.success{border-left:3px solid #3fb950;}
.toast.error{border-left:3px solid #ff5555;}
.toast.info{border-left:3px solid var(--coral);}
@keyframes slideIn{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}

/* â•â• SIDEBAR BOTÃ•ES FERRAMENTAS â•â• */
/* estilos consolidados na seção CLIENTES / CRM abaixo */


/* â”€â”€ TYPING INDICATOR â”€â”€ */
.typing-dots{display:inline-flex;gap:4px;align-items:flex-end;flex-shrink:0;padding-top:6px;overflow:visible}
.typing-dots span{
  width:5px;height:5px;border-radius:50%;
  background:var(--texto-3);
  animation:typingBounce 1.2s ease-in-out infinite;
  transform-origin:center center;
  display:block;flex-shrink:0;
}
.typing-dots span:nth-child(2){animation-delay:.2s}
.typing-dots span:nth-child(3){animation-delay:.4s}
@keyframes typingBounce{
  0%,100%{transform:translateY(0) scale(1);opacity:.5}
  40%{transform:translateY(-6px) scale(1.2);opacity:1}
  60%{transform:translateY(-3px) scale(1.05);opacity:.9}
}
#typing-indicator{transition:opacity .2s ease;overflow:visible;}
#typing-indicator.saindo{opacity:0;}

/* â”€â”€ CHECKLIST â”€â”€ */
.ckl-fase{background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:8px;transition:border-color .2s}
.ckl-fase.completa{border-color:rgba(60,200,138,.35)}
.ckl-fase.bloqueada{opacity:.55}
.ckl-fase-header{display:flex;align-items:center;gap:10px;padding:11px 14px;cursor:pointer;transition:background .15s}
.ckl-fase-header:hover{background:rgba(255,255,255,.04)}
.ckl-fase-progbar{height:2px;background:rgba(255,255,255,.06)}
.ckl-fase-body{padding:6px 14px 12px}
.vgm-tabs{display:flex;gap:2px;padding:12px 14px 0;border-bottom:1px solid var(--border);flex-shrink:0;overflow-x:auto;scrollbar-width:none;}
.vgm-tabs::-webkit-scrollbar{display:none;}
.vgm-tab{padding:7px 14px;font-size:.84rem;font-weight:600;color:var(--texto-3);border:none;background:transparent;border-radius:8px 8px 0 0;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s;white-space:nowrap}
.vgm-tab:hover{color:var(--texto-2)}
.vgm-tab.active{color:var(--branco);border-bottom-color:var(--coral)}
.vgm-tab-panel{display:none;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:16px 14px;scrollbar-width:thin;scrollbar-color:rgba(232,123,176,.2) transparent;}
.vgm-tab-panel::-webkit-scrollbar{width:3px;}
.vgm-tab-panel::-webkit-scrollbar-thumb{background:rgba(232,123,176,.2);border-radius:3px;}
.vgm-tab-panel::-webkit-scrollbar-track{background:transparent;}
.vgm-tab-panel.active{display:flex;flex-direction:column;gap:16px;}

@media(max-width:640px){
  .sidebar{width:54px;min-width:54px;}
  .sidebar .category-name,.sidebar .ch-name,.sidebar-user-info{display:none;}
  .sidebar-bottom{justify-content:center;padding:8px;}
  .topbar-channel-desc{display:none;}
  .topbar-logo{width:54px;min-width:54px;}
}

/* â”€â”€ CLIENTES / CRM â”€â”€ */
.sidebar-divider{margin:8px 10px;border:none;border-top:1px solid rgba(255,255,255,.07);}
.sidebar-section-label{
  padding:10px 16px 5px;
  font-family:'Inter',sans-serif;font-size:.68rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.13em;color:rgba(255,255,255,.45);
}
.sidebar-crm-btn{
  display:flex;align-items:center;gap:10px;padding:9px 16px;cursor:pointer;
  font-family:'Inter',sans-serif;font-size:.93rem;font-weight:500;
  color:rgba(255,255,255,.80);transition:var(--trans);
  border-radius:9px;margin:1px 8px;
}
.sidebar-crm-btn span:first-child{font-size:1.1rem;flex-shrink:0;}
.sidebar-crm-btn:hover{background:rgba(255,255,255,.10);color:rgba(255,255,255,.96);}
.sidebar-crm-btn.active{
  background:linear-gradient(90deg,rgba(255,122,89,.18),rgba(255,179,71,.08));
  color:var(--coral-claro);font-weight:600;
  border-left:2px solid var(--coral);
}

/* Upload IA â€” Proposta */
/* ── WhatsApp / Atendimento ── */

.ia-upload-area{border:2px dashed rgba(155,143,221,.35);border-radius:14px;padding:20px;
  text-align:center;cursor:pointer;transition:var(--trans);background:rgba(155,143,221,.04);position:relative;}
.ia-upload-area:hover,.ia-upload-area.drag{border-color:rgba(155,143,221,.7);background:rgba(155,143,221,.08);}
.ia-upload-icon{font-size:2rem;margin-bottom:6px;}
.ia-upload-text{font-size:.84rem;color:var(--texto-3);line-height:1.5;}
.ia-status{margin-top:8px;font-size:.8rem;color:var(--texto-3);
  display:flex;align-items:center;justify-content:center;gap:8px;}
.ia-preview-img{width:100%;max-height:160px;object-fit:contain;border-radius:8px;margin-top:8px;display:none;}
.prop-bloco{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px 14px;}
.prop-bloco-header{display:flex;align-items:center;gap:8px;margin-bottom:10px;}
.prop-bloco-del{margin-left:auto;background:none;border:none;cursor:pointer;font-size:.8rem;color:rgba(255,80,80,.6);transition:color var(--trans);}
.prop-bloco-del:hover{color:#FF6060;}
.prop-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.prop-field-full{grid-column:1/-1;}
.prop-label{display:block;font-size:.7rem;font-weight:600;color:var(--texto-3);margin-bottom:3px;letter-spacing:.04em;}
.prop-input,.prop-textarea{width:100%;border:1px solid rgba(255,255,255,.15);border-radius:7px;padding:6px 9px;
  font-size:.82rem;color:var(--branco);outline:none;
  background:rgba(255,255,255,.06);transition:border-color var(--trans);box-sizing:border-box;}
.prop-input:focus,.prop-textarea:focus{border-color:rgba(155,143,221,.5);}
.prop-textarea{resize:vertical;min-height:52px;}
.prop-add-btns{display:flex;flex-wrap:wrap;gap:6px;}
.prop-add-btn{background:rgba(255,255,255,.04);border:1px dashed rgba(255,255,255,.15);border-radius:8px;
  padding:5px 12px;font-size:.78rem;color:var(--texto-3);
  cursor:pointer;transition:var(--trans);}
.prop-add-btn:hover{border-color:rgba(155,143,221,.5);color:#B8AAEE;}
.claude-config-note{background:rgba(66,133,244,.08);border:1px solid rgba(66,133,244,.25);
  border-radius:10px;padding:12px 14px;font-size:.82rem;
  color:#A0C0E8;line-height:1.5;margin-bottom:16px;}

@media(max-width:640px){
  .sidebar{width:56px;min-width:56px;}
  .sidebar .category-name,.sidebar .ch-name,.sidebar-user-info{display:none;}
  .sidebar-bottom{justify-content:center;padding:8px;}
  .topbar-channel-desc{display:none;}
  .topbar-logo{width:56px;min-width:56px;}
  .prop-fields{grid-template-columns:1fr;}
}


/* â”€â”€ HANDOVER â”€â”€ */
.handover-view{flex:1;display:flex;flex-direction:column;overflow:hidden;}
.handover-header{padding:16px 24px;border-bottom:1px solid rgba(232,119,154,.15);background:rgba(8,12,24,.4);flex-shrink:0;}
.handover-title{font-size:1.1rem;font-weight:700;color:var(--texto);display:flex;align-items:center;gap:10px;}
.handover-body{flex:1;overflow:hidden;display:flex;flex-direction:column;}
.handover-scroll{flex:1;overflow-y:auto;display:flex;flex-direction:column;}

/* KPIs */
.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;padding:16px 24px;border-bottom:1px solid rgba(232,119,154,.1);}
.kpi-card{background:linear-gradient(145deg, rgba(255,255,255,0.03), rgba(0,0,0,0.1));border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px;text-align:center;transition:var(--trans);box-shadow:inset 0 1px 1px rgba(255,255,255,0.05), 0 4px 10px rgba(0,0,0,0.1);}
.kpi-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px var(--sombra);border-color:rgba(255,255,255,0.15);}
.kpi-num{font-size:2rem;font-weight:800;background:var(--grad-sunset);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:4px;line-height:1;}
.kpi-label{font-size:.75rem;font-weight:600;color:var(--texto-3);text-transform:uppercase;letter-spacing:.08em;}

/* Formulário registro */
.handover-form-wrap{padding:24px;border-bottom:1px solid var(--border);background:rgba(10,13,20,.5);}
.handover-form-title{font-size:1.2rem;font-weight:800;color:var(--texto);margin-bottom:20px;display:flex;align-items:center;gap:8px;}
.hw-form-layout{display:flex;flex-direction:column;gap:20px;}
.hw-form-section{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);border-radius:16px;padding:20px;}
.hw-section-title{font-size:.85rem;font-weight:700;color:var(--lavanda);text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px;display:flex;align-items:center;gap:6px;}
.hw-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;}
.hw-field{display:flex;flex-direction:column;gap:6px;}
.hw-field.full{grid-column:1/-1;}
.hw-label{font-size:.75rem;font-weight:700;color:var(--texto-2);text-transform:uppercase;letter-spacing:.06em;}
.hw-input,.hw-select,.hw-textarea{border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:10px 14px;font-size:.9rem;color:var(--texto);outline:none;background:rgba(0,0,0,.2);transition:border-color var(--trans),box-shadow var(--trans);width:100%;}
.hw-input:focus,.hw-select:focus,.hw-textarea:focus{border-color:var(--lavanda);box-shadow:0 0 0 3px rgba(89,120,217,.2);}
.hw-textarea{resize:vertical;min-height:80px;line-height:1.5;}

/* Status pills */
.status-pills{display:flex;flex-wrap:wrap;gap:8px;}
.status-pill{padding:8px 16px;border-radius:10px;font-size:.8rem;font-weight:700;cursor:pointer;border:1px solid transparent;transition:var(--trans);background:rgba(255,255,255,.05);color:var(--texto-3);}
.status-pill:hover{background:rgba(255,255,255,.1);color:var(--texto);}
.status-pill.selected{box-shadow:0 4px 12px rgba(0,0,0,.2);}
.sp-prospecto.selected{background:#1E40AF;color:#fff;border-color:#60A5FA;}
.sp-em-atendimento.selected{background:#EA580C;color:#fff;border-color:#FDBA74;}
.sp-cotacao-enviada.selected{background:#D97706;color:#fff;border-color:#FCD34D;}
.sp-aguardando-pagamento.selected{background:#7C3AED;color:#fff;border-color:#C4B5FD;}
.sp-confirmado.selected{background:#059669;color:#fff;border-color:#6EE7B7;}
.sp-cancelado.selected{background:#DC2626;color:#fff;border-color:#FCA5A5;}
.sp-follow-up.selected{background:var(--rosa);color:#fff;border-color:#FBCFE8;}

.hw-form-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid rgba(255,255,255,.05);}
.btn-registrar{background:var(--grad-sunset);border:none;border-radius:12px;padding:12px 32px;color:#fff;font-size:1rem;font-weight:800;cursor:pointer;transition:var(--trans);box-shadow:0 4px 15px rgba(232,119,154,.3);}
.btn-registrar:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(232,119,154,.5);}
.btn-registrar:disabled{opacity:.5;cursor:not-allowed;transform:none;}ento{background:#F5F3FF;color:#6D28D9;border-color:#DDD6FE;}
.sp-aguardando-pagamento.selected{background:#7C3AED;color:#fff;border-color:#7C3AED;}
.sp-confirmado{background:#ECFDF5;color:#065F46;border-color:#A7F3D0;}
.sp-confirmado.selected{background:#059669;color:#fff;border-color:#059669;}
.sp-cancelado{background:#FEF2F2;color:#991B1B;border-color:#FECACA;}
.sp-cancelado.selected{background:#DC2626;color:#fff;border-color:#DC2626;}
.sp-follow-up{background:rgba(232,119,154,.1);color:var(--rosa-escuro);border-color:rgba(232,119,154,.3);}
.sp-follow-up.selected{background:var(--rosa);color:#fff;border-color:var(--rosa);}

.btn-registrar{background:var(--grad-sunset);border:none;border-radius:10px;padding:10px 24px;color:#fff;font-size:.88rem;font-weight:700;cursor:pointer;transition:var(--trans);box-shadow:0 2px 10px var(--sombra);margin-top:4px;}
.btn-registrar:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(232,119,154,.4);}
.btn-registrar:disabled{opacity:.5;cursor:not-allowed;transform:none;}

/* Logs */
.hw-logs{padding:16px 24px;display:flex;flex-direction:column;gap:10px;}
.hw-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:4px;}
.hw-search{flex:1;min-width:160px;border:1.5px solid rgba(255,255,255,.1);border-radius:9px;padding:7px 12px;font-size:.85rem;color:var(--texto);outline:none;background:rgba(255,255,255,.06);}
.hw-search:focus{border-color:rgba(255,122,89,.4);}
.hw-filter-btn{padding:5px 12px;border-radius:20px;font-size:.75rem;font-weight:700;cursor:pointer;border:1.5px solid var(--cinza-2);background:rgba(255,255,255,.05);color:var(--texto-3);transition:var(--trans);}
.hw-filter-btn.active{background:linear-gradient(135deg,var(--coral),var(--dourado));border-color:transparent;color:#fff;}

.log-card{background:var(--grad-card);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:14px 16px;transition:var(--trans);position:relative;}
.log-card:hover{border-color:rgba(255,122,89,.25);box-shadow:0 4px 16px var(--sombra);}
.log-card.latest{border-left:3px solid var(--coral);}
.log-card-header{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px;flex-wrap:wrap;}
.log-cliente{font-size:1rem;font-weight:700;color:var(--texto);}
.log-badge{padding:2px 10px;border-radius:10px;font-size:.7rem;font-weight:700;}
.log-autor{font-size:.75rem;color:var(--texto-3);display:flex;align-items:center;gap:4px;}
.log-time{font-size:.72rem;color:var(--cinza-3);margin-left:auto;}
.log-body{background:rgba(255,255,255,.05);border-radius:8px;padding:10px 12px;font-size:.83rem;color:var(--texto-2);line-height:1.55;border:1px solid rgba(232,119,154,.1);}
.log-body strong{color:var(--texto);font-weight:700;}
.log-footer{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap;}
.log-vxops{font-size:.72rem;color:var(--texto-3);background:var(--cinza-1);padding:3px 10px;border-radius:8px;border:1px solid var(--cinza-2);}
.log-followup{font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:10px;}
.log-followup.hoje{background:rgba(255,180,50,.15);color:#9a6800;border:1px solid rgba(255,180,50,.4);}
.log-followup.amanha{background:rgba(255,200,100,.12);color:#FFD080;border:1px solid rgba(255,200,100,.3);}
.log-followup.breve{background:rgba(91,163,217,.12);color:#80C4F0;border:1px solid rgba(91,163,217,.3);}
.log-del{margin-left:auto;background:none;border:none;cursor:pointer;font-size:.8rem;color:var(--cinza-3);padding:4px 8px;border-radius:6px;transition:var(--trans);opacity:0;}
.log-card:hover .log-del{opacity:1;}
.log-del:hover{color:#c0392b;background:rgba(192,57,43,.08);}
.log-dup{background:none;border:1px solid rgba(232,119,154,.25);cursor:pointer;font-size:.75rem;color:var(--rosa);padding:4px 10px;border-radius:6px;font-weight:600;transition:var(--trans);}
.log-dup:hover{background:rgba(232,119,154,.1);}

/* Follow-up banner */
.followup-banner{background:rgba(255,180,50,.1);border-bottom:1px solid rgba(255,180,50,.3);padding:8px 24px;display:none;align-items:center;gap:8px;flex-wrap:wrap;flex-shrink:0;}
.followup-banner.show{display:flex;}
.followup-banner-label{font-size:.75rem;font-weight:700;color:#9a6800;text-transform:uppercase;letter-spacing:.06em;}
.followup-pill{font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:12px;background:rgba(255,180,50,.2);color:#9a6800;border:1px solid rgba(255,180,50,.4);cursor:pointer;}
.followup-pill:hover{background:rgba(255,180,50,.35);}

@media(max-width:640px){
  .hw-grid{grid-template-columns:1fr;}
  .kpi-grid{grid-template-columns:repeat(2,1fr);}
}


/* â”€â”€ HOME KPIs â”€â”€ */
.home-view{flex:1;overflow-y:auto;padding:24px;background:rgba(13,17,23,.6);}
.home-section-title{font-size:.70rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.52);margin-bottom:10px;margin-top:4px;}

/* KPI cards */
.home-kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin-bottom:22px;}
.home-kpi-card{
  background:rgba(255,255,255,.04);
  border:1px solid var(--border);
  border-radius:12px;padding:14px 16px;
  transition:border-color .2s,transform .2s;
}
.home-kpi-card:hover{border-color:rgba(232,123,176,.25);transform:translateY(-2px);}
.home-kpi-card.accent{border-left:2px solid var(--coral);}
.home-kpi-label{font-size:.7rem;color:rgba(255,255,255,.65);margin-bottom:5px;}
.home-kpi-val{font-size:1.8rem;font-weight:700;color:var(--coral-2);line-height:1;}
.home-kpi-sub{font-size:.74rem;color:rgba(255,255,255,.52);margin-top:4px;}

/* Team cards */
.home-team-grid{display:flex;flex-direction:column;gap:12px;margin-bottom:22px;}
.home-team-card{
  background:rgba(255,255,255,.04);
  border:1px solid var(--border);
  border-radius:12px;padding:14px 16px;
  transition:border-color .2s;
  min-width:0;overflow:hidden;
}
.home-team-card:hover{border-color:rgba(232,123,176,.2);}
.home-team-name{font-size:.88rem;font-weight:700;color:var(--branco);margin-bottom:10px;display:flex;align-items:center;gap:8px;min-width:0;}
.home-team-role{font-size:.70rem;font-weight:700;padding:2px 8px;border-radius:7px;text-transform:uppercase;letter-spacing:.06em;}
.home-team-stat{
  display:flex;justify-content:space-between;align-items:center;
  padding:5px 0;border-bottom:1px solid var(--border);
  font-size:.78rem;color:rgba(255,255,255,.65);
  gap:8px;min-width:0;
}
.home-team-stat > span:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.home-team-stat:last-child{border-bottom:none;}
.home-team-stat-val{font-weight:700;color:var(--branco);flex-shrink:0;}
.home-vx-badge{background:rgba(232,123,176,.12);color:var(--coral-2);border:1px solid rgba(232,123,176,.25);padding:2px 9px;border-radius:7px;font-size:.73rem;font-weight:700;}

/* Activity */
.home-activity{background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:12px;overflow:hidden;}
.home-activity-item{
  padding:10px 16px;border-bottom:1px solid var(--border);
  font-size:.8rem;color:var(--texto-2);
  display:flex;align-items:center;gap:10px;
  transition:background .15s;
  min-width:0;overflow:hidden;
}
.home-activity-item:hover{background:rgba(255,255,255,.03);}
.home-activity-item:last-child{border-bottom:none;}
.home-activity-dot{width:6px;height:6px;border-radius:50%;background:var(--coral);flex-shrink:0;}



/* â•â• GESTÃƒO DE VIAGENS â•â• */
.viagens-view{flex:1;display:flex;flex-direction:column;overflow:hidden;}
.viagens-scroll{flex:1;min-height:0;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:14px;align-items:stretch;scrollbar-width:thin;scrollbar-color:rgba(232,123,176,.2) transparent;}
.viagens-scroll::-webkit-scrollbar{width:3px;}
.viagens-scroll::-webkit-scrollbar-thumb{background:rgba(232,123,176,.2);border-radius:3px;}
.viagens-scroll::-webkit-scrollbar-track{background:transparent;}

/* Header e toolbar */
.viagens-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px;}
.viagens-toolbar > *{flex-shrink:0;}
.viagens-search{flex:1 1 180px;min-width:160px;box-sizing:border-box;background:rgba(255,255,255,.06);border:1px solid var(--border-2);
  border-radius:9px;padding:7px 12px;font-size:.84rem;
  color:var(--branco);outline:none;}
.viagens-search::placeholder{color:var(--texto-3);}
.viagens-search:focus{border-color:rgba(232,123,176,.35);}
.viagens-filter-btn{padding:5px 12px;border-radius:20px;font-size:.74rem;font-weight:700;
  cursor:pointer;border:1px solid var(--border-2);
  background:rgba(255,255,255,.05);color:var(--texto-3);transition:var(--trans);}
.viagens-filter-btn:hover{background:rgba(255,255,255,.08);color:var(--branco);}
.viagens-filter-btn.active{background:var(--grad-sunset);border-color:transparent;color:#fff;}
.btn-nova-viagem{background:var(--grad-sunset);border:none;border-radius:10px;padding:9px 18px;
  color:#fff;font-size:.85rem;font-weight:700;cursor:pointer;
  white-space:nowrap;transition:var(--trans);box-shadow:0 2px 10px rgba(232,123,176,.3);}
.btn-nova-viagem:hover{transform:translateY(-1px);box-shadow:0 4px 18px rgba(232,123,176,.4);}

/* Card de viagem */
.viagem-card{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:14px;
  overflow:hidden;transition:border-color .2s,transform .2s;cursor:pointer;min-height:80px;flex-shrink:0;width:100%;}
.viagem-card:hover{border-color:rgba(232,123,176,.3);transform:translateY(-2px);}
.viagem-card-header{padding:14px 16px;display:flex;align-items:flex-start;gap:12px;overflow:hidden;}
.viagem-card-info{flex:1;min-width:0;overflow:hidden;}

/* â•â• TIPOS DE SERVIÃ‡O â•â• */
.servico-tag{display:inline-flex;align-items:center;gap:3px;font-size:.85rem;font-weight:700;padding:4px 8px;border-radius:5px;letter-spacing:.03em;}
.servico-tag.AER{background:rgba(78,170,220,.15);color:#80C4F0;border:1px solid rgba(78,170,220,.25);}
.servico-tag.HOS{background:rgba(155,143,221,.15);color:#B8AAEE;border:1px solid rgba(155,143,221,.25);}
.servico-tag.PAC{background:rgba(232,123,176,.15);color:#F0A8CC;border:1px solid rgba(232,123,176,.25);}
.servico-tag.SEG{background:rgba(60,200,138,.12);color:#60D890;border:1px solid rgba(60,200,138,.2);}
.servico-tag.TRF{background:rgba(255,200,60,.12);color:#FFD080;border:1px solid rgba(255,200,60,.2);}
.servico-tag.CON{background:rgba(232,160,80,.15);color:#F0C070;border:1px solid rgba(232,160,80,.25);}
.servico-tag.CTR{background:rgba(180,200,100,.12);color:#C8D880;border:1px solid rgba(180,200,100,.2);}
.servico-tag.ROT{background:rgba(100,180,220,.12);color:#80C8E8;border:1px solid rgba(100,180,220,.2);}
.servico-tag.PAS{background:rgba(200,120,220,.12);color:#D890E8;border:1px solid rgba(200,120,220,.2);}
.servico-tag.MIL{background:rgba(255,180,50,.12);color:#FFB830;border:1px solid rgba(255,180,50,.2);}
.servico-tag.CHI{background:rgba(80,200,180,.12);color:#60D8C8;border:1px solid rgba(80,200,180,.2);}
.servico-tag.CUS{background:rgba(255,255,255,.08);color:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.15);}
.projeto-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px;}

.viagem-card-title{font-size:1.15rem;font-weight:700;color:#F0F6FF !important;margin-bottom:4px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.viagem-card-cliente{font-size:.9rem;color:#A8B8CC !important;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.viagem-card-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px;}
.viagem-fase-badge{font-size:.85rem;font-weight:700;padding:4px 10px;border-radius:8px;}
.viagem-tipo-badge{font-size:.85rem;font-weight:700;padding:4px 8px;border-radius:6px;
  background:rgba(78,170,220,.12);color:#80C4F0;border:1px solid rgba(78,170,220,.2);}
.viagem-card-body{padding:0 16px 14px;display:flex;flex-direction:column;gap:8px;}

/* Produtos */
.viagem-produtos{display:flex;flex-wrap:wrap;gap:5px;}
.produto-chip{display:flex;align-items:center;gap:4px;font-size:.85rem;
  padding:4px 10px;border-radius:8px;font-weight:600;}
.produto-chip.ok{background:rgba(60,200,138,.12);color:#60D890;border:1px solid rgba(60,200,138,.2);cursor:pointer;}
.produto-chip.ok:hover{background:rgba(60,200,138,.2);}
.produto-chip.faltando{background:rgba(255,80,80,.10);color:#FF9090;border:1px solid rgba(255,80,80,.2);cursor:pointer;}
.produto-chip.faltando:hover{background:rgba(255,80,80,.18);}
.produto-chip.ignorado{background:rgba(255,255,255,.04);color:rgba(255,255,255,.25);border:1px solid rgba(255,255,255,.08);cursor:pointer;text-decoration:line-through;opacity:.7;}
.produto-chip.ignorado:hover{background:rgba(255,255,255,.08);opacity:1;}

/* Progresso de tarefas */
.viagem-progress{display:flex;align-items:center;gap:8px;}
.viagem-progress-bar{flex:1;height:3px;background:rgba(255,255,255,.08);border-radius:2px;overflow:hidden;}
.viagem-progress-fill{height:100%;border-radius:2px;background:var(--grad-sunset);transition:width .3s;}
.viagem-progress-label{font-size:.85rem;color:var(--texto-3);white-space:nowrap;}

/* Detalhe da viagem */
.viagem-detalhe{flex:1;display:flex;flex-direction:column;overflow:hidden;}
.viagem-detalhe-header{padding:14px 20px;border-bottom:1px solid var(--border);
  background:rgba(10,13,20,.5);flex-shrink:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.btn-back-viagem{background:none;border:none;cursor:pointer;font-size:1rem;color:var(--coral);
  font-weight:600;display:flex;align-items:center;gap:5px;transition:gap .2s;}
.btn-back-viagem:hover{gap:9px;}
.viagem-detalhe-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:20px 24px;display:flex;flex-direction:column;gap:16px;scrollbar-width:thin;scrollbar-color:rgba(232,123,176,.2) transparent;}
.viagem-detalhe-scroll::-webkit-scrollbar{width:3px;}
.viagem-detalhe-scroll::-webkit-scrollbar-thumb{background:rgba(232,123,176,.2);border-radius:3px;}
.viagem-detalhe-scroll::-webkit-scrollbar-track{background:transparent;}

/* Fases stepper */
.fases-stepper{display:flex;align-items:center;gap:0;overflow-x:auto;padding-bottom:4px;}
.fases-stepper::-webkit-scrollbar{height:3px;}
.fases-stepper::-webkit-scrollbar-thumb{background:rgba(255,255,255,.10);}
.fase-step{display:flex;align-items:center;gap:0;flex-shrink:0;}
.fase-btn{padding:6px 14px;border:none;font-size:.85rem;font-weight:700;cursor:pointer;transition:opacity .15s,transform .1s;
  cursor:pointer;border-radius:8px;transition:all .2s;white-space:nowrap;}
.fase-btn.atual{background:var(--grad-sunset);color:#fff;box-shadow:0 2px 10px rgba(232,123,176,.3);}
.fase-btn.concluida{background:rgba(60,200,138,.15);color:#60D890;}
.fase-btn.futura{background:rgba(255,255,255,.05);color:rgba(255,255,255,.4);}
.fase-btn.especial{background:rgba(255,200,60,.12);color:#FFD080;}
.fase-btn:hover:not(.atual){opacity:.75;transform:scale(1.04);}
.fase-seta{color:rgba(255,255,255,.2);font-size:.75rem;padding:0 4px;flex-shrink:0;}

/* Tarefas */
.tarefas-section{background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:12px;overflow:hidden;}
.tarefas-header{padding:12px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;}
.tarefas-title{font-size:.85rem;font-weight:700;color:var(--branco);}
.btn-add-tarefa{background:none;border:1px solid var(--border-2);border-radius:7px;padding:4px 10px;
  font-size:.85rem;color:var(--coral-2);cursor:pointer;font-weight:600;transition:var(--trans);}
.btn-add-tarefa:hover{background:rgba(232,123,176,.1);}
.tarefa-item{display:flex;align-items:flex-start;gap:10px;padding:10px 16px;
  border-bottom:1px solid var(--border);transition:background .15s;}
.tarefa-item:hover{background:rgba(255,255,255,.02);}
.tarefa-item:last-child{border-bottom:none;}
.tarefa-check{width:16px;height:16px;border-radius:4px;border:1.5px solid rgba(255,255,255,.25);
  flex-shrink:0;margin-top:2px;cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:all .15s;background:rgba(255,255,255,.04);}
.tarefa-check.done{background:var(--coral);border-color:var(--coral);}
.tarefa-body{flex:1;min-width:0;}
.tarefa-title{font-size:.95rem;color:var(--branco);line-height:1.4;}
.tarefa-title.done{color:rgba(255,255,255,.3);text-decoration:line-through;}
.tarefa-dica{font-size:.85rem;color:rgba(78,170,220,.8);margin-top:3px;line-height:1.4;}
.tarefa-meta{display:flex;align-items:center;gap:8px;margin-top:4px;flex-wrap:wrap;}
.tarefa-resp{font-size:.85rem;font-weight:700;padding:2px 8px;border-radius:5px;
  background:rgba(232,123,176,.12);color:var(--coral-2);}
.tarefa-prazo{font-size:.85rem;color:var(--texto-3);}
.tarefa-del{background:none;border:none;cursor:pointer;color:rgba(255,255,255,.2);font-size:.8rem;
  padding:2px 4px;transition:color .15s;flex-shrink:0;}
.tarefa-del:hover{color:#FF9090;}

/* Escalas nos blocos de proposta */
.prop-escalas-ui{margin-top:4px;}
.prop-escalas-wrap{display:flex;flex-wrap:wrap;gap:5px;align-items:center;min-height:30px;padding:4px 6px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:8px;}
.prop-escala-tag{display:inline-flex;align-items:center;gap:4px;background:rgba(128,196,240,.15);border:1px solid rgba(128,196,240,.3);color:#80C4F0;font-size:.85rem;font-weight:700;padding:4px 8px;border-radius:6px;}
.prop-escala-tag button{background:none;border:none;cursor:pointer;color:rgba(128,196,240,.6);font-size:.72rem;padding:0;line-height:1;transition:color .15s;}
.prop-escala-tag button:hover{color:#FF9090;}
.prop-escala-input{background:none;border:none;outline:none;color:var(--branco);font-size:.78rem;width:80px;min-width:60px;padding:2px 4px;}
.prop-escala-input::placeholder{color:rgba(255,255,255,.3);font-size:.72rem;}

/* Central de Tarefas */
.tarefas-central-overlay{position:fixed;inset:0;z-index:900;background:rgba(0,0,0,.6);display:flex;align-items:stretch;justify-content:flex-start;}
.tarefas-central-panel{width:420px;max-width:95vw;height:100vh;background:rgba(18,22,30,.98);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;box-shadow:4px 0 32px rgba(0,0,0,.5);will-change:transform;}
.tarefas-central-header{padding:16px 18px 12px;border-bottom:1px solid var(--border);flex-shrink:0;display:flex;align-items:center;gap:10px;}
.tarefas-central-title{font-size:1rem;font-weight:700;color:var(--branco);flex:1;}
.tarefas-central-close{background:none;border:none;cursor:pointer;color:var(--texto-3);font-size:1.1rem;padding:4px;border-radius:6px;transition:var(--trans);}
.tarefas-central-close:hover{color:var(--coral);background:rgba(255,122,89,.1);}
.tarefas-central-filtros{display:flex;gap:6px;padding:10px 16px;border-bottom:1px solid var(--border);flex-shrink:0;flex-wrap:wrap;}
.tc-filtro{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);border-radius:20px;padding:4px 12px;font-size:.72rem;font-weight:600;color:var(--texto-3);cursor:pointer;transition:all .15s;}
.tc-filtro.ativo{background:rgba(255,122,89,.15);border-color:var(--coral);color:var(--coral-2);}
.tarefas-central-scroll{flex:1;overflow-y:auto;padding:10px 14px;}
.tc-viagem-grupo{margin-bottom:16px;}
.tc-viagem-label{font-size:.70rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.35);padding:4px 6px 6px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:6px;display:flex;align-items:center;justify-content:space-between;}
.tc-viagem-label span{color:var(--coral-2);cursor:pointer;font-size:.72rem;text-transform:none;letter-spacing:0;}
.tc-viagem-label span:hover{text-decoration:underline;}
.tc-tarefa-row{display:flex;align-items:flex-start;gap:8px;padding:7px 8px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.07);border-radius:9px;margin-bottom:4px;transition:border-color .15s;}
.tc-tarefa-row.vencida{border-color:rgba(255,80,80,.2);}
.tc-tarefa-row.privada{border-color:rgba(255,184,76,.15);}
.tc-nova-btn{display:flex;align-items:center;gap:6px;background:none;border:1px dashed rgba(255,255,255,.15);border-radius:9px;padding:7px 12px;width:100%;cursor:pointer;color:var(--texto-3);font-size:.78rem;transition:all .15s;margin-bottom:4px;}
.tc-nova-btn:hover{border-color:var(--coral);color:var(--coral-2);background:rgba(255,122,89,.05);}
.tarefas-central-add{padding:12px 16px;border-top:1px solid var(--border);flex-shrink:0;}
.tc-add-global{width:100%;background:var(--grad-sunset);border:none;border-radius:9px;padding:10px;color:#fff;font-size:.82rem;font-weight:700;cursor:pointer;transition:opacity .2s;}
.tc-add-global:hover{opacity:.88;}

/* SugestÃ£o de produto */
.produto-sugestao{background:rgba(232,123,176,.06);border:1px solid rgba(232,123,176,.2);
  border-radius:10px;padding:12px 14px;display:flex;align-items:flex-start;gap:10px;}
.produto-sugestao-icon{font-size:1.2rem;flex-shrink:0;margin-top:2px;}
.produto-sugestao-body{flex:1;}
.produto-sugestao-title{font-size:.83rem;font-weight:700;color:var(--coral-2);margin-bottom:3px;}
.produto-sugestao-desc{font-size:.77rem;color:var(--texto-2);line-height:1.45;}
.produto-sugestao-dica{font-size:.73rem;color:rgba(78,170,220,.9);margin-top:5px;line-height:1.4;font-style:italic;}
.btn-add-produto{background:var(--grad-sunset);border:none;border-radius:7px;padding:5px 12px;
  color:#fff;font-size:.74rem;font-weight:700;cursor:pointer;margin-top:7px;transition:var(--trans);}
.btn-add-produto:hover{box-shadow:0 2px 10px rgba(232,123,176,.3);}

/* Docs */
.docs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;}
.doc-item{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:9px;
  padding:10px 12px;display:flex;align-items:center;gap:8px;transition:var(--trans);}
.doc-item:hover{border-color:rgba(232,123,176,.25);}
.doc-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
.doc-name{font-size:.79rem;color:var(--texto-2);flex:1;}
.doc-ok .doc-name{color:var(--branco);}

/* â•â• PORTAL DO CLIENTE (view interna) â•â• */
.portal-view{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0;}
.portal-scroll{flex:1;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:14px;}
.portal-header-bar{padding:14px 20px;border-bottom:1px solid var(--border);background:rgba(10,13,20,.5);flex-shrink:0;display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.portal-title-main{font-size:1.05rem;font-weight:700;color:var(--branco);}
.portal-card{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:14px;transition:border-color .2s;}
.portal-card:hover{border-color:rgba(74,111,212,.3);}
.portal-card-header{padding:14px 16px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border);}
.portal-card-info{flex:1;min-width:0;}
.portal-card-title{font-size:.92rem;font-weight:700;color:var(--branco);margin-bottom:2px;}
.portal-card-sub{font-size:.75rem;color:var(--texto-3);}
.portal-card-body{padding:12px 16px 16px;display:flex;flex-direction:column;gap:8px;}
.portal-status-badge{font-size:.74rem;font-weight:700;padding:3px 9px;border-radius:7px;white-space:nowrap;}
.portal-link-row{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.04);border:1px solid var(--border-2);border-radius:9px;padding:8px 12px;flex-wrap:wrap;}
.portal-link-text{font-size:.74rem;font-family:monospace;color:rgba(255,255,255,.5);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.portal-pin-box{background:rgba(74,111,212,.15);border:1px solid rgba(74,111,212,.35);border-radius:8px;padding:8px 14px;display:inline-flex;align-items:center;gap:8px;}
.portal-pin-val{font-size:1.3rem;font-weight:700;letter-spacing:.25em;color:#7B9FE8;font-family:monospace;}
.portal-copy-btn{background:rgba(74,111,212,.2);border:1px solid rgba(74,111,212,.35);border-radius:7px;padding:5px 12px;color:#7B9FE8;font-size:.74rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .15s;}
.portal-copy-btn:hover{background:rgba(74,111,212,.35);}
.portal-open-btn{background:linear-gradient(135deg,#4a6fd4,#e8a0e0);border:none;border-radius:9px;padding:8px 18px;color:#fff;font-size:.82rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .15s;box-shadow:0 2px 10px rgba(74,111,212,.3);}
.portal-open-btn:hover{transform:translateY(-1px);box-shadow:0 4px 18px rgba(74,111,212,.4);}
.portal-status-ativo{background:rgba(60,200,138,.12);color:#60D890;border:1px solid rgba(60,200,138,.2);}
.portal-status-pendente{background:rgba(255,200,60,.10);color:#FFD080;border:1px solid rgba(255,200,60,.2);}
.portal-status-confirmado{background:rgba(74,111,212,.12);color:#7B9FE8;border:1px solid rgba(74,111,212,.3);}
.portal-notif-badge{background:rgba(232,160,224,.2);border:1px solid rgba(232,160,224,.35);border-radius:6px;padding:2px 8px;font-size:.7rem;font-weight:700;color:#E8A0E0;}
/* â•â• PAPEL BADGES â•â• */

/* â•â• PASSAPORTE BADGES â•â• */
.pass-ok     {font-size:.72rem;font-weight:700;padding:2px 7px;border-radius:5px;border:1px solid rgba(60,200,138,.3);background:rgba(60,200,138,.12);color:#60D890;}
.pass-alerta {font-size:.72rem;font-weight:700;padding:2px 7px;border-radius:5px;border:1px solid rgba(255,200,60,.3);background:rgba(255,200,60,.12);color:#FFD080;}
.pass-vencido{font-size:.72rem;font-weight:700;padding:2px 7px;border-radius:5px;border:1px solid rgba(255,80,80,.3);background:rgba(255,80,80,.12);color:#FF9090;}
.papel-vx   {font-size:.72rem;font-weight:700;padding:2px 7px;border-radius:5px;border:1px solid rgba(232,123,176,.3);background:rgba(232,123,176,.15);color:#F0A8CC;}
.papel-ops  {font-size:.72rem;font-weight:700;padding:2px 7px;border-radius:5px;border:1px solid rgba(78,170,220,.3);background:rgba(78,170,220,.15);color:#80C4F0;}

/* â•â• FASE 4: DM + AEROPORTOS â•â• */
.ap-dropdown{position:fixed;z-index:9999;background:#1C2333;border:1px solid var(--border-2);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.4);overflow-y:auto;max-height:220px;}
.ap-item{padding:8px 14px;cursor:pointer;font-size:.83rem;color:var(--branco);display:flex;gap:10px;align-items:center;border-bottom:1px solid var(--border);}
.ap-item:hover{background:rgba(255,255,255,.06);}
.ap-iata{font-weight:700;color:var(--coral-2);min-width:36px;}
.ap-cidade{flex:1;}
.ap-pais{font-size:.72rem;color:var(--texto-3);}
/* Card viagem no canal */
.canal-viagem-card{background:rgba(78,170,220,.06);border:1px solid rgba(78,170,220,.2);border-radius:12px;padding:12px 16px;margin:12px 16px 0;display:flex;align-items:center;gap:14px;flex-wrap:wrap;flex-shrink:0;}
.canal-viagem-info{flex:1;min-width:0;}
.canal-viagem-titulo{font-size:.88rem;font-weight:700;color:var(--branco);}
.canal-viagem-meta{font-size:.75rem;color:var(--texto-3);display:flex;gap:10px;flex-wrap:wrap;margin-top:3px;}


/* â•â• FINANCEIRO â•â• */
.fin-view{flex:1;display:flex;flex-direction:column;overflow:hidden;}
.fin-header{padding:12px 20px;border-bottom:1px solid var(--border);background:rgba(10,13,20,.5);display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex-shrink:0;}
.fin-tab-btns{display:flex;gap:3px;background:rgba(255,255,255,.05);border:1px solid var(--border-2);border-radius:8px;padding:3px;}
.fin-tab-btn{padding:4px 14px;border:none;border-radius:6px;font-size:.76rem;font-weight:600;cursor:pointer;transition:all .15s;color:var(--texto-3);background:none;}
.fin-tab-btn.active{background:var(--grad-sunset);color:#fff;}
.fin-periodo-btns{display:flex;gap:3px;background:rgba(255,255,255,.04);border:1px solid var(--border-2);border-radius:8px;padding:3px;margin-left:auto;}
.fin-periodo-btn{padding:4px 10px;border:none;border-radius:5px;font-size:.72rem;font-weight:600;cursor:pointer;color:var(--texto-3);background:none;transition:all .15s;}
.fin-periodo-btn.active{background:rgba(255,255,255,.12);color:var(--branco);}
.fin-body{flex:1;overflow-y:auto;padding:20px;}
.fin-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:20px;}
.fin-kpi{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:12px;padding:14px 16px;}
.fin-kpi-label{font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.4);margin-bottom:6px;}
.fin-kpi-val{font-size:1.3rem;font-weight:700;color:var(--branco);}
.fin-kpi-sub{font-size:.72rem;color:var(--texto-3);margin-top:3px;}
.fin-kpi.green .fin-kpi-val{color:#60D890;}
.fin-kpi.red .fin-kpi-val{color:#FF8080;}
.fin-kpi.yellow .fin-kpi-val{color:#FFD080;}
.fin-section-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.4);margin-bottom:10px;margin-top:20px;}
/* TermÃ´metro */
.fin-termo-wrap{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:20px;}
.fin-termo-title{font-size:.78rem;font-weight:700;color:var(--branco);margin-bottom:4px;display:flex;justify-content:space-between;align-items:center;}
.fin-termo-sub{font-size:.72rem;color:var(--texto-3);margin-bottom:10px;}
.fin-termo-bar-bg{background:rgba(255,255,255,.08);border-radius:8px;height:12px;overflow:hidden;margin-bottom:6px;}
.fin-termo-bar{height:100%;border-radius:8px;transition:width .5s;background:linear-gradient(90deg,#C45A90,#9B8FDD);}
.fin-termo-bar.atingido{background:linear-gradient(90deg,#3fb950,#60D890);}
.fin-termo-labels{display:flex;justify-content:space-between;font-size:.74rem;color:var(--texto-3);}
/* Tabela viagens */
.fin-table{width:100%;border-collapse:collapse;}
.fin-table th{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.4);padding:6px 10px;text-align:left;border-bottom:1px solid var(--border);}
.fin-table td{font-size:.8rem;color:var(--texto-2);padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.04);vertical-align:middle;}
.fin-table tr:hover td{background:rgba(255,255,255,.02);}
.fin-pill{font-size:.72rem;font-weight:700;padding:2px 7px;border-radius:6px;}
.fin-pill.green{background:rgba(60,200,138,.15);color:#60D890;}
.fin-pill.red{background:rgba(255,80,80,.15);color:#FF8080;}
.fin-pill.yellow{background:rgba(255,200,60,.15);color:#FFD080;}
/* Despesas */
.fin-desp-card{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:10px;padding:12px 14px;margin-bottom:8px;display:flex;align-items:center;gap:12px;}
.fin-desp-info{flex:1;min-width:0;}
.fin-desp-nome{font-size:.83rem;font-weight:600;color:var(--branco);}
.fin-desp-meta{font-size:.72rem;color:var(--texto-3);margin-top:2px;}
.fin-desp-val{font-size:.9rem;font-weight:700;color:#FF8080;white-space:nowrap;}
.fin-add-btn{background:rgba(255,255,255,.06);border:1px solid var(--border-2);border-radius:8px;padding:5px 14px;color:var(--texto-2);font-size:.78rem;cursor:pointer;transition:var(--trans);}
.fin-add-btn:hover{background:rgba(232,123,176,.12);color:var(--coral-2);}
/* Extrato */
.fin-extrato-item{display:flex;align-items:center;gap:12px;padding:9px 12px;border-bottom:1px solid rgba(255,255,255,.04);}
.fin-extrato-item:hover{background:rgba(255,255,255,.02);}
.fin-extrato-tipo{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0;}
.fin-extrato-tipo.entrada{background:rgba(60,200,138,.15);}
.fin-extrato-tipo.saida{background:rgba(255,80,80,.15);}
.fin-extrato-info{flex:1;min-width:0;}
.fin-extrato-desc{font-size:.82rem;font-weight:600;color:var(--branco);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.fin-extrato-data{font-size:.7rem;color:var(--texto-3);}
.fin-extrato-val{font-size:.88rem;font-weight:700;white-space:nowrap;}
.fin-extrato-val.entrada{color:#60D890;}
.fin-extrato-val.saida{color:#FF8080;}
.fin-upload-area{border:2px dashed rgba(255,255,255,.15);border-radius:12px;padding:24px;text-align:center;cursor:pointer;transition:all .2s;margin-bottom:16px;}
.fin-upload-area:hover{border-color:rgba(232,123,176,.4);background:rgba(232,123,176,.04);}
/* TermÃ´metros da home */
.home-termo-wrap{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:12px;padding:14px 16px;margin-bottom:20px;}
.home-termo-row{margin-bottom:10px;}
.home-termo-row:last-child{margin-bottom:0;}
.home-termo-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;}
.home-termo-name{font-size:.75rem;font-weight:600;color:var(--texto-2);}
.home-termo-pct{font-size:.72rem;font-weight:700;}
.home-termo-bar-bg{background:rgba(255,255,255,.08);border-radius:6px;height:8px;overflow:hidden;}
.home-termo-bar{height:100%;border-radius:6px;transition:width .5s;background:linear-gradient(90deg,#C45A90,#9B8FDD);}
.home-termo-bar.atingido{background:linear-gradient(90deg,#3fb950,#60D890);}


/* â•â• IA VENDAS â•â• */
.ia-card{background:rgba(155,143,221,.06);border:1px solid rgba(155,143,221,.2);border-radius:14px;padding:16px;margin-bottom:20px;}
.ia-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;flex-wrap:wrap;gap:8px;}
.ia-card-title{font-size:.88rem;font-weight:700;color:var(--branco);display:flex;align-items:center;gap:8px;}
.ia-card-meta{font-size:.74rem;color:var(--texto-3);}
.ia-card-btns{display:flex;gap:6px;}
.ia-btn{background:rgba(255,255,255,.06);border:1px solid var(--border-2);border-radius:7px;padding:4px 10px;color:var(--texto-2);font-size:.72rem;cursor:pointer;transition:var(--trans);}
.ia-btn:hover{background:rgba(155,143,221,.15);color:#B8AAEE;}
.ia-btn:disabled{opacity:.4;cursor:not-allowed;}
.ia-content{font-size:.82rem;color:var(--texto-2);line-height:1.65;white-space:pre-wrap;}
.ia-loading{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--texto-3);}
.ia-dot{width:6px;height:6px;border-radius:50%;background:#9B8FDD;animation:ia-pulse 1s ease-in-out infinite;}
.ia-dot:nth-child(2){animation-delay:.2s;}
.ia-dot:nth-child(3){animation-delay:.4s;}
@keyframes ia-pulse{0%,100%{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}
@keyframes ia-badge-pulse{0%,100%{opacity:.8;transform:scale(1);box-shadow:0 0 0 0 rgba(232,123,176,.4)}50%{opacity:1;transform:scale(1.08);box-shadow:0 0 0 5px rgba(232,123,176,0)}}
@keyframes ia-glow-pulse{0%,100%{box-shadow:0 0 0 0 rgba(232,123,176,0);border-color:rgba(232,123,176,.35)}50%{box-shadow:0 0 16px 4px rgba(232,123,176,.28);border-color:rgba(232,123,176,.7)}}
.ia-card.nao-lida{border-color:rgba(232,123,176,.45);}
.ia-card.ia-card-glow{animation:ia-glow-pulse 2.2s ease-in-out infinite;}
.ia-tag{display:inline-block;font-size:.72rem;font-weight:700;padding:2px 7px;border-radius:5px;margin-right:4px;}
.ia-tag.matinal{background:rgba(255,200,60,.15);color:#FFD080;}
.ia-tag.fechamento{background:rgba(155,143,221,.15);color:#B8AAEE;}
.ia-tag.semanal{background:rgba(78,170,220,.15);color:#80C4F0;}
.ia-tag.oportunidade{background:rgba(60,200,138,.15);color:#60D890;}
.ia-hist-item{background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:9px;padding:10px 12px;margin-bottom:6px;cursor:pointer;transition:border-color .15s;}
.ia-hist-item:hover{border-color:rgba(155,143,221,.3);}

.papel-prod {font-size:.72rem;font-weight:700;padding:2px 7px;border-radius:5px;border:1px solid rgba(155,143,221,.3);background:rgba(155,143,221,.15);color:#B8AAEE;}
/* â•â• CALENDÃRIO DE EMBARQUES â•â• */
.cal-view{flex:1;display:flex;flex-direction:column;overflow:hidden;}
.cal-header{padding:12px 20px;border-bottom:1px solid var(--border);background:rgba(10,13,20,.5);flex-shrink:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.cal-nav-btn{background:rgba(255,255,255,.06);border:1px solid var(--border-2);border-radius:8px;padding:5px 12px;color:var(--texto-2);font-size:.82rem;cursor:pointer;transition:var(--trans);}
.cal-nav-btn:hover{background:rgba(232,123,176,.12);color:var(--coral-2);border-color:var(--coral);}
.cal-title{font-size:1rem;font-weight:700;color:var(--branco);min-width:160px;text-align:center;}
.cal-vista-btns{display:flex;gap:3px;background:rgba(255,255,255,.05);border:1px solid var(--border-2);border-radius:8px;padding:3px;}
.cal-vista-btn{padding:4px 12px;border:none;border-radius:6px;font-size:.76rem;font-weight:600;cursor:pointer;transition:all .15s;color:var(--texto-3);background:none;}
.cal-vista-btn.active{background:var(--grad-sunset);color:#fff;}
.cal-filtros{display:flex;align-items:center;gap:8px;margin-left:auto;flex-wrap:wrap;}
.cal-crise-btn{background:rgba(255,80,80,.1);border:1px solid rgba(255,80,80,.3);border-radius:8px;padding:5px 12px;color:#FF9090;font-size:.78rem;font-weight:700;cursor:pointer;transition:var(--trans);}
.cal-crise-btn:hover,.cal-crise-btn.active{background:rgba(255,80,80,.2);border-color:rgba(255,80,80,.6);}
.cal-body{flex:1;overflow-y:auto;padding:0;}
/* Grade mensal */
.cal-grid-mensal{display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid var(--border);border-left:1px solid var(--border);}
.cal-dow{padding:7px 0;text-align:center;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.40);background:rgba(10,13,20,.4);border-right:1px solid var(--border);border-bottom:1px solid var(--border);}
.cal-cell{min-height:90px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:4px;display:flex;flex-direction:column;gap:2px;cursor:pointer;transition:background .15s;position:relative;}
.cal-cell:hover{background:rgba(255,255,255,.03);}
.cal-cell.outro-mes{opacity:.35;}
.cal-cell.hoje>.cal-day-num{background:var(--grad-sunset);color:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;}
.cal-cell.drop-over{background:rgba(232,123,176,.08);outline:2px dashed var(--coral);}
.cal-day-num{font-size:.8rem;font-weight:600;color:rgba(255,255,255,.55);padding:1px 3px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;}
.cal-event{border-radius:5px;padding:2px 6px;font-size:.74rem;font-weight:600;cursor:grab;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity .15s;user-select:none;}
.cal-event:active{cursor:grabbing;opacity:.7;}
.cal-event.fase-confirmado{background:rgba(60,200,138,.2);color:#60D890;border-left:2px solid #60D890;}
.cal-event.fase-execucao,.cal-event.fase-em_viagem{background:rgba(78,170,220,.2);color:#80C4F0;border-left:2px solid #80C4F0;}
.cal-event.fase-embarcado,.cal-event.fase-proximos_embarques{background:rgba(232,123,176,.2);color:#F0A8CC;border-left:2px solid #F0A8CC;}
.cal-event.fase-outros{background:rgba(155,143,221,.15);color:#B8AAEE;border-left:2px solid #B8AAEE;}
.cal-event.alerta-7{background:rgba(255,200,60,.15);color:#FFD080;border-left:2px solid #FFD080;}
.cal-event.alerta-3{background:rgba(255,140,0,.18);color:#FFB347;border-left:2px solid #FFB347;}
.cal-event.alerta-0{background:rgba(232,123,176,.25);color:#F0A8CC;border-left:2px solid var(--coral);}
.cal-event.alerta-d2{background:rgba(78,170,220,.15);color:#80C4F0;border-left:2px solid #80C4F0;}
.cal-event.alerta-ret{background:rgba(155,143,221,.2);color:#B8AAEE;border-left:2px solid #9B8FDD;}
.cal-event.crise-destaque{outline:2px solid #FF5555;animation:pisca .8s ease-in-out infinite;}
@keyframes pisca{0%,100%{outline-color:#FF5555}50%{outline-color:rgba(255,85,85,.3)}}
/* Semanal */
.cal-semana-wrap{display:grid;grid-template-columns:60px repeat(7,1fr);border-top:1px solid var(--border);border-left:1px solid var(--border);}
.cal-semana-dow{padding:7px 4px;text-align:center;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:rgba(10,13,20,.4);}
.cal-semana-dow-name{font-size:.70rem;font-weight:700;text-transform:uppercase;color:rgba(255,255,255,.4);}
.cal-semana-dow-num{font-size:.9rem;font-weight:700;color:var(--branco);}
.cal-semana-dow.hoje .cal-semana-dow-num{color:var(--coral-2);}
.cal-hora-col{padding:4px 6px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);font-size:.72rem;color:rgba(255,255,255,.3);text-align:right;background:rgba(10,13,20,.3);}
.cal-semana-cell{min-height:44px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:2px;display:flex;flex-direction:column;gap:2px;cursor:pointer;transition:background .15s;}
.cal-semana-cell:hover{background:rgba(255,255,255,.02);}
.cal-semana-cell.drop-over{background:rgba(232,123,176,.08);outline:2px dashed var(--coral);}
.hv-tip{position:fixed;z-index:999;background:rgba(22,27,34,.97);border:1px solid var(--border-2);border-radius:8px;padding:6px 12px;font-size:.8rem;color:var(--branco);pointer-events:none;white-space:nowrap;box-shadow:0 4px 16px rgba(0,0,0,.5);opacity:0;transition:opacity .15s;backdrop-filter:blur(12px);}

.ch-actions{display:none;gap:2px;}
.channel-item:hover .ch-actions{display:flex;}
.ch-action-btn{
  background:none;border:none;cursor:pointer;font-size:.72rem;padding:2px 4px;
  border-radius:4px;color:rgba(255,255,255,.52);transition:var(--trans);
}
.ch-action-btn:hover{color:var(--coral);background:rgba(255,122,89,.12);}
.sidebar-bottom{
  padding:10px;border-top:1px solid var(--border);
  display:flex;align-items:center;gap:9px;
  background:rgba(10,13,20,.5);
}
.sidebar-user-info{flex:1;overflow:hidden;}
.sidebar-user-name{font-size:.86rem;font-weight:700;color:rgba(255,255,255,.90);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sidebar-user-status{font-size:.78rem;color:var(--texto-3);display:flex;align-items:center;gap:3px;}
.status-dot{width:6px;height:6px;border-radius:50%;background:#3fb950;flex-shrink:0;}
.sidebar-logout{
  background:none;border:none;cursor:pointer;font-size:.95rem;color:var(--texto-3);
  width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:var(--trans);
}
.sidebar-logout:hover{color:#ff5555;background:rgba(255,85,85,.1);}

/* ══ CONTENT AREA ══ */
.content-area{flex:1;display:flex;flex-direction:column;overflow:hidden;background:rgba(13,17,23,.45);min-height:0;min-width:0;transition:background 0.3s;}

.content-tabs{
  display:flex;align-items:center;padding:0 18px;
  border-bottom:1px solid var(--border);
  background:rgba(10,13,20,.95);
  gap:2px;flex-shrink:0;
}
.tab-btn{
  padding:11px 16px;border:none;background:none;cursor:pointer;
  font-size:.88rem;font-weight:600;
  color:var(--texto-3);border-bottom:2px solid transparent;
  transition:var(--trans);margin-bottom:-1px;
}
.tab-btn:hover{color:var(--coral-2);}
.tab-btn.active{color:var(--coral-2);border-bottom-color:var(--coral);}

/* ══ BUSCA ══ */
.search-bar{
  display:none;align-items:center;gap:10px;padding:7px 18px;
  background:rgba(10,13,20,.75);border-bottom:1px solid var(--border);flex-shrink:0;
}
.search-bar.open{display:flex;}
.search-bar input{
  flex:1;border:1px solid var(--border-2);border-radius:9px;
  padding:7px 11px;font-size:.86rem;color:var(--branco);
  outline:none;background:rgba(255,255,255,.06);
}
.search-bar input:focus{border-color:rgba(255,122,89,.35);}
.search-close{background:none;border:none;cursor:pointer;font-size:1rem;color:var(--texto-3);}
.search-close:hover{color:var(--coral);}
.search-results-bar{
  padding:4px 18px;background:rgba(10,13,20,.7);font-size:.76rem;
  color:var(--texto-3);border-bottom:1px solid var(--border);
}
.search-highlight{background:rgba(255,184,76,.2);border-radius:3px;padding:0 2px;color:var(--amber);}

/* ══ CHAT (ESTILO BITRIX / WHATSAPP) ══ */
.chat-view{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative;}
.messages-area{
  flex:1;overflow-y:auto;padding:16px 18px 8px;
  display:flex;flex-direction:column;gap:4px;
}
.msg-date-divider{display:flex;justify-content:center;margin:16px 0;}
.msg-date-divider hr{display:none;}
.msg-date-divider span{
  font-size:.75rem;color:#fff;font-weight:700;
  background:rgba(0,0,0,.2);padding:4px 12px;border-radius:12px;
}
.message{display:flex;gap:8px;padding:4px 6px;position:relative;}

/* Diária */
.cal-diaria-wrap{padding:16px 20px;display:flex;flex-direction:column;gap:10px;}
.cal-diaria-empty{text-align:center;padding:48px 20px;font-size:.9rem;color:var(--texto-3);}
.cal-diaria-card{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:12px;padding:14px 16px;display:flex;gap:14px;align-items:flex-start;transition:border-color .15s;cursor:pointer;}
.cal-diaria-card:hover{border-color:rgba(232,123,176,.3);}
.cal-diaria-hora{font-size:.95rem;font-weight:700;color:var(--coral-2);font-family:monospace;white-space:nowrap;padding-top:2px;}
.cal-diaria-body{flex:1;min-width:0;}
.cal-diaria-title{font-size:.9rem;font-weight:700;color:var(--branco);margin-bottom:4px;}
.cal-diaria-meta{display:flex;flex-wrap:wrap;gap:6px;}
.cal-meta-pill{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:6px;}
/* Popup de evento */
.cal-popup{position:fixed;z-index:200;background:rgba(22,27,34,.97);border:1px solid var(--border-2);border-radius:14px;padding:16px;box-shadow:0 12px 40px rgba(0,0,0,.6);min-width:260px;max-width:320px;backdrop-filter:blur(20px);}
.cal-popup-title{font-size:.9rem;font-weight:700;color:var(--branco);margin-bottom:10px;}
.cal-popup-row{display:flex;align-items:center;gap:8px;font-size:.78rem;color:var(--texto-2);margin-bottom:5px;}
.cal-popup-close{position:absolute;top:10px;right:10px;background:none;border:none;cursor:pointer;font-size:.9rem;color:var(--texto-3);}
.cal-alertas-sidebar{width:220px;min-width:220px;border-left:1px solid var(--border);background:rgba(10,13,20,.4);display:flex;flex-direction:column;overflow:hidden;}
.cal-alertas-title{padding:10px 14px;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.4);border-bottom:1px solid var(--border);flex-shrink:0;}
.cal-alertas-scroll{flex:1;overflow-y:auto;padding:8px;}
.cal-alerta-item{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:9px;padding:9px 11px;margin-bottom:6px;cursor:pointer;transition:border-color .15s;}
.cal-alerta-item:hover{border-color:rgba(232,123,176,.3);}
.cal-alerta-urgente{border-color:rgba(255,200,60,.3);background:rgba(255,200,60,.05);}
.cal-alerta-hoje{border-color:rgba(232,123,176,.4);background:rgba(232,123,176,.06);}
.cal-alerta-label{font-size:.74rem;font-weight:700;margin-bottom:3px;}
.cal-alerta-cliente{font-size:.75rem;color:var(--branco);}
.cal-alerta-data{font-size:.72rem;color:var(--texto-3);}
.cal-layout{display:flex;flex:1;overflow:hidden;}



/* â•â• DASHBOARD PREMIUM â•â• */
.home-view {
  padding: 24px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.dashboard-hero {
  background: linear-gradient(135deg, rgba(232, 123, 176, 0.15) 0%, rgba(155, 143, 221, 0.15) 100%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  padding: 28px 32px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
  position: relative;
  overflow: visible;
  flex-shrink: 0;
  margin-bottom: 24px;
}
.dashboard-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 20px;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  z-index: -1;
}
.dashboard-hero::after {
  content: '';
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 40%;
  background: radial-gradient(circle at right, rgba(255,255,255,0.08) 0%, transparent 60%);
  pointer-events: none;
  border-radius: 20px;
}
.hero-content {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.hero-title {
  font-size: 2rem;
  font-weight: 800;
  color: #fff;
  letter-spacing: -0.02em;
  line-height: 1.4;
  padding-bottom: 4px;
}
.hero-subtitle {
  font-size: 0.95rem;
  color: rgba(255, 255, 255, 0.85);
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.hero-subtitle-item {
  display: flex;
  align-items: center;
  gap: 6px;
  background: rgba(255, 255, 255, 0.05);
  padding: 6px 12px;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 0.85rem;
}
.hero-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  z-index: 1;
}
.hero-btn {
  background: var(--grad-sunset);
  border: none;
  padding: 10px 20px;
  border-radius: 12px;
  color: #fff;
  font-weight: 700;
  cursor: pointer;
  transition: all var(--trans);
  display: flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 4px 15px rgba(232, 123, 176, 0.3);
}
.hero-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(232, 123, 176, 0.4);
  filter: brightness(1.1);
}
.hero-btn.secondary {
  background: rgba(255, 255, 255, 0.08);
  box-shadow: none;
  border: 1px solid rgba(255, 255, 255, 0.15);
}
.hero-btn.secondary:hover {
  background: rgba(255, 255, 255, 0.15);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  gap: 20px;
  align-items: start;
}

.dashboard-grid-3 {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 1fr);
  gap: 20px;
  align-items: start;
}

@media(max-width: 1200px) {
  .dashboard-grid-3 {
    grid-template-columns: 1fr 1fr;
  }
}

@media(max-width: 900px) {
  .dashboard-grid {
    grid-template-columns: 1fr;
  }
  .dashboard-grid-3 {
    grid-template-columns: 1fr;
  }
}

.glass-card {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 16px;
  padding: 20px;
  transition: transform 0.3s cubic-bezier(.4,0,.2,1), box-shadow 0.3s ease, border-color 0.3s ease;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
}
.glass-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.4);
  border-color: rgba(232, 123, 176, 0.3);
}
.card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}
.card-title {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--branco);
  display: flex;
  align-items: center;
  gap: 8px;
}
.card-icon {
  width: 32px;
  height: 32px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
}
.icon-coral { background: rgba(232, 123, 176, 0.15); color: var(--coral); }
.icon-blue { background: rgba(78, 170, 220, 0.15); color: #4EAADC; }
.icon-green { background: rgba(96, 216, 144, 0.15); color: #60D890; }
.icon-amber { background: rgba(255, 184, 76, 0.15); color: #FFB84C; }

/* â•â• TOPBAR META COMPACTA â•â• */
.topbar-meta {
  margin-left: 20px;
  margin-right: 15px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  padding: 4px 12px;
  display: flex;
  align-items: center;
  gap: 12px;
  transition: all var(--trans);
  cursor: default;
}
.topbar-meta:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(232, 123, 176, 0.3);
}
.tm-icon {
  font-size: 0.95rem;
  filter: drop-shadow(0 2px 4px rgba(232,123,176,0.3));
}
.tm-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.tm-label {
  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.5);
  line-height: 1;
}
.tm-value {
}
.tm-value {
  font-size: 0.85rem;
  font-weight: 700;
  color: var(--branco);
  line-height: 1;
}
.tm-progress-bg {
  width: 80px;
  height: 6px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 3px;
  overflow: hidden;
}
.tm-progress-fill {
  height: 100%;
  border-radius: 3px;
  background: var(--grad-sunset);
  transition: width 0.5s ease-out;
}

  background: #60D890;
  animation: pulseDot 1.5s infinite;
  display: inline-block;
  margin-left: 10px;
  vertical-align: middle;
}

@keyframes slideInLeft {
  from { transform: translateX(-100%); }
  to { transform: translateX(0); }
}
.calc-drawer {
  width: 720px;
  max-width: 90vw;
  height: 100vh;
  background: rgba(18, 28, 50, 0.75);
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  border-right: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 10px 0 30px rgba(0,0,0,0.5);
  padding: 32px 40px;
  box-sizing: border-box;
  overflow-y: auto;
  overflow-x: hidden;
  transform: translateX(-100%);
  animation: slideInLeft 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) forwards;
}
.glass-panel {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 14px;
  padding: 16px;
  margin-bottom: 16px;
  box-sizing: border-box;
  min-width: 0;
  box-shadow: inset 0 0 20px rgba(255,255,255,0.01);
}

.glass-input {
  width: 100%;
  box-sizing: border-box;
  background: rgba(0, 0, 0, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 8px;
  color: #fff;
  padding: 10px 12px;
  font-size: 0.9rem;
  outline: none;
  transition: border 0.2s;
}
.glass-input:focus { border-color: rgba(78, 170, 220, 0.6); }
.chat-actions-menu { display:none; flex-direction:column; min-width:200px; padding:6px; border-radius:10px; z-index:20; box-shadow:0 8px 32px rgba(0,0,0,.5); border:1px solid rgba(255,255,255,.15); background: rgba(18, 28, 50, 0.98) !important; backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px); }
.chat-actions-menu.open { display: flex !important; }
.chat-action-item { padding: 8px 12px; font-size: .8rem; color: #fff; cursor: pointer; border-radius: 6px; transition: background 0.15s;  font-weight: 700; white-space: nowrap; }
.chat-action-item:hover { background: rgba(255,255,255,0.1); }

/* Bolinhas de Notificacao */
.notif-read-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  flex-shrink: 0;
  margin-top: 13px;
  margin-right: 6px;
  margin-left: 4px;
  cursor: pointer;
  transition: all 0.2s;
  border: 1.5px solid rgba(255,122,89, 0.4);
}
.notif-read-dot.unread { background: transparent; border-color: var(--coral); }
.notif-read-dot.read { background: var(--coral); box-shadow: 0 0 6px rgba(255,122,89, 0.5); border-color: var(--coral); }
.notif-read-dot:hover {
  transform: scale(1.3);
}
.notif-item.ler .notif-text {
  text-decoration: line-through;
  opacity: 0.6;
  transition: all 0.3s ease;
}
.notif-item.ler .notif-read-dot {
  background: var(--coral);
  box-shadow: 0 0 6px rgba(255,122,89, 0.5);
  border-color: var(--coral);
  transform: scale(1.1);
}

/* Ferramentas group is now always visible */

/* ══ WHATSAPP DRAWER (MULTITASK) ══ */
.whatsapp-drawer {
  width: 750px;
  max-width: 95vw;
  background: var(--bg-2);
  border-left: 1px solid var(--border);
  display: none;
  flex-direction: column;
}
.whatsapp-drawer.open {
  display: flex;
}
#help-menu.open { display: flex !important; }

/* -- CHANNEL DRAWER (CHAT + FORUM) -- */
.channel-drawer {
  flex: 1;
  min-width: 0;
  background: var(--bg-2);
  border-left: 1px solid var(--border);
  display: none;
}
.channel-drawer.open {
  display: flex;
}
.channel-drawer.expanded {
  /* Mantém a largura original, substituindo o chat pelo fórum */
}

.drawer-resizer {
  width: 6px;
  background: rgba(255,255,255,.06);
  cursor: col-resize;
  transition: background 0.15s, width 0.15s;
  z-index: 10;
  flex-shrink: 0;
  position: relative;
}
.drawer-resizer::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 2px;
  height: 32px;
  background: rgba(255,255,255,.2);
  border-radius: 2px;
  transition: background 0.15s, height 0.15s;
}
.drawer-resizer:hover {
  background: rgba(232,123,176,.15);
  width: 6px;
}
.drawer-resizer:hover::after {
  background: var(--coral);
  height: 48px;
}
.drawer-resizer:active {
  background: rgba(232,123,176,.25);
}
.channel-drawer-chat {
  flex: 1;
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}
.channel-drawer.expanded .channel-drawer-chat {
  display: none;
}
.channel-drawer-forum {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-width: 0;
  display: none;
}
.channel-drawer.expanded .channel-drawer-forum {
  display: flex;
}

  @keyframes ancSlideUp {
    from { opacity:0; transform:translateX(-50%) translateY(16px); }
    to   { opacity:1; transform:translateX(-50%) translateY(0); }
  }

  /* ── Hello AI Bubble ── */
  #assistente-bubble {
    position: fixed;
    bottom: 24px;
    right: 24px;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: linear-gradient(135deg, #8B5CF6, #6D28D9);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 4px 20px rgba(109,40,217,.45);
    z-index: 9998;
    transition: right .3s cubic-bezier(0.4, 0, 0.2, 1), transform .18s, box-shadow .18s;
    user-select: none;
  }
  #assistente-bubble:hover { transform: scale(1.08); box-shadow: 0 6px 28px rgba(109,40,217,.6); }
  #assistente-bubble.active { background: linear-gradient(135deg, #6D28D9, #4C1D95); }

  /* Afasta a IA quando a gaveta do WhatsApp ou dos canais abrir */
  body:has(#unified-drawer.open) #assistente-bubble,
  body:has(#whatsapp-drawer.open) #assistente-bubble,
  body:has(#channel-drawer.open) #assistente-bubble {
    right: calc(var(--drawer-width, 750px) + 24px);
  }

  /* ── Janela do chat ── */
  #assistente-win {
    position: fixed;
    bottom: 86px;
    right: 24px;
    width: 360px;
    max-height: 520px;
    background: #13192B;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 12px 48px rgba(0,0,0,.55);
    z-index: 9999;
    opacity: 0;
    pointer-events: none;
    transform: translateY(12px) scale(.97);
    transition: right .3s cubic-bezier(0.4, 0, 0.2, 1), opacity .2s, transform .2s;
    overflow: hidden;
  }
  
  /* Afasta a janela da IA quando a gaveta do WhatsApp ou dos canais abrir */
  body:has(#unified-drawer.open) #assistente-win,
  body:has(#whatsapp-drawer.open) #assistente-win,
  body:has(#channel-drawer.open) #assistente-win {
    right: calc(var(--drawer-width, 750px) + 24px);
  }
  #assistente-win.open {
    opacity: 1;
    pointer-events: all;
    transform: translateY(0) scale(1);
  }

  /* Header */
  #assistente-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    background: linear-gradient(135deg, #1a1040, #1e1560);
    border-bottom: 1px solid rgba(255,255,255,.08);
    flex-shrink: 0;
  }
  #assistente-close {
    background: none;
    border: none;
    color: rgba(255,255,255,.45);
    font-size: 1rem;
    cursor: pointer;
    padding: 4px 6px;
    border-radius: 6px;
    transition: background .15s;
  }
  #assistente-close:hover { background: rgba(255,255,255,.1); color: #fff; }

  /* Mensagens */
  #assistente-msgs {
    flex: 1;
    overflow-y: auto;
    padding: 14px 12px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    scrollbar-width: thin;
    scrollbar-color: rgba(255,255,255,.1) transparent;
  }
  .assistente-msg {
    max-width: 86%;
    font-size: .82rem;
    line-height: 1.6;
    padding: 9px 13px;
    border-radius: 12px;
    word-break: break-word;
  }
  .assistente-msg-user {
    background: linear-gradient(135deg, #6D28D9, #8B5CF6);
    color: #fff;
    align-self: flex-end;
    border-bottom-right-radius: 4px;
  }
  .assistente-msg-assistant {
    background: rgba(255,255,255,.07);
    color: #D8E4F8;
    align-self: flex-start;
    border: 1px solid rgba(255,255,255,.08);
    border-bottom-left-radius: 4px;
  }
  .assistente-msg strong { color: #C8B0FF; }
  .assistente-msg code {
    background: rgba(0,0,0,.3);
    padding: 1px 5px;
    border-radius: 4px;
    font-size: .78rem;
    color: #A0E8D0;
  }

  /* Typing indicator */
  .assistente-typing {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 10px 14px;
  }
  .assistente-typing span {
    width: 7px; height: 7px;
    border-radius: 50%;
    background: rgba(255,255,255,.35);
    animation: assistenteBounce 1.1s infinite ease-in-out;
  }
  .assistente-typing span:nth-child(2) { animation-delay: .18s; }
  .assistente-typing span:nth-child(3) { animation-delay: .36s; }
  @keyframes assistenteBounce {
    0%,80%,100% { transform: translateY(0); opacity:.4; }
    40% { transform: translateY(-6px); opacity:1; }
  }

  /* Footer / input */
  #assistente-footer {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    padding: 10px 12px;
    border-top: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.03);
    flex-shrink: 0;
  }
  #assistente-input {
    flex: 1;
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 10px;
    color: #E8F0FF;
    font-size: .82rem;
    padding: 8px 11px;
    resize: none;
    outline: none;
    min-height: 36px;
    max-height: 120px;
    line-height: 1.5;
    font-family: inherit;
    transition: border-color .15s;
  }
  #assistente-input:focus { border-color: rgba(139,92,246,.5); }
  #assistente-input::placeholder { color: rgba(255,255,255,.3); }
  #assistente-input::-webkit-scrollbar { width: 4px; }
  #assistente-input::-webkit-scrollbar-thumb { background: rgba(255,255,255,.15); border-radius: 4px; }
  #assistente-input::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,.3); }
  #assistente-send {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: linear-gradient(135deg, #8B5CF6, #6D28D9);
    color: #fff;
    border: none;
    font-size: 1rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: opacity .15s;
  }
  #assistente-send:hover { opacity: .85; }
  #assistente-send:disabled { opacity: .4; cursor: default; }

  @media (max-width: 480px) {
    #assistente-win { right: 8px; left: 8px; width: auto; bottom: 78px; }
    #assistente-bubble { bottom: 16px; right: 16px; }
  }


/* ============================================================================
   GAVETA UNIFICADA DE COMUNICACAO
============================================================================ */
.unified-drawer {
  position: relative;
  width: 0;
  min-width: 0;
  background: var(--bg-2);
  border-left: none;
  z-index: 40;
  display: flex;
  flex-direction: column;
  transition: width 0.3s cubic-bezier(0.2, 0, 0.2, 1), min-width 0.3s cubic-bezier(0.2, 0, 0.2, 1);
  overflow: hidden;
  height: 100%;
}
.unified-drawer.open {
  width: var(--drawer-width, 750px);
  min-width: var(--drawer-width, 750px);
  border-left: 1px solid var(--border);
}
.unified-tabs {
  display: flex;
  background: rgba(18,28,50,0.8);
  border-bottom: 1px solid var(--border);
  padding: 0 16px;
  gap: 16px;
  height: 54px;
  align-items: center;
  flex-shrink: 0;
}
.unified-tab {
  color: rgba(255,255,255,0.5);
  font-size: 0.85rem;
  font-weight: 600;
  cursor: pointer;
  padding: 8px 12px;
  border-radius: 8px;
  transition: all 0.2s;
}
.unified-tab:hover {
  background: rgba(255,255,255,0.05);
  color: rgba(255,255,255,0.8);
}
.unified-tab.active {
  background: rgba(255,255,255,0.1);
  color: #fff;
}
.unified-content {
  flex: 1;
  position: relative;
  overflow: hidden;
}
/* Override nas gavetas originais para ficarem absolutas e preencherem 100% da unified-drawer */
.unified-drawer .interna-drawer, .unified-drawer .whatsapp-drawer, .unified-drawer .insta-drawer {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  width: 100% !important;
  border: none;
  display: none;
}
.unified-drawer .interna-drawer.open, .unified-drawer .whatsapp-drawer.open, .unified-drawer .insta-drawer.open {
  display: flex !important;
}

. h i d d e n 
 
   d i s p l a y :   n o n e   ! i m p o r t a n t ;   
 
 