/*
  Button component layer.
  Loaded after app.css while legacy button rules are retired gradually.
*/

body.has-app-sidebar,
body.client-portal-body{
  --btn-font-size: .86rem;
  --btn-font-weight: 800;
  --btn-height: 38px;
  --btn-height-sm: 32px;
  --btn-height-lg: 46px;
  --btn-gap: 8px;
  --btn-radius: 8px;
  --btn-pad-x: 14px;
  --btn-icon-size: 38px;
  --btn-shadow: none;
  --btn-focus-ring: 0 0 0 3px rgb(var(--accent-rgb, 17 118 83) / .18);
  --btn-neutral-bg: #ffffff;
  --btn-neutral-bg-hover: #eef6f2;
  --btn-neutral-border: #d8e3e8;
  --btn-neutral-text: #17202a;
  --btn-primary-bg: #0f9f6e;
  --btn-primary-bg-hover: #0b8f62;
  --btn-primary-border: #0f9f6e;
  --btn-primary-text: #ffffff;
  --btn-danger-bg: #dc2626;
  --btn-danger-bg-hover: #b91c1c;
  --btn-danger-border: #dc2626;
  --btn-danger-text: #ffffff;
  --btn-warning-bg: #b45309;
  --btn-warning-bg-hover: #92400e;
  --btn-warning-border: #b45309;
  --btn-warning-text: #ffffff;
  --btn-view-bg: #ecfeff;
  --btn-view-bg-hover: #cffafe;
  --btn-view-border: rgb(14 116 144 / .42);
  --btn-view-text: #0e7490;
  --btn-edit-bg: #fff7ed;
  --btn-edit-bg-hover: #ffedd5;
  --btn-edit-border: rgb(180 83 9 / .42);
  --btn-edit-text: #b45309;
  --btn-settings-bg: #f3e8ff;
  --btn-settings-bg-hover: #ead6ff;
  --btn-settings-border: rgb(126 34 206 / .38);
  --btn-settings-text: #7e22ce;
  --btn-transfer-bg: #eef2ff;
  --btn-transfer-bg-hover: #e0e7ff;
  --btn-transfer-border: rgb(79 70 229 / .38);
  --btn-transfer-text: #4f46e5;
  --btn-people-bg: #ecfdf5;
  --btn-people-bg-hover: #d1fae5;
  --btn-people-border: rgb(4 120 87 / .36);
  --btn-people-text: #047857;
  --btn-mail-bg: #eff6ff;
  --btn-mail-bg-hover: #dbeafe;
  --btn-mail-border: rgb(29 78 216 / .34);
  --btn-mail-text: #1d4ed8;
}

html[data-theme="dark"] body.has-app-sidebar,
html[data-theme="dark"] body.client-portal-body{
  --btn-focus-ring: 0 0 0 3px rgb(45 212 191 / .18);
  --btn-neutral-bg: #151515;
  --btn-neutral-bg-hover: #1d1d1d;
  --btn-neutral-border: #2a2a2a;
  --btn-neutral-text: #e5e7eb;
  --btn-primary-bg: #00a86f;
  --btn-primary-bg-hover: #008f5f;
  --btn-primary-border: #00a86f;
  --btn-primary-text: #ffffff;
  --btn-danger-bg: #dc2626;
  --btn-danger-bg-hover: #b91c1c;
  --btn-danger-border: #dc2626;
  --btn-danger-text: #ffffff;
  --btn-warning-bg: #b45309;
  --btn-warning-bg-hover: #92400e;
  --btn-warning-border: #b45309;
  --btn-warning-text: #ffffff;
  --btn-view-bg: #082522;
  --btn-view-bg-hover: #0c332f;
  --btn-view-border: rgb(45 212 191 / .44);
  --btn-view-text: #5eead4;
  --btn-edit-bg: #241a08;
  --btn-edit-bg-hover: #30230b;
  --btn-edit-border: rgb(245 158 11 / .46);
  --btn-edit-text: #fbbf24;
  --btn-settings-bg: #1f1730;
  --btn-settings-bg-hover: #2a1e41;
  --btn-settings-border: rgb(192 132 252 / .42);
  --btn-settings-text: #c084fc;
  --btn-transfer-bg: #201a2f;
  --btn-transfer-bg-hover: #2a223f;
  --btn-transfer-border: rgb(167 139 250 / .42);
  --btn-transfer-text: #a78bfa;
  --btn-people-bg: #08251c;
  --btn-people-bg-hover: #0b3327;
  --btn-people-border: rgb(52 211 153 / .38);
  --btn-people-text: #6ee7b7;
  --btn-mail-bg: #101d36;
  --btn-mail-bg-hover: #162748;
  --btn-mail-border: rgb(96 165 250 / .38);
  --btn-mail-text: #93c5fd;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  .btn,
  a.btn,
  button.btn,
  .icon-btn,
  a.icon-btn,
  button.icon-btn,
  a.chip,
  button.chip,
  .mhd-action-btn,
  .tk-row-action-btn,
  .tk-filter-icon-btn,
  .tk-kpi-filter-btn,
  .ap-action-btn,
  .mhd-shortcut-btn,
  .mhd-dock-action,
  .docs-attachment-remove,
  .contact-btn,
  .contact-more-btn
){
  appearance: none !important;
  align-items: center !important;
  background: var(--btn-neutral-bg) !important;
  background-image: none !important;
  border: 1px solid var(--btn-neutral-border) !important;
  border-radius: var(--btn-radius) !important;
  box-shadow: var(--btn-shadow) !important;
  color: var(--btn-neutral-text) !important;
  cursor: pointer !important;
  display: inline-flex !important;
  font-size: var(--btn-font-size) !important;
  font-weight: var(--btn-font-weight) !important;
  gap: var(--btn-gap) !important;
  justify-content: center !important;
  line-height: 1.15 !important;
  min-height: var(--btn-height) !important;
  min-width: 0 !important;
  padding: 0 var(--btn-pad-x) !important;
  text-align: center !important;
  text-decoration: none !important;
  text-shadow: none !important;
  transform: none !important;
  transition: background-color .14s ease, border-color .14s ease, color .14s ease, opacity .14s ease !important;
  user-select: none !important;
  white-space: nowrap !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  .btn,
  a.btn,
  button.btn,
  .icon-btn,
  a.icon-btn,
  button.icon-btn,
  a.chip,
  button.chip,
  .mhd-action-btn,
  .tk-row-action-btn,
  .tk-filter-icon-btn,
  .tk-kpi-filter-btn,
  .ap-action-btn,
  .mhd-shortcut-btn,
  .mhd-dock-action,
  .docs-attachment-remove,
  .contact-btn,
  .contact-more-btn
):hover{
  background: var(--btn-neutral-bg-hover) !important;
  background-image: none !important;
  border-color: var(--btn-neutral-border) !important;
  color: var(--btn-neutral-text) !important;
  box-shadow: var(--btn-shadow) !important;
  transform: none !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  .btn,
  .icon-btn,
  a.chip,
  button.chip,
  .mhd-action-btn,
  .tk-row-action-btn,
  .tk-filter-icon-btn,
  .tk-kpi-filter-btn,
  .ap-action-btn,
  .mhd-shortcut-btn,
  .mhd-dock-action,
  .docs-attachment-remove,
  .contact-btn,
  .contact-more-btn
):focus-visible{
  outline: 0 !important;
  box-shadow: var(--btn-focus-ring) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(.btn.sm, .btn-small, a.chip.sm, button.chip.sm){
  min-height: var(--btn-height-sm) !important;
  padding-inline: 10px !important;
  font-size: .78rem !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(.btn.lg, .btn-large){
  min-height: var(--btn-height-lg) !important;
  padding-inline: 18px !important;
  font-size: .94rem !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  .icon-btn,
  .mhd-action-btn--icon,
  .tk-row-action-btn,
  .ap-action-btn,
  .mhd-dock-action,
  .docs-attachment-remove,
  .contact-more-btn
){
  aspect-ratio: 1 / 1 !important;
  height: var(--btn-icon-size) !important;
  min-height: var(--btn-icon-size) !important;
  min-width: var(--btn-icon-size) !important;
  padding: 0 !important;
  width: var(--btn-icon-size) !important;
}

body:is(.has-app-sidebar, .client-portal-body) .mhd-shortcut-btn{
  --btn-icon-size: 32px;
  border-radius: 7px !important;
  flex: 0 0 var(--btn-icon-size) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  .btn,
  .icon-btn,
  a.chip,
  button.chip,
  .mhd-action-btn,
  .tk-row-action-btn,
  .tk-filter-icon-btn,
  .tk-kpi-filter-btn,
  .ap-action-btn,
  .mhd-shortcut-btn,
  .mhd-dock-action
) :is(i[data-lucide], svg),
body:is(.has-app-sidebar, .client-portal-body) :is(
  .btn,
  .icon-btn,
  a.chip,
  button.chip,
  .mhd-action-btn,
  .tk-row-action-btn,
  .tk-filter-icon-btn,
  .tk-kpi-filter-btn,
  .ap-action-btn,
  .mhd-shortcut-btn,
  .mhd-dock-action
) > :is(i[data-lucide], svg){
  color: currentColor !important;
  flex: 0 0 auto !important;
  height: 1.05em !important;
  opacity: 1 !important;
  stroke: currentColor !important;
  width: 1.05em !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  .btn[disabled],
  button[disabled],
  .btn.is-disabled,
  .icon-btn[disabled],
  .icon-btn.is-disabled,
  .mhd-action-btn[disabled],
  .mhd-action-btn.is-disabled,
  [aria-disabled="true"]
){
  cursor: not-allowed !important;
  opacity: .52 !important;
  pointer-events: none !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(.btn.ghost:not(.mhd-filterbar__filter-btn):not(.tk-adv-toggle), .btn.secondary, a.chip, button.chip){
  background: var(--btn-neutral-bg) !important;
  border-color: var(--btn-neutral-border) !important;
  color: var(--btn-neutral-text) !important;
}

/* Specificity bridge for semantic tones until legacy app.css button blocks are removed. */
body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .btn.primary,
  .btn.success,
  .btn.btn-new-ticket,
  .mhd-action-btn--new,
  .mhd-action-btn--save,
  [data-action-tone="new"],
  [data-action-tone="save"],
  .filters-actions .btn[type="submit"],
  .tk-filters__actions .btn[type="submit"],
  .ch-save-btn,
  #btn-add-ap,
  .ap-participant-launch,
  .mhd-shortcut-btn[data-mhd-shortcut="create"],
  [data-tk-act="close"],
  [data-tkb-act="close"]
){
  background: var(--btn-primary-bg) !important;
  background-image: none !important;
  border-color: var(--btn-primary-border) !important;
  color: var(--btn-primary-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .btn.primary,
  .btn.success,
  .btn.btn-new-ticket,
  .mhd-action-btn--new,
  .mhd-action-btn--save,
  [data-action-tone="new"],
  [data-action-tone="save"],
  .filters-actions .btn[type="submit"],
  .tk-filters__actions .btn[type="submit"],
  .ch-save-btn,
  #btn-add-ap,
  .ap-participant-launch,
  .mhd-shortcut-btn[data-mhd-shortcut="create"],
  [data-tk-act="close"],
  [data-tkb-act="close"]
):hover{
  background: var(--btn-primary-bg-hover) !important;
  border-color: var(--btn-primary-bg-hover) !important;
  color: var(--btn-primary-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .btn.danger,
  .btn.ghost.danger,
  a.chip.danger,
  button.chip.danger,
  .icon-btn.danger,
  .mhd-action-btn--danger,
  [data-action-tone="danger"],
  .tk-row-action-btn.is-delete,
  .ap-action-btn.is-delete,
  [data-tk-act="cancel"],
  [data-tk-act="delete"],
  [data-tkb-act="cancel"],
  [data-tkb-act="delete"]
){
  background: var(--btn-danger-bg) !important;
  background-image: none !important;
  border-color: var(--btn-danger-border) !important;
  color: var(--btn-danger-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .btn.danger,
  .btn.ghost.danger,
  a.chip.danger,
  button.chip.danger,
  .icon-btn.danger,
  .mhd-action-btn--danger,
  [data-action-tone="danger"],
  .tk-row-action-btn.is-delete,
  .ap-action-btn.is-delete,
  [data-tk-act="cancel"],
  [data-tk-act="delete"],
  [data-tkb-act="cancel"],
  [data-tkb-act="delete"]
):hover{
  background: var(--btn-danger-bg-hover) !important;
  border-color: var(--btn-danger-bg-hover) !important;
  color: var(--btn-danger-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .mhd-action-btn--warning,
  .mhd-action-btn--reset,
  .mhd-reopen-btn,
  .btn-finalizar,
  .ap-schedule-launch,
  #ap-save-finalize,
  [data-action-tone="reset"],
  [data-action-tone="warning"],
  [data-tk-act="reopen"],
  [data-tkb-act="reopen"]
){
  background: var(--btn-warning-bg) !important;
  background-image: none !important;
  border-color: var(--btn-warning-border) !important;
  color: var(--btn-warning-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .mhd-action-btn--warning,
  .mhd-action-btn--reset,
  .mhd-reopen-btn,
  .btn-finalizar,
  .ap-schedule-launch,
  #ap-save-finalize,
  [data-action-tone="reset"],
  [data-action-tone="warning"],
  [data-tk-act="reopen"],
  [data-tkb-act="reopen"]
):hover{
  background: var(--btn-warning-bg-hover) !important;
  border-color: var(--btn-warning-bg-hover) !important;
  color: var(--btn-warning-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .mhd-action-btn--view,
  .mhd-action-btn--print,
  .mhd-action-btn--filter,
  .tk-row-action-btn.is-view,
  .tk-row-action-btn.is-print,
  .tk-filter-icon-btn,
  .tk-kpi-filter-btn,
  [data-action-tone="view"],
  [data-action-tone="print"],
  [data-action-tone="filter"],
  [data-tk-act="print"],
  [data-tkb-act="print"]
){
  background: var(--btn-view-bg) !important;
  background-image: none !important;
  border-color: var(--btn-view-border) !important;
  color: var(--btn-view-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .mhd-action-btn--view,
  .mhd-action-btn--print,
  .mhd-action-btn--filter,
  .tk-row-action-btn.is-view,
  .tk-row-action-btn.is-print,
  .tk-filter-icon-btn,
  .tk-kpi-filter-btn,
  [data-action-tone="view"],
  [data-action-tone="print"],
  [data-action-tone="filter"],
  [data-tk-act="print"],
  [data-tkb-act="print"]
):hover{
  background: var(--btn-view-bg-hover) !important;
  border-color: var(--btn-view-border) !important;
  color: var(--btn-view-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .mhd-action-btn--edit,
  .mhd-btn-edit,
  .tk-row-action-btn.is-edit,
  .ap-action-btn.is-edit,
  .mhd-shortcut-btn[data-mhd-shortcut="edit"],
  [data-action-tone="edit"]
){
  background: var(--btn-edit-bg) !important;
  background-image: none !important;
  border-color: var(--btn-edit-border) !important;
  color: var(--btn-edit-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .mhd-action-btn--edit,
  .mhd-btn-edit,
  .tk-row-action-btn.is-edit,
  .ap-action-btn.is-edit,
  .mhd-shortcut-btn[data-mhd-shortcut="edit"],
  [data-action-tone="edit"]
):hover{
  background: var(--btn-edit-bg-hover) !important;
  border-color: var(--btn-edit-border) !important;
  color: var(--btn-edit-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .mhd-action-btn--settings,
  .tk-row-action-btn.is-more,
  [data-action-tone="settings"],
  [data-tk-actions],
  [data-tkb-actions]
){
  background: var(--btn-settings-bg) !important;
  background-image: none !important;
  border-color: var(--btn-settings-border) !important;
  color: var(--btn-settings-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .mhd-action-btn--settings,
  .tk-row-action-btn.is-more,
  [data-action-tone="settings"],
  [data-tk-actions],
  [data-tkb-actions]
):hover{
  background: var(--btn-settings-bg-hover) !important;
  border-color: var(--btn-settings-border) !important;
  color: var(--btn-settings-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .mhd-action-btn--transfer,
  [data-action-tone="transfer"],
  [data-tk-act="transfer"],
  [data-tkb-act="transfer"]
){
  background: var(--btn-transfer-bg) !important;
  background-image: none !important;
  border-color: var(--btn-transfer-border) !important;
  color: var(--btn-transfer-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .mhd-action-btn--transfer,
  [data-action-tone="transfer"],
  [data-tk-act="transfer"],
  [data-tkb-act="transfer"]
):hover{
  background: var(--btn-transfer-bg-hover) !important;
  border-color: var(--btn-transfer-border) !important;
  color: var(--btn-transfer-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .mhd-action-btn--people,
  [data-action-tone="people"]
){
  background: var(--btn-people-bg) !important;
  background-image: none !important;
  border-color: var(--btn-people-border) !important;
  color: var(--btn-people-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .mhd-action-btn--people,
  [data-action-tone="people"]
):hover{
  background: var(--btn-people-bg-hover) !important;
  border-color: var(--btn-people-border) !important;
  color: var(--btn-people-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .mhd-action-btn--mail,
  [data-action-tone="mail"]
){
  background: var(--btn-mail-bg) !important;
  background-image: none !important;
  border-color: var(--btn-mail-border) !important;
  color: var(--btn-mail-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(
  #mhdButtonLayer,
  .mhd-action-btn--mail,
  [data-action-tone="mail"]
):hover{
  background: var(--btn-mail-bg-hover) !important;
  border-color: var(--btn-mail-border) !important;
  color: var(--btn-mail-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) .btn-new-ticket__dots{
  background: currentColor !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  color: inherit !important;
  display: inline-block !important;
  height: 8px !important;
  margin-left: 2px !important;
  opacity: .72 !important;
  width: 8px !important;
}

body:is(.has-app-sidebar, .client-portal-body) .btn-new-ticket__dots::before,
body:is(.has-app-sidebar, .client-portal-body) .btn-new-ticket__dots::after{
  content: none !important;
  display: none !important;
}

body:is(.has-app-sidebar, .client-portal-body) :is(.btn, a.chip, button.chip, .mhd-action-btn) .kbd-hint{
  align-items: center !important;
  background: rgb(255 255 255 / .14) !important;
  border: 1px solid rgb(255 255 255 / .32) !important;
  border-radius: 999px !important;
  color: currentColor !important;
  display: inline-flex !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  min-height: 18px !important;
  padding: 0 7px !important;
}

/* Ticket filters: same controls in list and Kanban. */
body:is(.has-app-sidebar, .client-portal-body) .page-chamados :is(.tk-adv-toggle, .tk-filter-icon-btn){
  min-height: var(--btn-height) !important;
  border-radius: var(--btn-radius) !important;
  gap: 8px !important;
  padding: 0 13px !important;
}

body:is(.has-app-sidebar, .client-portal-body) .page-chamados :is(
  .tk-adv-toggle,
  .tk-filter-icon-btn,
  .tk-filters__actions .btn.ghost,
  .filters-actions .btn.ghost
):not([data-tk-remember]):not([data-tkb-save-filters]){
  background: var(--btn-view-bg) !important;
  background-image: none !important;
  border-color: var(--btn-view-border) !important;
  color: var(--btn-view-text) !important;
  box-shadow: none !important;
}

body:is(.has-app-sidebar, .client-portal-body) .page-chamados :is(
  .tk-adv-toggle,
  .tk-filter-icon-btn,
  .tk-filters__actions .btn.ghost,
  .filters-actions .btn.ghost
):not([data-tk-remember]):not([data-tkb-save-filters]):hover{
  background: var(--btn-view-bg-hover) !important;
  border-color: var(--btn-view-border) !important;
  color: var(--btn-view-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) .page-chamados :is(.tk-adv-toggle.is-on, .tk-adv-toggle[aria-expanded="true"]){
  background: var(--btn-primary-bg) !important;
  border-color: var(--btn-primary-border) !important;
  color: var(--btn-primary-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) .page-chamados :is([data-tk-remember], [data-tkb-save-filters]){
  background: var(--btn-warning-bg) !important;
  background-image: none !important;
  border-color: var(--btn-warning-border) !important;
  box-shadow: none !important;
  color: var(--btn-warning-text) !important;
  position: relative !important;
}

body:is(.has-app-sidebar, .client-portal-body) .page-chamados :is([data-tk-remember], [data-tkb-save-filters]):hover{
  background: var(--btn-warning-bg-hover) !important;
  border-color: var(--btn-warning-bg-hover) !important;
  color: var(--btn-warning-text) !important;
}

body:is(.has-app-sidebar, .client-portal-body) .page-chamados :is([data-tk-remember], [data-tkb-save-filters]) .tk-remember-dot{
  background: #22c55e !important;
  border: 1px solid rgb(255 255 255 / .92) !important;
  border-radius: 999px !important;
  box-shadow: 0 0 0 3px rgb(34 197 94 / .22) !important;
  height: 8px !important;
  opacity: 0;
  position: absolute !important;
  right: 8px !important;
  top: 7px !important;
  transform: scale(.6);
  transition: opacity .14s ease, transform .14s ease !important;
  width: 8px !important;
}

body:is(.has-app-sidebar, .client-portal-body) .page-chamados :is([data-tk-remember], [data-tkb-save-filters])[data-on="1"] .tk-remember-dot{
  opacity: 1;
  transform: scale(1);
}

/* Tickets filter actions: neutral outline across Lista and Kanban.
   Kept extra-specific while the legacy app.css ticket blocks are being retired. */
body.has-app-sidebar,
body.client-portal-body{
  --btn-filter-bg: transparent;
  --btn-filter-bg-hover: transparent;
  --btn-filter-border: var(--btn-neutral-border);
  --btn-filter-border-hover: var(--btn-neutral-border);
  --btn-filter-text: var(--btn-neutral-text);
  --btn-filter-dot-off: #94a3b8;
  --btn-filter-dot-on: #0f9f6e;
}

html[data-theme="dark"] body.has-app-sidebar,
html[data-theme="dark"] body.client-portal-body{
  --btn-filter-bg: transparent;
  --btn-filter-bg-hover: transparent;
  --btn-filter-border: #303030;
  --btn-filter-border-hover: #303030;
  --btn-filter-text: #e5e7eb;
  --btn-filter-dot-off: #6b7280;
  --btn-filter-dot-on: #00bc7d;
}

body.has-app-sidebar.has-app-sidebar :is(#ticketsPage, #ticketsKanbanPage, #ticketsDocsPage).page-chamados.page-chamados :is(
  .tk-adv-toggle,
  [data-tk-clear],
  [data-tkb-clear-filters],
  [data-tk-remember],
  [data-tkb-save-filters]
),
body.client-portal-body.client-portal-body :is(#ticketsPage, #ticketsKanbanPage, #ticketsDocsPage).page-chamados.page-chamados :is(
  .tk-adv-toggle,
  [data-tk-clear],
  [data-tkb-clear-filters],
  [data-tk-remember],
  [data-tkb-save-filters]
){
  background: var(--btn-filter-bg) !important;
  background-image: none !important;
  border-color: var(--btn-filter-border) !important;
  box-shadow: none !important;
  color: var(--btn-filter-text) !important;
  filter: none !important;
  min-height: var(--btn-height) !important;
  text-shadow: none !important;
}

body.has-app-sidebar.has-app-sidebar :is(#ticketsPage, #ticketsKanbanPage, #ticketsDocsPage).page-chamados.page-chamados :is(
  .tk-adv-toggle,
  [data-tk-clear],
  [data-tkb-clear-filters],
  [data-tk-remember],
  [data-tkb-save-filters]
):is(:hover, :focus-visible),
body.client-portal-body.client-portal-body :is(#ticketsPage, #ticketsKanbanPage, #ticketsDocsPage).page-chamados.page-chamados :is(
  .tk-adv-toggle,
  [data-tk-clear],
  [data-tkb-clear-filters],
  [data-tk-remember],
  [data-tkb-save-filters]
):is(:hover, :focus-visible){
  background: var(--btn-filter-bg-hover) !important;
  background-image: none !important;
  border-color: var(--btn-filter-border-hover) !important;
  color: var(--btn-filter-text) !important;
  box-shadow: none !important;
}

body.has-app-sidebar.has-app-sidebar :is(#ticketsPage, #ticketsKanbanPage, #ticketsDocsPage).page-chamados.page-chamados :is(
  .tk-adv-toggle.is-on,
  .tk-adv-toggle[aria-expanded="true"]
),
body.client-portal-body.client-portal-body :is(#ticketsPage, #ticketsKanbanPage, #ticketsDocsPage).page-chamados.page-chamados :is(
  .tk-adv-toggle.is-on,
  .tk-adv-toggle[aria-expanded="true"]
){
  background: var(--btn-filter-bg) !important;
  background-image: none !important;
  border-color: var(--btn-filter-border) !important;
  color: var(--btn-filter-text) !important;
}

body.has-app-sidebar.has-app-sidebar :is(#ticketsPage, #ticketsKanbanPage, #ticketsDocsPage).page-chamados.page-chamados :is([data-tk-remember], [data-tkb-save-filters]) .tk-remember-dot,
body.client-portal-body.client-portal-body :is(#ticketsPage, #ticketsKanbanPage, #ticketsDocsPage).page-chamados.page-chamados :is([data-tk-remember], [data-tkb-save-filters]) .tk-remember-dot{
  background: var(--btn-filter-dot-off) !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  display: inline-flex !important;
  flex: 0 0 auto !important;
  height: 7px !important;
  margin-left: 2px !important;
  opacity: .72 !important;
  position: static !important;
  transform: none !important;
  transition: background-color .14s ease, box-shadow .14s ease, opacity .14s ease !important;
  width: 7px !important;
}

body.has-app-sidebar.has-app-sidebar :is(#ticketsPage, #ticketsKanbanPage, #ticketsDocsPage).page-chamados.page-chamados :is([data-tk-remember], [data-tkb-save-filters])[data-on="1"] .tk-remember-dot,
body.client-portal-body.client-portal-body :is(#ticketsPage, #ticketsKanbanPage, #ticketsDocsPage).page-chamados.page-chamados :is([data-tk-remember], [data-tkb-save-filters])[data-on="1"] .tk-remember-dot{
  background: var(--btn-filter-dot-on) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--btn-filter-dot-on) 18%, transparent) !important;
  opacity: 1 !important;
  transform: none !important;
}

/* Chamados filter controls: explicit legacy shield for list and Kanban parity. */
body.has-app-sidebar #ticketsPage.page-chamados-list .tk-head button.icon-btn[data-tk-defaults-open],
body.has-app-sidebar #ticketsKanbanPage.page-chamados-kanban .tk-head button.icon-btn[data-tk-defaults-open],
body.client-portal-body #ticketsPage.page-chamados-list .tk-head button.icon-btn[data-tk-defaults-open],
body.client-portal-body #ticketsKanbanPage.page-chamados-kanban .tk-head button.icon-btn[data-tk-defaults-open]{
  background: transparent !important;
  background-image: none !important;
  border-color: var(--btn-filter-border) !important;
  box-shadow: none !important;
  color: var(--btn-filter-text) !important;
}

body.has-app-sidebar #ticketsPage.page-chamados-list .tk-head button.icon-btn[data-tk-defaults-open]:is(:hover, :focus-visible),
body.has-app-sidebar #ticketsKanbanPage.page-chamados-kanban .tk-head button.icon-btn[data-tk-defaults-open]:is(:hover, :focus-visible),
body.client-portal-body #ticketsPage.page-chamados-list .tk-head button.icon-btn[data-tk-defaults-open]:is(:hover, :focus-visible),
body.client-portal-body #ticketsKanbanPage.page-chamados-kanban .tk-head button.icon-btn[data-tk-defaults-open]:is(:hover, :focus-visible){
  background: var(--btn-filter-bg-hover) !important;
  background-image: none !important;
  border-color: var(--btn-filter-border-hover) !important;
  color: var(--btn-filter-text) !important;
}

body.has-app-sidebar #ticketsPage.page-chamados-list .tk-filters__actions a.btn.ghost.tk-filter-icon-btn[data-tk-clear],
body.has-app-sidebar #ticketsKanbanPage.page-chamados-kanban .tk-filters__actions a.btn.ghost.tk-filter-icon-btn[data-tkb-clear-filters],
body.client-portal-body #ticketsPage.page-chamados-list .tk-filters__actions a.btn.ghost.tk-filter-icon-btn[data-tk-clear],
body.client-portal-body #ticketsKanbanPage.page-chamados-kanban .tk-filters__actions a.btn.ghost.tk-filter-icon-btn[data-tkb-clear-filters]{
  background: var(--btn-warning-bg) !important;
  background-image: none !important;
  border-color: var(--btn-warning-border) !important;
  box-shadow: none !important;
  color: var(--btn-warning-text) !important;
}

body.has-app-sidebar #ticketsPage.page-chamados-list .tk-filters__actions a.btn.ghost.tk-filter-icon-btn[data-tk-clear]:is(:hover, :focus-visible),
body.has-app-sidebar #ticketsKanbanPage.page-chamados-kanban .tk-filters__actions a.btn.ghost.tk-filter-icon-btn[data-tkb-clear-filters]:is(:hover, :focus-visible),
body.client-portal-body #ticketsPage.page-chamados-list .tk-filters__actions a.btn.ghost.tk-filter-icon-btn[data-tk-clear]:is(:hover, :focus-visible),
body.client-portal-body #ticketsKanbanPage.page-chamados-kanban .tk-filters__actions a.btn.ghost.tk-filter-icon-btn[data-tkb-clear-filters]:is(:hover, :focus-visible){
  background: var(--btn-warning-bg-hover) !important;
  background-image: none !important;
  border-color: var(--btn-warning-bg-hover) !important;
  color: var(--btn-warning-text) !important;
}

body.has-app-sidebar #ticketsPage.page-chamados-list .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tk-remember],
body.has-app-sidebar #ticketsKanbanPage.page-chamados-kanban .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tkb-save-filters],
body.client-portal-body #ticketsPage.page-chamados-list .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tk-remember],
body.client-portal-body #ticketsKanbanPage.page-chamados-kanban .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tkb-save-filters]{
  background: transparent !important;
  background-image: none !important;
  border-color: var(--btn-filter-border) !important;
  box-shadow: none !important;
  color: var(--btn-filter-text) !important;
}

body.has-app-sidebar #ticketsPage.page-chamados-list .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tk-remember]:is(:hover, :focus-visible),
body.has-app-sidebar #ticketsKanbanPage.page-chamados-kanban .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tkb-save-filters]:is(:hover, :focus-visible),
body.client-portal-body #ticketsPage.page-chamados-list .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tk-remember]:is(:hover, :focus-visible),
body.client-portal-body #ticketsKanbanPage.page-chamados-kanban .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tkb-save-filters]:is(:hover, :focus-visible){
  background: var(--btn-filter-bg-hover) !important;
  background-image: none !important;
  border-color: var(--btn-filter-border-hover) !important;
  color: var(--btn-filter-text) !important;
}

body.has-app-sidebar #ticketsPage.page-chamados-list .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tk-remember] .tk-remember-dot,
body.has-app-sidebar #ticketsKanbanPage.page-chamados-kanban .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tkb-save-filters] .tk-remember-dot,
body.client-portal-body #ticketsPage.page-chamados-list .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tk-remember] .tk-remember-dot,
body.client-portal-body #ticketsKanbanPage.page-chamados-kanban .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tkb-save-filters] .tk-remember-dot{
  background: var(--btn-filter-dot-off) !important;
  border: 0 !important;
  box-shadow: none !important;
  display: inline-flex !important;
  height: 7px !important;
  margin-left: 2px !important;
  opacity: .72 !important;
  position: static !important;
  transform: none !important;
  width: 7px !important;
}

body.has-app-sidebar #ticketsPage.page-chamados-list .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tk-remember][data-on="1"] .tk-remember-dot,
body.has-app-sidebar #ticketsKanbanPage.page-chamados-kanban .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tkb-save-filters][data-on="1"] .tk-remember-dot,
body.client-portal-body #ticketsPage.page-chamados-list .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tk-remember][data-on="1"] .tk-remember-dot,
body.client-portal-body #ticketsKanbanPage.page-chamados-kanban .tk-filters__actions button.btn.ghost.tk-filter-icon-btn[data-tkb-save-filters][data-on="1"] .tk-remember-dot{
  background: var(--btn-filter-dot-on) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--btn-filter-dot-on) 18%, transparent) !important;
  opacity: 1 !important;
}

