/* Laercio Consultoria - camada final do chat e ajustes responsivos */

:root {
  --lc-chat-w: min(410px, calc(100vw - 28px));
  --lc-chat-h: min(600px, calc(100dvh - 112px));
  --lc-chat-safe-top: 88px;
  --lc-chat-open-bottom: 14px;
  --lc-chat-rest-bottom: 72px;
  --lc-chat-right: 18px;
  --lc-glass: rgba(255, 255, 255, .72);
  --lc-glass-strong: rgba(255, 255, 255, .88);
  --lc-ink: #102016;
  --lc-green: #15803d;
  --lc-green-dark: #0f4f2b;
}

.chat-launch,
.laercio-chat-btn {
  right: 18px !important;
  bottom: 18px !important;
  min-height: 42px !important;
  max-width: min(230px, calc(100vw - 28px)) !important;
  padding: 8px 13px 8px 9px !important;
  gap: 8px !important;
  border-radius: 999px !important;
  color: var(--lc-ink) !important;
  background: linear-gradient(135deg, rgba(255,255,255,.72), rgba(240,253,244,.58)) !important;
  border: 1px solid rgba(20, 83, 45, .22) !important;
  box-shadow: 0 14px 38px rgba(15, 23, 42, .14), 0 0 0 1px rgba(255,255,255,.72) inset !important;
  backdrop-filter: blur(16px) saturate(1.25);
  -webkit-backdrop-filter: blur(16px) saturate(1.25);
}

.chat-launch:hover,
.laercio-chat-btn:hover {
  background: var(--lc-glass-strong) !important;
  border-color: rgba(21, 128, 61, .32) !important;
  box-shadow: 0 18px 46px rgba(15, 23, 42, .18), 0 0 0 1px rgba(255,255,255,.82) inset !important;
  transform: translateY(-2px) !important;
}

.chat-launch img,
.laercio-chat-btn img {
  width: 22px !important;
  height: 22px !important;
  border-radius: 7px !important;
  background: rgba(3, 19, 13, .92) !important;
  padding: 2px !important;
  object-fit: contain !important;
  box-shadow: none !important;
}

.chat-launch span,
.laercio-chat-btn-label {
  min-width: 0;
  color: var(--lc-ink) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  white-space: nowrap;
}

.chat-panel,
.laercio-chat-panel {
  right: var(--lc-chat-right) !important;
  bottom: var(--lc-chat-rest-bottom) !important;
  width: var(--lc-chat-w) !important;
  height: min(var(--lc-chat-h), calc(100dvh - var(--lc-chat-safe-top) - var(--lc-chat-rest-bottom))) !important;
  max-height: min(var(--lc-chat-h), calc(100dvh - var(--lc-chat-safe-top) - var(--lc-chat-rest-bottom))) !important;
  border-radius: 10px !important;
  background: #f8fafc !important;
  border: 1px solid rgba(148, 163, 184, .42) !important;
  box-shadow: 0 30px 90px rgba(15, 23, 42, .28), 0 0 0 1px rgba(255,255,255,.72) inset !important;
  overflow: hidden !important;
}

.chat-panel.open {
  grid-template-rows: auto auto minmax(0, 1fr) auto auto auto !important;
}

.chat-panel.open,
.laercio-chat-panel.open {
  bottom: var(--lc-chat-open-bottom) !important;
  height: min(var(--lc-chat-h), calc(100dvh - var(--lc-chat-safe-top) - var(--lc-chat-open-bottom))) !important;
  max-height: min(var(--lc-chat-h), calc(100dvh - var(--lc-chat-safe-top) - var(--lc-chat-open-bottom))) !important;
}

.laercio-chat-panel {
  flex-direction: column;
}

.chat-head,
.laercio-chat-header {
  min-height: 64px;
  padding: 12px 14px !important;
  background:
    radial-gradient(circle at 22% 0%, rgba(134, 239, 172, .24), transparent 42%),
    linear-gradient(135deg, #07130d 0%, #0f4f2b 58%, #14532d 100%) !important;
  border-bottom: 1px solid rgba(220, 252, 231, .18);
}

.chat-identity,
.laercio-chat-header-left {
  min-width: 0;
}

.chat-face,
.laercio-chat-header .laercio-badge-mark {
  width: 56px !important;
  height: 56px !important;
  border-radius: 50% !important;
  flex: 0 0 56px;
  border: 2px solid rgba(220, 252, 231, .55);
  box-shadow: 0 10px 26px rgba(0,0,0,.26);
  position: relative;
  animation: lcAvatarIdle 4.6s ease-in-out infinite;
  transform-origin: center bottom;
  cursor: pointer;
}
.chat-face img,
.laercio-chat-header .laercio-badge-mark img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  display: block;
}
/* Laercinho "acena" ao passar o mouse no cabecalho do chat */
.chat-head:hover .chat-face,
.laercio-chat-header:hover .chat-face {
  animation: lcAvatarWave 0.9s ease-in-out;
}
@keyframes lcAvatarIdle {
  0%, 100% { transform: translateY(0) scale(1); box-shadow: 0 10px 26px rgba(0,0,0,.26), 0 0 0 0 rgba(134,239,172,0); }
  50% { transform: translateY(-2px) scale(1.04); box-shadow: 0 13px 30px rgba(0,0,0,.30), 0 0 0 7px rgba(134,239,172,.16); }
}
@keyframes lcAvatarWave {
  0% { transform: rotate(0) scale(1.05); }
  25% { transform: rotate(-7deg) scale(1.08); }
  50% { transform: rotate(6deg) scale(1.08); }
  75% { transform: rotate(-4deg) scale(1.08); }
  100% { transform: rotate(0) scale(1.05); }
}
@media (prefers-reduced-motion: reduce) {
  .chat-face { animation: none !important; }
}

.chat-head strong,
.laercio-chat-title {
  font-size: 14px !important;
  letter-spacing: 0 !important;
}

.chat-head span,
.laercio-chat-subtitle {
  color: rgba(220, 252, 231, .78) !important;
  font-size: 11px !important;
}

.chat-close,
.chat-head .icon-btn,
.laercio-chat-close {
  width: 34px !important;
  height: 34px !important;
  border-radius: 9px !important;
  background: rgba(255,255,255,.14) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  color: #fff !important;
}

.chat-quickbar,
.laercio-chat-quickbar {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
  padding: 9px 10px;
  background: linear-gradient(180deg, #ffffff, #f4f7fb);
  border-bottom: 1px solid rgba(216, 224, 235, .9);
}

.chat-tool,
.laercio-chat-tool {
  min-height: 34px;
  padding: 7px 8px;
  border-radius: 8px;
  border: 1px solid rgba(21, 128, 61, .18);
  background: #fff;
  color: #14532d;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.15;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  text-align: center;
  transition: transform .16s ease, border-color .16s ease, background .16s ease;
}

.chat-tool:hover,
.laercio-chat-tool:hover {
  transform: translateY(-1px);
  border-color: rgba(21, 128, 61, .42);
  background: #f0fdf4;
}

.chat-messages,
.laercio-chat-messages {
  min-height: 0 !important;
  max-height: none !important;
  flex: 1 1 auto !important;
  padding: 16px 14px 12px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.65), rgba(248,250,252,.82)),
    radial-gradient(circle at 8% 4%, rgba(22, 101, 52, .08), transparent 38%) !important;
  gap: 13px !important;
}

.msg,
.laercio-msg {
  max-width: min(92%, 470px) !important;
}

.msg.ai,
.laercio-msg-ai {
  grid-template-columns: 34px minmax(0, 1fr) !important;
  column-gap: 9px !important;
  max-width: min(94%, 500px) !important;
}

.msg-avatar,
.laercio-msg-avatar {
  width: 34px !important;
  height: 34px !important;
  border: 2px solid #fff !important;
  box-shadow: 0 10px 22px rgba(21, 128, 61, .16) !important;
}

.bubble,
.laercio-msg-bubble {
  border-radius: 10px !important;
  padding: 11px 12px !important;
  line-height: 1.56 !important;
  font-size: 13px !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

.msg.ai .bubble,
.laercio-msg-ai .laercio-msg-bubble {
  background: rgba(255,255,255,.96) !important;
  border-color: rgba(21, 128, 61, .18) !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .06);
}

.msg.user .bubble,
.laercio-msg-user .laercio-msg-bubble {
  background: linear-gradient(135deg, #15803d 0%, #166534 100%) !important;
  box-shadow: 0 10px 24px rgba(21, 128, 61, .18);
}

.chat-suggestions,
.laercio-chat-suggestions {
  flex: 0 0 auto !important;
  max-height: 108px;
  overflow: auto;
  padding: 9px 10px !important;
  border-top: 1px solid rgba(216, 224, 235, .9) !important;
  background: #fff !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
}

.chip,
.laercio-suggestion,
.laercio-suggestion-chip {
  min-height: 30px !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(21, 128, 61, .18) !important;
  background: #f8fafc !important;
  color: #24533a !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  cursor: pointer;
}

.chip:hover,
.laercio-suggestion:hover,
.laercio-suggestion-chip:hover {
  background: #ecfdf5 !important;
  border-color: rgba(21, 128, 61, .42) !important;
  color: #14532d !important;
}

.chat-input,
.laercio-chat-input-area {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  gap: 8px !important;
  padding: 11px 12px !important;
  background: #fff !important;
  border-top: 1px solid rgba(216, 224, 235, .9) !important;
  align-items: end;
}

.laercio-chat-input-area {
  grid-template-columns: minmax(0, 1fr) auto !important;
}

.chat-input textarea,
.laercio-chat-input {
  min-width: 0 !important;
  width: 100% !important;
  min-height: 42px !important;
  max-height: 120px !important;
  border-radius: 9px !important;
  border: 1px solid rgba(148, 163, 184, .72) !important;
  background: #f8fafc !important;
  color: #142033 !important;
  resize: none !important;
  line-height: 1.35 !important;
  overflow: auto !important;
}

.chat-input .icon-btn,
.laercio-chat-send {
  width: 42px !important;
  min-width: 42px !important;
  height: 42px !important;
  border-radius: 9px !important;
}

.prompt-library {
  display: none;
  min-height: 0;
  max-height: 240px;
  overflow: hidden;
  border-top: 1px solid rgba(216, 224, 235, .9);
  background: #fff;
}

.prompt-library.open {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
}

.prompt-library-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 7px;
  padding: 10px;
  border-bottom: 1px solid rgba(216, 224, 235, .75);
}

.prompt-library-head strong {
  font-size: 12px;
  color: #14532d;
}

.prompt-library-head input {
  width: 100%;
  min-height: 34px;
  border-radius: 8px;
  border: 1px solid rgba(148, 163, 184, .58);
  padding: 7px 9px;
  background: #f8fafc;
}

.prompt-library-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
  padding: 10px;
  overflow: auto;
}

.prompt-option {
  min-height: 40px;
  justify-content: flex-start;
  text-align: left;
  border-radius: 8px;
  border: 1px solid rgba(216, 224, 235, .9);
  background: #fff;
  color: #142033;
  font-size: 12px;
  line-height: 1.3;
  white-space: normal;
  overflow-wrap: anywhere;
}

.prompt-option small {
  display: inline-flex;
  margin-right: 6px;
  color: #166534;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

/* Ajustes finais de fluidez: o menu so expande quando o JS libera perto do trilho. */
@media (min-width: 901px) {
  .shell:not(.nav-expanded):not(.nav-pinned):has(.sidebar:hover) {
    grid-template-columns: var(--rail-w) minmax(0, 1fr) !important;
  }

  .shell:not(.nav-expanded):not(.nav-pinned):has(.sidebar:hover) .sidebar .brand-mark {
    display: grid !important;
  }

  .shell:not(.nav-expanded):not(.nav-pinned):has(.sidebar:hover) .sidebar .brand div:not(.brand-mark),
  .shell:not(.nav-expanded):not(.nav-pinned):has(.sidebar:hover) .sidebar .workspace-switch,
  .shell:not(.nav-expanded):not(.nav-pinned):has(.sidebar:hover) .sidebar .nav-title,
  .shell:not(.nav-expanded):not(.nav-pinned):has(.sidebar:hover) .sidebar .nav-item span,
  .shell:not(.nav-expanded):not(.nav-pinned):has(.sidebar:hover) .sidebar .side-status span:not(.status-dot),
  .shell:not(.nav-expanded):not(.nav-pinned):has(.sidebar:hover) .sidebar #networkHint {
    display: block !important;
    flex: 0 0 0 !important;
    width: 0 !important;
    max-width: 0 !important;
    min-width: 0 !important;
    max-height: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding-inline: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    transform: translateX(-8px) !important;
    pointer-events: none !important;
  }

  .sidebar .nav-item,
  .sidebar .brand,
  .sidebar .workspace-switch {
    transition-duration: 140ms !important;
    will-change: auto !important;
  }

  .sidebar .nav-item:hover,
  .shell.nav-expanded .sidebar .nav-item:hover {
    transform: none !important;
  }

  .shell.nav-expanded .sidebar .brand {
    min-height: 78px !important;
    padding: 6px 8px 11px !important;
  }

  .shell.nav-expanded .sidebar .brand div:not(.brand-mark),
  .shell.nav-expanded:has(.sidebar:hover) .sidebar .brand div:not(.brand-mark),
  .shell.nav-expanded:has(.sidebar:focus-within) .sidebar .brand div:not(.brand-mark) {
    width: 100% !important;
    max-width: none !important;
  }

  .shell.nav-expanded .sidebar .brand-wordmark,
  .shell.nav-expanded:has(.sidebar:hover) .sidebar .brand-wordmark,
  .shell.nav-expanded:has(.sidebar:focus-within) .sidebar .brand-wordmark {
    width: 100% !important;
    inline-size: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  .shell.nav-expanded .sidebar .brand-lockup span,
  .shell.nav-expanded:has(.sidebar:hover) .sidebar .brand-lockup span,
  .shell.nav-expanded:has(.sidebar:focus-within) .sidebar .brand-lockup span {
    max-width: 100% !important;
    font-size: 9.5px !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
  }

  .sidebar .side-status {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    min-height: 18px !important;
    max-height: 18px !important;
    padding: 4px 0 0 !important;
    overflow: hidden !important;
    border-top: 1px solid rgba(255,255,255,.08) !important;
  }

  .sidebar .side-status > div {
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
    overflow: hidden !important;
    display: grid !important;
    place-items: center !important;
  }

  .sidebar .side-status span:not(.status-dot),
  .sidebar #networkHint,
  .shell.nav-expanded .sidebar .side-status span:not(.status-dot),
  .shell.nav-expanded .sidebar #networkHint {
    display: none !important;
    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
  }

  .workspace-switch {
    min-width: 0 !important;
    overflow: hidden !important;
  }

  .workspace-switch label,
  .workspace-switch select {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .workspace-switch select {
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .topbar {
    z-index: 2600 !important;
    overflow: visible !important;
  }

  .top-actions,
  .command-wrap {
    position: relative !important;
    z-index: 2700 !important;
    overflow: visible !important;
  }

  .command-menu {
    z-index: 9999 !important;
    border-radius: 12px !important;
    max-height: min(72vh, 560px) !important;
    overflow: auto !important;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .24) !important;
  }
}

@media (max-width: 640px) {
  .chat-panel,
  .laercio-chat-panel {
    inset: 0 !important;
    width: auto !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    border-radius: 0 !important;
  }

  .chat-launch,
  .laercio-chat-btn {
    right: 12px !important;
    bottom: 12px !important;
  }

  .chat-quickbar,
  .laercio-chat-quickbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .chat-suggestions,
  .laercio-chat-suggestions {
    max-height: 94px !important;
  }

  .prompt-library {
    max-height: 190px !important;
  }
}

@media (max-height: 820px) and (min-width: 641px) {
  :root {
    --lc-chat-w: min(380px, calc(100vw - 24px));
    /* Compacto em telas baixas: NUNCA enche a tela (antes estava 900px e o chat
       esticava cobrindo o conteúdo). Cap por altura disponível, deixando respiro. */
    --lc-chat-h: min(520px, calc(100dvh - 168px));
    --lc-chat-safe-top: 86px;
    --lc-chat-open-bottom: 12px;
    --lc-chat-rest-bottom: 60px;
    --lc-chat-right: 12px;
  }

  .chat-head,
  .laercio-chat-header {
    min-height: 54px !important;
    padding: 8px 10px !important;
  }

  .chat-face,
  .laercio-chat-header .laercio-badge-mark {
    width: 42px !important;
    height: 42px !important;
    flex-basis: 42px !important;
  }

  .chat-head strong,
  .laercio-chat-title {
    font-size: 13px !important;
  }

  .chat-head span,
  .laercio-chat-subtitle {
    font-size: 10px !important;
  }

  .chat-quickbar,
  .laercio-chat-quickbar {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    gap: 6px !important;
    padding: 7px 8px !important;
    scrollbar-width: thin;
  }

  .chat-tool,
  .laercio-chat-tool {
    flex: 0 0 auto !important;
    min-height: 30px !important;
    padding: 6px 9px !important;
    font-size: 10.5px !important;
    white-space: nowrap !important;
  }

  .chat-messages,
  .laercio-chat-messages {
    padding: 11px 10px 9px !important;
    gap: 10px !important;
  }

  .msg.ai,
  .laercio-msg-ai {
    grid-template-columns: 30px minmax(0, 1fr) !important;
    column-gap: 7px !important;
  }

  .msg-avatar,
  .laercio-msg-avatar {
    width: 30px !important;
    height: 30px !important;
  }

  .bubble,
  .laercio-msg-bubble {
    padding: 9px 10px !important;
    font-size: 12.5px !important;
    line-height: 1.48 !important;
  }

  .chat-suggestions,
  .laercio-chat-suggestions {
    max-height: 58px !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 7px 8px !important;
    gap: 5px !important;
    scrollbar-width: thin;
  }

  .chip,
  .laercio-suggestion,
  .laercio-suggestion-chip {
    flex: 0 0 auto !important;
    max-width: 230px !important;
    min-height: 28px !important;
    padding: 5px 9px !important;
    font-size: 10.5px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .chat-input,
  .laercio-chat-input-area {
    padding: 8px !important;
    gap: 7px !important;
  }

  .chat-input textarea,
  .laercio-chat-input {
    min-height: 44px !important;
    height: 44px !important;
    max-height: 72px !important;
    padding: 8px 9px !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
  }

  .chat-input .icon-btn,
  .laercio-chat-send {
    width: 40px !important;
    min-width: 40px !important;
    height: 44px !important;
  }

  .prompt-library.open {
    top: 54px !important;
    bottom: 60px !important;
  }
}

/* Chat do Laercinho 1.9.169: mais area de leitura, sugestoes em trilho horizontal
   e acabamento glass consistente com a nova identidade visual do app. */
:root {
  --lc-chat-w: min(660px, calc(100vw - 34px));
  --lc-chat-h: min(790px, calc(100dvh - 78px));
  --lc-chat-open-bottom: 14px;
  --lc-chat-rest-bottom: 68px;
  --lc-chat-right: 18px;
}

.chat-panel,
.laercio-chat-panel {
  background:
    linear-gradient(180deg, rgba(248, 253, 250, .94), rgba(241, 247, 244, .91)),
    radial-gradient(circle at 14% -8%, rgba(187, 247, 208, .34), transparent 38%),
    radial-gradient(circle at 96% 14%, rgba(45, 212, 191, .12), transparent 34%) !important;
  border: 1px solid rgba(255, 255, 255, .68) !important;
  border-radius: 18px !important;
  box-shadow:
    0 34px 110px rgba(15, 23, 42, .26),
    0 18px 42px rgba(21, 128, 61, .12),
    inset 0 1px 0 rgba(255,255,255,.92) !important;
  backdrop-filter: blur(22px) saturate(1.22) !important;
  -webkit-backdrop-filter: blur(22px) saturate(1.22) !important;
}

.chat-panel.open,
.laercio-chat-panel.open {
  bottom: var(--lc-chat-open-bottom) !important;
}

.chat-head,
.laercio-chat-header {
  min-height: 58px !important;
  padding: 10px 12px !important;
  background:
    linear-gradient(135deg, rgba(5, 46, 22, .96), rgba(21, 128, 61, .92)),
    radial-gradient(circle at 18% 0%, rgba(255,255,255,.22), transparent 36%) !important;
  border-bottom: 1px solid rgba(220, 252, 231, .22) !important;
}

.chat-face,
.laercio-chat-header .laercio-badge-mark {
  width: 46px !important;
  height: 46px !important;
  flex-basis: 46px !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.24), 0 0 0 5px rgba(220,252,231,.10) !important;
}

.chat-head strong,
.laercio-chat-title {
  font-size: 14px !important;
}

.chat-head span,
.laercio-chat-subtitle {
  font-size: 11px !important;
  color: rgba(236, 253, 245, .84) !important;
}

.chat-close,
.chat-head .icon-btn,
.laercio-chat-close {
  background: rgba(255,255,255,.20) !important;
  border-color: rgba(255,255,255,.34) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.38) !important;
}

.chat-quickbar,
.laercio-chat-quickbar {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  min-height: 48px !important;
  padding: 8px 12px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.72), rgba(240,253,244,.54)) !important;
  border-bottom: 1px solid rgba(187, 247, 208, .48) !important;
  scrollbar-width: thin;
}

.chat-quickbar::-webkit-scrollbar,
.chat-suggestions::-webkit-scrollbar {
  height: 6px !important;
}

.chat-quickbar::-webkit-scrollbar-thumb,
.chat-suggestions::-webkit-scrollbar-thumb {
  background: rgba(21, 128, 61, .28) !important;
  border-radius: 999px !important;
}

.chat-tool,
.laercio-chat-tool {
  flex: 0 0 auto !important;
  min-width: 112px !important;
  min-height: 32px !important;
  padding: 7px 12px !important;
  border-radius: 999px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.86), rgba(236,253,245,.68)) !important;
  border: 1px solid rgba(21, 128, 61, .22) !important;
  color: #123524 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.94), 0 8px 18px rgba(15,23,42,.05) !important;
}

.chat-tool:hover,
.laercio-chat-tool:hover,
.chat-tool.is-on {
  color: #052e16 !important;
  background:
    linear-gradient(180deg, rgba(220,252,231,.96), rgba(187,247,208,.72)) !important;
  border-color: rgba(21, 128, 61, .44) !important;
}

#chatSugBtn {
  font-size: 0 !important;
}

#chatSugBtn::before {
  content: 'Sugestões';
  font-size: 11px;
}

.chat-messages,
.laercio-chat-messages {
  padding: 18px 16px 12px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.62), rgba(248,250,252,.42)),
    radial-gradient(circle at 10% 6%, rgba(187,247,208,.18), transparent 34%),
    radial-gradient(circle at 92% 90%, rgba(20,184,166,.09), transparent 38%) !important;
}

.msg,
.laercio-msg {
  max-width: min(94%, 600px) !important;
}

.msg.ai,
.laercio-msg-ai {
  max-width: min(96%, 620px) !important;
}

.bubble,
.laercio-msg-bubble {
  border-radius: 16px !important;
  padding: 12px 14px !important;
  color: #172033 !important;
  background: rgba(255,255,255,.92) !important;
  border: 1px solid rgba(187, 247, 208, .52) !important;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .07), inset 0 1px 0 rgba(255,255,255,.92) !important;
}

.msg.user .bubble,
.laercio-msg-user .laercio-msg-bubble {
  color: #fff !important;
  background:
    linear-gradient(135deg, rgba(22, 101, 52, .98), rgba(21, 128, 61, .94)) !important;
  border-color: rgba(134, 239, 172, .34) !important;
}

.ai-answer {
  gap: 10px !important;
}

.ai-heading {
  color: #0f5132 !important;
  font-size: 13.5px !important;
}

.ai-paragraph,
.ai-list {
  color: #263445 !important;
}

.chat-suggestions,
.laercio-chat-suggestions {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  max-height: 52px !important;
  min-height: 52px !important;
  padding: 8px 12px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.82), rgba(240,253,244,.58)) !important;
  border-top: 1px solid rgba(187, 247, 208, .56) !important;
  scrollbar-width: thin;
}

.chat-panel.show-sugestoes .chat-suggestions {
  position: static !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  max-height: 52px !important;
  border-inline: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  z-index: auto !important;
}

.chat-panel.show-sugestoes .chat-messages::after {
  display: none !important;
}

.chip,
.laercio-suggestion,
.laercio-suggestion-chip {
  flex: 0 0 auto !important;
  max-width: 245px !important;
  min-height: 32px !important;
  padding: 7px 12px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(236,253,245,.72)) !important;
  border-color: rgba(21, 128, 61, .22) !important;
  color: #1e4b34 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.88) !important;
}

.chip:hover,
.laercio-suggestion:hover,
.laercio-suggestion-chip:hover {
  transform: translateY(-1px);
  background:
    linear-gradient(180deg, rgba(220,252,231,.98), rgba(187,247,208,.76)) !important;
}

.chat-input,
.laercio-chat-input-area {
  padding: 10px 12px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.86), rgba(248,250,252,.82)) !important;
  border-top: 1px solid rgba(187, 247, 208, .54) !important;
}

.chat-input textarea,
.laercio-chat-input {
  min-height: 46px !important;
  height: 46px !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,.92) !important;
  border-color: rgba(100, 116, 139, .42) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.92) !important;
}

.chat-input textarea:focus,
.laercio-chat-input:focus {
  border-color: rgba(21, 128, 61, .52) !important;
  box-shadow: 0 0 0 3px rgba(34, 197, 94, .13), inset 0 1px 0 rgba(255,255,255,.92) !important;
}

.chat-input .icon-btn,
.laercio-chat-send {
  border-radius: 12px !important;
}

.prompt-library.open {
  top: 58px !important;
  bottom: 110px !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.94) !important;
  border: 1px solid rgba(187,247,208,.54) !important;
  box-shadow: 0 24px 70px rgba(15,23,42,.20), inset 0 1px 0 rgba(255,255,255,.90) !important;
  backdrop-filter: blur(18px) saturate(1.18);
  -webkit-backdrop-filter: blur(18px) saturate(1.18);
}

@media (max-height: 820px) and (min-width: 641px) {
  :root {
    --lc-chat-w: min(620px, calc(100vw - 28px));
    --lc-chat-h: min(640px, calc(100dvh - 94px));
    --lc-chat-open-bottom: 10px;
  }

  .chat-head,
  .laercio-chat-header {
    min-height: 50px !important;
    padding: 7px 10px !important;
  }

  .chat-face,
  .laercio-chat-header .laercio-badge-mark {
    width: 38px !important;
    height: 38px !important;
    flex-basis: 38px !important;
  }

  .chat-quickbar,
  .laercio-chat-quickbar {
    min-height: 42px !important;
    padding: 6px 10px !important;
  }

  .chat-suggestions,
  .laercio-chat-suggestions {
    min-height: 44px !important;
    max-height: 44px !important;
    padding: 6px 10px !important;
  }

  .chat-input,
  .laercio-chat-input-area {
    padding: 8px 10px !important;
  }

  .chat-input textarea,
  .laercio-chat-input {
    min-height: 42px !important;
    height: 42px !important;
  }
}
