/* From Uiverse.io by barisdogansutcu (loader), pharmacist-sabot (switch); MIT. */
.fd-chats-stage .fd-chat-loading{position:absolute;inset:0;z-index:4;display:grid;place-items:center;pointer-events:none}
.fd-chats-stage .fd-chat-spinner{width:3.25rem;height:3.25rem;transform-origin:center;animation:fd-spinner-rotate 2s linear infinite}
.fd-chats-stage .fd-chat-spinner circle{fill:none;stroke:hsl(214,97%,59%);stroke-width:2;stroke-dasharray:1,200;stroke-dashoffset:0;stroke-linecap:round;animation:fd-spinner-dash 1.5s ease-in-out infinite}
@keyframes fd-spinner-rotate{100%{transform:rotate(360deg)}}
@keyframes fd-spinner-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,200;stroke-dashoffset:-2.1875rem}100%{stroke-dashoffset:-7.8125rem}}
/* Existing switch dimensions and selection logic are retained. */
.fd-chats-stage .fd-cliente-switch{--_switch-glow-rgb:144,186,255;--_switch-bg-clr:#0f1016;--_switch-padding:0.1875rem;--_slider-txt-clr:#aeb9cc;--_switch-easing:cubic-bezier(.22,1,.36,1);--_switch-radius:calc(0.875rem * var(--fd-island-k));--_slider-radius:calc(0.6875rem * var(--fd-island-k));border-radius:var(--_switch-radius);background:#0f1016;box-shadow:inset 0 0.125rem 0.25rem rgba(0,0,0,.8),inset 0 -1px 0.125rem rgba(255,255,255,.05);overflow:hidden;clip-path:inset(0 round var(--_switch-radius))}
.fd-chats-stage .fd-cliente-switch::after{background:transparent;border:1px solid #1f222e}
.fd-chats-stage .fd-cliente-switch::before{z-index:0;box-sizing:border-box;border-radius:var(--_slider-radius);background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.15);box-shadow:0 0 0.3125rem rgba(var(--_switch-glow-rgb),.3),inset 0 0 0.9375rem rgba(var(--_switch-glow-rgb),.2);backdrop-filter:blur(0.25rem);transition:transform .5s var(--_switch-easing);animation:fd-switch-blue-pulse 3s ease-in-out infinite}
.fd-chats-stage .fd-cliente-switch>button{position:relative;z-index:1;border-radius:var(--_slider-radius);transition:opacity .3s ease,color .3s ease,background .3s ease}
.fd-chats-stage .fd-cliente-switch>button:hover{background:radial-gradient(circle at 50% -20%,rgba(255,255,255,.1),transparent 60%);color:#aeb9cc}
.fd-chats-stage .fd-cliente-switch>button[aria-pressed=true],.fd-chats-stage .fd-cliente-switch>button[aria-pressed=true]:hover{color:#fff}
@keyframes fd-switch-blue-pulse{0%,100%{box-shadow:0 0 0.25rem rgba(var(--_switch-glow-rgb),.24),inset 0 0 0.9375rem rgba(var(--_switch-glow-rgb),.2)}50%{box-shadow:0 0 0.375rem rgba(var(--_switch-glow-rgb),.3),inset 0 0 1.25rem rgba(var(--_switch-glow-rgb),.3)}}
.fd-chats-stage .fd-details-menu-item{perspective:none;border-radius:calc(0.75rem * var(--fd-island-k))}
.fd-chats-stage .fd-details-menu-item svg{transform:rotate(0deg) scale(1);transition:transform .4s var(--fd-island-spring,cubic-bezier(.22,1.2,.36,1))}
.fd-chats-stage .fd-details-menu-item:is(:hover,:focus-visible) svg{transform:rotate(-15deg) scale(1);color:inherit}
.fd-chats-stage .fd-details-menu-item:active svg{transform:rotate(-15deg) scale(.94);transition-duration:.08s}
.fd-chats-stage .fd-details-menu .fd-details-menu-item[aria-pressed=true],.fd-chats-stage .fd-details-menu .fd-details-menu-item[aria-pressed=true]:is(:hover,:focus-visible) svg{color:#629ee9}
.fd-chats-stage.is-details-collapsed .fd-details-content,.fd-chats-stage.is-details-collapsed .fd-details-connections,.fd-chats-stage.is-details-collapsed .fd-details-search{display:none}
.fd-chats-stage.is-details-collapsed .fd-details-topbar{--fd-island-body:0px;border-radius:calc(1.3125rem * var(--fd-island-k))}
.fd-chats-stage.is-details-collapsed .fd-details-topbar::before,.fd-chats-stage.is-details-collapsed .fd-details-topbar::after{display:none}

/* Animações completas, inclusive quando o tema usa regras globais de movimento. */
.fd-chats-stage .fd-chat-orb{animation-duration:6s!important;animation-iteration-count:infinite!important}
.fd-chats-stage .fd-chat-orb-mask{animation-duration:1s!important;animation-iteration-count:infinite!important}
.fd-chats-stage .fd-chat-orb-mask polygon:nth-child(n+2){animation-duration:2s!important;animation-iteration-count:infinite!important}
.fd-chats-stage .fd-cliente-switch::before{animation-duration:3s!important;animation-iteration-count:infinite!important;transition-duration:.5s!important;background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent) center top/80% 1px no-repeat,linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.02))}
.fd-chats-stage .fd-details-menu-item svg{transition-duration:.4s!important}
.fd-chats-stage .fd-details-menu-item:active svg{transition-duration:.08s!important}

/* Contraste do switch acompanha o tema, preservando a bolha e seu movimento. */
.fd-chats-stage .fd-cliente-switch{--_switch-bg-clr:#dbe3f0;--_slider-txt-clr:#53647f;background:#dbe3f0;box-shadow:inset 0 0.125rem 0.25rem rgba(53,76,110,.15),inset 0 -1px 0.125rem rgba(255,255,255,.7)}
.fd-chats-stage .fd-cliente-switch::after{border-color:#becce0}
.fd-chats-stage .fd-cliente-switch::before{border-color:rgba(255,255,255,.8);background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent) center top/80% 1px no-repeat,linear-gradient(145deg,rgba(255,255,255,.8),rgba(255,255,255,.4))}
.fd-chats-stage .fd-cliente-switch>button:hover{color:#405575}
.fd-chats-stage .fd-cliente-switch>button[aria-pressed=true],.fd-chats-stage .fd-cliente-switch>button[aria-pressed=true]:hover{color:#234e87}
.fd-app-dark .fd-chats-stage .fd-cliente-switch{--_switch-bg-clr:#0f1016;--_slider-txt-clr:#aeb9cc;background:#0f1016;box-shadow:inset 0 0.125rem 0.25rem rgba(0,0,0,.8),inset 0 -1px 0.125rem rgba(255,255,255,.05)}
.fd-app-dark .fd-chats-stage .fd-cliente-switch::after{border-color:#1f222e}
.fd-app-dark .fd-chats-stage .fd-cliente-switch::before{border-color:rgba(255,255,255,.15);background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent) center top/80% 1px no-repeat,linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.02))}
.fd-app-dark .fd-chats-stage .fd-cliente-switch>button:hover{color:#aeb9cc}
.fd-app-dark .fd-chats-stage .fd-cliente-switch>button[aria-pressed=true],.fd-app-dark .fd-chats-stage .fd-cliente-switch>button[aria-pressed=true]:hover{color:#fff}

.fd-chats-stage.is-details-collapsed .fd-details-topbar{height:calc(var(--fd-details-collapsed-height) - 0.625rem)}
.fd-chats-stage.is-details-collapsed .fd-details-menu{height:100%}
.fd-chats-stage.is-details-collapsed .fd-details-menu-item svg{top:0}
.fd-chats-stage .fd-details-menu-badge{background:#ef4444}

.fd-chats-stage .fd-cliente-kanban .fd-kanban-list{overflow-y:auto;scrollbar-width:none}
.fd-chats-stage .fd-cliente-kanban .fd-kanban-list::-webkit-scrollbar{display:none}

/* Cards compactos inspirados em arafatrahat94 / Uiverse, adaptados ao FiveDesk. */
.fd-details-profiles{font-family:Inter,'Segoe UI',sans-serif;position:relative;z-index:1;display:grid;grid-template-rows:auto auto minmax(11.875rem,1fr);gap:var(--fd-kanban-gap,0.5rem);flex:1;min-height:0;overflow-y:auto;scrollbar-width:none}
.fd-details-profiles::-webkit-scrollbar{display:none}
.fd-details-profiles[hidden]{display:none}
.fd-details-content .fd-details-profile{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0.625rem;flex:none;height:auto;min-height:0;padding:0.75rem;outline:1px solid rgba(255,255,255,.3);outline-offset:-1px}
.fd-details-profile-info{display:flex;align-items:center;gap:0.625rem;min-width:0}
.fd-details-profile-photo{flex:0 0 2.875rem;width:2.875rem;height:2.875rem;border-radius:0.625rem;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#629ee9,#b8d6fa);color:white;font-size:1.25rem}
.fd-details-profile-photo img{width:100%;height:100%;object-fit:cover}
.fd-details-profile-summary{flex:1;min-width:0;display:flex;flex-direction:column;gap:0.25rem}
.fd-details-profile-summary strong{font-size:0.875rem;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fd-details-profile-responsible{font-size:0.6875rem;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fd-details-profile-stats{display:flex;align-items:stretch;gap:0.5rem;font-size:0.75rem;min-height:1.6875rem}
.fd-details-profile-stats>span{display:flex;align-items:center;justify-content:flex-start;gap:0.4375rem;flex:1 1 0;min-width:0;box-sizing:border-box;padding:0.1875rem 0.5rem;border-radius:0.5rem;background:rgba(255,255,255,.55)}

.fd-details-profile-stats svg{width:1rem;height:1rem;flex:none}
.fd-details-profile-stats .fd-details-star{color:#eab308}
.fd-details-profile-stats b{color:inherit;font-size:0.75rem}
.fd-details-profile-more{flex:0 0 1.625rem;width:1.625rem;height:1.625rem;padding:0;border:0;border-radius:0.4375rem;background:rgba(255,255,255,.6);color:#377bcf;font:1.5rem/1 Inter,sans-serif;cursor:pointer;transition:background .2s,color .2s}
.fd-details-profile-more:hover,.fd-details-profile-more[aria-expanded=true]{background:#629ee9;color:white}
.fd-details-profile-more:focus-visible{outline:0.125rem solid #629ee9;outline-offset:0.125rem}
.fd-app-dark .fd-details-content .fd-details-profile{outline:0;border:0;box-shadow:none}
.fd-app-dark .fd-details-profile-responsible{color:#aebbd0}
.fd-app-dark .fd-details-profile-stats>span,.fd-app-dark .fd-details-profile-more{background:rgba(255,255,255,.08);color:#c1d8f3}

.fd-app-dark .fd-details-profile-more:hover{background:#629ee9;color:white}
.fd-ticket-details-form{display:flex;flex-direction:column;justify-content:space-between;gap:0.375rem;min-height:0;height:100%;overflow-y:auto;scrollbar-width:none;margin:0;font:0.6875rem/1.4 Inter,'Segoe UI',sans-serif}
.fd-ticket-details-form::-webkit-scrollbar{display:none}
.fd-ticket-details-row{display:flex;align-items:center;justify-content:space-between;gap:0.625rem;min-height:1.375rem;flex:none}
.fd-ticket-details-row>label{font-weight:600;flex:none}
.fd-ticket-details-row>span{min-width:0;text-align:right;overflow-wrap:anywhere}
.fd-ticket-details-row .fd-kanban-tag{font-size:0.625rem;padding:0.125rem 0.375rem;max-width:65%;white-space:normal;overflow-wrap:anywhere}
/* Pilha de rostos: nunca quebra linha — dois participantes viravam dois circulos inteiros, um
   embaixo do outro, em vez da pilha da referencia (20/10/2026). */
.fd-ticket-details-people{display:flex;justify-content:flex-end;flex-wrap:nowrap;align-items:center;padding-left:0.375rem;isolation:isolate}
.fd-ticket-details-avatar{display:grid;place-items:center;position:relative;flex:none;width:1.5rem;height:1.5rem;border-radius:50%;border:0.125rem solid #f5f7ff;background:#629ee9;color:white;margin-left:-0.5rem;font:600 0.5625rem/1 Inter,sans-serif}
.fd-ticket-details-avatar:first-child{margin-left:0}
.fd-ticket-details-avatar.is-contagem{z-index:0;background:#111827;color:#fff;font-size:0.5625rem;letter-spacing:-.2px}
.fd-app-dark .fd-ticket-details-avatar.is-contagem{background:#0b1220}
.fd-ticket-details-avatar:hover,.fd-ticket-details-avatar:focus{z-index:2;outline:1px solid #629ee9;outline-offset:1px}
.fd-ticket-details-avatar img{width:100%;height:100%;border-radius:inherit;object-fit:cover}
.fd-app-dark .fd-ticket-details-avatar{border-color:#353941}
.fd-details-profile-popup{position:fixed;z-index:10000;box-sizing:border-box;padding:1rem;border-radius:0.625rem;background:#f3f6fc;color:#26282d;box-shadow:0 0.375rem 1.5rem #0003;border:1px solid #d6e1f1;max-height:calc(100vh - 1.5rem);overflow:auto;scrollbar-width:none;font:0.75rem/1.5 Inter,'Segoe UI',sans-serif}
.fd-details-profile-popup[hidden]{display:none}
.fd-details-profile-popup>button{float:right;border:0;background:transparent;color:inherit;font-size:1.25rem;cursor:pointer}
.fd-details-profile-popup dl{margin:0.75rem 0 0}
.fd-details-profile-popup dl>div{display:flex;gap:0.3125rem;padding:0.25rem 0;overflow-wrap:anywhere}
.fd-details-profile-popup dt{font-weight:600;flex:none}
.fd-details-profile-popup dd{margin:0;min-width:0}
.fd-details-profile-popup .fd-details-address{border-top:1px solid #629ee933;margin-top:0.5rem;padding-top:0.75rem}
.fd-app-dark .fd-details-profile-popup{background:#242a36;color:#eef2f8;border-color:#ffffff24}

.fd-chats-stage .fd-kanban-item{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.075' filter='url(%23g)'/%3E%3C/svg%3E");background-size:7.5rem 7.5rem}
.fd-chats-stage .fd-kanban-item:not([aria-pressed=true]){background-color:rgba(255,255,255,.12)}
.fd-app-dark .fd-chats-stage .fd-kanban-item{background-image:none}
.fd-app-dark .fd-chats-stage .fd-kanban-item:not([aria-pressed=true]){background-color:rgba(255,255,255,.04)}

/* Shared empty answers and fixed participant portraits. */
.fd-ticket-details-avatar{box-sizing:border-box;min-width:1.5rem;max-width:1.5rem;min-height:1.5rem;max-height:1.5rem;aspect-ratio:1;overflow:hidden}
.fd-ticket-details-avatar>img{display:block;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;aspect-ratio:1;object-fit:cover;border-radius:50%}
.fd-details-profile[role=button]{cursor:pointer}
.fd-details-profile[role=button]:focus-visible{outline:0.125rem solid #629ee9;outline-offset:0.125rem}

/* Registration popover: shared header and aligned field columns. */
.fd-details-profile-popup{padding:1rem;border-radius:0.875rem;border-color:rgba(133,163,205,.28);background:#f3f6fc;box-shadow:0 0.75rem 2rem rgba(29,45,75,.18),inset 0 1px 0 rgba(255,255,255,.8)}
.fd-details-popup-header{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;padding-bottom:0.75rem;border-bottom:1px solid rgba(98,158,233,.2)}
.fd-details-popup-header>strong{font-size:0.8125rem;line-height:1.75rem;font-weight:650}
.fd-details-popup-header>button{display:grid;place-items:center;flex:none;width:1.75rem;height:1.75rem;padding:0;border:0;border-radius:0.5rem;background:transparent;color:#64748b;font:1.375rem/1 Inter,sans-serif;cursor:pointer;transition:background .2s,color .2s}
.fd-details-popup-header>button:hover{background:rgba(98,158,233,.12);color:#26282d}
.fd-details-popup-header>button:focus-visible{outline:0.125rem solid #629ee9;outline-offset:0.125rem}
.fd-details-profile-popup dl{display:grid;gap:0.5rem;margin:0.75rem 0 0}
.fd-details-profile-popup dl>div{display:grid;grid-template-columns:7.375rem minmax(0,1fr);align-items:start;gap:0.625rem;padding:0;line-height:1.5}
.fd-details-profile-popup dt{font-size:0.6875rem;color:#526078;white-space:normal}
.fd-details-profile-popup dd{font-size:0.75rem;color:#26282d;overflow-wrap:anywhere}
.fd-details-profile-popup dl>.fd-details-address{padding-top:0.75rem;margin-top:0.25rem;border-top:1px solid rgba(98,158,233,.2)}
.fd-app-dark .fd-details-profile-popup{background:#282c34;border-color:rgba(255,255,255,.12);box-shadow:0 0.75rem 2rem rgba(0,0,0,.3)}
.fd-app-dark .fd-details-profile-popup dt,.fd-app-dark .fd-details-popup-header>button{color:#aebbd0}
.fd-app-dark .fd-details-profile-popup dd,.fd-app-dark .fd-details-popup-header>strong{color:#f1f5f9}

/* Skeleton shimmer inspired by Uiverse.io/mrhyddenn/warm-wasp-21; MIT. */
.is-details-skeleton{--fd-skeleton-base:rgba(142,159,190,.18);--fd-skeleton-light:rgba(245,248,255,.8)}
.fd-app-dark .is-details-skeleton{--fd-skeleton-base:rgba(164,181,210,.09);--fd-skeleton-light:rgba(164,181,210,.22)}
.is-details-skeleton :is(.fd-details-profile-photo,.fd-details-profile-summary strong,.fd-details-profile-responsible,.fd-details-profile-stats>span,.fd-ticket-details-row>label,.fd-ticket-details-row>span){position:relative;color:transparent!important;overflow:hidden}
.is-details-skeleton :is(.fd-details-profile-photo,.fd-details-profile-summary strong,.fd-details-profile-responsible,.fd-details-profile-stats>span,.fd-ticket-details-row>label,.fd-ticket-details-row>span)::after{content:'';position:absolute;inset:0;border-radius:0.375rem;background:linear-gradient(120deg,var(--fd-skeleton-base) 30%,var(--fd-skeleton-light) 38%,var(--fd-skeleton-light) 40%,var(--fd-skeleton-base) 48%);background-size:200% 100%;background-position:100% 0;animation:fd-details-shimmer 2s infinite}
.is-details-skeleton .fd-details-profile-photo::after{border-radius:inherit}
/* Só o conteúdo carregando some; as abas e a busca do card ficam (24/10/2026). */
.is-details-skeleton :is(img,svg,.fd-ticket-details-avatar):not(:is(.fd-details-menu,.fd-details-topbar,.fd-cliente-topbar) *){visibility:hidden}
.is-details-skeleton .fd-details-profile-responsible:empty{height:0.9375rem;width:70%}
.is-details-skeleton .fd-ticket-details-row>span:empty{width:5rem;height:1.125rem}
@keyframes fd-details-shimmer{100%{background-position:-100% 0}}
@media(prefers-reduced-motion:reduce){.is-details-skeleton ::after{animation:none!important}}

/* Chat: avisos e histórico consultivo. */
.fd-chats-stage .fd-kanban-recovered{font-size:0.6875rem;border-radius:0.5rem;padding:1px 0.3125rem;background:color-mix(in srgb,currentColor 12%,transparent);white-space:nowrap}
.fd-chats-stage [data-sessao="finalizado"].has-recovered::after{content:"";width:0.375rem;height:0.375rem;border-radius:50%;background:#3a9b76;position:absolute;right:0.3125rem;top:0.3125rem}
.fd-chats-stage .fd-chat-tab-count{font-size:0.625rem;margin-left:0.25rem}
.fd-chats-stage .fd-chat-new-messages{position:absolute;right:1.25rem;bottom:5.625rem;z-index:5;border:1px solid #9995;border-radius:1.125rem;padding:0.4375rem 0.75rem;background:var(--surface,#fff);color:var(--text,#234);box-shadow:0 0.125rem 0.5rem #0002;cursor:pointer}
.fd-chats-stage .fd-chat-new-messages[hidden]{display:none}
.fd-chats-stage .fd-contact-history{height:100%;min-height:0;display:flex;flex-direction:column}
.fd-chats-stage .fd-contact-history[hidden]{display:none}
.fd-chats-stage .fd-contact-history header{padding:0.5rem 0.75rem;font-size:0.75rem}
.fd-chats-stage .fd-contact-history-messages{position:relative;flex:1;overflow-y:auto;min-height:0;overflow-anchor:none}
.fd-chats-stage .fd-history-before{font-size:0.625rem;opacity:.7;margin:0.1875rem 0}
/* Ancoragem nativa ligada (25/10/2026): imagem que carrega e mensagens antigas que entram acima não empurram a leitura. */
.fd-chats-stage .fd-v2-messages{overflow-anchor:auto}
.fd-chats-stage .fd-v2-messages[data-loading-older="true"]::before{content:"Carregando anteriores…";display:block;text-align:center;font-size:0.6875rem;padding:0.3125rem;position:sticky;top:0;z-index:2}

/* Detalhes: duas linhas por perfil e sete posições iguais às dos atendimentos. */
.fd-chats-stage .fd-details-content{container-type:size;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}
.fd-chats-stage .fd-details-content>.fd-details-profiles{height:100cqh;flex:0 0 100cqh;display:grid;grid-template-rows:repeat(7,minmax(0,1fr));gap:var(--fd-kanban-gap,0.5rem);overflow:visible}
.fd-chats-stage .fd-details-content>.fd-details-profiles[hidden]{display:none}
.fd-chats-stage .fd-details-content .fd-details-profile{display:grid;grid-template-columns:2.25rem minmax(0,1fr) minmax(3.5rem,28%);grid-template-rows:repeat(2,minmax(0,auto));align-content:center;align-items:center;column-gap:0.5rem;row-gap:0.125rem;padding:0.5rem;height:auto;outline:0;min-height:0}
.fd-chats-stage .fd-details-profile-info,.fd-chats-stage .fd-details-profile-stats{display:contents}
.fd-chats-stage .fd-details-profile-photo{grid-column:1;grid-row:1 / span 2;position:relative;width:2.25rem;height:2.25rem;border-radius:50%;font:600 0.6875rem/1 Inter,'Segoe UI',sans-serif;background:#8aa0b8}
.fd-chats-stage .fd-details-profile-summary{grid-column:2;grid-row:1 / span 2;gap:0.25rem}
.fd-chats-stage .fd-details-profile-summary strong{font-size:0.8125rem;line-height:1.2}
.fd-chats-stage .fd-details-profile-responsible{font-size:0.75rem;line-height:1.2}
.fd-chats-stage .fd-details-profile-stats>span{grid-column:3;display:flex;align-items:center;justify-content:center;gap:0.3125rem;min-height:0;padding:0.1875rem 0.375rem;border-radius:var(--fd-kanban-radius,0.625rem);background:#ffffff38;font:500 0.6875rem/1.2 Inter,'Segoe UI',sans-serif}
.fd-chats-stage .fd-details-profile-stats>span:first-child{grid-row:1}
.fd-chats-stage .fd-details-profile-stats>span:last-child{grid-row:2}
.fd-chats-stage .fd-details-profile-stats svg{width:0.8125rem;height:0.8125rem}
.fd-chats-stage .fd-details-profile-stats b{font:inherit}
.fd-chats-stage .fd-details-content .fd-details-ticket-empty{grid-row:3 / span 5;display:block;overflow:auto;padding:0.75rem}
.fd-chats-stage .fd-details-view-switch{height:100%;grid-template-columns:repeat(2,minmax(0,1fr))}
.fd-chats-stage .fd-details-view-switch::before{width:calc((100% - 2 * var(--_switch-padding))/2)}
.fd-chats-stage .fd-details-view-switch>button{min-width:0;padding:0 0.1875rem;font-size:0.6875rem}
.fd-chats-stage .fd-details-connections .fd-cliente-switch[hidden]{display:none}
.fd-chats-stage .fd-ticket-activities{height:100cqh;flex:0 0 100cqh;min-height:0;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:0.75rem;overflow:hidden}
.fd-chats-stage .fd-ticket-activities[hidden]{display:none}
.fd-ticket-activities>header{display:flex;flex-direction:column;gap:0.25rem;padding:0 0 0.75rem;border-bottom:1px solid #8aa0b833;font:0.8125rem/1.4 Inter,'Segoe UI',sans-serif}
.fd-ticket-activities>header small{font-size:0.6875rem;color:#64748b}
.fd-ticket-activities>[role=status]{font:0.75rem/1.4 Inter,'Segoe UI',sans-serif;margin:0.5rem 0}
.fd-ticket-activities>[role=status]:empty{display:none}
.fd-ticket-activity-list{list-style:none;margin:0;padding:0.75rem 0 0;overflow:auto;min-height:0;scrollbar-width:none;font:0.75rem/1.45 Inter,'Segoe UI',sans-serif}
.fd-ticket-activity-list>li{position:relative;padding:0 0 1.25rem 1.75rem;min-height:2.625rem}
.fd-ticket-activity-list>li:not(:last-child)::before{content:'';position:absolute;left:0.5625rem;top:1.5rem;bottom:0.3125rem;width:1px;background:#8aa0b850}
.fd-ticket-activity-icon{position:absolute;left:0;top:0;color:#629ee9;width:1.25rem;height:1.25rem}
.fd-ticket-activity-icon svg{width:1.125rem;height:1.125rem}
.fd-ticket-activity-list>li[data-activity-kind=open] .fd-ticket-activity-icon,.fd-ticket-activity-list>li[data-activity-kind=resume] .fd-ticket-activity-icon{color:#22a35a}
.fd-ticket-activity-list>li[data-activity-kind=urgent] .fd-ticket-activity-icon,.fd-ticket-activity-list>li[data-activity-kind=close] .fd-ticket-activity-icon{color:#ef4444}
.fd-ticket-activity-list strong{display:block;font-size:0.75rem;font-weight:600}
.fd-ticket-activity-list time{display:block;margin-top:0.25rem;font-size:0.625rem;color:#64748b}
.fd-ticket-activity-list p{white-space:pre-wrap;overflow-wrap:anywhere;color:#526078;margin:0.375rem 0 0;font-size:0.6875rem}
.fd-app-dark .fd-ticket-activity-list :is(time,p),.fd-app-dark .fd-ticket-activities>header small{color:#aebbd0}
/* Contadores sobrepostos: mesma bolinha vermelha, sem espaço reservado nem zero. */
.fd-chats-stage :is(.fd-group-unread,.fd-details-menu-badge,.fd-chat-tab-count){position:absolute;top:-0.3125rem;left:-0.3125rem;right:auto;bottom:auto;z-index:20;box-sizing:border-box;width:1.25rem;min-width:1.25rem;height:1.25rem;padding:0;border-radius:50%;margin:0;background:#ef4444;color:#fff;font:700 0.5625rem/1.25rem Inter,'Segoe UI',sans-serif;text-align:center;pointer-events:none}
.fd-chats-stage .fd-kanban-photo{position:relative;overflow:visible}
.fd-chats-stage .fd-kanban-photo img{border-radius:50%}
.fd-chats-stage .fd-kanban-item{overflow:visible}
.fd-chats-stage .fd-chats-card-cliente,.fd-chats-stage .fd-chats-card-detalhes{overflow:visible}
.fd-chats-stage .fd-ticket-activities,.fd-chats-stage .fd-details-ticket-empty{overflow:auto}

/* Barra única: todos os botões usam a física e o relevo das tratativas. */
.fd-glass-dock .fd-agente-embedded{position:static;display:contents;background:none;border:0;box-shadow:none}
.fd-glass-dock .fd-agente-embedded .fd-agente-dl{position:relative;inset:auto;margin:0;padding:0;transform:none;background:transparent;box-shadow:none;border:0;overflow:visible}
.fd-glass-dock .fd-agente-embedded .fd-glass-dock-face{position:relative;display:grid;place-items:center;width:100%;height:100%}
.fd-glass-dock .fd-agente-dl .fd-agente-ring{position:absolute;inset:0;width:100%;height:100%}
.fd-glass-dock .fd-agente-dl .fd-agente-icon{position:relative;inset:auto;width:45%;height:45%}
.fd-glass-dock-item[data-action=voz] .fd-glass-dock-face,.fd-glass-dock-item[data-action=video] .fd-glass-dock-face{--fd-fill-light:#b9ffe5;--fd-fill-soft:#81e5c8;--fd-fill-mid:#45bb9b;--fd-fill-dark:#239071}
.fd-glass-dock-item[data-action=urgencia] .fd-glass-dock-face{--fd-fill-light:#ffbcbc;--fd-fill-soft:#ff9292;--fd-fill-mid:#ef4444;--fd-fill-dark:#c72e3b}
.fd-glass-dock-item[data-action=agente] .fd-glass-dock-face{--fd-fill-light:#d9e7ff;--fd-fill-soft:#aac8ff;--fd-fill-mid:#629ee9;--fd-fill-dark:#376fae}
.fd-glass-dock-item[data-action=temas] .fd-glass-dock-face{background:linear-gradient(145deg,#eee8ff,#c1b4ee,#ece3ff,#a6bbe8);background-size:250% 250%;animation:fd-silk-button-flow 10s ease-in-out infinite}
@keyframes fd-silk-button-flow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.fd-chats-stage .fd-v2-messages:not(.fd-contact-history-messages){background-image:var(--fd-chat-wallpaper-image,none);background-size:cover;background-position:center}
/* ===== Superfície única das listas de tratativa (etapa 2, 20/10/2026) =====
   Finalizar, pausar, transferir, comentário, urgência e tema abriam cada um com a sua cara da v1
   — branco chapado, canto reto, campo nativo, uma cor de fundo por botão. Agora é a mesma
   linguagem do menu da bolha: vidro lavanda, raio 16, item arredondado, realce suave. */
.fd-ticket-action-dropdown,.fd-chat-action-popover,.fd-chat-wallpaper-picker{
    position:fixed;z-index:15000;box-sizing:border-box;width:min(22.5rem,calc(100vw - 1rem));
    max-height:min(35rem,calc(100vh - 2rem));overflow:auto;scrollbar-width:thin;
    border:1px solid rgba(120,130,200,.18);border-radius:1rem;
    background:linear-gradient(170deg,rgba(255,255,255,.94),rgba(240,242,255,.9));
    backdrop-filter:blur(1.125rem) saturate(1.25);-webkit-backdrop-filter:blur(1.125rem) saturate(1.25);
    color:#26282d;box-shadow:0 1px 0.125rem rgba(15,23,42,.06),0 1.375rem 3rem -1.375rem rgba(40,56,120,.45);
    font:0.8125rem/1.45 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    animation:fd-v2-menu-in .16s cubic-bezier(.22,1,.36,1)
}
/* Cabeçalho: título à esquerda, fechar à direita, divisor na cor da moldura. */
.fd-ticket-action-dropdown>header,.fd-chat-action-popover>header{
    display:flex;align-items:center;justify-content:space-between;gap:0.75rem;
    padding:0.875rem 1rem;border-bottom:1px solid rgba(120,130,200,.16)
}
.fd-ticket-action-dropdown>header strong,.fd-chat-action-popover>header strong{font-size:0.9375rem;font-weight:600}
.fd-ticket-action-dropdown>header button,.fd-chat-action-popover>header button,.fd-chat-wallpaper-picker>button{
    display:grid;place-items:center;width:1.875rem;height:1.875rem;padding:0;border:0;border-radius:50%;
    background:transparent;color:#64748b;font-size:1.25rem;line-height:1;cursor:pointer;transition:background .14s,color .14s
}
.fd-ticket-action-dropdown>header button:hover,.fd-chat-action-popover>header button:hover,.fd-chat-wallpaper-picker>button:hover{
    background:rgba(120,130,200,.16);color:#0f172a
}
/* Campos. */
.fd-ticket-action-fields{display:flex;flex-direction:column;gap:0.75rem;padding:0.875rem 1rem 0}
.fd-ticket-action-fields>label{display:flex;flex-direction:column;gap:0.375rem;font-weight:500;color:#475569}
.fd-ticket-action-dropdown :is(select,textarea){
    box-sizing:border-box;width:100%;min-height:2.375rem;padding:0.5625rem 0.75rem;
    border:1px solid rgba(120,130,200,.24);border-radius:0.6875rem;background:rgba(255,255,255,.72);
    color:#26282d;font:inherit;appearance:none;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
    background-repeat:no-repeat;background-position:right 0.75rem center
}
.fd-ticket-action-dropdown textarea{resize:vertical;min-height:5.25rem;background-image:none}
.fd-ticket-action-dropdown :is(select,textarea):focus-visible,.fd-chat-action-body textarea:focus-visible{
    outline:0.125rem solid #2877d5;outline-offset:-1px;border-color:transparent
}
.fd-ticket-action-dropdown select:disabled{opacity:.55;cursor:default}
/* ===== Listas do modal de encerramento no visual da v2 (20/10/2026) =====
   O <select> nativo saiu: no lugar vem o mesmo combobox do encerramento da v1 — busca em cima,
   "Incluir" logo abaixo, e cada linha com o título em negrito sobre a trilha do catálogo. Aqui ele
   troca a moldura quadrada e o anel azul de foco pela superfície de vidro lavanda das demais
   listas de tratativa. */
.fd-ticket-action-dropdown .enc-select-wrapper{display:block;width:100%}
.fd-ticket-action-dropdown .enc-select-trigger{
    box-sizing:border-box;min-height:2.375rem;padding:0.5625rem 2.125rem 0.5625rem 0.75rem;
    border:1px solid rgba(120,130,200,.24);border-radius:0.6875rem;background:rgba(255,255,255,.72);
    color:#26282d;font:inherit;box-shadow:none;transition:border-color .14s,background .14s
}
.fd-ticket-action-dropdown .enc-select-trigger:hover:not(:disabled){border-color:rgba(120,130,200,.44);background:rgba(255,255,255,.92)}
/* Sem anel azul: a borda escurece e a lista abre — é o bastante para saber onde se está. */
.fd-ticket-action-dropdown .enc-select-trigger:focus,
.fd-ticket-action-dropdown .enc-select-trigger:focus-visible{outline:none;box-shadow:none;border-color:rgba(70,90,180,.55)}
.fd-ticket-action-dropdown .enc-select--open .enc-select-trigger{border-color:rgba(70,90,180,.55);background:rgba(255,255,255,.96)}
.fd-ticket-action-dropdown .enc-select-trigger-text.is-placeholder{color:#94a3b8}
.fd-ticket-action-dropdown .enc-select-chevron{color:#64748b}
.fd-v2-select-listbox{
    z-index:15010;padding:0.375rem;border:1px solid rgba(120,130,200,.18);border-radius:0.875rem;
    background:linear-gradient(170deg,rgba(255,255,255,.96),rgba(240,242,255,.94));
    backdrop-filter:blur(1.125rem) saturate(1.25);-webkit-backdrop-filter:blur(1.125rem) saturate(1.25);
    box-shadow:0 1px 0.125rem rgba(15,23,42,.06),0 1.375rem 3rem -1.375rem rgba(40,56,120,.45);
    font:0.8125rem/1.45 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;scrollbar-width:thin
}
/* Lista portada acima do modal (15000). O modals.css carrega DEPOIS deste arquivo com a mesma especificidade
   (.enc-select-listbox.enc-select-listbox--portal, z 12060) e vencia: a lista abria atrás do modal e parecia vazia.
   Três classes ganham independentemente da ordem (20/10/2026). */
.enc-select-listbox.fd-v2-select-listbox.enc-select-listbox--portal{z-index:15010}
.fd-v2-select-listbox .enc-select-search{padding:0.125rem 0.125rem 0.375rem;background:transparent;border:0}
.fd-v2-select-listbox .enc-select-search-input{
    box-sizing:border-box;width:100%;min-height:2.125rem;padding:0.4375rem 0.625rem;
    border:1px solid rgba(120,130,200,.24);border-radius:0.625rem;background:rgba(255,255,255,.8);
    color:#26282d;font:inherit
}
.fd-v2-select-listbox .enc-select-search-input:focus{outline:none;border-color:rgba(70,90,180,.55)}
/* "Incluir" é o segundo campo da lista, separado das opções por um fio. */
.fd-v2-select-listbox .enc-select-include-new{
    margin:0 0 0.375rem;padding:0.4375rem 0.625rem;border-bottom:1px solid rgba(120,130,200,.16);border-radius:0.5rem;
    color:#1d4ed8;font-weight:600;cursor:pointer
}
.fd-v2-select-listbox .enc-select-include-new:hover{background:rgba(120,130,200,.12)}
.fd-v2-select-listbox .enc-select-include-new--disabled{opacity:.45;cursor:default}
.fd-v2-select-listbox .enc-select-option{
    display:flex;align-items:center;gap:0.5rem;padding:0.5rem 0.625rem;border-radius:0.625rem;
    color:#26282d;cursor:pointer;transition:background .12s
}
.fd-v2-select-listbox .enc-select-option:hover,
.fd-v2-select-listbox .enc-select-option:focus-visible{outline:none;background:rgba(120,130,200,.14)}
.fd-v2-select-listbox .enc-select-option.is-selected{background:rgba(120,130,200,.18)}
.fd-v2-select-listbox .enc-select-option-main{display:flex;flex-direction:column;gap:0.125rem;min-width:0;flex:1}
.fd-v2-select-listbox .enc-select-option-title{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fd-v2-select-listbox .enc-select-option-path{color:#64748b;font-size:0.71875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fd-v2-select-listbox .enc-select-option-hint{color:#1d4ed8}
.fd-v2-select-listbox .enc-select-check{display:none;color:#2877d5}
.fd-v2-select-listbox .enc-select-option.is-selected .enc-select-check{display:grid;place-items:center}
.fd-v2-select-listbox .enc-select-empty-hint{padding:0.625rem;color:#64748b;text-align:center}
.fd-v2-select-listbox .enc-option--hidden{display:none}
/* Botões: primário sólido, secundário fantasma — o mesmo peso do composer. */
.fd-ticket-action-dropdown button,.fd-ticket-survey button{
    cursor:pointer;font:inherit;font-weight:600;border:1px solid rgba(120,130,200,.24);
    border-radius:62.4375rem;padding:0.5rem 1rem;background:rgba(255,255,255,.7);color:#334155;
    transition:background .14s,color .14s,border-color .14s
}
.fd-ticket-action-dropdown button:hover:not(:disabled),.fd-ticket-survey button:hover{background:rgba(120,130,200,.16)}
.fd-ticket-action-dropdown button:disabled{opacity:.5;cursor:default}
.fd-ticket-action-dropdown .is-primary{background:radial-gradient(circle at 100% 107%,#91c9ff 0%,#5baaff 30%,#0078ff 60%,#0753b8 100%);border-color:#0078ff;color:#fff}
.fd-ticket-action-dropdown .is-primary:hover:not(:disabled){background:radial-gradient(circle at 100% 107%,#91c9ff 0%,#5baaff 30%,#0078ff 60%,#0753b8 100%);filter:brightness(1.08)}
.fd-ticket-action-dropdown .fd-ticket-summary{
    align-self:flex-end;margin-top:-0.375rem;padding:0.375rem 0.75rem;border-color:transparent;
    background:transparent;color:#1d4ed8
}
.fd-ticket-survey{display:flex;align-items:center;justify-content:center;gap:0.5rem;margin:0;padding:0.625rem 0.75rem;border:1px solid rgba(120,130,200,.2);border-radius:0.75rem;background:rgba(120,130,200,.07)}
.fd-ticket-survey legend{padding:0 0.25rem;font-size:0.75rem;color:#475569}
.fd-ticket-survey button[aria-pressed=true],.fd-ticket-survey button[aria-pressed=true]:hover{background:radial-gradient(circle at 100% 107%,#91c9ff 0%,#5baaff 30%,#0078ff 60%,#0753b8 100%);border-color:#0078ff;color:#fff}
.fd-ticket-action-status{margin:0.625rem 1rem 0;color:#b91c1c;font-size:0.75rem}
.fd-ticket-action-status:empty{display:none}
.fd-ticket-action-dropdown footer{display:flex;justify-content:center;gap:0.5rem;padding:0.875rem 1rem}
/* ===== Encerrar no botão da referência (uiverse "evil-snake-57", 20/10/2026) =====
   Forma da referência ("Encerrar" sublinhado em degradê, raio 6), nas cores do Chat v2: o azul
   FiveDesk #629ee9 → #0078ff no fundo e nas bolhas. As bolhas que lá saem no hover aqui saem no
   clique: .is-bursting dura uma volta da animação (0,6 s). */
.fd-ticket-action-dropdown .fd-encerrar-burst,
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown .fd-encerrar-burst{
    position:relative;border:none;border-radius:0.375rem;padding:0.5625rem 1.125rem;
    background:linear-gradient(145deg,#629ee9,#0078ff);color:#fff;font-weight:600;
    box-shadow:0 0.375rem 1rem -0.375rem rgba(0,120,255,.55);transition:all .2s ease
}
.fd-ticket-action-dropdown .fd-encerrar-burst:hover:not(:disabled),
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown .fd-encerrar-burst:hover:not(:disabled){background:linear-gradient(145deg,#4f8fdf,#0063d6);color:#fff;filter:none}
.fd-ticket-action-dropdown .fd-encerrar-burst:active{transform:scale(.96)}
.fd-ticket-action-dropdown .fd-encerrar-burst:disabled{opacity:1;cursor:progress}
.fd-encerrar-burst-ui{
    font-weight:bolder;background:linear-gradient(#ffffff,#e4f1ff,#bfe3ff);
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
    border-bottom:0.125rem solid transparent;border-image:linear-gradient(.25turn,#ffffff,#9fd8ff,#7ee7fc);border-image-slice:1;display:inline
}
.fd-encerrar-burst::before,.fd-encerrar-burst::after,.fd-tratativa-burst::before,.fd-tratativa-burst::after{
    position:absolute;content:"";width:150%;left:50%;height:100%;transform:translateX(-50%);
    z-index:-1000;background-repeat:no-repeat;pointer-events:none
}
.fd-encerrar-burst.is-bursting::before,.fd-tratativa-burst.is-bursting::before{
    top:-70%;
    background-image:radial-gradient(circle,var(--fd-burst-a,#629ee9) 20%,transparent 20%),radial-gradient(circle,transparent 20%,var(--fd-burst-a,#629ee9) 20%,transparent 30%),
        radial-gradient(circle,var(--fd-burst-b,#0078ff) 20%,transparent 20%),radial-gradient(circle,var(--fd-burst-a,#629ee9) 20%,transparent 20%),
        radial-gradient(circle,transparent 10%,var(--fd-burst-a,#629ee9) 15%,transparent 20%),radial-gradient(circle,var(--fd-burst-c,#7ee7fc) 20%,transparent 20%),
        radial-gradient(circle,var(--fd-burst-a,#629ee9) 20%,transparent 20%),radial-gradient(circle,var(--fd-burst-c,#7ee7fc) 20%,transparent 20%),radial-gradient(circle,var(--fd-burst-c,#7ee7fc) 20%,transparent 20%);
    background-size:10% 10%,20% 20%,15% 15%,20% 20%,18% 18%,10% 10%,15% 15%,10% 10%,18% 18%;
    background-position:50% 120%;animation:fd-encerrar-bolhas-topo .6s ease forwards
}
.fd-encerrar-burst.is-bursting::after,.fd-tratativa-burst.is-bursting::after{
    bottom:-70%;
    background-image:radial-gradient(circle,var(--fd-burst-a,#629ee9) 20%,transparent 20%),radial-gradient(circle,var(--fd-burst-b,#0078ff) 20%,transparent 20%),
        radial-gradient(circle,transparent 10%,var(--fd-burst-a,#629ee9) 15%,transparent 20%),radial-gradient(circle,var(--fd-burst-b,#0078ff) 20%,transparent 20%),
        radial-gradient(circle,var(--fd-burst-a,#629ee9) 20%,transparent 20%),radial-gradient(circle,var(--fd-burst-b,#0078ff) 20%,transparent 20%),radial-gradient(circle,var(--fd-burst-a,#629ee9) 20%,transparent 20%);
    background-size:15% 15%,20% 20%,18% 18%,20% 20%,15% 15%,20% 20%,18% 18%;
    background-position:50% 0%;animation:fd-encerrar-bolhas-base .6s ease forwards
}
/* As bolhas passam da borda do botão; durante a explosão a janela não as recorta. */
.fd-ticket-action-dropdown.is-bursting,.fd-chat-action-popover.is-bursting{overflow:visible}
@keyframes fd-encerrar-bolhas-topo{
    0%{background-position:5% 90%,10% 90%,10% 90%,15% 90%,25% 90%,25% 90%,40% 90%,55% 90%,70% 90%}
    50%{background-position:0% 80%,0% 20%,10% 40%,20% 0%,30% 30%,22% 50%,50% 50%,65% 20%,90% 30%}
    100%{background-position:0% 70%,0% 10%,10% 30%,20% -10%,30% 20%,22% 40%,50% 40%,65% 10%,90% 20%;background-size:0% 0%,0% 0%,0% 0%,0% 0%,0% 0%,0% 0%,0% 0%,0% 0%,0% 0%}
}
@keyframes fd-encerrar-bolhas-base{
    0%{background-position:10% -10%,30% 10%,55% -10%,70% -10%,85% -10%,70% -10%,70% 0%}
    50%{background-position:0% 80%,20% 80%,45% 60%,60% 100%,75% 70%,95% 60%,105% 0%}
    100%{background-position:0% 90%,20% 90%,45% 70%,60% 110%,75% 80%,95% 70%,110% 10%;background-size:0% 0%,0% 0%,0% 0%,0% 0%,0% 0%,0% 0%,0% 0%}
}
/* 21/10/2026: as bolhas não apareciam — com z-index negativo elas iam para trás do fundo do modal,
   e "reduzir movimento" do Windows as desligava. O botão vira o próprio contexto de empilhamento
   (bolhas por cima do modal) e o efeito roda sempre. */
.fd-ticket-action-dropdown .fd-encerrar-burst{isolation:isolate;z-index:1}
/* Comentário e urgência: a cor do assunto vira acento, não fundo da janela inteira. */
.fd-chat-action-popover>header strong{border-left:0.1875rem solid #7c3aed;padding-left:0.5rem}
.fd-chat-action-popover.is-urgent>header strong{border-left-color:#dc2626}
.fd-chat-action-body{margin:0.875rem 1rem;padding:0.625rem 0.75rem;border:1px solid rgba(120,130,200,.2);border-radius:0.75rem;background:rgba(255,255,255,.72)}
.fd-chat-action-body textarea{display:block;box-sizing:border-box;resize:vertical;width:100%;min-height:8.125rem;max-height:35vh;border:0;outline:none;padding:0.125rem;background:transparent;color:inherit;font:inherit}
.fd-chat-action-body footer{display:flex;align-items:center;justify-content:space-between;gap:0.625rem;margin-top:0.5rem}
.fd-chat-action-body footer p{margin:0;font-size:0.75rem;color:#64748b}
.fd-chat-action-body footer button{flex:none;display:grid;place-items:center;width:2.25rem;height:2.125rem;border:0;border-radius:62.4375rem;background:#7c3aed;color:#fff;cursor:pointer}
.fd-chat-action-popover.is-urgent .fd-chat-action-body footer button{background:#dc2626}
.fd-chat-action-body footer button:disabled{opacity:.5;cursor:wait}
.fd-chat-action-body footer svg{width:1.25rem;height:1.25rem}
/* Tema. */
.fd-chat-wallpaper-picker{padding:0.875rem 1rem}
.fd-chat-wallpaper-picker>button{float:right}
.fd-chat-wallpaper-picker>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.625rem;margin-top:0.75rem}
.fd-chat-wallpaper-picker>div button{
    min-height:4.25rem;padding:0.625rem;border:1px solid rgba(120,130,200,.24);border-radius:0.75rem;
    background-color:rgba(255,255,255,.7);background-size:cover;background-position:center;
    color:#334155;font:inherit;font-weight:600;cursor:pointer;transition:border-color .14s,transform .18s cubic-bezier(.22,1.4,.36,1)
}
.fd-chat-wallpaper-picker>div button:hover{transform:translateY(-0.125rem)}
.fd-chat-wallpaper-picker>div button[aria-pressed=true]{border-color:#2877d5;box-shadow:0 0 0 1px #2877d5 inset}
/* Nome legivel sobre a previa, e a marca do tema ativo no canto. */
.fd-chat-wallpaper-picker>div button{position:relative;display:flex;align-items:flex-end;overflow:hidden}
.fd-chat-wallpaper-nome{position:relative;z-index:1;padding:0.1875rem 0.5rem;border-radius:62.4375rem;background:rgba(255,255,255,.82);color:#1f2937;font-size:0.75rem}
.fd-chat-wallpaper-picker>div button[style*="background-image"] .fd-chat-wallpaper-nome{backdrop-filter:blur(0.375rem)}
.fd-chat-wallpaper-marca{position:absolute;top:0.375rem;right:0.375rem;z-index:1;display:grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:50%;background:#2877d5;color:#fff}
.fd-chat-wallpaper-marca svg{width:0.8125rem;height:0.8125rem}
.fd-chat-wallpaper-aviso{margin:0.75rem 0.125rem 0;color:#64748b;font-size:0.75rem}
/* Etiqueta do contato (etapa 4): escolha unica, com a cor da etiqueta a esquerda. */
.fd-etiqueta-lista{display:flex;flex-direction:column;gap:0.125rem;padding:0.5rem}
.fd-etiqueta-opcao{display:flex;align-items:center;gap:0.625rem;width:100%;padding:0.5625rem 0.6875rem;border:0!important;border-radius:0.6875rem!important;background:transparent!important;color:inherit;font:inherit;text-align:left;cursor:pointer}
.fd-etiqueta-opcao:hover:not(:disabled){background:rgba(120,130,200,.16)!important}
.fd-etiqueta-opcao.is-ativa{background:rgba(40,119,213,.1)!important}
.fd-etiqueta-cor{flex:none;width:0.75rem;height:0.75rem;border-radius:50%;background:#94a3b8}
.fd-etiqueta-cor.is-vazia{background:transparent;border:1.5px dashed rgba(120,130,200,.5)}
.fd-etiqueta-nome{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}
.fd-etiqueta-opcao small{flex:none;color:#b45309;font-size:0.6875rem}
.fd-etiqueta-check{flex:none;display:grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:50%;background:#2877d5;color:#fff}
.fd-etiqueta-check svg{width:0.8125rem;height:0.8125rem}
:is(.fd-app-dark,.fd-portal-dark) .fd-etiqueta-opcao small{color:#fbbf24}
/* Vincular ticket (etapa 5): contratante -> ticket -> motivo, um bloco embaixo do outro. */
.fd-vinculo-corpo{display:flex;flex-direction:column;gap:0.75rem;padding:0.75rem 0.875rem 0;max-height:52vh;overflow:auto;scrollbar-width:thin}
.fd-vinculo-secao h3{margin:0 0 0.375rem;font-size:0.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#64748b}
.fd-vinculo-lista{display:flex;flex-direction:column;gap:0.125rem}
.fd-vinculo-opcao{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;padding:0.5rem 0.6875rem;border:0!important;border-radius:0.6875rem!important;background:transparent!important;color:inherit;font:inherit;text-align:left;cursor:pointer}
.fd-vinculo-opcao:hover:not(:disabled){background:rgba(120,130,200,.16)!important}
.fd-vinculo-opcao.is-ativa{background:rgba(40,119,213,.12)!important;box-shadow:0 0 0 1px rgba(40,119,213,.3) inset}
.fd-vinculo-titulo{font-weight:600}
.fd-vinculo-opcao small{color:#64748b;font-size:0.6875rem}
.fd-vinculo-outro .fd-vinculo-titulo{color:#1d4ed8}
.fd-vinculo-vazio{margin:0.25rem 0.125rem;color:#64748b;font-size:0.75rem}
:is(.fd-app-dark,.fd-portal-dark) .fd-vinculo-secao h3,:is(.fd-app-dark,.fd-portal-dark) .fd-vinculo-opcao small,:is(.fd-app-dark,.fd-portal-dark) .fd-vinculo-vazio{color:#a9b4c4}
:is(.fd-app-dark,.fd-portal-dark) .fd-chat-wallpaper-nome{background:rgba(18,22,30,.78);color:#edf1f7}
:is(.fd-app-dark,.fd-portal-dark) .fd-chat-wallpaper-aviso{color:#a9b4c4}
/* Escuro. */
:is(.fd-app-dark,.fd-portal-dark) :is(.fd-ticket-action-dropdown,.fd-chat-action-popover,.fd-chat-wallpaper-picker){
    background:linear-gradient(170deg,rgba(34,38,48,.95),rgba(24,27,35,.92));
    border-color:rgba(255,255,255,.1);color:#edf1f7
}
:is(.fd-app-dark,.fd-portal-dark) :is(.fd-ticket-action-dropdown,.fd-chat-action-popover)>header{border-color:rgba(255,255,255,.12)}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-fields>label,:is(.fd-app-dark,.fd-portal-dark) .fd-chat-action-body footer p,:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-survey legend{color:#a9b4c4}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown :is(select,textarea),:is(.fd-app-dark,.fd-portal-dark) .fd-chat-action-body,:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown button{
    background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:#edf1f7
}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown select option{background:#25324a;color:#e1e9fa}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown .is-primary,:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-survey button[aria-pressed=true]{background:radial-gradient(circle at 100% 107%,#91c9ff 0%,#5baaff 30%,#0078ff 60%,#0753b8 100%);border-color:#0078ff;color:#fff}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown .fd-ticket-summary{background:transparent;border-color:transparent;color:#a9ceff}
:is(.fd-app-dark,.fd-portal-dark) :is(.fd-ticket-action-dropdown,.fd-chat-action-popover,.fd-chat-wallpaper-picker) :is(button:hover:not(:disabled),header button:hover){background:rgba(148,163,255,.16)}
:is(.fd-app-dark,.fd-portal-dark) :is(.fd-ticket-action-dropdown,.fd-chat-action-popover,.fd-chat-wallpaper-picker)>header button,:is(.fd-app-dark,.fd-portal-dark) .fd-chat-wallpaper-picker>button{color:#a9b4c4}
/* Tema escuro dos menus da faixa (20/10/2026): campos, combobox, lista portada, pickers. */
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown .enc-select-trigger{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:#edf1f7}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown .enc-select-trigger:hover:not(:disabled),:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown .enc-select--open .enc-select-trigger{background:rgba(255,255,255,.1);border-color:rgba(158,200,255,.45)}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown .enc-select-trigger-text.is-placeholder{color:#7d8899}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown .enc-select-chevron{color:#a9b4c4}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown textarea::placeholder,:is(.fd-app-dark,.fd-portal-dark) .fd-chat-action-body textarea::placeholder{color:#7d8899}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-survey{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12)}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-status{color:#ff9aa8}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-select-listbox{background:linear-gradient(170deg,rgba(34,38,48,.97),rgba(24,27,35,.95));border-color:rgba(255,255,255,.1);color:#edf1f7;box-shadow:0 1.375rem 3rem -1.125rem rgba(0,0,0,.7)}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-select-listbox .enc-select-search-input{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:#edf1f7}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-select-listbox .enc-select-search-input::placeholder{color:#7d8899}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-select-listbox .enc-select-option{color:#edf1f7}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-select-listbox .enc-select-option:hover,:is(.fd-app-dark,.fd-portal-dark) .fd-v2-select-listbox .enc-select-option:focus-visible{background:rgba(148,163,255,.14)}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-select-listbox .enc-select-option.is-selected{background:rgba(98,158,233,.22)}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-select-listbox :is(.enc-select-option-path,.enc-select-empty-hint){color:#a9b4c4}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-select-listbox :is(.enc-select-include-new,.enc-select-option-hint,.enc-select-check){color:#9ec8ff}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-select-listbox .enc-select-include-new{border-color:rgba(255,255,255,.1)}
:is(.fd-app-dark,.fd-portal-dark) :is(.fd-vinculo-opcao,.fd-etiqueta-opcao){color:#edf1f7}
:is(.fd-app-dark,.fd-portal-dark) :is(.fd-vinculo-opcao,.fd-etiqueta-opcao):hover:not(:disabled){background:rgba(148,163,255,.14)!important}
:is(.fd-app-dark,.fd-portal-dark) :is(.fd-vinculo-opcao,.fd-etiqueta-opcao).is-ativa{background:rgba(98,158,233,.2)!important;box-shadow:0 0 0 1px rgba(98,158,233,.4) inset}
:is(.fd-app-dark,.fd-portal-dark) .fd-vinculo-outro .fd-vinculo-titulo{color:#9ec8ff}
:is(.fd-app-dark,.fd-portal-dark) .fd-etiqueta-cor.is-vazia{border-color:rgba(169,180,196,.5)}
:is(.fd-app-dark,.fd-portal-dark) .fd-chat-wallpaper-picker>div button{border-color:rgba(255,255,255,.14)}
:is(.fd-app-dark,.fd-portal-dark) .fd-chat-wallpaper-picker>div button[aria-pressed=true]{border-color:#629ee9;box-shadow:0 0 0 1px #629ee9 inset}
/* "Pedir confirmação" no card da máquina — só ADMIN vê (20/10/2026). */
/* Mora no painel aberto, logo abaixo de "Nenhum diagnóstico solicitado" — linha própria, sem disputar com o nome. */
.fd-remote-confirm{display:flex;align-items:center;gap:0.5rem;margin:0.5rem 0 0.125rem;font-size:0.75rem;font-weight:500;color:#475569;cursor:pointer;user-select:none}
.fd-remote-confirm input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.fd-remote-confirm-track{position:relative;flex:none;width:1.75rem;height:1rem;border-radius:62.4375rem;background:#cbd5e1;transition:background .18s}
.fd-remote-confirm-track::after{content:"";position:absolute;top:0.125rem;left:0.125rem;width:0.75rem;height:0.75rem;border-radius:50%;background:#fff;box-shadow:0 1px 0.125rem rgba(15,23,42,.25);transition:transform .18s}
.fd-remote-confirm input:checked+.fd-remote-confirm-track{background:linear-gradient(135deg,#00c6ff,#0072ff)}
.fd-remote-confirm input:checked+.fd-remote-confirm-track::after{transform:translateX(0.75rem)}
.fd-remote-confirm input:focus-visible+.fd-remote-confirm-track{outline:0.125rem solid #629ee9;outline-offset:0.125rem}
.fd-remote-confirm input:disabled+.fd-remote-confirm-track{opacity:.6}
.fd-app-dark .fd-remote-confirm{color:#a9b4c4}
.fd-app-dark .fd-remote-confirm-track{background:#ffffff24}
.fd-v2-message-row.is-note,.fd-v2-message-row.is-system{justify-content:center}
.fd-v2-message-row.is-note>.fd-v2-message-avatar{display:none}
.fd-v2-message-row.is-note .fd-v2-message-bubble{background:#ede1ff;text-align:center}
.fd-v2-operational-bubble{position:relative;max-width:26.25rem;text-align:center;background:#edf2fb;padding:0.625rem 0.875rem;border-radius:0.75rem}
.fd-v2-operational-bubble time{display:block;font-size:0.625rem;opacity:.6;margin-top:0.3125rem}
.fd-v2-message-row.is-urgent .fd-v2-operational-bubble{background:#ffecec;color:#8b343b}
/* Contorno inspirado no blob de dylanharriscameron (MIT), mantendo só a borda dinâmica. */
.fd-urgency-contour{position:absolute;inset:-1px;z-index:3;border-radius:inherit;padding:0.125rem;pointer-events:none;overflow:hidden;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor}
/* Brilho do contorno pelo compositor (22/10/2026): mesmo desenho e trajetória do background-position de antes (fundo 200% andando 0→100% = translate(-50%) do brilho), sem recalcular estilo nem repintar a cada quadro. */
.fd-urgency-contour::before{content:"";position:absolute;left:0;top:0;width:200%;height:200%;background:radial-gradient(ellipse at center,#ff0000 0%,#ff5e5e80 24%,transparent 55%);animation:fd-contorno-giro 5s ease infinite;will-change:transform}
@keyframes fd-contorno-giro{0%,100%{transform:translate(0,0)}25%{transform:translate(-50%,0)}50%{transform:translate(-50%,-50%)}75%{transform:translate(0,-50%)}}
@keyframes fd-urgency-border-bounce{0%,100%{background-position:0% 0%}25%{background-position:100% 0%}50%{background-position:100% 100%}75%{background-position:0% 100%}}
.fd-app-dark .fd-v2-message-row.is-note .fd-v2-message-bubble{background:#463952}
.fd-app-dark .fd-v2-operational-bubble{background:#333d4e}
.fd-app-dark .fd-v2-message-row.is-urgent .fd-v2-operational-bubble{background:#503038;color:#ffc7cd}

.fd-chats-stage .fd-chat-tab-count.is-answered{background:#22c55e}
.fd-chats-stage .fd-chat-tab-count[data-digits="4"],.fd-chats-stage .fd-chat-tab-count[data-digits="5"]{font-size:0.5rem}

/* Explicit prepend anchoring runs once in the insertion frame. */
.fd-v2-messages{overflow-anchor:auto}
.fd-chats-stage .fd-v2-messages[data-loading-older="true"]::before{content:"Carregando mensagens anteriores…";position:absolute;top:0.5rem;left:50%;transform:translateX(-50%);z-index:4;font-size:0.6875rem;color:#68738b;pointer-events:none}

/* Fixed timeline geometry stays local; the shadow belongs to the card, not every message. */
.fd-chats-stage .fd-v2-messages{contain:layout style paint}
.fd-chats-stage .fd-chats-card-chat{filter:none;box-shadow:0 0.3125rem 0.875rem #0000000a}
.fd-app-dark .fd-chats-stage .fd-chats-card-chat{filter:none;box-shadow:0 0.3125rem 0.875rem #00000014}

.fd-chats-stage .fd-cliente-kanban::before{backdrop-filter:none;-webkit-backdrop-filter:none}

/* Chat controls can grow past the page card without clipping. */
:is(#appScreen,.fd-app-screen).fd-v2-minimal .main-content.fd-page-glass:has(>.fd-chats-stage:not([hidden])){overflow:visible}
:is(#fdBouncyNav,.fd-bouncy-nav){z-index:1200}
.fd-shared-tooltip{z-index:20000}
:is(#fdBouncyNav,.fd-bouncy-nav) .fd-logout-button:is(:hover,:focus-visible){width:calc(2.5rem * var(--fd-topbar-scale,1));border-radius:50%}
.fd-logout-button:is(:hover,:focus-visible) .fd-logout-sign{width:100%;padding-left:0}
.fd-logout-button .fd-logout-text{display:none}
.fd-chats-stage .fd-contact-origin-switch{grid-template-columns:repeat(2,minmax(0,1fr))}
.fd-chats-stage .fd-contact-origin-switch::before{width:calc((100% - 2 * var(--_switch-padding))/2)}
.fd-contact-directory[hidden],.fd-contact-origin-switch[hidden],.fd-kanban-list[hidden]{display:none!important}
.fd-contact-directory{display:flex;flex-direction:column;position:absolute;inset:0;overflow:hidden;scrollbar-width:none;padding:0.5rem;box-sizing:border-box}
.fd-contact-directory-status{margin:0 0 0.5rem;font:0.75rem Inter,'Segoe UI',sans-serif;color:inherit}

.fd-chats-stage .fd-cliente-switch[hidden]{display:none!important}

.fd-contact-directory .fd-kanban-list{overflow-anchor:none}

.fd-topbar-tooltip-overlay{position:fixed;z-index:20000;transform:translateX(-50%);padding:0.5rem 0.75rem;border-radius:0.625rem;background:#fff;color:#202020;box-shadow:0 0.25rem 0.875rem #0002;font:600 0.75rem/normal Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;white-space:nowrap;pointer-events:none}
.fd-topbar-tooltip-overlay[hidden]{display:none!important}

.fd-glass-dock .fd-agente-embedded::before{display:none}

/* The badge anchors to the card edge, just as the toolbar badge anchors to its button. */
.fd-chats-stage .fd-kanban-photo>.fd-group-unread{left:-0.8125rem;top:-0.8125rem}
.fd-contact-directory-status:empty{display:none}
.fd-chats-stage .fd-contact-history{position:absolute;inset:0.5rem;height:auto;display:flex;flex-direction:column;min-height:0}
.fd-chats-stage .fd-contact-history[hidden],.fd-chats-stage .fd-remote-card[hidden]{display:none}
.fd-contact-history>.fd-kanban-list{flex:1;min-height:0}
.fd-chats-stage .fd-history-switch{grid-template-columns:repeat(3,minmax(0,1fr))}
.fd-chats-stage .fd-history-switch::before{width:calc((100% - 2 * var(--_switch-padding))/3)}
.fd-chats-stage .fd-remote-switch{grid-template-columns:repeat(2,minmax(0,1fr))}
.fd-chats-stage .fd-remote-switch::before{width:calc((100% - 2 * var(--_switch-padding))/2)}

/* Keep the unread badge in front and inside the scroll viewport's safe gutter. */
.fd-chats-stage .fd-chats-card-cliente .fd-cliente-kanban>.fd-kanban-list{z-index:2;margin:-0.3125rem;padding:0.3125rem}
.fd-chats-stage .fd-chats-card-cliente .fd-kanban-item:has(.fd-group-unread){z-index:2}

/* Allow the group badges to extend beyond the card while retaining list scrolling. */
.fd-chats-stage .fd-details-content .fd-details-groups{overflow:visible}
.fd-chats-stage .fd-details-group-list{z-index:2;margin:-0.3125rem;padding:0.3125rem}
.fd-chats-stage .fd-details-group-list .fd-kanban-item:has(.fd-group-unread){z-index:2}

.fd-chats-stage :is(.fd-kanban-list,.fd-remote-card){scroll-snap-type:y mandatory;scroll-padding-block:0.3125rem}
.fd-chats-stage :is(.fd-kanban-list>.fd-kanban-item,.fd-remote-card>button){scroll-snap-align:start;scroll-snap-stop:always}

/* Remote slots share the requester kanban component, including its texture and theme colors. */
.fd-chats-stage .fd-remote-card{position:relative;inset:auto;z-index:2;margin:-0.3125rem;padding:0.3125rem;border-radius:0;background:transparent;box-shadow:none;overflow-y:auto;gap:var(--fd-kanban-gap,0.5rem)}
.fd-chats-stage .fd-remote-card>.fd-kanban-item{transition:background .16s;cursor:pointer}
.fd-chats-stage .fd-remote-card>.fd-kanban-item[aria-expanded=true]{flex-basis:var(--fd-remote-expanded-height);height:var(--fd-remote-expanded-height)}
.fd-chats-stage .fd-remote-card>.fd-kanban-item:focus-visible{outline:0.125rem solid #629ee9;outline-offset:-0.125rem}

/* Reference placement uses the existing kanban colors, texture and dimensions. */
.fd-chats-stage .fd-remote-machine{grid-template-columns:2.25rem minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:0.5rem;row-gap:0.375rem;text-align:left}
.fd-remote-machine-icon{grid-column:1;grid-row:1 / span 2;display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:0.625rem;background:#629ee926;color:#508dd7}
.fd-remote-machine-icon svg{width:1.4375rem;height:1.4375rem}
.fd-remote-machine-name{grid-column:2;grid-row:1 / span 2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 0.75rem/1.25 Inter,'Segoe UI',sans-serif}
.fd-remote-machine-name.is-placeholder{opacity:.55}
.fd-remote-machine-status{grid-column:3;grid-row:1;justify-self:end;display:flex;align-items:center;gap:0.25rem;padding:0.25rem 0.4375rem;border-radius:1.25rem;background:#ffffff38;color:inherit;font:600 0.625rem/1 Inter,'Segoe UI',sans-serif;white-space:nowrap}
.fd-remote-machine-status::before{content:"";width:0.3125rem;height:0.3125rem;border-radius:50%;background:currentColor;opacity:.5}
.fd-remote-machine-status[data-status=online]{background:#19b88a1a;color:#149a75}
.fd-remote-machine-status[data-status=online]::before{opacity:1}
.fd-remote-machine-connect{grid-column:3;grid-row:2;justify-self:end;border:0;border-radius:var(--fd-kanban-radius,0.625rem);padding:0.3125rem 0.5625rem;background:#629ee926;color:#345a87;font:600 0.625rem/1 Inter,'Segoe UI',sans-serif;cursor:pointer}
.fd-remote-machine-connect:disabled{opacity:.45;cursor:default}
.fd-app-dark .fd-remote-machine-icon,.fd-app-dark .fd-remote-machine-connect{color:#9ec4f5}
.fd-app-dark .fd-remote-machine-status{background:#ffffff12}
.fd-app-dark .fd-remote-machine-status[data-status=online]{background:#19b88a1a;color:#41d7ac}

.fd-chats-stage .fd-remote-machine[aria-expanded=true]{grid-template-rows:1.25rem 1.25rem minmax(0,1fr);align-content:stretch;row-gap:0.375rem}
.fd-remote-diagnostics{grid-column:1 / -1;grid-row:3;display:flex;flex-direction:column;gap:0.5625rem;min-height:0;overflow:auto;padding:0.25rem 0.125rem 0;cursor:default;font:0.625rem/1.3 Inter,'Segoe UI',sans-serif;scrollbar-width:none}
.fd-remote-diagnostics[hidden]{display:none}
.fd-remote-analysts,.fd-remote-diagnostics>header,.fd-remote-metric>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:0.5rem}
.fd-remote-analysts .fd-kanban-tag{min-width:1.5rem}
.fd-remote-diagnostics>header strong{font-size:0.75rem}
.fd-remote-diagnostics>header>span{font-size:0.5625rem;opacity:.65}
.fd-remote-metric{display:flex;flex-direction:column;gap:0.3125rem}
.fd-remote-metric-track{height:0.3125rem;border-radius:0.1875rem;overflow:hidden;background:#629ee91a}
.fd-remote-metric-track>span{display:block;height:100%;width:var(--fd-metric-value,0%);border-radius:inherit;background:linear-gradient(90deg,#629ee9,#397ed6)}
.fd-remote-network{display:grid;grid-template-columns:1fr 1fr;gap:0.625rem;margin-top:0.1875rem;padding-top:0.625rem;border-top:1px solid #629ee91a}
.fd-remote-network>div{display:flex;flex-direction:column;gap:0.375rem}
.fd-remote-network strong{font-size:0.75rem;font-weight:500}
.fd-remote-diagnostics>footer{display:flex;align-items:center;justify-content:space-between;gap:0.5rem;margin-top:auto;padding-top:0.5rem}
.fd-chats-stage .fd-remote-diagnostics .fd-remote-period select{max-width:8.4375rem;appearance:auto;border:0;border-radius:0.5rem;background:transparent;color:inherit;padding:0.3125rem 0.125rem;font:600 0.625rem Inter,'Segoe UI',sans-serif;cursor:pointer}
.fd-remote-edit{display:flex;align-items:center;gap:0.5rem;border:0;border-radius:0.625rem;background:#629ee926;color:#345a87;padding:0.375rem 0.625rem;font:600 0.625rem Inter,'Segoe UI',sans-serif;cursor:pointer}
.fd-remote-edit:disabled{opacity:.45;cursor:default}
.fd-app-dark .fd-remote-edit{color:#9ec4f5}
.fd-app-dark .fd-remote-metric-track{background:#ffffff12}

/* Account capsule uses the same inset slider relief as the Chat filters. */
#fdBouncyNav .fd-bouncy-actions{display:flex;align-items:center;gap:calc(0.5rem * var(--fd-topbar-scale,1));padding-inline:calc(0.5rem * var(--fd-topbar-scale,1))}
.fd-account-pill{display:flex;align-items:center;gap:0.625rem;padding:0.1875rem 0.75rem 0.1875rem 0.1875rem;border-radius:1.0625rem;background:#ffffff20;border:1px solid #ffffff45;box-shadow:inset 0 1px 0.1875rem #00000012;font-family:Inter,'Segoe UI',sans-serif}
#fdBouncyNav .fd-account-avatar,#fdBouncyNav .fd-connections-health{flex:none;position:relative;display:grid;place-items:center;box-sizing:border-box;width:calc(2.5rem * var(--fd-topbar-scale,1));height:calc(2.5rem * var(--fd-topbar-scale,1));padding:0;border:0;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;color:#345a87}
#fdBouncyNav .fd-account-avatar{aspect-ratio:1;border-radius:50%;background:linear-gradient(145deg,#ffffff90,#dce5f580);box-shadow:0 0 0.5rem #ffffff45,inset 0 1px 1px #ffffff90;overflow:visible;font:600 0.75rem Inter,'Segoe UI',sans-serif}
#fdBouncyNav .fd-account-avatar>img{display:block;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;aspect-ratio:1;object-fit:cover;border-radius:50%}
.fd-account-name{max-width:9.0625rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;font:600 0.75rem Inter,'Segoe UI',sans-serif;color:#34506d}
#fdBouncyNav .fd-connections-health{border-radius:50%;background:#8297b126}
.fd-connections-health svg{width:1.25rem;height:1.25rem}
#fdBouncyNav .fd-connections-health[data-state=ok]{background:#22c55e;color:white}
#fdBouncyNav .fd-connections-health[data-state=off]{background:#ef4444;color:white}
#fdBouncyNav :is(.fd-account-avatar,.fd-connections-health):hover{box-shadow:0 0 0.625rem #629ee930}
#fdBouncyNav :is(.fd-account-avatar,.fd-connections-health):active{transform:scale(.94)}
.fd-account-avatar[data-count]:not([data-count=""])::after{content:attr(data-count);position:absolute;top:-0.25rem;left:-0.25rem;min-width:1.0625rem;height:1.0625rem;padding:0 0.125rem;border-radius:50%;background:#ef4444;color:white;font:700 0.5625rem/1.0625rem Inter,sans-serif;text-align:center}
.fd-account-dropdown{position:fixed;z-index:21000;box-sizing:border-box;border-radius:0.875rem;border:1px solid #ffffff90;background:#edf2faed;box-shadow:0 0.5rem 1.5rem #23344c26;backdrop-filter:blur(1.125rem);color:#34506d;overflow:auto;font:0.75rem/1.4 Inter,'Segoe UI',sans-serif;animation:fd-account-open .18s ease-out}
.fd-account-dropdown[hidden]{display:none}
.fd-account-dropdown>header{display:flex;justify-content:space-between;padding:0.75rem;font-weight:600;border-bottom:1px solid #8297b126}
.fd-account-dropdown>div{padding:0.75rem}
.fd-account-dropdown p{margin:0;padding:0.5rem 0}
.fd-account-dropdown>footer{display:flex;justify-content:space-between;gap:0.5rem;padding:0.5rem;border-top:1px solid #8297b126}
.fd-account-dropdown button{border:0;border-radius:0.5rem;background:transparent;color:inherit;padding:0.5rem;font:inherit;cursor:pointer}
.fd-account-dropdown button:hover{background:#629ee91a}
.fd-account-connections>div{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;padding:0.5rem 0}
.fd-account-connections [data-state=ok]{color:#159b53}.fd-account-connections [data-state=off]{color:#dc3b45}
.fd-app-dark .fd-account-pill{background:#ffffff08;border-color:#ffffff12;box-shadow:inset 0 0.125rem 0.25rem #0006}
.fd-app-dark .fd-account-name{color:#d8e4f5}
.fd-app-dark #fdBouncyNav .fd-account-avatar{background:linear-gradient(145deg,#ffffff20,#ffffff08);color:#d8e4f5}
.fd-account-dropdown.is-dark{background:#1c2634ed;border-color:#ffffff20;color:#d8e4f5}
@keyframes fd-account-open{from{opacity:0;transform:translateY(-0.25rem)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.fd-account-name{max-width:6.875rem;font-size:0.6875rem}}

.fd-chats-stage .fd-remote-diagnostics{align-self:stretch;height:100%;max-height:100%;box-sizing:border-box;animation:fd-account-open .18s ease-out}
.fd-chats-stage .fd-remote-diagnostics .fd-remote-period select{font-size:0.625rem;line-height:1.3;height:1.625rem;min-height:0;width:auto;box-shadow:none}
@media(prefers-reduced-motion:reduce){.fd-account-dropdown,.fd-remote-diagnostics{animation:none}}
.fd-remote-edit-form{display:grid;gap:0.5rem;padding:0.5rem}.fd-remote-edit-form input{width:100%;box-sizing:border-box}.fd-remote-session ol{max-height:7.5rem;overflow:auto;padding-left:1.125rem}.fd-remote-session p:empty{display:none}

/* Profile layout inspired by Uiverse.io/EcheverriaJesus; requester kanban glass is inherited. */
.fd-chats-stage .fd-details-content>.fd-details-profiles{grid-template-rows:auto auto minmax(11.875rem,1fr);height:100cqh;overflow-y:auto}
.fd-chats-stage .fd-details-content .fd-details-ticket-empty{grid-row:3}
.fd-chats-stage .fd-details-profile[role=button]{display:flex;align-items:center;min-height:0;height:auto;padding:0.75rem;border-radius:0.375rem}
.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-info{display:flex;align-items:center;gap:0.75rem;width:100%;min-width:0}
.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-photo{flex:0 0 3.5rem;width:3.5rem;height:3.5rem;border-radius:50%;background:linear-gradient(90deg,#f9c97c,#a2e9c1);color:#4b5563;font-size:1.25rem;box-shadow:0 0.1875rem 0.375rem #0002;transition:transform .3s,background .3s}
.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-summary{display:flex;flex:1;min-width:0;gap:0.3125rem;padding-left:0.75rem;border-left:1px solid #9ca3af66}
.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-summary strong{font-size:0.8125rem;font-weight:600;color:#4b5563;line-height:1.3}
.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-responsible{font-size:1.125rem;font-weight:700;line-height:1.3;background:linear-gradient(90deg,#27272a,#005bc4);background-clip:text;-webkit-background-clip:text;color:transparent}
.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-responsible:empty{display:none}
.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-stats{display:flex;min-height:0;margin-top:0.1875rem}
.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-stats>span{flex:0 1 auto;padding:0.1875rem 0.5rem;min-height:1.25rem}
.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-stats b{display:inline-block;min-width:3ch;text-align:center;font-variant-numeric:tabular-nums}
.fd-app-dark .fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-summary strong{color:#d5deea}
.fd-app-dark .fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-responsible{background-image:linear-gradient(90deg,#e2e8f0,#7bb6ff)}
@media(prefers-reduced-motion:reduce){.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-photo{transition:none}}

.fd-chats-stage .fd-kanban-photo.is-photo-fallback{background:linear-gradient(90deg,#f9c97c,#a2e9c1);color:#4b5563;box-shadow:0 0.1875rem 0.375rem #0002}

/* Remote glass cards: identity first, ambient state light and a clear action. */
.fd-chats-stage .fd-remote-machine[data-maquina-id]{--fd-remote-accent:#397de0;--fd-remote-halo:#78aaff36;min-height:0;flex-basis:var(--fd-remote-base-height);height:var(--fd-remote-base-height);grid-template-columns:2.375rem minmax(0,1fr) auto;grid-template-rows:minmax(1.375rem,auto) 1.75rem;column-gap:0.5rem;row-gap:0.25rem;padding:0.5rem;border-radius:0.625rem;border:1px solid #ffffff70;background:linear-gradient(125deg,#ffffff44,#ffffff12 65%);box-shadow:inset 0 1px 0 #ffffff80,0 0.1875rem 0.625rem #537bb808;transition:background .25s,border-color .25s,box-shadow .25s;isolation:isolate}
.fd-chats-stage .fd-remote-machine[data-maquina-id]::before{content:"";position:absolute;z-index:-1;inset:0;border-radius:inherit;background:radial-gradient(ellipse at 0 0,var(--fd-remote-halo),transparent 70%);pointer-events:none;transition:opacity .25s;opacity:.65}
.fd-chats-stage .fd-remote-machine[data-maquina-id]:hover{border-color:#ffffffbb;box-shadow:inset 0 1px 0 #ffffffb0,0 0.3125rem 1.125rem #537bb81a}
.fd-chats-stage .fd-remote-machine[data-maquina-id]:hover::before{opacity:1}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-icon{grid-row:1 / span 2;align-self:center;width:2.375rem;height:2.625rem;border:1px solid #ffffff85;border-radius:0.75rem;background:linear-gradient(145deg,#ffffff90,#ffffff22);color:var(--fd-remote-accent);box-shadow:inset 0 1px 0 #ffffffa0,0 0.1875rem 0.5rem #526b9b12;position:relative}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-icon::after{content:"";position:absolute;bottom:0.3125rem;width:0.25rem;height:0.1875rem;border-radius:0.125rem;background:var(--fd-remote-accent);box-shadow:0 0 0.4375rem var(--fd-remote-accent)}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-name{grid-column:2 / -1;grid-row:1;font:700 0.8125rem/1.3 Inter,'Segoe UI',sans-serif;letter-spacing:-.2px;color:#283c5b;align-self:end}
.fd-remote-machine-caption{grid-column:2;grid-row:2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:0.3125rem;font:500 0.625rem/1.2 Inter,'Segoe UI',sans-serif;color:#536884}
.fd-remote-machine-caption::before{content:"";flex:none;width:0.3125rem;height:0.3125rem;border-radius:50%;background:var(--fd-remote-accent)}
.fd-chats-stage .fd-remote-machine>.fd-remote-machine-connect{grid-column:3;grid-row:2;display:flex;align-items:center;justify-content:center;gap:0.375rem;position:relative;overflow:hidden;min-height:1.75rem;padding:0.375rem 0.5625rem;border:1px solid #ffffff90;border-radius:0.5625rem;background:linear-gradient(125deg,#ffffffa8,#ffffff40);box-shadow:inset 0 1px 0 #ffffffb0,0 0.125rem 0.3125rem #526b9b0c;color:var(--fd-remote-accent);font:600 0.625rem/1 Inter,'Segoe UI',sans-serif;transition:box-shadow .2s,transform .2s,background .2s;opacity:1}
.fd-remote-connect-arrow{width:0.8125rem;height:0.8125rem;flex:none;transition:transform .25s}
.fd-remote-machine-connect:not(:disabled):hover{background:#ffffffb0;box-shadow:0 0.1875rem 0.625rem var(--fd-remote-halo)}
.fd-remote-machine-connect:not(:disabled):hover .fd-remote-connect-arrow{transform:translateX(0.125rem)}
.fd-remote-machine-connect:not(:disabled):active{transform:scale(.96)}
.fd-remote-machine-connect:focus-visible,.fd-remote-machine[data-maquina-id]:focus-visible{outline:0.125rem solid var(--fd-remote-accent);outline-offset:0.125rem}
.fd-chats-stage .fd-remote-machine[data-connection-state=connected]{--fd-remote-accent:#149664;--fd-remote-halo:#58deb636}
.fd-chats-stage .fd-remote-machine[data-connection-state=error]{--fd-remote-accent:#ce425d;--fd-remote-halo:#ff92ad30}
.fd-chats-stage .fd-remote-machine[data-connection-state=offline]{--fd-remote-accent:#242b38;--fd-remote-halo:#8996aa16}
.fd-chats-stage .fd-remote-machine[data-connection-state=offline] .fd-remote-machine-icon::after{box-shadow:none}
.fd-chats-stage .fd-remote-machine-connect:disabled{cursor:default;opacity:.55}
.fd-chats-stage .fd-remote-machine[data-connection-activity=connecting] .fd-remote-machine-icon::after{animation:fd-remote-signal 1.4s ease-in-out infinite}
.fd-remote-machine[data-connection-activity=connecting] .fd-remote-connect-arrow{animation:fd-remote-arrow 1.1s ease-in-out infinite}
.fd-chats-stage .fd-remote-machine[data-maquina-id][aria-expanded=true]{grid-template-rows:1.5rem 1.75rem minmax(0,1fr);align-content:stretch}
.fd-app-dark .fd-chats-stage .fd-remote-machine[data-maquina-id]{background:linear-gradient(125deg,#ffffff0d,#ffffff03);border-color:#ffffff20;box-shadow:inset 0 1px 0 #ffffff12;--fd-remote-accent:#89baff}
.fd-app-dark .fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-name{color:#e1e9fb}
.fd-app-dark .fd-remote-machine-caption{color:#a8b7d0}
.fd-app-dark .fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-icon,.fd-app-dark .fd-chats-stage .fd-remote-machine>.fd-remote-machine-connect{background:linear-gradient(145deg,#ffffff14,#ffffff06);border-color:#ffffff25;box-shadow:inset 0 1px 0 #ffffff16}
.fd-app-dark .fd-chats-stage .fd-remote-machine[data-connection-state=connected]{--fd-remote-accent:#55deb0}
.fd-app-dark .fd-chats-stage .fd-remote-machine[data-connection-state=error]{--fd-remote-accent:#ff8ba0}
.fd-app-dark .fd-chats-stage .fd-remote-machine[data-connection-state=offline]{--fd-remote-accent:#080b11}
.fd-app-dark .fd-remote-machine[data-connection-state=offline] .fd-remote-machine-connect{color:#94a1b8}
@keyframes fd-remote-signal{50%{opacity:.3;box-shadow:0 0 0.75rem var(--fd-remote-accent)}}
@keyframes fd-remote-arrow{50%{transform:translateX(0.1875rem);opacity:.45}}
/* Sem o corte de animações por "reduzir movimento" no card de máquina (ver chats-remote-connection-loader.css). */


.fd-contact-channel-picker{max-width:calc(100vw - 2rem);padding:1.25rem;border:1px solid #cedaeb;border-radius:0.875rem;background:#edf2fa;color:#34506d;box-shadow:0 0.75rem 2rem #0003;font:0.8125rem Inter,'Segoe UI',sans-serif}
.fd-contact-channel-picker::backdrop{background:#17253b66}
.fd-contact-channel-picker strong{display:block;margin-bottom:1rem}
.fd-contact-channel-picker button{margin:0.25rem;padding:0.5625rem 0.875rem;border:0;border-radius:0.5rem;background:#629ee926;color:inherit;font:inherit;cursor:pointer}
.fd-contact-channel-picker button:focus-visible{outline:0.125rem solid #629ee9;outline-offset:0.125rem}
.fd-app-dark .fd-contact-channel-picker{background:#282c34;border-color:#ffffff24;color:#eef2f8}

/* Equal collapsed geometry; expanded diagnostics reserve two complete sibling cards. */
.fd-chats-stage .fd-remote-card{scroll-snap-type:none}
.fd-chats-stage .fd-remote-machine[data-maquina-id][aria-expanded=true]{flex-basis:var(--fd-remote-expanded-height);height:var(--fd-remote-expanded-height)}
.fd-chats-stage .fd-remote-diagnostics{gap:0.4375rem;padding:0.1875rem 0 0}
.fd-remote-diagnostics .fd-kanban-tag:empty{background:transparent}
.fd-remote-metric{gap:0.1875rem}
.fd-remote-metric-track{height:0.25rem}
.fd-remote-network{gap:0.5rem;padding-top:0.4375rem;margin-top:0}
.fd-remote-network>div{flex-direction:row;justify-content:space-between;align-items:center;gap:0.25rem;min-height:1.125rem}
.fd-remote-network strong{font-size:0.625rem;white-space:nowrap}
.fd-remote-diagnostics>footer{margin-top:0;padding-top:0.3125rem;flex:none}
.fd-remote-period{position:relative;min-width:0;font:600 0.625rem/1.3 Inter,'Segoe UI',sans-serif}
.fd-remote-period summary{display:flex;align-items:center;gap:0.5rem;list-style:none;cursor:pointer;padding:0.375rem 0.5rem;border:1px solid #ffffff70;border-radius:0.5625rem;background:#ffffff30}
.fd-remote-period summary::-webkit-details-marker{display:none}
.fd-remote-period summary svg{width:0.75rem;height:0.75rem;fill:none;stroke:currentColor;stroke-width:1.8;transition:transform .2s}
.fd-remote-period[open] summary svg{transform:rotate(180deg)}
.fd-remote-period-options{position:absolute;bottom:calc(100% + 0.3125rem);left:0;z-index:5;width:9.0625rem;box-sizing:border-box;padding:0.25rem;border:1px solid #ffffffb0;border-radius:0.6875rem;background:#edf0ff;box-shadow:0 0.375rem 1.25rem #283c5b30}
.fd-remote-period-options button{display:block;width:100%;padding:0.5rem 0.5625rem;border:0;border-radius:0.4375rem;text-align:left;background:transparent;color:inherit;font:500 0.625rem/1.3 Inter,'Segoe UI',sans-serif;cursor:pointer}
.fd-remote-period-options button:hover,.fd-remote-period-options button[aria-pressed=true]{background:#629ee925;color:#245d9d}
.fd-remote-period summary:focus-visible,.fd-remote-period-options button:focus-visible{outline:0.125rem solid #629ee9;outline-offset:1px}
.fd-app-dark .fd-remote-period summary{border-color:#ffffff25;background:#ffffff08}
.fd-app-dark .fd-remote-period-options{background:#25324a;border-color:#ffffff30;color:#e1e9fb}
.fd-app-dark .fd-remote-period-options button[aria-pressed=true],.fd-app-dark .fd-remote-period-options button:hover{color:#9ec8ff}

/* Three complete collapsed siblings and equal spacing in the remote viewport. */
.fd-chats-stage .fd-remote-card>.fd-kanban-item:not([aria-expanded=true]){height:var(--fd-remote-base-height);flex-basis:var(--fd-remote-base-height)}

/* Shared informative bubbles use the selected topbar blue. */
.fd-chats-stage :is(.fd-v2-message-row.is-system,.fd-v2-message-row.is-note){justify-content:center}
.fd-chats-stage :is(.fd-v2-operational-bubble,.is-note .fd-v2-message-bubble,.fd-v2-system-notice){background:linear-gradient(145deg,#629ee930,#629ee91c);border:1px solid #629ee960;border-radius:0.75rem;color:#284f80;text-align:center;padding:0.625rem 0.875rem;box-shadow:0 0.125rem 0.625rem #629ee918}
.fd-chats-stage :is(.fd-v2-operational-bubble,.is-note .fd-v2-message-bubble) .fd-v2-message-label{display:block;margin-bottom:0.25rem;font-weight:600}
.fd-v2-notice-author{font-size:0.6875rem;line-height:1.5;margin-top:0.25rem}
.fd-chats-stage :is(.fd-v2-operational-bubble time,.fd-v2-notice-time){display:block;font-size:0.625rem;line-height:1.5;opacity:.8;margin-top:0.125rem}
.fd-chats-stage .is-note .fd-v2-message-meta{justify-content:center}
.fd-chats-stage .fd-urgency-contour::before{background-image:radial-gradient(ellipse at center,#629ee9 0%,#629ee980 24%,transparent 55%)}
.fd-app-dark .fd-chats-stage :is(.fd-v2-operational-bubble,.is-note .fd-v2-message-bubble,.fd-v2-system-notice){background:linear-gradient(145deg,#629ee92c,#629ee916);border-color:#629ee950;color:#c4ddff}

/* Informative labels share the comment shape; urgency keeps its red identity. */
.fd-chats-stage .fd-v2-message-row:is(.is-system,.is-note){--fd-bubble-tint:rgba(98,158,233,.22)}
.fd-chats-stage .fd-v2-message-row.is-urgent{--fd-bubble-tint:rgba(239,95,110,.2)}
.fd-chats-stage :is(.fd-v2-operational-bubble,.is-note .fd-v2-message-bubble,.fd-v2-system-notice),
.fd-chats-stage .fd-v2-messages .fd-v2-message-row:is(.is-system,.is-note)>.fd-v2-message-content>.fd-v2-message-bubble{background:var(--fd-bubble-tint,rgba(98,158,233,.22));border:0;box-shadow:none;border-radius:0.75rem;padding:0.625rem 0.875rem;color:#285587;font-family:Inter,'Segoe UI',sans-serif;text-align:center}
.fd-chats-stage .fd-v2-message-row.is-urgent>.fd-v2-message-content>.fd-v2-operational-bubble{color:#86333f}
.fd-chats-stage :is(.fd-v2-operational-bubble,.is-note .fd-v2-message-bubble) .fd-v2-message-label{font-size:0.75rem;line-height:1.4;margin-bottom:0.25rem}
.fd-chats-stage .fd-urgency-contour::before{background-image:radial-gradient(ellipse at center,#ef5f6e 0%,#ef5f6e80 24%,transparent 55%)}
.fd-app-dark .fd-chats-stage .fd-v2-message-row:is(.is-system,.is-note){--fd-bubble-tint:rgba(63,116,185,.35)}
.fd-app-dark .fd-chats-stage .fd-v2-message-row.is-urgent{--fd-bubble-tint:rgba(156,52,67,.35)}
.fd-app-dark .fd-chats-stage :is(.fd-v2-operational-bubble,.is-note .fd-v2-message-bubble,.fd-v2-system-notice),
.fd-app-dark .fd-chats-stage .fd-v2-messages .fd-v2-message-row:is(.is-system,.is-note)>.fd-v2-message-content>.fd-v2-message-bubble{color:#d5e6ff}
.fd-app-dark .fd-chats-stage .fd-v2-message-row.is-urgent>.fd-v2-message-content>.fd-v2-operational-bubble{color:#ffd7dd}

.fd-chats-stage .fd-v2-messages .fd-v2-message-row.is-system.is-urgent>.fd-v2-message-content>.fd-v2-operational-bubble{color:#86333f}
.fd-app-dark .fd-chats-stage .fd-v2-messages .fd-v2-message-row.is-system.is-urgent>.fd-v2-message-content>.fd-v2-operational-bubble{color:#ffd7dd}

/* Label colors distinguish internal comments, urgency and general information. */
.fd-chats-stage .fd-v2-message-row.is-note{--fd-bubble-tint:rgba(230,215,250,.55)}
.fd-chats-stage .fd-v2-message-row.is-note .fd-v2-message-bubble,
.fd-chats-stage .fd-v2-messages .fd-v2-message-row.is-note>.fd-v2-message-content>.fd-v2-message-bubble{color:#50416c}
.fd-app-dark .fd-chats-stage .fd-v2-message-row.is-note{--fd-bubble-tint:rgba(113,80,151,.35)}
.fd-app-dark .fd-chats-stage .fd-v2-message-row.is-note .fd-v2-message-bubble,
.fd-app-dark .fd-chats-stage .fd-v2-messages .fd-v2-message-row.is-note>.fd-v2-message-content>.fd-v2-message-bubble{color:#eadbff}

/* Empty status text must not consume a row above the remote kanbans. */
.fd-chats-stage .fd-remote-message:empty{display:none}
.fd-chats-stage .fd-remote-card>.fd-kanban-item{border-radius:var(--fd-kanban-radius,0.625rem)}

/* Remote header: circular computer avatar, divider, identity and text action. */
.fd-chats-stage .fd-remote-machine[data-maquina-id]{grid-template-columns:2.25rem minmax(0,1fr) auto;column-gap:0.75rem}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-icon{box-sizing:border-box;width:2.25rem;height:2.25rem;border:0;border-radius:50%;background:linear-gradient(110deg,#F9C97C,#A2E9C1);color:#4d5d71;box-shadow:0 0.125rem 0.3125rem #526b9b18}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-icon::before{content:"";position:absolute;right:-0.4375rem;top:0;bottom:0;width:1px;background:#8296b432}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-icon svg{width:1.375rem;height:1.375rem}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-name{grid-column:2;font-size:0.75rem}
.fd-chats-stage .fd-remote-machine>.fd-remote-machine-connect{grid-row:1 / span 2;align-self:center;min-height:1.75rem;padding:0.375rem 0.5rem}
.fd-app-dark .fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-icon{background:linear-gradient(110deg,#F9C97C,#A2E9C1);border:0;color:#4d5d71}
.fd-app-dark .fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-icon::before{background:#ffffff24}

/* V2 ticket actions are anchored dropdowns, without a modal backdrop. */

/* Fine offset for notification badges on the two card toolbars. */
.fd-chats-stage .fd-cliente-topbar :is(.fd-chat-tab-count,.fd-details-menu-badge){left:auto;right:-0.1875rem;top:-0.1875rem;border:1px solid rgba(255,255,255,.75);box-shadow:0 2px 4px rgba(15,23,42,.2),inset 0 1px 0 rgba(255,255,255,.22);line-height:calc(1.25rem - 2px)}

/* ActivityBadge motion: pulse ring, blurred glow and subtle shake. */
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-name{grid-column:2 / -1}
.fd-chats-stage .fd-remote-machine>.fd-remote-machine-connect{grid-row:2;align-self:center}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-caption{--fd-activity-color:#31ee33;position:relative;justify-self:start;overflow:visible;box-sizing:border-box;gap:0.4375rem;min-height:1.75rem;padding:0.375rem 0 0.375rem 0.75rem;border:0;border-radius:0;background:transparent;box-shadow:none;font-weight:600}
.fd-chats-stage .fd-remote-machine-caption::before,.fd-chats-stage .fd-remote-machine-caption::after{content:"";position:absolute;left:0.5625rem;top:calc(50% - 0.125rem);width:0.25rem;height:0.25rem;border-radius:50%;background:var(--fd-activity-color);transform-origin:center}
.fd-chats-stage .fd-remote-machine-caption::after{animation:fd-activity-circle 1.6s cubic-bezier(.44,0,.56,1) infinite .4s;pointer-events:none}
.fd-chats-stage .fd-remote-machine[data-availability=busy] .fd-remote-machine-caption{--fd-activity-color:#ffbb00}
.fd-chats-stage .fd-remote-machine[data-availability=busy] .fd-remote-machine-caption::after{filter:blur(0.1875rem);animation:fd-activity-glow 3.2s cubic-bezier(.44,0,.56,1) infinite}
.fd-chats-stage .fd-remote-machine[data-availability=offline] .fd-remote-machine-caption{--fd-activity-color:#ff0000}
.fd-chats-stage .fd-remote-machine[data-availability=offline] .fd-remote-machine-caption::after{display:none}
.fd-chats-stage .fd-remote-machine[data-availability=offline] .fd-remote-machine-caption::before{animation:fd-activity-shake 2.3s cubic-bezier(.44,0,.56,1) infinite}
.fd-app-dark .fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-caption{background:transparent;border:0;box-shadow:none}
@keyframes fd-activity-circle{0%{opacity:0;transform:scale(1)}1.5%{opacity:.75;transform:scale(1)}60%{opacity:0;transform:scale(2.4)}75%,100%{opacity:0;transform:scale(1)}}
@keyframes fd-activity-glow{0%{opacity:0;transform:scale(0)}37.5%{opacity:.5;transform:scale(1.65)}62.5%,100%{opacity:0;transform:scale(0)}}
@keyframes fd-activity-shake{0%{transform:translateX(0)}7.043478%{transform:translateX(-1.5px)}14.086957%{transform:translateX(1.5px)}21.130435%{transform:translateX(-1.5px)}28.173913%{transform:translateX(1.5px)}39.130435%,100%{transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.fd-chats-stage .fd-remote-machine-caption::before,.fd-chats-stage .fd-remote-machine-caption::after{animation:none!important}}

/* Equal gaps from the avatar divider through both fixed-size actions to the card edge. */
.fd-remote-machine-controls{grid-column:2 / -1;grid-row:2;display:flex;align-items:center;justify-content:space-between;gap:0.5rem;min-width:0;margin-left:-0.3125rem;margin-right:-0.5rem}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-controls .fd-remote-machine-caption{flex:1;min-width:5.5rem;width:auto;height:1.75rem;min-height:1.75rem;justify-content:flex-start;padding:0.375rem 0 0.375rem 0.75rem}
.fd-chats-stage .fd-remote-machine-controls .fd-remote-machine-caption::before,.fd-chats-stage .fd-remote-machine-controls .fd-remote-machine-caption::after{left:0}
.fd-chats-stage .fd-remote-machine-controls .fd-remote-machine-connect{box-sizing:border-box;flex:0 0 4.5rem;display:flex;align-items:center;justify-content:center;width:4.5rem;height:1.75rem;min-height:1.75rem;padding:0.375rem 0.3125rem;border:1px solid #ffffff90;border-radius:0.5625rem;background:linear-gradient(125deg,#ffffffa8,#ffffff40);box-shadow:inset 0 1px 0 #ffffffb0,0 0.125rem 0.3125rem #526b9b0c;color:var(--fd-remote-accent);font:600 0.625rem/1 Inter,'Segoe UI',sans-serif;overflow:hidden;transition:box-shadow .2s,transform .2s,background .2s}
.fd-remote-machine-controls .fd-remote-connect-label{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.fd-app-dark .fd-chats-stage .fd-remote-machine-controls .fd-remote-machine-connect{background:linear-gradient(145deg,#ffffff14,#ffffff06);border-color:#ffffff25;box-shadow:inset 0 1px 0 #ffffff16}
.fd-app-dark .fd-chats-stage .fd-remote-machine[data-connection-state=offline] .fd-remote-machine-controls .fd-remote-machine-connect{color:#94a1b8}

/* Center the title inside the current identity pane, without legacy offsets. */
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-name{align-self:stretch;display:flex;align-items:center;justify-content:center;text-align:center;margin:0;padding-inline:0.3125rem;box-sizing:border-box}

.fd-chats-stage .fd-remote-machine[data-maquina-id]:not([aria-expanded=true]){grid-template-rows:minmax(0,1fr);align-content:stretch}
.fd-chats-stage .fd-remote-machine[data-maquina-id]:not([aria-expanded=true]) .fd-remote-machine-name{margin:0}

/* Match the reference visibility gate without changing the motion curves. */
.fd-chats-stage .fd-remote-machine-caption[data-activity-visible=false]::before,
.fd-chats-stage .fd-remote-machine-caption[data-activity-visible=false]::after{animation-play-state:paused}

/* ActivityBadge keeps the sharp core above the expanding/blurred halo. */
.fd-chats-stage .fd-remote-machine-caption{isolation:isolate}
.fd-chats-stage .fd-remote-machine-caption::before{z-index:1}
.fd-chats-stage .fd-remote-machine-caption::after{z-index:0}

/* Page-sized kanbans retain seven proportional rows and reserve 30 px for navigation. */
.fd-chats-stage .fd-details-content{overflow:hidden}
.fd-chats-stage .fd-details-content .fd-details-groups{flex-direction:column}
.fd-chats-stage .fd-cliente-kanban .fd-kanban-list.is-paginated{overflow:hidden;scroll-snap-type:none;scrollbar-width:none}
.fd-chats-stage .fd-kanban-list.is-paginated>.fd-kanban-item{--fd-kanban-slot:calc((100cqh - 6 * var(--fd-kanban-gap,0.5rem)) / 7)}
.fd-chats-stage :is(.fd-contact-directory,.fd-contact-history,.fd-indevidos-panel,.fd-details-groups){gap:0.5rem}
.fd-chats-stage :is(.fd-contact-history,.fd-indevidos-panel)>p:empty{display:none}
.fd-chats-stage .fd-kanban-pages{--fd-kanban-page-h:2.375rem;position:relative;flex:0 0 2.375rem;align-self:stretch;align-items:center;justify-content:space-between;gap:0.25rem;width:100%;min-width:0;max-width:100%;height:2.375rem;padding:1px;border:1px solid #ffffff80;border-radius:var(--fd-kanban-radius,0.625rem);background:#ffffff30;box-shadow:inset 0 1px 0.125rem #ffffff30;color:#26354a}
.fd-chats-stage .fd-kanban-pages[hidden]{display:none!important}
.fd-chats-stage .fd-kanban-page-btn{flex:0 0 2.125rem;align-self:center;width:2.125rem;height:2.125rem;padding:0;border-radius:inherit;background:#ffffffb0;color:inherit;box-shadow:0 0.125rem 0.25rem #23344c1a;transition:transform .25s cubic-bezier(.22,1.65,.36,1),background .2s}
.fd-chats-stage .fd-kanban-page-btn svg{width:0.8125rem;height:0.8125rem}
.fd-chats-stage .fd-kanban-page-btn:disabled{opacity:.5;cursor:default}
.fd-chats-stage .fd-kanban-page-btn:hover:not(:disabled){background:#ffffffed;color:inherit;transform:scale(1.05)}
.fd-chats-stage .fd-kanban-page-btn:active:not(:disabled){transform:scale(.88)}
.fd-chats-stage .fd-kanban-page-btn:focus-visible{outline:1px solid #629ee9;outline-offset:1px}
.fd-chats-stage .fd-kanban-page-info{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);gap:0.125rem;padding:0 1px;pointer-events:none}
.fd-chats-stage :is(.fd-kanban-page-num,.fd-kanban-page-total){font:700 0.8125rem/1 Inter,'Segoe UI',sans-serif;letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:inherit}
.fd-chats-stage .fd-kanban-page-total{opacity:.4}
.fd-chats-stage .fd-kanban-page-digit{height:1.125rem}
.fd-app-dark .fd-chats-stage .fd-kanban-pages{background:#ffffff0a;border-color:#ffffff14;box-shadow:inset 0 1px 0.125rem #ffffff08;color:#e8edf5}
.fd-app-dark .fd-chats-stage .fd-kanban-page-btn{background:#ffffff12;box-shadow:0 0.125rem 0.25rem #0003}
.fd-app-dark .fd-chats-stage .fd-kanban-page-btn:hover:not(:disabled){background:#ffffff24}
@media(prefers-reduced-motion:reduce){.fd-chats-stage .fd-kanban-page-btn{transition:none}}

/* Ratings stay unboxed; only evaluated profiles expose the average tooltip. */
.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-stats>.fd-details-rating{display:inline-flex;align-items:center;justify-content:flex-start;gap:0.1875rem;flex:0 1 auto;min-height:1.375rem;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#eab308}
.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-stats>.fd-details-rating.is-unrated{font:400 0.6875rem/1.4 Inter,'Segoe UI',sans-serif;color:#64748b}
.fd-app-dark .fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-stats>.fd-details-rating.is-unrated{color:#aebbd0}
.fd-details-rating-star{position:relative;display:inline-block;flex:0 0 1.25rem;width:1.25rem;height:1.25rem;color:#94a3b850}
.fd-chats-stage .fd-details-profile-stats .fd-details-rating-star svg{display:block;width:1.25rem;height:1.25rem;max-width:none}
.fd-details-rating-fill{position:absolute;inset:0 auto 0 0;display:block;overflow:hidden;color:#eab308}

/* Detalhes ficam contidos no card, inclusive datas longas e várias fotos. */
.fd-chats-stage .fd-details-content>.fd-details-profiles{grid-template-columns:minmax(0,1fr);min-width:0;max-width:100%}
.fd-chats-stage .fd-details-content .fd-details-ticket-empty{box-sizing:border-box;width:100%;min-width:0;max-width:100%;overflow-x:hidden}
.fd-chats-stage .fd-ticket-details-form{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:0}
.fd-chats-stage .fd-ticket-details-row{display:grid;grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:0.625rem;width:100%;min-width:0;box-sizing:border-box}
.fd-chats-stage .fd-ticket-details-row>label{min-width:0;overflow-wrap:anywhere}
.fd-chats-stage .fd-ticket-details-row>span{max-width:100%;min-width:0;justify-self:end;box-sizing:border-box}
.fd-chats-stage .fd-ticket-details-row .fd-kanban-tag{max-width:100%}
/* Era aqui que a pilha se desfazia: `gap` separava os circulos e `margin-left:0` anulava a
   sobreposicao, entao dois participantes apareciam como dois circulos inteiros (20/10/2026). */
.fd-chats-stage .fd-ticket-details-people{gap:0;padding:0.125rem 0 0.125rem 0.125rem}
.fd-chats-stage .fd-ticket-details-people .fd-ticket-details-avatar{margin-left:-0.5rem}
.fd-chats-stage .fd-ticket-details-people .fd-ticket-details-avatar:first-child{margin-left:0}

/* Mesmo relevo nos avatares dos kanbans e na foto acima do chat. */
.fd-chats-stage :is(.fd-kanban-photo,.fd-ligacao-photo .fd-ligacao-disc){box-shadow:0 0.1875rem 0.375rem #0002;transition:transform .3s,background .3s}
.fd-chats-stage .fd-kanban-photo:is(:hover,:focus-visible),
.fd-chats-stage .fd-ligacao-photo:is(:hover,:focus-visible) .fd-ligacao-disc{transform:scale(1.1)}
.fd-chats-stage :is(.fd-kanban-photo,.fd-ligacao-photo .fd-ligacao-disc):not(:has(img:not([hidden]))){background:linear-gradient(90deg,#f9c97c,#a2e9c1);color:#4b5563}
.fd-chats-stage .fd-kanban-photo:not(:has(img:not([hidden]))):is(:hover,:focus-visible),
.fd-chats-stage .fd-ligacao-photo:is(:hover,:focus-visible) .fd-ligacao-disc:not(:has(img:not([hidden]))){background:linear-gradient(90deg,#c9a9e9,#7ee7fc)}
@media(prefers-reduced-motion:reduce){.fd-chats-stage :is(.fd-kanban-photo,.fd-ligacao-photo .fd-ligacao-disc){transition:none}}

/* Photo toggles the session; the existing glass card remains unchanged. */
.fd-chats-stage .fd-remote-machine[data-maquina-id]{--fd-remote-photo-size:clamp(1.75rem,calc(var(--fd-remote-base-height,5.125rem) - 2.125rem),3rem);grid-template-columns:4.75rem minmax(0,1fr);grid-template-rows:minmax(0,1fr);column-gap:0.5rem}
.fd-chats-stage .fd-remote-machine[data-maquina-id][aria-expanded=true]{grid-template-rows:4.125rem minmax(0,1fr)}
.fd-chats-stage .fd-remote-machine[data-maquina-id]>.fd-remote-machine-controls{grid-column:1;grid-row:1;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;align-self:stretch;min-height:0;gap:1px;margin:0;padding:0 0.5rem 0 0;border-right:1px solid #8296b432}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-controls>.fd-remote-machine-photo{flex:none;display:grid;place-items:center;width:var(--fd-remote-photo-size);height:var(--fd-remote-photo-size);min-height:0;padding:0;border:0;border-radius:50%;background:transparent;box-shadow:none;color:inherit;overflow:visible;cursor:pointer}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-controls>.fd-remote-machine-photo:disabled{cursor:default;opacity:.65}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-photo>.fd-remote-machine-icon{display:grid;place-items:center;width:var(--fd-remote-photo-size);height:var(--fd-remote-photo-size);transition:transform .25s,box-shadow .25s}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-photo:not(:disabled):hover>.fd-remote-machine-icon{transform:scale(1.08);box-shadow:0 0.3125rem 0.75rem #526b9b30}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-icon::before{display:none}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-controls>.fd-remote-machine-caption{flex:none;justify-content:center;justify-self:center;width:100%;min-width:0;min-height:0.875rem;height:0.875rem;padding:0;font-size:0.5625rem;line-height:0.875rem;gap:0.25rem;white-space:nowrap}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-caption::before{position:static;width:0.25rem;height:0.25rem;flex:none;animation:none}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-caption::after{display:none}
.fd-chats-stage .fd-remote-machine[data-maquina-id]>.fd-remote-machine-identity{grid-column:2;grid-row:1;align-self:stretch}
.fd-chats-stage .fd-remote-machine[data-maquina-id] .fd-remote-machine-identity>.fd-remote-machine-name{align-self:center;white-space:normal;overflow-wrap:anywhere;font-size:0.75rem}
.fd-chats-stage .fd-remote-machine[data-maquina-id]>.fd-remote-diagnostics{grid-row:2;grid-column:1 / -1}
.fd-remote-machine-photo>.fd-remote-connect-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.fd-app-dark .fd-chats-stage .fd-remote-machine[data-maquina-id]>.fd-remote-machine-controls{border-color:#ffffff24}

.fd-chats-stage .fd-relay-warning {grid-column:1 / -1;color:var(--fd-warning-text,#956600);background:rgba(210,155,35,.12);font-size:0.6875rem;line-height:1.4;padding:0.25rem 0.375rem;border-radius:0.375rem;white-space:normal;margin:0;}
[data-theme="dark"] .fd-chats-stage .fd-relay-warning {color:#e9c66b;}

/* Cards com mensagens não lidas ficam acima dos cards vizinhos para que os badges escapem da sobreposição. */
.fd-chats-stage > .fd-chats-card:has(.fd-group-unread),
.fd-chats-stage > .fd-chats-card:has(.fd-details-menu-badge),
.fd-chats-stage > .fd-chats-card:has(.fd-chat-tab-count),
.fd-chats-stage > .fd-chats-card:has(.chats-list-unread-badge) { z-index: 30; }
.fd-chats-stage .fd-kanban-item:has(.fd-group-unread),
.fd-chats-stage .fd-kanban-item:has(.fd-details-menu-badge),
.fd-chats-stage .fd-kanban-item:has(.fd-chat-tab-count),
.fd-chats-stage .fd-kanban-item:has(.chats-list-unread-badge) { z-index: 30; }
.fd-chats-stage :is(.fd-group-unread,.fd-details-menu-badge,.fd-chat-tab-count,.chats-list-unread-badge) { z-index: 31; }

/* ===== Cascata do card de acesso remoto (21/10/2026) =====
   O card não expande mais: abre listas para a direita — ações → ação + linha do tempo (24 h) → detalhe. */
.fd-remote-cascata{position:fixed;z-index:15000;box-sizing:border-box;width:min(18.5rem,calc(100vw - 1rem));display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(120,130,200,.18);border-radius:1rem;background:linear-gradient(170deg,rgba(255,255,255,.95),rgba(240,242,255,.92));backdrop-filter:blur(1.125rem) saturate(1.25);-webkit-backdrop-filter:blur(1.125rem) saturate(1.25);color:#26282d;box-shadow:0 1px 0.125rem rgba(15,23,42,.06),0 1.375rem 3rem -1.375rem rgba(40,56,120,.45);font:0.8125rem/1.45 Inter,-apple-system,"Segoe UI",sans-serif;animation:fd-remote-cascata-entra .2s cubic-bezier(.22,1,.36,1)}
@keyframes fd-remote-cascata-entra{from{opacity:0;transform:translateX(-0.5rem)}to{opacity:1;transform:none}}
.fd-remote-cascata>header{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;padding:0.875rem 1rem 0.75rem;border-bottom:1px solid rgba(120,130,200,.16)}
.fd-remote-cascata>header strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:0.875rem;font-weight:650}
.fd-remote-cascata>header button{flex:none;display:grid;place-items:center;width:1.75rem;height:1.75rem;padding:0;border:0;border-radius:50%;background:transparent;color:#64748b;font-size:1.25rem;line-height:1;cursor:pointer}
.fd-remote-cascata>header button:hover{background:rgba(120,130,200,.16);color:#0f172a}
.fd-remote-cascata-corpo{display:flex;flex-direction:column;gap:0.125rem;padding:0.5rem;overflow:auto;scrollbar-width:thin;min-height:0}
.fd-remote-cascata-grupo{display:contents}
.fd-remote-cascata-item{position:relative;display:flex;align-items:center;gap:0.75rem;width:100%;min-height:2.5rem;padding:0.5rem 0.625rem;border:0;border-radius:0.6875rem;background:transparent;color:#26282d;font:inherit;font-weight:500;text-align:left;cursor:pointer;transition:background .14s}
.fd-remote-cascata-item:hover,.fd-remote-cascata-item:focus-visible,.fd-remote-cascata-item.is-aberto{outline:none;background:rgba(120,130,200,.14)}
.fd-remote-cascata-item.is-aberto{box-shadow:inset 0.1875rem 0 0 #629ee9}
.fd-remote-cascata-icone{flex:none;display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:0.5rem;background:rgba(98,158,233,.14);color:#2f6fc0}
.fd-remote-cascata-icone svg{width:1rem;height:1rem}
.fd-remote-cascata-rotulo{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fd-remote-cascata-seta{flex:none;color:#94a3b8}
.fd-remote-cascata-seta svg{width:0.875rem;height:0.875rem}
.fd-remote-cascata-item.is-perigo{color:#b42335}
.fd-remote-cascata-item.is-perigo .fd-remote-cascata-icone{background:rgba(220,38,38,.12);color:#dc2626}
.fd-remote-cascata-chave{cursor:pointer;margin-bottom:0.25rem;border-bottom:1px solid rgba(120,130,200,.14);border-radius:0.6875rem 0.6875rem 0 0}
.fd-remote-cascata-chave input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.fd-remote-cascata-chave input:checked+.fd-remote-confirm-track{background:linear-gradient(135deg,#00c6ff,#0072ff)}
.fd-remote-cascata-chave input:checked+.fd-remote-confirm-track::after{transform:translateX(0.75rem)}
.fd-remote-cascata-chave input:focus-visible+.fd-remote-confirm-track{outline:2px solid #629ee9;outline-offset:2px}
.fd-remote-cascata-acao{position:relative;overflow:hidden;isolation:isolate;display:flex;align-items:center;justify-content:center;gap:0.5rem;align-self:stretch;margin:0.25rem 0.125rem 0.5rem;min-height:2.375rem;border:0;border-radius:0.625rem;background:radial-gradient(circle at 100% 107%,#91c9ff 0%,#5baaff 30%,#0078ff 60%,#0753b8 100%);color:#fff;font:inherit;font-weight:600;cursor:pointer;transition:filter .14s}
.fd-remote-cascata-acao:hover:not(:disabled){filter:brightness(1.07)}
.fd-remote-cascata-acao:disabled{opacity:.5;cursor:default}
/* Segurar para confirmar: enche de vermelho em 2 s; soltar antes zera. */
.fd-remote-cascata-acao.is-segurar{--fd-segurar:0;background:rgba(220,38,38,.1);color:#b42335;box-shadow:inset 0 0 0 1px rgba(220,38,38,.35);user-select:none;touch-action:none}
.fd-remote-cascata-acao.is-segurar::before{content:"";position:absolute;inset:0;z-index:-1;transform-origin:left center;transform:scaleX(var(--fd-segurar));background:linear-gradient(90deg,#ef4444,#b91c1c)}
.fd-remote-cascata-acao.is-segurar.is-segurando{color:#fff}
.fd-remote-cascata-aviso{margin:0.25rem 0.375rem;color:#64748b;font-size:0.75rem}
.fd-remote-cascata-aviso:empty{display:none}
.fd-remote-cascata-lista{display:flex;flex-direction:column;gap:0.125rem}
.fd-remote-cascata-registro{display:grid;grid-template-columns:1fr auto;column-gap:0.5rem;row-gap:0.125rem;align-items:center;width:100%;padding:0.5rem 0.625rem;border:0;border-radius:0.6875rem;background:transparent;color:#26282d;font:inherit;text-align:left;cursor:pointer;transition:background .14s}
.fd-remote-cascata-registro:hover,.fd-remote-cascata-registro.is-aberto{background:rgba(120,130,200,.14)}
.fd-remote-cascata-registro span{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fd-remote-cascata-registro time{color:#64748b;font-size:0.6875rem;font-variant-numeric:tabular-nums}
.fd-remote-cascata-registro b{grid-column:1/-1;font-weight:500;font-size:0.6875rem;color:#2f6fc0}
.fd-remote-cascata-registro.is-erro b{color:#c62f3e}
.fd-remote-cascata-tempo{padding:0.5rem 0.5rem 0}
.fd-remote-cascata-monitor{display:grid;grid-template-columns:auto 1fr;gap:0.625rem 0.75rem;margin:0;padding:0.375rem 0.5rem}
.fd-remote-cascata-monitor dt{color:#64748b;font-size:0.75rem}
.fd-remote-cascata-monitor dd{margin:0;text-align:right;font-weight:600;font-size:0.75rem}
.fd-remote-cascata-barra{display:block;height:0.25rem;margin-top:0.25rem;border-radius:999px;background:rgba(120,130,200,.18);overflow:hidden}
.fd-remote-cascata-barra i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#629ee9,#0078ff)}
.fd-remote-cascata-barra.is-alto i{background:linear-gradient(90deg,#f87171,#dc2626)}
.fd-remote-cascata-form{display:flex;flex-direction:column;gap:0.5rem;padding:0.25rem}
.fd-remote-cascata-form input{box-sizing:border-box;width:100%;min-height:2.375rem;padding:0.5rem 0.75rem;border:1px solid rgba(120,130,200,.24);border-radius:0.6875rem;background:rgba(255,255,255,.75);color:#26282d;font:inherit}
.fd-remote-cascata-form input:focus{outline:none;border-color:rgba(70,90,180,.55)}
.fd-remote-machine.is-cascata{box-shadow:0 0 0 2px rgba(98,158,233,.55)}
:is(.fd-app-dark,.fd-portal-dark) .fd-remote-cascata{background:linear-gradient(170deg,rgba(34,38,48,.96),rgba(24,27,35,.94));border-color:rgba(255,255,255,.1);color:#edf1f7}
:is(.fd-app-dark,.fd-portal-dark) .fd-remote-cascata>header{border-color:rgba(255,255,255,.12)}
:is(.fd-app-dark,.fd-portal-dark) :is(.fd-remote-cascata-item,.fd-remote-cascata-registro){color:#edf1f7}
:is(.fd-app-dark,.fd-portal-dark) :is(.fd-remote-cascata-item,.fd-remote-cascata-registro):is(:hover,.is-aberto){background:rgba(148,163,255,.14)}
:is(.fd-app-dark,.fd-portal-dark) .fd-remote-cascata-icone{background:rgba(98,158,233,.2);color:#9ec8ff}
:is(.fd-app-dark,.fd-portal-dark) :is(.fd-remote-cascata-aviso,.fd-remote-cascata-monitor dt,.fd-remote-cascata-registro time){color:#a9b4c4}
:is(.fd-app-dark,.fd-portal-dark) .fd-remote-cascata-registro b{color:#9ec8ff}
:is(.fd-app-dark,.fd-portal-dark) .fd-remote-cascata-form input{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:#edf1f7}
:is(.fd-app-dark,.fd-portal-dark) .fd-remote-cascata>header button{color:#a9b4c4}

/* ===== Bolhas no visual do card de áudio (mp3soundplayer.framer.ai, 21/10/2026) =====
   Referência medida no HTML do site: fundo rgba(0,0,0,.4) sem blur, cantos de 50px, texto branco e a
   sombra suave em três camadas do Framer. Analista 1:1; cliente no mesmo estilo em cinza (texto escuro
   para ler sobre o cinza claro). Nota interna, sistema e urgência continuam com a cara delas. */
/* 23/10/2026 (pedido do dono): analista herda o cinza que era do cliente; cliente vira branco gelo. */
.fd-v2-messages .fd-v2-message-row.is-analyst:not(.is-note):not(.is-system):not(.is-urgent){--fd-bubble-tint:rgba(150,150,150,.32);--fd-bubble-ink:#1f2328;--fd-bubble-meta:rgba(31,35,40,.62);--fd-wave-color:rgba(31,35,40,.34);--fd-wave-played:#1f2328}
.fd-v2-messages .fd-v2-message-row.is-client:not(.is-note):not(.is-system):not(.is-urgent){--fd-bubble-tint:rgba(248,248,244,.9);--fd-bubble-ink:#1f2328;--fd-bubble-meta:rgba(31,35,40,.62);--fd-wave-color:rgba(31,35,40,.34);--fd-wave-played:#1f2328}
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client):not(.is-note):not(.is-system):not(.is-urgent)>.fd-v2-message-content>.fd-v2-message-bubble:not(.has-audio):not(.has-sticker),
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client):not(.is-note):not(.is-system):not(.is-urgent) .fd-v2-audio{
    position:relative;background:var(--fd-bubble-tint);color:var(--fd-bubble-ink);border:0;border-radius:var(--fd-bolha-raio,1.375rem);outline:none;
    backdrop-filter:none;-webkit-backdrop-filter:none;
    box-shadow:0 0.6px 1.57px -1.5px rgba(0,0,0,.17),0 0.14313rem 0.37188rem -0.1875rem rgba(0,0,0,.14),0 0.625rem 1.625rem -0.28125rem rgba(0,0,0,.02)
}
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client):not(.is-note):not(.is-system):not(.is-urgent)>.fd-v2-message-content>.fd-v2-message-bubble:not(.has-audio):not(.has-sticker):not(.has-image):not(.has-video){padding:0.75rem 1.125rem}
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client) .fd-v2-message-time,
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client) .has-audio>.fd-v2-message-time{color:var(--fd-bubble-meta)}
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client) .fd-v2-message-bubble .fd-v2-message-file{color:var(--fd-bubble-ink)}
.fd-v2-messages .fd-v2-message-row.is-analyst:not(.is-note) .fd-v2-message-bubble a{color:#1d5fae}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-messages .fd-v2-message-row.is-analyst:not(.is-note) .fd-v2-message-bubble a{color:#cfe6ff}
/* Imagem e vídeo (21/10/2026): a bolha tem 22px e a mídia 16px, com 6px de folga — cantos concêntricos,
   e a bolha corta o que passar da borda. A legenda ganha recuo próprio para não encostar na curva. */
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client)>.fd-v2-message-content>.fd-v2-message-bubble:is(.has-image,.has-video):not(.has-sticker){padding:0.375rem}
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client)>.fd-v2-message-content>.fd-v2-message-bubble:is(.has-image,.has-video):not(.has-sticker) :is(img,video){border-radius:1rem;position:relative;z-index:1} /* acima do grão: a mídia fica limpa */
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client)>.fd-v2-message-content>.fd-v2-message-bubble:is(.has-image,.has-video):not(.has-sticker)>:is(.fd-v2-message-text,.fd-v2-message-time){padding-left:0.75rem;padding-right:0.75rem;box-sizing:border-box}
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client)>.fd-v2-message-content>.fd-v2-message-bubble:is(.has-image,.has-video):not(.has-sticker)>.fd-v2-message-time{padding-bottom:0.25rem}
/* Sem overflow:hidden: a reação precisa sobrepor a borda da bolha (21/10/2026); o texto quebra para não vazar. */
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client)>.fd-v2-message-content>.fd-v2-message-bubble:not(.has-audio):not(.has-sticker):not(.has-image):not(.has-video){overflow-wrap:anywhere}
/* Áudio: o player do card — botão em círculo com borda, barras na cor do texto. */
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client) .fd-v2-audio{padding:0.75rem 1.25rem}
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client) .fd-v2-audio-play{background:transparent;color:var(--fd-bubble-ink);box-shadow:inset 0 0 0 0.125rem var(--fd-bubble-ink)}
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client) .fd-v2-audio-play:hover{background:rgba(255,255,255,.12)}
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client) .fd-v2-audio-time{color:var(--fd-bubble-meta)}
/* Tema escuro: mesma superfície sem contorno (a referência não tem); o cliente vira cinza translúcido
   com texto branco. */
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-messages .fd-v2-message-row.is-analyst:not(.is-note):not(.is-system):not(.is-urgent){--fd-bubble-tint:rgba(0,0,0,.32);--fd-bubble-ink:#fff;--fd-bubble-meta:rgba(255,255,255,.6)}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-messages .fd-v2-message-row.is-client:not(.is-note):not(.is-system):not(.is-urgent){--fd-bubble-tint:rgba(150,150,150,.18);--fd-bubble-ink:#f4f6f9;--fd-bubble-meta:rgba(244,246,249,.6);--fd-wave-color:rgba(244,246,249,.4);--fd-wave-played:#fff}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client):not(.is-note):not(.is-system):not(.is-urgent)>.fd-v2-message-content>.fd-v2-message-bubble:not(.has-audio):not(.has-sticker),
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client):not(.is-note):not(.is-system):not(.is-urgent) .fd-v2-audio{box-shadow:0 0.6px 1.57px -1.5px rgba(0,0,0,.3),0 0.14313rem 0.37188rem -0.1875rem rgba(0,0,0,.28),0 0.625rem 1.625rem -0.28125rem rgba(0,0,0,.2)}

.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client):not(.is-note):not(.is-system):not(.is-urgent) .fd-v2-audio{position:relative;isolation:isolate}

/* Coletar agora: loading circular enquanto a máquina coleta; some quando o download começa. */
.fd-remote-cascata-giro{display:none;width:0.875rem;height:0.875rem;border:0.125rem solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:fd-remote-cascata-gira .8s linear infinite}
.fd-remote-cascata-acao[data-modo=coletando] .fd-remote-cascata-giro{display:inline-block}
.fd-remote-cascata-acao[data-modo=coletando]:disabled{opacity:.85;cursor:progress}
.fd-remote-cascata-acao[data-modo=coletado]{background:linear-gradient(135deg,#22c55e,#15803d)}
@keyframes fd-remote-cascata-gira{to{transform:rotate(360deg)}}
.fd-remote-cascata-secao{margin:0.625rem 0.625rem 0.25rem;font-size:0.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#64748b}
.fd-remote-cascata-secao[hidden]{display:none}
:is(.fd-app-dark,.fd-portal-dark) .fd-remote-cascata-secao{color:#a9b4c4}

/* Reação sobrepõe a borda da bolha e fica acima do grão. */
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client) .fd-v2-message-reactions{z-index:2}

/* Card de atendimento (21/10/2026): nome + horário, a última mensagem na largura toda, Contratante e
   Atendente lado a lado, o ticket embaixo na largura toda e a barra de prazo (TME/TMA) no rodapé.
   Seis por página na lista de atendimentos, todos inteiros. */
.fd-kanban-item .fd-kanban-time{grid-column:3;grid-row:1}
.fd-kanban-item:not(.fd-kanban-group) .fd-kanban-preview{grid-column:2 / -1}
.fd-kanban-tags:has(.fd-kanban-tag-ticket){grid-template-columns:repeat(2,minmax(0,1fr));gap:0.25rem 0.375rem;margin-top:0.25rem}
.fd-kanban-tags:has(.fd-kanban-tag-ticket)>.fd-kanban-tag{padding:0.1875rem 0.375rem}
.fd-kanban-tag-ticket{grid-column:1 / -1;font-variant-numeric:tabular-nums}
.fd-kanban-tag-numero{font-weight:700;color:#2f7fd8}
.fd-app-dark .fd-kanban-tag-numero{color:#8ebefa}
.fd-kanban-sla{position:absolute;left:0.625rem;right:0.625rem;bottom:0.1875rem;z-index:2;height:0.1875rem;border-radius:62.4375rem;overflow:hidden;background:rgba(38,40,45,.1);pointer-events:auto}
.fd-kanban-sla::after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--fd-sla-cor,#22c55e);transform-origin:left center;transform:scaleX(var(--fd-sla-progresso,0));transition:transform .6s ease,background-color .4s ease}
.fd-kanban-sla[data-faixa=amarela]{--fd-sla-cor:#eab308}
.fd-kanban-sla[data-faixa=vermelha]{--fd-sla-cor:#ef4444}
.fd-app-dark .fd-kanban-sla{background:rgba(255,255,255,.1)}
@media(prefers-reduced-motion:reduce){.fd-kanban-sla::after{transition:none}}
.fd-kanban-item .fd-kanban-ticket:empty{display:none}
.fd-kanban-item .fd-kanban-ticket:not(:empty)~.fd-kanban-time{display:none}

/* Cinco cards por página, com respiro (21/10/2026): linhas mais espaçadas, as três etiquetas com a
   mesma altura e a barra de prazo com folga própria no rodapé. Vale para atendimentos e histórico. */
.fd-chats-stage :is(.fd-chats-card-cliente .fd-kanban-list,.fd-contact-history>.fd-kanban-list).is-paginated>.fd-kanban-item{--fd-kanban-slot:calc((100cqh - 4 * var(--fd-kanban-gap,0.5rem)) / 5)}
.fd-kanban-item:has(.fd-kanban-tag-ticket){row-gap:0.25rem;padding:0.625rem;align-content:center}
.fd-kanban-tags:has(.fd-kanban-tag-ticket){gap:0.375rem;margin-top:0.375rem}
.fd-kanban-tags:has(.fd-kanban-tag-ticket)>.fd-kanban-tag{box-sizing:border-box;height:1.375rem;padding:0 0.5rem;line-height:1.375rem}
/* Barra no fluxo, logo abaixo das etiquetas: o vão até elas é o mesmo vão entre as etiquetas
   (0,25rem da linha + 0,125rem = 0,375rem). */
.fd-kanban-sla{position:relative;left:auto;right:auto;bottom:auto;grid-column:1 / -1;height:3px;margin-top:0.125rem}

/* Kanbans de solicitante e de histórico (21/10/2026): sem contorno, cinza com transparência média e
   o mesmo granulado leve das bolhas do chat; versão preta no tema escuro. A bolinha de não lidas
   fica dentro do card, na frente, e nunca é cortada pela borda da lista. */
.fd-chats-stage :is(.fd-chats-card-cliente,.fd-contact-history) .fd-kanban-item{background-image:none;background-color:rgba(128,128,128,.2);box-shadow:none;border:0;isolation:isolate}
.fd-chats-stage :is(.fd-chats-card-cliente,.fd-contact-history) .fd-kanban-item[role=button]:hover{background-color:rgba(128,128,128,.28)}
.fd-chats-stage :is(.fd-chats-card-cliente,.fd-contact-history) .fd-kanban-item[aria-pressed=true]{background-color:rgba(98,158,233,.24);box-shadow:none}
.fd-chats-stage :is(.fd-chats-card-cliente,.fd-contact-history) .fd-kanban-item::after{
    content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;opacity:.035;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='256' height='256'><filter id='g' x='0' y='0'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='1' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/><feComponentTransfer><feFuncR type='linear' slope='10' intercept='-4.7'/><feFuncG type='linear' slope='10' intercept='-4.7'/><feFuncB type='linear' slope='10' intercept='-4.7'/><feFuncA type='table' tableValues='1 1'/></feComponentTransfer></filter><rect width='100%' height='100%' filter='url(%23g)'/></svg>");
    background-size:256px 256px;background-repeat:repeat
}
.fd-app-dark .fd-chats-stage :is(.fd-chats-card-cliente,.fd-contact-history) .fd-kanban-item{background-color:rgba(0,0,0,.34)}
.fd-app-dark .fd-chats-stage :is(.fd-chats-card-cliente,.fd-contact-history) .fd-kanban-item[role=button]:hover{background-color:rgba(0,0,0,.44)}
.fd-app-dark .fd-chats-stage :is(.fd-chats-card-cliente,.fd-contact-history) .fd-kanban-item[aria-pressed=true]{background-color:rgba(98,158,233,.22)}
.fd-app-dark .fd-chats-stage :is(.fd-chats-card-cliente,.fd-contact-history) .fd-kanban-item::after{opacity:.05}
.fd-chats-stage :is(.fd-chats-card-cliente,.fd-contact-history) .fd-kanban-photo>.fd-group-unread{left:-0.375rem;top:-0.375rem}


/* Áudio (21/10/2026): barras finas, todas com 2 px e vão fixo — com largura em rem o navegador
   arredondava cada barra para um lado e elas ficavam com grossuras diferentes. */
.fd-v2-messages .fd-v2-audio-wave{justify-content:flex-start;gap:2px}
.fd-v2-messages .fd-v2-audio-wave span{flex:0 0 2px;width:2px;min-width:2px;max-width:2px}
.fd-v2-audio-speed{display:none;flex:none;min-width:2.125rem;height:1.375rem;padding:0 0.375rem;border:0;border-radius:62.4375rem;background:rgba(0,0,0,.12);color:var(--fd-bubble-ink,#26282d);font:700 0.6875rem/1.375rem Inter,'Segoe UI',sans-serif;font-variant-numeric:tabular-nums;cursor:pointer}
.fd-v2-audio-speed:hover{background:rgba(0,0,0,.2)}
/* Velocidade sempre à mostra no lugar do microfone: dá para escolher antes do play (21/10/2026). */
.fd-v2-audio .fd-v2-audio-speed{display:inline-block}
.fd-v2-audio .fd-v2-audio-microphone{display:none}
.fd-app-dark .fd-v2-audio-speed{background:rgba(255,255,255,.14);color:#f4f5f7}

/* Etiquetas dos kanbans (21/10/2026): ticket, contratante e analista com a mesma altura e o mesmo
   vão, em atendimentos, histórico, contatos e grupos. */
.fd-chats-stage .fd-kanban-item .fd-kanban-tags{grid-template-columns:repeat(2,minmax(0,1fr));gap:0.375rem;margin-top:0.375rem}
.fd-chats-stage .fd-kanban-item .fd-kanban-tags>.fd-kanban-tag{box-sizing:border-box;height:1.375rem;padding:0 0.5rem;line-height:1.375rem}
/* Contato da agenda: um contratante e "+N" em azul; a bolha lista todos. */
.fd-kanban-tag-contratantes{display:flex;align-items:center;justify-content:center;gap:0.25rem;min-width:0}
.fd-kanban-tag-contratantes>.fd-kanban-tag-nome{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fd-kanban-tag-mais{flex:none;font-weight:700;color:#2f7fd8}
.fd-app-dark .fd-kanban-tag-mais{color:#8ebefa}
/* Ticket: número, hora e data distribuídos com o mesmo respiro; número com no máximo 12 caracteres. */
.fd-chats-stage .fd-kanban-item .fd-kanban-tags>.fd-kanban-tag-ticket{display:flex;align-items:center;justify-content:space-between;gap:0.375rem;padding:0 0.75rem;font-variant-numeric:tabular-nums}
.fd-kanban-tag-ticket>.fd-kanban-tag-numero{min-width:0;max-width:12ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fd-kanban-tag-ticket>.fd-kanban-tag-sep{flex:none;opacity:.45}
.fd-kanban-tag-ticket>:is(.fd-kanban-tag-hora,.fd-kanban-tag-dia){flex:none}

/* Sem o ponto na aba de finalizados (21/10/2026): o aviso de recuperadas fica só no card. */
.fd-chats-stage [data-sessao="finalizado"].has-recovered::after{content:none}


/* Cards de atendimentos e de detalhes (21/10/2026): o card pai num branco gelo translúcido e todos
   os kanbans dentro dele — atendimentos, contatos, grupos, máquinas, contratante/solicitante,
   detalhes, linha do tempo, histórico e invalidados — no mesmo branco, mais claro, sem borda e com o
   granulado leve. O tema escuro segue com a versão preta. */
#appScreen:not(.fd-app-dark) .fd-chats-stage>:is(.fd-chats-card-cliente,.fd-chats-card-detalhes){
    background:rgba(246,248,251,.62);border-color:transparent;
    backdrop-filter:blur(0.875rem) saturate(1.15);-webkit-backdrop-filter:blur(0.875rem) saturate(1.15)
}
.fd-chats-stage :is(.fd-chats-card-cliente,.fd-chats-card-detalhes) .fd-kanban-item{background-image:none;background-color:rgba(255,255,255,.62);border:0;box-shadow:none;isolation:isolate}
.fd-chats-stage :is(.fd-chats-card-cliente,.fd-chats-card-detalhes) .fd-kanban-item[role=button]:hover{background-color:rgba(255,255,255,.8)}
.fd-chats-stage :is(.fd-chats-card-cliente,.fd-chats-card-detalhes) .fd-kanban-item[aria-pressed=true]{background-color:rgba(214,230,250,.85);box-shadow:none}
.fd-chats-stage :is(.fd-chats-card-cliente,.fd-chats-card-detalhes) .fd-kanban-item:not(.fd-remote-machine)::after{
    content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;opacity:.03;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='256' height='256'><filter id='g' x='0' y='0'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='1' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/><feComponentTransfer><feFuncR type='linear' slope='10' intercept='-4.7'/><feFuncG type='linear' slope='10' intercept='-4.7'/><feFuncB type='linear' slope='10' intercept='-4.7'/><feFuncA type='table' tableValues='1 1'/></feComponentTransfer></filter><rect width='100%' height='100%' filter='url(%23g)'/></svg>");
    background-size:256px 256px;background-repeat:repeat
}
/* Etiquetas dentro do kanban claro: cinza suave para não sumirem no branco. */
/* Etiquetas no mesmo off-white dos cards, um pouco mais escuro que o kanban. */
.fd-chats-stage :is(.fd-chats-card-cliente,.fd-chats-card-detalhes) .fd-kanban-item .fd-kanban-tag{background:rgba(234,237,242,.92)}
.fd-app-dark .fd-chats-stage :is(.fd-chats-card-cliente,.fd-chats-card-detalhes) .fd-kanban-item{background-color:rgba(0,0,0,.34)}
.fd-app-dark .fd-chats-stage :is(.fd-chats-card-cliente,.fd-chats-card-detalhes) .fd-kanban-item[role=button]:hover{background-color:rgba(0,0,0,.44)}
.fd-app-dark .fd-chats-stage :is(.fd-chats-card-cliente,.fd-chats-card-detalhes) .fd-kanban-item[aria-pressed=true]{background-color:rgba(98,158,233,.22)}
.fd-app-dark .fd-chats-stage :is(.fd-chats-card-cliente,.fd-chats-card-detalhes) .fd-kanban-item::after{opacity:.05}
.fd-app-dark .fd-chats-stage :is(.fd-chats-card-cliente,.fd-chats-card-detalhes) .fd-kanban-item .fd-kanban-tag{background:#ffffff1c}
/* Contato e invalidado: a etiqueta do contratante na largura toda, centralizada, como a do ticket. */
.fd-chats-stage .fd-kanban-item .fd-kanban-tags>.fd-kanban-tag-contratantes{grid-column:1 / -1}


/* Etiquetas menos arredondadas em todos os kanbans (contratante, ticket, analista) — 21/10/2026. */
.fd-chats-stage .fd-kanban-item .fd-kanban-tags>.fd-kanban-tag{border-radius:0.375rem}

/* Dock do chat (21/10/2026): ao levantar, o ícone sobe fora da caixa do botão e o clique ali não
   pegava. Durante o hover a área de clique soma a posição de repouso e a elevada. */
.fd-glass-dock-item::before{content:"";position:absolute;left:0;right:0;bottom:0;top:0;pointer-events:none}
.fd-glass-dock-item:hover::before{top:calc(-1 * var(--fd-dock-alcance, 0px));pointer-events:auto}

/* Recuperada na primeira vista (22/10/2026): contorno azul dinâmico — o azul do consentimento do acesso remoto — só na primeira abertura, em chamado ativo. Depois, só o selo "Recuperado" na meta. */
.fd-v2-message-bubble.is-recuperada-nova{position:relative}
.fd-recuperada-contour{position:absolute;inset:-1px;z-index:3;border-radius:inherit;padding:0.125rem;pointer-events:none;overflow:hidden;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor}
/* Brilho do contorno pelo compositor (22/10/2026): mesmo desenho e trajetória do background-position de antes (fundo 200% andando 0→100% = translate(-50%) do brilho), sem recalcular estilo nem repintar a cada quadro. */
.fd-recuperada-contour::before{content:"";position:absolute;left:0;top:0;width:200%;height:200%;background:radial-gradient(ellipse at center,#0072ff 0%,#00c6ff80 24%,transparent 55%);animation:fd-contorno-giro 5s ease infinite;will-change:transform}
.fd-v2-message-meta .fd-v2-message-recuperado{font-size:0.625rem;font-weight:600;color:#0072ff;opacity:.85}
.fd-app-dark .fd-v2-message-meta .fd-v2-message-recuperado{color:#6cb6ff}
/* Badge de não lidas do chamado encerrado: azul, com recuperadas + novas (22/10/2026). */
.fd-chats-stage .fd-group-unread.is-recuperada{background:#0072ff;color:#fff}
/* Switch Contatos | Tickets da aba de bloqueio (22/10/2026). */
.fd-chats-stage .fd-indevidos-switch{grid-template-columns:repeat(2,minmax(0,1fr))}
.fd-chats-stage .fd-indevidos-switch::before{width:calc((100% - 2 * var(--_switch-padding))/2)}
.fd-chats-stage .fd-indevidos-switch[hidden]{display:none}
/* Bloqueados › Tickets (22/10/2026): mesmo slot dos cards do kanban de atendimento — 5 por página. */
.fd-chats-stage .fd-indevidos-panel>.fd-kanban-list.is-tickets.is-paginated>.fd-kanban-item{--fd-kanban-slot:calc((100cqh - 4 * var(--fd-kanban-gap,0.5rem)) / 5)}
/* Contorno do recuperado no formato da bolha (22/10/2026): no áudio a bolha é invólucro transparente e o
   formato é o da pílula do player; na imagem/vídeo, o da mídia. */
.fd-v2-message-bubble.has-audio>.fd-recuperada-contour{inset:0;border-radius:var(--fd-bolha-raio,1.375rem)}
.fd-v2-message-bubble:is(.has-image,.has-video):not(.has-sticker)>.fd-recuperada-contour{inset:0;border-radius:1rem}
.fd-v2-message-bubble.has-sticker>.fd-recuperada-contour{display:none}

/* Opção visível, mas travada para quem não tem permissão (22/10/2026). */
.fd-remote-cascata-item.is-bloqueado{cursor:not-allowed;opacity:.55}
.fd-remote-cascata-item.is-bloqueado:hover{background:transparent}
.fd-remote-cascata-chave.is-bloqueado input:checked+.fd-remote-confirm-track{background:linear-gradient(135deg,#9db8d8,#7f9cc4)}

/* Presença: quem está conectado na máquina, sempre à vista, logo abaixo do nome (22/10/2026). */
.fd-chats-stage .fd-remote-machine[data-maquina-id][data-presenca] .fd-remote-machine-identity{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.25rem;min-width:0}
.fd-remote-presenca{display:inline-flex;align-items:center;gap:0.3125rem;max-width:100%;min-width:0;padding:0.125rem 0.4375rem 0.125rem 0.3125rem;border-radius:62.4375rem;background:rgba(255,255,255,.72);box-shadow:0 0.0625rem 0.1875rem rgba(30,45,80,.14);cursor:default}
.fd-remote-presenca-rosto{position:relative;display:grid;place-items:center;flex:none;width:1.125rem;height:1.125rem;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#7aa7e8,#4f7fd1);color:#fff;font:700 0.5rem/1 Inter,'Segoe UI',sans-serif;box-shadow:0 0 0 0.09375rem #fff}
.fd-remote-presenca-rosto img{width:100%;height:100%;object-fit:cover;display:block}
.fd-remote-presenca-rosto.is-eu{background:linear-gradient(135deg,#60a5fa,#2563eb)}
.fd-remote-presenca-mais{flex:none;padding:0 0.25rem;border-radius:62.4375rem;background:#e5eaf3;color:#3a4a66;font:700 0.5625rem/1.125rem Inter,'Segoe UI',sans-serif}
.fd-app-dark .fd-remote-presenca-mais{background:rgba(255,255,255,.14);color:#dbe6fa}
.fd-remote-presenca-nome{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 0.625rem/1.2 Inter,'Segoe UI',sans-serif;color:#2b3c5a}
.fd-remote-presenca-vivo{flex:none;width:0.375rem;height:0.375rem;border-radius:50%;background:#22c55e;animation:fd-presenca-pulso 2s ease-out infinite}
@keyframes fd-presenca-pulso{0%{box-shadow:0 0 0 0 rgba(34,197,94,.55)}70%{box-shadow:0 0 0 0.3125rem rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}
@media (prefers-reduced-motion:reduce){.fd-remote-presenca-vivo{animation:none}}
.fd-app-dark .fd-remote-presenca{background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.fd-app-dark .fd-remote-presenca-rosto{box-shadow:0 0 0 0.09375rem #1b2233}
.fd-app-dark .fd-remote-presenca-nome{color:#dbe6fa}
/* Bolha de audio no desenho de referencia do dono (23/10/2026): fundo continua o da bolha (tinta + grao);
   play branco em circulo com sombra e triangulo azul, onda azul ate o cursor (linha + ponto), decorrido e
   total embaixo da onda, velocidade em pilula cinza a direita. */
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client) .fd-v2-audio{gap:0.875rem;padding:0.75rem 0.875rem 0.75rem 0.75rem}
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client) .fd-v2-audio-play{flex:0 0 3rem;width:3rem;height:3rem;padding:0;background:#fff;color:#2f7cf6;box-shadow:0 0.25rem 0.75rem -0.125rem rgba(31,35,40,.18),0 0 0 1px rgba(31,35,40,.04);position:relative;z-index:1}
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client) .fd-v2-audio-play:hover{background:#f7f9fc}
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client) .fd-v2-audio-play svg{width:1.375rem;height:1.375rem;margin-left:0.125rem}
.fd-v2-messages .fd-v2-audio.is-playing .fd-v2-audio-play svg{margin-left:0}
.fd-v2-messages .fd-v2-audio-track{position:relative;z-index:1;display:flex;flex-direction:column;flex:1 1 auto;min-width:0}
.fd-v2-messages .fd-v2-message-row .fd-v2-audio-wave{position:relative;overflow:visible;justify-content:flex-start;gap:3px;height:2rem;cursor:pointer}
.fd-v2-messages .fd-v2-message-row .fd-v2-audio-wave>span:not(.fd-v2-audio-head){flex:0 0 3px;width:3px;min-width:3px;max-width:3px;height:var(--fd-audio-bar-height);border-radius:62.4375rem;background:rgba(31,35,40,.22)}
.fd-v2-messages .fd-v2-message-row .fd-v2-audio-wave>span.is-played{background:#2f7cf6}
.fd-v2-messages .fd-v2-audio-wave>.fd-v2-audio-head{position:absolute;top:-0.125rem;bottom:-0.125rem;left:calc(var(--fd-audio-progress,0) * 100%);width:2px;margin-left:-1px;border-radius:1px;background:#2f7cf6;opacity:0;pointer-events:none;transition:opacity .15s}
.fd-v2-messages .fd-v2-audio-wave>.fd-v2-audio-head::before{content:'';position:absolute;top:-0.3125rem;left:50%;width:0.625rem;height:0.625rem;margin-left:-0.3125rem;border-radius:50%;background:#2f7cf6}
.fd-v2-messages .fd-v2-audio.is-com-velocidade .fd-v2-audio-wave>.fd-v2-audio-head{opacity:1}
.fd-v2-messages .fd-v2-audio-times{display:flex;justify-content:space-between;margin-top:0.375rem;font:500 0.75rem/1 Inter,'Segoe UI',sans-serif;font-variant-numeric:tabular-nums}
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client) .fd-v2-audio-times :is(.fd-v2-audio-time,.fd-v2-audio-elapsed){padding:0;font:inherit;color:var(--fd-bubble-meta,#5b6472)}
.fd-v2-messages .fd-v2-audio .fd-v2-audio-speed{position:relative;z-index:1;align-self:center;min-width:3.25rem;height:2.25rem;padding:0 0.75rem;border-radius:62.4375rem;background:rgba(31,35,40,.08);color:var(--fd-bubble-ink,#1f2328);font:600 0.9375rem/2.25rem Inter,'Segoe UI',sans-serif}
.fd-v2-messages .fd-v2-audio .fd-v2-audio-speed:hover{background:rgba(31,35,40,.14)}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-messages .fd-v2-message-row .fd-v2-audio-wave>span:not(.fd-v2-audio-head){background:rgba(244,246,249,.28)}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-messages .fd-v2-message-row .fd-v2-audio-wave>span.is-played{background:#5b9bff}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-messages .fd-v2-audio .fd-v2-audio-speed{background:rgba(255,255,255,.12)}
/* Kanban (23/10/2026, pedido do dono), vale para toda lista: atendimentos, contatos, bloqueantes, historico.
   Mouse em cima = azul; selecionado = azul mais vivo; selecionado com mouse = o mesmo, um pouco mais escuro.
   :not(#fd-sem-id) so ganha das regras antigas por aba sem precisar repetir cada uma. */
.fd-kanban-item[role=button]:hover:not([aria-pressed=true]):not(#fd-sem-id){background-color:rgba(84,146,230,.22);box-shadow:none}
.fd-kanban-item[aria-pressed=true]:not(#fd-sem-id){background-color:rgba(186,214,255,.96);box-shadow:inset 0 0 0 1px rgba(64,140,245,.38)}
.fd-kanban-item[aria-pressed=true]:hover:not(#fd-sem-id){background-color:rgba(164,199,253,.98);box-shadow:inset 0 0 0 1px rgba(52,128,240,.5)}
:is(.fd-app-dark,.fd-portal-dark) .fd-kanban-item[role=button]:hover:not([aria-pressed=true]):not(#fd-sem-id){background-color:rgba(98,158,233,.24)}
:is(.fd-app-dark,.fd-portal-dark) .fd-kanban-item[aria-pressed=true]:not(#fd-sem-id){background-color:rgba(66,138,242,.36);box-shadow:inset 0 0 0 1px rgba(142,190,250,.5)}
:is(.fd-app-dark,.fd-portal-dark) .fd-kanban-item[aria-pressed=true]:hover:not(#fd-sem-id){background-color:rgba(66,138,242,.46)}
/* Audio (23/10/2026, foto do dono): a onda tem largura propria e nao encolhe — antes a bolha ficava
   mais estreita que as barras e elas vazavam por cima da pilula de velocidade. Play do analista em
   cinza claro da propria bolha, sem o branco puro do cliente. */
.fd-v2-messages .fd-v2-audio-track{flex:0 0 auto}
.fd-v2-messages .fd-v2-message-row .fd-v2-audio-wave{width:max-content}
.fd-v2-messages .fd-v2-message-row.is-analyst .fd-v2-audio-play{background:#e7e8ec;color:#4b5563;box-shadow:0 0.25rem 0.75rem -0.125rem rgba(31,35,40,.14)}
.fd-v2-messages .fd-v2-message-row.is-analyst .fd-v2-audio-play:hover{background:#eef0f3}
:is(.fd-app-dark,.fd-portal-dark) .fd-v2-messages .fd-v2-message-row.is-analyst .fd-v2-audio-play{background:#4a505b;color:#e8ebf0}
/* Bolinha de nao lidas (23/10/2026): a lista rola (overflow) e cortava a bolinha 13px para fora da foto
   no primeiro card. Fica 6px para fora — ainda sobre a quina da foto, mas dentro do respiro do card —
   e acima de qualquer card vizinho ou pai. */
.fd-chats-stage .fd-kanban-photo>.fd-group-unread:not(#fd-sem-id){left:-0.375rem;top:-0.375rem;z-index:40}
.fd-chats-stage .fd-kanban-item:has(.fd-group-unread){z-index:30}
/* Modais de tratativa na cor do proprio icone do dock (23/10/2026, pedido do dono): fundo tingido claro,
   moldura e divisor no tom, botoes no mesmo raio dos cards (0.625rem) e o de confirmar no tom escuro. */
.fd-ticket-action-dropdown[data-action="pausar"]{--fd-acao:#f5cc20;--fd-acao-forte:#c49a05;--fd-acao-tinta:#7a5d00}
.fd-ticket-action-dropdown[data-action="transferir"]{--fd-acao:#ff8b29;--fd-acao-forte:#ca5c0b;--fd-acao-tinta:#8a3d05}
.fd-ticket-action-dropdown[data-action="vincular"]{--fd-acao:#41b6f5;--fd-acao-forte:#167fbe;--fd-acao-tinta:#0b5684}
.fd-ticket-action-dropdown[data-action="finalizar"]{--fd-acao:#3b7ff0;--fd-acao-forte:#1f55c8;--fd-acao-tinta:#163f8f}
.fd-chat-action-popover.is-comment{--fd-acao:#b77aee;--fd-acao-forte:#8347b8;--fd-acao-tinta:#5b2d86}
.fd-chat-action-popover.is-urgent{--fd-acao:#ef4b55;--fd-acao-forte:#c0262f;--fd-acao-tinta:#8a1820}
:is(.fd-ticket-action-dropdown[data-action],.fd-chat-action-popover:is(.is-comment,.is-urgent)):not(#fd-sem-id){
    border-color:color-mix(in srgb,var(--fd-acao) 38%,transparent);
    background:linear-gradient(170deg,color-mix(in srgb,var(--fd-acao) 16%,#fff),color-mix(in srgb,var(--fd-acao) 9%,#f8f9ff))
}
:is(.fd-ticket-action-dropdown[data-action],.fd-chat-action-popover:is(.is-comment,.is-urgent))>header{border-bottom-color:color-mix(in srgb,var(--fd-acao) 30%,transparent)}
:is(.fd-ticket-action-dropdown[data-action],.fd-chat-action-popover:is(.is-comment,.is-urgent))>header strong{color:var(--fd-acao-tinta)}
.fd-chat-action-popover:is(.is-comment,.is-urgent)>header strong{border-left:0;padding-left:0}
.fd-ticket-action-dropdown[data-action] :is(select,textarea,.enc-select-trigger),.fd-chat-action-popover:is(.is-comment,.is-urgent) .fd-chat-action-body{border-color:color-mix(in srgb,var(--fd-acao) 30%,transparent)}
/* Botoes: mesmo raio dos cards; secundario tingido, confirmar no tom escuro. */
.fd-ticket-action-dropdown[data-action] footer button:not(#fd-sem-id),.fd-ticket-action-dropdown[data-action] .fd-ticket-summary:not(#fd-sem-id){
    border-radius:0.625rem;border-color:color-mix(in srgb,var(--fd-acao) 40%,transparent);
    background:color-mix(in srgb,var(--fd-acao) 18%,#fff);color:var(--fd-acao-tinta)
}
.fd-ticket-action-dropdown[data-action] footer button:hover:not(:disabled):not(#fd-sem-id){background:color-mix(in srgb,var(--fd-acao) 28%,#fff)}
.fd-ticket-action-dropdown[data-action] :is(.is-primary,.fd-encerrar-burst):not(#fd-sem-id){
    border-color:var(--fd-acao-forte);background:var(--fd-acao-forte);color:#fff;filter:none
}
.fd-ticket-action-dropdown[data-action] :is(.is-primary,.fd-encerrar-burst):hover:not(:disabled):not(#fd-sem-id){background:color-mix(in srgb,var(--fd-acao-forte) 86%,#000);filter:none}
.fd-chat-action-popover:is(.is-comment,.is-urgent) .fd-chat-action-body footer button:not(#fd-sem-id){border-radius:0.625rem;background:var(--fd-acao-forte)}
:is(.fd-app-dark,.fd-portal-dark) :is(.fd-ticket-action-dropdown[data-action],.fd-chat-action-popover:is(.is-comment,.is-urgent)):not(#fd-sem-id){
    background:linear-gradient(170deg,color-mix(in srgb,var(--fd-acao) 18%,#1c2638),color-mix(in srgb,var(--fd-acao) 10%,#172033))
}
:is(.fd-app-dark,.fd-portal-dark) :is(.fd-ticket-action-dropdown[data-action],.fd-chat-action-popover:is(.is-comment,.is-urgent))>header strong{color:color-mix(in srgb,var(--fd-acao) 55%,#fff)}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown[data-action] footer button:not(#fd-sem-id){background:color-mix(in srgb,var(--fd-acao) 22%,#1c2638);color:#f1f5ff}
/* Cascata remota: "Conectados no momento:" acima do Pedir confirmacao, mesmo divisor (23/10/2026). */
.fd-remote-cascata-conectados{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;min-height:2.25rem;padding:0.375rem 0.625rem 0.5rem;margin-bottom:0.25rem;border-bottom:1px solid rgba(120,130,200,.14);font-size:0.8125rem;font-weight:500}
.fd-remote-cascata-conectados small{color:#7a8597;font-size:0.75rem}
.fd-remote-cascata-rostos{display:flex;align-items:center;justify-content:flex-end;isolation:isolate}
.fd-remote-cascata-rostos .fd-ticket-details-avatar{width:1.625rem;height:1.625rem;margin-left:-0.5rem}
.fd-remote-cascata-rostos .fd-ticket-details-avatar:first-child{margin-left:0}
.fd-remote-cascata-chave{border-radius:0}
:is(.fd-app-dark,.fd-portal-dark) .fd-remote-cascata-conectados{border-bottom-color:rgba(255,255,255,.1)}
/* Bolhas informativas (comentario interno, urgencia, transferencia, pausa, avisos) com a MESMA largura —
   a da urgencia, referencia do dono (23/10/2026). A altura acompanha o texto. */
.fd-chats-stage .fd-v2-messages .fd-v2-message-row:is(.is-note,.is-system,.is-urgent)>.fd-v2-message-content{width:21rem;max-width:min(21rem,92%);min-width:0}
.fd-chats-stage .fd-v2-messages .fd-v2-message-row:is(.is-note,.is-system,.is-urgent)>.fd-v2-message-content>.fd-v2-message-bubble{width:100%;max-width:100%;box-sizing:border-box;overflow-wrap:anywhere}
/* Contador do limite de 50 caracteres das bolhas informativas (23/10/2026). */
.fd-bolha-limite{display:block;margin-top:0.25rem;text-align:right;font-size:0.6875rem;color:#7a8597;font-variant-numeric:tabular-nums}
.fd-chat-action-body footer .fd-bolha-limite{margin:0 0 0 auto}
.fd-chat-action-body textarea{min-height:3.5rem}
/* Lapis do card de contato + modal do solicitante editavel (23/10/2026). */
.fd-kanban-item>.fd-contato-lapis{position:absolute;top:0.375rem;right:0.375rem;z-index:3;display:grid;place-items:center;width:1.5rem;height:1.5rem;padding:0;border:0;border-radius:0.5rem;background:rgba(255,255,255,.7);color:#4b5b75;cursor:pointer;box-shadow:0 1px 0.25rem rgba(29,45,75,.12)}
.fd-kanban-item>.fd-contato-lapis:hover{background:#fff;color:#1d4f9b}
.fd-kanban-item>.fd-contato-lapis.is-bloqueado{cursor:default;opacity:.55}
.fd-kanban-item>.fd-contato-lapis.is-bloqueado:hover{background:rgba(255,255,255,.7);color:#4b5b75}
.fd-contato-cadastro{z-index:15000;max-height:calc(100vh - 1.5rem);overflow:auto;scrollbar-width:thin}
.fd-contato-cadastro .fd-details-popup-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:0.625rem;border-bottom:1px solid #629ee933}
.fd-contato-cadastro .fd-details-popup-header button{border:0;background:transparent;color:inherit;font-size:1.25rem;cursor:pointer}
.fd-contato-contratante{display:grid;grid-template-columns:7.375rem minmax(0,1fr);align-items:center;gap:0.625rem;padding:0.625rem 0 0.375rem}
.fd-contato-contratante>span{font-weight:600}
.fd-contato-contratante-gatilho{display:block;width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;padding:0.375rem 1.75rem 0.375rem 0.625rem;border:1px solid rgba(98,158,233,.35);border-radius:0.625rem;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 0.5rem center;color:inherit;font:inherit;cursor:pointer}
.fd-contato-contratante-lista{display:grid;gap:0.125rem;margin:0 0 0.5rem 8rem;padding:0.25rem;border:1px solid rgba(98,158,233,.3);border-radius:0.625rem;background:#fff;max-height:12rem;overflow:auto}
.fd-contato-contratante-lista[hidden]{display:none}
.fd-contato-contratante-opcao{display:flex;align-items:center;gap:0.5rem;width:100%;padding:0.375rem 0.5rem;border:0;border-radius:0.5rem;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}
.fd-contato-contratante-opcao:hover{background:rgba(98,158,233,.12)}
.fd-contato-contratante-opcao small{margin-left:auto;color:#b45309;font-size:0.6875rem}
.fd-contato-contratante-marca{flex:none;width:0.875rem;height:0.875rem;border:1.5px solid #8aa2c4;border-radius:0.25rem}
.fd-contato-contratante-opcao[aria-selected=true] .fd-contato-contratante-marca{border-color:#2f7cf6;background:#2f7cf6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/80% no-repeat}
.fd-contato-cadastro-form dl{border-top:1px solid #629ee933;padding-top:0.625rem}
.fd-contato-cadastro-form dl>div{align-items:center}
.fd-contato-cadastro-form :is(input,textarea){box-sizing:border-box;width:100%;padding:0.3125rem 0.5rem;border:1px solid rgba(98,158,233,.3);border-radius:0.5rem;background:#fff;color:inherit;font:inherit}
.fd-contato-cadastro-form textarea{resize:vertical}
.fd-contato-cadastro-form input[readonly]{background:transparent;border-color:transparent;padding-left:0}
.fd-contato-cadastro-status{margin:0.5rem 0 0;color:#b91c1c;font-size:0.75rem}
.fd-contato-cadastro-status:empty{display:none}
.fd-contato-cadastro footer{display:flex;justify-content:flex-end;gap:0.5rem;margin-top:0.75rem}
.fd-contato-cadastro footer button{padding:0.4375rem 1rem;border:1px solid rgba(98,158,233,.35);border-radius:0.625rem;background:#fff;color:#334155;font:inherit;font-weight:600;cursor:pointer}
.fd-contato-cadastro footer .is-primary{border-color:#1f55c8;background:#1f55c8;color:#fff}
.fd-contato-cadastro footer .is-primary:disabled{opacity:.6;cursor:progress}
:is(.fd-app-dark,.fd-portal-dark) .fd-contato-cadastro :is(input,textarea,.fd-contato-contratante-gatilho,.fd-contato-contratante-lista){background-color:#1c2433;border-color:#ffffff24}
:is(.fd-app-dark,.fd-portal-dark) .fd-kanban-item>.fd-contato-lapis{background:rgba(255,255,255,.1);color:#d9e2f1}
/* Editor de etiquetas na lista suspensa da v2 (23/10/2026, so ADM/DEV clica). */
.fd-etiqueta-editar{display:block;width:calc(100% - 2rem);margin:0.25rem 1rem 0.75rem;padding:0.4375rem 0.75rem;border:1px dashed rgba(98,158,233,.5);border-radius:0.625rem;background:transparent;color:#1d4f9b;font:inherit;font-weight:600;cursor:pointer}
.fd-etiqueta-editar:hover{background:rgba(98,158,233,.1)}
.fd-etiqueta-editar.is-bloqueado{cursor:default;opacity:.5}
.fd-etiqueta-editar.is-bloqueado:hover{background:transparent}
.fd-etiqueta-incluir{display:block;width:100%;margin-top:0.5rem;padding:0.4375rem 0.75rem;border:1px dashed rgba(98,158,233,.5);border-radius:0.625rem;background:transparent;color:#1d4f9b;font:inherit;font-weight:600;cursor:pointer}
.fd-etiqueta-form{display:grid;gap:0.75rem}
.fd-etiqueta-form-nome{display:flex;align-items:flex-end;gap:0.5rem}
.fd-etiqueta-form-nome label{flex:1;display:grid;gap:0.25rem;font-size:0.75rem;font-weight:600}
.fd-etiqueta-form-nome input[type=text]{box-sizing:border-box;width:100%;padding:0.4375rem 0.625rem;border:1px solid rgba(98,158,233,.3);border-radius:0.625rem;background:#fff;font:inherit;font-weight:400}
.fd-etiqueta-form-nome input[type=color]{flex:none;width:2.25rem;height:2.25rem;padding:0.125rem;border:1px solid rgba(98,158,233,.3);border-radius:0.625rem;background:#fff;cursor:pointer}
.fd-etiqueta-sim-nao{display:flex;align-items:center;gap:0.875rem;margin:0;padding:0;border:0}
.fd-etiqueta-sim-nao legend{float:left;min-width:8rem;font-size:0.75rem;font-weight:600}
.fd-etiqueta-sim-nao label{display:inline-flex;align-items:center;gap:0.25rem;cursor:pointer}
.fd-etiqueta-form footer,.fd-etiqueta-excluir footer{display:flex;justify-content:flex-end;gap:0.5rem;padding:0}
.fd-etiqueta-form footer button,.fd-etiqueta-excluir footer button{padding:0.4375rem 0.875rem;border:1px solid rgba(98,158,233,.35);border-radius:0.625rem;background:#fff;color:#334155;font:inherit;font-weight:600;cursor:pointer}
.fd-etiqueta-form footer .is-primary{border-color:#1f55c8;background:#1f55c8;color:#fff}
:is(.fd-etiqueta-form,.fd-etiqueta-excluir) footer .is-perigo{border-color:#c0262f;background:#fff;color:#c0262f}
.fd-etiqueta-excluir footer .is-perigo{background:#c0262f;color:#fff}
.fd-etiqueta-form footer .is-perigo{margin-right:auto}
.fd-etiqueta-excluir{display:grid;gap:0.5rem}
.fd-etiqueta-excluir p{margin:0}
.fd-etiqueta-excluir-opcao{display:flex;align-items:center;gap:0.375rem;cursor:pointer}
.fd-etiqueta-excluir-destino[hidden]{display:none}
.fd-etiqueta-editor-lista small{margin-left:auto;font-size:0.6875rem;color:#7a8597}
/* Bolha de audio do tamanho do player (23/10/2026): a largura fixa de 16rem era do player antigo e o
   novo (play + onda + tempos + 1x) vazava pela direita. Agora a bolha acompanha o conteudo; se a
   conversa for estreita, a onda encolhe e corta por dentro em vez de passar da borda. */
.fd-v2-messages .fd-v2-message-content.has-audio:not(#fd-sem-id){width:max-content;max-width:min(26rem,calc(100% - 2.5rem));min-width:0}
.fd-v2-messages .fd-v2-message-content.has-audio .fd-v2-audio-track:not(#fd-sem-id){flex:1 1 auto;min-width:0}
.fd-v2-messages .fd-v2-message-row .fd-v2-message-content.has-audio .fd-v2-audio-wave:not(#fd-sem-id){width:auto;max-width:100%;overflow:hidden;padding-top:0.75rem;margin-top:-0.75rem}
.fd-v2-messages .fd-v2-message-content.has-audio .fd-v2-audio-speed{flex:none}
.fd-v2-messages .fd-v2-message-row .fd-v2-audio-wave>.fd-v2-audio-head:not(#fd-sem-id){overflow:visible;max-width:none;flex:none;top:0.5rem;bottom:-0.125rem}
.fd-v2-messages .fd-v2-message-row .fd-v2-audio-wave>.fd-v2-audio-head:not(#fd-sem-id)::before{display:block;width:0.625rem;height:0.625rem;min-width:0;border-radius:50%;top:-0.3125rem;margin-left:-0.3125rem}
/* Vinculo sem barra de rolagem interna (23/10/2026): o painel cresce o que precisar; as listas
   suspensas escondidas dentro dele inflavam a altura e criavam a barra. */
.fd-ticket-action-dropdown.fd-vinculo-picker:not(#fd-sem-id){max-height:none;overflow:visible}
/* Encerrar ticket em azul mais escuro (23/10/2026). */
.fd-ticket-action-dropdown[data-action="finalizar"]:not(#fd-sem-id){--fd-acao:#2350c4;--fd-acao-forte:#173a94;--fd-acao-tinta:#10285f}

/* Explosao de sucesso em todas as tratativas (23/10/2026), cada uma nas suas cores: encerrar azul com
   azul escuro, vinculo azul com azul claro, pausa amarelo, urgencia vermelho, comentario lilas. */
.fd-tratativa-burst{position:relative;isolation:isolate;z-index:1}
.fd-ticket-action-dropdown[data-action=finalizar]{--fd-burst-a:#3b6fe0;--fd-burst-b:#173a94;--fd-burst-c:#0f2a6e}
.fd-ticket-action-dropdown[data-action=vincular]{--fd-burst-a:#41b6f5;--fd-burst-b:#1d8fe0;--fd-burst-c:#a5e3ff}
.fd-ticket-action-dropdown[data-action=pausar]{--fd-burst-a:#f5cc20;--fd-burst-b:#c49a05;--fd-burst-c:#ffe46c}
.fd-ticket-action-dropdown[data-action=transferir]{--fd-burst-a:#ff8b29;--fd-burst-b:#ca5c0b;--fd-burst-c:#ffcf9b}
.fd-chat-action-popover.is-urgent{--fd-burst-a:#ef4b55;--fd-burst-b:#c0262f;--fd-burst-c:#ff9aa0}
.fd-chat-action-popover.is-comment{--fd-burst-a:#b77aee;--fd-burst-b:#8347b8;--fd-burst-c:#ead5ff}

/* 24/10/2026: o botão de baixar os agentes mantém as cores no hover; só o efeito do ícone acontece. */
/* Modal dos agentes: Desk a esquerda (chave), Cliente a direita (fechadura), marcas d'agua do mesmo
   tamanho preenchendo cada lado, divisor que nao encosta nas bordas. */
.fd-agentes-modal{position:fixed;z-index:15000;box-sizing:border-box;width:min(34rem,calc(100vw - 1rem));border:1px solid rgba(120,130,200,.2);border-radius:1rem;background:linear-gradient(170deg,rgba(255,255,255,.96),rgba(240,244,255,.94));color:#26282d;box-shadow:0 1.375rem 3rem -1.375rem rgba(40,56,120,.45);font:0.8125rem/1.45 Inter,-apple-system,"Segoe UI",sans-serif;animation:fd-v2-menu-in .16s cubic-bezier(.22,1,.36,1)}
.fd-agentes-modal>header{display:flex;align-items:center;justify-content:space-between;padding:0.875rem 1rem;border-bottom:1px solid rgba(120,130,200,.16)}
.fd-agentes-modal>header strong{font-size:0.9375rem;font-weight:600}
.fd-agentes-modal>header button{border:0;background:transparent;color:#64748b;font-size:1.25rem;cursor:pointer}
.fd-agentes-corpo{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;padding:1rem}
.fd-agentes-divisor{width:1px;margin:0.75rem 1rem;background:rgba(120,130,200,.28)}
.fd-agentes-lado{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:stretch;gap:0.5rem;min-height:12rem;padding:0.75rem;border-radius:0.75rem}
.fd-agentes-lado strong{font-size:1rem;font-weight:700;color:#1d2b4f}
.fd-agentes-legenda{min-height:2.25rem;color:#64748b;font-size:0.75rem}
.fd-agentes-marca{position:absolute;inset:0;z-index:-1;display:grid;place-items:center;color:#2f6fd6;opacity:.09;pointer-events:none}
.fd-agentes-marca svg{width:9.5rem;height:9.5rem}
.fd-agentes-lado button{margin-top:auto;padding:0.5rem 0.875rem;border:1px solid rgba(98,158,233,.4);border-radius:0.625rem;background:rgba(255,255,255,.85);color:#1d4f9b;font:inherit;font-weight:600;cursor:pointer}
.fd-agentes-lado button+button{margin-top:0}
.fd-agentes-lado button.is-primary{border-color:#1f55c8;background:#1f55c8;color:#fff}
.fd-agentes-lado button:disabled{opacity:.5;cursor:not-allowed}
.fd-agentes-lado.is-indisponivel strong,.fd-agentes-lado.is-indisponivel .fd-agentes-marca{opacity:.45}
.fd-agentes-lado.is-indisponivel .fd-agentes-marca{opacity:.05}
.fd-agentes-aviso{margin:0 1rem 0.875rem;color:#1d4f9b;font-size:0.75rem}
.fd-agentes-aviso:empty{display:none}
.fd-agentes-aviso.is-erro{color:#b91c1c}
:is(.fd-app-dark,.fd-portal-dark) .fd-agentes-modal{background:linear-gradient(170deg,rgba(32,42,62,.97),rgba(24,32,50,.96));color:#e1e9fa;border-color:rgba(255,255,255,.12)}
:is(.fd-app-dark,.fd-portal-dark) .fd-agentes-lado strong{color:#f1f5ff}
:is(.fd-app-dark,.fd-portal-dark) .fd-agentes-marca{color:#9ec8ff}
@media (max-width:520px){.fd-agentes-corpo{grid-template-columns:1fr}.fd-agentes-divisor{width:auto;height:1px;margin:0.75rem 1rem}}
/* Lapis nos cards de perfil dos Detalhes (23/10/2026). */
.fd-details-profile>.fd-contato-lapis{position:absolute;top:0.375rem;right:0.375rem;z-index:3;display:grid;place-items:center;width:1.5rem;height:1.5rem;padding:0;border:0;border-radius:0.5rem;background:rgba(255,255,255,.7);color:#4b5b75;cursor:pointer;box-shadow:0 1px 0.25rem rgba(29,45,75,.12)}
.fd-details-profile>.fd-contato-lapis:hover{background:#fff;color:#1d4f9b}
.fd-details-profile>.fd-contato-lapis.is-bloqueado{cursor:default;opacity:.55}
/* Midia carregando (23/10/2026): o circulo da timeline, cinza e menor, centralizado; o video fica preto. */
.fd-midia-spinner{width:1.75rem;height:1.75rem;transform-origin:center;animation:fd-spinner-rotate 2s linear infinite}
.fd-midia-spinner circle{fill:none;stroke:#9aa3af;stroke-width:3;stroke-dasharray:1,200;stroke-dashoffset:0;stroke-linecap:round;animation:fd-spinner-dash 1.5s ease-in-out infinite}
.fd-v2-video-status:not([hidden]){position:absolute;inset:0;top:0;left:0;display:grid;place-items:center;z-index:2;pointer-events:none}
.fd-v2-video .fd-v2-video-open[hidden]{display:none}
.fd-v2-image{position:relative}
.fd-v2-image-status:disabled:not([hidden]){display:grid;place-items:center;width:100%;min-height:7.5rem;text-align:center}
/* Bolha com video: o mesmo arredondamento do proprio video (ajuste fino, so nela). */
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client)>.fd-v2-message-content>.fd-v2-message-bubble.has-video:not(.has-sticker):not(#fd-sem-id){border-radius:1rem}
/* Previa de video no card como no WhatsApp: icone da camera + "Video" (23/10/2026). */
.fd-kanban-preview.is-video{display:flex;align-items:center;gap:0.25rem}
.fd-kanban-preview.is-video svg{flex:0 0 0.875rem}
.fd-kanban-preview.is-video span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Encerrar: pesquisa e rodape no formato dos cards (raio 0.625rem), todos iguais (23/10/2026). */
.fd-ticket-action-dropdown[data-action] :is(.fd-ticket-survey button,footer button,.fd-encerrar-burst):not(#fd-sem-id){border-radius:0.625rem}
.fd-ticket-survey button:not(#fd-sem-id){border-radius:0.625rem}
/* Transferir e Pausar sem barra de rolagem interna (as listas escondidas inflavam a altura). */
.fd-ticket-action-dropdown:is([data-action="transferir"],[data-action="pausar"]):not(#fd-sem-id){max-height:none;overflow:visible}
/* Editor de etiquetas (24/10/2026): salvar azul, cancelar e excluir vermelhos; voltar para a selecao;
   seletor de cor da v2 com amostra arredondada como o campo e a lista num card arredondado. */
.fd-etiqueta-form footer .is-cancelar:not(#fd-sem-id),.fd-etiqueta-form footer .is-perigo:not(#fd-sem-id),.fd-etiqueta-excluir footer .is-perigo:not(#fd-sem-id){border-color:#c0262f;background:#c0262f;color:#fff}
.fd-etiqueta-form footer .is-primary:not(#fd-sem-id){border-color:#1f55c8;background:#1f55c8;color:#fff}
.fd-etiqueta-form footer .is-perigo:not(#fd-sem-id){margin-right:0}
.fd-etiqueta-form footer{justify-content:flex-end}
.fd-etiqueta-voltar{display:block;width:100%;margin-top:0.375rem;padding:0.4375rem 0.75rem;border:1px solid rgba(98,158,233,.35);border-radius:0.625rem;background:#fff;color:#334155;font:inherit;font-weight:600;cursor:pointer}
.fd-cor{position:relative;flex:none}
.fd-cor-botao{display:grid;place-items:center;width:2.25rem;height:2.25rem;padding:0.25rem;border:1px solid rgba(98,158,233,.3);border-radius:0.625rem;background:#fff;cursor:pointer}
.fd-cor-amostra{display:block;width:100%;height:100%;border-radius:0.4375rem}
.fd-cor-lista{position:absolute;top:calc(100% + 0.375rem);right:0;z-index:20;display:grid;gap:0.625rem;width:12.5rem;padding:0.75rem;border:1px solid rgba(120,130,200,.22);border-radius:0.75rem;background:linear-gradient(170deg,rgba(255,255,255,.98),rgba(240,244,255,.96));box-shadow:0 1rem 2rem -1rem rgba(40,56,120,.45)}
.fd-cor-lista[hidden]{display:none}
.fd-cor-grade{display:grid;grid-template-columns:repeat(5,1fr);gap:0.375rem}
.fd-cor-opcao{aspect-ratio:1;border:0;border-radius:0.5rem;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.fd-cor-opcao.is-ativa{box-shadow:0 0 0 2px #fff,0 0 0 4px #1f55c8}
.fd-cor-hex{display:flex;align-items:center;gap:0.5rem;font-size:0.75rem;font-weight:600;color:#475569}
.fd-cor-hex input{flex:1;min-width:0;padding:0.3125rem 0.5rem;border:1px solid rgba(98,158,233,.3);border-radius:0.5rem;font:inherit;font-weight:400;text-transform:lowercase}
/* Modais do lápis (24/10/2026): 30% mais largos (442px, no JS), mesma altura nos dois, Observações
   sem alça de redimensionar e a lista de contratantes fora do modal, ao lado. */
.fd-contato-cadastro{height:min(36rem,calc(100vh - 1.5rem))}
.fd-contato-cadastro-form textarea{resize:none}
.fd-contato-contratante-lista.fd-details-profile-popup{position:fixed;z-index:15001;margin:0;padding:0.375rem;max-height:min(18rem,calc(100vh - 1.5rem));overflow:auto;scrollbar-width:thin}
/* Detalhes (24/10/2026): tempos em tag, tag vazia sem traço, rostos inteiros (sem sobreposição nem
   corte na borda direita) e o modal de horários de visualização com 5 linhas fixas. */
.fd-ticket-details-row .fd-kanban-tag{white-space:nowrap;overflow-wrap:normal;font-variant-numeric:tabular-nums}
.fd-ticket-details-row .fd-kanban-tag:empty{display:inline-block;min-width:3.5rem;min-height:1rem;box-sizing:border-box}
/* Rostos encostados (24/10/2026): cada um um pouco sobre o seguinte, da esquerda para a direita — só a
   borda avança no próximo; nada cortado na direita. */
.fd-chats-stage .fd-ticket-details-people{gap:0;padding-right:0.1875rem;overflow:visible}
.fd-chats-stage .fd-ticket-details-people .fd-ticket-details-avatar{margin-left:-0.3125rem}
.fd-chats-stage .fd-ticket-details-people .fd-ticket-details-avatar:first-child{margin-left:0}
.fd-ticket-details-avatar.is-clicavel{cursor:pointer}
.fd-visualizacao-horarios{z-index:15000;padding:0.75rem 0.25rem 0.75rem 0.875rem;overflow:hidden}
.fd-visualizacao-horarios-cabeca{display:flex;align-items:center;justify-content:space-between;gap:0.5rem;margin:0 0.625rem 0.375rem 0}
.fd-visualizacao-horarios-titulo{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fd-visualizacao-horarios-contagem{flex:none;display:grid;place-items:center;box-sizing:border-box;min-width:1.25rem;height:1.25rem;padding:0 0.3125rem;border-radius:62.4375rem;background:#2877d5;color:#fff;font:600 0.625rem/1 Inter,'Segoe UI',sans-serif;font-variant-numeric:tabular-nums}
.fd-visualizacao-horarios-contagem[hidden]{display:none}
/* Barra fina e sem setas (24/10/2026): só o estilo webkit, que esconde os botões; o padrão
   scrollbar-width do Chrome desenha as setas no Windows. */
.fd-visualizacao-horarios-lista{list-style:none;margin:0;padding:0 0.375rem 0 0;height:6.875rem;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(98,118,150,.28) transparent}
@supports selector(::-webkit-scrollbar){.fd-visualizacao-horarios-lista{scrollbar-width:auto;scrollbar-color:auto}}
.fd-visualizacao-horarios-lista::-webkit-scrollbar{width:2px}
.fd-visualizacao-horarios-lista::-webkit-scrollbar-button{display:none;width:0;height:0}
.fd-visualizacao-horarios-lista::-webkit-scrollbar-track{background:transparent}
.fd-visualizacao-horarios-lista::-webkit-scrollbar-thumb{border-radius:3px;background:rgba(98,118,150,.28)}
.fd-visualizacao-horarios-lista>li{height:1.375rem;line-height:1.375rem;white-space:nowrap;font-variant-numeric:tabular-nums}
.fd-visualizacao-horarios-lista>li.is-aviso{color:#64748b}
.fd-app-dark .fd-visualizacao-horarios-lista{scrollbar-color:rgba(220,228,240,.2) transparent}
.fd-app-dark .fd-visualizacao-horarios-lista::-webkit-scrollbar-thumb{background:rgba(220,228,240,.2)}
/* Histórico: a linha do funil termina na margem direita do horário da etiqueta de baixo (24/10/2026). */
.fd-contact-history .fd-kanban-preview{padding-right:0.625rem;box-sizing:border-box}
/* Aviso de mensagens novas no mesmo desenho: pílula de vidro, seta num círculo azul e a contagem. */
.fd-chats-stage .fd-chat-new-messages{display:inline-flex;align-items:center;gap:0.375rem;height:1.75rem;padding:0 0.75rem 0 0.25rem;border-radius:62.4375rem;border:1px solid rgba(120,130,200,.2);background:linear-gradient(170deg,rgba(255,255,255,.96),rgba(240,242,255,.92));backdrop-filter:blur(0.625rem);-webkit-backdrop-filter:blur(0.625rem);box-shadow:0 0.5rem 1.25rem -0.625rem rgba(40,56,120,.6);color:#3b4a66;font:600 0.6875rem/1 Inter,'Segoe UI',sans-serif;font-variant-numeric:tabular-nums;transition:transform .16s ease,box-shadow .16s ease}
.fd-chats-stage .fd-chat-new-messages:hover{transform:translateY(-1px);box-shadow:0 0.625rem 1.5rem -0.625rem rgba(40,56,120,.7)}
.fd-chats-stage .fd-chat-new-messages:focus-visible{outline:0.125rem solid #2877d5;outline-offset:0.125rem}
.fd-chats-stage .fd-chat-new-messages[hidden]{display:none}
.fd-chat-new-messages-seta{display:grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:50%;background:#2877d5;color:#fff}
.fd-app-dark .fd-chats-stage .fd-chat-new-messages{border-color:rgba(255,255,255,.1);background:rgba(30,35,44,.92);color:#cbd5e1}
@media(prefers-reduced-motion:reduce){.fd-chats-stage .fd-chat-new-messages{transition:none}}
/* Skeleton dos Detalhes (24/10/2026): Solicitantes, Analistas e Visualizado por em círculo, do tamanho
   do rosto; os demais com a largura máxima do que cada campo mostra — 25 caracteres na
   classificação, xx:xx:xx nos tempos, o número do chamado e a data com hora. */
.is-details-skeleton .fd-ticket-details-row>.fd-ticket-details-people{box-sizing:border-box;width:1.5rem;min-width:1.5rem;max-width:1.5rem;height:1.5rem;padding:0;justify-self:end}
.is-details-skeleton .fd-ticket-details-row>.fd-ticket-details-people::after{border-radius:50%}
.is-details-skeleton .fd-ticket-details-row>span:not(.fd-ticket-details-people){box-sizing:border-box;height:1.125rem;min-height:0}
.is-details-skeleton .fd-ticket-details-row:nth-child(1)>span{width:4.5rem}
.is-details-skeleton .fd-ticket-details-row:nth-child(2)>span{width:6.5rem}
.is-details-skeleton .fd-ticket-details-row>span.fd-kanban-tag{width:9.5rem;max-width:100%;min-width:0;padding:0}
.is-details-skeleton .fd-ticket-details-row:nth-child(n+10)>span.fd-kanban-tag{width:3.75rem}
.is-details-skeleton .fd-ticket-details-row>.fd-kanban-tag::after{border-radius:inherit}
/* Ticket invalidado: barra de prazo cinza, vazia e parada (24/10/2026). */
.fd-kanban-sla[data-faixa=invalidado]{background:rgba(120,128,140,.32)}
.fd-kanban-sla[data-faixa=invalidado]::after{transform:scaleX(0)}
.fd-app-dark .fd-kanban-sla[data-faixa=invalidado]{background:rgba(200,206,216,.22)}
/* Busca dos cards de atendimento e de detalhes (24/10/2026): campo do Uiverse (WhiteNervosa,
   bad-mole-33, MIT) 1:1 — canto de cima arredondado, sombra, linha de baixo que acende do centro no
   foco e placeholder que some —, com o azul da v2 no lugar do verde e as cores de cada tema. */
.fd-chats-stage .fd-cliente-search-group{--fd-busca-acento:#2877d5;--fd-busca-fundo:#eef2fa;--fd-busca-fundo-foco:#e3eaf8;--fd-busca-texto:#26282d;--fd-busca-placeholder:rgba(38,40,45,.55);--fd-busca-linha:rgba(0,0,0,.42);position:relative;line-height:normal}
.fd-app-dark .fd-chats-stage .fd-cliente-search-group{--fd-busca-acento:#5b9dff;--fd-busca-fundo:#252525;--fd-busca-fundo-foco:#353535;--fd-busca-texto:#e8e8e8;--fd-busca-placeholder:rgba(255,255,255,.582);--fd-busca-linha:rgba(255,255,255,.42)}
.fd-chats-stage .fd-cliente-search-group::before,.fd-chats-stage .fd-cliente-search-group::after{content:"";position:absolute;left:0;right:0;bottom:-1px;z-index:4;width:100%;pointer-events:none}
.fd-chats-stage .fd-cliente-search-group::before{border-bottom:1px solid var(--fd-busca-linha);transition:border-bottom-color 200ms cubic-bezier(.4,0,.2,1) 0ms}
.fd-chats-stage .fd-cliente-search-group::after{border-bottom:2px solid var(--fd-busca-acento);transform:scaleX(0);transition:transform 250ms cubic-bezier(0,0,.2,1) 0ms;will-change:transform}
.fd-chats-stage .fd-cliente-search-group:focus-within::before{border-bottom:1px solid var(--fd-busca-acento);transform:scaleX(1)}
.fd-chats-stage .fd-cliente-search-group:focus-within::after{border-bottom:2px solid var(--fd-busca-acento);transform:scaleX(1)}
.fd-chats-stage .fd-cliente-search-icon{display:none}
.fd-chats-stage .fd-cliente-search-input{box-sizing:border-box;width:100%;height:100%;max-height:36px;padding:12px;border:none;border-radius:5px 5px 0 0;outline:none;background-color:var(--fd-busca-fundo);box-shadow:0 2px 5px rgb(35 35 35 / 30%);color:var(--fd-busca-texto);font:500 14px/1 Inter,'Segoe UI',sans-serif;transform:none;transition-property:background-color;transition-duration:200ms;transition-timing-function:cubic-bezier(.25,.8,.25,1)}
.fd-chats-stage .fd-cliente-search-input:hover,.fd-chats-stage .fd-cliente-search-input:active,.fd-chats-stage .fd-cliente-search-input:focus{outline:none;transform:none;box-shadow:0 2px 5px rgb(35 35 35 / 30%)}
.fd-chats-stage .fd-cliente-search-group:focus-within .fd-cliente-search-input{background-color:var(--fd-busca-fundo-foco)}
.fd-chats-stage .fd-cliente-search-input::placeholder{opacity:1;user-select:none;color:var(--fd-busca-placeholder);transition:opacity 250ms cubic-bezier(0,0,.2,1) 0ms}
.fd-chats-stage .fd-cliente-search-group:focus-within .fd-cliente-search-input::placeholder{opacity:0}
/* Switch dos cards de atendimento e de detalhes (24/10/2026): só o movimento do Uiverse chase2k25
   (glass-radio-group, MIT) — o marcador passa do ponto e volta, com a curva elástica —, mantendo o
   desenho atual do switch. */
.fd-chats-stage .fd-cliente-switch{--_switch-easing:cubic-bezier(.37,1.95,.66,.56)}
.fd-chats-stage .fd-cliente-switch::before{transition:transform .5s cubic-bezier(.37,1.95,.66,.56),background .4s ease-in-out,box-shadow .4s ease-in-out!important}
.fd-chats-stage .fd-cliente-switch>button{transition:color .3s ease-in-out,opacity .3s ease,background .3s ease}
@media(prefers-reduced-motion:reduce){.fd-chats-stage .fd-cliente-switch::before{transition:none!important}}
/* Busca sem relevo (24/10/2026): só um preenchimento um pouco mais claro que o card, para dar
   profundidade; a linha de baixo continua igual. */
.fd-chats-stage .fd-cliente-search-group{--fd-busca-fundo:rgba(255,255,255,.55);--fd-busca-fundo-foco:rgba(255,255,255,.75)}
.fd-app-dark .fd-chats-stage .fd-cliente-search-group{--fd-busca-fundo:rgba(255,255,255,.05);--fd-busca-fundo-foco:rgba(255,255,255,.08)}
.fd-chats-stage .fd-cliente-search-input,.fd-chats-stage .fd-cliente-search-input:hover,.fd-chats-stage .fd-cliente-search-input:active,.fd-chats-stage .fd-cliente-search-input:focus{box-shadow:none}
/* Busca na altura do switch e switch no formato da busca (24/10/2026): cantos de cima de 5px e base
   reta, como o campo da referência; só a forma muda. */
.fd-chats-stage .fd-cliente-search-input{height:100%;max-height:none}
.fd-chats-stage .fd-cliente-switch{--_switch-radius:5px 5px 0 0;--_slider-radius:4px 4px 0 0}
/* Modal de cadastro (24/10/2026): 575px (30% mais largo), altura pelo conteúdo — sem barra de rolagem —,
   campos só leitura até o Editar; rodapé com Editar do tamanho do X, ou Cancelar (vermelho) e Salvar
   (verde) na edição. */
.fd-contato-cadastro{height:auto;max-height:calc(100vh - 1.5rem);overflow-y:auto;scrollbar-width:none}
.fd-contato-cadastro::-webkit-scrollbar{display:none}
.fd-contato-cadastro .fd-cadastro-x{display:grid;place-items:center;width:1.75rem;height:1.75rem;padding:0;border-radius:0.5rem;line-height:1}
.fd-contato-cadastro .fd-cadastro-x:hover{background:rgba(98,158,233,.14)}
.fd-contato-cadastro-form.is-leitura :is(input,textarea){border-color:transparent;background:transparent;cursor:default}
.fd-contato-cadastro-form.is-leitura textarea{resize:none}
.fd-contato-cadastro footer.fd-cadastro-rodape{display:flex;justify-content:flex-end;align-items:center;gap:0.5rem;margin-top:0.75rem}
.fd-contato-cadastro footer.fd-cadastro-rodape button[hidden]{display:none}
.fd-contato-cadastro footer .fd-cadastro-editar{display:grid;place-items:center;width:1.75rem;height:1.75rem;padding:0;border:1px solid rgba(98,158,233,.35);border-radius:0.5rem;background:#fff;color:#334155}
.fd-contato-cadastro footer .fd-cadastro-editar:hover{border-color:#1f55c8;color:#1f55c8}
.fd-contato-cadastro footer .fd-cadastro-cancelar{border-color:#c0262f;background:#c0262f;color:#fff}
.fd-contato-cadastro footer .fd-cadastro-salvar{border-color:#15803d;background:#16a34a;color:#fff}
.fd-contato-cadastro footer .fd-cadastro-salvar:disabled{opacity:.6;cursor:progress}
.fd-app-dark .fd-contato-cadastro footer .fd-cadastro-editar{background:#1c2433;border-color:#ffffff24;color:#e2e8f0}
.fd-contato-contratante-gatilho:disabled{cursor:default;opacity:.85}
/* Switch arredondado em cima e embaixo (24/10/2026), nos cards de atendimento e de detalhes. */
.fd-chats-stage .fd-cliente-switch{--_switch-radius:5px;--_slider-radius:4px}
/* Estrela de favoritar (24/10/2026): Uiverse SelfMadeSystem/selfish-starfish-40 (MIT), uma só, mesmo
   desenho e efeito — traço tracejado girando parado, e no clique some, volta maior e preenche em
   amarelo. No canto de cima, à direita, por dentro da figurinha; discreta, mas visível. */
.fd-estrela-favorita{--stroke:#666;--fill:#ffc73a;position:absolute;top:0.25rem;right:0.25rem;z-index:3;display:grid;place-items:center;width:1.125rem;height:1.125rem;cursor:pointer}
.fd-estrela-favorita input{appearance:unset;position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}
.fd-estrela-favorita svg{width:1.125rem;height:1.125rem;overflow:visible;fill:transparent;stroke:var(--stroke);stroke-linejoin:bevel;stroke-dasharray:12;animation:fd-estrela-idle 4s linear infinite;transition:stroke .2s,fill .5s;pointer-events:none;filter:drop-shadow(0 0 1px rgba(255,255,255,.9))}
.fd-estrela-favorita:hover svg{stroke:var(--fill)}
.fd-estrela-favorita input:checked+svg{transition:0s;animation:fd-estrela-idle 4s linear infinite,fd-estrela-yippee .75s backwards;fill:var(--fill);stroke:var(--fill);stroke-opacity:0;stroke-dasharray:0;stroke-linejoin:miter;stroke-width:8px}
.fd-estrela-favorita input:focus-visible+svg{outline:2px solid #2877d5;outline-offset:2px;border-radius:2px}
@keyframes fd-estrela-idle{from{stroke-dashoffset:24}}
@keyframes fd-estrela-yippee{0%{transform:scale(1);fill:var(--fill);fill-opacity:0;stroke-opacity:1;stroke:var(--stroke);stroke-dasharray:10;stroke-width:1px;stroke-linejoin:bevel}30%{transform:scale(0);fill:var(--fill);fill-opacity:0;stroke-opacity:1;stroke:var(--stroke);stroke-dasharray:10;stroke-width:1px;stroke-linejoin:bevel}30.1%{stroke:var(--fill);stroke-dasharray:0;stroke-linejoin:miter;stroke-width:8px}60%{transform:scale(1.2);fill:var(--fill)}}
.fd-app-dark .fd-estrela-favorita{--stroke:#9aa3b2}
.fd-app-dark .fd-estrela-favorita svg{filter:drop-shadow(0 0 1px rgba(0,0,0,.8))}
.fd-v2-message-bubble.has-sticker{position:relative}
@media(prefers-reduced-motion:reduce){.fd-estrela-favorita svg{animation:none!important}}
/* Loading da nuvem (24/10/2026): Uiverse andrew-manzyk/smart-ladybug-8 (MIT) 1:1 — nuvem de linhas
   correndo, bolhas mudando e setas girando —, com as cores de cada tema. Timeline e painel de emoji. */
.fd-nuvem-loader{--cloud-color:#4387f4;--arrows-color:#80b1ff;--sombra-setas:rgba(0,0,0,.45);--time-animation:1s;display:grid;place-items:center}
.fd-app-dark .fd-nuvem-loader{--cloud-color:#5b9dff;--arrows-color:#a9c9ff;--sombra-setas:#000}
.fd-nuvem-loader .fd-nuvem{width:100px;height:100px}
.fd-nuvem-loader .fd-nuvem rect{fill:var(--cloud-color)}
.fd-nuvem-loader .fd-nuvem .fd-nuvem-setas{transform-origin:50% 72.8938%;fill:var(--arrows-color);filter:drop-shadow(0 0 8px var(--sombra-setas));animation:fd-nuvem-rotation var(--time-animation) linear infinite}
.fd-nuvem-loader .fd-nuvem mask g g circle{animation:fd-nuvem-cloud calc(var(--time-animation) * 2) linear infinite}
.fd-nuvem-loader .fd-nuvem mask g g circle:nth-child(2){animation-delay:calc((var(--time-animation) * 2) / -3)}
.fd-nuvem-loader .fd-nuvem mask g g circle:nth-child(3){animation-delay:calc((var(--time-animation) * 2) / -1.5)}
.fd-nuvem-loader .fd-nuvem .fd-nuvem-linhas g line{stroke-width:5;transform-origin:50% 50%;rotate:-65deg;animation:fd-nuvem-lines calc(var(--time-animation) / 1.33) linear infinite}
@keyframes fd-nuvem-rotation{0%{transform:rotate(0deg)}50%{transform:rotate(180deg)}100%{transform:rotate(360deg)}}
@keyframes fd-nuvem-lines{0%{transform:translateY(-10px)}100%{transform:translateY(8px)}}
@keyframes fd-nuvem-cloud{0%{cx:20;cy:60;r:15}50%{cx:50;cy:45;r:20}100%{cx:80;cy:60;r:15}}
/* Tamanhos: timeline no tamanho da referência; no painel de emoji, menor, no centro da grade. */
.fd-nuvem-emoji{height:100%}
.fd-nuvem-emoji .fd-nuvem{width:64px;height:64px}
@media(prefers-reduced-motion:reduce){.fd-nuvem-loader *{animation-duration:3s!important}}
/* Busca arredondada embaixo como em cima (24/10/2026); a linha de baixo recolhe para dentro dos
   cantos, sem passar da curva. */
.fd-chats-stage .fd-cliente-search-input{border-radius:5px}
.fd-chats-stage .fd-cliente-search-group::before,.fd-chats-stage .fd-cliente-search-group::after{left:5px;right:5px;width:auto;bottom:0}
/* Card de cima dos Chats (switch, busca e abas) com a textura "paper fibers" (24/10/2026): cinza um
   pouco mais escuro que o card de baixo, com grão e fibras finas mais claras; no escuro, o equivalente.
   A imagem é gerada no navegador (chats-papel-fibras.js); até ela chegar, fica só a cor. */
.fd-chats-stage .fd-cliente-topbar::before{background-color:#dfe2e8;background-image:var(--fd-papel-claro,none);background-size:320px 320px;background-repeat:repeat;-webkit-backdrop-filter:none;backdrop-filter:none}
.fd-app-dark .fd-chats-stage .fd-cliente-topbar::before{background-color:#1b1d22;background-image:var(--fd-papel-escuro,none)}
/* Modal de cadastro (24/10/2026, 2): uma divisória só no topo; Salvar azul e Cancelar azul translúcido,
   no visual da página, com traço fino e leve relevo no hover. */
.fd-contato-cadastro .fd-contato-cadastro-form dl{border-top:0;padding-top:0.25rem}
.fd-contato-cadastro footer.fd-cadastro-rodape button.fd-cadastro-salvar,.fd-contato-cadastro footer.fd-cadastro-rodape button.fd-cadastro-cancelar{min-width:6rem;height:2.125rem;padding:0 1.125rem;border-radius:0.625rem;font:600 0.78125rem/1 Inter,'Segoe UI',sans-serif;letter-spacing:.01em;transition:background .18s,border-color .18s,box-shadow .18s,transform .12s}
.fd-contato-cadastro footer .fd-cadastro-salvar{border:1px solid #1d4fbf;background:linear-gradient(180deg,#3b7be8,#2563eb);color:#fff;box-shadow:0 0.375rem 0.875rem -0.5rem rgba(37,99,235,.65),inset 0 1px 0 rgba(255,255,255,.22)}
.fd-contato-cadastro footer .fd-cadastro-salvar:hover{background:linear-gradient(180deg,#4a86ee,#2a6af0);box-shadow:0 0.5rem 1.125rem -0.5rem rgba(37,99,235,.75),inset 0 1px 0 rgba(255,255,255,.25)}
.fd-contato-cadastro footer .fd-cadastro-cancelar{border:1px solid rgba(37,99,235,.28);background:rgba(37,99,235,.08);color:#1d4fbf}
.fd-contato-cadastro footer .fd-cadastro-cancelar:hover{background:rgba(37,99,235,.14);border-color:rgba(37,99,235,.4)}
.fd-contato-cadastro footer :is(.fd-cadastro-salvar,.fd-cadastro-cancelar):active{transform:translateY(1px)}
.fd-contato-cadastro footer :is(.fd-cadastro-salvar,.fd-cadastro-cancelar):focus-visible{outline:2px solid #2877d5;outline-offset:2px}
.fd-app-dark .fd-contato-cadastro footer .fd-cadastro-cancelar{border-color:rgba(142,190,250,.3);background:rgba(142,190,250,.1);color:#bcd6ff}
/* Modal "Etiqueta do contato" e editor (24/10/2026, 2): lista simples de nomes (como no editor), sem
   contorno nas bordas; no lugar da linha grossa (cor de ação inexistente para etiquetas caía no preto),
   uma divisória cinza fina que não encosta nas laterais. */
.fd-etiqueta-picker{border:0!important;outline:0}
.fd-etiqueta-picker>header:not(#fd-sem-id){position:relative;border-bottom:0!important}
.fd-etiqueta-picker>header::after{content:"";position:absolute;left:1rem;right:1rem;bottom:0;height:1px;background:rgba(100,116,139,.18)}
.fd-app-dark .fd-etiqueta-picker>header::after{background:rgba(220,228,240,.12)}
.fd-etiqueta-picker .fd-etiqueta-opcao{box-shadow:none!important}
.fd-etiqueta-picker .fd-etiqueta-lista:not(.fd-etiqueta-editor-lista) .fd-etiqueta-cor{display:none}
/* Seletor de cor da etiqueta (24/10/2026, 2): como o do sistema, no vidro da v2 — quadrado de matiz
   (horizontal) e saturação (vertical), régua de brilho, prévia e hex; abre fora do modal. */
.fd-cor-pop{position:fixed;z-index:15060;display:grid;grid-template-columns:11.25rem 2.25rem;grid-template-areas:"campo lado" "hex hex";gap:0.625rem;box-sizing:border-box;width:15.25rem;padding:0.75rem;border:1px solid rgba(120,130,200,.22);border-radius:0.875rem;background:linear-gradient(170deg,rgba(255,255,255,.97),rgba(240,242,255,.95));backdrop-filter:blur(0.75rem);-webkit-backdrop-filter:blur(0.75rem);box-shadow:0 1rem 2.25rem -1rem rgba(40,56,120,.55);animation:fd-v2-menu-in .16s cubic-bezier(.22,1,.36,1)}
.fd-cor-pop[hidden]{display:none}
.fd-cor-campo{grid-area:campo;position:relative;height:11.25rem;border-radius:0.625rem;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff),linear-gradient(to right,#f00,#ff0,#0f0,#0ff,#00f,#f0f,#f00);cursor:crosshair;outline:none;touch-action:none}
.fd-cor-campo:focus-visible{box-shadow:0 0 0 2px #2877d5}
.fd-cor-escuro{position:absolute;inset:0;border-radius:inherit;background:#000;pointer-events:none}
.fd-cor-mira{position:absolute;width:0.875rem;height:0.875rem;margin:-0.4375rem 0 0 -0.4375rem;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px rgba(0,0,0,.35),0 2px 6px rgba(0,0,0,.3);pointer-events:none}
.fd-cor-lado{grid-area:lado;display:flex;flex-direction:column;align-items:center;gap:0.5rem}
.fd-cor-previa{display:block;width:2.25rem;height:2.25rem;border-radius:0.5rem;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}
.fd-cor-brilho{--fd-cor-topo:#f00;flex:1;width:0.5rem;margin:0;writing-mode:vertical-lr;direction:rtl;appearance:none;-webkit-appearance:none;border-radius:62.4375rem;background:linear-gradient(to top,#000,var(--fd-cor-topo));cursor:pointer}
.fd-cor-brilho::-webkit-slider-thumb{-webkit-appearance:none;width:0.875rem;height:0.875rem;border:2px solid #fff;border-radius:50%;background:transparent;box-shadow:0 0 0 1px rgba(0,0,0,.35)}
.fd-cor-brilho::-moz-range-thumb{width:0.875rem;height:0.875rem;border:2px solid #fff;border-radius:50%;background:transparent}
.fd-cor-pop .fd-cor-hex{grid-area:hex}
.fd-app-dark .fd-cor-pop{border-color:rgba(255,255,255,.1);background:rgba(30,35,44,.97)}
/* Rodapé do formulário da etiqueta: Excluir à esquerda; Cancelar e Salvar à direita. */
.fd-etiqueta-form footer.fd-etiqueta-rodape{display:flex;align-items:center;justify-content:space-between;gap:0.5rem}
.fd-etiqueta-rodape-direita{display:flex;gap:0.5rem;margin-left:auto}
/* 24/10/2026: dock apagado (sem ticket ativo) fica translúcido e chapado — sem relevo, sem reação, cursor normal. */
.fd-glass-dock-item:disabled{cursor:default!important}
.fd-glass-dock-item:disabled .fd-glass-dock-face{box-shadow:none!important;filter:none!important;animation:none!important}
.fd-glass-dock-item:disabled::before{display:none}
/* Agente: ícone segue branco no hover e no clique (antes ficava azul). */
.fd-glass-dock .fd-agente-dl:is(:hover,:active,:focus,:focus-visible) .fd-agente-icon{color:#fff}
/* Paginação com a mesma cor do card de cima (abas, switch e busca). */
.fd-chats-stage .fd-kanban-pages:not(.is-idle){background-color:#dfe2e8;background-image:var(--fd-papel-claro,none);background-size:320px 320px;border-color:transparent}
.fd-app-dark .fd-chats-stage .fd-kanban-pages:not(.is-idle){background-color:#1b1d22;background-image:var(--fd-papel-escuro,none);border-color:transparent}
/* 25/10/2026: contato sem permissão — etiqueta vermelha no lugar do aviso do contratante, campo travado. */
.fd-ticket-shell .fd-draft-contratante-aviso.fd-draft-sem-permissao{background:#dc2626;color:#fff;cursor:default;pointer-events:none;box-shadow:0 0.25rem 0.75rem rgba(220,38,38,.28)}
.fd-app-dark .fd-ticket-shell .fd-draft-contratante-aviso.fd-draft-sem-permissao{background:#b91c1c;color:#fff;box-shadow:0 0.25rem 0.75rem rgba(0,0,0,.35)}
.fd-ticket-shell.is-sem-permissao>.fd-liquid-dock{opacity:.45;pointer-events:none;filter:saturate(.6)}
/* 25/10/2026: título do contratante (mensagem do celular do número conectado) — a própria letra
   em degradê azul animado, o azul da recuperada, indo e voltando. Só no FiveDesk. */
.fd-v2-contratante-titulo{display:block;margin:0 0 0.125rem;font-weight:700;font-size:0.8125rem;line-height:1.3;background:linear-gradient(90deg,#0072ff,#00c6ff,#0072ff);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:fd-contratante-degrade 3.2s ease-in-out infinite alternate}
.fd-app-dark .fd-v2-contratante-titulo{background-image:linear-gradient(90deg,#3d8bff,#5fd8ff,#3d8bff)}
@keyframes fd-contratante-degrade{from{background-position:0% 50%}to{background-position:100% 50%}}
@media (prefers-reduced-motion:reduce){.fd-v2-contratante-titulo{animation:none}}
/* 25/10/2026: bolha de transferência na cor do botão Transferir. */
.fd-v2-message-row.is-transfer .fd-v2-operational-bubble{background:#fff1e3;color:#8a4410}
.fd-app-dark .fd-v2-message-row.is-transfer .fd-v2-operational-bubble{background:rgba(255,139,41,.16);color:#ffc999}

/* Sino do chat (26/10/2026): mesma superfície da lista de etiquetas; checkbox do Call em tamanho de lista. */
.fd-notif-picker{min-width:16.5rem;max-width:19rem}
.fd-notif-picker>header{display:flex;align-items:center;gap:0.375rem}
.fd-notif-picker>header strong{flex:1}
.fd-notif-voltar{display:grid;place-items:center;width:1.625rem;height:1.625rem;padding:0;border:0;border-radius:0.5rem;background:transparent;color:inherit;cursor:pointer}
.fd-notif-voltar:hover{background:rgba(120,130,200,.16)}
.fd-notif-voltar svg{width:1rem;height:1rem}
.fd-notif-entrada{gap:0.5rem}
.fd-notif-textos{display:flex;flex-direction:column;flex:1;min-width:0;gap:0.125rem}
.fd-notif-entrada .fd-notif-textos small{color:#64748b;font-size:0.6875rem}
.fd-notif-seta{display:grid;place-items:center;flex:none;color:#94a3b8}
.fd-notif-seta svg{width:0.9375rem;height:0.9375rem}
.fd-notif-item{display:flex;align-items:center;gap:0.625rem;min-height:2.25rem;padding:0.375rem 0.6875rem;border-radius:0.6875rem;cursor:pointer;font-size:0.8125rem}
.fd-notif-item:hover{background:rgba(120,130,200,.12)}
.fd-notif-item.is-fixo{cursor:default}
.fd-notif-item.is-fixo:hover{background:transparent}
.fd-notif-item .fd-elastic-checkbox{--fd-cbx:1.25rem;flex:none;position:relative;width:var(--fd-cbx);height:var(--fd-cbx)}
.fd-notif-item.is-fixo .fd-elastic-checkbox input:disabled+.fd-elastic-box{opacity:1}
.fd-notif-nome{flex:1;min-width:0;font-weight:500}
.fd-notif-item small{flex:none;color:#64748b;font-size:0.6875rem}
.fd-notif-ouvir{display:grid;place-items:center;flex:none;width:1.75rem;height:1.75rem;padding:0;border:0;border-radius:50%;background:rgba(40,119,213,.1);color:#2877d5;cursor:pointer;transition:background-color .15s ease,transform .15s ease}
.fd-notif-ouvir:hover{background:rgba(40,119,213,.2);transform:scale(1.06)}
.fd-notif-ouvir svg{width:0.9375rem;height:0.9375rem}
.fd-notif-secao{margin:0.375rem 0.6875rem 0.25rem;font-size:0.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#64748b}
.fd-notif-divisor{margin:0.5rem 1rem;border:0;height:1px;background:rgba(100,116,139,.18)}
.fd-notif-breve{margin:0 0 0.375rem;text-align:center;font-size:0.75rem;color:#94a3b8}
.fd-app-dark .fd-notif-entrada .fd-notif-textos small,.fd-app-dark .fd-notif-item small,.fd-app-dark .fd-notif-secao{color:#94a3b8}
.fd-app-dark .fd-notif-divisor{background:rgba(220,228,240,.12)}
.fd-app-dark .fd-notif-ouvir{background:rgba(96,165,250,.16);color:#93c5fd}

/* Recorte de interações (26/10/2026): escolha em dois cartões e, na conversa, o realce da seleção com
   borda pontilhada; a barra-guia é a da seleção com a luz azul da caixa de digitação, mais grossa. */
@property --fd-recorte-giro{syntax:'<angle>';inherits:false;initial-value:0deg}
.fd-recorte-escolha{min-width:18rem;max-width:21rem}
.fd-recorte-opcoes{gap:0.5rem}
.fd-ticket-action-dropdown .fd-recorte-opcao,.fd-recorte-opcao{display:flex;flex-direction:column;align-items:stretch;gap:0.375rem;width:100%;padding:0.625rem 0.75rem;border:1px solid rgba(100,116,139,.18);border-radius:0.75rem;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}
.fd-recorte-opcao:hover,.fd-recorte-opcao:focus-visible{background:rgba(40,119,213,.07);border-color:rgba(40,119,213,.45);outline:0}
.fd-recorte-opcao>strong{font-size:0.875rem;color:#1d4ed8}
.fd-recorte-explica{margin:0;padding:0.5rem 0.625rem;border-radius:0.5rem;background:rgba(100,116,139,.08);color:#475569;font-size:0.75rem;line-height:1.45}
.fd-app-dark .fd-recorte-opcao{border-color:rgba(220,228,240,.12)}
.fd-app-dark .fd-recorte-opcao>strong{color:#93c5fd}
.fd-app-dark .fd-recorte-explica{background:rgba(220,228,240,.06);color:#cbd5e1}
.fd-v2-messages.is-recortando .fd-v2-message-row{cursor:pointer}
.fd-v2-messages.is-recortando .fd-v2-message-row.is-recorte{background:rgba(40,119,213,.09);box-shadow:0 0.375rem 1rem -0.75rem rgba(40,56,120,.7);outline:1.5px dashed rgba(40,119,213,.55);outline-offset:-1.5px}
.fd-recorte-bar{gap:0.625rem;border:2px solid transparent;background:linear-gradient(#fff,#fff) padding-box,conic-gradient(from var(--fd-recorte-giro),#2877d5,#9cc9ff,#2877d5 40%,#5aa2f0 70%,#2877d5) border-box;animation:fd-recorte-luz 3.2s linear infinite}
.fd-app-dark .fd-recorte-bar{background:linear-gradient(#1e232c,#1e232c) padding-box,conic-gradient(from var(--fd-recorte-giro),#3b82f6,#93c5fd,#3b82f6 40%,#60a5fa 70%,#3b82f6) border-box}
@keyframes fd-recorte-luz{to{--fd-recorte-giro:360deg}}
@media (prefers-reduced-motion:reduce){.fd-recorte-bar{animation:none}}
.fd-recorte-icone{display:grid;place-items:center;flex:none;width:1.875rem;height:1.875rem;border-radius:50%;background:rgba(40,119,213,.12);color:#2877d5}
.fd-recorte-icone svg{width:1rem;height:1rem}
.fd-recorte-guia{display:flex;flex-direction:column;gap:0.25rem;flex:1;min-width:0}
.fd-recorte-topo{display:flex;align-items:center;gap:0.375rem;flex-wrap:wrap}
.fd-recorte-tag{padding:0.0625rem 0.4375rem;border-radius:0.3125rem;background:rgba(40,119,213,.1);color:#1d4ed8;font-size:0.6875rem;font-weight:600}
.fd-recorte-tag.is-intervalo{background:rgba(234,179,8,.16);color:#a16207}
.fd-recorte-texto{margin:0;font-size:0.8125rem;line-height:1.35;color:#334155}
.fd-app-dark .fd-recorte-texto{color:#e2e8f0}
.fd-recorte-link{display:inline;padding:0;border:0;background:none;color:#1d4ed8;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.fd-app-dark .fd-recorte-link{color:#93c5fd}
.fd-recorte-acoes{display:flex;align-items:center;gap:0.375rem;flex:none}
.fd-recorte-refazer,.fd-recorte-confirmar{height:2rem;padding:0 0.75rem;border:0;border-radius:0.625rem;font:inherit;font-size:0.8125rem;font-weight:600;cursor:pointer}
.fd-recorte-refazer{background:transparent;color:#475569}
.fd-recorte-refazer:hover{background:rgba(15,23,42,.06)}
.fd-recorte-confirmar{background:#2877d5;color:#fff}
.fd-recorte-confirmar:hover:not(:disabled){background:#1d64bb}
.fd-recorte-confirmar:disabled{background:#c7d2e3;color:#fff;cursor:default}
.fd-app-dark .fd-recorte-refazer{color:#cbd5e1}
.fd-app-dark .fd-recorte-confirmar:disabled{background:#3a4352;color:#8b95a7}

/* Editor de etiqueta (26/10/2026): prévia ao vivo, cor do fundo e cor da fonte em linhas próprias. */
.fd-etiqueta-previa{display:inline-flex;align-items:center;align-self:flex-start;max-width:100%;height:1.375rem;padding:0 0.5rem;border-radius:0.3125rem;font:600 0.75rem/1 Inter,'Segoe UI',sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-shadow:0 1px 2px rgba(15,23,42,.12)}
.fd-etiqueta-form-cor{display:flex;align-items:center;gap:0.625rem;min-height:2rem}
.fd-etiqueta-form-cor>span:first-child{flex:1;font-size:0.8125rem;font-weight:500}
.fd-etiqueta-auto{display:inline-flex;align-items:center;gap:0.3125rem;font-size:0.75rem;color:#475569;cursor:pointer;user-select:none}
.fd-etiqueta-auto input{width:0.9375rem;height:0.9375rem;margin:0;accent-color:#2877d5;cursor:pointer}
.fd-cor.is-auto .fd-cor-botao{opacity:.4;cursor:default}
.fd-etiqueta-ajuda{flex-basis:100%;margin:0.125rem 0 0;font-size:0.6875rem;line-height:1.35;color:#64748b}
.fd-app-dark .fd-etiqueta-auto{color:#cbd5e1}
.fd-app-dark .fd-etiqueta-ajuda{color:#94a3b8}
.fd-etiqueta-sim-nao{flex-wrap:wrap;row-gap:0.25rem}

/* O áudio desenha o fundo no player; a caixa dos efeitos usa a mesma curva, inclusive com transcrição. */
.fd-v2-messages .fd-v2-message-row:is(.is-analyst,.is-client):not(.is-note):not(.is-system):not(.is-urgent)>.fd-v2-message-content>.fd-v2-message-bubble.has-audio{border-radius:var(--fd-bolha-raio,1.375rem)}
/* Traço interno acompanha o raio real sem aumentar a silhueta ou recortar reações e ações. */
.fd-chats-stage .fd-v2-message-bubble.is-menu-open:not(#fd-sem-id){outline:1px solid rgba(40,119,213,.35);outline-offset:-1px}
.fd-v2-messages .fd-v2-message-row:not(.is-system)>.fd-v2-message-content>.fd-v2-message-bubble:not(.has-sticker){isolation:isolate}
/* Bolhas centrais do tamanho do conteúdo (26/10/2026), no lugar da largura fixa de 21rem: abraçam o texto,
   com padding confortável, e só quebram linha no teto de 21rem. */
.fd-chats-stage .fd-v2-messages .fd-v2-message-row:is(.is-note,.is-system,.is-urgent)>.fd-v2-message-content{width:auto;max-width:min(21rem,92%)}
.fd-chats-stage .fd-v2-messages .fd-v2-message-row:is(.is-note,.is-system,.is-urgent)>.fd-v2-message-content>.fd-v2-message-bubble{width:fit-content;max-width:100%;margin-inline:auto;padding:0.5rem 1rem}
/* Buscas dos cards 1 e 2 (26/10/2026): sem a linha fina fixa. Ela cobria a barra azul — no foco ficava
   azul na largura toda e o efeito virava só troca de cor. Fica a barra que nasce curta no centro e expande. */
.fd-chats-stage .fd-cliente-search-group::before{display:none}
.fd-chats-stage .fd-cliente-search-group::after{transform-origin:50% 50%;transform:scaleX(0);transition:transform 420ms cubic-bezier(.3,.6,.2,1)}
.fd-chats-stage .fd-cliente-search-group:focus-within::after{transform:scaleX(1)}
/* Sons (26/10/2026): ouvir é só o ícone de áudio, sem círculo; ao pressionar ele se deforma de leve e
   volta ao soltar. Título à esquerda, ouvir e checkbox à direita. */
.fd-notif-item .fd-notif-ouvir{width:1.75rem;height:1.75rem;margin-left:auto;border-radius:0.5rem;background:transparent;color:#2f5fb3;transition:transform .18s cubic-bezier(.34,1.56,.64,1),color .15s ease}
.fd-notif-item .fd-notif-ouvir:hover{background:transparent;color:#1d4ed8;transform:none}
.fd-notif-item .fd-notif-ouvir:active{transform:scale(.86,.8) skewX(-8deg);transition-duration:.08s}
.fd-notif-item .fd-notif-ouvir svg{width:1.25rem;height:1.25rem}
.fd-notif-item .fd-notif-ouvir+.fd-elastic-checkbox{margin-left:0.375rem}
.fd-notif-item small{margin-left:auto}
.fd-notif-item small+.fd-elastic-checkbox{margin-left:0.5rem}
.fd-notif-item>.fd-notif-nome+.fd-elastic-checkbox{margin-left:auto}
.fd-app-dark .fd-notif-item .fd-notif-ouvir{background:transparent;color:#93c5fd}
.fd-ticket-action-dropdown .fd-notif-item .fd-notif-ouvir{border:0!important;background:transparent!important;box-shadow:none!important;padding:0}

/* Barra de prazo do cartão (26/10/2026): 5px, centralizada entre as etiquetas e a borda de baixo (o vão de
   cima — 0,25rem da linha + 0,375rem — iguala o padding de 0,625rem embaixo). Degradê na própria cor, brilho
   fino em cima, halo suave e um reflexo lento passando; cresce pela largura para as pontas não achatarem. */
.fd-kanban-item:has(.fd-kanban-tag-ticket):has(.fd-kanban-sla){align-content:stretch;grid-template-rows:auto auto auto 1fr}
.fd-kanban-item:has(.fd-kanban-tag-ticket)>.fd-kanban-sla{align-self:center;margin:0;transform:translateY(calc((0.625rem - 0.25rem) / 2))}
.fd-kanban-sla{height:5px;margin-top:0.375rem;overflow:visible;background:rgba(38,40,45,.08);box-shadow:inset 0 1px 1.5px rgba(15,23,42,.12)}
.fd-kanban-sla::after{
    inset:0 auto 0 0;width:calc(var(--fd-sla-progresso,0) * 100%);transform:none;
    background:
        linear-gradient(100deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%) -150% 0/60% 100% no-repeat,
        linear-gradient(90deg,color-mix(in oklab,var(--fd-sla-cor,#22c55e) 62%,#fff),var(--fd-sla-cor,#22c55e));
    box-shadow:0 0 0.4375rem color-mix(in oklab,var(--fd-sla-cor,#22c55e) 45%,transparent),inset 0 1px 0 rgba(255,255,255,.5);
    transition:width .6s ease,background-color .4s ease;
    animation:fd-sla-reflexo 3.6s ease-in-out infinite
}
@keyframes fd-sla-reflexo{0%,55%{background-position:-150% 0,0 0}100%{background-position:250% 0,0 0}}
.fd-kanban-sla[data-faixa=invalidado]::after{width:0;transform:none}
.fd-app-dark .fd-kanban-sla{background:rgba(255,255,255,.08);box-shadow:inset 0 1px 1.5px rgba(0,0,0,.4)}
@media(prefers-reduced-motion:reduce){.fd-kanban-sla::after{animation:none;transition:none}}

/* ===== Barra de seleção/recorte = forma do campo de digitação (26/10/2026) =====
 * Mesma caixa do campo (40px, raio 22px, mesmo fundo, largura toda): ligar a função não deforma a
 * tela. Conteúdo numa linha só; o texto-guia do recorte corta com reticências e mostra tudo no title. */
.fd-ticket-shell>.fd-v2-select-bar:not(#fd-sem-id){left:0;right:0;bottom:0;box-sizing:border-box;height:40px;min-height:40px;padding:0 6px 0 8px;gap:0.5rem;flex-wrap:nowrap;white-space:nowrap;border:0;border-radius:22px;background:rgba(255,255,255,.74);box-shadow:none}
.fd-app-dark .fd-ticket-shell>.fd-v2-select-bar:not(#fd-sem-id){background:rgba(255,255,255,.08)}
.fd-ticket-shell>.fd-v2-select-bar:not(#fd-sem-id) :is(.fd-v2-select-close,.fd-v2-select-forward){width:1.875rem;height:1.875rem;flex:none}
.fd-ticket-shell>.fd-recorte-bar:not(#fd-sem-id){border:1px solid transparent;background:linear-gradient(#fff,#fff) padding-box,conic-gradient(from var(--fd-recorte-giro),#2877d5,#9cc9ff,#2877d5 40%,#5aa2f0 70%,#2877d5) border-box}
.fd-app-dark .fd-ticket-shell>.fd-recorte-bar:not(#fd-sem-id){background:linear-gradient(#2d2d2d,#2d2d2d) padding-box,conic-gradient(from var(--fd-recorte-giro),#3b82f6,#93c5fd,#3b82f6 40%,#60a5fa 70%,#3b82f6) border-box}
.fd-ticket-shell>.fd-recorte-bar .fd-recorte-icone{width:1.5rem;height:1.5rem}
.fd-ticket-shell>.fd-recorte-bar .fd-recorte-guia{flex-direction:row;align-items:center;gap:0.5rem;overflow:hidden}
.fd-ticket-shell>.fd-recorte-bar .fd-recorte-topo{flex-wrap:nowrap;flex:none}
.fd-ticket-shell>.fd-recorte-bar .fd-recorte-texto{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:0.78125rem}
.fd-ticket-shell>.fd-recorte-bar :is(.fd-recorte-refazer,.fd-recorte-confirmar){height:1.875rem}
/* Modais de tratativa carregando (27/10/2026): nada de "Carregando opções…" em texto. Rótulos,
   comentário e pesquisa aparecem na hora; só as listas que vêm do servidor viram skeleton. */
.fd-ticket-action-dropdown.is-carregando .enc-select-trigger:not(#fd-sem-id){position:relative;overflow:hidden;color:transparent!important;pointer-events:none;
  background:color-mix(in srgb,var(--fd-acao,#94a3b8) 12%,#eef1f6)!important;border-color:transparent!important}
.fd-ticket-action-dropdown.is-carregando .enc-select-trigger :is(.enc-select-trigger-text,.enc-select-chevron){visibility:hidden}
.fd-ticket-action-dropdown.is-carregando .enc-select-trigger::after{content:"";position:absolute;inset:0;
  background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.65) 50%,transparent 80%);transform:translateX(-100%);animation:fd-skeleton-brilho 1.1s ease-in-out infinite}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown.is-carregando .enc-select-trigger:not(#fd-sem-id){background:color-mix(in srgb,var(--fd-acao,#94a3b8) 14%,#232a36)!important}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown.is-carregando .enc-select-trigger::after{background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.08) 50%,transparent 80%)}
@keyframes fd-skeleton-brilho{to{transform:translateX(100%)}}
@media (prefers-reduced-motion:reduce){.fd-ticket-action-dropdown.is-carregando .enc-select-trigger::after{animation:none}}
/* Linhas em skeleton das listas dos modais (etiquetas, editor) e envio/salvamento só por ícone. */
.fd-skeleton-linha{display:block;height:2.125rem;margin:0.125rem 0;border-radius:0.6875rem;position:relative;overflow:hidden;
  background:color-mix(in srgb,var(--fd-acao,#94a3b8) 12%,rgba(148,163,184,.14))}
.fd-skeleton-linha:nth-child(2n){width:82%}
.fd-skeleton-linha::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.55) 50%,transparent 80%);transform:translateX(-100%);animation:fd-skeleton-brilho 1.1s ease-in-out infinite}
:is(.fd-app-dark,.fd-portal-dark) .fd-skeleton-linha::after{background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.07) 50%,transparent 80%)}
:is(.is-enviando,.is-salvando){position:relative;color:transparent!important}
:is(.is-enviando,.is-salvando)::after{content:"";position:absolute;left:50%;top:50%;width:1rem;height:1rem;margin:-0.5rem 0 0 -0.5rem;border-radius:50%;
  border:2px solid rgba(255,255,255,.45);border-top-color:#fff;animation:fd-giro-envio .7s linear infinite}
.fd-etiqueta-editor :is(.is-salvando)::after,.fd-etiqueta-picker .is-salvando::after{border-color:color-mix(in srgb,currentColor 30%,transparent);border-top-color:#2877d5}
@keyframes fd-giro-envio{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.fd-skeleton-linha::after,:is(.is-enviando,.is-salvando)::after{animation-duration:2s}}
/* Envios do encerramento (27/10/2026): pesquisa e mensagem de encerramento em chaves no mesmo
   lugar, no desenho do modal; prévia em balão de bolha e "Personalizar" com o número protegido. */
.fd-encerrar-opcoes:not(#fd-sem-id){display:grid;gap:0.25rem;padding:0.5rem 0.625rem;border-radius:0.75rem;
  background:color-mix(in srgb,var(--fd-acao,#3b6fe0) 8%,rgba(255,255,255,.55));border:1px solid color-mix(in srgb,var(--fd-acao,#3b6fe0) 18%,transparent)}
.fd-encerrar-chave{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;min-height:2rem;font-size:0.78125rem;font-weight:500;cursor:pointer}
.fd-encerrar-chave input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.fd-encerrar-trilho{position:relative;flex:none;width:2rem;height:1.125rem;border-radius:62.4375rem;background:#cbd5e1;transition:background .18s}
.fd-encerrar-trilho::after{content:"";position:absolute;top:0.125rem;left:0.125rem;width:0.875rem;height:0.875rem;border-radius:50%;background:#fff;box-shadow:0 1px 0.125rem rgba(15,23,42,.25);transition:transform .18s}
.fd-encerrar-chave input:checked+.fd-encerrar-trilho{background:linear-gradient(135deg,color-mix(in srgb,var(--fd-acao,#3b6fe0) 70%,#fff),var(--fd-acao-forte,#1f55c8))}
.fd-encerrar-chave input:checked+.fd-encerrar-trilho::after{transform:translateX(0.875rem)}
.fd-encerrar-chave input:focus-visible+.fd-encerrar-trilho{outline:2px solid var(--fd-acao,#3b6fe0);outline-offset:2px}
.fd-encerrar-chave input:disabled+.fd-encerrar-trilho{opacity:.6}
.fd-ticket-action-dropdown .fd-encerrar-ver-previa:not(#fd-sem-id){justify-self:start;height:auto;padding:0.125rem 0;border:0;background:none;box-shadow:none;color:var(--fd-acao-forte,#1f55c8);font-size:0.75rem;font-weight:600;text-decoration:underline;text-underline-offset:2px}
.fd-encerrar-previa{display:grid;gap:0.5rem;margin-top:0.25rem;padding:0.625rem 0.75rem;border-radius:1rem 1rem 0.375rem 1rem;background:rgba(255,255,255,.85);box-shadow:0 0.375rem 1rem -0.5rem rgba(30,41,59,.35)}
.fd-encerrar-previa[hidden]{display:none}
.fd-encerrar-previa-texto{font-size:0.8125rem;line-height:1.45;white-space:normal;overflow-wrap:anywhere;outline:none;border-radius:0.5rem}
.fd-encerrar-previa-texto.is-editando{padding:0.375rem 0.5rem;background:#fff;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fd-acao,#3b6fe0) 45%,transparent)}
.fd-encerrar-tk{color:#2563eb;font-weight:700;user-select:none}
.fd-encerrar-previa-acoes{display:flex;justify-content:flex-end;gap:0.375rem}
.fd-ticket-action-dropdown .fd-encerrar-previa-acoes button:not(#fd-sem-id){height:1.75rem;padding:0 0.75rem;font-size:0.75rem}
:is(.fd-app-dark,.fd-portal-dark) .fd-encerrar-opcoes:not(#fd-sem-id){background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1)}
:is(.fd-app-dark,.fd-portal-dark) .fd-encerrar-trilho{background:#475569}
:is(.fd-app-dark,.fd-portal-dark) .fd-encerrar-previa{background:rgba(30,41,59,.9)}
:is(.fd-app-dark,.fd-portal-dark) .fd-encerrar-previa-texto.is-editando{background:#0f172a}
:is(.fd-app-dark,.fd-portal-dark) .fd-encerrar-tk{color:#7fb2ff}
:is(.fd-app-dark,.fd-portal-dark) .fd-ticket-action-dropdown .fd-encerrar-ver-previa:not(#fd-sem-id){color:#9ec5ff}
/* Ticket anterior dentro do atendimento (27/10/2026). Botão no formato do "Likes": olho | número,
   no centro do cabeçalho, acima da linha; número no azul do título do contratante. */
.fd-ticket-shell .fd-group-chat-head{position:relative}
.fd-tk-anterior-pill{position:absolute;left:50%;top:0.5rem;transform:translateX(-50%);z-index:5;transition:opacity .28s ease,transform .28s cubic-bezier(.22,1,.36,1);display:inline-flex;align-items:stretch;height:1.75rem;border-radius:62.4375rem;
  background:rgba(255,255,255,.92);box-shadow:0 1px 0.25rem rgba(15,23,42,.12),inset 0 0 0 1px rgba(148,163,184,.28);overflow:hidden;font:600 0.75rem/1 Inter,'Segoe UI',sans-serif}
.fd-tk-anterior-pill[hidden]{display:none}
.fd-ticket-shell .fd-tk-anterior-pill:not(#fd-sem-id){padding:0;border:0;cursor:pointer;color:inherit;transition:opacity .18s,box-shadow .18s}
.fd-ticket-shell .fd-tk-anterior-pill:disabled:not(#fd-sem-id){opacity:.45;cursor:default;filter:saturate(.6)}
.fd-ticket-shell .fd-tk-anterior-pill:not(:disabled):hover{box-shadow:0 0.25rem 0.75rem rgba(0,114,255,.18),inset 0 0 0 1px rgba(0,114,255,.35)}
.fd-ticket-shell .fd-tk-anterior-pill:focus-visible{outline:2px solid #2877d5;outline-offset:2px}
.fd-tk-anterior-olho{display:grid;place-items:center;width:2.25rem;color:#475569;transition:color .15s}
.fd-tk-anterior-olho svg{width:1rem;height:1rem}
.fd-tk-anterior-pill:not(:disabled):hover .fd-tk-anterior-olho{color:#0072ff}
.fd-tk-anterior-numero{display:flex;align-items:center;padding:0 0.75rem;border-left:1px solid rgba(148,163,184,.35);
  background:linear-gradient(90deg,#0072ff,#00c6ff,#0072ff);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.fd-tk-anterior-pill.is-aberto .fd-tk-anterior-olho{color:#0072ff}
:is(.fd-app-dark,.fd-portal-dark) .fd-tk-anterior-pill{background:rgba(30,41,59,.92);box-shadow:0 1px 0.25rem rgba(0,0,0,.4),inset 0 0 0 1px rgba(255,255,255,.12)}
:is(.fd-app-dark,.fd-portal-dark) .fd-tk-anterior-olho{color:#cbd5e1}
:is(.fd-app-dark,.fd-portal-dark) .fd-tk-anterior-numero{border-left-color:rgba(255,255,255,.14)}
/* Recorte do ticket anterior: pontilhado a 5px das laterais, pontilhado separando do atual. */
.fd-chats-stage .fd-tk-anterior{position:relative;display:flex;flex-direction:column;gap:inherit;margin:0.25rem 5px 0.75rem;padding:0.5rem 0.25rem 0.75rem;
  border:1.5px dashed rgba(100,116,139,.45);border-radius:1rem;background:rgba(255,255,255,.18)}
.fd-chats-stage .fd-tk-anterior+.fd-tk-anterior{margin-top:0}
.fd-tk-anterior-cabecalho{align-self:center;margin-bottom:0.25rem;padding:0.25rem 0.75rem;border-radius:62.4375rem;background:rgba(255,255,255,.85);font:600 0.6875rem/1.2 Inter,'Segoe UI',sans-serif;color:#475569}
.fd-tk-anterior-corpo{display:flex;flex-direction:column;gap:inherit}
.fd-tk-anterior[aria-busy=true] .fd-tk-anterior-cabecalho{background:linear-gradient(100deg,rgba(255,255,255,.85) 30%,rgba(219,234,254,.95) 50%,rgba(255,255,255,.85) 70%);background-size:200% 100%;animation:fd-skeleton-brilho 1.1s linear infinite}
/* Única mudança nas bolhas dentro do recorte: borda pontilhada. */
.fd-chats-stage .fd-tk-anterior .fd-v2-message-bubble:not(#fd-sem-id){outline:1.5px dashed rgba(100,116,139,.55);outline-offset:-1.5px}
:is(.fd-app-dark,.fd-portal-dark) .fd-chats-stage .fd-tk-anterior{border-color:rgba(203,213,225,.3);background:rgba(255,255,255,.03)}
:is(.fd-app-dark,.fd-portal-dark) .fd-tk-anterior-cabecalho{background:rgba(30,41,59,.85);color:#cbd5e1}
:is(.fd-app-dark,.fd-portal-dark) .fd-chats-stage .fd-tk-anterior .fd-v2-message-bubble:not(#fd-sem-id){outline-color:rgba(203,213,225,.4)}

.fd-chats-stage .fd-tk-anterior .fd-v2-message-bubble.has-audio:not(#fd-sem-id){outline:0}
.fd-chats-stage .fd-tk-anterior .fd-v2-message-bubble.has-audio>.fd-v2-audio{outline:1.5px dashed rgba(100,116,139,.55);outline-offset:-1.5px}
/* No topo da conversa o botão do ticket anterior ocupa o lugar da etiqueta fixa do dia (27/10/2026). */
/* Oculto vence o "apagado" (:disabled tinha especificidade maior e deixava o botão a 45% atrás do
   "Hoje"). Troca exclusiva, como Hoje/Ontem: um some por completo quando o outro aparece. */
.fd-ticket-shell .fd-tk-anterior-pill.is-oculta:not(#fd-sem-id){opacity:0!important;visibility:hidden;transform:translateX(-50%) translateY(-0.375rem) scale(.96);pointer-events:none;transition:opacity .28s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility 0s linear .28s}
.fd-ticket-shell.fd-tk-anterior-ativo .fd-v2-dia.is-fixa:not(#fd-sem-id){opacity:0!important;visibility:hidden;pointer-events:none;transition:opacity .28s ease,visibility 0s linear .28s}
@media(prefers-reduced-motion:reduce){.fd-tk-anterior-pill{transition:opacity .2s linear}.fd-tk-anterior-pill.is-oculta{transform:translateX(-50%)}}
.fd-chats-stage .fd-v2-dia-linha.is-sob-tk-anterior:not(#fd-sem-id){visibility:hidden;opacity:0;transition:opacity .2s ease,visibility 0s linear .2s}

/* Cards de atendimento do Chat: mesma dimensão externa, identificação compacta e SLA vertical. */
.fd-chats-stage .fd-chats-card-cliente .fd-kanban-item.fd-chat-ticket-layout{grid-template-columns:2.25rem minmax(0,1fr) 24px;grid-template-rows:18px 16px minmax(0,1fr) 22px;column-gap:10px;row-gap:3px;align-content:stretch;padding:10px 10px 10px 12px;overflow:hidden}
.fd-chat-ticket-layout>.fd-kanban-photo{grid-column:1;grid-row:1 / 3;align-self:start}
.fd-chat-ticket-layout>.fd-kanban-name{grid-column:2;grid-row:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0}
.fd-chat-ticket-layout>.fd-chat-ticket-contractor{grid-column:2;grid-row:2;min-width:0;margin:0;font-size:11px;line-height:16px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.fd-chat-ticket-analyst{position:relative;grid-column:3;grid-row:1 / 3;align-self:start;justify-self:end;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;overflow:hidden;background:#629ee930;color:#629ee9;font:700 8px/1 Inter,'Segoe UI',sans-serif}
.fd-chat-ticket-analyst[hidden]{display:none}
.fd-chat-ticket-analyst img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fd-chats-stage .fd-chats-card-cliente .fd-chat-ticket-layout>.fd-kanban-preview{grid-column:1 / -1;grid-row:3;margin:0 -5px 0 0;align-self:stretch;display:block;height:auto;min-height:0;overflow:hidden;white-space:normal;overflow-wrap:anywhere;line-height:1.3}
.fd-chat-ticket-layout>.fd-kanban-preview>svg{display:inline-block;vertical-align:-2px;width:14px;height:14px;margin-right:4px}
.fd-chat-ticket-layout>.fd-kanban-preview>span{display:inline;white-space:normal;line-height:inherit}
.fd-chat-ticket-layout>.fd-kanban-ticket{display:none}
.fd-chats-stage .fd-chats-card-cliente .fd-chat-ticket-layout>.fd-kanban-tags{grid-column:1 / -1;grid-row:4;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:6px;margin:0;height:22px;align-self:end}
.fd-chats-stage .fd-chats-card-cliente .fd-chat-ticket-layout .fd-kanban-tag-ticket{grid-column:1;grid-row:1;display:flex;align-items:center;justify-content:center;gap:3px;height:22px;padding:0 4px;border:0;box-shadow:none;min-width:0;overflow:hidden;white-space:nowrap;font:500 11px/1 Inter,'Segoe UI',sans-serif;background:#88888814;border-radius:5px}
.fd-chat-ticket-layout .fd-kanban-tag-ticket>*{width:auto;min-width:0;flex:0 1 auto;font-size:inherit;line-height:inherit}
.fd-chat-ticket-layout .fd-kanban-tag-numero{color:#629ee9;font-weight:700}
.fd-chat-ticket-timer{grid-column:2;grid-row:1;display:flex;align-items:center;gap:4px;padding:0 5px;height:22px;box-sizing:border-box;border:0;border-radius:5px;background:#88888814;font:500 10px/1 Inter,'Segoe UI',sans-serif;min-width:0;white-space:nowrap}
.fd-chat-ticket-timer svg{width:16px;height:16px;flex:none;color:#3e5187}
.fd-app-dark .fd-chat-ticket-timer svg{color:#9db9f0}
.fd-chat-ticket-timer>span{flex:1;min-width:0;text-align:center;overflow:hidden}
.fd-chats-stage .fd-chats-card-cliente .fd-chat-ticket-layout>.fd-kanban-sla{position:absolute;grid-column:auto;grid-row:auto;left:0;top:0;bottom:0;width:5px;height:auto;margin:0;transform:none;align-self:stretch}
.fd-chats-stage .fd-chats-card-cliente .fd-chat-ticket-layout>.fd-kanban-sla::after{inset:auto 0 0;width:100%;height:calc(var(--fd-sla-progresso,0) * 100%);background:linear-gradient(0deg,transparent 35%,#ffffff8c 50%,transparent 65%) 0 250%/100% 60% no-repeat,linear-gradient(0deg,color-mix(in oklab,var(--fd-sla-cor) 62%,#fff),var(--fd-sla-cor));transition:height .6s ease,background-color .4s ease;animation:fd-sla-reflexo-vertical 3.6s ease-in-out infinite}
.fd-chats-stage .fd-chats-card-cliente .fd-chat-ticket-layout>.fd-kanban-sla[data-faixa=invalidado]::after{height:0}
@keyframes fd-sla-reflexo-vertical{0%,55%{background-position:0 250%,0 0}100%{background-position:0 -150%,0 0}}
@media(prefers-reduced-motion:reduce){.fd-chat-ticket-layout>.fd-kanban-sla::after{animation:none!important;transition:none}}

/* Área da mensagem: 10 px após a foto, 10 px antes do ticket e entrelinha de 5 px. */
.fd-chats-stage .fd-chats-card-cliente .fd-chat-ticket-layout>.fd-kanban-preview{margin:6px -5px 7px 0;line-height:calc(1em + 5px)}

/* Horário real no topo; avatar compacto na base e identificação ampliada. */
.fd-chats-stage .fd-chats-card-cliente .fd-kanban-item.fd-chat-ticket-layout{grid-template-columns:2.25rem minmax(0,1fr) auto}
.fd-chat-ticket-layout>.fd-chat-ticket-last-time{grid-column:3;grid-row:1;align-self:center;justify-self:end;font-size:10px;line-height:18px;white-space:nowrap;opacity:.7}
.fd-chat-ticket-layout>.fd-chat-ticket-contractor{grid-column:2 / -1}
.fd-chats-stage .fd-chats-card-cliente .fd-chat-ticket-layout>.fd-kanban-tags{grid-template-columns:minmax(0,1fr) 20px;gap:10px}
.fd-chat-ticket-layout .fd-chat-ticket-analyst{grid-column:2;grid-row:1;align-self:center;justify-self:end;width:20px;height:20px;font-size:7px}

/* A conversa rola apenas na vertical; excesso lateral de conteúdo/efeitos não cria outra barra. */
.fd-chats-stage .fd-ticket-shell>.fd-v2-messages{overflow-x:hidden;overflow-y:auto;min-width:0}
.fd-chats-stage .fd-ticket-shell>.fd-v2-messages>.fd-v2-message-row{box-sizing:border-box;min-width:0;max-width:100%}

/* Duas linhas completas, centralizadas no espaço entre foto e identificação. */
.fd-chats-stage .fd-chats-card-cliente .fd-kanban-item.fd-chat-ticket-layout{grid-template-rows:18px 18px auto 22px;row-gap:0;align-content:center}
.fd-chats-stage .fd-chats-card-cliente .fd-chat-ticket-layout>.fd-kanban-preview{position:relative;z-index:1;margin:7px -5px 7px 0;align-self:center;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;max-height:calc(2em + 10px);height:calc(2em + 10px);min-height:calc(2em + 10px);line-height:calc(1em + 5px)}
.fd-chat-ticket-layout .fd-chat-ticket-analyst.is-unassigned{background:#88888814;color:#707780;box-shadow:none}
.fd-app-dark .fd-chat-ticket-layout .fd-chat-ticket-analyst.is-unassigned{background:#88888814;color:#cbd0d8;box-shadow:none}

/* Contorno compartilhado com os tickets do painel, sem alterar a caixa do card. */
.fd-chats-stage .fd-kanban-item{--fd-card-contorno:#8997aa55;--fd-card-fundo:rgba(255,255,255,.62);outline:1px solid var(--fd-card-contorno);outline-offset:-1px}
.fd-app-dark .fd-chats-stage .fd-kanban-item{--fd-card-contorno:#ffffff24;--fd-card-fundo:rgba(0,0,0,.34)}
.fd-chats-stage .fd-kanban-item[aria-pressed=true]{--fd-card-fundo:rgba(186,214,255,.96)}
.fd-app-dark .fd-chats-stage .fd-kanban-item[aria-pressed=true]{--fd-card-fundo:rgba(66,138,242,.36)}
.fd-chats-stage .fd-kanban-item:hover,.fd-chats-stage .fd-kanban-item:focus-visible{outline-color:#629ee9!important;box-shadow:none!important;background-color:var(--fd-card-fundo)!important}

/* Identificação e resumo do ticket seguem o mesmo contorno das listas. */
.fd-chats-stage .fd-details-content .fd-details-profiles>.fd-details-profile{outline:1px solid #8997aa55;outline-offset:-1px;box-shadow:none}
.fd-app-dark .fd-chats-stage .fd-details-content .fd-details-profiles>.fd-details-profile{outline-color:#ffffff24}
.fd-chats-stage .fd-details-content .fd-details-profiles>.fd-details-profile:is(:hover,:focus-visible){outline-color:#629ee9!important;box-shadow:none!important}

/* Paginação com o contorno dos cards; cabeçalhos sem textura, em superfície suspensa. */
.fd-chats-stage .fd-kanban-pages{outline:1px solid #8997aa55;outline-offset:-1px;border-color:transparent}
.fd-app-dark .fd-chats-stage .fd-kanban-pages{outline-color:#ffffff24}
.fd-chats-stage .fd-kanban-pages:hover{outline-color:#629ee9;box-shadow:none}
.fd-chats-stage :is(.fd-cliente-topbar,.fd-details-topbar)::before{background:#d7dae0;background-image:none;box-shadow:0 5px 12px -7px #25324940,inset 0 1px 0 #ffffff60}
.fd-app-dark .fd-chats-stage :is(.fd-cliente-topbar,.fd-details-topbar)::before{background:#181a1f;background-image:none;box-shadow:0 5px 12px -7px #0009,inset 0 1px 0 #ffffff10}

/* Última mensagem até 5 px da borda direita, incluindo a coluna antes ocupada pelo horário. */
.fd-chats-stage :is(.fd-contact-history,.fd-indevidos-panel,.fd-details-groups) .fd-kanban-item>.fd-kanban-preview{grid-column:2 / -1;padding-right:0;margin-right:calc(5px - .5rem);box-sizing:border-box;max-width:none}
.fd-chats-stage :is(.fd-contact-history,.fd-indevidos-panel,.fd-details-groups) .fd-kanban-item:has(.fd-kanban-tag-ticket)>.fd-kanban-preview{margin-right:calc(5px - .625rem)}

/* Traço interno sólido mantém o contorno visível sobre o preenchimento da seleção. */
.fd-chats-stage .fd-kanban-item:is(:hover,:focus-visible){outline:1px solid #629ee9!important;outline-offset:-1px;box-shadow:inset 0 0 0 1px #629ee9!important}

/* Perfis espelhados: nome, fantasia e NPS, com corte simples a 5 px da direita. */
.fd-chats-stage .fd-details-content .fd-details-profiles>.fd-details-profile:not(.fd-details-ticket-empty){box-sizing:border-box;min-height:100px;padding:12px 5px 12px 12px}
.fd-chats-stage .fd-details-profile-summary{gap:5px;overflow:hidden}
.fd-chats-stage .fd-details-profile-summary strong,.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-responsible{white-space:nowrap;text-overflow:clip;overflow:hidden}
.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-responsible:empty{display:block;min-height:1.3em}
.fd-chats-stage .fd-ticket-details-form{justify-content:space-between;gap:10px}
.fd-chats-stage .fd-ticket-details-row{flex-shrink:0;min-height:24px;align-items:center}
.fd-app-dark .fd-chats-stage :is(.fd-cliente-topbar,.fd-details-topbar)::before{background:#0b0c0f;background-image:none;box-shadow:0 5px 12px -7px #000c,inset 0 1px 0 #ffffff0a}
/* Mesmo trilho deslizante e hover das filas, com seleção azul no bloco de detalhes. */
.fd-chats-stage .fd-details-menu{position:absolute;isolation:isolate}
.fd-chats-stage .fd-details-selection-mark{position:absolute;z-index:0;left:0;top:calc(50% - .29688rem * var(--fd-island-k));width:calc(100% / var(--fd-details-count,6));height:calc(1.875rem * var(--fd-island-k));margin-top:calc(-.9375rem * var(--fd-island-k));transform:translateX(calc(var(--fd-details-selected,0) * 100%));transition:transform 700ms var(--fd-island-spring);pointer-events:none}
.fd-chats-stage .fd-details-selection-mark::before{content:'';position:absolute;left:50%;width:calc(2.375rem * var(--fd-island-k));height:100%;transform:translateX(-50%);border-radius:calc(.625rem * var(--fd-island-k));background:#629ee9;box-shadow:0 .1875rem .5rem -.125rem #629ee9cc}
.fd-chats-stage .fd-details-menu-item{z-index:1;transition:color 180ms ease-in-out}
.fd-chats-stage .fd-details-menu-item::before{inset:auto;left:50%;top:calc(50% - .29688rem * var(--fd-island-k));width:calc(2.375rem * var(--fd-island-k));height:calc(1.875rem * var(--fd-island-k));transform:translate(-50%,-50%);border-radius:calc(.625rem * var(--fd-island-k));background:var(--fd-island-hover);transition:opacity 180ms ease-in-out;box-shadow:0 .1875rem .5rem -.125rem #0003}
.fd-chats-stage .fd-details-menu-item[aria-pressed=true]::before{opacity:0}
.fd-chats-stage .fd-details-menu .fd-details-menu-item[aria-pressed=true],.fd-chats-stage .fd-details-menu .fd-details-menu-item[aria-pressed=true] svg{color:#fff}
/* Ações flutuantes anexadas ao body também acompanham o tema do Chat. */
body:has(.fd-app-dark) :is(.fd-v2-msg-caret,.fd-v2-msg-tools){background:#24262c;border-color:#ffffff20;color:#d9e1ec;box-shadow:0 5px 14px -8px #000a}
body:has(.fd-app-dark) .fd-v2-msg-tool{color:#d9e1ec}
body:has(.fd-app-dark) :is(.fd-v2-msg-caret,.fd-v2-msg-tool):hover{background:#ffffff12;color:#629ee9}

/* Ícone selecionado permanece branco no hover, acima do trilho azul. */
.fd-chats-stage .fd-details-menu .fd-details-menu-item[aria-pressed=true]:is(:hover,:focus-visible) svg{color:#fff!important;opacity:1}
.fd-chats-stage .fd-details-menu .fd-details-menu-item>svg{z-index:2}

/* Identificação a 5 px da divisória; fantasia 2 px menor nos dois perfis. */
.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-summary{padding-left:5px}
.fd-chats-stage .fd-details-profile[role=button] .fd-details-profile-responsible{font-size:1rem}

/* Etiqueta TK compartilhada: mesmo contorno discreto da aba Clientes. */
.fd-chats-stage .fd-kanban-item .fd-kanban-tags>.fd-kanban-tag-ticket,
.fd-dd .fd-dd-cards .fd-kanban-item .fd-kanban-tag-ticket,
.fd-dd .fd-dd-cards .fd-dd-indicator-card .fd-client-ticket-number{
 border:1px solid #8997aa55;box-sizing:border-box;border-radius:5px;background:#88888814;box-shadow:none;
}
.fd-app-dark .fd-chats-stage .fd-kanban-item .fd-kanban-tags>.fd-kanban-tag-ticket,
.fd-app-dark .fd-dd .fd-dd-cards .fd-kanban-item .fd-kanban-tag-ticket,
.fd-app-dark .fd-dd .fd-dd-cards .fd-dd-indicator-card .fd-client-ticket-number{border-color:#ffffff24}
.fd-chats-stage .fd-kanban-item .fd-chat-ticket-analyst{outline:1px solid #8997aa55;outline-offset:-1px}
.fd-app-dark .fd-chats-stage .fd-kanban-item .fd-chat-ticket-analyst{outline-color:#ffffff24}
.fd-dd .fd-dd-card-conversa.fd-chat-ticket-layout .fd-dd-ticket-abertura{
 display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:4px;text-align:center;
}
.fd-dd .fd-dd-card-conversa.fd-chat-ticket-layout .fd-dd-ticket-abertura>*{min-width:0;overflow:hidden;justify-self:center}
.fd-dd .fd-dd-cards .fd-dd-indicator-card .fd-client-ticket-number{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);text-align:center;justify-content:normal;padding-inline:5px}
