/* GattoMusic v4.8 - controle numérico estável, Wikipédia opcional e Chat */
.surprise-preference input[type="number"]{
  appearance:auto;
  -webkit-appearance:auto;
  color-scheme:dark;
  line-height:normal;
  font-variant-numeric:tabular-nums;
}
body.light .surprise-preference input[type="number"]{color-scheme:light}
.wikipedia-heading-title{display:grid;gap:9px}
.wikipedia-enabled-control{display:inline-flex;align-items:center;gap:9px;min-height:36px;color:var(--text);font-size:.84rem;font-weight:800;cursor:pointer}
.wikipedia-enabled-control input{width:42px;height:22px;accent-color:var(--primary);cursor:pointer}
.wikipedia-language-select:disabled{opacity:.55;cursor:not-allowed}
.chat-nav-item{position:relative}
.chat-nav-badge{margin-left:auto;min-width:22px;height:22px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#e93b64;color:#fff;font-size:.72rem;font-weight:900;box-shadow:0 0 0 2px rgba(233,59,100,.18)}
.chat-shell{--chat-sidebar-width:360px;--chat-message-height:420px;display:grid;grid-template-columns:minmax(260px,var(--chat-sidebar-width)) 12px minmax(320px,1fr);gap:4px;min-height:calc(100vh - 250px)}
.chat-sidebar,.chat-conversation{min-width:0;border:1px solid var(--line);border-radius:19px;background:var(--panel);box-shadow:0 14px 34px rgba(0,0,0,.12);overflow:hidden}
.chat-sidebar{display:flex;flex-direction:column;gap:13px;padding:16px;overflow:auto}
.chat-column-splitter,.chat-message-splitter{position:relative;z-index:2;border-radius:999px;outline:none;touch-action:none;user-select:none}
.chat-column-splitter{cursor:col-resize;min-width:12px}
.chat-column-splitter::before{content:"";position:absolute;left:4px;top:8%;bottom:8%;width:4px;border-radius:999px;background:color-mix(in srgb,var(--secondary) 48%,var(--line));box-shadow:0 0 0 1px var(--line)}
.chat-message-splitter{cursor:row-resize;min-height:12px;margin:0 14px}
.chat-message-splitter::before{content:"";position:absolute;left:8%;right:8%;top:4px;height:4px;border-radius:999px;background:color-mix(in srgb,var(--secondary) 48%,var(--line));box-shadow:0 0 0 1px var(--line)}
.chat-column-splitter:hover::before,.chat-column-splitter:focus-visible::before,.chat-message-splitter:hover::before,.chat-message-splitter:focus-visible::before{background:var(--secondary);box-shadow:0 0 0 4px color-mix(in srgb,var(--secondary) 18%,transparent)}
.chat-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.chat-title h1{margin:2px 0 0;font-size:1.45rem}
.chat-settings{position:relative}
.chat-settings summary{cursor:pointer;color:var(--secondary);font-size:.82rem;font-weight:800;list-style:none}
.chat-settings[open]{padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.chat-settings-grid{display:grid;gap:8px;margin-top:10px}
.chat-setting-row{display:flex;align-items:center;gap:9px;font-size:.82rem;line-height:1.35}
.chat-setting-row input{width:18px;height:18px;accent-color:var(--primary)}
.chat-security-note{max-width:320px;margin:10px 0 0;color:var(--muted);font-size:.74rem;line-height:1.45}
.chat-contact-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.chat-contact-search input,.chat-message-search,.chat-composer textarea{min-width:0;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);font:inherit;outline:none}
.chat-contact-search input,.chat-message-search{min-height:42px;padding:8px 11px}
.chat-contact-search input:focus,.chat-message-search:focus,.chat-composer textarea:focus{border-color:var(--secondary);box-shadow:0 0 0 3px rgba(25,199,255,.14)}
.chat-search-result{grid-column:1/-1;display:grid;gap:8px}
.chat-search-user{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:12px}
.chat-search-user .muted{grid-column:1/2}
.chat-search-user .button{grid-column:2;grid-row:1/3}
.chat-request-section{display:grid;gap:8px;padding:11px;border:1px solid color-mix(in srgb,var(--primary) 28%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--primary) 6%,transparent)}
.chat-request-section h3,.chat-list-heading h3{margin:0;font-size:.92rem}
.chat-request-row,.chat-blocked-row{display:flex;align-items:center;justify-content:space-between;gap:8px}
.chat-inline-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.chat-inline-actions .button{min-height:35px;padding:7px 10px;font-size:.76rem}
.chat-outgoing-request{margin:0;color:var(--muted);font-size:.78rem}
.chat-list-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.chat-contact-list{display:grid;gap:6px}
.chat-contact{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) 12px auto;align-items:center;gap:9px;padding:9px;border:1px solid transparent;border-radius:13px;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.chat-contact:hover,.chat-contact.active{border-color:var(--line);background:rgba(255,255,255,.045)}
.chat-contact.active{border-color:color-mix(in srgb,var(--secondary) 62%,var(--line));box-shadow:inset 3px 0 0 var(--secondary)}
.chat-contact-avatar{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;font-weight:900}
.chat-contact-info{display:grid;gap:2px;min-width:0}
.chat-contact-info strong,.chat-contact-info small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-contact-info small{color:var(--muted)}
.chat-presence{width:10px;height:10px;border-radius:50%;background:#697184;box-shadow:0 0 0 3px rgba(105,113,132,.12)}
.chat-presence.online{background:#31d17c;box-shadow:0 0 0 3px rgba(49,209,124,.16)}
.chat-contact-unread{min-width:22px;height:22px;display:grid;place-items:center;padding:0 6px;border-radius:999px;background:var(--primary);color:#fff;font-size:.72rem}
.chat-blocked-list{padding-top:6px;border-top:1px solid var(--line)}
.chat-blocked-list summary{cursor:pointer;color:var(--muted);font-size:.8rem;font-weight:800}
.chat-blocked-row{padding:8px 0}
.chat-conversation{display:grid;grid-template-rows:auto minmax(240px,var(--chat-message-height)) 12px auto auto;min-height:560px}
.chat-conversation-empty{display:grid;place-items:center;align-content:center;gap:6px;min-height:420px;padding:24px;text-align:center}
.chat-conversation-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 17px;border-bottom:1px solid var(--line)}
.chat-conversation-header h2{margin:0 0 4px;font-size:1.2rem}
.chat-conversation-presence{color:var(--muted);font-size:.78rem;font-weight:800}
.chat-conversation-presence.online{color:#31d17c}
.chat-message-search{width:min(240px,40vw)}
.chat-message-list{display:flex;flex-direction:column;gap:8px;overflow:auto;padding:18px;background:linear-gradient(180deg,rgba(255,255,255,.018),transparent)}
.chat-message{max-width:min(76%,680px);display:grid;gap:7px;padding:10px 12px;border:1px solid var(--line);border-radius:15px;background:var(--surface);overflow-wrap:anywhere}
.chat-message.outgoing{align-self:flex-end;border-bottom-right-radius:5px;background:color-mix(in srgb,var(--primary) 16%,var(--surface));border-color:color-mix(in srgb,var(--primary) 30%,var(--line))}
.chat-message.incoming{align-self:flex-start;border-bottom-left-radius:5px}
.chat-message-text{margin:0;white-space:pre-wrap;line-height:1.45}
.chat-message-meta{display:flex;align-items:center;justify-content:flex-end;gap:7px;color:var(--muted);font-size:.68rem}
.chat-message-status{display:inline-block;min-width:1.5em;font-family:Verdana,Arial,sans-serif;font-size:.82rem;font-weight:900;letter-spacing:-.35px;color:#9ba3b5;text-align:center}
.chat-message-status.status-sending,.chat-message-status.status-sent,.chat-message-status.status-delivered{color:#9ba3b5}
.chat-message-status.status-read{color:#2f9cff;letter-spacing:-.35px;text-shadow:0 0 8px rgba(47,156,255,.18)}
.chat-attachment-card{display:grid;gap:8px;min-width:min(100%,260px);padding:10px;border:1px solid color-mix(in srgb,var(--secondary) 34%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--secondary) 6%,var(--surface))}
.chat-attachment-info{display:grid;gap:3px;min-width:0}.chat-attachment-info strong,.chat-attachment-info span{overflow-wrap:anywhere}.chat-attachment-info span{color:var(--muted);font-size:.76rem}
.chat-attachment-warning,.chat-selected-file-warning{margin:0;padding:8px 10px;border:1px solid rgba(255,183,77,.38);border-radius:9px;background:rgba(255,183,77,.08);color:#ffd08a;font-size:.76rem;line-height:1.42}
.chat-attachment-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.chat-attachment-actions .button{min-height:36px;padding:7px 10px;font-size:.76rem;text-decoration:none}
.chat-attachment-preview{display:grid;gap:8px;justify-items:start}.chat-attachment-preview-image{display:block;max-width:min(100%,420px);max-height:360px;object-fit:contain;border-radius:10px;background:#000}.chat-attachment-preview-audio,.chat-attachment-preview-video{width:min(100%,440px);max-height:360px}
.chat-typing-indicator{min-height:26px;padding:4px 18px;color:var(--secondary);font-size:.78rem;font-weight:800}
.chat-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;padding:13px;border-top:1px solid var(--line);background:var(--panel)}
.chat-composer textarea{width:100%;min-height:54px;max-height:140px;resize:vertical;padding:10px 12px;line-height:1.4}
.chat-text-toolbar{grid-column:1/-1;display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:4px 0 2px;font-family:Verdana,Arial,sans-serif}
.chat-text-toolbar .button{min-height:39px;padding:8px 11px;font-family:Verdana,Arial,sans-serif;font-size:.84rem;font-weight:700;line-height:1.2}
.chat-composer-actions{display:flex;align-items:flex-end;gap:7px;flex-wrap:wrap}
.chat-composer-actions .button{min-height:40px;padding:8px 11px}
.chat-selected-file{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--secondary) 44%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--secondary) 7%,var(--surface))}
.chat-selected-file-text{display:grid;gap:2px;min-width:0}.chat-selected-file-text strong,.chat-selected-file-text span,.chat-selected-file-text small{overflow-wrap:anywhere}.chat-selected-file-text span,.chat-selected-file-text small{color:var(--muted);font-size:.76rem}
.chat-upload-progress{grid-column:1/-1;height:9px;overflow:hidden;border:1px solid var(--line);border-radius:999px;background:var(--surface)}
.chat-upload-progress-bar{display:block;width:0;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--primary),var(--secondary));transition:width .15s linear}
.chat-upload-progress-label{grid-column:1/-1;color:var(--secondary);font-weight:800}
.chat-cancel-upload{grid-column:1/-1;justify-self:start}
.chat-voice-preview{grid-column:1/-1;display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,360px);align-items:center;gap:10px 14px;padding:12px;border:1px solid color-mix(in srgb,var(--primary) 42%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--primary) 7%,var(--surface))}
.chat-voice-preview-info{display:grid;gap:3px;min-width:0}.chat-voice-preview-info small{color:var(--muted);overflow-wrap:anywhere}
.chat-voice-preview audio{width:100%}.chat-voice-preview .chat-inline-actions{grid-column:1/-1}.chat-voice-progress{grid-column:1/-1;color:var(--muted);font-weight:700}
.chat-message-empty,.chat-message-loading,.chat-message-error{margin:auto;padding:18px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 78%,transparent)}
.chat-message-error{color:#ff8097;border-color:rgba(255,80,110,.38)}
.empty-state.compact{padding:18px;font-size:.84rem}
@media(max-width:980px){
  .chat-shell{grid-template-columns:minmax(240px,var(--chat-sidebar-width)) 12px minmax(300px,1fr)}
  .chat-conversation-header{align-items:flex-start;flex-direction:column}
  .chat-message-search{width:min(100%,320px)}
}
@media(max-width:760px){
  .chat-shell{display:block;min-height:0}.chat-column-splitter{display:none}
  .chat-sidebar{border-radius:16px;margin-bottom:12px;max-height:none}
  .chat-conversation{border-radius:16px;min-height:520px;grid-template-rows:auto minmax(240px,var(--chat-message-height)) 12px auto auto}
  .chat-contact-search{grid-template-columns:1fr}.chat-contact-search .button{width:100%}
  .chat-message{max-width:88%}
  .chat-composer{grid-template-columns:1fr}
  .chat-composer-actions{justify-content:stretch}.chat-composer-actions .button{flex:1}
  .chat-text-toolbar .button{flex:1 1 calc(33.333% - 6px)}
  .chat-voice-preview{grid-template-columns:1fr}.chat-voice-preview .chat-inline-actions{grid-column:1}.chat-voice-progress{grid-column:1}
  .chat-title{display:grid}
}
/* GattoMusic v4.8 - Chat: área de transferência, anexos e chamadas */
.chat-clipboard-preview{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:start;padding:11px 12px;border:1px solid color-mix(in srgb,var(--secondary) 38%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--secondary) 7%,var(--surface));font-family:Verdana,Arial,sans-serif}
.chat-clipboard-preview-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.chat-clipboard-preview-header strong{font-size:.85rem}.chat-clipboard-preview-header span{font-size:.74rem}
.chat-clipboard-preview-content{grid-column:1/-1;max-height:112px;margin:0;padding:9px 10px;overflow:auto;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--text);font:normal .8rem/1.45 Verdana,Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}
.chat-clipboard-preview .button{justify-self:start;min-height:35px;font-family:Verdana,Arial,sans-serif;font-size:.78rem}
.chat-selected-file-preview-image{display:block;max-width:min(100%,320px);max-height:220px;margin-top:7px;object-fit:contain;border:1px solid var(--line);border-radius:10px;background:#05060a}
.chat-selected-file-generic-preview{margin-top:6px;padding:9px 10px;border:1px dashed var(--line);border-radius:9px;color:var(--muted);font:700 .78rem/1.4 Verdana,Arial,sans-serif}
.chat-call-start{font-family:Verdana,Arial,sans-serif;font-size:.78rem}
.chat-call-modal{position:fixed;inset:0;z-index:10020;display:grid;place-items:center;padding:20px;background:rgba(3,5,12,.76);backdrop-filter:blur(10px)}
.chat-call-panel{width:min(760px,96vw);max-height:94vh;display:grid;gap:14px;overflow:auto;padding:22px;border:1px solid color-mix(in srgb,var(--secondary) 45%,var(--line));border-radius:22px;background:var(--panel);box-shadow:0 26px 90px rgba(0,0,0,.58);text-align:center}
.chat-call-panel h2{margin:0;font-size:1.55rem}.chat-call-panel .eyebrow{margin:0}.chat-call-status{margin:0;color:var(--secondary);font:800 .9rem/1.4 Verdana,Arial,sans-serif}
.chat-call-stage{position:relative;display:grid;place-items:center;min-height:240px;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#05060a}
.chat-call-stage.video{min-height:min(56vh,480px)}
.chat-call-remote-video{width:100%;height:100%;max-height:58vh;object-fit:contain;background:#000}
.chat-call-local-video{position:absolute;right:14px;bottom:14px;width:min(28%,190px);max-height:150px;object-fit:cover;border:2px solid rgba(255,255,255,.82);border-radius:13px;background:#000;box-shadow:0 10px 30px rgba(0,0,0,.45)}
.chat-call-avatar{width:132px;height:132px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;font-size:3.5rem;font-weight:900;box-shadow:0 0 0 12px rgba(255,255,255,.05)}
.chat-call-actions{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap}.chat-call-actions .button{min-height:44px;padding:10px 15px;font-family:Verdana,Arial,sans-serif;font-size:.84rem}
.chat-call-privacy{margin:0;color:var(--muted);font-size:.74rem;line-height:1.45}
@media(max-width:760px){.chat-clipboard-preview{grid-template-columns:1fr}.chat-call-panel{padding:16px}.chat-call-stage.video{min-height:330px}.chat-call-local-video{width:34%;right:9px;bottom:9px}.chat-call-actions .button{flex:1 1 42%}}
/* GattoMusic v4.8 - dispositivos e recuperação de chamadas */
.chat-call-device-controls {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 10px;
  width: 100%;
  margin-top: 12px;
}
.chat-call-device-field {
  display: grid;
  gap: 5px;
  min-width: 0;
  font-family: Verdana, Geneva, sans-serif;
  font-size: 0.88rem;
  color: var(--muted, #c7cce0);
}
.chat-call-device-select {
  width: 100%;
  min-height: 42px;
  padding: 8px 10px;
  border: 1px solid rgba(134, 151, 210, 0.55);
  border-radius: 10px;
  background: rgba(12, 17, 35, 0.96);
  color: #f7f8ff;
  font: 600 0.9rem Verdana, Geneva, sans-serif;
}
.chat-call-stage:fullscreen,
.chat-call-stage:-webkit-full-screen {
  width: 100vw;
  height: 100vh;
  max-height: none;
  border-radius: 0;
  background: #050712;
}
.chat-call-stage:fullscreen .chat-call-remote-video,
.chat-call-stage:-webkit-full-screen .chat-call-remote-video {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media (max-width: 720px) {
  .chat-call-device-controls { grid-template-columns: 1fr; }
  .chat-call-actions .button { min-height: 44px; font-family: Verdana, Geneva, sans-serif; }
}
/* GattoMusic v4.8 - Chat leve e armazenamento local do servidor */
.chat-message-list{scrollbar-gutter:stable;overscroll-behavior:contain;contain:layout paint style}
.chat-message{content-visibility:auto;contain-intrinsic-size:90px;box-shadow:none;transition:border-color .12s ease,background-color .12s ease}
.chat-message:hover{transform:none;box-shadow:none}
.chat-contact-item,.chat-text-toolbar .button,.chat-composer-actions .button{transition:background-color .12s ease,border-color .12s ease,color .12s ease;box-shadow:none}
.chat-contact-item:hover,.chat-text-toolbar .button:hover,.chat-composer-actions .button:hover{transform:none;box-shadow:none}
.chat-clipboard-preview{position:relative;z-index:4;max-width:100%;contain:layout paint}
.chat-server-file-overlay{position:fixed;inset:0;z-index:12000;display:grid;place-items:center;padding:24px;background:rgba(3,6,16,.74);backdrop-filter:blur(3px)}
.chat-server-file-dialog{display:grid;grid-template-rows:auto auto minmax(220px,1fr) auto;gap:12px;width:min(880px,96vw);height:min(700px,90vh);padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--panel);box-shadow:0 24px 70px rgba(0,0,0,.38)}
.chat-server-file-header,.chat-server-file-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.chat-server-file-header h3{margin:0}
.chat-server-file-controls select{min-height:42px;min-width:220px;padding:7px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);font:inherit}
.chat-server-file-list{display:grid;align-content:start;gap:7px;overflow:auto;padding:4px;contain:layout paint}
.chat-server-file-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;min-height:48px;padding:9px 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);font:normal .86rem Verdana,Arial,sans-serif;text-align:left;cursor:pointer}.chat-server-file-row:hover{border-color:var(--secondary);background:color-mix(in srgb,var(--secondary) 8%,var(--surface))}.chat-server-file-row small{color:var(--muted)}
.chat-attachment-card.unavailable{opacity:.84}
.chat-composer button:disabled,.chat-attachment-actions button:disabled{cursor:not-allowed}
@media(max-width:760px){.chat-server-file-overlay{padding:8px}.chat-server-file-dialog{width:100%;height:94vh;padding:12px}.chat-server-file-controls select{width:100%}}
/* GattoMusic v4.8 - GattoMusic Transferências */
.chat-transfer-mode-field{display:grid;gap:6px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--secondary) 5%,var(--surface));font-family:Verdana,Arial,sans-serif}
.chat-transfer-mode-field>span{font-size:.84rem;font-weight:700}.chat-transfer-mode-field small{font-size:.72rem;line-height:1.4;color:var(--muted)}
.chat-transfer-mode-select{width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--text);font:normal .82rem Verdana,Arial,sans-serif}
.chat-transfer-panel{display:grid;gap:10px;max-height:290px;overflow:auto;padding:10px 12px;border-block:1px solid var(--line);contain:layout paint}
.chat-transfer-panel-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;font-family:Verdana,Arial,sans-serif;font-size:.82rem}
.chat-transfer-card{display:grid;gap:7px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--panel);font-family:Verdana,Arial,sans-serif;content-visibility:auto;contain-intrinsic-size:150px}
.chat-transfer-card.state-active{border-color:color-mix(in srgb,var(--secondary) 62%,var(--line))}.chat-transfer-card.state-completed{border-color:#2fa56b}.chat-transfer-card.state-paused{border-color:#c99b36}
.chat-transfer-title,.chat-transfer-detail,.chat-transfer-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}.chat-transfer-title{justify-content:space-between}.chat-transfer-title strong{overflow-wrap:anywhere}.chat-transfer-mode{font-size:.7rem;color:var(--muted)}
.chat-transfer-detail{font-size:.74rem;color:var(--muted)}.chat-transfer-progress{height:8px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--line) 80%,transparent)}.chat-transfer-progress-bar{display:block;height:100%;background:var(--secondary);transition:width .15s linear}
.chat-transfer-note{margin:0;font-size:.72rem;line-height:1.45;color:var(--muted)}.chat-transfer-actions .button{min-height:34px;font:normal .76rem Verdana,Arial,sans-serif}
.chat-transfer-overlay{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:20px;background:#000a}.chat-transfer-invite{display:grid;gap:12px;width:min(560px,100%);max-height:90vh;overflow:auto;padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 24px 70px #0008;font-family:Verdana,Arial,sans-serif}.chat-transfer-invite h3,.chat-transfer-invite p{margin:0}
@media(max-width:760px){.chat-transfer-panel{max-height:240px}.chat-transfer-title{align-items:flex-start;flex-direction:column}.chat-transfer-actions .button{flex:1 1 44%}}
/* GattoMusic v4.8 - Chat móvel, avisos temporários e recuperação de mídia */
.chat-download-warning-overlay,.chat-media-error-overlay{position:fixed;inset:0;z-index:13000;display:grid;place-items:center;padding:18px;background:rgba(2,5,15,.78);backdrop-filter:blur(4px)}
.chat-download-warning-dialog,.chat-media-error-dialog{display:grid;gap:13px;width:min(620px,100%);max-height:90vh;overflow:auto;padding:22px;border:1px solid color-mix(in srgb,var(--secondary) 55%,var(--line));border-radius:18px;background:var(--surface);color:var(--text);box-shadow:0 24px 70px rgba(0,0,0,.45);font-family:Verdana,Arial,sans-serif}
.chat-download-warning-dialog h3,.chat-download-warning-dialog p,.chat-media-error-dialog h3,.chat-media-error-dialog p{margin:0}
.chat-download-warning-countdown{font-weight:700;color:var(--secondary)}
.chat-download-warning-dialog .chat-attachment-warning{display:block;padding:11px 12px;border:1px solid color-mix(in srgb,#e4a13a 65%,var(--line));border-radius:11px;background:color-mix(in srgb,#e4a13a 10%,var(--surface));line-height:1.55}
.chat-media-error-dialog .chat-call-actions{justify-content:flex-end}
@media(max-width:760px){
  body.chat-view-active{--player:0px}
  body.chat-view-active .player-bar{display:none!important}
  body.chat-view-active .app-shell{padding-bottom:0!important}
  body.chat-view-active .content{padding-bottom:max(16px,env(safe-area-inset-bottom))!important}
  body.chat-view-active .sidebar{bottom:0!important}
  body.chat-view-active .queue-drawer{bottom:0!important}
  .chat-download-warning-overlay,.chat-media-error-overlay{padding:8px}
  .chat-download-warning-dialog,.chat-media-error-dialog{padding:17px;border-radius:15px}
}
/* GattoMusic v5.0 - controles do Chat na barra inferior e exclusão visual segura */
.player-bar.chat-mode{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  height:var(--player)!important;
  min-height:148px;
  padding:9px 12px max(9px,env(safe-area-inset-bottom));
  align-items:stretch;
}
.player-bar.chat-mode > :not(.chat-footer-mode){display:none!important}
.player-bar.chat-mode .chat-footer-mode{display:grid!important;min-width:0;min-height:0}
.chat-footer-mode{width:100%;min-width:0}
.chat-footer-shell{display:grid;grid-template-rows:auto minmax(0,1fr);gap:6px;min-width:0;height:100%}
.chat-footer-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;font-family:Verdana,Arial,sans-serif}
.chat-footer-heading strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}
.chat-footer-heading span{color:var(--muted);font-size:.7rem}
.chat-footer-mode .chat-composer{
  display:grid;
  grid-template-columns:minmax(220px,1fr) minmax(270px,auto);
  grid-template-rows:auto auto;
  align-items:end;
  gap:6px 9px;
  min-width:0;
  height:100%;
  padding:0;
  border:0;
  background:transparent;
}
.chat-footer-mode .chat-composer textarea{min-height:48px;max-height:82px;resize:vertical}
.chat-footer-mode .chat-text-toolbar{grid-column:1;display:flex;gap:4px;overflow-x:auto;scrollbar-width:thin}
.chat-footer-mode .chat-text-toolbar .button{flex:0 0 auto;min-height:32px;padding:5px 8px;font-size:.7rem}
.chat-footer-mode .chat-composer-actions{grid-column:2;grid-row:1/3;align-self:stretch;justify-content:flex-end;align-content:center}
.chat-footer-mode .chat-composer-actions .button{min-height:40px}
.chat-footer-mode .chat-selected-file,
.chat-footer-mode .chat-voice-preview,
.chat-footer-mode .chat-upload-progress,
.chat-footer-mode .chat-upload-progress-label,
.chat-footer-mode .chat-cancel-upload,
.chat-footer-mode .chat-clipboard-preview{grid-column:1/-1}
body.chat-footer-active{--player:168px}
body.chat-footer-active .chat-conversation{grid-template-rows:auto minmax(250px,1fr) auto;min-height:calc(100vh - 340px)}
body.chat-footer-active .chat-conversation > .chat-message-splitter,
body.chat-footer-active .chat-conversation > .chat-composer{display:none!important}
.chat-message{position:relative;outline:none}
.chat-message:focus-visible,.chat-message.selected{
  border-color:var(--secondary)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--secondary) 22%,transparent)!important;
}
.chat-message-delete{
  position:absolute;
  top:6px;
  right:6px;
  z-index:4;
  width:30px;
  height:30px;
  display:none;
  place-items:center;
  padding:0;
  border:1px solid color-mix(in srgb,#e64666 72%,var(--line));
  border-radius:50%;
  background:color-mix(in srgb,#9f1735 88%,var(--panel));
  color:#fff;
  font:900 1.05rem/1 Verdana,Arial,sans-serif;
  cursor:pointer;
}
.chat-message.selected .chat-message-delete,.chat-message:focus-within .chat-message-delete{display:grid}
.chat-message.outgoing .chat-message-delete{right:auto;left:6px}
.chat-clear-history-button{white-space:nowrap}
@media(max-width:980px){
  .chat-footer-mode .chat-composer{grid-template-columns:minmax(0,1fr) auto}
  .chat-footer-mode .chat-text-toolbar{display:none}
  .chat-footer-mode .chat-composer-actions{grid-row:1;align-self:end}
  body.chat-footer-active{--player:150px}
}
@media(max-width:760px){
  body.chat-view-active.chat-footer-active{--player:218px}
  body.chat-view-active.chat-footer-active .player-bar{display:grid!important}
  body.chat-view-active.chat-footer-active .app-shell{padding-bottom:var(--player)!important}
  body.chat-view-active.chat-footer-active .content{padding-bottom:20px!important}
  body.chat-view-active.chat-footer-active .sidebar{bottom:var(--player)!important}
  body.chat-view-active.chat-footer-active .queue-drawer{bottom:var(--player)!important}
  .player-bar.chat-mode{min-height:210px;padding:8px}
  .chat-footer-mode .chat-footer-heading span{display:none}
  .chat-footer-mode .chat-composer{grid-template-columns:1fr;grid-template-rows:auto auto auto;align-content:end}
  .chat-footer-mode .chat-composer textarea{grid-column:1;grid-row:1;min-height:58px;max-height:76px}
  .chat-footer-mode .chat-composer-actions{grid-column:1;grid-row:2;display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:5px}
  .chat-footer-mode .chat-composer-actions .button{min-width:0;padding:7px 5px;font-size:.72rem}
  .chat-footer-mode .chat-selected-file,.chat-footer-mode .chat-voice-preview,.chat-footer-mode .chat-upload-progress,.chat-footer-mode .chat-upload-progress-label,.chat-footer-mode .chat-cancel-upload,.chat-footer-mode .chat-clipboard-preview{grid-row:auto}
  body.chat-footer-active .chat-shell{min-height:calc(100vh - 310px)}
  body.chat-footer-active .chat-conversation{min-height:420px}
}
/* === fim GattoMusic v5.0 === */
/* GattoMusic v5.1 - barra do Chat, rolagem isolada, digitando e histórico de chamadas */
.chat-message-list{
  min-height:0!important;
  height:100%;
  max-height:100%;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  touch-action:pan-y;
  scrollbar-gutter:stable;
}
.chat-message-list:focus{outline:2px solid color-mix(in srgb,var(--secondary) 45%,transparent);outline-offset:-2px}
.chat-footer-mode:not(.hidden){display:grid!important;visibility:visible!important;opacity:1!important;position:relative;z-index:3}
.player-bar.chat-mode .chat-footer-shell{min-height:128px}
.chat-footer-recovery{display:grid;place-items:center;min-height:76px;color:var(--muted);font:700 .8rem Verdana,Arial,sans-serif}
.chat-download-warning-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.chat-typing-indicator{display:flex;align-items:center;gap:9px;min-height:34px}
.chat-typing-indicator.hidden{display:none!important}
.chat-typing-bubble{display:inline-flex;align-items:center;gap:3px;padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface)}
.chat-typing-bubble i{width:6px;height:6px;border-radius:50%;background:var(--secondary);animation:chatTypingDot 1.1s infinite ease-in-out}
.chat-typing-bubble i:nth-child(2){animation-delay:.16s}.chat-typing-bubble i:nth-child(3){animation-delay:.32s}
.chat-typing-text{font-weight:800;color:var(--secondary)}
@keyframes chatTypingDot{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}
.chat-call-history-card{display:flex;align-items:center;gap:11px;min-width:min(330px,75vw);padding:11px 13px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 88%,var(--secondary) 12%)}
.chat-call-history-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:color-mix(in srgb,var(--secondary) 18%,var(--surface));font-size:1.15rem}
.chat-call-history-info{display:grid;gap:3px}.chat-call-history-info span{font-size:.78rem;color:var(--muted)}.chat-call-history-info small{font-size:.7rem;color:var(--muted)}
.chat-call-history-card.status-connected,.chat-call-history-card.status-ended{border-color:color-mix(in srgb,#31d17c 50%,var(--line))}
.chat-call-history-card.status-failed,.chat-call-history-card.status-rejected,.chat-call-history-card.status-missed,.chat-call-history-card.status-unavailable{border-color:color-mix(in srgb,#e85b73 55%,var(--line))}
.chat-call-device-notice{margin:0;padding:9px 11px;border:1px solid color-mix(in srgb,var(--secondary) 45%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--secondary) 8%,var(--surface));color:var(--text);font:.78rem/1.45 Verdana,Arial,sans-serif}
@media(max-width:760px){
  .chat-download-warning-actions .button{flex:1 1 180px}
  .chat-call-history-card{min-width:0;width:100%}
  .player-bar.chat-mode .chat-footer-shell{min-height:190px}
}
/* === fim GattoMusic v5.1 === */
/* GattoMusic v5.2 - altura real do Chat, rodapé inicial e rolagens independentes */
body.chat-footer-active .content{
  min-height:0!important;
  overflow:hidden!important;
  padding-bottom:12px!important;
}
body.chat-footer-active .view-content{
  height:100%!important;
  min-height:0!important;
  padding-top:12px!important;
  overflow:hidden!important;
}
body.chat-footer-active .chat-shell{
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  overflow:hidden!important;
}
body.chat-footer-active .chat-sidebar,
body.chat-footer-active .chat-conversation{
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
}
body.chat-footer-active .chat-sidebar{
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable;
}
body.chat-footer-active .chat-conversation{
  overflow:hidden!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
}
body.chat-footer-active .chat-message-list{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable;
}
.chat-composer-placeholder{opacity:.86}
.chat-composer-placeholder textarea:disabled{cursor:not-allowed;color:var(--muted);background:color-mix(in srgb,var(--surface) 84%,transparent)}
.chat-composer-placeholder .button:disabled{cursor:not-allowed;opacity:.48}
@media(max-width:760px){
  body.chat-footer-active .content{padding-bottom:8px!important}
  body.chat-footer-active .view-content{padding-top:8px!important}
  body.chat-footer-active .chat-shell{height:100%!important;min-height:0!important}
}
/* === fim GattoMusic v5.2 === */
/* GattoMusic v5.4 - barras visíveis e independentes, inclusive rolagem geral do Chat */
body.chat-footer-active .content{
  overflow:hidden!important;
}
body.chat-footer-active .view-content{
  height:100%!important;
  min-height:0!important;
  overflow-x:hidden!important;
  overflow-y:scroll!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable;
  padding-right:4px!important;
}
body.chat-footer-active .chat-shell{
  height:auto!important;
  min-height:max(620px,100%)!important;
  max-height:none!important;
  overflow:visible!important;
  align-items:stretch;
}
body.chat-footer-active .chat-sidebar,
body.chat-footer-active .chat-conversation{
  height:clamp(520px,calc(100vh - 285px),900px)!important;
  min-height:520px!important;
  max-height:none!important;
}
body.chat-footer-active .chat-sidebar{
  overflow:hidden!important;
}
body.chat-footer-active .chat-contact-list{
  flex:1 1 auto;
  min-height:120px;
  overflow-x:hidden!important;
  overflow-y:scroll!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable;
  padding-right:5px;
  align-content:start;
}
body.chat-footer-active .chat-message-list{
  overflow-x:hidden!important;
  overflow-y:scroll!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable;
  padding-right:14px;
}
body.chat-footer-active .chat-message-list,
body.chat-footer-active .chat-contact-list,
body.chat-footer-active .view-content{
  scrollbar-width:auto;
  scrollbar-color:color-mix(in srgb,var(--secondary) 74%,var(--primary)) color-mix(in srgb,var(--surface) 88%,transparent);
}
body.chat-footer-active .chat-message-list::-webkit-scrollbar,
body.chat-footer-active .chat-contact-list::-webkit-scrollbar,
body.chat-footer-active .view-content::-webkit-scrollbar{width:13px;height:13px}
body.chat-footer-active .chat-message-list::-webkit-scrollbar-track,
body.chat-footer-active .chat-contact-list::-webkit-scrollbar-track,
body.chat-footer-active .view-content::-webkit-scrollbar-track{
  background:color-mix(in srgb,var(--surface) 88%,transparent);
  border-radius:999px;
}
body.chat-footer-active .chat-message-list::-webkit-scrollbar-thumb,
body.chat-footer-active .chat-contact-list::-webkit-scrollbar-thumb,
body.chat-footer-active .view-content::-webkit-scrollbar-thumb{
  min-height:44px;
  border:3px solid color-mix(in srgb,var(--surface) 88%,transparent);
  border-radius:999px;
  background:linear-gradient(180deg,var(--secondary),var(--primary));
}
body.chat-footer-active .chat-message-list::-webkit-scrollbar-thumb:hover,
body.chat-footer-active .chat-contact-list::-webkit-scrollbar-thumb:hover,
body.chat-footer-active .view-content::-webkit-scrollbar-thumb:hover{background:var(--secondary)}
#chatCallModal .chat-call-actions button[aria-busy="true"]{cursor:wait;opacity:.72}
@media(max-width:760px){
  body.chat-footer-active .view-content{padding-right:2px!important}
  body.chat-footer-active .chat-shell{min-height:760px!important}
  body.chat-footer-active .chat-sidebar,
  body.chat-footer-active .chat-conversation{height:auto!important;min-height:360px!important}
  body.chat-footer-active .chat-contact-list{max-height:270px;min-height:150px}
  body.chat-footer-active .chat-message-list{min-height:300px!important;max-height:58vh!important}
}
/* === fim GattoMusic v5.4 === */
/* GattoMusic v5.4 - barra geral dedicada e microfones de webcam */
body.chat-footer-active .content{
  position:relative!important;
  padding-right:28px!important;
}
body.chat-footer-active .view-content{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  padding-right:8px!important;
}
body.chat-footer-active .view-content::-webkit-scrollbar{width:0!important;height:0!important}
.chat-general-scrollbar{
  display:none;
  position:absolute;
  z-index:35;
  top:4px;
  right:3px;
  bottom:4px;
  width:18px;
  min-height:80px;
  overflow-x:hidden;
  overflow-y:scroll;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  border:1px solid color-mix(in srgb,var(--secondary) 38%,var(--line));
  border-radius:999px;
  background:color-mix(in srgb,var(--surface) 92%,#05060d 8%);
  box-shadow:0 0 0 2px color-mix(in srgb,var(--panel) 82%,transparent),0 5px 18px rgba(0,0,0,.28);
  opacity:.92;
}
body.chat-footer-active .chat-general-scrollbar{display:block!important}
.chat-general-scrollbar:hover,.chat-general-scrollbar:focus,.chat-general-scrollbar.chat-wheel-active{opacity:1;outline:2px solid color-mix(in srgb,var(--secondary) 62%,transparent);outline-offset:1px}
.chat-general-scrollbar-spacer{display:block;width:1px;min-height:100%}
.chat-general-scrollbar{scrollbar-width:auto;scrollbar-color:var(--secondary) color-mix(in srgb,var(--surface) 88%,transparent)}
.chat-general-scrollbar::-webkit-scrollbar{width:16px}
.chat-general-scrollbar::-webkit-scrollbar-track{background:color-mix(in srgb,var(--surface) 90%,transparent);border-radius:999px}
.chat-general-scrollbar::-webkit-scrollbar-thumb{
  min-height:52px;
  border:3px solid color-mix(in srgb,var(--surface) 90%,transparent);
  border-radius:999px;
  background:linear-gradient(180deg,var(--secondary),var(--primary));
}
.chat-general-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--secondary)}
body.chat-footer-active .chat-message-list.chat-wheel-active,
body.chat-footer-active .chat-contact-list.chat-wheel-active{
  outline:2px solid color-mix(in srgb,var(--secondary) 42%,transparent);
  outline-offset:-2px;
}
.chat-call-refresh-devices{grid-column:1/-1;justify-self:start;white-space:normal}
.chat-call-refresh-devices[aria-busy="true"]{cursor:wait;opacity:.72}
@media(max-width:760px){
  body.chat-footer-active .content{padding-right:24px!important}
  .chat-general-scrollbar{right:2px;width:17px;top:2px;bottom:2px}
}
/* === fim GattoMusic v5.4 === */
/* GattoMusic v5.5 - barra geral nativa funcional e controles grandes do Chat */
body.chat-footer-active .chat-general-scrollbar{display:none!important}
body.chat-footer-active .content{
  position:relative!important;
  min-height:0!important;
  height:100%!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  scroll-behavior:smooth!important;
  scrollbar-gutter:stable!important;
  padding-right:16px!important;
  padding-bottom:clamp(24px,5vh,72px)!important;
  scrollbar-width:auto!important;
  scrollbar-color:color-mix(in srgb,var(--secondary) 78%,var(--primary)) color-mix(in srgb,var(--surface) 90%,transparent)!important;
}
body.chat-footer-active .content::-webkit-scrollbar{width:16px;height:16px}
body.chat-footer-active .content::-webkit-scrollbar-track{
  background:color-mix(in srgb,var(--surface) 90%,transparent);
  border-left:1px solid color-mix(in srgb,var(--secondary) 24%,var(--line));
}
body.chat-footer-active .content::-webkit-scrollbar-thumb{
  min-height:64px;
  border:3px solid color-mix(in srgb,var(--surface) 90%,transparent);
  border-radius:999px;
  background:linear-gradient(180deg,var(--secondary),var(--primary));
}
body.chat-footer-active .content::-webkit-scrollbar-thumb:hover{background:var(--secondary)}
body.chat-footer-active .view-content{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  padding-right:0!important;
  scrollbar-width:auto!important;
}
body.chat-footer-active .view-content::-webkit-scrollbar{width:auto!important;height:auto!important}
body.chat-footer-active .chat-shell{
  height:auto!important;
  min-height:clamp(660px,calc(100dvh - var(--player) - 34px),980px)!important;
  max-height:none!important;
  overflow:visible!important;
  align-items:stretch!important;
  padding-bottom:8px;
}
body.chat-footer-active .chat-sidebar,
body.chat-footer-active .chat-conversation{
  height:clamp(570px,calc(100dvh - var(--player) - 74px),900px)!important;
  min-height:520px!important;
  max-height:900px!important;
}
body.chat-footer-active .chat-contact-list,
body.chat-footer-active .chat-message-list{
  scrollbar-width:auto!important;
  scroll-behavior:smooth!important;
  scrollbar-gutter:stable!important;
}
body.chat-footer-active .chat-contact-list::-webkit-scrollbar,
body.chat-footer-active .chat-message-list::-webkit-scrollbar{width:14px;height:14px}
body.chat-footer-active .chat-contact-list::-webkit-scrollbar-thumb,
body.chat-footer-active .chat-message-list::-webkit-scrollbar-thumb{min-height:52px}
body.chat-footer-active .content.chat-wheel-active,
body.chat-footer-active .chat-contact-list.chat-wheel-active,
body.chat-footer-active .chat-message-list.chat-wheel-active{
  outline:2px solid color-mix(in srgb,var(--secondary) 46%,transparent);
  outline-offset:-2px;
}
body.chat-footer-active{--player:196px}
.player-bar.chat-mode{
  min-height:188px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  padding:12px 16px max(12px,env(safe-area-inset-bottom))!important;
}
.player-bar.chat-mode .chat-footer-shell{min-height:156px!important;gap:9px!important}
.chat-footer-mode .chat-footer-heading strong{font-size:1rem!important;line-height:1.3}
.chat-footer-mode .chat-footer-heading span{font-size:.82rem!important;line-height:1.35}
.chat-footer-mode .chat-composer{gap:10px 12px!important}
.chat-footer-mode .chat-composer textarea{
  min-height:76px!important;
  max-height:118px!important;
  padding:13px 15px!important;
  border-radius:14px!important;
  font:normal 1rem/1.45 Verdana,Arial,sans-serif!important;
}
.chat-footer-mode .chat-text-toolbar .button{
  min-height:38px!important;
  padding:7px 11px!important;
  font-size:.78rem!important;
}
.chat-footer-mode .chat-composer-actions{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(118px,1fr))!important;
  gap:9px!important;
  min-width:min(100%,410px);
}
.chat-footer-mode .chat-composer-actions .button{
  min-height:52px!important;
  min-width:118px!important;
  padding:10px 13px!important;
  font:800 .92rem/1.2 Verdana,Arial,sans-serif!important;
  white-space:normal!important;
}
@media(max-width:1100px){
  body.chat-footer-active{--player:230px}
  .player-bar.chat-mode{min-height:220px!important}
  .chat-footer-mode .chat-composer{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto auto!important}
  .chat-footer-mode .chat-composer textarea{grid-column:1!important;grid-row:1!important}
  .chat-footer-mode .chat-text-toolbar{grid-column:1!important;grid-row:2!important}
  .chat-footer-mode .chat-composer-actions{grid-column:1!important;grid-row:3!important;width:100%;min-width:0;grid-template-columns:repeat(3,minmax(110px,1fr))!important}
}
@media(max-width:760px){
  body.chat-view-active.chat-footer-active{--player:304px}
  body.chat-footer-active .content{padding-right:11px!important;padding-left:11px!important;padding-bottom:28px!important}
  body.chat-footer-active .content::-webkit-scrollbar{width:14px}
  body.chat-footer-active .chat-shell{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;min-height:980px!important}
  body.chat-footer-active .chat-sidebar,
  body.chat-footer-active .chat-conversation{height:auto!important;min-height:380px!important;max-height:none!important}
  body.chat-footer-active .chat-contact-list{min-height:170px!important;max-height:300px!important}
  body.chat-footer-active .chat-message-list{min-height:340px!important;max-height:62vh!important}
  .player-bar.chat-mode{min-height:294px!important;padding:10px!important}
  .player-bar.chat-mode .chat-footer-shell{min-height:270px!important}
  .chat-footer-mode .chat-footer-heading{align-items:flex-start!important;flex-direction:column!important;gap:3px!important}
  .chat-footer-mode .chat-footer-heading span{display:block!important;font-size:.76rem!important}
  .chat-footer-mode .chat-composer textarea{min-height:82px!important;max-height:108px!important;font-size:.96rem!important}
  .chat-footer-mode .chat-text-toolbar{display:flex!important;max-width:100%;overflow-x:auto!important}
  .chat-footer-mode .chat-composer-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .chat-footer-mode .chat-composer-actions .button{min-width:0!important;min-height:50px!important;font-size:.88rem!important}
  .chat-footer-mode .chat-composer-actions .button:last-child{grid-column:1/-1}
}
@media(max-width:430px){
  body.chat-view-active.chat-footer-active{--player:326px}
  .player-bar.chat-mode{min-height:316px!important}
  .player-bar.chat-mode .chat-footer-shell{min-height:292px!important}
  .chat-footer-mode .chat-composer-actions{grid-template-columns:1fr!important}
  .chat-footer-mode .chat-composer-actions .button:last-child{grid-column:auto}
  .chat-footer-mode .chat-composer-actions .button{min-height:48px!important}
}
@media(prefers-reduced-motion:reduce){
  body.chat-footer-active .content,
  body.chat-footer-active .chat-contact-list,
  body.chat-footer-active .chat-message-list{scroll-behavior:auto!important}
}
/* === fim GattoMusic v5.5 === */
/* GattoMusic v5.7 - fim real da rolagem, editor fixo e responsividade integral do Chat */
body.chat-footer-active{
  --chat-footer-overlap:0px;
  --chat-scroll-end-gap:clamp(24px,3.5vh,44px);
  --chat-scroll-end-space:calc(var(--chat-footer-overlap) + var(--chat-scroll-end-gap));
}
body.chat-footer-active .content{
  padding-bottom:0!important;
  scroll-padding-bottom:var(--chat-scroll-end-space)!important;
}
body.chat-footer-active .view-content{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  width:100%!important;
  min-width:0!important;
  min-height:100%!important;
}
body.chat-footer-active .chat-shell{
  flex:0 0 auto!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.chat-scroll-end-spacer{display:none}
body.chat-footer-active .chat-scroll-end-spacer{
  display:block!important;
  flex:0 0 var(--chat-scroll-end-space)!important;
  width:100%!important;
  height:var(--chat-scroll-end-space)!important;
  min-height:var(--chat-scroll-end-space)!important;
  pointer-events:none!important;
  visibility:hidden!important;
}
body.chat-footer-active .chat-conversation,
body.chat-footer-active .chat-sidebar,
body.chat-footer-active .chat-message-list,
body.chat-footer-active .chat-contact-list,
body.chat-footer-active .chat-composer,
body.chat-footer-active .chat-footer-shell{
  min-width:0!important;
  max-width:100%!important;
}
body.chat-footer-active .chat-message-list{
  scroll-padding-bottom:20px!important;
  overflow-wrap:anywhere!important;
}
body.chat-footer-active .chat-message-card,
body.chat-footer-active .chat-message-bubble,
body.chat-footer-active .chat-file-card{
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
.player-bar.chat-mode{
  height:auto!important;
  max-height:min(48dvh,430px)!important;
  scrollbar-gutter:stable!important;
}
.player-bar.chat-mode .chat-footer-shell{
  width:100%!important;
  overflow:visible!important;
}
.chat-footer-mode .chat-text-toolbar{
  display:flex!important;
  flex-wrap:wrap!important;
  max-width:100%!important;
  overflow-x:visible!important;
  overflow-y:visible!important;
}
.chat-footer-mode .chat-text-toolbar .button,
.chat-footer-mode .chat-composer-actions .button{
  overflow-wrap:anywhere!important;
  text-overflow:clip!important;
}
.chat-footer-mode .chat-composer textarea{
  width:100%!important;
  resize:vertical!important;
}
@media(max-width:980px){
  .chat-footer-mode .chat-composer-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .chat-footer-mode .chat-composer-actions .button:last-child{grid-column:1/-1}
}
@media(max-width:760px){
  body.chat-footer-active{--chat-scroll-end-gap:22px}
  body.chat-footer-active .chat-shell{min-height:0!important}
  body.chat-footer-active .chat-sidebar,
  body.chat-footer-active .chat-conversation{width:100%!important}
  .player-bar.chat-mode{max-height:min(56dvh,480px)!important}
  .chat-footer-mode .chat-text-toolbar .button{flex:1 1 132px!important}
}
@media(max-width:430px){
  .chat-footer-mode .chat-composer-actions{grid-template-columns:1fr!important}
  .chat-footer-mode .chat-composer-actions .button:last-child{grid-column:auto}
  .chat-footer-mode .chat-text-toolbar .button{flex:1 1 100%!important}
}
/* === fim GattoMusic v5.7 === */
/* GattoMusic v5.7 - ajuste final do editor móvel sem sobreposição */
@media(max-width:760px){
  .player-bar.chat-mode{align-items:start!important}
  .player-bar.chat-mode .chat-footer-mode,
  .player-bar.chat-mode .chat-footer-shell,
  .chat-footer-mode .chat-composer{
    height:auto!important;
    min-height:0!important;
  }
  .player-bar.chat-mode .chat-footer-shell{
    grid-template-rows:auto auto!important;
    align-content:start!important;
  }
  .chat-footer-mode .chat-composer{
    align-content:start!important;
  }
}
@media(max-width:430px){
  .chat-footer-mode .chat-text-toolbar{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
  }
  .chat-footer-mode .chat-text-toolbar .button{
    width:100%!important;
    min-height:42px!important;
    flex:none!important;
  }
  .chat-footer-mode .chat-composer-actions{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .chat-footer-mode .chat-composer-actions .button:last-child{grid-column:auto!important}
}
@media(max-width:340px){
  .chat-footer-mode .chat-text-toolbar,
  .chat-footer-mode .chat-composer-actions{grid-template-columns:1fr!important}
}
/* === fim do ajuste móvel GattoMusic v5.7 === */
/* GattoMusic v5.7 - editor móvel essencial, menu de mensagem e preferências de som */
.chat-message-menu{
  position:absolute;
  top:6px;
  right:42px;
  z-index:9;
  display:none;
}
.chat-message.outgoing .chat-message-menu{right:auto;left:42px}
.chat-message.selected .chat-message-menu,.chat-message:focus-within .chat-message-menu{display:block}
.chat-message-menu-toggle{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:1px solid color-mix(in srgb,var(--secondary) 58%,var(--line));
  border-radius:10px;
  background:color-mix(in srgb,var(--surface) 92%,var(--secondary) 8%);
  color:var(--text);
  cursor:pointer;
  font:900 1.35rem/1 Verdana,Arial,sans-serif;
  list-style:none;
}
.chat-message-menu-toggle::-webkit-details-marker{display:none}
.chat-message-menu-options{
  position:absolute;
  top:39px;
  right:0;
  display:grid;
  min-width:190px;
  padding:6px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--surface);
  box-shadow:0 18px 45px rgba(0,0,0,.38);
}
.chat-message.outgoing .chat-message-menu-options{right:auto;left:0}
.chat-message-menu-item{
  width:100%;
  min-height:40px;
  padding:8px 10px;
  border:0;
  border-radius:8px;
  background:transparent;
  color:var(--text);
  text-align:left;
  font:700 .78rem/1.35 Verdana,Arial,sans-serif;
  cursor:pointer;
}
.chat-message-menu-item:hover,.chat-message-menu-item:focus-visible{background:color-mix(in srgb,var(--secondary) 16%,var(--surface));outline:none}
.chat-message-menu-item.danger{color:#ff879b}
.chat-local-sound-title{grid-column:1/-1;margin:10px 0 0;font-size:.86rem;color:var(--secondary)}
.chat-sound-picker{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:10px;
  border:1px solid var(--line);
  border-radius:12px;
  background:color-mix(in srgb,var(--surface) 94%,var(--secondary) 6%);
}
.chat-sound-picker-copy{display:grid;gap:3px;min-width:0}
.chat-sound-picker-copy strong{font-size:.78rem}
.chat-sound-picker-copy span,.chat-sound-picker-name,.chat-local-sound-note{font-size:.7rem;color:var(--muted);overflow-wrap:anywhere}
.chat-sound-picker-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.chat-sound-picker-actions .button{min-height:36px;padding:6px 9px;font-size:.7rem}
.chat-local-sound-note{grid-column:1/-1;margin:0}
.chat-message-editor{
  border:2px solid color-mix(in srgb,var(--secondary) 72%,var(--line))!important;
  border-radius:14px!important;
  background:color-mix(in srgb,var(--surface) 96%,var(--secondary) 4%)!important;
  padding:12px 14px!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 24%,transparent);
}
.chat-message-editor:focus{
  outline:3px solid color-mix(in srgb,var(--secondary) 28%,transparent)!important;
  outline-offset:1px!important;
}
@media(max-width:760px){
  body.chat-view-active.chat-footer-active{--player:210px!important}
  .player-bar.chat-mode{
    min-height:198px!important;
    max-height:min(38dvh,250px)!important;
    padding:8px!important;
  }
  .player-bar.chat-mode .chat-footer-mode,
  .player-bar.chat-mode .chat-footer-shell{min-height:0!important;height:100%!important}
  .chat-footer-mode .chat-footer-shell{grid-template-rows:minmax(0,1fr)!important;gap:0!important}
  .chat-footer-mode .chat-footer-heading{display:none!important}
  .chat-footer-mode .chat-composer{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:minmax(72px,1fr) auto auto!important;
    gap:8px!important;
    width:100%!important;
    min-height:0!important;
    padding:8px!important;
    border:2px solid color-mix(in srgb,var(--secondary) 65%,var(--line))!important;
    border-radius:18px!important;
    background:color-mix(in srgb,var(--surface) 97%,var(--secondary) 3%)!important;
  }
  .chat-footer-mode .chat-composer textarea{
    grid-column:1!important;
    grid-row:1!important;
    min-height:72px!important;
    max-height:104px!important;
    resize:none!important;
    font-size:1rem!important;
    line-height:1.45!important;
  }
  .chat-footer-mode .chat-text-toolbar,
  .chat-footer-mode .chat-server-file-button,
  .chat-footer-mode .chat-clipboard-preview{display:none!important}
  .chat-footer-mode .chat-composer-actions{
    grid-column:1!important;
    grid-row:2!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
  }
  .chat-footer-mode .chat-composer-actions .button{
    grid-column:auto!important;
    min-width:0!important;
    min-height:52px!important;
    padding:7px 5px!important;
    font-size:.78rem!important;
    line-height:1.25!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
  .chat-footer-mode .chat-selected-file,
  .chat-footer-mode .chat-voice-preview,
  .chat-footer-mode .chat-upload-progress,
  .chat-footer-mode .chat-upload-progress-label,
  .chat-footer-mode .chat-cancel-upload{
    grid-column:1!important;
    grid-row:auto!important;
    max-height:74px!important;
    overflow:auto!important;
  }
  .chat-sound-picker{grid-template-columns:1fr}
  .chat-sound-picker-actions{justify-content:stretch}
  .chat-sound-picker-actions .button{flex:1 1 110px}
  body.chat-footer-active .chat-message-list{scroll-padding-bottom:26px!important}
}
@media(max-width:360px){
  body.chat-view-active.chat-footer-active{--player:224px!important}
  .player-bar.chat-mode{min-height:212px!important}
  .chat-footer-mode .chat-composer-actions .button{font-size:.72rem!important;min-height:56px!important}
  .chat-message-menu-options{min-width:168px}
}
/* === fim GattoMusic v5.7 === */
/* GattoMusic v5.8 - última mensagem completa acima do editor */
body.chat-footer-active .chat-message-list{
  --chat-last-message-clearance:36px;
  padding-bottom:var(--chat-last-message-clearance)!important;
  scroll-padding-bottom:var(--chat-last-message-clearance)!important;
}
body.chat-footer-active .chat-message-list > .chat-message:last-of-type{
  scroll-margin-bottom:var(--chat-last-message-clearance)!important;
}
@media(max-width:760px){
  body.chat-footer-active .chat-message-list{--chat-last-message-clearance:52px}
}
/* === fim GattoMusic v5.8 === */
/* GattoMusic v5.9 - navegação rápida da conversa e posicionamento final sincronizado */
.chat-conversation-boundary-controls{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  width:100%;
  min-width:0;
  padding:2px 0 10px;
}
.chat-conversation-boundary-controls .button{
  width:100%;
  min-width:0;
  min-height:48px;
  padding:10px 14px;
  border-color:color-mix(in srgb,var(--secondary) 34%,var(--line));
  border-radius:13px;
  font:800 clamp(.82rem,1.15vw,.98rem)/1.2 Verdana,Arial,sans-serif;
  white-space:normal;
}
.chat-conversation-boundary-controls .button:hover,
.chat-conversation-boundary-controls .button:focus-visible{
  border-color:var(--secondary);
  background:color-mix(in srgb,var(--secondary) 12%,var(--surface));
}
body.chat-footer-active .chat-conversation{
  grid-template-rows:auto auto minmax(0,1fr) auto!important;
}
body.chat-footer-active .chat-message-list{
  scroll-padding-bottom:max(24px,var(--chat-last-message-clearance,24px))!important;
}
@media(max-width:520px){
  .chat-conversation-boundary-controls{gap:7px;padding-bottom:8px}
  .chat-conversation-boundary-controls .button{min-height:46px;padding:8px 7px;font-size:.78rem}
}
@media(max-width:330px){
  .chat-conversation-boundary-controls{grid-template-columns:1fr}
}
/* === fim GattoMusic v5.9 === */
/* === GattoMusic v6.0: preferências roláveis, presença e layout responsivo === */
body.chat-welcome-mode .hero{min-height:230px;max-height:270px;height:auto;align-items:center}
body.chat-welcome-mode .hero-copy{width:100%;max-width:760px;padding:30px 38px;text-align:left}
body.chat-welcome-mode .hero-copy h1{margin-bottom:10px}
body.chat-welcome-mode .hero-actions,
body.chat-welcome-mode .surprise-preference,
body.chat-welcome-mode .hero-album-showcase,
body.chat-welcome-mode .hero-image{display:none!important}
body.chat-welcome-mode .hero:after{background:linear-gradient(120deg,rgba(8,10,20,.98),rgba(28,11,48,.84),rgba(7,28,43,.74))}
body.chat-welcome-mode .equalizer{display:flex!important;max-width:250px}
.chat-settings[open]{max-height:min(72dvh,680px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:12px}
.chat-settings[open]::-webkit-scrollbar{width:12px}
.chat-settings[open]::-webkit-scrollbar-thumb{min-height:46px;border:3px solid transparent;border-radius:12px;background:color-mix(in srgb,var(--secondary) 62%,var(--surface));background-clip:padding-box}
.chat-settings-grid{min-width:0}
.chat-profile-settings{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--surface) 88%,transparent)}
.chat-profile-settings h3{margin:0;font-family:Verdana,Arial,sans-serif;font-size:.9rem}
.chat-profile-field{display:grid;gap:6px;min-width:0}
.chat-profile-field>span{font:700 .78rem Verdana,Arial,sans-serif;color:var(--text)}
.chat-profile-field input,.chat-profile-field select{width:100%;min-width:0;min-height:42px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);font:normal .78rem Verdana,Arial,sans-serif}
.chat-v60-hint,.chat-settings p,.chat-settings small,.chat-settings .chat-sound-picker-copy span,.chat-setting-row span{font-family:Verdana,Arial,sans-serif;font-size:.72rem;line-height:1.38}
.chat-profile-save{justify-self:start;min-height:42px}
.chat-sound-picker{grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important;gap:10px!important}
.chat-sound-picker-copy{min-width:0}
.chat-sound-picker-actions{display:grid!important;grid-template-columns:repeat(3,minmax(110px,1fr));gap:7px;width:100%}
.chat-sound-picker-actions .button{min-width:0;min-height:42px;white-space:normal;line-height:1.15}
.chat-contact-list{scrollbar-gutter:stable}
.chat-contact.chat-self-contact{border-color:color-mix(in srgb,var(--secondary) 55%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--secondary) 11%,var(--surface)),var(--surface))}
.chat-contact.chat-self-contact .chat-contact-avatar{background:linear-gradient(135deg,var(--secondary),var(--primary))}
.chat-contact-info small{font-family:Verdana,Arial,sans-serif;font-size:.72rem}
.chat-presence.away{background:#f6b73c!important;box-shadow:0 0 12px rgba(246,183,60,.55)}
.chat-presence.busy{background:#ff5b6e!important;box-shadow:0 0 12px rgba(255,91,110,.5)}
.chat-presence.offline{background:#7c8295!important;box-shadow:none}
.chat-conversation-presence.away{color:#f6b73c}
.chat-conversation-presence.busy{color:#ff7b88}
.chat-conversation-presence.offline{color:var(--muted)}
.chat-self-note{display:block;max-width:620px;margin-top:4px;color:var(--muted);font:normal .72rem/1.38 Verdana,Arial,sans-serif}
.chat-history-choice-info{display:grid;grid-template-columns:minmax(130px,auto) minmax(0,1fr);gap:9px 12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.035)}
.chat-history-choice-info strong{font:800 .78rem Verdana,Arial,sans-serif}
.chat-history-choice-info span{font:normal .72rem/1.4 Verdana,Arial,sans-serif;color:#c4c8d6}
.chat-history-choice .button.danger{background:#9d2537;color:#fff;border-color:#cf5265}
.chat-shell.chat-v60-layout{align-items:stretch}
.chat-shell.chat-v60-layout .chat-sidebar{min-height:420px}
.chat-shell.chat-v60-layout .chat-conversation{min-height:420px}
@media(max-width:760px){
  body.chat-welcome-mode .hero{min-height:210px;max-height:none}
  body.chat-welcome-mode .hero-copy{padding:24px 20px;text-align:center}
  body.chat-welcome-mode .equalizer{display:flex!important;margin:18px auto 0}
  .chat-settings[open]{max-height:68dvh}
  .chat-sound-picker-actions{grid-template-columns:1fr}
  .chat-profile-save{width:100%}
  .chat-shell.chat-v60-layout{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
  .chat-shell.chat-v60-layout .chat-sidebar{max-height:44dvh;min-height:280px}
  .chat-shell.chat-v60-layout .chat-conversation{min-height:480px}
  .chat-history-choice-info{grid-template-columns:1fr}
  .chat-history-choice .gatto-modal-actions{display:grid;grid-template-columns:1fr}
}
/* === fim GattoMusic v6.0 === */
/* GattoMusic v6.0: tipografia consistente com as dicas do Player */
.chat-shell button,
.chat-shell input,
.chat-shell textarea,
.chat-shell select,
.chat-settings-panel,
.chat-settings-panel button,
.chat-settings-panel input,
.chat-settings-panel select,
.chat-settings-panel .chat-setting-help,
.chat-contact-presence,
.chat-contact-status-message,
.chat-conversation-presence,
.chat-self-note,
.chat-history-choice {
  font-family: Verdana, Arial, sans-serif;
}
.chat-settings-panel .chat-setting-help,
.chat-contact-presence,
.chat-contact-status-message,
.chat-conversation-presence,
.chat-self-note {
  font-size: .78rem;
  line-height: 1.45;
}
/* GattoMusic v6.0: indicação musical discreta no editor do Chat */
.chat-music-notes{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-width:128px;
  min-height:39px;
  margin-left:auto;
  padding:5px 14px;
  border:1px solid color-mix(in srgb,var(--secondary) 48%,var(--line));
  border-radius:11px;
  background:linear-gradient(135deg,rgba(168,50,230,.11),rgba(35,198,238,.08));
  color:color-mix(in srgb,var(--secondary) 78%,#fff);
  overflow:hidden;
  user-select:none;
  pointer-events:none;
}
.chat-music-notes span{
  display:inline-block;
  font:800 1.08rem/1 Verdana,Arial,sans-serif;
  transform:translateY(0) rotate(0deg);
  opacity:.78;
  animation:chatMusicNoteFloat 1.25s ease-in-out infinite;
  animation-delay:calc(var(--chat-note-index) * -0.18s);
  animation-play-state:paused;
}
.chat-music-notes.playing span{animation-play-state:running;opacity:1}
.chat-music-notes.stopped span{animation:none;transform:none;opacity:.58}
@keyframes chatMusicNoteFloat{
  0%,100%{transform:translateY(3px) rotate(-5deg)}
  50%{transform:translateY(-5px) rotate(7deg)}
}
@media(max-width:760px){
  .chat-music-notes{display:none!important}
}
@media(prefers-reduced-motion:reduce){
  .chat-music-notes span{animation:none!important;transform:none!important}
}
/* === GattoMusic v6.1: tipografia, anexos e editor móvel estável === */
.surprise-exclusion-editor{
  display:grid;
  gap:9px;
  margin-top:12px;
  padding:12px;
  border:1px solid color-mix(in srgb,var(--secondary) 34%,var(--line));
  border-radius:14px;
  background:color-mix(in srgb,var(--surface) 94%,var(--secondary) 6%);
  font-family:Verdana,Arial,sans-serif;
}
.surprise-exclusion-editor>label{font-size:.9rem;font-weight:800;color:var(--text)}
.surprise-exclusion-controls,.surprise-exclusion-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.surprise-exclusion-controls input{flex:1 1 240px;min-width:0;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);font:normal .9rem/1.35 Verdana,Arial,sans-serif}
.surprise-exclusion-list{display:flex;flex-wrap:wrap;gap:7px;min-height:34px;max-height:150px;overflow:auto;padding:4px;scrollbar-gutter:stable}
.surprise-exclusion-chip{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:6px 8px 6px 10px;border:1px solid color-mix(in srgb,var(--secondary) 42%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--secondary) 11%,var(--surface));font-size:.8rem;font-weight:700}
.surprise-exclusion-chip>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.surprise-exclusion-chip>button{display:grid;place-items:center;width:25px;height:25px;border:0;border-radius:50%;background:rgba(255,255,255,.08);color:var(--text);cursor:pointer;font:900 1rem/1 Verdana,Arial,sans-serif}
.surprise-exclusion-empty{color:var(--muted);font-size:.8rem}
.surprise-exclusion-editor small{color:var(--muted);line-height:1.45}
/* A prévia de anexo nunca pode consumir o espaço inteiro do editor. */
.chat-footer-mode .chat-selected-file{
  grid-column:1/-1!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  max-height:min(28dvh,230px)!important;
  overflow:auto!important;
  gap:10px!important;
  padding:10px 12px!important;
  scrollbar-gutter:stable!important;
}
.chat-footer-mode .chat-selected-file.hidden{display:none!important}
.chat-footer-mode .chat-selected-file-text{min-width:0;max-height:200px;overflow:auto;padding-right:4px}
.chat-footer-mode .chat-selected-file-preview-image{width:auto!important;max-width:min(230px,100%)!important;max-height:145px!important;margin-top:7px!important;object-fit:contain!important}
.chat-footer-mode .chat-selected-file .button{position:sticky;top:0;align-self:start;white-space:normal}
/* Os botões de início/fim pertencem ao rodapé, imediatamente acima do editor. */
.chat-footer-shell{grid-template-rows:auto auto minmax(0,1fr)!important}
.chat-footer-shell>.chat-conversation-boundary-controls{grid-row:2;margin:0;padding:0 0 7px}
.chat-footer-shell>.chat-composer{grid-row:3}
body.chat-footer-active .chat-conversation>.chat-conversation-boundary-controls{display:none!important}
/* Fonte maior e Verdana nos textos do painel de reprodução. */
.player-bar,
.player-bar button,
.player-bar .queue-time-summary,
.player-bar .timeline,
.queue-boundary-controls .button,
.player-bar .persistent-list-controls .button{
  font-family:Verdana,Arial,sans-serif!important;
}
.player-bar .persistent-list-controls .button{
  min-height:40px!important;
  padding:8px 13px!important;
  font-size:clamp(.86rem,.88vw,1rem)!important;
  font-weight:800!important;
  line-height:1.2!important;
}
.queue-time-summary{min-height:40px!important;font-size:clamp(.84rem,.82vw,.96rem)!important;line-height:1.25!important;padding:7px 11px!important}
.timeline{grid-template-columns:55px minmax(0,1fr) 55px!important;font-size:clamp(.82rem,.78vw,.94rem)!important;font-weight:700!important}
.transport-buttons .icon-button[data-tooltip]::after{font-family:Verdana,Arial,sans-serif!important;font-size:.82rem!important}
@media(max-width:760px){
  /* Uma única moldura: a do campo de texto. O contêiner não desenha outra. */
  .chat-footer-mode .chat-composer{
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    padding:2px!important;
    grid-template-rows:minmax(72px,auto) auto auto!important;
  }
  .chat-footer-mode .chat-composer textarea.chat-message-editor{
    border:2px solid color-mix(in srgb,var(--secondary) 72%,var(--line))!important;
    border-radius:16px!important;
    box-shadow:none!important;
    -webkit-user-select:text!important;
    user-select:text!important;
    touch-action:manipulation!important;
  }
  .chat-footer-shell{grid-template-rows:auto minmax(0,1fr)!important;gap:6px!important}
  .chat-footer-shell>.chat-footer-heading{display:none!important}
  .chat-footer-shell>.chat-conversation-boundary-controls{grid-row:1!important;padding:0 0 6px!important}
  .chat-footer-shell>.chat-composer{grid-row:2!important}
  .chat-footer-mode .chat-selected-file{max-height:118px!important;grid-template-columns:minmax(0,1fr) auto!important;padding:7px!important}
  .chat-footer-mode .chat-selected-file-text{max-height:100px!important}
  .chat-footer-mode .chat-selected-file-preview-image{max-width:110px!important;max-height:72px!important}
  .player-bar .persistent-list-controls .button{font-size:.8rem!important;padding:7px 6px!important}
  .timeline{grid-template-columns:44px minmax(0,1fr) 44px!important;font-size:.78rem!important}
}
@media(max-width:390px){
  .chat-conversation-boundary-controls .button{font-size:.76rem!important;padding:7px 5px!important}
  .player-bar .persistent-list-controls .button{font-size:.76rem!important}
}
/* === fim GattoMusic v6.1 === */
/* === GattoMusic v6.2: menus, favoritos e preferências estáveis === */
.chat-message{overflow:visible!important}
.chat-message-menu-toggle.v62-menu-toggle{
  position:absolute;top:7px;right:44px;z-index:12;display:none;
  width:38px;height:38px;border:1px solid color-mix(in srgb,var(--secondary) 75%,var(--line));
  border-radius:11px;background:color-mix(in srgb,var(--surface) 90%,var(--secondary) 10%);
  color:var(--text);font:900 1.55rem/1 Verdana,Arial,sans-serif;cursor:pointer;
  box-shadow:0 8px 24px rgba(0,0,0,.28)
}
.chat-message.outgoing>.chat-message-menu-toggle.v62-menu-toggle{right:auto;left:44px}
.chat-message.selected>.chat-message-menu-toggle.v62-menu-toggle,
.chat-message:focus-within>.chat-message-menu-toggle.v62-menu-toggle{display:grid;place-items:center}
.chat-message-menu-portal{
  position:fixed;z-index:10050;display:grid;min-width:205px;padding:7px;border:1px solid var(--line);
  border-radius:13px;background:var(--surface);box-shadow:0 20px 55px rgba(0,0,0,.5)
}
.chat-message-menu-portal .chat-message-menu-item{min-height:44px;font-size:.86rem}
.chat-settings{isolation:isolate}
.chat-settings[open]{position:relative;z-index:20;min-width:0}
.chat-settings summary{min-height:40px;display:flex;align-items:center;font-family:Verdana,Arial,sans-serif;font-size:.9rem}
.chat-settings-grid{align-content:start}
.chat-footer-shell{grid-template-rows:auto auto minmax(0,1fr)!important}
.chat-footer-shell>.chat-conversation-boundary-controls{grid-row:1!important;padding:0 0 7px!important}
.chat-footer-shell>.chat-footer-heading{grid-row:2!important;display:flex!important;margin:0 0 6px!important}
.chat-footer-shell>.chat-composer{grid-row:3!important}
.chat-conversation-boundary-controls .persistent-list-control-clone{
  min-height:44px!important;padding:8px 14px!important;border-radius:12px!important;
  font:800 clamp(.9rem,1vw,1.02rem)/1.2 Verdana,Arial,sans-serif!important;
  background:var(--surface)!important;border:1px solid var(--line)!important;color:var(--text)!important
}
.chat-conversation-boundary-controls .persistent-list-control-clone:hover,
.chat-conversation-boundary-controls .persistent-list-control-clone:focus-visible{
  border-color:var(--secondary)!important;background:color-mix(in srgb,var(--secondary) 12%,var(--surface))!important
}
.surprise-exclusion-save-state{display:inline-flex;align-items:center;min-height:30px;padding:4px 9px;border-radius:999px;
  color:var(--muted);font:700 .76rem/1.2 Verdana,Arial,sans-serif}
.surprise-exclusion-editor.has-unsaved-changes .surprise-exclusion-save-state{
  color:#ffd37a;background:rgba(255,187,64,.12);border:1px solid rgba(255,187,64,.35)
}
.favorite-share-button{min-height:42px;font-family:Verdana,Arial,sans-serif;font-size:.86rem}
.favorite-share-dialog{width:min(720px,calc(100vw - 28px));max-height:min(82dvh,760px);overflow:auto}
.favorite-share-contact{display:grid;gap:7px;margin:10px 0 12px;font-family:Verdana,Arial,sans-serif;font-weight:700}
.favorite-share-contact select{min-height:44px;padding:8px 11px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);font:normal .9rem Verdana,Arial,sans-serif}
.favorite-share-list{display:grid;gap:6px;max-height:420px;overflow:auto;padding:4px;scrollbar-gutter:stable}
.favorite-share-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;padding:9px;border:1px solid var(--line);border-radius:11px;background:color-mix(in srgb,var(--surface) 94%,var(--secondary) 6%)}
.favorite-share-row input{width:20px;height:20px}
.favorite-share-row span{display:grid;min-width:0}
.favorite-share-row strong,.favorite-share-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Verdana,Arial,sans-serif}
.favorite-share-row small{color:var(--muted);font-size:.78rem}
.chat-shared-favorite-card{display:grid;grid-template-columns:74px minmax(0,1fr);gap:10px;align-items:center;min-width:min(420px,70vw);padding:10px;border:1px solid color-mix(in srgb,var(--secondary) 52%,var(--line));border-radius:13px;background:linear-gradient(135deg,color-mix(in srgb,var(--secondary) 10%,var(--surface)),var(--surface))}
.chat-shared-favorite-card>img{width:74px;height:74px;border-radius:10px;object-fit:cover;background:var(--surface-2)}
.chat-shared-favorite-copy{display:grid;gap:2px;min-width:0;font-family:Verdana,Arial,sans-serif}
.chat-shared-favorite-copy>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-shared-favorite-label{color:var(--secondary);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.chat-shared-favorite-copy strong{font-size:.95rem}
.chat-shared-favorite-copy span,.chat-shared-favorite-copy small{font-size:.78rem;color:var(--muted)}
.chat-shared-favorite-actions{grid-column:1/-1;display:flex;gap:7px;flex-wrap:wrap}
.chat-shared-favorite-actions .button{min-height:38px;font-size:.78rem}
@media(max-width:760px){
  .chat-footer-shell>.chat-footer-heading{display:flex!important;align-items:flex-start!important;gap:2px!important}
  .chat-footer-shell>.chat-footer-heading strong{font-size:.86rem!important}
  .chat-footer-shell>.chat-footer-heading span{display:none!important}
  .chat-conversation-boundary-controls .persistent-list-control-clone{font-size:.8rem!important;padding:7px 6px!important}
  .chat-message-menu-toggle.v62-menu-toggle{width:40px;height:40px;right:43px}
  .chat-message.outgoing>.chat-message-menu-toggle.v62-menu-toggle{left:43px}
  .chat-shared-favorite-card{min-width:0;width:100%;grid-template-columns:58px minmax(0,1fr)}
  .chat-shared-favorite-card>img{width:58px;height:58px}
  .chat-shared-favorite-actions{display:grid;grid-template-columns:1fr}
  .favorite-share-dialog{max-height:86dvh}
}
/* === fim GattoMusic v6.2 === */
/* === GattoMusic v6.3: ações externas, menu opaco e preferências persistentes === */
.chat-message-list{
  padding-left:max(66px,calc(18px + env(safe-area-inset-left)))!important;
  overflow-x:hidden!important;
}
.chat-message{overflow:visible!important}
.chat-message-external-controls{
  position:absolute;
  left:-50px;
  top:4px;
  z-index:18;
  display:none;
  flex-direction:column;
  align-items:center;
  gap:6px;
  width:40px;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.chat-message.selected>.chat-message-external-controls{display:flex}
.chat-message:not(.selected)>.chat-message-external-controls{display:none!important}
.chat-message-external-controls>.chat-message-delete,
.chat-message-external-controls>.chat-message-menu-toggle.v62-menu-toggle{
  position:static!important;
  inset:auto!important;
  display:grid!important;
  place-items:center;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  margin:0!important;
  padding:0!important;
  border-radius:11px!important;
  opacity:1!important;
  transform:none!important;
  box-shadow:0 7px 20px rgba(0,0,0,.34)!important;
}
.chat-message-external-controls>.chat-message-delete{
  border:1px solid color-mix(in srgb,#ff6b82 72%,var(--line))!important;
  background:color-mix(in srgb,#a61d3d 92%,var(--surface))!important;
  color:#fff!important;
  font:900 1.22rem/1 Verdana,Arial,sans-serif!important;
}
.chat-message-external-controls>.chat-message-menu-toggle.v62-menu-toggle{
  border:1px solid color-mix(in srgb,var(--secondary) 72%,var(--line))!important;
  background:var(--surface)!important;
  color:var(--text)!important;
  font:900 1.55rem/1 Verdana,Arial,sans-serif!important;
}
.chat-message-external-controls>button:hover,
.chat-message-external-controls>button:focus-visible{
  transform:translateY(-1px)!important;
  outline:2px solid color-mix(in srgb,var(--secondary) 55%,transparent)!important;
  outline-offset:2px!important;
}
.chat-message-menu-portal{
  z-index:11000!important;
  isolation:isolate!important;
  opacity:1!important;
  background:var(--surface)!important;
  background-image:none!important;
  color:var(--text)!important;
  border:1px solid color-mix(in srgb,var(--secondary) 45%,var(--line))!important;
  box-shadow:0 22px 58px rgba(0,0,0,.62)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.chat-message-menu-portal .chat-message-menu-item{
  opacity:1!important;
  background:var(--surface)!important;
  color:var(--text)!important;
  text-shadow:none!important;
}
.chat-message-menu-portal .chat-message-menu-item:hover,
.chat-message-menu-portal .chat-message-menu-item:focus-visible{
  background:color-mix(in srgb,var(--secondary) 15%,var(--surface))!important;
}
.chat-message-menu-portal .chat-message-menu-item.danger{
  color:#ff8397!important;
}
.chat-settings[open]{
  position:relative!important;
  z-index:35!important;
  overscroll-behavior:contain!important;
  scroll-behavior:auto!important;
}
.chat-settings select,
.chat-settings input,
.chat-settings button{
  position:relative;
  z-index:1;
}
.chat-settings .chat-profile-settings select{
  min-height:44px!important;
  cursor:pointer!important;
}
.chat-settings .chat-profile-save{min-height:44px!important}
.favorite-share-intro{margin:0 0 10px;color:var(--muted);font:normal .82rem/1.45 Verdana,Arial,sans-serif}
.favorite-share-summary{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 10px}
.favorite-share-summary span,
.favorite-share-kind{
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:25px;
  padding:3px 8px;
  border-radius:999px;
  border:1px solid color-mix(in srgb,var(--secondary) 42%,var(--line));
  background:color-mix(in srgb,var(--secondary) 10%,var(--surface));
  color:var(--secondary);
  font:800 .68rem/1.1 Verdana,Arial,sans-serif;
  font-style:normal;
  letter-spacing:.05em;
}
.favorite-share-row span{gap:2px}
.favorite-share-album{border-color:color-mix(in srgb,var(--primary) 48%,var(--line))}
.favorite-share-album .favorite-share-kind{color:color-mix(in srgb,var(--primary) 72%,#fff)}
.chat-shared-favorite-album{border-color:color-mix(in srgb,var(--primary) 62%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 12%,var(--surface)),var(--surface))}
.album-share-favorite{color:var(--secondary)!important}
@media(max-width:760px){
  .chat-message-list{padding-left:max(56px,calc(10px + env(safe-area-inset-left)))!important}
  .chat-message-external-controls{left:-46px;width:38px;gap:5px}
  .chat-message-external-controls>.chat-message-delete,
  .chat-message-external-controls>.chat-message-menu-toggle.v62-menu-toggle{
    width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important
  }
  .favorite-share-summary{font-size:.76rem}
}
/* === fim GattoMusic v6.3 === */
/* === GattoMusic v6.4: responsividade, contatos, mensagens removidas e filtros salvos === */
.surprise-filter-heading{
  display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap
}
.surprise-filter-heading>label{font-size:.9rem;font-weight:800;color:var(--text)}
.surprise-filter-heading .button{min-height:38px}
.surprise-filter-body{display:grid;gap:9px;min-width:0}
.surprise-filter-presets{
  display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:12px;
  background:color-mix(in srgb,var(--surface) 96%,var(--primary) 4%);min-width:0
}
.surprise-filter-presets>strong{font-size:.84rem}
.surprise-filter-preset-save,.surprise-filter-preset-load{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;min-width:0
}
.surprise-filter-preset-load{grid-template-columns:minmax(0,1fr) auto auto}
.surprise-filter-presets input,.surprise-filter-presets select{
  width:100%;min-width:0;min-height:42px;padding:8px 10px;border:1px solid var(--line);
  border-radius:10px;background:var(--surface);color:var(--text);font:normal .82rem/1.3 Verdana,Arial,sans-serif
}
.surprise-filter-presets .button{min-height:42px;white-space:normal}
.chat-file-input-accessible{
  position:fixed!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;
  overflow:hidden!important;opacity:.01!important;pointer-events:none!important
}
.chat-local-file-button{display:inline-flex!important;align-items:center!important;justify-content:center!important}
.chat-mobile-file-settings{
  display:grid;gap:8px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:12px;
  background:color-mix(in srgb,var(--surface) 95%,var(--secondary) 5%)
}
.chat-mobile-file-settings strong,.chat-mobile-file-settings p{overflow-wrap:anywhere;word-break:normal}
.chat-mobile-file-settings .chat-setting-help{margin:0;color:var(--muted);font-size:.76rem;line-height:1.45}
.chat-mobile-file-open{width:100%;min-height:44px;white-space:normal}
.chat-contact-row{
  display:grid;grid-template-columns:44px minmax(0,1fr) 40px;align-items:center;gap:5px;
  width:100%;min-width:0;border-radius:13px
}
.chat-contact-row:has(.chat-contact.active){background:rgba(255,255,255,.025)}
.chat-contact-main{
  grid-template-columns:minmax(0,1fr) 12px auto!important;gap:9px!important;min-width:0!important;
  padding:9px 6px!important
}
.chat-contact-avatar-button,.chat-contact-options{
  display:grid;place-items:center;border:1px solid transparent;background:transparent;color:var(--text);
  cursor:pointer;border-radius:12px;min-width:0
}
.chat-contact-avatar-button{width:44px;height:44px;padding:2px}
.chat-contact-options{width:38px;height:42px;font:900 1.35rem/1 Verdana,Arial,sans-serif}
.chat-contact-avatar-button:hover,.chat-contact-avatar-button:focus-visible,
.chat-contact-options:hover,.chat-contact-options:focus-visible{
  border-color:var(--secondary);background:color-mix(in srgb,var(--secondary) 10%,var(--surface));outline:none
}
.chat-contact-avatar{position:relative;overflow:hidden;width:40px;height:40px;flex:0 0 40px}
.chat-contact-avatar img,.chat-contact-dialog-avatar img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit
}
.chat-contact-avatar.has-image{color:transparent}
.chat-contact-dialog{width:min(560px,calc(100vw - 24px));max-height:min(86dvh,720px);overflow:auto;scrollbar-gutter:stable}
.chat-contact-dialog-header{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:14px}
.chat-contact-dialog-header h3{margin:0 0 5px;overflow-wrap:anywhere}
.chat-contact-dialog-header p{margin:0;line-height:1.45;overflow-wrap:anywhere}
.chat-contact-dialog-avatar{
  position:relative;display:grid;place-items:center;width:88px;height:88px;overflow:hidden;border-radius:50%;
  background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;font:900 2rem/1 Verdana,Arial,sans-serif
}
.chat-contact-dialog-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
.chat-contact-dialog-actions .button{min-width:0;white-space:normal;min-height:44px}
.chat-message.removed-for-viewer{
  min-width:min(250px,70%);opacity:.82;border-style:dashed!important;background:color-mix(in srgb,var(--surface) 94%,var(--muted) 6%)!important;
  cursor:default!important;user-select:none
}
.chat-message-removed-marker{display:grid;gap:3px;padding:4px 2px;font-family:Verdana,Arial,sans-serif;font-style:italic}
.chat-message-removed-marker strong{font-size:.84rem;color:var(--muted)}
.chat-message-removed-marker span{font-size:.72rem;color:var(--muted)}
.chat-message.removed-for-viewer .chat-message-meta{opacity:.7}
.chat-message.removed-for-viewer .chat-message-external-controls{display:none!important}
.chat-selected-file-text.image-only{
  display:grid!important;place-items:center!important;max-height:none!important;overflow:visible!important;padding:0!important
}
.chat-selected-file-text.image-only .chat-selected-file-preview-image{
  width:auto!important;max-width:min(420px,100%)!important;max-height:min(34dvh,300px)!important;margin:0!important;
  object-fit:contain!important;border-radius:12px
}
/* O painel mantém rolagem própria e não depende da altura do monitor. */
.chat-settings[open]{
  display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;
  max-height:min(72dvh,720px)!important;overflow-x:hidden!important;overflow-y:auto!important;
  scrollbar-gutter:stable!important;overscroll-behavior:contain!important;padding:10px!important
}
.chat-settings-grid{min-width:0!important;width:100%!important;grid-template-columns:minmax(0,1fr)!important}
.chat-settings-grid>*{min-width:0!important;max-width:100%!important}
.chat-setting-row{align-items:flex-start!important;min-width:0!important}
.chat-setting-row span,.chat-settings p,.chat-settings label,.chat-settings strong{
  white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important
}
.chat-settings input,.chat-settings select,.chat-settings button{max-width:100%!important;min-width:0!important}
.chat-settings .chat-profile-field,.chat-settings .chat-profile-settings{min-width:0!important;max-width:100%!important}
@media(max-width:760px){
  .surprise-filter-heading{display:grid;grid-template-columns:minmax(0,1fr)}
  .surprise-filter-heading .button{width:100%}
  .surprise-filter-preset-save,.surprise-filter-preset-load{grid-template-columns:1fr}
  .surprise-filter-presets .button{width:100%}
  .chat-settings[open]{max-height:min(68dvh,620px)!important;padding:9px!important;-webkit-overflow-scrolling:touch}
  .chat-contact-row{grid-template-columns:46px minmax(0,1fr) 42px}
  .chat-contact-main{padding:8px 5px!important}
  .chat-contact-dialog-header{grid-template-columns:72px minmax(0,1fr)}
  .chat-contact-dialog-avatar{width:72px;height:72px}
  .chat-contact-dialog-actions{grid-template-columns:1fr!important}
  .chat-message.removed-for-viewer{min-width:min(220px,86%)}
  .chat-selected-file-text.image-only .chat-selected-file-preview-image{max-width:100%!important;max-height:96px!important}
  .chat-footer-mode .chat-composer-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .chat-footer-mode .chat-composer-actions .chat-local-file-button{display:flex!important;visibility:visible!important;opacity:1!important}
  .chat-footer-mode .chat-composer-actions .button:last-child{grid-column:1/-1!important}
}
@media(max-width:390px){
  .chat-settings[open]{max-height:64dvh!important}
  .chat-contact-row{grid-template-columns:42px minmax(0,1fr) 38px;gap:3px}
  .chat-contact-avatar-button{width:42px;height:42px}
  .chat-contact-options{width:36px}
  .chat-footer-mode .chat-composer-actions{grid-template-columns:1fr!important}
  .chat-footer-mode .chat-composer-actions .button:last-child{grid-column:auto!important}
}
/* === fim GattoMusic v6.4 === */
/* === GattoMusic v6.5: acabamento seguro do Chat e marcações Não tocar === */
.chat-sidebar{
  overflow-y:scroll!important;
  overflow-x:hidden!important;
  scrollbar-gutter:stable both-edges;
  overscroll-behavior:contain;
}
.chat-sidebar::-webkit-scrollbar,.chat-settings[open]::-webkit-scrollbar{width:12px}
.chat-sidebar::-webkit-scrollbar-thumb,.chat-settings[open]::-webkit-scrollbar-thumb{
  min-height:48px;border:3px solid transparent;border-radius:12px;
  background:color-mix(in srgb,var(--secondary) 68%,var(--surface));background-clip:padding-box;
}
.chat-settings[open]{
  width:100%!important;max-width:100%!important;
  max-height:min(62dvh,660px)!important;
  overflow-y:scroll!important;overflow-x:hidden!important;
  scrollbar-gutter:stable;overscroll-behavior:contain;
}
.chat-settings-grid{padding-bottom:18px!important}
.chat-contact-search{position:relative;z-index:3}
.chat-contact-search input{touch-action:manipulation}
.chat-public-profile-settings{display:grid;gap:10px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--secondary) 5%,var(--surface))}
.chat-public-profile-settings h3,.chat-public-profile-settings p{margin:0}
.chat-public-profile-row{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;min-width:0}
.chat-public-profile-preview{display:grid;place-items:center;width:72px;height:72px;overflow:hidden;border:1px solid var(--line);border-radius:50%;background:var(--panel);font:800 1.45rem/1 Verdana,Arial,sans-serif}
.chat-public-profile-preview img{width:100%;height:100%;object-fit:cover}
.chat-public-profile-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}
.chat-public-profile-actions .button{white-space:normal;overflow-wrap:anywhere}
.chat-selected-file-text.image-with-warning{
  display:grid!important;grid-template-columns:minmax(120px,230px) minmax(0,1fr)!important;
  gap:12px!important;align-items:center!important;width:100%!important;
}
.chat-selected-file-text.image-with-warning .chat-selected-file-preview-image{margin:0!important;max-width:100%!important;max-height:170px!important}
.chat-selected-image-warning{
  display:block;min-width:0;padding:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;color:var(--muted)!important;
  font:normal .76rem/1.48 Verdana,Arial,sans-serif;overflow-wrap:anywhere;
}
.chat-clipboard-preview{display:none!important}
.chat-selected-file-warning{border:0!important;background:transparent!important;padding:0!important}
.chat-music-notes{pointer-events:auto!important;cursor:pointer;touch-action:manipulation}
.chat-music-notes:hover,.chat-music-notes:focus-visible{border-color:var(--secondary);box-shadow:0 0 0 3px color-mix(in srgb,var(--secondary) 18%,transparent);outline:none}
.chat-credit-floating{
  position:fixed;z-index:50000;left:50%;top:18%;width:min(760px,calc(100vw - 32px));
  padding:18px 24px;border:1px solid color-mix(in srgb,var(--secondary) 65%,#fff 10%);
  border-radius:18px;background:rgba(8,10,22,.97);color:#fff;text-align:center;
  box-shadow:0 24px 80px rgba(0,0,0,.62);opacity:0;transform:translate(-50%,-14px) scale(.96);
  pointer-events:none;transition:opacity .42s ease,transform .42s ease;
}
.chat-credit-floating.visible{opacity:1;transform:translate(-50%,0) scale(1)}
.chat-credit-floating span{font:800 clamp(.9rem,2.1vw,1.25rem)/1.45 Verdana,Arial,sans-serif;text-shadow:0 2px 12px rgba(0,0,0,.8)}
.chat-message.selected>.chat-message-external-controls{display:flex!important;visibility:visible!important;opacity:1!important}
.chat-message-external-controls .chat-message-delete,.chat-message-external-controls .chat-message-menu-toggle{background:var(--surface)!important;color:var(--text)!important;border:1px solid var(--line)!important;box-shadow:0 5px 14px rgba(0,0,0,.38)}
.chat-message-external-controls .chat-message-delete{color:#ff9aae!important}
.chat-message-menu-portal,.chat-message-menu,.v62-message-menu{
  background:var(--surface)!important;color:var(--text)!important;opacity:1!important;
  backdrop-filter:none!important;border:1px solid var(--line)!important;box-shadow:0 18px 48px rgba(0,0,0,.58)!important;
}
.chat-message-menu-portal button,.chat-message-menu button,.v62-message-menu button{background:var(--surface)!important;color:var(--text)!important;opacity:1!important}
.playback-skip-button{border-color:color-mix(in srgb,#f0b34a 48%,var(--line))!important;color:#ffd28a!important}
.playback-skip-button.is-skipped{border-color:color-mix(in srgb,#ff8b8b 62%,var(--line))!important;background:color-mix(in srgb,#ff6b6b 13%,var(--surface))!important;color:#ffd3d3!important}
.song-row.playback-skipped,.media-card.playback-skipped{opacity:.72}
.song-row.playback-skipped::after,.media-card.playback-skipped::after{content:"Não tocar";position:absolute;z-index:3;padding:3px 7px;border-radius:999px;background:rgba(8,10,20,.92);color:#ffd28a;font:700 .66rem/1.2 Verdana,Arial,sans-serif;pointer-events:none}
.song-row{position:relative}.song-row.playback-skipped::after{left:52px;top:3px}
.media-card.playback-skipped::after{right:12px;top:12px}
@media(max-width:760px){
  .chat-sidebar{max-height:none!important;min-height:300px}
  .chat-settings[open]{max-height:min(58dvh,560px)!important}
  .chat-public-profile-row{grid-template-columns:62px minmax(0,1fr)}
  .chat-public-profile-preview{width:62px;height:62px}
  .chat-public-profile-actions{grid-template-columns:1fr}
  .chat-selected-file-text.image-with-warning{grid-template-columns:1fr!important}
  .chat-selected-file-text.image-with-warning .chat-selected-file-preview-image{max-width:min(100%,180px)!important;max-height:110px!important}
  .chat-music-notes{display:inline-flex!important;min-width:86px!important;padding:5px 9px!important}
  .chat-credit-floating{top:12%;padding:15px 17px;border-radius:14px}
}
@media(max-width:390px){
  .chat-settings[open]{max-height:54dvh!important}
  .chat-public-profile-row{grid-template-columns:1fr;justify-items:start}
  .chat-public-profile-actions{width:100%}
}
/* === fim GattoMusic v6.5 === */
/* === GattoMusic v6.6: pausas, desconexão, perfil completo e preferências isoladas === */
.server-pill.connection-attention{
  padding:7px 11px;border:1px solid rgba(255,83,110,.72);border-radius:999px;
  background:rgba(166,29,61,.22);color:#ffdbe2;font-weight:900;
  box-shadow:0 0 0 0 rgba(255,83,110,.45);animation:v66DisconnectedPulse 1.35s ease-in-out infinite
}
.server-pill.connection-attention span:first-child{width:11px;height:11px;background:#ff536e!important;box-shadow:0 0 16px #ff536e!important}
@keyframes v66DisconnectedPulse{0%,100%{box-shadow:0 0 0 0 rgba(255,83,110,.36)}50%{box-shadow:0 0 0 7px rgba(255,83,110,0)}}
.chat-music-notes{position:relative}
.chat-music-notes.paused{padding-right:42px!important;border-color:color-mix(in srgb,#ffd36e 66%,var(--line))!important}
.chat-music-notes.paused span{animation:none!important;transform:none!important;opacity:.82!important}
.chat-music-notes.paused::after{
  content:"Ⅱ";position:absolute;right:10px;top:50%;transform:translateY(-50%);
  display:grid;place-items:center;min-width:24px;height:24px;border-radius:7px;
  background:rgba(255,211,110,.15);color:#ffd36e;font:900 1rem/1 Verdana,Arial,sans-serif
}
.chat-public-profile-row{grid-template-columns:minmax(150px,190px) minmax(0,1fr)!important;align-items:stretch!important}
.chat-public-profile-preview{
  width:100%!important;min-width:150px!important;height:122px!important;border-radius:13px!important;
  background:#050713!important;color:var(--muted)!important;font:700 .75rem/1.3 Verdana,Arial,sans-serif!important
}
.chat-public-profile-preview img{width:100%!important;height:100%!important;object-fit:contain!important;background:#050713!important}
.chat-public-profile-empty{padding:12px;text-align:center}
.chat-contact-avatar.has-image,.chat-contact-dialog-avatar.has-image{background:#050713!important}
.chat-contact-avatar.has-image img,.chat-contact-dialog-avatar.has-image img{width:100%;height:100%;object-fit:cover}
.chat-selected-file-text.v66-image-layout{
  display:grid!important;grid-template-columns:minmax(150px,240px) minmax(0,1fr)!important;
  gap:14px!important;align-items:center!important;width:100%!important;padding:0!important
}
.chat-selected-file-text.v66-image-layout .chat-selected-file-preview-image{
  display:block!important;width:100%!important;height:160px!important;max-width:none!important;max-height:none!important;
  margin:0!important;object-fit:contain!important;border:1px solid var(--line);border-radius:12px;background:#050713
}
.chat-selected-file-image-copy{display:grid;gap:5px;min-width:0;text-align:left}
.chat-selected-file-image-copy strong,.chat-selected-file-image-copy span,.chat-selected-file-image-copy small{overflow-wrap:anywhere}
.chat-selected-file-image-copy .chat-selected-image-warning{margin-top:5px}
.chat-message.selected:not(.removed-for-viewer){
  padding-top:58px!important;outline:2px solid color-mix(in srgb,var(--secondary) 64%,transparent)!important;
  outline-offset:2px!important
}
.chat-message.selected>.chat-message-external-controls{
  position:absolute!important;left:10px!important;right:auto!important;top:9px!important;
  z-index:40!important;display:flex!important;flex-direction:row!important;align-items:center!important;
  gap:7px!important;width:auto!important;height:40px!important;visibility:visible!important;opacity:1!important
}
.chat-message.selected>.chat-message-external-controls>.chat-message-delete,
.chat-message.selected>.chat-message-external-controls>.chat-message-menu-toggle.v62-menu-toggle{
  display:grid!important;visibility:visible!important;opacity:1!important;background:var(--surface)!important
}
.chat-shell{position:relative}
.chat-left-scrollbar{
  position:absolute;z-index:80;left:3px;width:13px;min-height:80px;padding:1px;
  border:1px solid color-mix(in srgb,var(--secondary) 34%,var(--line));border-radius:999px;
  background:color-mix(in srgb,var(--surface) 93%,transparent);touch-action:none;outline:none
}
.chat-left-scrollbar-track{position:relative;width:100%;height:100%;min-height:76px;border-radius:999px;cursor:pointer}
.chat-left-scrollbar-thumb{
  position:absolute;left:1px;top:0;width:9px;min-height:44px;border-radius:999px;
  background:color-mix(in srgb,var(--secondary) 70%,var(--surface));box-shadow:0 3px 12px rgba(0,0,0,.32);will-change:transform
}
.chat-left-scrollbar:hover,.chat-left-scrollbar:focus-visible{border-color:var(--secondary);box-shadow:0 0 0 3px color-mix(in srgb,var(--secondary) 16%,transparent)}
.chat-left-scrollbar.inactive{opacity:.38;pointer-events:none}
.chat-sidebar{padding-left:24px!important}
.chat-sidebar.preferences-mode{overflow:hidden!important;gap:0!important;padding-top:10px!important;padding-bottom:10px!important}
.chat-sidebar.preferences-mode>.chat-contact-search,
.chat-sidebar.preferences-mode>.chat-request-section,
.chat-sidebar.preferences-mode>.chat-list-heading,
.chat-sidebar.preferences-mode>.chat-contact-list,
.chat-sidebar.preferences-mode>.chat-blocked-list,
.chat-sidebar.preferences-mode>.chat-outgoing-request{display:none!important}
.chat-sidebar.preferences-mode .chat-title{display:block!important;height:100%!important;min-height:0!important}
.chat-sidebar.preferences-mode .chat-title>div:first-child{display:none!important}
.chat-sidebar.preferences-mode .chat-settings[open]{
  display:block!important;width:100%!important;height:100%!important;max-height:100%!important;
  overflow-y:scroll!important;overflow-x:hidden!important;scrollbar-gutter:stable!important;
  padding:12px!important;border-radius:14px!important
}
.chat-sidebar.preferences-mode .chat-settings[open] summary{
  position:sticky;z-index:5;top:-12px;margin:-12px -12px 10px;padding:12px;
  background:var(--surface);border-bottom:1px solid var(--line)
}
.chat-sidebar.preferences-mode .chat-settings-grid{padding-bottom:18px!important}
.chat-sidebar.preferences-mode .chat-security-note{max-width:none!important;margin-bottom:4px!important}
@media(max-width:760px){
  .chat-public-profile-row{grid-template-columns:1fr!important}
  .chat-public-profile-preview{width:min(100%,280px)!important;height:170px!important}
  .chat-selected-file-text.v66-image-layout{grid-template-columns:minmax(120px,180px) minmax(0,1fr)!important}
  .chat-selected-file-text.v66-image-layout .chat-selected-file-preview-image{height:125px!important}
  .chat-sidebar{padding-left:24px!important}
  .chat-left-scrollbar{left:2px}
  .chat-sidebar.preferences-mode .chat-settings[open]{height:min(76dvh,720px)!important;max-height:min(76dvh,720px)!important}
}
@media(max-width:480px){
  .chat-selected-file-text.v66-image-layout{grid-template-columns:1fr!important}
  .chat-selected-file-text.v66-image-layout .chat-selected-file-preview-image{height:150px!important}
  .chat-public-profile-preview{height:155px!important}
}
@media(prefers-reduced-motion:reduce){.server-pill.connection-attention{animation:none!important}}
/* === fim GattoMusic v6.6 === */
/* === GattoMusic v6.7: opacidade, rolagem Chrome e layout sem sobreposição === */
.chat-message-menu-portal,
.chat-message-menu-portal[role="menu"]{
  background:#111522!important;background-color:#111522!important;
  color:#f7f8ff!important;opacity:1!important;filter:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  mix-blend-mode:normal!important;isolation:isolate!important;
  border:1px solid #4d5875!important;box-shadow:0 18px 48px rgba(0,0,0,.68)!important
}
.chat-message-menu-portal .chat-message-menu-item{
  background:#171c2c!important;background-color:#171c2c!important;color:#f7f8ff!important;
  opacity:1!important;filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important
}
.chat-message-menu-portal .chat-message-menu-item:hover,
.chat-message-menu-portal .chat-message-menu-item:focus-visible{background:#26304a!important}
.chat-message-menu-portal .chat-message-menu-item.danger{color:#ffd5dc!important;background:#291923!important}
.chat-public-profile-row{align-items:center!important;justify-items:stretch!important}
.chat-public-profile-preview.v67-centered-profile-preview{
  display:grid!important;place-items:center!important;overflow:hidden!important;
  min-height:170px!important;height:clamp(170px,24vh,260px)!important;padding:8px!important
}
.chat-public-profile-preview.v67-centered-profile-preview img{
  display:block!important;width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;
  object-fit:contain!important;object-position:center center!important;margin:auto!important
}
.chat-contact-avatar.has-image img{display:block!important}
.chat-left-scrollbar.v67-hidden{display:none!important;visibility:hidden!important;pointer-events:none!important}
.chat-sidebar:not(.preferences-mode){padding-left:16px!important}
.chat-sidebar.preferences-mode{padding-left:32px!important;padding-right:8px!important;box-sizing:border-box!important}
.chat-sidebar.preferences-mode .chat-settings[open]{
  box-sizing:border-box!important;min-width:0!important;max-width:100%!important;
  overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;
  scrollbar-gutter:stable both-edges!important
}
.chat-sidebar.preferences-mode .chat-settings[open] *,
.chat-sidebar.preferences-mode .chat-settings[open] *::before,
.chat-sidebar.preferences-mode .chat-settings[open] *::after{box-sizing:border-box!important;min-width:0}
.chat-sidebar.preferences-mode .chat-settings[open] button,
.chat-sidebar.preferences-mode .chat-settings[open] input,
.chat-sidebar.preferences-mode .chat-settings[open] select,
.chat-sidebar.preferences-mode .chat-settings[open] textarea,
.chat-sidebar.preferences-mode .chat-settings[open] .chat-settings-card,
.chat-sidebar.preferences-mode .chat-settings[open] section{max-width:100%!important}
.chat-sidebar.preferences-mode .chat-settings[open] button{white-space:normal!important;overflow-wrap:anywhere!important}
/* Chromium/WebKit: a barra direita permanece visível e utilizável. */
.chat-sidebar.preferences-mode .chat-settings[open]::-webkit-scrollbar{display:block!important;width:15px!important;height:15px!important}
.chat-sidebar.preferences-mode .chat-settings[open]::-webkit-scrollbar-track{background:#090c14!important;border-left:1px solid #30384d!important}
.chat-sidebar.preferences-mode .chat-settings[open]::-webkit-scrollbar-thumb{
  background:#65739a!important;border:3px solid #090c14!important;border-radius:999px!important;min-height:48px!important
}
.chat-sidebar.preferences-mode .chat-settings[open]::-webkit-scrollbar-thumb:hover{background:#8293c3!important}
.chat-message.chat-search-pinned{
  outline:3px solid #ffd36e!important;outline-offset:4px!important;
  box-shadow:0 0 0 7px rgba(255,211,110,.14),0 16px 36px rgba(0,0,0,.32)!important;
  scroll-margin-block:32%!important
}
.chat-selected-file-text.v67-image-layout .v67-temporary-warning{margin:8px 0 0!important;color:var(--warning,#ffd36e)!important}
@media(max-width:760px){
  .chat-sidebar.preferences-mode{padding-left:28px!important;padding-right:4px!important}
  .chat-public-profile-preview.v67-centered-profile-preview{height:190px!important;min-height:190px!important}
}
@media(max-width:480px){
  .chat-sidebar.preferences-mode{padding-left:25px!important;padding-right:2px!important}
  .chat-public-profile-preview.v67-centered-profile-preview{height:180px!important;min-height:180px!important}
}
/* === fim GattoMusic v6.7 === */
/* === GattoMusic v6.8: cabeçalho fixo e preferências com rolagem natural === */
body.chat-view-active .hero{display:none!important}
body.chat-view-active .topbar .search-wrap{display:none!important}
body.chat-view-active .topbar .menu-button{display:none!important}
body.chat-view-active .topbar{justify-content:flex-start}
body.chat-view-active .topbar .server-pill{margin-left:auto}
.chat-fixed-header{
  position:sticky;top:0;z-index:190;display:grid;
  grid-template-columns:minmax(150px,auto) auto minmax(260px,1fr) minmax(430px,auto);
  align-items:center;gap:10px;width:100%;min-width:0;margin:0 0 12px;padding:8px 10px;
  border:1px solid var(--line);border-radius:14px;background:#11131f;color:var(--text);
  box-shadow:0 10px 30px rgba(0,0,0,.34);overflow:visible;isolation:isolate
}
.chat-fixed-header.hidden{display:none!important}
.chat-fixed-brand,.chat-fixed-group{display:flex;align-items:center;gap:7px;min-width:0}
.chat-fixed-brand{gap:10px;white-space:nowrap;font:800 .92rem/1.2 Verdana,Arial,sans-serif}
.chat-fixed-equalizer{display:flex;align-items:end;justify-content:center;gap:3px;width:54px;height:34px;padding:3px 5px;border-radius:8px;background:#252736}
.chat-fixed-equalizer i{display:block;width:4px;border-radius:999px;background:linear-gradient(180deg,#51c8ff,#8e35e8)}
.chat-fixed-equalizer i:nth-child(1){height:11px}.chat-fixed-equalizer i:nth-child(2){height:22px}.chat-fixed-equalizer i:nth-child(3){height:15px}.chat-fixed-equalizer i:nth-child(4){height:28px}.chat-fixed-equalizer i:nth-child(5){height:18px}.chat-fixed-equalizer i:nth-child(6){height:24px}.chat-fixed-equalizer i:nth-child(7){height:12px}
.chat-fixed-group .button{min-height:38px;padding:7px 11px;white-space:nowrap;font:800 .76rem/1.15 Verdana,Arial,sans-serif}
.chat-fixed-history,.chat-fixed-boundaries{justify-content:center}
.chat-fixed-actions{justify-content:flex-end}
.chat-fixed-search{width:min(330px,28vw);min-width:150px;min-height:38px;padding:7px 11px;border:1px solid var(--line);border-radius:11px;background:#252736;color:var(--text);font:normal .8rem/1.2 Verdana,Arial,sans-serif;outline:none}
.chat-fixed-search:focus{border-color:var(--secondary);box-shadow:0 0 0 3px rgba(25,199,255,.14)}
.chat-v68-fixed-header-active .view-content{min-height:0}
.chat-left-scrollbar{display:none!important;visibility:hidden!important;pointer-events:none!important}
.chat-sidebar,.chat-sidebar.preferences-mode{padding-left:16px!important;padding-right:16px!important}
.chat-sidebar.preferences-mode .chat-settings[open]{
  width:100%!important;height:100%!important;max-height:100%!important;overflow-y:scroll!important;
  overflow-x:hidden!important;overscroll-behavior:contain!important;scroll-behavior:auto!important;
  scrollbar-gutter:stable!important;padding:12px 16px 24px!important;box-sizing:border-box!important
}
.chat-sidebar.preferences-mode .chat-settings[open]::-webkit-scrollbar{display:block!important;width:15px!important}
.chat-sidebar.preferences-mode .chat-settings[open]::-webkit-scrollbar-track{background:#090c14!important;border-left:1px solid #30384d!important}
.chat-sidebar.preferences-mode .chat-settings[open]::-webkit-scrollbar-thumb{background:#65739a!important;border:3px solid #090c14!important;border-radius:999px!important;min-height:50px!important}
.chat-sidebar.preferences-mode .chat-settings[open]::-webkit-scrollbar-thumb:hover{background:#8293c3!important}
.chat-contact-avatar.has-image,.chat-contact.chat-self-contact .chat-contact-avatar.has-image{
  background:transparent!important;color:transparent!important;opacity:1!important;filter:none!important;isolation:isolate!important
}
.chat-contact-avatar.has-image::before,.chat-contact-avatar.has-image::after{display:none!important;content:none!important}
.chat-contact-avatar.has-image img{
  z-index:2!important;display:block!important;width:100%!important;height:100%!important;opacity:1!important;
  object-fit:cover!important;object-position:center!important;filter:none!important;mix-blend-mode:normal!important;
  background:transparent!important;visibility:visible!important
}
@media(max-width:1450px){
  .chat-fixed-header{grid-template-columns:minmax(140px,auto) auto 1fr;grid-template-areas:"brand history boundaries" "actions actions actions"}
  .chat-fixed-brand{grid-area:brand}.chat-fixed-history{grid-area:history}.chat-fixed-boundaries{grid-area:boundaries}.chat-fixed-actions{grid-area:actions;justify-content:center}
  .chat-fixed-search{width:min(520px,42vw)}
}
@media(max-width:900px){
  .chat-fixed-header{position:sticky;grid-template-columns:1fr;grid-template-areas:"brand" "history" "boundaries" "actions";gap:7px;padding:8px}
  .chat-fixed-brand,.chat-fixed-history,.chat-fixed-boundaries,.chat-fixed-actions{justify-content:center;flex-wrap:wrap}
  .chat-fixed-search{width:min(100%,520px);flex:1 1 220px}
}
@media(max-width:520px){
  .chat-fixed-brand strong{font-size:.82rem}.chat-fixed-equalizer{width:48px;height:30px}
  .chat-fixed-group .button{flex:1 1 42%;min-width:0;white-space:normal;padding:7px 6px}
  .chat-fixed-actions .chat-fixed-search{flex:1 1 100%;width:100%}
  .chat-sidebar,.chat-sidebar.preferences-mode{padding-left:12px!important;padding-right:12px!important}
}
/* === fim GattoMusic v6.8 === */
/* === GattoMusic v6.9: foto própria sem piscar e Chat dentro de painel pai === */
.chat-contact-row.chat-self-contact-row .chat-contact-avatar-button{
  background:transparent!important;overflow:hidden!important;isolation:isolate!important
}
.chat-contact-row.chat-self-contact-row .chat-contact-avatar.chat-self-avatar-stable{
  background:transparent!important;color:transparent!important;opacity:1!important;visibility:visible!important
}
.chat-contact-row.chat-self-contact-row .chat-contact-avatar.chat-self-avatar-stable img{
  display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  object-fit:cover!important;object-position:center!important;opacity:1!important;visibility:visible!important;
  filter:none!important;mix-blend-mode:normal!important;background:transparent!important;z-index:4!important
}
body.chat-view-active{overflow:hidden!important}
body.chat-view-active .view-content{overflow:hidden!important;min-height:0!important}
.chat-workspace-panel{
  width:100%;height:var(--chat-workspace-height,calc(100dvh - 250px));min-height:360px;max-height:var(--chat-workspace-height,calc(100dvh - 250px));
  padding:8px;border:1px solid var(--line);border-radius:20px;background:color-mix(in srgb,var(--panel) 88%,#060814);
  box-shadow:0 16px 42px rgba(0,0,0,.26);overflow:hidden;box-sizing:border-box;overscroll-behavior:contain
}
.chat-workspace-panel>.chat-shell{
  width:100%;height:100%!important;min-height:0!important;max-height:100%!important;margin:0!important;overflow:hidden!important
}
.chat-workspace-panel .chat-sidebar,
.chat-workspace-panel .chat-conversation{
  height:100%!important;min-height:0!important;max-height:100%!important;box-sizing:border-box
}
.chat-workspace-panel .chat-sidebar{overflow-y:auto!important;overscroll-behavior:contain!important}
.chat-workspace-panel .chat-conversation{overflow:hidden!important}
.chat-workspace-panel .chat-message-list{overscroll-behavior:contain!important}
@media(max-width:760px){
  .chat-workspace-panel{overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important}
  .chat-workspace-panel>.chat-shell{display:block!important;height:auto!important;max-height:none!important;overflow:visible!important}
  .chat-workspace-panel .chat-sidebar,.chat-workspace-panel .chat-conversation{height:auto!important;max-height:none!important}
  .chat-workspace-panel .chat-sidebar{max-height:44dvh!important;margin-bottom:12px!important}
  .chat-workspace-panel .chat-conversation{min-height:520px!important}
}
/* === fim GattoMusic v6.9 === */
/* === GattoMusic v7.0: avatares estáveis para todos os contatos === */
.chat-contact-avatar.chat-contact-avatar-stable,
.chat-contact-dialog-avatar.chat-contact-avatar-stable{
  position:relative!important;overflow:hidden!important;background:transparent!important;
  color:transparent!important;opacity:1!important;visibility:visible!important;isolation:isolate!important
}
.chat-contact-avatar.chat-contact-avatar-stable::before,
.chat-contact-avatar.chat-contact-avatar-stable::after,
.chat-contact-dialog-avatar.chat-contact-avatar-stable::before,
.chat-contact-dialog-avatar.chat-contact-avatar-stable::after{display:none!important;content:none!important}
.chat-contact-avatar.chat-contact-avatar-stable img,
.chat-contact-dialog-avatar.chat-contact-avatar-stable img{
  display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  object-fit:cover!important;object-position:center center!important;opacity:1!important;visibility:visible!important;
  filter:none!important;mix-blend-mode:normal!important;background:transparent!important;z-index:5!important
}
.chat-contact-avatar-button{overflow:hidden!important;isolation:isolate!important}
/* === fim GattoMusic v7.0 === */
/* GattoMusic v7.1 - Alternar câmera troca somente as imagens grande e pequena. */
.chat-call-stage.video.chat-call-layout-swapped .chat-call-local-video{
  position:static!important;
  inset:auto!important;
  width:100%!important;
  height:100%!important;
  max-height:58vh!important;
  object-fit:contain!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  z-index:1;
}
.chat-call-stage.video.chat-call-layout-swapped .chat-call-remote-video{
  position:absolute!important;
  right:14px!important;
  bottom:14px!important;
  width:min(28%,190px)!important;
  height:auto!important;
  max-height:150px!important;
  object-fit:cover!important;
  border:2px solid rgba(255,255,255,.82)!important;
  border-radius:13px!important;
  background:#000!important;
  box-shadow:0 10px 30px rgba(0,0,0,.45)!important;
  z-index:2;
}
@media(max-width:760px){
  .chat-call-stage.video.chat-call-layout-swapped .chat-call-remote-video{
    width:34%!important;
    right:9px!important;
    bottom:9px!important;
  }
}
