/*
 * NÓ — identidade visual global do ambiente web.
 *
 * Esta camada fica sobre os estilos legados para preservar contratos de DOM e
 * regras de negócio enquanto troca a linguagem visual pelo sistema NÓ usado no
 * app: Navy + Teal, superfícies limpas, Roboto e estados semânticos contidos.
 */

:root,
body.lgb-ux-2026 {
  --no-navy: #071F34;
  --no-navy-2: #0B2A42;
  --no-teal: #22B8BB;
  --no-teal-light: #67D8D7;
  --no-orange: #E88945;
  --no-ink: #12263A;
  --no-muted: #72828D;
  --no-background: #F1F4F5;
  --no-border: #DCE5E7;
  --no-soft: #EAF8F7;
  --no-white: #FFFFFF;
  --no-red: #B6535E;

  --brand-bg-app: #F1F4F5;
  --brand-bg-alt: #F6F8F9;
  --brand-surface-primary: #FFFFFF;
  --brand-surface-secondary: #FFFFFF;
  --brand-surface-elevated: #FFFFFF;
  --brand-surface-deep: #EAF8F7;
  --brand-surface-control: #FFFFFF;
  --brand-surface-hover: #EAF8F7;
  --brand-border: #DCE5E7;
  --brand-border-hover: #9BBFC1;
  --brand-border-soft: rgba(7, 31, 52, .10);
  --brand-text: #12263A;
  --brand-text-secondary: #72828D;
  --brand-text-muted: #82929B;
  --brand-primary: #22B8BB;
  --brand-primary-hover: #0D8E90;
  --brand-primary-active: #087577;
  --brand-primary-soft: rgba(34, 184, 187, .14);
  --brand-secondary: #071F34;
  --brand-success: #0A8B65;
  --brand-warning: #E88945;
  --brand-danger: #B6535E;
  --brand-table-hover-bg: rgba(34, 184, 187, .075);
  --brand-scrollbar-thumb: rgba(34, 184, 187, .45);
  --brand-scrollbar-thumb-hover: rgba(34, 184, 187, .68);
  --brand-scrollbar-track: rgba(7, 31, 52, .06);

  --notification-menu-bg: #FFFFFF;
  --notification-header-bg: #F8FAFB;
  --notification-item-bg: #FFFFFF;
  --notification-item-hover-bg: #EAF8F7;
  --notification-title: #071F34;
  --notification-muted: #72828D;
  --notification-icon-bg: #EAF8F7;
  --notification-icon-color: #0D8E90;
  --notification-queue-bg: #FFF6EC;
  --notification-queue-color: #A85F28;
  --notification-link-color: #0D8E90;
  --notification-shadow: 0 18px 40px rgba(7, 31, 52, .14);

  --brand-radius-sm: 7px;
  --brand-radius-md: 10px;
  --brand-radius-lg: 14px;
  --brand-shadow-md: 0 10px 28px rgba(7, 31, 52, .08);
  --brand-shadow-strong: 0 18px 44px rgba(7, 31, 52, .12);
  --brand-shadow-soft: 0 6px 18px rgba(7, 31, 52, .07);
  --brand-focus-ring: 0 0 0 3px rgba(34, 184, 187, .20);

  /* Aliases para as quatro camadas legadas. */
  --oux-bg: var(--brand-bg-app);
  --oux-surface: var(--brand-surface-primary);
  --oux-surface-alt: var(--brand-surface-deep);
  --oux-text: var(--brand-text);
  --oux-muted: var(--brand-text-secondary);
  --oux-line: var(--brand-border);
  --oux-line-soft: var(--brand-border-soft);
  --oux-blue: var(--brand-primary);
  --oux-blue-soft: var(--brand-primary-soft);
  --oux-red: var(--brand-danger);
  --oux-green: var(--brand-success);
  --oux-yellow: var(--brand-warning);
  --oux-radius: var(--brand-radius-md);
  --oux-radius-sm: var(--brand-radius-sm);
  --oux-radius-lg: var(--brand-radius-lg);
  --oux-shadow: var(--brand-shadow-md);
  --oux-focus: var(--brand-focus-ring);

  --lgb-bg: var(--brand-bg-app);
  --lgb-surface: var(--brand-surface-primary);
  --lgb-surface-2: var(--brand-surface-deep);
  --lgb-text: var(--brand-text);
  --lgb-muted: var(--brand-text-secondary);
  --lgb-line: var(--brand-border);
  --lgb-line-soft: var(--brand-border-soft);
  --lgb-blue: var(--brand-primary);
  --lgb-blue-2: var(--brand-primary-hover);
  --lgb-red: var(--brand-danger);
  --lgb-green: var(--brand-success);
  --lgb-yellow: var(--brand-warning);
  --lgb-radius: var(--brand-radius-md);
  --lgb-radius-sm: var(--brand-radius-sm);
  --lgb-radius-lg: var(--brand-radius-lg);
  --lgb-shadow: var(--brand-shadow-md);
  --lgb-shadow-soft: var(--brand-shadow-soft);

  --ds-bg: var(--brand-bg-app);
  --ds-bg-soft: var(--brand-surface-deep);
  --ds-surface: var(--brand-surface-primary);
  --ds-surface-2: var(--brand-surface-elevated);
  --ds-surface-soft: var(--brand-surface-deep);
  --ds-line: var(--brand-border);
  --ds-line-strong: var(--brand-border-hover);
  --ds-text: var(--brand-text);
  --ds-muted: var(--brand-text-secondary);
  --ds-primary: var(--brand-primary);
  --ds-primary-soft: var(--brand-primary-soft);
  --ds-red: var(--brand-danger);
  --ds-green: var(--brand-success);
  --ds-yellow: var(--brand-warning);
  --ds-radius: var(--brand-radius-md);
  --ds-radius-sm: var(--brand-radius-sm);
  --ds-radius-lg: var(--brand-radius-lg);
  --ds-shadow: var(--brand-shadow-strong);
  --ds-shadow-soft: var(--brand-shadow-soft);

  --app-red: var(--brand-danger);
  --app-bg-dark: #061523;
  --app-bg-dark-2: #071F34;
  --app-surface-dark: #0B2A42;
  --app-surface-dark-solid: #0B2A42;
  --app-line-dark: #28485A;
  --app-text-dark: #F6F8F9;
  --app-muted-dark: #B8C8CE;
  --app-shadow-dark: 0 18px 44px rgba(0, 0, 0, .22);

  --bs-primary: #22B8BB;
  --bs-primary-rgb: 34, 184, 187;
  --bs-secondary: #071F34;
  --bs-secondary-rgb: 7, 31, 52;
  --bs-success: #0A8B65;
  --bs-success-rgb: 10, 139, 101;
  --bs-warning: #E88945;
  --bs-warning-rgb: 232, 137, 69;
  --bs-danger: #B6535E;
  --bs-danger-rgb: 182, 83, 94;
  --bs-body-bg: #F1F4F5;
  --bs-body-color: #12263A;
  --bs-tertiary-bg: #F6F8F9;
  --bs-border-color: #DCE5E7;
  --bs-secondary-color: #72828D;
  --bs-link-color: #0D8E90;
  --bs-link-hover-color: #087577;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 {
  --brand-bg-app: #061523;
  --brand-bg-alt: #071F34;
  --brand-surface-primary: #0B2A42;
  --brand-surface-secondary: #10344E;
  --brand-surface-elevated: #10344E;
  --brand-surface-deep: #123B50;
  --brand-surface-control: #10344E;
  --brand-surface-hover: #123B50;
  --brand-border: #28485A;
  --brand-border-hover: #67D8D7;
  --brand-border-soft: rgba(103, 216, 215, .13);
  --brand-text: #F6F8F9;
  --brand-text-secondary: #B8C8CE;
  --brand-text-muted: #82929B;
  --brand-primary: #67D8D7;
  --brand-primary-hover: #22B8BB;
  --brand-primary-active: #0D8E90;
  --brand-primary-soft: rgba(103, 216, 215, .14);
  --brand-secondary: #EAF8F7;
  --brand-success: #67D8B4;
  --brand-warning: #E88945;
  --brand-danger: #D66A75;
  --brand-table-hover-bg: rgba(103, 216, 215, .09);
  --brand-scrollbar-thumb: rgba(103, 216, 215, .42);
  --brand-scrollbar-thumb-hover: rgba(103, 216, 215, .68);
  --brand-scrollbar-track: rgba(6, 21, 35, .35);

  --notification-menu-bg: #0B2A42;
  --notification-header-bg: #10344E;
  --notification-item-bg: #0B2A42;
  --notification-item-hover-bg: #123B50;
  --notification-title: #F6F8F9;
  --notification-muted: #B8C8CE;
  --notification-icon-bg: rgba(103, 216, 215, .10);
  --notification-icon-color: #67D8D7;
  --notification-queue-bg: rgba(232, 137, 69, .10);
  --notification-queue-color: #E88945;
  --notification-link-color: #67D8D7;
  --notification-shadow: 0 18px 40px rgba(0, 0, 0, .28);
  --brand-shadow-md: 0 12px 30px rgba(0, 0, 0, .18);
  --brand-shadow-strong: 0 20px 52px rgba(0, 0, 0, .24);
  --brand-shadow-soft: 0 8px 22px rgba(0, 0, 0, .16);
  --brand-focus-ring: 0 0 0 3px rgba(103, 216, 215, .20);

  --oux-bg: var(--brand-bg-app);
  --oux-surface: var(--brand-surface-primary);
  --oux-surface-alt: var(--brand-surface-secondary);
  --oux-text: var(--brand-text);
  --oux-muted: var(--brand-text-secondary);
  --oux-line: var(--brand-border);
  --oux-line-soft: var(--brand-border-soft);
  --oux-blue: var(--brand-primary);
  --oux-blue-soft: var(--brand-primary-soft);
  --oux-red: var(--brand-danger);
  --oux-green: var(--brand-success);
  --oux-yellow: var(--brand-warning);
  --oux-radius: var(--brand-radius-md);
  --oux-radius-sm: var(--brand-radius-sm);
  --oux-radius-lg: var(--brand-radius-lg);
  --oux-shadow: var(--brand-shadow-md);
  --oux-focus: var(--brand-focus-ring);

  --lgb-bg: var(--brand-bg-app);
  --lgb-surface: var(--brand-surface-primary);
  --lgb-surface-2: var(--brand-surface-secondary);
  --lgb-text: var(--brand-text);
  --lgb-muted: var(--brand-text-secondary);
  --lgb-line: var(--brand-border);
  --lgb-line-soft: var(--brand-border-soft);
  --lgb-blue: var(--brand-primary);
  --lgb-blue-2: var(--brand-primary-hover);
  --lgb-red: var(--brand-danger);
  --lgb-green: var(--brand-success);
  --lgb-yellow: var(--brand-warning);
  --lgb-radius: var(--brand-radius-md);
  --lgb-radius-sm: var(--brand-radius-sm);
  --lgb-radius-lg: var(--brand-radius-lg);
  --lgb-shadow: var(--brand-shadow-md);
  --lgb-shadow-soft: var(--brand-shadow-soft);

  --ds-bg: var(--brand-bg-app);
  --ds-bg-soft: var(--brand-surface-deep);
  --ds-surface: var(--brand-surface-primary);
  --ds-surface-2: var(--brand-surface-elevated);
  --ds-surface-soft: var(--brand-surface-deep);
  --ds-line: var(--brand-border);
  --ds-line-strong: var(--brand-border-hover);
  --ds-text: var(--brand-text);
  --ds-muted: var(--brand-text-secondary);
  --ds-primary: var(--brand-primary);
  --ds-primary-soft: var(--brand-primary-soft);
  --ds-red: var(--brand-danger);
  --ds-green: var(--brand-success);
  --ds-yellow: var(--brand-warning);
  --ds-radius: var(--brand-radius-md);
  --ds-radius-sm: var(--brand-radius-sm);
  --ds-radius-lg: var(--brand-radius-lg);
  --ds-shadow: var(--brand-shadow-strong);
  --ds-shadow-soft: var(--brand-shadow-soft);

  --app-bg-dark: var(--brand-bg-app);
  --app-bg-dark-2: var(--brand-bg-alt);
  --app-surface-dark: var(--brand-surface-primary);
  --app-surface-dark-solid: var(--brand-surface-primary);
  --app-line-dark: var(--brand-border);
  --app-text-dark: var(--brand-text);
  --app-muted-dark: var(--brand-text-secondary);
  --app-shadow-dark: var(--brand-shadow-strong);

  --bs-primary: #67D8D7;
  --bs-primary-rgb: 103, 216, 215;
  --bs-secondary: #EAF8F7;
  --bs-secondary-rgb: 234, 248, 247;
  --bs-success: #67D8B4;
  --bs-success-rgb: 103, 216, 180;
  --bs-warning: #E88945;
  --bs-warning-rgb: 232, 137, 69;
  --bs-danger: #D66A75;
  --bs-danger-rgb: 214, 106, 117;
  --bs-body-bg: #061523;
  --bs-body-color: #F6F8F9;
  --bs-tertiary-bg: #071F34;
  --bs-border-color: #28485A;
  --bs-secondary-color: #B8C8CE;
  --bs-link-color: #67D8D7;
  --bs-link-hover-color: #22B8BB;
}

html,
body,
button,
input,
select,
textarea,
.tooltip,
.popover {
  font-family: "Roboto", system-ui, -apple-system, "Segoe UI", sans-serif !important;
}

body.lgb-ux-2026,
body.lgb-ux-2026.bg-body-tertiary,
body.lgb-ux-2026 .content {
  background: var(--brand-bg-app) !important;
  color: var(--brand-text) !important;
}

body.lgb-ux-2026 .app-topbar,
body.lgb-ux-2026 .app-topbar.app-topbar-modern {
  background: color-mix(in srgb, var(--brand-surface-primary) 94%, transparent) !important;
  border-bottom: 1px solid var(--brand-border) !important;
  box-shadow: 0 6px 24px rgba(7, 31, 52, .06) !important;
  backdrop-filter: blur(14px);
  min-height: 64px !important;
  padding-block: 0 !important;
}

body.lgb-ux-2026 .app-topbar-modern .container-fluid {
  gap: .6rem;
  min-height: 64px;
  padding-left: .75rem;
  padding-right: .75rem;
}

body.lgb-ux-2026 .app-topbar :is(.navbar-brand, .navbar-text, .nav-link, .btn) {
  color: var(--brand-text) !important;
}

body.lgb-ux-2026 .app-global-search {
  border-radius: 10px !important;
  flex: 0 1 560px;
  gap: .55rem;
  margin-left: .15rem;
  max-width: 560px;
  min-height: 40px;
  padding: 0 .75rem;
}

body.lgb-ux-2026 .app-global-search input {
  font-size: .875rem;
  line-height: 1.2;
}

body.lgb-ux-2026 .app-search-shortcut {
  border-radius: 6px;
  font-size: .64rem;
  font-weight: 800;
  line-height: 1;
  padding: .18rem .36rem;
}

body.lgb-ux-2026 .app-topbar-actions {
  gap: .4rem;
}

body.lgb-ux-2026 .app-shell {
  min-height: calc(100vh - 64px);
}

body.lgb-ux-2026 :is(
  .app-topbar .app-icon-btn,
  .app-topbar .app-theme-toggle
) {
  border-radius: 9px !important;
  min-height: 40px;
  min-width: 40px;
  padding: .35rem .55rem;
}

body.lgb-ux-2026 .app-user-chip {
  border-radius: 9px;
  gap: .48rem;
  min-height: 40px;
  padding: .24rem .58rem .24rem .28rem;
}

body.lgb-ux-2026 .app-user-avatar {
  font-size: .82rem;
  height: 30px;
  width: 30px;
}

body.lgb-ux-2026 .app-user-name {
  font-size: .82rem;
  line-height: 1.05;
}

body.lgb-ux-2026 .app-user-role {
  font-size: .68rem;
  line-height: 1.05;
  margin-top: .12rem;
}

body.lgb-ux-2026 .app-topbar .app-logout-btn.btn {
  border-radius: 9px !important;
  min-height: 40px;
  padding-left: .8rem;
  padding-right: .8rem;
}

body.lgb-ux-2026 .app-topbar .app-topbar-actions > .dropdown:has(#supportNotificationButton) {
  position: relative;
  z-index: 3;
}

body.lgb-ux-2026 .app-topbar #supportNotificationButton {
  position: relative;
  z-index: 1;
}

body.lgb-ux-2026 .app-topbar #supportNotificationBadge {
  align-items: center;
  background: var(--brand-danger) !important;
  border: 2px solid var(--no-navy);
  box-shadow: 0 3px 9px rgba(0, 0, 0, .18);
  color: var(--no-white) !important;
  display: inline-flex;
  font-weight: 800;
  justify-content: center;
  left: auto !important;
  line-height: 1;
  min-height: 20px;
  min-width: 20px;
  padding: .15rem .3rem;
  right: -7px;
  top: -7px !important;
  transform: none !important;
  z-index: 4;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .app-topbar #supportNotificationBadge {
  border-color: var(--no-navy-2);
}

/* Topbar dark: AppBar e controles alinhados à paleta operacional NÓ. */
html[data-bs-theme="dark"] body.lgb-ux-2026 .app-topbar,
html[data-bs-theme="dark"] body.lgb-ux-2026 .app-topbar.app-topbar-modern {
  background: #0B2A42 !important;
  border-bottom-color: #28485A !important;
  box-shadow: 0 10px 30px rgba(0,0,0,.22) !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 :is(
  .app-global-search,
  .app-user-chip,
  .app-icon-btn,
  .app-topbar-modern .app-icon-btn.btn,
  .app-topbar-modern .app-theme-toggle.btn,
  .app-logout-btn.btn
) {
  background: #10344E !important;
  border-color: #28485A !important;
  box-shadow: none !important;
  color: #F6F8F9 !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 :is(
  .app-icon-btn,
  .app-topbar-modern .app-icon-btn.btn,
  .app-topbar-modern .app-theme-toggle.btn,
  .app-logout-btn.btn
):is(:hover,:focus-visible) {
  background: #123B50 !important;
  border-color: #67D8D7 !important;
  box-shadow: 0 0 0 3px rgba(103,216,215,.14) !important;
  color: #F6F8F9 !important;
  transform: none !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .app-global-search:hover {
  border-color: #67D8D7 !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .app-global-search:focus-within {
  background: #10344E !important;
  border-color: #67D8D7 !important;
  box-shadow: 0 0 0 3px rgba(103,216,215,.14) !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .app-global-search > .bi-search {
  color: #67D8D7 !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .app-global-search input {
  color: #F6F8F9 !important;
  font-weight: 600;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .app-global-search input::placeholder {
  color: #82929B !important;
  opacity: 1;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .app-search-shortcut {
  background: #123B50 !important;
  border: 1px solid #28485A !important;
  color: #B8C8CE !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .app-user-avatar {
  background: linear-gradient(135deg,#0D8E90,#22B8BB) !important;
  box-shadow: 0 3px 8px rgba(0,0,0,.20);
  color: #071F34 !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .app-user-name {
  color: #F6F8F9 !important;
  font-weight: 800;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .app-user-role {
  color: #B8C8CE !important;
}

@media (max-width: 767.98px) {
  body.lgb-ux-2026 .app-topbar,
  body.lgb-ux-2026 .app-topbar.app-topbar-modern,
  body.lgb-ux-2026 .app-topbar-modern .container-fluid {
    min-height: 58px !important;
  }

  body.lgb-ux-2026 .app-topbar-modern .container-fluid {
    gap: .35rem;
    padding-left: .55rem;
    padding-right: .55rem;
  }

  body.lgb-ux-2026 .app-topbar-actions {
    gap: .3rem;
  }

  body.lgb-ux-2026 .app-shell {
    min-height: calc(100vh - 58px);
  }
}

body.lgb-ux-2026 :is(.sidebar, .offcanvas, .offcanvas-header, .offcanvas-body) {
  background: var(--brand-secondary) !important;
  border-color: color-mix(in srgb, var(--brand-primary) 28%, transparent) !important;
  color: var(--no-white) !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 :is(.sidebar, .offcanvas, .offcanvas-header, .offcanvas-body) {
  background: var(--no-navy) !important;
}

body.lgb-ux-2026 .sidebar-brand,
body.lgb-ux-2026 .lgb-offcanvas-brand {
  color: var(--no-white) !important;
}

body.lgb-ux-2026 .no-brand-logo,
body.lgb-ux-2026 .lgb-offcanvas-brand .lgb-brand-mark {
  align-items: center;
  display: inline-flex;
  justify-content: center;
}

body.lgb-ux-2026 .no-brand-logo img,
body.lgb-ux-2026 .lgb-offcanvas-brand .lgb-brand-mark img {
  display: block;
  filter: brightness(0) invert(1);
  height: auto;
  max-width: 100%;
  object-fit: contain;
}

body.lgb-ux-2026 .lgb-offcanvas-brand .lgb-brand-mark {
  background: url("../img/no-connected-logo.svg") center / contain no-repeat;
  height: 30px;
  width: 58px;
}
body.lgb-ux-2026 .lgb-offcanvas-brand .lgb-brand-mark img { display: none !important; }
body.lgb-ux-2026 .lgb-offcanvas-brand .lgb-brand-wordmark { display: none !important; }
body.lgb-ux-2026 .lgb-offcanvas-brand::after {
  content: "NÓ";
  font-size: .95rem;
  font-weight: 900;
  letter-spacing: .05em;
}

/* NÓ: neutraliza o antigo badge vermelho aplicado por loguber-v2.css. */
body.lgb-ux-2026 .sidebar .no-brand-logo.sidebar-brand-mark,
body.lgb-ux-2026 .app-topbar .no-brand-logo.app-brand-mark,
body.lgb-ux-2026 .lgb-offcanvas-brand .lgb-brand-mark {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  padding: 0 !important;
}

body.lgb-ux-2026 .sidebar .no-brand-logo.sidebar-brand-mark {
  flex: 0 0 58px !important;
  height: 30px !important;
  width: 58px !important;
}

body.lgb-ux-2026 .app-topbar .no-brand-logo.app-brand-mark {
  height: 24px !important;
  width: 46px !important;
}

body.lgb-ux-2026 .sidebar .no-brand-logo img,
body.lgb-ux-2026 .lgb-offcanvas-brand .lgb-brand-mark img {
  filter: brightness(0) invert(1) !important;
  width: 100% !important;
}

body.lgb-ux-2026 .app-topbar .no-brand-logo img {
  filter: none !important;
  width: 100% !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .app-topbar .no-brand-logo img {
  filter: brightness(0) invert(1) !important;
}

body.lgb-ux-2026 .sidebar-brand {
  gap: .65rem !important;
}

body.lgb-ux-2026 .sidebar-brand-text {
  display: flex;
  flex-direction: column;
  gap: .16rem;
  line-height: 1.05;
  min-width: 0;
}

body.lgb-ux-2026 .sidebar-brand-name {
  display: block;
  font-size: 1.05rem;
  line-height: 1;
}

body.lgb-ux-2026 .sidebar-brand-product {
  display: block;
  line-height: 1.15;
  white-space: nowrap;
}

body.lgb-ux-2026 .lgb-offcanvas-brand .lgb-brand-mark {
  background: transparent !important;
  height: 28px !important;
  width: 54px !important;
}

body.lgb-ux-2026 .lgb-offcanvas-brand .lgb-brand-mark img {
  display: block !important;
  height: auto !important;
  width: 100% !important;
}

body.lgb-ux-2026 .lgb-offcanvas-brand .lgb-brand-wordmark {
  color: var(--no-white) !important;
  display: inline !important;
  font-size: .95rem;
  font-weight: 900;
  letter-spacing: .05em;
}

body.lgb-ux-2026 .lgb-offcanvas-brand::after {
  content: none !important;
}

body.lgb-ux-2026 .sidebar-brand-text {
  color: var(--no-white) !important;
}
body.lgb-ux-2026 .sidebar-brand-text .sidebar-brand-name,
body.lgb-ux-2026 .sidebar-brand-text strong {
  font-weight: 900;
  letter-spacing: .04em;
}
body.lgb-ux-2026 .sidebar-brand-product {
  color: rgba(255, 255, 255, .66) !important;
  font-size: .72rem;
  letter-spacing: .06em;
  text-transform: uppercase;
}

body.lgb-ux-2026 .sidebar :is(.sidebar-section-toggle, .sidebar-nav-link.nav-link) {
  color: rgba(255, 255, 255, .72) !important;
}
body.lgb-ux-2026 .sidebar .sidebar-section-toggle:hover,
body.lgb-ux-2026 .sidebar .sidebar-nav-link.nav-link:hover {
  background: rgba(34, 184, 187, .12) !important;
  color: var(--no-white) !important;
}
body.lgb-ux-2026 .sidebar .sidebar-nav-link.nav-link:is(.active, [aria-current="page"]) {
  background: rgba(34, 184, 187, .18) !important;
  box-shadow: inset 3px 0 0 var(--no-teal) !important;
  color: var(--no-white) !important;
}
body.lgb-ux-2026 .sidebar .sidebar-section-count {
  background: rgba(255, 255, 255, .08) !important;
  color: rgba(255, 255, 255, .72) !important;
}

body.lgb-ux-2026 .app-global-search,
body.lgb-ux-2026 .app-user-chip,
body.lgb-ux-2026 .app-icon-btn,
body.lgb-ux-2026 .app-theme-toggle,
body.lgb-ux-2026 .app-logout-btn {
  background: var(--brand-surface-primary) !important;
  border-color: var(--brand-border) !important;
  color: var(--brand-text) !important;
}
body.lgb-ux-2026 .app-global-search:focus-within,
body.lgb-ux-2026 .app-icon-btn:hover,
body.lgb-ux-2026 .app-theme-toggle:hover {
  border-color: var(--brand-primary) !important;
  box-shadow: var(--brand-focus-ring) !important;
}
body.lgb-ux-2026 .app-user-avatar {
  background: linear-gradient(135deg, var(--no-navy), var(--no-teal)) !important;
  color: var(--no-white) !important;
}
body.lgb-ux-2026 .app-search-shortcut {
  color: var(--brand-text-muted) !important;
}

/* Notificações da topbar: geometria única, aparência dirigida por tokens de tema. */
body.lgb-ux-2026 .support-notification-menu {
  background: var(--notification-menu-bg) !important;
  border: 1px solid var(--brand-border) !important;
  border-radius: 12px !important;
  box-shadow: var(--notification-shadow) !important;
  color: var(--brand-text) !important;
  max-height: 520px;
  overflow: hidden;
  width: min(390px, calc(100vw - 24px));
}

body.lgb-ux-2026 .support-notification-list {
  max-height: 390px;
  overflow-y: auto;
}

body.lgb-ux-2026 .support-notification-menu > .border-bottom {
  background: var(--notification-header-bg) !important;
  border-color: var(--brand-border) !important;
}

body.lgb-ux-2026 .support-notification-item {
  align-items: flex-start;
  background: var(--notification-item-bg) !important;
  border-bottom: 1px solid var(--brand-border) !important;
  color: var(--brand-text) !important;
  display: flex;
  gap: 10px;
  padding: 11px 14px;
  text-decoration: none;
  white-space: normal;
}

body.lgb-ux-2026 .support-notification-item:hover,
body.lgb-ux-2026 .support-notification-item:focus-visible {
  background: var(--notification-item-hover-bg) !important;
  color: var(--brand-text) !important;
}

body.lgb-ux-2026 .support-notification-icon {
  align-items: center;
  background: var(--notification-icon-bg) !important;
  border-radius: 10px;
  color: var(--notification-icon-color) !important;
  display: inline-flex;
  flex: 0 0 32px;
  height: 32px;
  justify-content: center;
  width: 32px;
}

body.lgb-ux-2026 .support-notification-icon.queue {
  background: var(--notification-queue-bg) !important;
  color: var(--notification-queue-color) !important;
}

body.lgb-ux-2026 .support-notification-copy {
  flex: 1;
  min-width: 0;
}

body.lgb-ux-2026 .support-notification-title {
  color: var(--notification-title) !important;
  display: block;
  font-size: .88rem;
  font-weight: 800;
  line-height: 1.25;
}

body.lgb-ux-2026 :is(
  .support-notification-meta,
  .support-notification-time
) {
  color: var(--notification-muted) !important;
  display: block;
}

body.lgb-ux-2026 .support-notification-meta {
  font-size: .76rem;
  line-height: 1.3;
  margin-top: 2px;
}

body.lgb-ux-2026 .support-notification-time {
  font-size: .7rem;
  margin-top: 4px;
}

body.lgb-ux-2026 .support-notification-menu .dropdown-item {
  background: var(--notification-item-bg) !important;
  color: var(--notification-link-color) !important;
}

body.lgb-ux-2026 .support-notification-menu .dropdown-item:hover,
body.lgb-ux-2026 .support-notification-menu .dropdown-item:focus {
  background: var(--notification-item-hover-bg) !important;
  color: var(--brand-text) !important;
}

body.lgb-ux-2026 #supportNotificationRefresh {
  background: var(--notification-item-bg) !important;
  border-color: var(--brand-border) !important;
  color: var(--notification-link-color) !important;
}

body.lgb-ux-2026 #supportNotificationRefresh:is(:hover,:focus-visible) {
  background: var(--notification-item-hover-bg) !important;
  border-color: var(--brand-primary) !important;
}

body.lgb-ux-2026 #supportNotificationBadge {
  font-size: .62rem;
  font-weight: 800;
  min-width: 18px;
}

body.lgb-ux-2026 .content :is(
  .ds-auto-header,
  .app-page-hero,
  .lgb-page-head,
  .auditoria-sessoes-hero,
  .validacao-hero,
  .av-hero
) {
  background:
    radial-gradient(circle at 92% 0%, rgba(34, 184, 187, .16), transparent 27rem),
    linear-gradient(135deg, var(--brand-surface-primary), var(--brand-surface-deep)) !important;
  border: 1px solid var(--brand-border) !important;
  border-radius: var(--brand-radius-lg) !important;
  box-shadow: var(--brand-shadow-soft) !important;
  color: var(--brand-text) !important;
}

body.lgb-ux-2026 .content :is(.ds-auto-header, .app-page-hero, .lgb-page-head)::before {
  background: linear-gradient(90deg, var(--no-navy), var(--no-teal)) !important;
}
body.lgb-ux-2026 .content :is(.ds-page-kicker, .ds-card-kicker, .app-page-kicker, .app-module-kicker, .app-kpi-label, .lgb-kicker, .validacao-kicker, .auditoria-kicker) {
  color: var(--brand-primary) !important;
  font-size: .69rem !important;
  font-weight: 900 !important;
  letter-spacing: .11em !important;
  text-transform: uppercase;
}

body.lgb-ux-2026 .content :is(h1, h2, h3, h4, h5, h6, .app-page-title, .lgb-title, .lgb-panel-title, .validacao-title) {
  color: var(--brand-text) !important;
}
body.lgb-ux-2026 .content :is(.text-secondary, .text-muted, .text-body-secondary, .form-text, .app-page-subtitle, .lgb-subtitle) {
  color: var(--brand-text-secondary) !important;
}

body.lgb-ux-2026 .content :is(
  .card,
  .lgb-panel,
  .lgb-filter-bar,
  .modal-content,
  .dropdown-menu,
  .list-group-item,
  .accordion-item,
  .app-kpi-card,
  .app-module-card,
  .metric-card,
  .lac-metric,
  .lgb-kpi,
  .lgb-dashboard-kpi,
  .lgb-dashboard-module-card,
  .av-panel,
  .av-metric,
  .av-filter-card,
  .av-file-section,
  .auditoria-panel,
  .auditoria-kpi,
  .validacao-card,
  .validacao-filter-card,
  .validacao-table-card,
  .validacao-chart-card,
  .validacao-kpi-card
) {
  background: var(--brand-surface-primary) !important;
  border-color: var(--brand-border) !important;
  border-radius: var(--brand-radius-lg) !important;
  box-shadow: var(--brand-shadow-soft) !important;
  color: var(--brand-text) !important;
}

body.lgb-ux-2026 .content :is(.card-header, .card-footer, .modal-header, .modal-footer, .accordion-button, .lgb-panel-head, .lgb-workbench-bar) {
  background: var(--brand-surface-deep) !important;
  border-color: var(--brand-border) !important;
  color: var(--brand-text) !important;
}

body.lgb-ux-2026 .content :is(.form-control, .form-select, .input-group-text, textarea, select) {
  background: var(--brand-surface-control) !important;
  border: 1px solid var(--brand-border) !important;
  border-radius: var(--brand-radius-sm) !important;
  color: var(--brand-text) !important;
  min-height: 42px;
}
body.lgb-ux-2026 .content :is(.form-control, textarea)::placeholder {
  color: var(--brand-text-muted) !important;
  opacity: 1;
}
body.lgb-ux-2026 .content :is(.form-control, .form-select, textarea, select):focus {
  border-color: var(--brand-primary) !important;
  box-shadow: var(--brand-focus-ring) !important;
  outline: 0 !important;
}
body.lgb-ux-2026 .content .form-label,
body.lgb-ux-2026 .content form label {
  color: var(--brand-text-secondary) !important;
  font-weight: 600 !important;
}
body.lgb-ux-2026 .form-check-input:checked {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
}
body.lgb-ux-2026 .form-check-input:focus {
  border-color: var(--brand-primary) !important;
  box-shadow: var(--brand-focus-ring) !important;
}

body.lgb-ux-2026 .btn {
  border-radius: 7px !important;
  font-size: .875rem;
  font-weight: 800 !important;
  letter-spacing: .025em;
  min-height: 40px;
}
body.lgb-ux-2026 .btn-primary {
  background: linear-gradient(90deg, var(--no-navy), var(--no-teal)) !important;
  border-color: transparent !important;
  box-shadow: none !important;
  color: var(--no-white) !important;
}
body.lgb-ux-2026 :is(.btn-secondary, .btn-outline-secondary, .btn-outline-primary, .btn-outline-info, .btn-light) {
  background: var(--brand-surface-primary) !important;
  border-color: var(--brand-border) !important;
  color: var(--brand-secondary) !important;
}
html[data-bs-theme="dark"] body.lgb-ux-2026 :is(.btn-secondary, .btn-outline-secondary, .btn-outline-primary, .btn-outline-info, .btn-light) {
  color: var(--brand-text) !important;
}
body.lgb-ux-2026 .btn-success { background-color: var(--brand-success) !important; border-color: var(--brand-success) !important; }
body.lgb-ux-2026 .btn-warning { background-color: var(--brand-warning) !important; border-color: var(--brand-warning) !important; color: var(--no-navy) !important; }
body.lgb-ux-2026 .btn-danger { background-color: var(--brand-danger) !important; border-color: var(--brand-danger) !important; }
body.lgb-ux-2026 .btn:focus-visible { box-shadow: var(--brand-focus-ring) !important; outline: 0 !important; }
body.lgb-ux-2026 .btn:disabled { opacity: .52 !important; transform: none !important; }

body.lgb-ux-2026 .content .table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--brand-text);
  --bs-table-border-color: var(--brand-border);
  --bs-table-hover-bg: var(--brand-table-hover-bg);
  --bs-table-hover-color: var(--brand-text);
  color: var(--brand-text) !important;
}
body.lgb-ux-2026 .content .table thead th,
body.lgb-ux-2026 .content .table-light :is(th, td) {
  background: var(--brand-surface-deep) !important;
  border-color: var(--brand-border) !important;
  color: var(--brand-text-secondary) !important;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .045em;
  text-transform: uppercase;
}
body.lgb-ux-2026 .content .table tbody tr:hover > * {
  background: var(--brand-table-hover-bg) !important;
}
body.lgb-ux-2026 .content .table-responsive {
  border-color: var(--brand-border) !important;
  scrollbar-color: var(--brand-scrollbar-thumb) var(--brand-scrollbar-track);
}

/* Geometria compartilhada de navegação e controles de listagem. */
body.lgb-ux-2026 .content .nav-tabs {
  gap: .16rem;
}

body.lgb-ux-2026 .content .nav-tabs .nav-link {
  align-items: center;
  border: 1px solid transparent !important;
  border-radius: 8px 8px 0 0 !important;
  display: inline-flex;
  font-weight: 800;
  min-height: 38px;
  padding: .45rem .72rem;
}

body.lgb-ux-2026 .content .nav-tabs .nav-link.active {
  font-weight: 900;
}

body.lgb-ux-2026 .content .nav-pills {
  gap: .3rem;
}

body.lgb-ux-2026 .content .nav-pills .nav-link {
  align-items: center;
  border-style: solid;
  border-width: 1px;
  border-radius: 8px !important;
  display: inline-flex;
  font-weight: 800;
  min-height: 38px;
  padding: .45rem .72rem;
}

body.lgb-ux-2026 .content .nav-pills .nav-link.active,
body.lgb-ux-2026 .content .nav-pills .show > .nav-link {
  font-weight: 900;
}

body.lgb-ux-2026 .content .breadcrumb {
  margin-bottom: .75rem;
}

body.lgb-ux-2026 .content :is(
  .dataTables_wrapper .dataTables_length,
  .dataTables_wrapper .dataTables_filter,
  .dataTables_wrapper .dataTables_info,
  .dt-container .dt-length,
  .dt-container .dt-search,
  .dt-container .dt-info
) {
  font-size: .84rem;
}

body.lgb-ux-2026 .content :is(
  .dataTables_wrapper .dataTables_length select,
  .dataTables_wrapper .dataTables_filter input,
  .dt-container .dt-length select,
  .dt-container .dt-search input
) {
  border-radius: 7px !important;
  min-height: 36px;
}

body.lgb-ux-2026 .content :is(
  .dataTables_wrapper .dataTables_processing,
  .dt-container .dt-processing
) {
  border-radius: 8px !important;
}

body.lgb-ux-2026 .content :is(
  .dataTables_wrapper .dataTables_paginate .paginate_button,
  .dt-container .dt-paging .dt-paging-button
) {
  border-radius: 7px !important;
  margin-inline: .12rem;
}

body.lgb-ux-2026 .content .dataTables_wrapper .dataTables_paginate .paginate_button.current,
body.lgb-ux-2026 .content .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover,
body.lgb-ux-2026 .content .dt-container .dt-paging .dt-paging-button.current,
body.lgb-ux-2026 .content .dt-container .dt-paging .dt-paging-button.current:hover {
  font-weight: 900;
}

body.lgb-ux-2026 .content .select2-container--default .select2-selection--single,
body.lgb-ux-2026 .content .select2-container--default .select2-selection--multiple {
  border-radius: 7px !important;
  min-height: 40px;
}

body.lgb-ux-2026 .content .progress {
  border-radius: 999px !important;
}

@media (min-width: 768px) {
  body.lgb-ux-2026 .content :is(
    .nav-tabs .nav-link,
    .nav-pills .nav-link
  ) {
    line-height: 1.1;
  }
}

/* Geometria compartilhada de KPIs, métricas e filtros. */
body.lgb-ux-2026 .content :is(
  .app-kpi-card,
  .metric-card,
  .lac-metric,
  .lgb-kpi,
  .av-metric,
  .auditoria-kpi,
  .validacao-kpi-card
) {
  border-radius: 10px !important;
  overflow: hidden;
  position: relative;
}

body.lgb-ux-2026 .content :is(
  .app-kpi-card,
  .metric-card,
  .lac-metric,
  .lgb-kpi,
  .av-metric,
  .auditoria-kpi,
  .validacao-kpi-card
)::before {
  content: "";
  height: 3px;
  inset: 0 0 auto;
  opacity: .92;
  position: absolute;
}

body.lgb-ux-2026 .content :is(
  .app-kpi-label,
  .metric-label,
  .lac-metric-label,
  .lgb-kpi-label,
  .av-metric-label,
  .auditoria-kpi-label,
  .validacao-kpi-label
) {
  font-size: .74rem !important;
  font-weight: 900 !important;
  letter-spacing: .055em;
  text-transform: uppercase;
}

body.lgb-ux-2026 .content :is(
  .app-kpi-value,
  .metric-value,
  .lac-metric-value,
  .lgb-kpi-value,
  .av-metric-value,
  .auditoria-kpi-value,
  .validacao-kpi-value
) {
  font-weight: 900 !important;
  letter-spacing: -.025em;
}

body.lgb-ux-2026 .content :is(
  .app-kpi-icon,
  .metric-icon,
  .lac-metric-icon,
  .lgb-kpi-icon,
  .av-metric-icon,
  .auditoria-kpi-icon,
  .validacao-kpi-icon
) {
  align-items: center;
  border-radius: 9px !important;
  display: inline-flex;
  justify-content: center;
}

body.lgb-ux-2026 .content :is(
  .lgb-filter-bar,
  .av-filter-card,
  .validacao-filter-card
) {
  border-radius: 10px !important;
}

body.lgb-ux-2026 .content :is(
  .lgb-filter-bar,
  .av-filter-card,
  .validacao-filter-card
) :is(
  .form-label,
  label,
  .filter-label,
  [class$="-label"]
) {
  font-weight: 800 !important;
}

body.lgb-ux-2026 .content :is(
  .lgb-filter-summary,
  .filter-summary,
  .filters-summary,
  .active-filters
) {
  border-radius: 8px !important;
}

@media (max-width: 767.98px) {
  body.lgb-ux-2026 .content :is(
    .app-kpi-card,
    .metric-card,
    .lac-metric,
    .lgb-kpi,
    .av-metric,
    .auditoria-kpi,
    .validacao-kpi-card,
    .lgb-filter-bar,
    .av-filter-card,
    .validacao-filter-card
  ) {
    border-radius: 9px !important;
  }
}

/* Ritmo vertical compartilhado entre light e dark no desktop. */
@media (min-width: 992px) {
  body.lgb-ux-2026 .content > .container-fluid {
    padding-bottom: 1rem !important;
    padding-top: .75rem !important;
  }

  body.lgb-ux-2026 .content .lgb-page {
    gap: .75rem !important;
  }

  body.lgb-ux-2026:not([data-page-path*="/planilha-monitoramento/"]) .content :is(
    .lgb-page-head,
    .page-head,
    .page-header,
    .pag-header,
    .fin-header,
    .crud-header,
    .monitor-header,
    .consulta-header,
    .dashboard-header,
    .app-page-hero,
    .ds-auto-header,
    .romaneio-hero,
    .fin-hero,
    .header-card
  ) {
    margin-bottom: .75rem !important;
    padding: .9rem 1rem !important;
  }

  body.lgb-ux-2026:not([data-page-path*="/planilha-monitoramento/"]) .content > .container-fluid > .d-flex:first-child:not(form),
  body.lgb-ux-2026:not([data-page-path*="/planilha-monitoramento/"]) .content > .container-fluid > :is(div, section):not(.card):not(.lgb-panel) > .d-flex:first-child:not(form) {
    gap: .75rem !important;
    margin-bottom: .75rem !important;
    padding: .9rem 1rem !important;
  }

  body.lgb-ux-2026 .content :is(
    .lgb-actions,
    .app-page-actions,
    .hero-actions,
    .page-actions
  ) {
    gap: .4rem !important;
  }
}

/* Densidade operacional compartilhada entre light e dark no desktop. */
@media (min-width: 992px) {
  body.lgb-ux-2026 .content .lgb-workbench-bar {
    border-radius: 9px !important;
    gap: .45rem;
    margin-bottom: .6rem;
    padding: .45rem .55rem !important;
  }

  body.lgb-ux-2026 .content .lgb-workbench-title {
    font-size: .72rem;
    font-weight: 800;
    gap: .35rem;
  }

  body.lgb-ux-2026 .content .lgb-workbench-tools {
    gap: .35rem;
  }

  body.lgb-ux-2026 .content .lgb-workbench-bar :is(
    .btn:not(.btn-lg),
    .form-control:not(.form-control-lg),
    .form-select:not(.form-select-lg)
  ) {
    min-height: 34px;
  }

  body.lgb-ux-2026 .content .table:not(.table-sm) > :not(caption) > * > * {
    padding: .44rem .56rem !important;
  }

  body.lgb-ux-2026 .content .table:not(.table-sm) thead th {
    font-size: .70rem;
    font-weight: 800;
    letter-spacing: .045em;
    line-height: 1.15;
    padding-bottom: .48rem !important;
    padding-top: .48rem !important;
  }

  body.lgb-ux-2026 .content .table:not(.table-sm) tbody td {
    font-size: .82rem;
    line-height: 1.25;
  }

  body.lgb-ux-2026 .content .table :is(
    .btn.btn-sm,
    .form-control.form-control-sm,
    .form-select.form-select-sm
  ) {
    min-height: 30px;
  }

  body.lgb-ux-2026 .content .table .btn.btn-sm {
    border-radius: 7px !important;
    font-size: .76rem;
    padding: .25rem .48rem;
  }

  body.lgb-ux-2026 .content .table :is(
    .form-control.form-control-sm,
    .form-select.form-select-sm
  ) {
    font-size: .78rem;
    padding-bottom: .25rem;
    padding-top: .25rem;
  }

  body.lgb-ux-2026 .content :is(
    .lgb-filter-bar,
    .av-filter-card,
    .validacao-filter-card
  ) {
    border-radius: 9px !important;
    padding: .65rem .72rem !important;
  }

  body.lgb-ux-2026 .content :is(
    .lgb-filter-bar,
    .av-filter-card,
    .validacao-filter-card
  ) :is(
    .form-control:not(.form-control-lg),
    .form-select:not(.form-select-lg),
    input:not([type="checkbox"]):not([type="radio"]),
    select,
    .btn:not(.btn-lg)
  ) {
    min-height: 34px;
  }

  body.lgb-ux-2026 .content :is(
    .lgb-filter-summary,
    .filter-summary,
    .filters-summary,
    .active-filters
  ) {
    padding: .45rem .6rem;
  }
}

body.lgb-ux-2026 .badge,
body.lgb-ux-2026 .app-pill {
  align-items: center;
  border: 1px solid transparent;
  border-radius: 999px !important;
  display: inline-flex;
  font-size: .72rem;
  font-weight: 800 !important;
  gap: .28rem;
  letter-spacing: .02em;
  line-height: 1;
  min-height: 22px;
  padding: .22rem .48rem !important;
}
body.lgb-ux-2026 .bg-primary,
body.lgb-ux-2026 .text-bg-primary {
  background-color: var(--brand-primary) !important;
}
body.lgb-ux-2026 .text-primary { color: var(--brand-primary) !important; }

html[data-bs-theme="dark"] body.lgb-ux-2026 :is(
  .badge.bg-primary,
  .badge.text-bg-primary,
  .badge.bg-info,
  .badge.text-bg-info
) {
  background: rgba(103,216,215,.12) !important;
  border-color: rgba(103,216,215,.30) !important;
  color: #67D8D7 !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 :is(
  .badge.bg-secondary,
  .badge.text-bg-secondary,
  .badge.bg-light,
  .badge.text-bg-light
) {
  background: #123B50 !important;
  border-color: #28485A !important;
  color: #B8C8CE !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 :is(
  .badge.bg-success,
  .badge.text-bg-success
) {
  background: rgba(103,216,180,.11) !important;
  border-color: rgba(103,216,180,.28) !important;
  color: #67D8B4 !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 :is(
  .badge.bg-warning,
  .badge.text-bg-warning
) {
  background: rgba(232,137,69,.12) !important;
  border-color: rgba(232,137,69,.30) !important;
  color: #E88945 !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 :is(
  .badge.bg-danger,
  .badge.text-bg-danger
) {
  background: rgba(214,106,117,.12) !important;
  border-color: rgba(214,106,117,.30) !important;
  color: #D66A75 !important;
}

body.lgb-ux-2026 :is(
  .empty-state,
  .lgb-empty-state,
  .ds-empty-state,
  .app-empty-state,
  .table-empty,
  .empty-result,
  .empty-results
) {
  border-radius: 10px !important;
  padding: 1.1rem !important;
  text-align: center;
}

body.lgb-ux-2026 .alert {
  background: var(--brand-surface-primary) !important;
  border-color: var(--brand-border) !important;
  border-radius: var(--brand-radius-md) !important;
  color: var(--brand-text) !important;
}
body.lgb-ux-2026 .alert-info { box-shadow: inset 3px 0 0 var(--brand-primary); }
body.lgb-ux-2026 .alert-success { box-shadow: inset 3px 0 0 var(--brand-success); }
body.lgb-ux-2026 .alert-warning { box-shadow: inset 3px 0 0 var(--brand-warning); }
body.lgb-ux-2026 .alert-danger { box-shadow: inset 3px 0 0 var(--brand-danger); }

html[data-bs-theme="dark"] body.lgb-ux-2026 .alert-info {
  background: rgba(103,216,215,.07) !important;
  border-color: rgba(103,216,215,.22) !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .alert-success {
  background: rgba(103,216,180,.07) !important;
  border-color: rgba(103,216,180,.22) !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .alert-warning {
  background: rgba(232,137,69,.08) !important;
  border-color: rgba(232,137,69,.24) !important;
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .alert-danger {
  background: rgba(214,106,117,.08) !important;
  border-color: rgba(214,106,117,.24) !important;
}

body.lgb-ux-2026 .modal-backdrop.show { opacity: .48; }
body.lgb-ux-2026 .modal-content,
body.lgb-ux-2026 .dropdown-menu,
body.lgb-ux-2026 .popover {
  background: var(--brand-surface-primary) !important;
  border-color: var(--brand-border) !important;
  color: var(--brand-text) !important;
}
body.lgb-ux-2026 .dropdown-item { color: var(--brand-text) !important; }
body.lgb-ux-2026 .dropdown-item:hover,
body.lgb-ux-2026 .dropdown-item:focus {
  background: var(--brand-surface-deep) !important;
  color: var(--brand-text) !important;
}

body.lgb-ux-2026 .pagination {
  --bs-pagination-bg: var(--brand-surface-primary);
  --bs-pagination-border-color: var(--brand-border);
  --bs-pagination-color: var(--brand-text-secondary);
  --bs-pagination-hover-bg: var(--brand-surface-deep);
  --bs-pagination-hover-border-color: var(--brand-primary);
  --bs-pagination-hover-color: var(--brand-text);
  --bs-pagination-active-bg: var(--brand-primary);
  --bs-pagination-active-border-color: var(--brand-primary);
}

html[data-bs-theme="dark"] body.lgb-ux-2026 .pagination {
  --bs-pagination-active-color: #071F34;
  --bs-pagination-focus-bg: #123B50;
  --bs-pagination-focus-color: #F6F8F9;
  --bs-pagination-focus-box-shadow: 0 0 0 .2rem rgba(103,216,215,.16);
}

body.lgb-ux-2026 :is(
  a,
  button,
  input,
  select,
  textarea,
  [tabindex]:not([tabindex="-1"])
):focus-visible {
  outline: 2px solid var(--brand-primary) !important;
  outline-offset: 2px;
}

body.lgb-ux-2026 :is(
  .btn,
  .nav-link,
  .dropdown-item,
  .list-group-item-action
):focus-visible {
  box-shadow: var(--brand-focus-ring) !important;
}

body.lgb-ux-2026 ::selection {
  background: var(--brand-primary-soft);
  color: var(--brand-text);
}

body.lgb-ux-2026 .sidebar,
body.lgb-ux-2026 .content,
body.lgb-ux-2026 .table-responsive,
body.lgb-ux-2026 .offcanvas-body {
  scrollbar-color: var(--brand-scrollbar-thumb) var(--brand-scrollbar-track);
  scrollbar-width: thin;
}

body.lgb-ux-2026 ::-webkit-scrollbar {
  height: 10px;
  width: 10px;
}

body.lgb-ux-2026 ::-webkit-scrollbar-track {
  background: var(--brand-scrollbar-track);
}

body.lgb-ux-2026 ::-webkit-scrollbar-thumb {
  background: var(--brand-scrollbar-thumb);
  border: 2px solid transparent;
  border-radius: 999px;
  background-clip: padding-box;
}

body.lgb-ux-2026 ::-webkit-scrollbar-thumb:hover {
  background: var(--brand-scrollbar-thumb-hover);
  background-clip: padding-box;
}

/* Responsividade geométrica compartilhada entre light e dark. */
body.lgb-ux-2026 .table-responsive {
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
}

body.lgb-ux-2026 .modal-dialog-scrollable .modal-body {
  scrollbar-gutter: stable;
}

@media (max-width: 1199.98px) {
  body.lgb-ux-2026 .content > .container-fluid {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  body.lgb-ux-2026 .content :is(
    .lgb-actions,
    .app-page-actions,
    .hero-actions,
    .page-actions,
    .d-flex:has(> .btn)
  ) {
    row-gap: .5rem;
  }
}

@media (max-width: 991.98px) {
  body.lgb-ux-2026 .app-topbar-modern .container-fluid {
    gap: .5rem !important;
    padding-left: .75rem !important;
    padding-right: .75rem !important;
  }

  body.lgb-ux-2026 .app-topbar-actions {
    gap: .35rem !important;
  }

  body.lgb-ux-2026 .app-icon-btn,
  body.lgb-ux-2026 .app-theme-toggle,
  body.lgb-ux-2026 .app-logout-btn.btn {
    min-height: 40px;
    min-width: 40px;
  }

  body.lgb-ux-2026 .content > .container-fluid {
    padding-top: 1rem !important;
  }

  body.lgb-ux-2026 .content :is(
    .lgb-page-head,
    .app-page-hero,
    .ds-auto-header,
    .romaneio-hero,
    .fin-hero,
    .header-card
  ) {
    min-height: 0 !important;
  }

  body.lgb-ux-2026 .content :is(
    .lgb-actions,
    .app-page-actions,
    .hero-actions,
    .page-actions
  ) {
    align-items: stretch !important;
    flex-wrap: wrap !important;
  }

  body.lgb-ux-2026 .content .nav-tabs,
  body.lgb-ux-2026 .content .nav-pills {
    flex-wrap: nowrap !important;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: .2rem;
    scrollbar-width: thin;
  }

  body.lgb-ux-2026 .content :is(
    .nav-tabs .nav-link,
    .nav-pills .nav-link
  ) {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  body.lgb-ux-2026 .content .table-responsive {
    border-radius: 9px !important;
  }

  body.lgb-ux-2026 .modal-dialog {
    margin: .75rem;
  }

  body.lgb-ux-2026 .modal-content {
    max-height: calc(100vh - 1.5rem);
  }

  body.lgb-ux-2026 .dropdown-menu {
    max-width: calc(100vw - 1.5rem);
  }

  body.lgb-ux-2026 :is(
    .dataTables_wrapper,
    .dt-container
  ) {
    overflow-x: auto;
  }
}

@media (max-width: 767.98px) {
  body.lgb-ux-2026 .content > .container-fluid {
    padding-left: .75rem !important;
    padding-right: .75rem !important;
  }

  body.lgb-ux-2026 .content :is(
    .card,
    .lgb-panel,
    .lgb-filter-bar,
    .modal-content
  ) {
    border-radius: 9px !important;
  }

  body.lgb-ux-2026 .content :is(
    .form-control,
    .form-select,
    textarea,
    select,
    .btn
  ) {
    min-height: 42px;
  }

  body.lgb-ux-2026 .content :is(
    .row.g-3,
    .row.g-4
  ) {
    --bs-gutter-y: .75rem;
  }

  body.lgb-ux-2026 .content .table {
    font-size: .84rem;
  }

  body.lgb-ux-2026 .content .table thead th {
    white-space: nowrap;
  }

  body.lgb-ux-2026 .support-notification-menu {
    width: calc(100vw - 1.5rem) !important;
  }
}

@media (max-width: 575.98px) {
  body.lgb-ux-2026 .content > .container-fluid {
    padding-left: .6rem !important;
    padding-right: .6rem !important;
  }

  body.lgb-ux-2026 .app-topbar-modern .container-fluid {
    padding-left: .55rem !important;
    padding-right: .55rem !important;
  }

  body.lgb-ux-2026 .app-topbar-actions {
    gap: .25rem !important;
  }

  body.lgb-ux-2026 .content :is(
    .lgb-page-head,
    .app-page-hero,
    .ds-auto-header,
    .romaneio-hero,
    .fin-hero,
    .header-card
  ) {
    padding: .9rem !important;
  }

  body.lgb-ux-2026 .content :is(
    .lgb-title,
    .app-page-title,
    .fin-title,
    .validacao-title,
    .status-title,
    h1
  ) {
    font-size: clamp(1.55rem, 8vw, 2rem) !important;
  }

  body.lgb-ux-2026 .content .modal-dialog {
    margin: .5rem;
  }

  body.lgb-ux-2026 .content .modal-content {
    max-height: calc(100vh - 1rem);
  }

  body.lgb-ux-2026 .content :is(
    .btn-group,
    .btn-group-vertical
  ) {
    max-width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.lgb-ux-2026 *,
  body.lgb-ux-2026 *::before,
  body.lgb-ux-2026 *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}