/* ========================================
   IMPORTS - Devem vir ANTES de tudo
   ======================================== */

/* Importa as variáveis CSS dos temas */

/**
 * Variáveis CSS para integração com Tailwind CSS
 * Este arquivo mapeia as variáveis CSS customizadas de cada tema
 * para serem usadas pelo Tailwind através da função theme()
 */

/* Tema GerencieAqui (GA) */

[data-theme="ga"] {
    --tw-color-text-default: #4D4D4D;
    --tw-color-text: #044572;
    --tw-color-primary: #004A6C;
    --tw-color-primary-rgb: 0, 74, 108;
    --tw-color-primary-hover: #003046;
    --tw-color-primary-100: #e6edf1;
    --tw-color-primary-200: #b3cbd8;
    --tw-color-primary-300: #80a5b6;
    --tw-color-primary-400: #4d7f94;
    --tw-color-primary-500: #1a6580;
    --tw-color-secondary: #009997;
    --tw-color-secondary-hover: #007371;
    --tw-color-secondary-100: #e6f7f7;
    --tw-color-secondary-200: #b3e8e7;
    --tw-color-secondary-300: #80d9d8;
    --tw-color-secondary-400: #4dcac8;
    --tw-color-secondary-500: #1abbb9;
    --tw-color-success: #3DC661;
    --tw-color-success-hover: #2CAD4E;
    --tw-color-warning: #FCBF19;
    --tw-color-warning-hover: #DDA715;
    --tw-color-danger: #DB102B;
    --tw-color-danger-hover: #B7041C;
    --tw-color-info: #1974FC;
    --tw-color-info-hover: #1556B7;
    --tw-background-color: #F3F4F7;
    --tw-background-color-secondary: #0445720d;
}

/* Tema App Empresarial (AE) */

[data-theme="ae"] {
    --tw-color-text-default: #4D4D4D;
    --tw-color-text: #242424;
    --tw-color-primary: #621FA4;
    --tw-color-primary-rgb: 98, 31, 164;
    --tw-color-primary-hover: #51178C;
    --tw-color-primary-100: #f0e8f6;
    --tw-color-primary-200: #d1b8e4;
    --tw-color-primary-300: #b288d2;
    --tw-color-primary-400: #9358c0;
    --tw-color-primary-500: #7438ae;
    --tw-color-secondary: #8A2DE8;
    --tw-color-secondary-hover: #6D1DBD;
    --tw-color-secondary-100: #f3eafd;
    --tw-color-secondary-200: #d9bff8;
    --tw-color-secondary-300: #bf94f3;
    --tw-color-secondary-400: #a569ee;
    --tw-color-secondary-500: #8a3de9;
    --tw-color-success: #3DC661;
    --tw-color-success-hover: #2CAD4E;
    --tw-color-warning: #FCBF19;
    --tw-color-warning-hover: #DDA715;
    --tw-color-danger: #DB102B;
    --tw-color-danger-hover: #B7041C;
    --tw-color-info: #1974FC;
    --tw-color-info-hover: #1556B7;
    --tw-background-color: #FFFFFF;
    --tw-background-color-secondary: #611fa30d;
}

/* Tema EmissorNota (EN) */

[data-theme="en"] {
    --tw-color-text-default: #4D4D4D;
    --tw-color-text: #242424;
    --tw-color-primary: #E0650D;
    --tw-color-primary-rgb: 224, 101, 13;
    --tw-color-primary-hover: #BE5307;
    --tw-color-primary-100: #fdf0e7;
    --tw-color-primary-200: #f8d1b6;
    --tw-color-primary-300: #f3b285;
    --tw-color-primary-400: #ee9354;
    --tw-color-primary-500: #e97c30;
    --tw-color-secondary: #8C420D;
    --tw-color-secondary-hover: #5D2B07;
    --tw-color-secondary-100: #f5ece7;
    --tw-color-secondary-200: #dfc8b6;
    --tw-color-secondary-300: #c9a485;
    --tw-color-secondary-400: #b38054;
    --tw-color-secondary-500: #9d6130;
    --tw-color-success: #3DC661;
    --tw-color-success-hover: #2CAD4E;
    --tw-color-warning: #FCBF19;
    --tw-color-warning-hover: #DDA715;
    --tw-color-danger: #DB102B;
    --tw-color-danger-hover: #B7041C;
    --tw-color-info: #1974FC;
    --tw-color-info-hover: #1556B7;
    --tw-background-color: #FFFFFF;
    --tw-background-color-secondary: #de640d14;
}

/* Fallback: se nenhum tema definido, usa GA como padrão */

:root {
    --tw-color-text-default: #4D4D4D;
    --tw-color-text: #044572;
    --tw-color-primary: #004A6C;
    --tw-color-primary-rgb: 0, 74, 108;
    --tw-color-primary-hover: #003046;
    --tw-color-primary-100: #e6edf1;
    --tw-color-primary-200: #b3cbd8;
    --tw-color-primary-300: #80a5b6;
    --tw-color-primary-400: #4d7f94;
    --tw-color-primary-500: #1a6580;
    --tw-color-secondary: #009997;
    --tw-color-secondary-hover: #007371;
    --tw-color-secondary-100: #e6f7f7;
    --tw-color-secondary-200: #b3e8e7;
    --tw-color-secondary-300: #80d9d8;
    --tw-color-secondary-400: #4dcac8;
    --tw-color-secondary-500: #1abbb9;
    --tw-color-success: #3DC661;
    --tw-color-success-hover: #2CAD4E;
    --tw-color-warning: #FCBF19;
    --tw-color-warning-hover: #DDA715;
    --tw-color-danger: #DB102B;
    --tw-color-danger-hover: #B7041C;
    --tw-color-info: #1974FC;
    --tw-color-info-hover: #1556B7;
    --tw-background-color: #F3F4F7;
    --tw-background-color-secondary: #0445720d;
}

/* Importa os overrides do PrimeFaces (com @layer components e @apply) */

/* PrimeFaces Overrides (GA) — organizado por cascata: Base → Botões → Inputs → Overlays → Componentes */

/* ========== BASE ========== */

label {
        display: inline-block;
        font-size: 0.875rem;
        font-weight: 700;
        color: var(--tw-color-primary);
    }

/*Classes pré-renderizadas para conteúdo dinâmico*/

.border-green-500 {
  --tw-border-opacity: 1;
  border-color: rgb(34 197 94 / var(--tw-border-opacity, 1));
}

.hover\:border-green-500:hover {
  --tw-border-opacity: 1;
  border-color: rgb(34 197 94 / var(--tw-border-opacity, 1));
}

.border-red-500 {
  --tw-border-opacity: 1;
  border-color: rgb(239 68 68 / var(--tw-border-opacity, 1));
}

.hover\:border-red-500:hover {
  --tw-border-opacity: 1;
  border-color: rgb(239 68 68 / var(--tw-border-opacity, 1));
}

.border-blue-500 {
  --tw-border-opacity: 1;
  border-color: rgb(59 130 246 / var(--tw-border-opacity, 1));
}

.hover\:border-blue-500:hover {
  --tw-border-opacity: 1;
  border-color: rgb(59 130 246 / var(--tw-border-opacity, 1));
}

.text-blue-500 {
  --tw-text-opacity: 1;
  color: rgb(59 130 246 / var(--tw-text-opacity, 1));
}

.bg-blue-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(59 130 246 / var(--tw-bg-opacity, 1));
}

.bg-blue-500\/30 {
  background-color: rgb(59 130 246 / 0.3);
}

.border-yellow-500 {
  --tw-border-opacity: 1;
  border-color: rgb(234 179 8 / var(--tw-border-opacity, 1));
}

.hover\:border-yellow-500:hover {
  --tw-border-opacity: 1;
  border-color: rgb(234 179 8 / var(--tw-border-opacity, 1));
}

.bg-red-500\/30 {
  background-color: rgb(239 68 68 / 0.3);
}

.bg-yellow-500\/30 {
  background-color: rgb(234 179 8 / 0.3);
}

.bg-green-500\/30 {
  background-color: rgb(34 197 94 / 0.3);
}

.text-red-500 {
  --tw-text-opacity: 1;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1));
}

.text-yellow-500 {
  --tw-text-opacity: 1;
  color: rgb(234 179 8 / var(--tw-text-opacity, 1));
}

.text-green-500 {
  --tw-text-opacity: 1;
  color: rgb(34 197 94 / var(--tw-text-opacity, 1));
}

.border-\[\#172b4d\] {
  --tw-border-opacity: 1;
  border-color: rgb(23 43 77 / var(--tw-border-opacity, 1));
}

.bg-\[\#172b4d\] {
  --tw-bg-opacity: 1;
  background-color: rgb(23 43 77 / var(--tw-bg-opacity, 1));
}

.bg-\[\#172b4d\]\/30 {
  background-color: rgb(23 43 77 / 0.3);
}

/* ========== BUTTONS (base + design system) ========== */

/* Base “antigo” (mantido porque complementa o novo em alguns pontos) */

.ui-button {
    font-size: 0.875rem;
    font-weight: 600;
    transition-property: background-color,color;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  border-radius: 0.25rem;
  font-family: "Nunito Sans", sans-serif;
  height: 36px;
  padding: 1rem;
  border: none;
}

.ui-button.ui-state-hover {
  opacity: 0.9;
}

/* Base do Prime (design system) + Color System via CSS Custom Properties */

.ui-button {
    display: inline-flex;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border-radius: 0.375rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    font-family: "Nunito Sans", sans-serif;
    font-size: 0.875rem;
    font-weight: 500;
    transition-property: background-color,color;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
  --_btn-bg: var(--tw-color-text);
  --_btn-text: #fff;
  --_btn-border: transparent;
  background-color: var(--_btn-bg);
  color: var(--_btn-text);
  border: 1px solid var(--_btn-border);
}

/* Texto */

.ui-button .ui-button-text {
    line-height: 1;
}

/* Ícones */

.ui-button .ui-icon,
.ui-icon {
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
}

.ui-button .ui-button-icon-left,
.ui-button .ui-button-icon-right {
    font-size: 0.875rem;
}

/* Só ícone */

.ui-button.ui-button-icon-only {
    padding-left: 0px;
    padding-right: 0px;
}

/* Disabled */

.ui-state-disabled {
    cursor: not-allowed;
    opacity: 0.5;
}

.ui-button.ui-state-disabled,
.ui-button[aria-disabled="true"] {
    cursor: not-allowed;
    opacity: 0.5;
}

/* Focus */

.ui-button:focus-visible {
    outline: 2px solid transparent;
    outline-offset: 2px;
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
    --tw-ring-color: currentColor;
    --tw-ring-offset-width: 2px;
}

/* Rounded (sua classe) */

.ui-button.rounded-button {
    border-radius: 9999px;
}

/* Raised (só sombra) */

.ui-button.ui-button-raised {
    --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

/* Raised text (ui-button-raised ui-button-flat) */

.ui-button.ui-button-raised.ui-button-flat {
  --_btn-bg: #fff;
  --_btn-border: #e5e7eb;
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

/* Severities — Filled (cor via CSS variables, sem :not() de alta especificidade) */

.ui-button.ui-button-secondary {
  --_btn-bg: #4b5563;
}

.ui-button.ui-button-success {
  --_btn-bg: #6CBC28;
}

.ui-button.ui-button-info {
  --_btn-bg: #0284c7;
}

.ui-button.ui-button-warning {
  --_btn-bg: #f59e0b;
}

.ui-button.ui-button-help {
  --_btn-bg: #9333ea;
}

.ui-button.ui-button-danger {
  --_btn-bg: #F54545;
}

/* Outlined — reseta bg (DEVE vir após severities para ganhar na cascata) */

.ui-button.ui-button-outlined {
  --_btn-bg: transparent;
  --_btn-text: var(--tw-color-text);
  --_btn-border: currentColor;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

/* Flat (text) — reseta bg */

.ui-button.ui-button-flat {
  --_btn-bg: transparent;
  --_btn-text: var(--tw-color-text);
  --_btn-border: transparent;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

/* Plain */

.ui-button.ui-button-plain {
  --_btn-text: #6b7280;
}

/* Override para container no-bg-button */

.no-bg-button .ui-button {
  --_btn-bg: transparent;
  --_btn-text: var(--tw-color-text);
}

/* Severities — texto para Outlined / Flat */

.ui-button.ui-button-secondary.ui-button-outlined,
.ui-button.ui-button-secondary.ui-button-flat {
  --_btn-text: #4b5563;
}

.ui-button.ui-button-success.ui-button-outlined,
.ui-button.ui-button-success.ui-button-flat {
  --_btn-text: #6CBC28;
}

.ui-button.ui-button-info.ui-button-outlined,
.ui-button.ui-button-info.ui-button-flat {
  --_btn-text: #0284c7;
}

.ui-button.ui-button-warning.ui-button-outlined,
.ui-button.ui-button-warning.ui-button-flat {
  --_btn-text: #f59e0b;
}

.ui-button.ui-button-help.ui-button-outlined,
.ui-button.ui-button-help.ui-button-flat {
  --_btn-text: #9333ea;
}

.ui-button.ui-button-danger.ui-button-outlined,
.ui-button.ui-button-danger.ui-button-flat {
  --_btn-text: #F54545;
}

/* Plain deve ganhar das severities no modo flat */

.ui-button.ui-button-plain.ui-button-flat,
.ui-button.ui-button-plain.ui-button-raised.ui-button-flat {
  --_btn-text: #6b7280;
}

/* Hover */

.ui-button:not(.ui-button-outlined):not(.ui-button-flat):not(.ui-state-disabled):not([aria-disabled="true"]):hover {
    --tw-brightness: brightness(.95);
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.ui-button.ui-button-outlined:not(.ui-state-disabled):not([aria-disabled="true"]):hover {
    background-color: rgb(0 0 0 / 0.05);
}

.ui-button.ui-button-flat:not(.ui-state-disabled):not([aria-disabled="true"]):hover {
    background-color: rgb(0 0 0 / 0.05);
}

.ui-button.ui-button-plain:not(.ui-state-disabled):not([aria-disabled="true"]):hover {
    background-color: rgb(0 0 0 / 0.05);
    --tw-text-opacity: 1;
    color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}

/* ========== INPUT BASE ========== */

.ui-inputfield {
        border: 1px solid #CED4DA;
        display: block;
        height: 36px;
        width: 100%;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(251 251 251 / var(--tw-bg-opacity, 1));
        font-family: "Nunito Sans",sans-serif;
        font-size: 0.875rem;
        --tw-text-opacity: 1;
        color: rgb(77 77 77 / var(--tw-text-opacity, 1));
        transition-property: border,background-color;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 180ms;
        transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  padding: 1rem;
    }

.ui-inputfield.ui-state-focus {
  border-color: var(--tw-color-primary);
}

.ui-inputfield::-moz-placeholder {
    font-style: italic;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
    opacity: 0.5;
}

.ui-inputfield::placeholder {
    font-style: italic;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
    opacity: 0.5;
}

/* Largura/altura padrão (36px) */

.ui-inputtext,
.ui-inputmask,
.ui-password,
.ui-autocomplete,
.ui-selectonemenu,
.ui-calendar input,
.ui-selectbooleanbutton:not(.ga-pilltoggle),
.ui-autocomplete .ui-autocomplete-input,
.ui-selectonebutton .ui-button,
.ui-spinner,
.ui-spinner .ui-spinner-input {
    width: 100% !important;
  height: 36px;
}

/* Reaplica base quando o Prime não herda tudo */

.ui-inputfield.ui-inputtext,
.ui-inputfield.ui-inputmask,
.ui-inputfield.ui-password,
.ui-autocomplete .ui-inputfield.ui-autocomplete-input,
.ui-inputfield.ui-spinner .ui-inputfield.ui-spinner-input,
.ui-chips-input-token input,
.ui-calendar input {
        border: 1px solid #CED4DA;
        width: 100%;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(251 251 251 / var(--tw-bg-opacity, 1));
        font-family: "Nunito Sans",sans-serif;
        font-size: 0.875rem;
        --tw-text-opacity: 1;
        color: rgb(77 77 77 / var(--tw-text-opacity, 1));
        transition-property: border,background-color;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 180ms;
        transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  display: block;
  padding: 0 1rem;
    }

.ui-inputtext:disabled,
.ui-inputmask:disabled,
.ui-password:disabled,
.ui-autocomplete .ui-autocomplete-input:disabled,
.ui-spinner .ui-spinner-input:disabled {
    cursor: not-allowed;
    opacity: 0.6;
}

.ui-inputtext:-moz-read-only, .ui-inputmask:-moz-read-only, .ui-password:-moz-read-only, .ui-autocomplete .ui-autocomplete-input:-moz-read-only, .ui-spinner .ui-spinner-input:-moz-read-only {
    cursor: default;
    opacity: 0.6;
}

.ui-inputtext:read-only,
.ui-inputmask:read-only,
.ui-password:read-only,
.ui-autocomplete .ui-autocomplete-input:read-only,
.ui-spinner .ui-spinner-input:read-only {
    cursor: default;
    opacity: 0.6;
}

.ui-inputtext:focus,
.ui-inputtext.ui-state-focus,
.ui-inputmask.ui-state-focus,
.ui-password.ui-state-focus,
.ui-autocomplete .ui-autocomplete-input.ui-state-focus,
.ui-spinner .ui-spinner-input.ui-state-focus {
  border-color: var(--tw-color-primary);
  outline: none;
}

.ui-inputtext::-moz-placeholder, .ui-inputmask::-moz-placeholder, .ui-password::-moz-placeholder, .ui-autocomplete .ui-autocomplete-input::-moz-placeholder, .ui-spinner .ui-spinner-input::-moz-placeholder {
    font-style: italic;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
    opacity: 0.5;
}

.ui-inputtext::placeholder,
.ui-inputmask::placeholder,
.ui-password::placeholder,
.ui-autocomplete .ui-autocomplete-input::placeholder,
.ui-spinner .ui-spinner-input::placeholder {
    font-style: italic;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
    opacity: 0.5;
}

/* Textarea */

.ui-inputfield.ui-inputtextarea {
        border: 1px solid #CED4DA;
        height: auto;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(251 251 251 / var(--tw-bg-opacity, 1));
        font-family: "Nunito Sans",sans-serif;
        font-size: 0.875rem;
        --tw-text-opacity: 1;
        color: rgb(77 77 77 / var(--tw-text-opacity, 1));
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 180ms;
        transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  padding: 0.75rem;
  min-height: 80px;
    }

.ui-inputtextarea.ui-state-focus {
  border-color: var(--tw-color-primary);
}

.ui-inputtextarea::-moz-placeholder {
    font-style: italic;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
    opacity: 0.5;
}

.ui-inputtextarea::placeholder {
    font-style: italic;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
    opacity: 0.5;
}

/* ========== INPUTGROUP ========== */

.ui-inputgroup {
    position: relative;
    display: flex;
    width: 100%;
    align-items: stretch;
}

.ui-inputgroup .ui-inputgroup-addon {
        border: 1px solid #CED4DA;
        margin-bottom: 0px;
        display: inline-flex !important;
        min-width: 2.25rem !important;
        align-items: center;
        justify-content: center;
        white-space: nowrap;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
        padding: 0px !important;
        text-align: center;
        font-size: 0.875rem;
        font-weight: 700;
        line-height: 1.5rem;
        --tw-text-opacity: 1;
        color: rgb(73 80 87 / var(--tw-text-opacity, 1));
  height: 36px;
  text-decoration: none;
    }

.ui-inputgroup .ui-inputgroup-addon a:hover {
    text-decoration-line: none;
}

.ui-inputgroup .ui-inputgroup-addon i {
    display: inline-flex !important;
    font-size: 1rem;
}

.ui-inputgroup .ui-inputgroup-addon:hover i {
        color: var(--tw-color-primary);
    }

/* Garante override do inputgroup sobre o sistema de botões quando necessário */

.ui-inputgroup .ui-button {
    --tw-text-opacity: 1;
    color: rgb(86 97 103 / var(--tw-text-opacity, 1));
}

/* Ícone dentro do botão */

.ui-inputgroup .ui-button .pi {
  font-size: 16px;
}

/* Bordas “coladas” */

.ui-inputgroup > .ui-inputgroup-addon:not(:last-child),
.ui-inputgroup .ui-inputgroup-addon:not(:last-child),
.ui-inputgroup > .ui-inputfield:not(:last-child),
.ui-inputgroup .ui-inputfield:not(:last-child),
.ui-inputgroup > .ui-selectonemenu:not(:last-child),
.ui-inputgroup .ui-selectonemenu:not(:last-child),
.ui-inputgroup > .ui-selectcheckboxmenu:not(:last-child),
.ui-inputgroup .ui-selectcheckboxmenu:not(:last-child),
.ui-inputgroup > .ui-autocomplete:not(:last-child) .ui-autocomplete-input,
.ui-inputgroup .ui-autocomplete:not(:last-child) .ui-autocomplete-input,
.ui-inputgroup > .ui-button:not(:last-child),
.ui-inputgroup .ui-button:not(:last-child) {
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
  border: 1px solid #ced4da !important;
}

.ui-inputgroup > .ui-inputgroup-addon:not(:first-child),
.ui-inputgroup .ui-inputgroup-addon:not(:first-child),
.ui-inputgroup > .ui-inputfield:not(:first-child),
.ui-inputgroup .ui-inputfield:not(:first-child),
.ui-inputgroup > .ui-selectonemenu:not(:first-child),
.ui-inputgroup .ui-selectonemenu:not(:first-child),
.ui-inputgroup > .ui-selectcheckboxmenu:not(:first-child),
.ui-inputgroup .ui-selectcheckboxmenu:not(:first-child),
.ui-inputgroup > .ui-autocomplete:not(:first-child) .ui-autocomplete-input,
.ui-inputgroup .ui-autocomplete:not(:first-child) .ui-autocomplete-input,
.ui-inputgroup > .ui-button:not(:first-child),
.ui-inputgroup .ui-button:not(:first-child) {
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
  border: 1px solid #ced4da !important;
}

.ui-inputgroup .ui-selectonemenu .ui-selectonemenu-label {
    border-style: none !important;
    background-color: transparent;
}

.ui-inputgroup .ui-selectonemenu .ui-selectonemenu-trigger {
    border-left-width: 0px !important;
    background-color: transparent !important;
}

.ui-inputgroup .ui-selectcheckboxmenu {
    flex: 1 1 0%;
}

.ui-inputgroup .ui-selectcheckboxmenu .ui-selectcheckboxmenu-label-container {
    border-style: none !important;
    background-color: transparent;
}

.ui-inputgroup .ui-selectcheckboxmenu .ui-selectcheckboxmenu-trigger {
    border-left-width: 0px !important;
    background-color: transparent !important;
}

.ui-inputgroup > .ui-inputgroup-addon:not(:first-child) {
  margin-left: -1px;
}

.ui-inputgroup > .ui-inputgroup-addon:not(:last-child) {
  margin-right: -1px;
}

.ui-inputgroup > .ui-inputgroup-addon:first-child {
    border-top-left-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
}

.ui-inputgroup > .ui-inputgroup-addon:last-child .ui-button {
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
}

.ui-inputgroup > .ui-inputgroup-addon .ui-button {
  min-width: 36px;
}

.ui-inputgroup > .ui-inputgroup-addon .ui-selectonemenu {
    border-top-right-radius: 0.375rem;
    border-bottom-right-radius: 0.375rem;
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
    border-width: 0px;
  height: 34px;
}

.ui-inputgroup > .ui-inputgroup-addon .ui-selectonemenu .ui-selectonemenu-label {
  padding: .4rem .5rem;
}

.ui-inputgroup > .ui-inputgroup-addon .ui-commandlink {
    display: flex !important;
    padding: .563rem !important;
}

.group-select-action .ui-selectonemenu {
    display: flex !important;
    padding-right: 0px;
}

.group-select-action .ui-selectonemenu .ui-selectonemenu-label {
    margin-top: 1px;
    height: 34px;
    width: -moz-fit-content !important;
    width: fit-content !important;
    border-width: 0px !important;
    padding: 0.5rem !important;
    font-weight: 600;
    font-style: italic;
    --tw-text-opacity: 1;
    color: rgb(44 154 197 / var(--tw-text-opacity, 1));
}

.group-select-action .ui-selectonemenu .ui-selectonemenu-trigger {
    position: relative !important;
    top: 1px !important;
    right: 1px !important;
    border-radius: 0px !important;
    border-width: 0px;
    background-color: transparent !important;
}

.group-select-action .ui-selectonemenu .ui-selectonemenu-trigger .ui-icon {
    border-radius: 0px !important;
}

.group-select-action .ui-selectonemenu .ui-selectonemenu-trigger .ui-icon::before {
    margin-top: 4px;
    --tw-text-opacity: 1;
    color: rgb(44 154 197 / var(--tw-text-opacity, 1));
}

/* ========== SELECT ONE MENU (Dropdown) ========== */

.ui-selectonemenu {
        border: 1px solid #CED4DA;
        width: 100%;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(251 251 251 / var(--tw-bg-opacity, 1));
        font-size: 0.875rem;
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 180ms;
        transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  height: 36px;
  padding: 0 3rem 0 0;
    }

.ui-selectonemenu .ui-selectonemenu-label {
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
  padding: 0.45rem 0 0.45rem 1rem;
  height: 100%;
}

.ui-selectonemenu .ui-selectonemenu-trigger {
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(251 251 251 / var(--tw-bg-opacity, 1));
  border: none;
}

.ui-selectonemenu.ui-state-focus {
  border-color: var(--tw-color-primary);
}

/* ========== TRIGGERS / ICONS (autocomplete, select, calendar trigger) ========== */

.ui-autocomplete .ui-autocomplete-dropdown,
.ui-selectonemenu .ui-selectonemenu-trigger,
.ui-password-panel .ui-password-panel-trigger {
  background-color: #e9ecef !important;
  height: 34px !important;
  right: 0px !important;
  border-radius: 0 8px 8px 0;
  border-left: 1px solid #ced4da;
  padding: 0.5rem !important;
  width: 36px !important;
}

.ui-autocomplete .ui-autocomplete-dropdown {
  top: 1px;
}

/* Calendar trigger “legacy” (mantido) — evita vazar no calendar-w-btn */

.ui-calendar:not(.ui-calendar-w-btn) .ui-datepicker-trigger {
    position: absolute;
    right: 0px;
  background-color: #e9ecef !important;
  border-left: 1px solid #ced4da;
  border-radius: 0 8px 8px 0;
  padding: 0.5rem !important;
  height: 34px !important;
  width: 36px !important;
  bottom: 1px;
}

/* Remove sprite e permite pseudo */

.ui-autocomplete .ui-autocomplete-dropdown .ui-button-icon-primary.ui-icon,
.ui-calendar .ui-datepicker-trigger .ui-icon,
.ui-selectonemenu .ui-selectonemenu-trigger .ui-icon {
  background: none !important;
  text-indent: 0 !important;
  overflow: visible !important;
  width: auto !important;
  height: auto !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}

/* Glyph */

.ui-autocomplete .ui-autocomplete-dropdown .ui-button-icon-primary.ui-icon:before,
.ui-selectonemenu .ui-selectonemenu-trigger .ui-icon:before {
        color: var(--tw-color-primary);
  font-family: uicons-solid-rounded !important;
  content: "\e0a1" !important;
  font-size: 16px;
  line-height: 1;
    }

.ui-calendar .ui-datepicker-trigger .ui-icon:before {
        color: var(--tw-color-primary);
  font-family: uicons-solid-rounded !important;
  content: "\e35d" !important;
  font-size: 16px;
  line-height: 1;
    }

/* Cor base e hover */

.ui-autocomplete .ui-autocomplete-dropdown .ui-button-icon-primary.ui-icon:before,
.ui-calendar .ui-datepicker-trigger .ui-icon:before,
.ui-selectonemenu .ui-selectonemenu-trigger .ui-icon:before {
    --tw-text-opacity: 1;
    color: rgb(98 98 98 / var(--tw-text-opacity, 1));
}

.ui-autocomplete .ui-autocomplete-dropdown:hover .ui-button-icon-primary.ui-icon:before,
.ui-calendar .ui-datepicker-trigger:hover .ui-icon:before,
.ui-selectonemenu .ui-selectonemenu-trigger:hover .ui-icon:before {
    color: var(--tw-color-primary-hover);
}

/* ========== CALENDAR (PrimeFaces 7) ========== */

.ui-calendar {
    position: relative;
}

.ui-calendar.ui-calendar-w-btn {
    position: relative;
    width: 100%;
}

/* Input */

.ui-calendar.ui-calendar-w-btn > input.ui-inputfield {
        border: 1px solid #CED4DA;
        width: 100%;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(251 251 251 / var(--tw-bg-opacity, 1));
        font-family: "Nunito Sans",sans-serif;
        font-size: 0.875rem;
        --tw-text-opacity: 1;
        color: rgb(77 77 77 / var(--tw-text-opacity, 1));
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 180ms;
        transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  height: 36px;
  padding: 0 2.5rem 0 1rem;
    }

.ui-calendar.ui-calendar-w-btn > input.ui-inputfield.ui-state-focus,
.ui-calendar.ui-calendar-w-btn > input.ui-inputfield:focus {
  border-color: var(--tw-color-primary);
  outline: none;
}

.ui-calendar.ui-calendar-w-btn > input.ui-inputfield::-moz-placeholder {
    font-style: italic;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
    opacity: 0.5;
}

.ui-calendar.ui-calendar-w-btn > input.ui-inputfield::placeholder {
    font-style: italic;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
    opacity: 0.5;
}

/* Botão/trigger interno */

.ui-calendar.ui-calendar-w-btn > .ui-button {
  --_btn-bg: transparent;
  --_btn-border: transparent;
  position: absolute;
  top: 50%;
  right: 0.5rem;
  display: flex;
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  align-items: center;
  justify-content: center;
  border-radius: 0.375rem;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 180ms;
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  width: 28px;
  height: 28px;
  box-shadow: none;
  padding: 0;
}

.ui-calendar.ui-calendar-w-btn > .ui-button:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
}

.ui-calendar.ui-calendar-w-btn > .ui-button .ui-icon {
  background: none !important;
  text-indent: 0 !important;
  overflow: visible !important;
  width: auto !important;
  height: auto !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}

.ui-calendar.ui-calendar-w-btn > .ui-button .ui-icon:before {
  font-family: uicons-solid-rounded !important;
  content: "\e124" !important;
  font-size: 14px;
  line-height: 1;
  color: var(--tw-color-text);
}

.ui-calendar.ui-calendar-w-btn.ui-state-focus > input.ui-inputfield {
  border-color: var(--tw-color-primary);
}

/* Disabled */

.ui-calendar.ui-calendar-w-btn.ui-state-disabled > input.ui-inputfield,
.ui-calendar.ui-calendar-w-btn > input.ui-inputfield:disabled {
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
  cursor: not-allowed;
}

.ui-calendar.ui-calendar-w-btn.ui-state-disabled > .ui-button,
.ui-calendar.ui-calendar-w-btn > input.ui-inputfield:disabled + .ui-button {
  opacity: 0.5;
  pointer-events: none;
}

/* Popup (.ui-datepicker) */

.ui-datepicker {
        border: 1px solid #CED4DA;
        width: auto !important;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding: 1rem !important;
        --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05) !important;
        --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color) !important;
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
    }

/* Header */

.ui-datepicker .ui-datepicker-header {
        border: 1px solid #CED4DA;
        display: flex;
        height: 35px;
        align-items: center;
        justify-content: center;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding: 0px !important;
    }

/* Título */

.ui-datepicker .ui-datepicker-title {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--tw-color-text);
}

/* Prev/Next */

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    top: 0.5rem;
    display: inline-flex;
    height: 28px;
    width: 28px;
    align-items: center;
    justify-content: center;
    border-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ui-datepicker .ui-datepicker-prev:hover,
.ui-datepicker .ui-datepicker-next:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(206 212 218 / var(--tw-bg-opacity, 1));
}

.ui-datepicker .ui-datepicker-header .ui-datepicker-next,
.ui-datepicker .ui-datepicker-header .ui-datepicker-prev {
    display: flex;
    color: var(--tw-color-text);
    text-decoration-line: none !important;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  font-family: uicons-solid-rounded !important;
  font-size: 1rem;
  width: 1.8rem;
  height: 1.8rem;
  line-height: 1.8rem;
  cursor: pointer;
}

.ui-datepicker .ui-icon {
  text-indent: -99999px !important;
}

.ui-datepicker .ui-datepicker-prev:before {
  content: "\e09f" !important;
}

.ui-datepicker .ui-datepicker-next:before {
  content: "\e0a0" !important;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    top: 0px !important;
    height: 33px !important;
    width: 41px !important;
    border-width: 0px;
    border-style: solid;
    --tw-border-opacity: 1;
    border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-header .ui-datepicker-prev {
    left: 0px !important;
    border-right-width: 1px !important;
  border-radius: 8px 0 0 8px !important;
}

.ui-datepicker .ui-datepicker-next,
.ui-datepicker .ui-datepicker-header .ui-datepicker-next {
    right: 0px !important;
    border-left-width: 1px !important;
  border-radius: 0 8px 8px 0 !important;
}

/* Tabela */

.ui-datepicker .ui-datepicker-calendar {
        border: 1px solid #CED4DA;
        margin-top: 1rem;
        margin-bottom: 0px;
        width: 100%;
        border-collapse: collapse;
        --tw-border-spacing-x: 0px;
        --tw-border-spacing-y: 0px;
        border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);
        overflow: hidden;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
    }

.ui-datepicker .ui-datepicker-calendar thead {
    border-radius: 0.5rem !important;
    --tw-bg-opacity: 1 !important;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)) !important;
}

.ui-datepicker .ui-datepicker-calendar th {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--tw-color-text);
}

.ui-datepicker .ui-datepicker-calendar td {
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ui-datepicker .ui-datepicker-calendar td a {
    display: inline-flex;
    height: 2rem;
    width: 2rem;
    align-items: center;
    justify-content: center;
    border-radius: 0.5rem;
    font-weight: 600;
    --tw-text-opacity: 1;
    color: rgb(51 51 51 / var(--tw-text-opacity, 1));
}

.ui-datepicker .ui-datepicker-calendar td a:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
    color: var(--tw-color-text);
}

.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today a,
.ui-datepicker .ui-datepicker-calendar td.ui-state-highlight a {
    color: var(--tw-color-text);
}

.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day a,
.ui-datepicker .ui-datepicker-calendar td.ui-state-active a {
    background-color: var(--tw-color-text);
    font-weight: 700;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-unselectable span,
.ui-datepicker .ui-datepicker-calendar td.ui-state-disabled span,
.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-unselectable a,
.ui-datepicker .ui-datepicker-calendar td.ui-state-disabled a {
    cursor: not-allowed;
    --tw-text-opacity: 1;
    color: rgb(206 212 218 / var(--tw-text-opacity, 1));
}

/* ========== TIME PICKER ========== */

.ui-timepicker {
        border: 1px solid #CED4DA;
        width: 100%;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(251 251 251 / var(--tw-bg-opacity, 1));
        font-size: 0.875rem;
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 180ms;
        transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  height: 36px;
  padding: 0 3rem 0 0;
    }

.ui-timepicker .ui-timepicker-input {
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
  padding: 0.45rem 0 0.45rem 1rem;
  height: 100%;
}

/* ========== LISTBOX ========== */

.ui-listbox {
        border: 1px solid #CED4DA;
        overflow: hidden;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    }

.ui-listbox .ui-listbox-header {
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.ui-listbox .ui-listbox-filter-container {
    position: relative;
}

.ui-listbox .ui-listbox-filter {
        border: 1px solid #CED4DA;
        height: 2.25rem;
        width: 100%;
        border-radius: 0.375rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding-left: 0.75rem;
        padding-right: 0.75rem;
        font-size: 0.875rem;
    }

.ui-listbox .ui-listbox-list {
    max-height: 16rem;
    overflow-y: auto;
}

.ui-listbox .ui-listbox-item {
    cursor: pointer;
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-listbox .ui-listbox-item:last-child {
    border-bottom-width: 0px;
}

.ui-listbox .ui-listbox-item:hover:not(.ui-state-highlight) {
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
}

.ui-listbox .ui-listbox-item.ui-state-highlight {
    background-color: var(--tw-color-primary);
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* ========== SELECTCHECKBOXMENU ========== */

.ui-selectcheckboxmenu {
        border: 1px solid #CED4DA;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(251 251 251 / var(--tw-bg-opacity, 1));
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 180ms;
        transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  height: 36px;
    }

.ui-selectcheckboxmenu .ui-selectcheckboxmenu-label-container {
    display: flex;
    height: 100%;
    align-items: center;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

.ui-selectcheckboxmenu .ui-selectcheckboxmenu-label {
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
}

.ui-selectcheckboxmenu .ui-selectcheckboxmenu-trigger {
    display: flex;
    height: 100%;
    width: 2.25rem !important;
    align-items: center;
    justify-content: center;
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
    border-left-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
}

.ui-selectcheckboxmenu .ui-selectcheckboxmenu-trigger .ui-icon {
    background-color: transparent;
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
}

.ui-selectcheckboxmenu .ui-selectcheckboxmenu-trigger .ui-icon:before {
  content: "\e0a1";
  --tw-text-opacity: 1;
  color: rgb(98 98 98 / var(--tw-text-opacity, 1));
}

.ui-selectcheckboxmenu:hover,
.ui-selectcheckboxmenu.ui-state-focus {
    border-color: var(--tw-color-primary);
}

.ui-selectcheckboxmenu-panel {
        border: 1px solid #CED4DA;
        overflow: hidden;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
        --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    }

.ui-selectcheckboxmenu-panel .ui-selectcheckboxmenu-header {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.ui-selectcheckboxmenu-panel .ui-selectcheckboxmenu-filter-container {
    flex: 1 1 0%;
}

.ui-selectcheckboxmenu-panel .ui-selectcheckboxmenu-filter {
        border: 1px solid #CED4DA;
        height: 2rem;
        width: 100%;
        border-radius: 0.375rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        padding-left: 0.75rem;
        padding-right: 0.75rem;
        font-size: 0.875rem;
    }

.ui-selectcheckboxmenu-panel .ui-selectcheckboxmenu-items-wrapper {
    max-height: 16rem;
    overflow-y: auto;
}

.ui-selectcheckboxmenu-panel .ui-selectcheckboxmenu-item {
    display: flex;
    cursor: pointer;
    align-items: center;
    gap: 0.5rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-selectcheckboxmenu-panel .ui-selectcheckboxmenu-item:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
}

.ui-selectcheckboxmenu-panel .ui-selectcheckboxmenu-item.ui-state-highlight {
    --tw-bg-opacity: 1;
    background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));
}

/* ========== SELECTMANYMENU ========== */

.ui-selectmanymenu {
        border: 1px solid #CED4DA;
        overflow: hidden;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    }

.ui-selectmanymenu .ui-selectlistbox-listcontainer {
    max-height: 16rem;
    overflow-y: auto;
}

.ui-selectmanymenu .ui-selectlistbox-item {
    cursor: pointer;
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-selectmanymenu .ui-selectlistbox-item:last-child {
    border-bottom-width: 0px;
}

.ui-selectmanymenu .ui-selectlistbox-item:hover:not(.ui-state-highlight) {
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
}

.ui-selectmanymenu .ui-selectlistbox-item.ui-state-highlight {
    background-color: var(--tw-color-primary);
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* ========== BADGE ========== */

.ui-badge {
    display: inline-flex;
    height: 1.25rem;
    min-width: 1.25rem;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    padding-left: 0.375rem;
    padding-right: 0.375rem;
    font-size: 0.75rem;
    font-weight: 700;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  background-color: #ef4444;
}

.ui-badge.badge-primary {
    background-color: var(--tw-color-primary);
}

.ui-badge.badge-success {
    --tw-bg-opacity: 1;
    background-color: rgb(34 197 94 / var(--tw-bg-opacity, 1));
}

.ui-badge.badge-warning {
    --tw-bg-opacity: 1;
    background-color: rgb(252 191 25 / var(--tw-bg-opacity, 1));
}

.ui-badge.badge-info {
    --tw-bg-opacity: 1;
    background-color: rgb(59 130 246 / var(--tw-bg-opacity, 1));
}

.ui-badge.badge-danger {
    --tw-bg-opacity: 1;
    background-color: rgb(239 68 68 / var(--tw-bg-opacity, 1));
}

/* ========== TAG ELEMENT ========== */

.ui-tag-element {
    display: flex;
    width: -moz-fit-content;
    width: fit-content;
    gap: 0.25rem;
    text-wrap: nowrap;
    border-radius: 0.25rem;
    --tw-bg-opacity: 1;
    background-color: rgb(224 224 224 / var(--tw-bg-opacity, 1));
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    font-weight: 700;
    --tw-text-opacity: 1;
    color: rgb(0 0 0 / var(--tw-text-opacity, 1));

    &.wrap-initial {
        text-wrap: wrap;
    }

    &._bg-light {
        --tw-border-opacity: 1 !important;
        border-color: rgb(224 224 224 / var(--tw-border-opacity, 1)) !important;
    }

    &._bg-light {
        --tw-bg-opacity: 1 !important;
        background-color: rgb(224 224 224 / var(--tw-bg-opacity, 1)) !important;
    }

    &._bg-light {
        --tw-text-opacity: 1 !important;
        color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
    }

    &._bg-primary {
        background-color: var(--tw-color-primary) !important;
    }

    &._bg-primary {
        --tw-text-opacity: 1 !important;
        color: rgb(255 255 255 / var(--tw-text-opacity, 1)) !important;
    }

    &._bg-success {
        --tw-bg-opacity: 1 !important;
        background-color: rgb(61 198 97 / var(--tw-bg-opacity, 1)) !important;
    }

    &._bg-success {
        --tw-text-opacity: 1 !important;
        color: rgb(255 255 255 / var(--tw-text-opacity, 1)) !important;
    }

    &._bg-warning {
        --tw-bg-opacity: 1 !important;
        background-color: rgb(226 160 63 / var(--tw-bg-opacity, 1)) !important;
    }

    &._bg-warning {
        --tw-text-opacity: 1 !important;
        color: rgb(255 255 255 / var(--tw-text-opacity, 1)) !important;
    }

    &._bg-danger {
        --tw-bg-opacity: 1 !important;
        background-color: rgb(231 81 90 / var(--tw-bg-opacity, 1)) !important;
    }

    &._bg-danger {
        --tw-text-opacity: 1 !important;
        color: rgb(255 255 255 / var(--tw-text-opacity, 1)) !important;
    }
}

/* ========== AVATAR ========== */

.ui-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 9999px;
    --tw-bg-opacity: 1;
    background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
    font-weight: 600;
    --tw-text-opacity: 1;
    color: rgb(75 85 99 / var(--tw-text-opacity, 1));
  width: 2.5rem;
  height: 2.5rem;
}

.ui-avatar img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

.ui-avatar.avatar-sm {
  width: 2rem;
  height: 2rem;
  font-size: 0.75rem;
}

.ui-avatar.avatar-lg {
  width: 3rem;
  height: 3rem;
  font-size: 1.125rem;
}

.ui-avatar.avatar-xl {
  width: 4rem;
  height: 4rem;
  font-size: 1.25rem;
}

.ui-avatar.avatar-square {
    border-radius: 0.5rem;
}

/* ========== TAG ========== */

.ui-tag {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    border-radius: 0.375rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
  background-color: #e5e7eb;
  color: #374151;
}

.ui-tag.tag-primary {
    background-color: var(--tw-color-primary);
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-tag.tag-success {
    --tw-bg-opacity: 1;
    background-color: rgb(34 197 94 / var(--tw-bg-opacity, 1));
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-tag.tag-warning {
    --tw-bg-opacity: 1;
    background-color: rgb(252 191 25 / var(--tw-bg-opacity, 1));
    --tw-text-opacity: 1;
    color: rgb(133 77 14 / var(--tw-text-opacity, 1));
}

.ui-tag.tag-info {
    --tw-bg-opacity: 1;
    background-color: rgb(59 130 246 / var(--tw-bg-opacity, 1));
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-tag.tag-danger {
    --tw-bg-opacity: 1;
    background-color: rgb(239 68 68 / var(--tw-bg-opacity, 1));
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-tag .ui-tag-icon {
    font-size: 0.75rem;
}

/* ========== CHECKBOX / RADIO / TOGGLES ========== */

.ui-selectbooleanbutton {
  --_btn-bg: #ef4444;
  --_btn-border: #ef4444;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 180ms;
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  height: 36px;
  padding: 0;
}

.ui-selectbooleanbutton.ui-state-active {
  --_btn-bg: #22c55e;
  --_btn-text: #fff;
  --_btn-border: #22c55e;
}

.ui-selectbooleanbutton.ui-state-active:hover {
  --_btn-bg: #22c55e;
}

.ui-selectbooleanbutton .ui-button-text {
    font-size: 0.875rem;
    font-weight: 500;
  padding: 0.5em 0 !important;
}

.ui-selectbooleanbutton .ui-button-icon-left {
    margin-right: 0.5rem;
    text-align: left;
  font-size: 1em !important;
  margin-top: -10px !important;
}

.ui-selectbooleanbutton {
  min-width: auto !important;
}

.ui-selectbooleanbutton.ui-state-disabled {
    cursor: not-allowed;
    opacity: 0.5;
}

/* Checkbox */

.ui-chkbox {
    display: inline-flex !important;
    align-items: center;
}

.ui-chkbox .ui-chkbox-box {
        border: 1px solid #CED4DA;
        position: relative;
        margin-bottom: 1px;
        display: block !important;
        border-radius: 0.25rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(251 251 251 / var(--tw-bg-opacity, 1));
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 180ms;
        transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
    width: 18px !important;
    height: 18px !important;
    border-radius: 4px !important;
    min-width: 18px !important;
    }

.ui-chkbox .ui-chkbox-label {
    cursor: pointer;
    font-size: 0.8rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    font-weight: 600;
}

.ui-chkbox .ui-chkbox-box.ui-state-active {
    background-color: var(--tw-color-primary) !important;
    border-color: var(--tw-color-primary) !important;
}

.ui-chkbox .ui-chkbox-box.ui-state-active:before {
    border-color: var(--tw-color-primary) !important;
}

.ui-chkbox .ui-chkbox-box.ui-state-disabled + .ui-chkbox-label {
    cursor: default;
    opacity: 0.5;
}

.ui-chkbox .ui-chkbox-box .ui-chkbox-icon {
    position: absolute;
    top: 2px;
    left: 2px;
    display: inline-flex;
    height: auto;
    width: auto;
    align-items: center;
    justify-content: center;
    overflow: visible;
    background-image: none;
  text-indent: 0 !important;
  font-family: uicons-solid-rounded !important;
  font-size: 12px;
  line-height: 1;
}

.ui-chkbox .ui-chkbox-box .ui-chkbox-icon:before {
  content: "" !important;
}

.ui-chkbox .ui-chkbox-box.ui-state-active .ui-chkbox-icon:before {
  content: "\e430" !important;
}

.ui-chkbox .ui-chkbox-box.ui-state-active .ui-chkbox-icon {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* Radio */

.ui-radiobutton .ui-radiobutton-box {
        border: 1px solid #CED4DA;
        position: relative;
        margin-bottom: 1px;
        display: block !important;
        border-radius: 9999px;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(251 251 251 / var(--tw-bg-opacity, 1));
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 180ms;
        transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  width: 18px;
  height: 18px;
    }

.ui-radiobutton .ui-radiobutton-box.ui-state-active {
    background-color: var(--tw-color-primary);
    border-color: var(--tw-color-primary);
}

.ui-radiobutton .ui-radiobutton-box .ui-radiobutton-icon,
.ui-selectoneradio .ui-radiobutton .ui-radiobutton-box .ui-radiobutton-icon {
    position: absolute;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
    background-image: none;
  width: auto !important;
  height: auto !important;
  border-radius: 0 !important;
  margin: 0 !important;
  background-color: transparent !important;
  text-indent: 0 !important;
  font-family: uicons-solid-rounded !important;
  font-size: 12px;
  line-height: 1;
  top: 1px;
  left: 1px;
}

.ui-radiobutton .ui-radiobutton-box .ui-radiobutton-icon:before {
  content: "" !important;
}

.ui-radiobutton .ui-radiobutton-box.ui-state-active .ui-radiobutton-icon:before {
  content: "\e463" !important;
}

.ui-radiobutton .ui-radiobutton-box.ui-state-active .ui-radiobutton-icon {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* SelectOneButton (toggle group) */

.ui-selectonebutton {
    margin: 0px;
    display: flex !important;
    flex-wrap: nowrap;
    border-radius: 0.375rem;
    padding: 0px;
}

.ui-selectonebutton .ui-button {
  --_btn-bg: #FBFBFB;
  --_btn-text: var(--tw-color-text);
  --_btn-border: #CED4DA;
  width: 100%;
  border-radius: 0px;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 180ms;
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  height: 36px;
  border-left: none;
}

.ui-selectonebutton .ui-button.ui-corner-left {
    border-top-left-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
  border-left: 1px solid #ced4da;
}

.ui-selectonebutton .ui-button.ui-corner-right {
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
}

.ui-selectonebutton .ui-button.ui-state-active {
  --_btn-bg: var(--tw-color-text);
  --_btn-text: #fff;
  --_btn-border: var(--tw-color-text);
}

.ui-selectonebutton .ui-button .ui-button-text {
  padding: 8px 1rem;
}

.ui-selectonebutton .ui-button.ui-state-disabled {
    cursor: not-allowed;
    opacity: 0.5;
}

/* SelectOneRadio (radio group layout) */

.ui-selectoneradio {
    border-width: 0px !important;
}

.ui-selectoneradio table {
    border-collapse: collapse;
}

.ui-selectoneradio td {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
    padding-right: 1rem !important;
}

.ui-selectoneradio label {
    cursor: pointer;
    font-size: 0.8rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    font-weight: 600;
}

/* SelectManyCheckbox (checkbox group layout) */

.ui-selectmanycheckbox {
    border-width: 0px !important;
}

.ui-selectmanycheckbox table {
    border-collapse: collapse;
}

.ui-selectmanycheckbox td {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
    padding-right: 1rem !important;
}

.ui-selectmanycheckbox label {
    cursor: pointer;
    padding-left: 0.5rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
}

/* ========== SPINNER ========== */

.ui-spinner-input {
    padding-right: 1.75rem !important;
}

.ui-spinner {
    display: inline-flex;
}

.ui-spinner .ui-spinner-input {
    border-radius: 0.5rem;
}

.ui-spinner .ui-spinner-up {
    top: 1px !important;
    border-radius: 0px !important;
    border-top-right-radius: 0.5rem !important;
}

.ui-spinner .ui-spinner-button {
    right: 1px !important;
    height: 48% !important;
    width: 1.25rem !important;
    cursor: pointer;
    --tw-bg-opacity: 1 !important;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1)) !important;
    font-size: 1rem !important;
    --tw-text-opacity: 1 !important;
    color: rgb(73 80 87 / var(--tw-text-opacity, 1)) !important;
}

.ui-spinner .ui-spinner-button:hover {
        color: var(--tw-color-primary) !important;
    }

.ui-spinner .ui-spinner-button .ui-icon {
    left: 2px !important;
    top: 1px !important;
    margin-top: 0px !important;
  font-family: uicons-solid-rounded !important;
}

.ui-spinner .ui-spinner-button.ui-spinner-up .ui-icon:before,
.ui-spinner .ui-spinner-up .ui-icon:before {
  content: "\e3d3" !important;
}

.ui-spinner .ui-spinner-down {
    bottom: 1px !important;
    border-radius: 0px !important;
    border-bottom-right-radius: 0.5rem !important;
}

.ui-spinner .ui-spinner-button.ui-spinner-down .ui-icon:before,
.ui-spinner .ui-spinner-down .ui-icon:before {
  content: "\e3ca" !important;
}

/* ========== OVERLAYS (Panels) ========== */

.ui-password-panel,
.ui-password-panel-overlay {
    border-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1) !important;
    --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color) !important;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
  border: 1px solid #ced4da;
}

.ui-selectonemenu-panel,
.ui-autocomplete-panel {
    border-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1) !important;
    --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color) !important;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
  border: 1px solid #ced4da;
  padding: 0.5rem;
  margin-top: 0.25rem;
}

.ui-selectonemenu-panel .ui-selectonemenu-items,
.ui-autocomplete-panel .ui-autocomplete-items {
    font-size: 0.875rem;
  padding: 0;
}

.ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item,
.ui-autocomplete-panel .ui-autocomplete-items .ui-autocomplete-item {
    border-radius: 0.5rem;
    transition-property: background-color,color;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  padding: 0.5rem 0.6rem;
}

.ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item.ui-state-highlight,
.ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item.ui-state-hover,
.ui-autocomplete-panel .ui-autocomplete-items .ui-autocomplete-item.ui-state-highlight,
.ui-autocomplete-panel .ui-autocomplete-items .ui-autocomplete-item.ui-state-hover {
  background-color: var(--tw-color-text) !important;
  color: #fff !important;
}

.ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item.ui-state-highlight label,
.ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item.ui-state-hover label,
.ui-autocomplete-panel .ui-autocomplete-items .ui-autocomplete-item.ui-state-highlight label,
.ui-autocomplete-panel .ui-autocomplete-items .ui-autocomplete-item.ui-state-hover label {
    color: #fff !important;
}

/* ========== DATATABLE ========== */

.ui-datatable .ui-datatable-tablewrapper {
    border-radius: 0.5rem;
  border: 1px solid #e1e6eb;
}

.ui-datatable .ui-datatable-header {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
    background-color: var(--tw-color-text);
    padding: 1rem !important;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-datatable table {
  table-layout: auto !important;
}

/* THEAD / TH */

.ui-datatable table thead th {
    text-align: left;
    font-weight: 700;
    transition-property: background-color,color,border;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  font-size: 0.75rem;
  background-color: #e9ecef;
  border: none;
  color: var(--tw-color-primary);
  padding: 1rem;
  white-space: nowrap;
}

.ui-datatable table thead th.ui-state-hover {
  background-color: #d1d1d1;
}

.ui-datatable table thead th.ui-filter-column .ui-inputfield {
  height: 36px;
  margin-top: 0.5rem;
}

/* Sort icons */

.ui-datatable table thead th.ui-sortable-column .ui-sortable-column-icon {
  font-size: 0.7rem;
  vertical-align: middle;
}

.ui-datatable table thead th.ui-sortable-column .ui-sortable-column-icon.ui-icon-carat-2-n-s:before {
  content: "\f247";
}

.ui-datatable table thead th.ui-sortable-column .ui-sortable-column-icon.ui-icon-carat-2-n-s.ui-icon-triangle-1-n {
  transform: rotate(180deg);
  margin-bottom: 1px;
}

.ui-datatable
  table
  thead
  th.ui-sortable-column
  .ui-sortable-column-icon.ui-icon-carat-2-n-s.ui-icon-triangle-1-n:before {
  content: "\f24f";
}

.ui-datatable
  table
  thead
  th.ui-sortable-column
  .ui-sortable-column-icon.ui-icon-carat-2-n-s.ui-icon-triangle-1-s:before {
  content: "\f24d";
}

/* Cell editor input */

.ui-datatable table .ui-cell-editor-input {
    padding: 0.25rem;
}

/* TBODY */

.ui-datatable table .ui-datatable-data {
    font-size: 0.875rem;
  border: none;
}

.ui-datatable table .ui-datatable-data tr {
  background-color: #fff;
}

.ui-datatable table .ui-datatable-data tr.ui-datatable-even {
  background-color: #fff;
}

.ui-datatable table .ui-datatable-data tr.ui-datatable-odd {
  background-color: #e1e6ebb0;
}

.ui-datatable table .ui-datatable-data tr.ui-state-highlight {
  background-color: rgba(var(--tw-color-primary-rgb), 0.3);
}

.ui-datatable table .ui-datatable-data tr td {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    padding-left: 1rem;
    padding-right: 1rem;
  border: none;
}

/* Row editor */

.ui-datatable table .ui-datatable-data tr td .ui-row-editor {
    display: flex;
    align-items: center;
    justify-content: center;
}

.ui-datatable table .ui-datatable-data tr td .ui-row-editor .ui-icon {
  font-family: uicons-solid-rounded !important;
  font-size: 1.25em;
}

.ui-datatable table .ui-datatable-data tr td .ui-row-editor .ui-row-editor-pencil {
    display: block;
    height: 100%;
    width: 100%;
    border-radius: 0.375rem;
    --tw-bg-opacity: 1;
    background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));
    padding: 0.5rem;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    height: 30px;
    width: 32px;
}

.ui-datatable table .ui-datatable-data tr td .ui-row-editor .ui-row-editor-pencil:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(29 78 216 / var(--tw-bg-opacity, 1));
}

.ui-datatable table .ui-datatable-data tr td .ui-row-editor .ui-row-editor-pencil .ui-icon-pencil {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 16px;
    width: 16px;
}

.ui-datatable table .ui-datatable-data tr td .ui-row-editor .ui-row-editor-pencil .ui-icon-pencil:before {
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    content: "\eea9";
    line-height: 16px;
}

.ui-datatable table .ui-datatable-data tr td .ui-row-editor .ui-row-editor-check {
    margin-right: 0.25rem;
    height: 100%;
    width: 100%;
    border-radius: 0.375rem;
    padding: 0.5rem;
    text-decoration-line: none;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    background-color: var(--tw-color-success);
    height: 30px;
    width: 32px;
}

.ui-datatable table .ui-datatable-data tr td .ui-row-editor .ui-row-editor-check:hover {
    background-color: var(--tw-color-success-hover);
}

.ui-datatable table .ui-datatable-data tr td .ui-row-editor .ui-row-editor-check .ui-icon.ui-icon-check {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 16px;
    width: 16px;
}

.ui-datatable table .ui-datatable-data tr td .ui-row-editor .ui-row-editor-check .ui-icon-check:before {
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    content: "\e430";
    line-height: 16px;
}

.ui-datatable table .ui-datatable-data tr td .ui-row-editor .ui-row-editor-close {
    height: 100%;
    width: 100%;
    border-radius: 0.375rem;
    --tw-bg-opacity: 1;
    background-color: rgb(220 38 38 / var(--tw-bg-opacity, 1));
    padding: 0.5rem;
    text-decoration-line: none;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    height: 30px;
    width: 32px;
}

.ui-datatable table .ui-datatable-data tr td .ui-row-editor .ui-row-editor-close:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(185 28 28 / var(--tw-bg-opacity, 1));
}

.ui-datatable table .ui-datatable-data tr td .ui-row-editor .ui-row-editor-close .ui-icon.ui-icon-close {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 16px;
    width: 16px;
}

.ui-datatable table .ui-datatable-data tr td .ui-row-editor .ui-row-editor-close .ui-icon-close:before {
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    content: "\e5e8";
    line-height: 16px;
}

.ui-datatable table .ui-datatable-data tr td .btn-actions {
    display: flex;
    height: 30px;
    width: 32px;
    align-items: center;
    justify-content: center;
    border-radius: 0.375rem;
    --tw-bg-opacity: 1;
    background-color: rgb(220 38 38 / var(--tw-bg-opacity, 1));
    padding: 0.5rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
}

.ui-datatable table .ui-datatable-data tr td .btn-actions:hover {
    text-decoration-line: none;
    --tw-bg-opacity: 1;
    background-color: rgb(185 28 28 / var(--tw-bg-opacity, 1));
}

.ui-datatable table .ui-datatable-data tr.ui-row-editing td .btn-actions {
    display: none;
}

/* Selection column */

.ui-datatable table .ui-selection-column .ui-chkbox-all {
  height: 16px !important;
}

/* ga-datatable-sm */

.ui-datatable.ga-datatable-sm {
    font-size: 0.875rem;
}

.ui-datatable.ga-datatable-sm .ui-datatable-header {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.ui-datatable.ga-datatable-sm table thead th {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

.ui-datatable.ga-datatable-sm table thead th.ui-sortable-column .ui-sortable-column-icon {
  width: 1rem;
  height: 1rem;
}

.ui-datatable.ga-datatable-sm table .ui-selection-column .ui-chkbox {
  height: 16px !important;
}

.ui-datatable.ga-datatable-sm table .ui-selection-column .ui-chkbox .ui-chkbox-box {
  width: 16px !important;
  height: 16px !important;
}

.ui-datatable.ga-datatable-sm table .ui-selection-column .ui-chkbox .ui-chkbox-box.ui-state-active .ui-icon-check {
  font-size: 0.6rem;
}

/* Paginator (datatable) */

.ui-datatable .ui-paginator {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    border-width: 0px;
    background-color: transparent;
    padding: 0px;
}

.ui-datatable .ui-paginator.ui-paginator-bottom {
    border-top-width: 0px;
    padding-top: 1rem;
}

.ui-datatable .ui-paginator .ui-paginator-first,
.ui-datatable .ui-paginator .ui-paginator-prev,
.ui-datatable .ui-paginator .ui-paginator-next,
.ui-datatable .ui-paginator .ui-paginator-last {
        display: flex !important;
        height: 2rem;
        width: 2rem;
        align-items: center;
        justify-content: center;
        border-radius: 0.375rem;
        border-width: 0px;
        background-color: transparent;
        color: var(--tw-color-primary);
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 150ms;
    }

.ui-datatable .ui-paginator .ui-paginator-first:hover,
.ui-datatable .ui-paginator .ui-paginator-prev:hover,
.ui-datatable .ui-paginator .ui-paginator-next:hover,
.ui-datatable .ui-paginator .ui-paginator-last:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
}

.ui-datatable .ui-paginator .ui-paginator-first.ui-state-disabled,
.ui-datatable .ui-paginator .ui-paginator-prev.ui-state-disabled,
.ui-datatable .ui-paginator .ui-paginator-next.ui-state-disabled,
.ui-datatable .ui-paginator .ui-paginator-last.ui-state-disabled {
    cursor: not-allowed;
    opacity: 0.4;
}

.ui-datatable .ui-paginator .ui-paginator-first .ui-icon,
.ui-datatable .ui-paginator .ui-paginator-prev .ui-icon,
.ui-datatable .ui-paginator .ui-paginator-next .ui-icon,
.ui-datatable .ui-paginator .ui-paginator-last .ui-icon {
    background-color: transparent;
    color: transparent !important;
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
  font-size: 0;
}

.ui-datatable .ui-sortable-column .ui-icon {
    margin-left: 0.5rem !important;
  font-family: uicons-solid-rounded !important;
}

.ui-datatable .ui-paginator .ui-icon:before {
  color: var(--tw-color-primary);
  font-size: 1rem;
}

.ui-datatable .ui-paginator .ui-paginator-first .ui-icon:before {
  content: "\e098";
}

.ui-datatable .ui-paginator .ui-paginator-prev .ui-icon:before {
  content: "\e09f";
}

.ui-datatable .ui-paginator .ui-paginator-next .ui-icon:before {
  content: "\e0a0";
}

.ui-datatable .ui-paginator .ui-paginator-last .ui-icon:before {
  content: "\e099";
}

.ui-datatable .ui-paginator .ui-paginator-pages {
    display: flex !important;
    align-items: center;
    gap: 0.25rem;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
}

.ui-datatable .ui-paginator .ui-paginator-pages .ui-paginator-page {
        display: flex;
        height: 2rem;
        width: 2rem;
        align-items: center;
        justify-content: center;
        border-radius: 0.375rem;
        border-width: 0px;
        background-color: transparent;
        font-size: 0.875rem;
        font-weight: 500;
        color: var(--tw-color-primary);
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 150ms;
    }

.ui-datatable .ui-paginator .ui-paginator-pages .ui-paginator-page:hover:not(.ui-state-active) {
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
}

.ui-datatable .ui-paginator .ui-paginator-pages .ui-paginator-page.ui-state-active {
    background-color: var(--tw-color-primary);
    font-weight: 700;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* Paginator RPP (rows per page) */

.ui-datatable .ui-paginator .ui-paginator-rpp-options {
        border: 1px solid #CED4DA;
        margin-left: 0.5rem;
        height: 2rem;
        cursor: pointer;
        border-radius: 0.375rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding-left: 0.5rem;
        padding-right: 0.5rem;
        font-size: 0.875rem;
        --tw-text-opacity: 1;
        color: rgb(77 77 77 / var(--tw-text-opacity, 1));
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path d='M0 0 L5 6 L10 0' fill='gray'/></svg>");
  background-repeat: no-repeat;
  background-position: right 8px center;
  padding-right: 24px;
    }

.ui-datatable .ui-paginator .ui-paginator-rpp-options:focus,
.ui-datatable .ui-paginator .ui-paginator-rpp-options:hover {
    border-color: var(--tw-color-primary);
    outline: 2px solid transparent;
    outline-offset: 2px;
}

/* Current page report */

.ui-datatable .ui-paginator .ui-paginator-current {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
}

/* ========== DATAVIEW ========== */

.ui-dataview {
    border-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border: 1px solid #e1e6eb;
}

.ui-dataview .ui-dataview-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.ui-dataview .ui-dataview-header .ui-dataview-layout-options {
    display: flex !important;
    align-items: center;
    gap: 0.5rem;
}

.ui-dataview .ui-dataview-header .ui-dataview-layout-options .ui-button {
  --_btn-bg: #FBFBFB;
  --_btn-text: var(--tw-color-text);
  --_btn-border: #CED4DA;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 180ms;
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  width: 36px;
  height: 36px;
}

.ui-dataview .ui-dataview-header .ui-dataview-layout-options .ui-button.ui-state-active {
  --_btn-bg: var(--tw-color-text);
  --_btn-text: #fff;
  --_btn-border: var(--tw-color-text);
}

.ui-dataview .ui-dataview-content {
    padding: 1rem;
}

.ui-dataview .ui-dataview-content .ui-dataview-row {
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(240 240 240 / var(--tw-border-opacity, 1));
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.ui-dataview .ui-dataview-content .ui-dataview-row:last-child {
    border-bottom-width: 0px;
}

.ui-dataview .ui-dataview-footer {
    border-bottom-right-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
    border-top-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.ui-dataview .ui-dataview-content .ui-g {
    gap: 1rem;
}

/* ========== TREETABLE ========== */

.ui-treetable {
        border: 1px solid #CED4DA;
        overflow-x: auto;
        overflow-y: hidden;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    }

.ui-treetable table {
    width: 100%;
}

.ui-treetable .ui-treetable-header,
.ui-treetable .ui-treetable-footer {
    padding: 0px !important;
}

.ui-treetable thead th {
        border-bottom-width: 1px;
        border-top-width: 0px !important;
        --tw-border-opacity: 1;
        border-color: rgb(209 209 209 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(224 224 224 / var(--tw-bg-opacity, 1));
        padding-top: 0.75rem;
        padding-bottom: 0.75rem;
        padding-left: 1rem;
        padding-right: 1rem;
        text-align: left;
        font-size: 0.875rem;
        font-weight: 600;
        color: var(--tw-color-primary);
    }

.ui-treetable thead th:first-child {
    border-left-width: 0px;
}

.ui-treetable thead th:last-child {
        border-right: 0;
        border-right-width: 0px;
    }

.ui-treetable tbody tr {
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-treetable tbody tr:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
}

.ui-treetable tbody td {
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
}

.ui-treetable tbody tr td:first-child {
    border-left-width: 0px;
}

.ui-treetable tbody tr td:last-child {
        border-right: 0;
        border-right-width: 0px;
    }

.ui-treetable tbody tr:last-child td {
    border-bottom-width: 0px;
}

.treetable-fluxo .ui-treetable-scrollable-body tbody tr td:first-child,
.treetable-fluxo .ui-treetable-scrollable-header table thead th:first-child {
  width: 300px !important;
}

@media (max-width: 768px) {
  .treetable-fluxo .ui-treetable-scrollable-body tbody tr td:first-child,
  .treetable-fluxo .ui-treetable-scrollable-header table thead th:first-child {
    width: 190px !important;
  }
}

.ui-treetable .ui-treetable-toggler {
    margin-right: 0.5rem;
    display: inline-flex;
    cursor: pointer;
    align-items: center;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
  font-size: 0.875rem;
  color: var(--tw-color-text) !important;
}

.ui-treetable .ui-treetable-toggler.ui-icon-triangle-1-e:before {
  content: "\e0a3" !important;
}

.ui-treetable .ui-treetable-toggler.ui-icon-triangle-1-s:before {
  content: "\e0a1" !important;
}

/* ========== DATALIST ========== */

.ui-datalist {
        border: 1px solid #CED4DA;
        overflow: hidden;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    }

.ui-datalist .ui-datalist-header {
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    font-weight: 600;
    --tw-text-opacity: 1;
    color: rgb(51 51 51 / var(--tw-text-opacity, 1));
}

.ui-datalist .ui-datalist-content {
    padding: 0px;
}

.ui-datalist .ui-datalist-data {
    margin: 0px;
    list-style-type: none;
    padding: 0px;
}

.ui-datalist .ui-datalist-data > li {
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-datalist .ui-datalist-data > li:last-child {
    border-bottom-width: 0px;
}

.ui-datalist .ui-datalist-data > li:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
}

.ui-datalist .ui-datalist-footer {
    border-top-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.ui-datalist .ui-datalist-empty-message {
    padding-top: 2rem;
    padding-bottom: 2rem;
    text-align: center;
    font-style: italic;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
}

/* ========== DATAGRID ========== */

.ui-datagrid {
        border: 1px solid #CED4DA;
        overflow: hidden;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    }

.ui-datagrid .ui-datagrid-header {
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    font-weight: 600;
    --tw-text-opacity: 1;
    color: rgb(51 51 51 / var(--tw-text-opacity, 1));
}

.ui-datagrid .ui-datagrid-content {
    padding: 1rem;
}

.ui-datagrid table {
    width: 100%;
}

.ui-datagrid table td {
    padding: 0.5rem;
    vertical-align: top;
}

.ui-datagrid .ui-datagrid-footer {
    border-top-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.ui-datagrid .ui-datagrid-empty-message {
    padding-top: 2rem;
    padding-bottom: 2rem;
    text-align: center;
    font-style: italic;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
}

/* ========== DIALOG ========== */

.ui-dialog {
    border-radius: 1rem;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    --tw-shadow: 0px 4px 34px 0px rgba(0,120,180,0.1) !important;
    --tw-shadow-colored: 0px 4px 34px 0px var(--tw-shadow-color) !important;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
  transition: none !important;
  animation: none !important;
}

.ui-dialog .ui-dialog-titlebar {
    border-bottom-width: 0px;
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
    padding-top: 1.5rem !important;
    padding-bottom: 0px;
}

.ui-dialog .ui-dialog-title {
    margin: 0px !important;
    width: calc(100% - 40px);
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.25;
    --tw-text-opacity: 1;
    color: rgb(36 36 36 / var(--tw-text-opacity, 1));
}

.ui-dialog .ui-dialog-content {
    max-height: 75vh;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    padding: 1.5rem !important;
}

.ui-dialog .ui-dialog-footer {
    display: flex;
    justify-content: flex-end;
    border-top-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    padding: 1rem !important;
}

.ui-dialog .ui-dialog-footer span {
    width: 100%;
}

.ui-dialog .ui-dialog-footer span .ui-selectbooleanbutton {
  width: 100px !important;
}

.ui-dialog .ui-dialog-titlebar-icon {
    display: flex;
    height: 2rem;
    width: 2rem;
    align-items: center;
    justify-content: center;
    border-radius: 0.25rem;
    --tw-text-opacity: 1;
    color: rgb(98 98 98 / var(--tw-text-opacity, 1));
    text-decoration-line: none;
    transition-property: background-color;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ui-dialog .ui-dialog-titlebar-icon:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
        color: var(--tw-color-primary);
    }

.ui-dialog .ui-dialog-titlebar-icon .ui-icon {
    background-color: transparent;
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
  font-size: 1rem;
}

.ui-dialog .ui-dialog-titlebar-icon .ui-icon:before {
  content: "\e5e8";
}

/* Custom header dialog */

.ui-dialog.ga-dialog-header-custom .ui-dialog-titlebar {
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
    background-image: linear-gradient(to right, var(--tw-gradient-stops));
    --tw-gradient-from: var(--tw-color-primary) var(--tw-gradient-from-position);
    --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
    --tw-gradient-to: #003A5C var(--tw-gradient-to-position);
    padding: 1rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-dialog.ga-dialog-header-custom .ui-dialog-title {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-dialog.ga-dialog-header-custom .ui-dialog-titlebar-icon {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-dialog.ga-dialog-header-custom .ui-dialog-titlebar-icon:hover {
    background-color: rgb(255 255 255 / 0.2);
}

.ui-dialog .ui-dialog-buttonpane button {
    margin: 0px !important;
}

/* Overlay */

.ui-widget-overlay {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  background: linear-gradient(135deg, rgba(0, 120, 180, 0.4) 0%, rgba(0, 15, 25, 0.8) 100%);
  opacity: 1;
}

/* ========== PANEL / PANELGRID ========== */

.ui-panel {
    border-radius: 0.5rem;
    padding: 0px !important;
  border: 1px solid #e1e6eb;
}

.ui-panel .ui-panel-titlebar {
    font-weight: 700;
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
  background-color: #e9ecef;
  border-bottom: 1px solid #e1e6eb;
  color: var(--tw-color-primary);
  padding: 1rem;
}

.ui-panel .ui-panel-content {
  padding: 1rem;
}

.ui-panelgrid {
    border-radius: 0.5rem;
  border: 1px solid #e1e6eb;
}

.ui-panelgrid .ui-panelgrid-header,
.ui-panelgrid .ui-panelgrid-footer {
    font-weight: 700;
  background-color: #e9ecef;
  color: var(--tw-color-primary);
  padding: 1rem;
}

.ui-panelgrid .ui-panelgrid-content {
  padding: 1rem;
}

/* ========== ACCORDION ========== */

.ui-accordion .ui-accordion-header {
  border: 1px solid #e1e6eb !important;
  background-color: #e9ecef !important;
  padding: 0.875rem 1rem !important;
  border-radius: 0.5rem !important;
  font-weight: 700 !important;
  transition-property: background-color,color !important;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
  transition-duration: 180ms !important;
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1) !important;
  outline: none !important;
  color: var(--tw-color-text);
}

.ui-accordion:not(.accordion-group-glued) .ui-accordion-header {
  margin-top: 1rem !important;
}

.ui-accordion .ui-accordion-header:first-child {
  margin-top: 0 !important;
}

.ui-accordion .ui-accordion-header > .ui-icon {
  font-family: uicons-solid-rounded !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  line-height: 1 !important;
  display: inline-block !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-indent: 0 !important;
  text-align: center !important;
  background: 0 !important;
  right: 0.5rem !important;
  left: auto !important;
  margin-top: -0.5em !important;
  font-size: 1.25em !important;
  top: 50% !important;
  --tw-translate-y: -50% !important;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) !important;
}

.ui-accordion .ui-accordion-header > .ui-icon.ui-icon-triangle-1-e::before {
  content: "\e3cd" !important;
}

.ui-accordion .ui-accordion-header > .ui-icon.ui-icon-triangle-1-s::before {
  content: "\e3ca" !important;
}

.ui-accordion .ui-accordion-header.ui-state-active {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.ui-accordion .ui-accordion-content.ui-accordion-content {
  padding: 1em 1rem;
  border: 1px solid #e1e6eb !important;
  background-color: #fff !important;
  border-top: 0 none !important;
  margin: 0 !important;
  top: 0 !important;
  position: static !important;
  line-height: 1.5 !important;
}

.ui-accordion:not(.accordion-group-glued) .ui-accordion-content {
    border-bottom-right-radius: 0.5rem !important;
    border-bottom-left-radius: 0.5rem !important;
}

/* Glued */

.ui-accordion.accordion-group-glued .ui-accordion-header {
  margin-top: 0 !important;
  border-radius: 0;
  border-color: #e7e8ec;
  background-color: #f4f4f4;
  color: var(--tw-color-text);
}

.ui-accordion.accordion-group-glued .ui-accordion-header:not(.ui-state-disabled):not(.ui-state-active):hover {
  background-color: #d1d1d1 !important;
}

.ui-accordion.accordion-group-glued .ui-accordion-header:not(:first-of-type):not(:last-of-type) {
  border-top: 0 !important;
}

.ui-accordion.accordion-group-glued .ui-accordion-header:first-of-type:not(:only-of-type) {
  border-top-left-radius: 0.5rem !important;
  border-top-right-radius: 0.5rem !important;
}

.ui-accordion.accordion-group-glued .ui-accordion-header:has(+ .ui-accordion-content:last-of-type):not(:only-of-type) {
  border-bottom-left-radius: 0.5rem !important;
  border-bottom-right-radius: 0.5rem !important;
}

.ui-accordion.accordion-group-glued .ui-accordion-header:only-of-type {
  border-radius: 0.5rem !important;
}

.ui-accordion.accordion-group-glued .ui-accordion-header.ui-state-active {
  color: var(--tw-color-text);
}

.ui-accordion.accordion-group-glued
  .ui-accordion-header.ui-state-active:not(:first-of-type):not(:has(+ .ui-accordion-content:last-of-type)) {
  border-radius: 0 !important;
}

.ui-accordion.accordion-group-glued
  .ui-accordion-header.ui-state-active:has(+ .ui-accordion-content:last-of-type):not(:only-of-type) {
  border-radius: 0 !important;
}

.ui-accordion.accordion-group-glued .ui-accordion-content {
    padding: 1rem;
  border-color: #e1e6eb !important;
  background-color: #fff !important;
}

.ui-accordion.accordion-group-glued .ui-accordion-content:first-of-type:last-of-type {
  border-radius: 0.5rem !important;
}

.ui-accordion.accordion-group-glued .ui-accordion-content:last-of-type {
  border-bottom-left-radius: 0.5rem !important;
  border-bottom-right-radius: 0.5rem !important;
}

/* Glued + not-first */

.ui-accordion.accordion-group-glued.not-first .ui-accordion-header:first-of-type:not(:only-of-type) {
  border-radius: 0 !important;
  border-top: 0 !important;
}

.ui-accordion.accordion-group-glued.not-first .ui-accordion-header:only-of-type {
  border-bottom-left-radius: 0.5rem !important;
  border-bottom-right-radius: 0.5rem !important;
}

.ui-accordion.accordion-group-glued.not-first .ui-accordion-content:last-of-type,
.ui-accordion.accordion-group-glued.not-first .ui-accordion-content:first-of-type:last-of-type {
  border-bottom-left-radius: 0.5rem !important;
  border-bottom-right-radius: 0.5rem !important;
}

.ui-accordion.ui-widget {
    border: 0 !important;
}

/* ========== TABS (PrimeFaces) ========== */

.ui-tabs {
    position: static;
    padding: 0px;
}

/* Top tabs */

.ui-tabs.ui-tabs-top .ui-tabs-nav {
    margin: 0px;
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    padding: 0px !important;
}

@media (min-width: 1024px) {

    .ui-tabs.ui-tabs-top .ui-tabs-nav {
        overflow-x: hidden;
    }
}

.ui-tabs.ui-tabs-top .ui-tabs-nav li {
  top: 1px;
}

/* Headers */

.ui-tabs .ui-tabs-nav .ui-tabs-header {
    display: inline-block;
    white-space: nowrap;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
    border-top-width: 2px;
    border-bottom-width: 0px;
    border-color: transparent;
  margin: 0 0.25em 0 0;
  padding: 0;
}

.ui-tabs .ui-tabs-nav .ui-tabs-header a {
    display: block;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    text-decoration-line: none;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-tabs .ui-tabs-nav .ui-tabs-header.ui-state-hover a {
        color: var(--tw-color-primary);
    }

/* Active */

.ui-tabs .ui-tabs-nav .ui-tabs-header.ui-state-active {
        border: 1px solid #CED4DA;
        border-width: 1px;
        border-top-width: 2px;
        border-bottom-width: 0px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        border-top-color: var(--tw-color-primary);
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        font-weight: 600;
    }

.ui-tabs .ui-tabs-nav .ui-tabs-header.ui-state-active a {
        color: var(--tw-color-primary);
    }

/* Panels */

.ui-tabs .ui-tabs-panels {
        border: 1px solid #CED4DA;
        border-bottom-right-radius: 0.5rem;
        border-bottom-left-radius: 0.5rem;
        border-top-right-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    }

.ui-tabs .ui-tabs-panels .ui-tabs-panel {
    padding: 1rem;
}

/* Navscroller */

.ui-tabs .ui-tabs-navscroller {
    position: relative;
}

.ui-tabs .ui-tabs-navscroller .ui-tabs-navscroller-btn {
        border: 1px solid #CED4DA;
        z-index: 10;
        display: flex;
        align-items: center;
        justify-content: center;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        --tw-text-opacity: 1;
        color: rgb(77 77 77 / var(--tw-text-opacity, 1));
        text-decoration-line: none;
        outline: 2px solid transparent;
        outline-offset: 2px;
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 150ms;
    }

.ui-tabs .ui-tabs-navscroller .ui-tabs-navscroller-btn.ui-state-hover {
        --tw-bg-opacity: 1;
        background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
        color: var(--tw-color-primary);
        text-decoration-line: none;
    }

.ui-tabs .ui-tabs-navscroller .ui-tabs-navscroller-btn .ui-icon {
    background-color: transparent;
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
}

.ui-tabs .ui-tabs-navscroller .ui-tabs-navscroller-btn.ui-tabs-navscroller-btn-left .ui-icon:before {
  content: "\e09f";
}

.ui-tabs .ui-tabs-navscroller .ui-tabs-navscroller-btn.ui-tabs-navscroller-btn-right .ui-icon:before {
  content: "\e0a0";
}

/* ========== SCROLLPANEL ========== */

.ui-scrollpanel {
    border-radius: 0.5rem;
  border: 1px solid #e1e6eb;
}

.ui-scrollpanel .ui-scrollpanel-content {
  padding: 1rem !important;
}

.ui-scrollpanel .ui-scrollpanel-vbar .ui-scrollpanel-drag {
  background-color: #ced4da;
  border-radius: 0.5rem;
}

/* ========== LAYOUT CONTAINER ========== */

.ui-layout-container {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.ui-layout-container .ui-layout-unit {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border: 1px solid #e1e6eb;
}

.ui-layout-container .ui-layout-unit.ui-layout-unit-north,
.ui-layout-container .ui-layout-unit.ui-layout-unit-south {
  border-left: none;
  border-right: none;
}

.ui-layout-container .ui-layout-unit.ui-layout-unit-east,
.ui-layout-container .ui-layout-unit.ui-layout-unit-west {
  border-top: none;
  border-bottom: none;
}

.ui-layout-container .ui-layout-unit.ui-layout-unit-center {
  border: none;
}

.ui-layout-container .ui-layout-unit .ui-layout-unit-content {
  padding: 1rem;
}

/* ========== FEEDBACK (messages/growl/tooltip) ========== */

/* --- Messages (p:messages) — Outer container --- */

.ui-messages.ui-widget {
  background: none !important;
  border: none !important;
  margin-top: 0.75rem !important;
  margin-bottom: 0.75rem !important;
  margin-left: 0px !important;
  margin-right: 0px !important;
  padding: 0px !important;
}

/* --- Messages — Inner severity blocks (the actual cards) --- */

.ui-messages .ui-messages-info,
.ui-messages .ui-messages-warn,
.ui-messages .ui-messages-error,
.ui-messages .ui-messages-fatal {
    margin-bottom: 0.5rem !important;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    border-radius: 0.75rem;
    border-style: none !important;
    padding: 1rem !important;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

/* --- Messages — Icon sprite reset --- */

.ui-messages-info-icon,
.ui-messages-warn-icon,
.ui-messages-error-icon,
.ui-messages-fatal-icon {
  background-image: none !important;
  text-indent: 0 !important;
  overflow: visible !important;
  margin-top: 0px !important;
  display: flex !important;
  height: 2rem !important;
  width: 2rem !important;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  background-color: rgb(255 255 255 / 0.25) !important;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* --- Messages — Flaticon ::before base --- */

.ui-messages-info-icon::before,
.ui-messages-warn-icon::before,
.ui-messages-error-icon::before,
.ui-messages-fatal-icon::before {
  font-family: "uicons-solid-rounded" !important;
  font-style: normal;
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* --- Messages — Icon content per severity --- */

.ui-messages-info-icon::before {
  content: "\eb10"; /* fi-sr-info */
}

.ui-messages-warn-icon::before {
  content: "\f488"; /* fi-sr-triangle-warning */
}

.ui-messages-error-icon::before,
.ui-messages-fatal-icon::before {
  content: "\e4ad"; /* fi-sr-circle-xmark */
}

/* --- Messages — Severity colors --- */

.ui-messages .ui-messages-info {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(34 197 94 / var(--tw-bg-opacity, 1)) !important;
}

.ui-messages .ui-messages-warn {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(245 158 11 / var(--tw-bg-opacity, 1)) !important;
}

.ui-messages .ui-messages-error {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(248 113 113 / var(--tw-bg-opacity, 1)) !important;
}

.ui-messages .ui-messages-fatal {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(220 38 38 / var(--tw-bg-opacity, 1)) !important;
}

/* --- Messages — Text styles --- */

.ui-messages-info-summary,
.ui-messages-warn-summary,
.ui-messages-error-summary,
.ui-messages-fatal-summary {
    margin-left: 0px !important;
    display: block;
    font-weight: 600;
}

.ui-messages-info-detail,
.ui-messages-warn-detail,
.ui-messages-error-detail,
.ui-messages-fatal-detail {
    margin-top: 0.125rem;
    margin-left: 0px !important;
    display: block;
    font-size: 0.875rem;
    opacity: 0.9;
}

/* --- Messages — List reset --- */

.ui-messages ul {
    margin: 0px !important;
    flex: 1 1 0%;
    list-style-type: none;
    padding: 0px !important;
}

.ui-messages ul li {
    margin-bottom: 0.25rem;
}

.ui-messages ul li:last-child {
    margin-bottom: 0px;
}

/* --- Messages — Close button --- */

.ui-messages .ui-messages-close {
    margin-left: auto;
    display: flex;
    height: 1.5rem;
    width: 1.5rem;
    flex-shrink: 0;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    border-radius: 0.25rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    text-decoration-line: none;
    opacity: 0.7;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-messages .ui-messages-close:hover {
    background-color: rgb(255 255 255 / 0.15);
    opacity: 1;
}

.ui-messages .ui-messages-close .ui-icon {
  background-image: none !important;
  background: none !important;
  text-indent: 0 !important;
  overflow: visible !important;
  display: flex !important;
}

.ui-messages .ui-messages-close .ui-icon::before {
  font-family: "uicons-solid-rounded" !important;
  content: "\e5e8"; /* fi-sr-cross */
  font-style: normal;
  font-weight: normal;
  font-size: 0.75rem;
}

/* --- Growl icon sprite reset --- */

.ui-growl .ui-growl-image {
  background-image: none !important;
  text-indent: 0 !important;
  overflow: visible !important;
}

.ui-growl .ui-growl-image::before {
  font-family: "uicons-solid-rounded" !important;
  font-style: normal;
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 1rem;
}

.ui-growl-info .ui-growl-image::before {
  content: "\eb10"; /* fi-sr-info */
}

.ui-growl-warn .ui-growl-image::before {
  content: "\f488"; /* fi-sr-triangle-warning */
}

.ui-growl-error .ui-growl-image::before {
  content: "\e4ad"; /* fi-sr-circle-xmark */
}

.ui-growl-success .ui-growl-image::before {
  content: "\e430"; /* fi-sr-check */
}

/* --- Growl close button icon override --- */

.ui-growl .ui-growl-icon-close span.ui-icon {
  background-image: none !important;
  text-indent: 0 !important;
  overflow: visible !important;
  width: 1em !important;
  height: 1em !important;
}

.ui-growl .ui-growl-icon-close span.ui-icon::before {
  font-family: "uicons-solid-rounded" !important;
  content: "\e5e8"; /* fi-sr-cross */
  font-style: normal;
  font-weight: normal;
  font-size: 0.75rem;
}

/* --- Inline message (p:message) --- */

.ui-message {
        border: 1px solid #CED4DA;
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
        margin-left: 0px !important;
        margin-right: 0px !important;
        display: flex;
        align-items: center;
        gap: 0.5rem;
        border-radius: 0.375rem;
        border-width: 1px;
        border-style: solid;
        padding: 0.5rem;
        font-size: 0.875rem;
    }

.ui-message .ui-message-icon {
    flex-shrink: 0;
}

.ui-message-info {
    --tw-border-opacity: 1 !important;
    border-color: rgb(187 247 208 / var(--tw-border-opacity, 1)) !important;
    --tw-bg-opacity: 1;
    background-color: rgb(240 253 244 / var(--tw-bg-opacity, 1));
    --tw-text-opacity: 1;
    color: rgb(21 128 61 / var(--tw-text-opacity, 1));
}

.ui-message-warn {
    --tw-border-opacity: 1 !important;
    border-color: rgb(253 230 138 / var(--tw-border-opacity, 1)) !important;
    --tw-bg-opacity: 1;
    background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));
    --tw-text-opacity: 1;
    color: rgb(180 83 9 / var(--tw-text-opacity, 1));
}

.ui-message-error {
    --tw-border-opacity: 1 !important;
    border-color: rgb(254 202 202 / var(--tw-border-opacity, 1)) !important;
    --tw-bg-opacity: 1;
    background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));
    --tw-text-opacity: 1;
    color: rgb(185 28 28 / var(--tw-text-opacity, 1));
}

.ui-message-success {
    --tw-border-opacity: 1 !important;
    border-color: rgb(167 243 208 / var(--tw-border-opacity, 1)) !important;
    --tw-bg-opacity: 1;
    background-color: rgb(236 253 245 / var(--tw-bg-opacity, 1));
    --tw-text-opacity: 1;
    color: rgb(4 120 87 / var(--tw-text-opacity, 1));
}

/* --- Growl (p:growl) --- */

.ui-growl {
  width: 380px;
  z-index: 10000;
}

.ui-growl .ui-growl-item-container {
    margin: 0px !important;
    margin-bottom: 0.75rem !important;
    overflow: hidden;
    border-radius: 0.75rem;
    padding: 0px !important;
    opacity: 1 !important;
    --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1) !important;
    --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color) !important;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
  position: relative;
  animation: growlSlideIn 0.3s ease-out;
}

@keyframes growlSlideIn {
  from {
    opacity: 0;
    transform: translateX(30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.ui-growl .ui-growl-item {
    margin-bottom: 0px !important;
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    border-radius: 0.75rem;
    border-style: none !important;
    padding: 1rem !important;
}

.ui-growl .ui-growl-image {
    display: flex;
    height: 2.25rem;
    width: 2.25rem;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    background-color: rgb(255 255 255 / 0.25);
    font-size: 1.125rem;
}

.ui-growl .ui-growl-message {
    min-width: 0px;
    flex: 1 1 0%;
}

.ui-growl .ui-growl-title {
    display: block;
    font-size: 0.875rem;
    font-weight: 600;
}

.ui-growl .ui-growl-message p {
    margin: 0px !important;
    margin-top: 0.125rem;
    font-size: 0.875rem;
    opacity: 0.8;
}

.ui-growl .ui-growl-info {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(34 197 94 / var(--tw-bg-opacity, 1)) !important;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-growl .ui-growl-info .ui-growl-image {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-growl .ui-growl-warn {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(245 158 11 / var(--tw-bg-opacity, 1)) !important;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-growl .ui-growl-warn .ui-growl-image {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-growl .ui-growl-error {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(248 113 113 / var(--tw-bg-opacity, 1)) !important;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-growl .ui-growl-error .ui-growl-image {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-growl .ui-growl-success {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(16 185 129 / var(--tw-bg-opacity, 1)) !important;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-growl .ui-growl-success .ui-growl-image {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-growl .ui-growl-icon-close {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    display: flex;
    height: 1.5rem;
    width: 1.5rem;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    border-radius: 0.25rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    opacity: 0.7;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-growl .ui-growl-icon-close:hover {
    opacity: 1;
}

/* ========== TOOLTIP ========== */

.ui-tooltip {
  z-index: 999;
}

.ui-tooltip .ui-tooltip-text {
  background-color: #343a40;
  color: #fff;
  font-size: 14px;
  border-radius: 5px;
  padding: 8px 12px;
}

.ui-tooltip.ui-tooltip-top .ui-tooltip-arrow {
  border-top-color: #343a40;
}

.ui-tooltip.ui-tooltip-right .ui-tooltip-arrow {
  border-right-color: #343a40;
}

.ui-tooltip.ui-tooltip-bottom .ui-tooltip-arrow {
  border-bottom-color: #343a40;
}

.ui-tooltip.ui-tooltip-left .ui-tooltip-arrow {
  border-left-color: #343a40;
}

/* ========== LAYOUT / NAV (toolbar, menu, breadcrumb) ========== */

.ui-toolbar {
    border-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    padding: 0.5rem !important;
  border: 1px solid #e1e6eb;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

.ui-toolbar .ui-toolbar-group-left,
.ui-toolbar .ui-toolbar-group-right {
    display: flex;
    align-items: center;
  gap: 0.5rem;
}

.ui-menu,
.ui-columntoggler {
    display: flex;
    flex-direction: column;
    border-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border: 1px solid #e1e6eb;
  box-shadow: 0 4px 44px rgba(2, 42, 70, 0.15) !important;
  padding: 0.5rem !important;
  gap: 0.25rem;
}

.ui-columntoggler .ui-columntoggler-items {
    display: flex;
    flex-direction: column;
    padding: 0px !important;
}

.ui-columntoggler .ui-columntoggler-items .ui-columntoggler-item {
    display: flex !important;
    align-items: center;
}

.ui-columntoggler .ui-columntoggler-items .ui-columntoggler-item .ui-chkbox {
    position: relative !important;
    margin-top: 0px !important;
}

.ui-columntoggler .ui-columntoggler-items .ui-columntoggler-item label {
    padding-left: 0.25rem !important;
}

.ui-menu .ui-menu-list .ui-menuitem .ui-menuitem-link {
    display: flex;
    width: 100%;
    align-items: center;
    border-radius: 0.5rem;
    font-size: 0.875rem;
    color: var(--tw-color-text);
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  padding: 0.5rem 0.75rem;
}

.ui-menu .ui-menu-list .ui-menuitem .ui-menuitem-link:hover {
  background-color: #f4f4f4;
  color: var(--tw-color-text);
}

/* P:MENU */

.ui-menu .ui-menu-list {
    max-height: 50vh;
    overflow: auto;
    padding: 0px;
}

.ui-menu .ui-menu-list .ui-menuitem {
    margin: 0px;
}

.ui-menu .ui-menu-list .ui-menuitem .ui-menuitem-link .ui-menuitem-icon {
    margin-right: 0.5rem;
    min-width: -moz-fit-content;
    min-width: fit-content;
    font-size: 0.875rem;
}

.ui-menu .ui-menu-list .ui-menuitem .ui-menuitem-link .ui-menuitem-icon:before {
  font-family: uicons-solid-rounded;
  text-indent: 0 !important;
}

/* P:MENUBAR */

.ui-menu .ui-menu-parent .ui-menu-child {
        border: 1px solid #CED4DA;
        position: absolute;
        margin-top: 0.5rem;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        --tw-shadow: 0 4px 44px rgba(2,42,70,0.15) !important;
        --tw-shadow-colored: 0 4px 44px var(--tw-shadow-color) !important;
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
  padding: 0.5rem;
    }

/* P:PANELMENU */

.ui-panelmenu {
    border-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border: 1px solid #e1e6eb;
}

.ui-panelmenu .ui-panelmenu-panel {
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
}

.ui-panelmenu .ui-panelmenu-header {
    display: flex;
    cursor: pointer;
    align-items: center;
    justify-content: space-between;
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 1.125rem !important;
    font-weight: 700;
    color: var(--tw-color-text);
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ui-panelmenu .ui-panelmenu-header a {
    padding: 0px !important;
    color: var(--tw-color-text);
    text-decoration-line: none;
}

.ui-panelmenu .ui-panelmenu-header:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(209 209 209 / var(--tw-bg-opacity, 1));
}

.ui-panelmenu .ui-panelmenu-header .ui-panelmenu-icon {
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
  font-size: 1.25em !important;
}

.ui-panelmenu .ui-panelmenu-header .ui-panelmenu-icon.ui-icon-triangle-1-e:before {
  content: "\e3cd";
}

.ui-panelmenu .ui-panelmenu-header .ui-panelmenu-icon.ui-icon-triangle-1-s:before {
  content: "\e3ca";
}

.ui-panelmenu .ui-panelmenu-content {
    padding: 0px;
}

.ui-panelmenu .ui-panelmenu-content .ui-menuitem {
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(240 240 240 / var(--tw-border-opacity, 1));
}

.ui-panelmenu .ui-panelmenu-content .ui-menuitem:last-child {
    border-bottom-width: 0px;
}

.ui-panelmenu .ui-panelmenu-content .ui-menuitem .ui-menuitem-link {
    display: flex;
    width: 100%;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  padding: 0.6rem 1rem 0.6rem 1.5rem;
}

.ui-panelmenu .ui-panelmenu-content .ui-menuitem .ui-menuitem-link:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
    color: var(--tw-color-text);
}

.ui-panelmenu .ui-panelmenu-content .ui-menuitem .ui-menuitem-link .ui-menuitem-icon {
    font-size: 1rem;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
}

.ui-panelmenu .ui-panelmenu-content .ui-menuitem .ui-menuitem-link:hover .ui-menuitem-icon {
    color: var(--tw-color-text);
}

.ui-panelmenu .ui-panelmenu-content .ui-menuitem .ui-menuitem-link .ui-menuitem-text {
    font-size: 0.875rem;
}

/* Sub-submenu (nested) */

.ui-panelmenu .ui-panelmenu-content .ui-menu-list .ui-menu-list .ui-menuitem .ui-menuitem-link {
  padding-left: 2.5rem;
}

.ui-panelmenu .ui-panelmenu-header.ui-state-active {
    background-color: var(--tw-color-text);
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-panelmenu .ui-panelmenu-header.ui-state-active a {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* P:SLIDEMENU */

.ui-slidemenu {
    border-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border: 1px solid #e1e6eb;
}

.ui-slidemenu .ui-slidemenu-header {
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    padding-left: 1rem;
    padding-right: 1rem;
    font-weight: 700;
    color: var(--tw-color-text);
}

.ui-slidemenu .ui-slidemenu-content {
    padding: 0px;
}

.ui-slidemenu .ui-menu .ui-menu-list .ui-menuitem .ui-menuitem-link {
    width: 100%;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  padding: 0.5rem 0.75rem;
}

.ui-slidemenu .ui-menu .ui-menu-list .ui-menuitem .ui-menuitem-link:hover {
  background-color: #f4f4f4;
  color: var(--tw-color-text);
}

.ui-slidemenu .ui-slidemenu-backward {
    display: flex;
    cursor: pointer;
    align-items: center;
    gap: 0.5rem;
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--tw-color-text);
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ui-slidemenu .ui-slidemenu-backward:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(209 209 209 / var(--tw-bg-opacity, 1));
}

.ui-slidemenu .ui-slidemenu-backward .ui-icon {
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
}

.ui-slidemenu .ui-slidemenu-backward .ui-icon:before {
  content: "\e3cd";
}

/* ========== MENUBUTTON ========== */

.ui-menubutton {
    display: inline-flex;
    align-items: stretch;
    overflow: hidden;
    border-radius: 0.5rem;
}

.ui-menubutton .ui-button {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0px;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  height: 36px;
}

.ui-menubutton .ui-button:first-child {
    border-top-left-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
    padding-right: 0.75rem;
    padding-left: 1rem;
}

.ui-menubutton .ui-button:first-child .ui-button-text {
    font-size: 0.875rem;
    font-weight: 500;
}

.ui-menubutton .ui-button:first-child .ui-button-icon-left {
    margin-right: 0.5rem;
}

.ui-menubutton .ui-menubutton-trigger {
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
    border-left-width: 1px;
    border-color: rgb(255 255 255 / 0.2);
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  min-width: 28px;
}

.ui-menubutton .ui-menubutton-trigger .ui-button-icon-left {
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
  font-size: 0.75rem;
}

.ui-menubutton .ui-menubutton-trigger .ui-button-icon-left.ui-icon-triangle-1-s:before {
  content: "\e3ca";
}

.ui-menubutton:hover .ui-button {
    --tw-brightness: brightness(.95);
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.ui-menubutton .ui-button.ui-state-disabled {
    cursor: not-allowed;
    opacity: 0.5;
}

/* ========== MENUBAR ========== */

.ui-menubar {
        border: 1px solid #CED4DA;
        display: flex;
        align-items: center;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 0 0.5rem;
    }

.ui-menubar .ui-menuitem {
    position: relative;
}

.ui-menubar .ui-menuitem > .ui-menuitem-link {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-menubar .ui-menuitem > .ui-menuitem-link:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
        color: var(--tw-color-primary);
    }

.ui-menubar .ui-menuitem.ui-menuitem-active > .ui-menuitem-link {
        --tw-bg-opacity: 1;
        background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
        color: var(--tw-color-primary);
    }

.ui-menubar .ui-submenu-icon {
    margin-left: 0.25rem;
    font-size: 0.75rem;
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
}

.ui-menubar .ui-submenu-icon:before {
  content: "\e0a1";
}

.ui-menubar .ui-menu-child {
        border: 1px solid #CED4DA;
        position: absolute;
        top: 100%;
        left: 0px;
        min-width: 200px;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
        --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
        --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  z-index: 1000;
    }

.ui-menubar .ui-menu-child .ui-menuitem-link {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-menubar .ui-menu-child .ui-menuitem-link:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
        color: var(--tw-color-primary);
    }

.ui-menubar .ui-menu-child .ui-menu-child {
    left: 100%;
    top: 0px;
}

.ui-menubar .ui-menuitem-icon {
    margin-right: 0.25rem;
    font-size: 1.125rem;
  font-family: uicons-solid-rounded !important;
}

/* ========== MEGAMENU ========== */

.ui-megamenu {
        border: 1px solid #CED4DA;
        display: flex;
        align-items: center;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 0 0.5rem;
    }

.ui-megamenu.ui-megamenu-vertical {
    flex-direction: column;
    align-items: stretch;
    padding: 0.5rem;
}

.ui-megamenu .ui-menuitem > .ui-menuitem-link {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-megamenu .ui-menuitem > .ui-menuitem-link:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
        color: var(--tw-color-primary);
    }

.ui-megamenu .ui-menuitem.ui-menuitem-active > .ui-menuitem-link {
        --tw-bg-opacity: 1;
        background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
        color: var(--tw-color-primary);
    }

.ui-megamenu .ui-submenu-icon {
    margin-left: 0.25rem;
    font-size: 0.75rem;
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
}

.ui-megamenu .ui-submenu-icon:before {
  content: "\e0a1";
}

.ui-megamenu .ui-megamenu-panel {
        border: 1px solid #CED4DA;
        position: absolute;
        top: 100%;
        left: 0px;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding: 1rem;
        --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
        --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  min-width: 400px;
  z-index: 1000;
    }

.ui-megamenu .ui-megamenu-submenu {
    min-width: 200px;
}

.ui-megamenu .ui-megamenu-submenu-header {
        margin-bottom: 0.5rem;
        border-bottom-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        padding-bottom: 0.5rem;
        font-size: 0.875rem;
        font-weight: 700;
        color: var(--tw-color-primary);
    }

.ui-megamenu .ui-megamenu-submenu .ui-menuitem-link {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border-radius: 0.25rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-megamenu .ui-megamenu-submenu .ui-menuitem-link:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
        color: var(--tw-color-primary);
    }

.ui-megamenu .ui-megamenu-col {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

.ui-megamenu .ui-menuitem-icon {
    font-size: 1.125rem;
  font-family: uicons-solid-rounded !important;
}

/* ========== TIERED MENU ========== */

.ui-tieredmenu {
        border: 1px solid #CED4DA;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
        --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
        --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  min-width: 200px;
    }

.ui-tieredmenu .ui-menuitem-link {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-tieredmenu .ui-menuitem-link:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
        color: var(--tw-color-primary);
    }

.ui-tieredmenu .ui-submenu-icon {
    margin-left: auto;
    font-size: 0.75rem;
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
}

.ui-tieredmenu .ui-submenu-icon:before {
  content: "\e0a0";
}

.ui-tieredmenu .ui-menu-child {
        border: 1px solid #CED4DA;
        position: absolute;
        left: 100%;
        top: 0px;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
        --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
        --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  min-width: 200px;
    }

.ui-tieredmenu .ui-menuitem-icon {
    font-size: 1.125rem;
  font-family: uicons-solid-rounded !important;
}

/* ========== CONTEXT MENU ========== */

.ui-contextmenu {
        border: 1px solid #CED4DA;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
        --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
        --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  min-width: 180px;
    }

.ui-contextmenu .ui-menuitem-link {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-contextmenu .ui-menuitem-link:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
        color: var(--tw-color-primary);
    }

.ui-contextmenu .ui-submenu-icon {
    margin-left: auto;
    font-size: 0.75rem;
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
}

.ui-contextmenu .ui-submenu-icon:before {
  content: "\e0a0";
}

.ui-contextmenu .ui-menu-child {
        border: 1px solid #CED4DA;
        position: absolute;
        left: 100%;
        top: 0px;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
        --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
        --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  min-width: 180px;
    }

.ui-contextmenu .ui-menuitem-icon {
    font-size: 1.125rem;
  font-family: uicons-solid-rounded !important;
}

.ui-contextmenu .ui-menu-separator {
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
    border-top-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
}

/* ========== BREADCRUMB ========== */

.ui-breadcrumb {
    border-width: 0px;
    background-color: transparent;
    padding: 0px !important;
}

.ui-breadcrumb ul {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem;
}

.ui-breadcrumb ul li {
    display: flex !important;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
}

.ui-breadcrumb ul li a,
.ui-breadcrumb ul li .ui-menuitem-link {
        margin-top: 0px !important;
        margin-bottom: 0px !important;
        display: flex !important;
        align-items: center;
        gap: 0.5rem;
        font-family: "Nunito Sans", sans-serif !important;
        color: var(--tw-color-primary);
        text-decoration-line: none;
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 180ms;
        transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  padding: 0.5rem 0.2rem !important;
    }

.ui-breadcrumb ul li a:hover {
    --tw-text-opacity: 1;
    color: rgb(0 58 92 / var(--tw-text-opacity, 1));
    text-decoration-line: underline;
}

.ui-breadcrumb ul li:last-child {
    font-weight: 600;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
  pointer-events: none;
}

.ui-breadcrumb ul li.ui-breadcrumb-chevron {
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
}

.ui-breadcrumb ul li.ui-breadcrumb-chevron:before {
  content: "\e0a3";
}

.ui-breadcrumb ul li .ui-menuitem-link.ui-state-disabled {
    --tw-text-opacity: 1 !important;
    color: rgb(95 95 95 / var(--tw-text-opacity, 1)) !important;
}

/* ========== MISC COMPONENTS ========== */

.ui-fieldset {
    border-radius: 0.5rem;
  border: 1px solid #e1e6eb;
}

.ui-fieldset .ui-fieldset-legend {
    font-size: 0.875rem;
    font-weight: 700;
  background-color: #fff;
  color: var(--tw-color-text);
  padding: 0.5rem 1rem;
}

.ui-fileupload {
    height: 34px;
    width: -moz-fit-content;
    width: fit-content;
}

.ui-fileupload .ui-fileupload-buttonbar {
    max-width: -moz-fit-content;
    max-width: fit-content;
    background-color: transparent;
  border: none;
  padding: 0;
}

.ui-fileupload .ui-fileupload-buttonbar .ui-button {
    margin: 0px;
    display: flex;
    align-items: center;
}

.btn-filearea .ui-fileupload-buttonbar .ui-button {
  --_btn-bg: transparent;
  --_btn-text: var(--tw-color-text);
  --_btn-border: transparent;
  padding: 0px;
  font-weight: 800;
}

.ui-fileupload .ui-fileupload-content {
    background-color: transparent;
  border: none;
  padding: 0;
}

.ui-fileupload .ui-fileupload-buttonbar .ui-button .ui-icon {
    margin-top: -10px !important;
    width: 17px !important;
  font-family: uicons-solid-rounded !important;
}

.ui-fileupload .ui-fileupload-buttonbar .ui-button .ui-icon:before {
  content: "\e511";
}

/* ========== FILE UPLOAD DROP AREA ========== */

.ui-fileupload.ui-drop-design .ui-fileupload-buttonbar,
.ui-fileupload.ui-drop-design .ui-fileupload-content {
    display: none !important;
}

.ui-fileupload.ui-drop-design {
    height: auto;
    width: 100%;
}

.ui-fileupload .ui-drag-and-drop {
    display: flex;
    min-height: 185px;
    align-items: center;
    justify-content: center;
    border-width: 2px;
    border-style: dashed;
    --tw-border-opacity: 1;
    border-color: rgb(204 204 204 / var(--tw-border-opacity, 1));
}

.ui-fileupload .ui-drag-and-drop.ui-files {
    cursor: pointer;
    border-radius: 10px;
    --tw-bg-opacity: 1;
    background-color: rgb(249 249 249 / var(--tw-bg-opacity, 1));
    padding: 1.5rem;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
}

.ui-fileupload .ui-drag-and-drop.ui-files.dragover {
    border-width: 2px !important;
    border-style: dashed !important;
    --tw-border-opacity: 1 !important;
    border-color: rgb(226 160 63 / var(--tw-border-opacity, 1)) !important;
    --tw-bg-opacity: 1 !important;
    background-color: rgb(255 242 223 / var(--tw-bg-opacity, 1)) !important;
}

.ui-fileupload .ui-drag-and-drop.ui-files.drop-file {
    border-width: 2px !important;
    border-style: dashed !important;
    --tw-border-opacity: 1 !important;
    border-color: rgb(226 160 63 / var(--tw-border-opacity, 1)) !important;
    --tw-bg-opacity: 1 !important;
    background-color: rgb(255 242 223 / var(--tw-bg-opacity, 1)) !important;
}

.ui-fileupload .ui-drag-and-drop.ui-files.drop-file ._ui-info {
    display: none !important;
}

.ui-fileupload .ui-drag-and-drop.ui-files.drop-file ._ui-loading {
    display: flex !important;
}

.ui-fileupload .ui-drag-and-drop.ui-files.error-file {
    border-width: 2px !important;
    border-style: dashed !important;
    --tw-border-opacity: 1 !important;
    border-color: rgb(231 81 90 / var(--tw-border-opacity, 1)) !important;
    --tw-bg-opacity: 1 !important;
    background-color: rgb(255 229 230 / var(--tw-bg-opacity, 1)) !important;
}

.ui-fileupload .ui-drag-and-drop.ui-files ._ui-info {
    display: flex;
    flex-direction: column;
    text-align: center;
}

.ui-fileupload .ui-drag-and-drop.ui-files ._ui-loading {
    display: none;
    align-items: center;
    justify-content: center;
}

.ui-fileupload .ui-drag-and-drop.ui-files .ui-outputlabel {
    cursor: pointer;
}

.ui-fileupload .ui-drag-and-drop.ui-file-selected {
    display: flex;
    flex-direction: column;
    border-radius: 10px;
    border-width: 2px;
    border-style: dashed;
    --tw-border-opacity: 1;
    border-color: rgb(61 198 97 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(244 255 247 / var(--tw-bg-opacity, 1));
    padding: 1.5rem;
    text-align: center;
    font-size: 0.75rem;
}

/* ========== PROGRESSBAR ========== */

.ui-progressbar {
    position: relative;
    border-radius: 0.5rem;
  height: 8px;
  background-color: #e9ecef;
}

.ui-progressbar .ui-progressbar-value {
    border-radius: 0.5rem;
    background-color: var(--tw-color-primary);
}

.ui-progressbar .ui-progressbar-label {
    top: -1px;
    font-size: 0.875rem;
    font-weight: 600;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* ========== OVERLAYPANEL ========== */

.ui-overlaypanel {
        border: 1px solid #CED4DA;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        --tw-shadow: 0 4px 44px rgba(2,42,70,0.15) !important;
        --tw-shadow-colored: 0 4px 44px var(--tw-shadow-color) !important;
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
    }

.ui-overlaypanel .ui-overlaypanel-content {
    padding: 1rem;
}

.ui-overlaypanel .ui-overlaypanel-close {
    display: flex;
    height: 1.5rem;
    width: 1.5rem;
    align-items: center;
    justify-content: center;
    border-radius: 0.25rem;
    --tw-text-opacity: 1;
    color: rgb(98 98 98 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ui-overlaypanel .ui-overlaypanel-close:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
        color: var(--tw-color-primary);
    }

.ui-overlaypanel .ui-overlaypanel-close .ui-icon {
    background-color: transparent;
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
}

/* Arrow customization */

.ui-overlaypanel:before,
.ui-overlaypanel:after {
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
}

/* ========== TRISTATECHECKBOX ========== */

.ui-tristatechkbox .ui-chkbox-box {
        border: 1px solid #CED4DA;
        cursor: pointer;
        border-radius: 0.25rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(251 251 251 / var(--tw-bg-opacity, 1));
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 180ms;
        transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  width: 20px;
  height: 20px;
    }

.ui-tristatechkbox .ui-chkbox-box:hover {
    border-color: var(--tw-color-primary);
}

.ui-tristatechkbox .ui-chkbox-box .ui-chkbox-icon {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
}

.ui-tristatechkbox .ui-chkbox-box.ui-state-active {
    border-color: var(--tw-color-primary);
    background-color: var(--tw-color-primary);
}

/* State 1 = check */

.ui-tristatechkbox .ui-chkbox-box .ui-icon-check:before {
  content: "\e430" !important;
}

/* State 2 = close (indeterminate state) */

.ui-tristatechkbox .ui-chkbox-box .ui-icon-closethick:before {
  content: "\ed25" !important;
}

/* ========== CHIPS ========== */

.ui-chips {
    width: 100%;
}

.ui-chips .ui-chips-container {
        border: 1px solid #CED4DA;
        display: flex;
        min-height: 36px;
        flex-wrap: wrap;
        gap: 0.5rem;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(251 251 251 / var(--tw-bg-opacity, 1));
        padding: 0.5rem;
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 180ms;
        transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
    }

.ui-chips .ui-chips-container:focus-within {
    border-color: var(--tw-color-primary);
}

.ui-chips .ui-chips-token {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    border-radius: 0.375rem;
    background-color: var(--tw-color-primary);
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-chips .ui-chips-token .ui-chips-token-icon {
    margin-left: 0.25rem;
    cursor: pointer;
    opacity: 0.7;
    transition-property: opacity;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-chips .ui-chips-token .ui-chips-token-icon:hover {
    opacity: 1;
}

.ui-chips .ui-chips-input-token input {
    border-width: 0px;
    background-color: transparent;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
    outline: 2px solid transparent;
    outline-offset: 2px;
}

/* ========== CONFIRM DIALOG ========== */

.ui-confirm-dialog {
    border-radius: 1rem;
    --tw-shadow: 0px 4px 34px 0px rgba(0,120,180,0.1);
    --tw-shadow-colored: 0px 4px 34px 0px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.ui-confirm-dialog .ui-dialog-content {
    display: flex !important;
    align-items: center !important;
    padding: 1.5rem;
}

.ui-confirm-dialog .ui-confirm-dialog-severity {
    margin-right: 1rem;
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
}

.ui-confirm-dialog .ui-confirm-dialog-message {
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.75;
    --tw-text-opacity: 1;
    color: rgb(77 77 77 / var(--tw-text-opacity, 1));
}

/* Severity icons — substituir sprites jQuery UI por Flaticon */

.ui-confirm-dialog-severity.ui-icon {
    height: auto !important;
    width: auto !important;
    background-image: none !important;
    text-align: center !important;
    text-indent: 0px !important;
    font-size: 1.5rem;
  font-family: 'uicons-solid-rounded' !important;
}

.ui-confirm-dialog-severity.ui-icon-alert::before {
  content: "\f488";
  --tw-text-opacity: 1;
  color: rgb(252 191 25 / var(--tw-text-opacity, 1));
}

.ui-confirm-dialog-severity.ui-icon-info::before {
  content: "\e7ac";
  --tw-text-opacity: 1;
  color: rgb(25 116 252 / var(--tw-text-opacity, 1));
}

.ui-confirm-dialog-severity.ui-icon-error::before {
  content: "\e7ac";
  --tw-text-opacity: 1;
  color: rgb(219 16 43 / var(--tw-text-opacity, 1));
}

/* Global paginator — estilos consolidados na seção final do paginator */

.ui-slider {
    border-radius: 0.5rem;
  background-color: #e9ecef;
  height: 8px;
}

.ui-slider .ui-slider-handle {
    border-radius: 9999px;
  width: 20px;
  height: 20px;
  background-color: var(--tw-color-text);
  border: 2px solid #fff;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  top: -6px;
}

.ui-slider .ui-slider-range {
  background-color: var(--tw-color-text);
}

.ui-slider .ui-slider-handle:hover {
    --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  background-color: #033d63;
  transform: scale(1.15);
}

.ui-slider .ui-slider-handle:focus {
    outline: 2px solid transparent;
    outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(var(--tw-color-primary-rgb), 0.25);
}

.ui-slider.ui-state-disabled {
    cursor: not-allowed;
    opacity: 0.5;
}

.ui-slider.ui-state-disabled .ui-slider-handle {
    cursor: not-allowed;
}

/* Slider vertical */

.ui-slider-vertical {
  width: 8px;
  height: 150px;
}

.ui-slider-vertical .ui-slider-handle {
  left: -6px;
  top: auto;
}

/* ========== COLORPICKER ========== */

.ui-colorpicker .ui-button {
    display: flex;
    width: 100% !important;
    align-items: center;
    justify-content: center;
    border-radius: 0.5rem !important;
    padding: 0px !important;
  height: 36px;
}

.ui-colorpicker .ui-button-text {
    display: flex !important;
    width: 100% !important;
    align-items: center;
    justify-content: center;
    border-radius: 0.5rem;
    padding: 0px !important;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
  height: 36px;
}

.ui-colorpicker .ui-button .ui-button-text > span {
    display: block;
    width: 100% !important;
    border-radius: 0.5rem !important;
    border-left-width: 0px !important;
    border-right-width: 0px !important;
    border-top-color: var(--tw-color-primary) !important;
    border-bottom-color: var(--tw-color-primary) !important;
    color: transparent !important;
  height: 36px !important;
}

.ui-colorpicker-panel {
        border: 1px solid #CED4DA;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
        --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    }

.ui-inputgroup .ui-colorpicker .ui-button {
    border-top-right-radius: 0px !important;
    border-bottom-right-radius: 0px !important;
}

.ui-inputgroup .ui-colorpicker .ui-button .ui-button-text > span {
    border-top-left-radius: 0.5rem !important;
    border-bottom-left-radius: 0.5rem !important;
    border-top-right-radius: 0px !important;
    border-bottom-right-radius: 0px !important;
}

/* ========== RATING ========== */

.ui-rating .ui-rating-star {
    cursor: pointer;
    font-size: 1.25rem;
    --tw-text-opacity: 1;
    color: rgb(206 212 218 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ui-rating .ui-rating-star:hover {
    color: rgb(252 191 25 / 0.7);
}

.ui-rating .ui-rating-star.ui-rating-star-on {
    --tw-text-opacity: 1;
    color: rgb(252 191 25 / var(--tw-text-opacity, 1));
}

.ui-rating .ui-rating-cancel {
    cursor: pointer;
    font-size: 1.25rem;
    color: rgb(219 16 43 / 0.4);
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ui-rating .ui-rating-cancel:hover {
    --tw-text-opacity: 1;
    color: rgb(219 16 43 / var(--tw-text-opacity, 1));
}

.ui-rating.ui-state-disabled .ui-rating-star,
.ui-rating.ui-state-disabled .ui-rating-cancel {
    cursor: not-allowed !important;
    opacity: 0.6;
}

/* ========== EDITOR ========== */

.ui-editor {
        border: 1px solid #CED4DA;
        overflow: hidden;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
    }

.ui-editor .ui-editor-toolbar {
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
}

.ui-editor .ui-editor-content {
    min-height: 200px;
    border-bottom-right-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(251 251 251 / var(--tw-bg-opacity, 1));
}

/* ========== TREE ========== */

.ui-tree {
        border: 1px solid #CED4DA;
        width: 100% !important;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        padding: 0.5rem;
    }

.ui-tree .ui-tree-container {
    padding: 0px !important;
}

.ui-tree .ui-treenode-content {
    display: flex;
    align-items: center;
    border-radius: 0.375rem;
    padding: 0px;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ui-tree .ui-treenode-content:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
}

.ui-tree .ui-treenode-content.ui-state-highlight {
        --tw-bg-opacity: 1;
        background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));
        color: var(--tw-color-primary);
    }

.ui-tree .ui-tree-toggler,
.ui-tree .ui-tree-container .ui-treenode .ui-treenode-content .ui-tree-toggler {
    cursor: pointer;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
  font-size: 1.25em !important;
  background: none !important;
  background-image: none !important;
  color: var(--tw-color-text) !important;
}

.ui-tree .ui-tree-toggler.ui-icon-triangle-1-e:before,
.ui-tree .ui-tree-container .ui-treenode .ui-treenode-content .ui-tree-toggler.ui-icon-triangle-1-e:before {
  content: "\e0a3" !important;
}

.ui-tree .ui-tree-toggler.ui-icon-triangle-1-s:before,
.ui-tree .ui-tree-container .ui-treenode .ui-treenode-content .ui-tree-toggler.ui-icon-triangle-1-s:before {
  content: "\e0a1" !important;
}

.ui-tree .ui-treenode-leaf-icon {
    margin-left: 0.5rem;
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
}

.ui-tree .ui-treenode-leaf-icon:before {
  content: "";
}

/* ========== BLOCKUI ========== */

.ui-blockui {
    background-color: rgb(255 255 255 / 0.8);
    --tw-backdrop-blur: blur(4px);
    backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.ui-blockui-content {
    border-radius: 0.5rem;
    background-color: var(--tw-color-primary);
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    font-size: 0.875rem;
    font-weight: 600;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

/* ========== INPUTSWITCH ========== */

.ui-inputswitch {
    position: relative;
    display: inline-flex;
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
    align-items: center;
    border-radius: 9999px;
    --tw-bg-opacity: 1;
    background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
  width: 56px !important;
  min-width: 56px !important;
  max-width: 56px !important;
  height: 28px !important;
  overflow: hidden;
  border: none !important;
  box-sizing: border-box;
}

/* Reset legado — anula ::after de style.css ("Sim"/"Não") */

.ui-inputswitch::after,
.ui-inputswitch::before {
  content: none !important;
  display: none !important;
}

/* Esconde textos internos PF7 (on/off label areas) */

.ui-inputswitch-on,
.ui-inputswitch-off {
    display: none !important;
}

/* Esconde slider PF8+ (não existe no PF7, mas previne conflito) */

.ui-inputswitch .ui-inputswitch-slider {
    display: none !important;
}

/* ============================= */

/* HANDLE */

/* ============================= */

.ui-inputswitch-handle,
.ui-inputswitch .ui-inputswitch-handle {
    position: absolute !important;
    border-radius: 9999px;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  width: 22px !important;
  height: 22px !important;
  top: 3px !important;
  left: 3px !important;
  transition:
    left 0.3s ease,
    transform 0.3s ease !important;
  right: auto !important;
  border: none !important;
  background-image: none !important;
}

/* ============================= */

/* ESTADO ON */

/* ============================= */

.ui-inputswitch-checked,
.ui-inputswitch.ui-inputswitch-checked,
.ui-inputswitch.ui-state-active {
    --tw-bg-opacity: 1;
    background-color: rgb(34 197 94 / var(--tw-bg-opacity, 1));
  border-color: transparent !important;
}

.ui-inputswitch-checked .ui-inputswitch-handle,
.ui-inputswitch.ui-inputswitch-checked .ui-inputswitch-handle,
.ui-inputswitch.ui-state-active .ui-inputswitch-handle {
  left: 31px !important;
}

/* ============================= */

/* HOVER */

/* ============================= */

.ui-inputswitch:hover {
    --tw-brightness: brightness(.95);
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

/* ============================= */

/* FOCUS */

/* ============================= */

.ui-inputswitch.ui-inputswitch-focus {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(134 239 172 / var(--tw-ring-opacity, 1));
}

/* ============================= */

/* DISABLED */

/* ============================= */

.ui-inputswitch.ui-state-disabled {
    cursor: not-allowed;
    opacity: 0.5;
}

/* ========== KNOB ========== */

.ui-knob {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.ui-knob svg text {
  fill: var(--tw-color-text);
  font-weight: 600;
}

.ui-knob.ui-state-disabled {
    cursor: not-allowed;
    opacity: 0.5;
}

/* ========== STEPS ========== */

.ui-steps {
    border-width: 0px;
    background-color: transparent;
    padding: 0px;
}

.ui-steps .ui-steps-item {
    position: relative;
}

.ui-steps .ui-steps-item .ui-menuitem-link {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    background-color: transparent;
    padding: 1rem;
}

.ui-steps .ui-steps-item .ui-steps-number {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    font-weight: 600;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  width: 40px;
  height: 40px;
  background-color: #e9ecef;
  color: #87898b;
}

.ui-steps .ui-steps-item.ui-state-highlight .ui-steps-number {
    background-color: var(--tw-color-primary);
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.ui-steps .ui-steps-item .ui-steps-title {
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-steps .ui-steps-item.ui-state-highlight .ui-steps-title {
        font-weight: 600;
        color: var(--tw-color-primary);
    }

/* Step connector line */

.ui-steps .ui-steps-item:not(:last-child):after {
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
}

/* ========== WIZARD ========== */

.ui-wizard {
    border-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border: 1px solid #e1e6eb;
}

.ui-wizard .ui-wizard-step-titles {
    margin: 0px;
    display: flex;
    list-style-type: none;
    overflow: hidden;
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
    padding: 0px;
}

.ui-wizard .ui-wizard-step-titles li {
    position: relative;
    flex: 1 1 0%;
    cursor: default;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    padding-left: 1rem;
    padding-right: 1rem;
    text-align: center;
    font-size: 0.875rem;
    font-weight: 500;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  border-right: 1px solid #e1e6eb;
}

.ui-wizard .ui-wizard-step-titles li:last-child {
        border-right: 0;
        border-right-width: 0px;
    }

.ui-wizard .ui-wizard-step-titles li.ui-state-highlight {
    background-color: var(--tw-color-text);
    font-weight: 600;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-wizard .ui-wizard-step-titles li.ui-state-default:not(.ui-state-highlight) {
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
}

.ui-wizard .ui-wizard-content {
    padding: 1.5rem;
}

.ui-wizard .ui-wizard-navbar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.75rem;
    border-bottom-right-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
    border-top-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.ui-wizard .ui-wizard-navbar .ui-button {
    border-radius: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  height: 36px;
  padding: 0 1.25rem;
}

.ui-wizard .ui-wizard-nav-back {
        border: 1px solid #CED4DA;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        color: var(--tw-color-text);
    }

.ui-wizard .ui-wizard-nav-back:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
}

.ui-wizard .ui-wizard-nav-next {
        border: 1px solid #CED4DA;
        border-width: 1px;
        border-color: var(--tw-color-text);
        background-color: var(--tw-color-text);
        --tw-text-opacity: 1;
        color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    }

.ui-wizard .ui-wizard-nav-next:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(3 61 99 / var(--tw-bg-opacity, 1));
}

/* ========== SCHEDULE / PICKLIST / DATASCROLLER ========== */

.ui-schedule {
    border-radius: 0.5rem;
  border: 1px solid #e1e6eb;
}

.ui-schedule .ui-schedule-header {
  background-color: #e9ecef;
  padding: 1rem;
}

.ui-picklist .ui-picklist-list {
    border-radius: 0.5rem;
  border: 1px solid #e1e6eb;
}

.ui-picklist .ui-picklist-item {
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  padding: 0.5rem 0.75rem;
}

.ui-picklist .ui-picklist-item.ui-state-highlight {
  background-color: rgba(var(--tw-color-primary-rgb), 0.1);
  color: var(--tw-color-text);
}

.ui-picklist .ui-picklist-buttons .ui-button {
    border-radius: 0.5rem;
  margin: 0.25rem 0;
}

.ui-datascroller .ui-datascroller-content {
    border-radius: 0.5rem;
  border: 1px solid #e1e6eb;
}

.ui-datascroller .ui-datascroller-loader {
    text-align: center;
    font-weight: 600;
  padding: 1rem;
  color: var(--tw-color-text);
}

/* ========== SIDEBAR ========== */

.ui-sidebar {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    --tw-shadow: 0 4px 44px rgba(2,42,70,0.15);
    --tw-shadow-colored: 0 4px 44px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.ui-sidebar .ui-sidebar-close {
    display: flex;
    height: 2rem;
    width: 2rem;
    align-items: center;
    justify-content: center;
    border-radius: 0.25rem;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ui-sidebar .ui-sidebar-close:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
        color: var(--tw-color-primary);
    }

.ui-sidebar .ui-sidebar-close .ui-icon {
    background-color: transparent;
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
}

/* ========== LIGHTBOX ========== */

.ui-lightbox {
    border-radius: 0.5rem;
}

.ui-lightbox .ui-lightbox-caption {
    border-bottom-right-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
    background-color: rgb(0 0 0 / 0.8);
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-lightbox .ui-lightbox-nav-left,
.ui-lightbox .ui-lightbox-nav-right {
    display: flex;
    height: 3rem;
    width: 3rem;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    background-color: rgb(0 0 0 / 0.5);
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-lightbox .ui-lightbox-nav-left:hover,
.ui-lightbox .ui-lightbox-nav-right:hover {
    background-color: rgb(0 0 0 / 0.7);
}

.ui-lightbox .ui-lightbox-close {
    display: flex;
    height: 2.5rem;
    width: 2.5rem;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    background-color: rgb(0 0 0 / 0.5);
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-lightbox .ui-lightbox-close:hover {
    background-color: rgb(0 0 0 / 0.7);
}

/* ========== CHART ========== */

.ui-chart {
        border: 1px solid #CED4DA;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding: 1rem;
    }

.ui-chart canvas {
    height: auto;
    max-width: 100%;
}

/* ========== INPLACE ========== */

.ui-inplace .ui-inplace-display {
    cursor: pointer;
    border-radius: 0.25rem;
    padding: 0.5rem;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-inplace .ui-inplace-display:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
}

.ui-inplace .ui-inplace-content {
    display: inline-block;
}

/* ========== WATERMARK ========== */

.ui-watermark {
    font-style: italic;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
}

/* ========== SEPARATOR ========== */

.ui-separator {
    margin-top: 1rem;
    margin-bottom: 1rem;
    border-top-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
}

/* ========== FOCUS HELPER ========== */

.ui-focus-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

/* ========== DRAG & DROP ========== */

.ui-draggable-dragging {
    cursor: move;
    opacity: 0.7;
}

.ui-droppable-hover {
    border-color: var(--tw-color-primary);
    --tw-bg-opacity: 1;
    background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));
}

/* ========== IDLE MONITOR ========== */

.ui-idle-warning {
        border: 1px solid #CED4DA;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(252 191 25 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(254 252 232 / var(--tw-bg-opacity, 1));
        padding: 1rem;
        --tw-text-opacity: 1;
        color: rgb(211 146 5 / var(--tw-text-opacity, 1));
    }

/* ========== MEDIA ========== */

.ui-media {
    overflow: hidden;
    border-radius: 0.5rem;
}

/* ========== SCHEDULE ========== */

/* Container: <div class="fc ui-widget fc-ltr"> */

.fc.ui-widget {
        border: 1px solid #CED4DA;
        overflow: hidden;
        border-radius: 12px;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    }

/* Toolbar */

.fc.ui-widget .fc-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    background-color: var(--tw-color-primary);
    padding: 1rem;
  margin-bottom: 0 !important;
}

.fc.ui-widget .fc-toolbar .fc-clear {
  display: none !important;
}

/* Grupos de botões — cápsulas brancas */

.fc.ui-widget .fc-toolbar .fc-button-group {
    overflow: hidden;
    border-radius: 12px;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.fc.ui-widget .fc-toolbar .fc-today-button {
    margin-left: 0.5rem;
    border-radius: 12px;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

/* Botões — sobrescreve .ui-state-default do jQuery UI */

.fc.ui-widget .fc-toolbar button {
    height: 2.25rem;
    cursor: pointer;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    font-size: 0.875rem;
    font-weight: 500;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.fc.ui-widget .fc-toolbar button.ui-state-default {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  color: var(--tw-color-primary) !important;
  text-shadow: none !important;
  box-shadow: none !important;
}

.fc.ui-widget .fc-toolbar button.ui-state-default:hover {
  background-color: var(--tw-color-primary-100) !important;
  background-image: none !important;
}

.fc.ui-widget .fc-toolbar button.ui-state-active {
  background-color: var(--tw-color-primary-100) !important;
  background-image: none !important;
  box-shadow: none !important;
}

.fc.ui-widget .fc-toolbar button.ui-state-disabled {
  opacity: 0.5 !important;
  background-image: none !important;
}

/* Reset do span .ui-icon (sprite jQuery UI) */

.fc.ui-widget .fc-toolbar button > span.ui-icon {
  background: none !important;
  background-image: none !important;
  text-indent: 0 !important;
  overflow: visible !important;
  width: auto !important;
  height: auto !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}

/* Ícone prev — fi-sr-angle-left (\e09f) */

.fc.ui-widget .fc-prev-button span.ui-icon::before {
  font-family: uicons-solid-rounded !important;
  content: "\e09f" !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: normal !important;
  line-height: 1 !important;
  display: inline-block !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: var(--tw-color-primary) !important;
}

/* Ícone next — fi-sr-angle-right (\e0a0) */

.fc.ui-widget .fc-next-button span.ui-icon::before {
  font-family: uicons-solid-rounded !important;
  content: "\e0a0" !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: normal !important;
  line-height: 1 !important;
  display: inline-block !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: var(--tw-color-primary) !important;
}

/* Título central */

.fc.ui-widget .fc-center h2 {
    font-size: 1.125rem;
    font-weight: 600;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* Container de visualização */

.fc.ui-widget .fc-view-container {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

/* Cabeçalhos dos dias */

.fc.ui-widget .fc-day-header {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    padding-left: 1rem;
    padding-right: 1rem;
    text-align: left;
    font-size: 0.75rem;
    text-transform: uppercase;
}

/* Números dos dias */

.fc.ui-widget .fc-day-number {
    padding: 0.5rem;
    font-size: 0.875rem;
    font-weight: 700;
}

/* Dia atual */

.fc.ui-widget td.fc-today {
        color: var(--tw-color-secondary);
  background-color: #fdf8f0 !important;
    }

/* Outro mês */

.fc.ui-widget .fc-other-month {
  opacity: 0.4 !important;
}

/* Eventos */

.fc.ui-widget .fc-event {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
    border-radius: 0.25rem;
    font-size: 0.75rem;
    --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
    --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  border: 0 !important;
  margin-top: 2px;
}

/* Cores dos eventos — sobrescreve .fc-event background-color:#3a87ad */

.fc.ui-widget .fc-event.bg-success {
  background-color: var(--tw-color-success) !important;
}

.fc.ui-widget .fc-event.bg-danger {
  background-color: var(--tw-color-danger) !important;
}

.fc.ui-widget .fc-event.bg-warning {
  background-color: var(--tw-color-warning) !important;
}

.fc.ui-widget .fc-event.border-success {
  border-color: var(--tw-color-success) !important;
}

.fc.ui-widget .fc-event.border-danger {
  border-color: var(--tw-color-danger) !important;
}

.fc.ui-widget .fc-event.border-warning {
  border-color: var(--tw-color-warning) !important;
}

/* Título do evento */

.fc.ui-widget .fc-event .fc-title {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    font-size: 0.75rem;
    font-weight: 700;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* ========== CAROUSEL ========== */

.ui-carousel {
        border: 1px solid #CED4DA;
        overflow: hidden;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    }

.ui-carousel .ui-carousel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.ui-carousel .ui-carousel-header-title {
    font-size: 1rem;
    font-weight: 600;
    --tw-text-opacity: 1;
    color: rgb(51 51 51 / var(--tw-text-opacity, 1));
}

.ui-carousel .ui-carousel-viewport {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.ui-carousel .ui-carousel-item {
    padding: 0.5rem;
}

.ui-carousel .ui-carousel-button {
    display: flex;
    height: 2rem;
    width: 2rem;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    border-width: 0px;
    background-color: var(--tw-color-primary);
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-carousel .ui-carousel-button:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(0 58 92 / var(--tw-bg-opacity, 1));
}

.ui-carousel .ui-carousel-button.ui-state-disabled {
    cursor: not-allowed;
    opacity: 0.4;
}

.ui-carousel .ui-carousel-page-links {
    display: flex;
    justify-content: center;
    gap: 0.25rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.ui-carousel .ui-carousel-page-link {
    height: 0.75rem;
    width: 0.75rem;
    cursor: pointer;
    border-radius: 9999px;
    --tw-bg-opacity: 1;
    background-color: rgb(206 212 218 / var(--tw-bg-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-carousel .ui-carousel-page-link.ui-state-highlight {
    background-color: var(--tw-color-primary);
}

/* ========== GALLERIA ========== */

.ui-galleria {
        border: 1px solid #CED4DA;
        overflow: hidden;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    }

.ui-galleria .ui-galleria-panel-wrapper {
    --tw-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
}

.ui-galleria .ui-galleria-panel img {
    margin-left: auto;
    margin-right: auto;
}

.ui-galleria .ui-galleria-filmstrip-wrapper {
    --tw-bg-opacity: 1;
    background-color: rgb(26 26 26 / var(--tw-bg-opacity, 1));
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.ui-galleria .ui-galleria-filmstrip {
    display: flex;
    justify-content: center;
    gap: 0.5rem;
}

.ui-galleria .ui-galleria-frame {
    cursor: pointer;
    overflow: hidden;
    border-radius: 0.25rem;
    border-width: 2px;
    border-color: transparent;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-galleria .ui-galleria-frame.ui-state-highlight {
    border-color: var(--tw-color-primary);
}

.ui-galleria .ui-galleria-frame img {
    height: 3rem;
    width: 4rem;
    -o-object-fit: cover;
       object-fit: cover;
}

.ui-galleria .ui-galleria-nav-prev,
.ui-galleria .ui-galleria-nav-next {
    display: flex;
    height: 2.5rem;
    width: 2.5rem;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    border-width: 0px;
    background-color: rgb(0 0 0 / 0.5);
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-galleria .ui-galleria-nav-prev:hover,
.ui-galleria .ui-galleria-nav-next:hover {
    background-color: rgb(0 0 0 / 0.8);
}

.ui-galleria .ui-galleria-caption {
    background-color: rgb(0 0 0 / 0.7);
    padding: 0.75rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* ========== TERMINAL ========== */

.ui-terminal {
    border-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(26 26 26 / var(--tw-bg-opacity, 1));
    padding: 1rem;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(0 255 0 / var(--tw-text-opacity, 1));
}

.ui-terminal .ui-terminal-content {
    height: 16rem;
    overflow-y: auto;
}

.ui-terminal .ui-terminal-input {
    flex: 1 1 0%;
    border-width: 0px;
    background-color: transparent;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(0 255 0 / var(--tw-text-opacity, 1));
    outline: 2px solid transparent;
    outline-offset: 2px;
}

.ui-terminal .ui-terminal-prompt {
    margin-right: 0.5rem;
    --tw-text-opacity: 1;
    color: rgb(0 191 255 / var(--tw-text-opacity, 1));
}

.ui-terminal .ui-terminal-command {
    --tw-text-opacity: 1;
    color: rgb(0 255 0 / var(--tw-text-opacity, 1));
}

.ui-terminal .ui-terminal-response {
    margin-top: 0.25rem;
    white-space: pre-wrap;
    --tw-text-opacity: 1;
    color: rgb(204 204 204 / var(--tw-text-opacity, 1));
}

.ui-terminal .ui-terminal-input-container {
    margin-top: 0.5rem;
    display: flex;
    align-items: center;
    border-top-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(51 51 51 / var(--tw-border-opacity, 1));
    padding-top: 0.5rem;
}

/* ========== ORDERLIST ========== */

.ui-orderlist {
    display: flex;
    gap: 1rem;
}

.ui-orderlist .ui-orderlist-controls {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.5rem;
}

.ui-orderlist .ui-orderlist-controls .ui-button {
    display: flex;
    height: 2.5rem;
    width: 2.5rem;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    border-radius: 0.5rem;
    border-width: 0px;
    background-color: var(--tw-color-primary);
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-orderlist .ui-orderlist-controls .ui-button:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(0 58 92 / var(--tw-bg-opacity, 1));
}

.ui-orderlist .ui-orderlist-caption {
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    font-weight: 600;
    --tw-text-opacity: 1;
    color: rgb(51 51 51 / var(--tw-text-opacity, 1));
}

.ui-orderlist .ui-orderlist-list {
        border: 1px solid #CED4DA;
        min-height: 200px;
        overflow-y: auto;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    }

.ui-orderlist .ui-orderlist-item {
    cursor: pointer;
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.ui-orderlist .ui-orderlist-item:last-child {
    border-bottom-width: 0px;
}

.ui-orderlist .ui-orderlist-item:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
}

.ui-orderlist .ui-orderlist-item.ui-state-highlight {
    background-color: var(--tw-color-primary);
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-orderlist .ui-orderlist-filter-container {
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
    padding: 0.5rem;
}

.ui-orderlist .ui-orderlist-filter {
        border: 1px solid #CED4DA;
        height: 2.25rem;
        width: 100%;
        border-radius: 0.375rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding-left: 0.75rem;
        padding-right: 0.75rem;
        font-size: 0.875rem;
    }

/* ========== CUSTOM UTILITIES ========== */

.ga-component-wrapper {
    margin-bottom: 1rem;
}

.ga-form-section {
        border: 1px solid #CED4DA;
        margin-bottom: 1.5rem;
        border-radius: 0.5rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding: 1rem;
    }

.ga-section-title {
        margin-bottom: 1rem;
        border-bottom-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
        padding-bottom: 0.5rem;
        font-size: 1.125rem;
        font-weight: 700;
        color: var(--tw-color-primary);
    }

.ga-action-buttons {
    margin-top: 1.5rem;
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
}

.ga-empty-state {
    padding-top: 3rem;
    padding-bottom: 3rem;
    text-align: center;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
}

.ga-empty-state-icon {
    margin-bottom: 1rem;
    font-size: 3.75rem;
    line-height: 1;
    --tw-text-opacity: 1;
    color: rgb(206 212 218 / var(--tw-text-opacity, 1));
}

.ga-empty-state-text {
    margin-bottom: 0.5rem;
    font-size: 1rem;
}

.ga-empty-state-subtext {
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
}

/* ========== GLOBAL PAGINATOR (standalone) ========== */

.ui-paginator {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    border-width: 0px;
    background-color: transparent;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.ui-paginator .ui-paginator-pages {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.ui-paginator .ui-paginator-page {
        display: flex;
        height: 2rem;
        width: 2rem;
        align-items: center;
        justify-content: center;
        border-radius: 0.375rem;
        background-color: transparent;
        font-size: 0.875rem;
        font-weight: 500;
        color: var(--tw-color-primary);
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 150ms;
    }

.ui-paginator .ui-paginator-page:hover:not(.ui-state-active) {
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
}

.ui-paginator .ui-paginator-page.ui-state-active {
    background-color: var(--tw-color-primary);
    font-weight: 700;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.ui-paginator .ui-paginator-first,
.ui-paginator .ui-paginator-prev,
.ui-paginator .ui-paginator-next,
.ui-paginator .ui-paginator-last {
        display: flex;
        height: 2rem;
        width: 2rem;
        align-items: center;
        justify-content: center;
        border-radius: 0.375rem;
        border-width: 0px;
        background-color: transparent;
        color: var(--tw-color-primary);
        transition-property: all;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 150ms;
    }

.ui-paginator .ui-paginator-first:hover,
.ui-paginator .ui-paginator-prev:hover,
.ui-paginator .ui-paginator-next:hover,
.ui-paginator .ui-paginator-last:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
}

.ui-paginator .ui-paginator-first.ui-state-disabled,
.ui-paginator .ui-paginator-prev.ui-state-disabled,
.ui-paginator .ui-paginator-next.ui-state-disabled,
.ui-paginator .ui-paginator-last.ui-state-disabled {
    cursor: not-allowed;
    opacity: 0.4;
}

.ui-paginator .ui-paginator-first .ui-icon,
.ui-paginator .ui-paginator-prev .ui-icon,
.ui-paginator .ui-paginator-next .ui-icon,
.ui-paginator .ui-paginator-last .ui-icon {
    background-color: transparent;
    color: transparent !important;
  font-family: uicons-solid-rounded !important;
  text-indent: 0 !important;
  font-size: 0;
}

.ui-paginator .ui-icon:before {
  color: var(--tw-color-text) !important;
  font-size: 1rem;
}

.ui-paginator .ui-paginator-first .ui-icon:before {
  content: "\e098";
}

.ui-paginator .ui-paginator-prev .ui-icon:before {
  content: "\e09f";
}

.ui-paginator .ui-paginator-next .ui-icon:before {
  content: "\e0a0";
}

.ui-paginator .ui-paginator-last .ui-icon:before {
  content: "\e099";
}

/* Rows per page select */

.ui-paginator .ui-paginator-rpp-options {
        border: 1px solid #CED4DA;
        margin-left: 0.5rem;
        height: 2rem;
        cursor: pointer;
        border-radius: 0.375rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding-left: 0.5rem;
        padding-right: 0.5rem;
        font-size: 0.875rem;
        --tw-text-opacity: 1;
        color: rgb(77 77 77 / var(--tw-text-opacity, 1));
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path d='M0 0 L5 6 L10 0' fill='gray'/></svg>");
  background-repeat: no-repeat;
  background-position: right 8px center;
  padding-right: 24px;
    }

.ui-paginator .ui-paginator-rpp-options:focus,
.ui-paginator .ui-paginator-rpp-options:hover {
    border-color: var(--tw-color-primary);
    outline: 2px solid transparent;
    outline-offset: 2px;
}

.ui-paginator .ui-paginator-current {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
}

/* ========== CUSTOM TABLE FOOTER ========== */

.custom-table-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.seletor-linhas-container {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(73 80 87 / var(--tw-text-opacity, 1));
}

.botao-rpp {
        border-radius: 0.375rem;
        padding-left: 0.75rem;
        padding-right: 0.75rem;
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
        font-weight: 500;
        color: var(--tw-color-primary);
        text-decoration-line: none;
        transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 150ms;
    }

.botao-rpp:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
}

.botao-rpp-ativo {
    border-radius: 0.375rem;
    background-color: var(--tw-color-primary);
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    font-weight: 700;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    text-decoration-line: none;
}

.page-link {
        margin-left: 0.125rem;
        margin-right: 0.125rem;
        display: inline-flex;
        height: 2rem;
        width: 2rem;
        align-items: center;
        justify-content: center;
        border-radius: 0.5rem;
        border-width: 0px;
        font-weight: 500;
        color: var(--tw-color-primary);
        text-decoration-line: none;
        transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 150ms;
    }

.page-link:hover:not(.page-link-ativo):not(.ui-state-disabled) {
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
}

.page-link-ativo {
    display: inline-flex;
    height: 2rem;
    width: 2rem;
    align-items: center;
    justify-content: center;
    border-radius: 0.5rem;
    background-color: var(--tw-color-primary);
    font-weight: 700;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.paginator-ellipsis {
    margin-left: 0.125rem;
    margin-right: 0.125rem;
    display: inline-flex;
    height: 2rem;
    width: 2rem;
    align-items: center;
    justify-content: center;
    --tw-text-opacity: 1;
    color: rgb(73 80 87 / var(--tw-text-opacity, 1));
}

/* ========== DOCUMENTATION PAGE COMPONENTS ========== */

/* Classes para a página de documentação de componentes PrimeFaces */

.category-header {
    border-radius: 0.75rem;
    background-color: var(--tw-color-primary);
    padding: 1.5rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.component-card {
        border: 1px solid #CED4DA;
        margin-bottom: 1.5rem;
        border-radius: 0.75rem;
        border-width: 1px;
        --tw-border-opacity: 1;
        border-color: rgb(243 244 246 / var(--tw-border-opacity, 1));
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        padding: 1.5rem;
        --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
        --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    }

.component-title {
        margin-bottom: 0.75rem;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.25rem;
        font-size: 1.125rem;
        font-weight: 700;
        color: var(--tw-color-primary);
    }

.component-code {
    margin-top: 1rem;
    overflow-x: auto;
    border-radius: 0.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(30 30 30 / var(--tw-bg-opacity, 1));
    padding: 1rem;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(212 212 212 / var(--tw-text-opacity, 1));
  white-space: pre-wrap;
  word-break: break-word;
}

.component-info {
    margin-top: 1rem;
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
    border-left-width: 4px;
    --tw-bg-opacity: 1;
    background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));
    padding: 0.75rem;
    font-size: 0.875rem;
    --tw-text-opacity: 1;
    color: rgb(30 64 175 / var(--tw-text-opacity, 1));
  --tw-border-opacity: 1;
  border-color: rgb(59 130 246 / var(--tw-border-opacity, 1));
}

/* Sidebar de estatísticas */

.stats-sidebar {
    position: sticky;
    top: 1rem;
    border-radius: 0.75rem;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    padding: 1.5rem;
    --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

/*EXTRAS*/

.ga-dropdown {
  position: relative;
}

.ga-dropdown-menu {
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 12rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #4d4d4d;
  text-align: left;
  list-style: none;
  background-color: #ffffff;
  background-clip: padding-box;
  border: 0 solid;
  border-radius: 4px;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.ga-dropdown-menu.show {
  display: block;
  z-index: 6;
  pointer-events: auto;
  animation: 0.25s forwards dropdown;
}

.ga-dropdown-menu-sm {
  min-width: 100px;
}

.ga-dropdown-menu-lg {
  min-width: 320px;
}

.ga-dropdown-menu-xl {
  min-width: 420px;
}

.ga-dropdown-item {
  display: block;
  width: 100%;
  padding: 0.5rem 1rem;
  clear: both;
  font-weight: 400;
  color: #4d4d4d;
  transition: all 180ms ease-in 0s;
  text-align: inherit;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}

.ga-dropdown-item:hover {
  text-decoration: none;
  color: #00807e;
  background-color: rgb(234.6, 255, 254.7333333333);
  cursor: pointer;
}

.ga-dropdown-item i {
  margin-right: 0.5rem;
}

.ga-dropdown-header {
  display: block;
  padding: 0.5rem 1rem;
  margin-bottom: 0;
  font-size: 0.75rem;
  color: #5f5f5f;
  white-space: nowrap;
}

.ga-dropdown-header h6 {
  margin: 0;
  font-size: 0.75rem;
  text-transform: uppercase;
  font-weight: 700;
}

.ga-dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #d1d1d1;
}

.ga-dropdown-menu-left {
  right: auto;
  left: 0;
}

.ga-dropdown-menu-right {
  right: 0;
  left: auto;
}

@media screen and (min-width: 576px) {
  .ga-dropdown-menu-sm-left {
    right: auto;
    left: 0;
  }

  .ga-dropdown-menu-sm-right {
    right: 0;
    left: auto;
  }
}

@media screen and (min-width: 768px) {
  .ga-dropdown-menu-md-left {
    right: auto;
    left: 0;
  }

  .ga-dropdown-menu-md-right {
    right: 0;
    left: auto;
  }
}

@media screen and (min-width: 992px) {
  .ga-dropdown-menu-lg-left {
    right: auto;
    left: 0;
  }

  .ga-dropdown-menu-lg-right {
    right: 0;
    left: auto;
  }
}

@media screen and (min-width: 1200px) {
  .ga-dropdown-menu-xl-left {
    right: auto;
    left: 0;
  }

  .ga-dropdown-menu-xl-right {
    right: 0;
    left: auto;
  }
}

@media screen and (min-width: 1400px) {
  .ga-dropdown-menu-xxl-left {
    right: auto;
    left: 0;
  }

  .ga-dropdown-menu-xxl-right {
    right: 0;
    left: auto;
  }
}

@keyframes dropdown {
  0% {
    opacity: 0;
    transform: translate(0, 10px) perspective(200px) rotateX(-2deg);
    transition:
      visibility 0.25s,
      opacity 0.25s,
      transform 0.25s;
  }
  100% {
    transform: translate(0, 0);
    opacity: 1;
  }
}

.btn {
  display: inline-block;
  font-family: "Nunito Sans", sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  white-space: nowrap;
  border: 1px solid transparent;
  height: 36px;
  border-radius: 6px;
  transition:
    background-color,
    color 180ms ease-in 0s;
  text-align: center;
  vertical-align: middle;
  background-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  width: auto;
  margin: 0;
  padding: 0.35rem 1.25rem;
  letter-spacing: 0.025em;
  cursor: pointer;
}

.btn:hover {
  text-decoration: none;
}

a.btn {
  line-height: 26px;
}

a.btn.btn-sm {
  line-height: initial;
}

.btn-primary {
  --_btn-bg: var(--tw-color-primary);
  --_btn-text: #ffffff;
  --_btn-border: var(--tw-color-primary);
  color: #ffffff;
  background-color: var(--tw-color-primary);
  border-color: var(--tw-color-primary);
}

.btn-primary:hover {
  background-color: var(--tw-color-primary-hover);
  border-color: var(--tw-color-primary-hover);
  color: #ffffff;
}

.btn-secondary {
  --_btn-bg: var(--tw-color-secondary);
  --_btn-text: #ffffff;
  --_btn-border: var(--tw-color-secondary);
  color: #ffffff;
  background-color: var(--tw-color-secondary);
  border-color: var(--tw-color-secondary);
}

.btn-secondary:hover {
  background-color: var(--tw-color-secondary-hover);
  border-color: var(--tw-color-secondary-hover);
  color: #ffffff;
}

.btn-success {
  --_btn-bg: #3dc661;
  --_btn-text: #ffffff;
  --_btn-border: #3dc661;
  color: #ffffff;
  background-color: #3dc661;
  border-color: #3dc661;
}

.btn-success:hover {
  background-color: rgb(50.1304780876, 170.6195219124, 81.7918326693);
  border-color: rgb(50.1304780876, 170.6195219124, 81.7918326693);
  color: #ffffff;
}

.btn-danger {
  --_btn-bg: #e7515a;
  --_btn-text: #ffffff;
  --_btn-border: #e7515a;
  color: #ffffff;
  background-color: #e7515a;
  border-color: #e7515a;
}

.btn-danger:hover {
  background-color: rgb(226.3636363636, 47.3863636364, 58.125);
  border-color: rgb(226.3636363636, 47.3863636364, 58.125);
  color: #ffffff;
}

.btn-warning {
  --_btn-bg: #e2a03f;
  --_btn-text: #ffffff;
  --_btn-border: #e2a03f;
  color: #ffffff;
  background-color: #e2a03f;
  border-color: #e2a03f;
}

.btn-warning:hover {
  background-color: rgb(217.8461538462, 142.9615384615, 32.9038461538);
  border-color: rgb(217.8461538462, 142.9615384615, 32.9038461538);
  color: #ffffff;
}

.btn-info {
  --_btn-bg: #2196f3;
  --_btn-text: #ffffff;
  --_btn-border: #2196f3;
  color: #ffffff;
  background-color: #2196f3;
  border-color: #2196f3;
}

.btn-info:hover {
  background-color: rgb(12.1923076923, 131.0673076923, 225.5576923077);
  border-color: rgb(12.1923076923, 131.0673076923, 225.5576923077);
  color: #ffffff;
}

.btn-default {
  --_btn-bg: #172b4d;
  --_btn-text: #ffffff;
  --_btn-border: #172b4d;
  color: #ffffff;
  background-color: #172b4d;
  border-color: #172b4d;
}

.btn-default:hover {
  background-color: rgb(14.2025, 26.5525, 47.5475);
  border-color: rgb(14.2025, 26.5525, 47.5475);
  color: #ffffff;
}

.btn-light {
  --_btn-bg: #e0e0e0;
  --_btn-text: #ffffff;
  --_btn-border: #e0e0e0;
  color: #ffffff;
  background-color: #e0e0e0;
  border-color: #e0e0e0;
}

.btn-light:hover {
  background-color: rgb(204.875, 204.875, 204.875);
  border-color: rgb(204.875, 204.875, 204.875);
  color: #ffffff;
}

.btn-outline-primary {
  --_btn-bg: transparent;
  --_btn-text: var(--tw-color-primary);
  --_btn-border: var(--tw-color-primary);
  color: var(--tw-color-primary);
  background-color: transparent;
  border-color: var(--tw-color-primary);
}

.btn-outline-primary:hover {
  color: #ffffff;
  background-color: var(--tw-color-primary);
  border-color: var(--tw-color-primary);
}

.btn-outline-secondary {
  --_btn-bg: transparent;
  --_btn-text: var(--tw-color-secondary);
  --_btn-border: var(--tw-color-secondary);
  color: var(--tw-color-secondary);
  background-color: transparent;
  border-color: var(--tw-color-secondary);
}

.btn-outline-secondary:hover {
  color: #ffffff;
  background-color: var(--tw-color-secondary);
  border-color: var(--tw-color-secondary);
}

.btn-outline-success {
  --_btn-bg: transparent;
  --_btn-text: #3dc661;
  --_btn-border: #3dc661;
  color: #3dc661 !important;
  background-color: transparent;
  border-color: #3dc661;
}

.btn-outline-success label {
  color: #3dc661 !important;
}

.btn-outline-success:hover {
  color: #ffffff !important;
  background-color: #3dc661;
  border-color: #3dc661;
}

.btn-outline-success:hover label {
  color: #FFFFFF !important;
}

.btn-outline-danger {
  --_btn-bg: transparent;
  --_btn-text: #e7515a;
  --_btn-border: #e7515a;
  color: #e7515a;
  background-color: transparent;
  border-color: #e7515a;
}

.btn-outline-danger:hover {
  color: #ffffff;
  background-color: #e7515a;
  border-color: #e7515a;
}

.btn-outline-warning {
  --_btn-bg: transparent;
  --_btn-text: #e2a03f;
  --_btn-border: #e2a03f;
  color: #e2a03f;
  background-color: transparent;
  border-color: #e2a03f;
}

.btn-outline-warning:hover {
  color: #ffffff;
  background-color: #e2a03f;
  border-color: #e2a03f;
}

.btn-outline-info {
  --_btn-bg: transparent;
  --_btn-text: #2196f3;
  --_btn-border: #2196f3;
  color: #2196f3 !important;
  background-color: transparent;
  border-color: #2196f3;
}

.btn-outline-info:hover {
  color: #ffffff !important;
  background-color: #2196f3;
  border-color: #2196f3;
}

.btn-outline-default {
  --_btn-bg: transparent;
  --_btn-text: #172b4d;
  --_btn-border: #172b4d;
  color: #172b4d;
  background-color: transparent;
  border-color: #172b4d;
}

.btn-outline-default:hover {
  color: #ffffff;
  background-color: #172b4d;
  border-color: #172b4d;
}

.btn-outline-light {
  --_btn-bg: transparent;
  --_btn-text: #e0e0e0;
  --_btn-border: #e0e0e0;
  color: #e0e0e0;
  background-color: transparent;
  border-color: #e0e0e0;
}

.btn-outline-light:hover {
  color: #ffffff;
  background-color: #e0e0e0;
  border-color: #e0e0e0;
}

.btn-link {
  background-color: transparent;
  color: var(--tw-color-secondary);
  text-transform: none;
  font-weight: 400;
  width: auto;
  padding: 0.75rem 1rem;
}

.btn-link:hover,
.btn-link:focus,
.btn-link.ui-state-hover,
.btn-link.ui-state-focus {
  text-decoration: underline;
}

.btn-block {
  display: block;
  width: 100%;
}

@media screen and (max-width: 576px) {
  .btn-sm-block {
    display: block;
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .btn-md-block {
    display: block;
    width: 100%;
  }
}

@media screen and (max-width: 992px) {
  .btn-lg-block {
    display: block;
    width: 100%;
  }
}

@media screen and (max-width: 1200px) {
  .btn-xl-block {
    display: block;
    width: 100%;
  }
}

.btn-sm {
  padding: 0.25rem 1rem;
  font-size: 0.875rem;
  height: 30px;
  border-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.5em 0.4em;
  font-size: 80%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 4px;
  transition: all 180ms ease-in 0s;
  text-transform: uppercase;
}

.badge-pill {
  padding: 1em 0.6em;
  border-radius: 10rem;
}

.badge-soft-red,
.badge-danger {
  color: #db102b;
  background-color: #db102b40;
}

.badge-soft-green,
.badge-soft-success {
  color: #009966;
  background-color: #00996640;
}

.badge-soft-yellow,
.badge-soft-warning {
  color: #d39205;
  background-color: #d3920540;
}

.badge-soft-info {
  color: #2196F3;
  background-color: rgba(33, 150, 243, 0.2);
}

/* ========================================
   GRID SHIM - ga-col-* dentro de CSS Grid
   Permite que field.xhtml funcione em páginas Tailwind
   Só ativa dentro de .grid parents (zero efeito em .ga-row flex)
   ======================================== */

/* Mobile-first: tudo full-width */

.grid > [class*="ga-col-"] { grid-column: span 12 / span 12; }

.grid > [class*="ga-form-group"] {
    margin-bottom: 1rem;
}

/* Bare columns (sem breakpoint) */

.grid > .ga-col-1 { grid-column: span 1 / span 1; }

.grid > .ga-col-2 { grid-column: span 2 / span 2; }

.grid > .ga-col-3 { grid-column: span 3 / span 3; }

.grid > .ga-col-4 { grid-column: span 4 / span 4; }

.grid > .ga-col-5 { grid-column: span 5 / span 5; }

.grid > .ga-col-6 { grid-column: span 6 / span 6; }

.grid > .ga-col-7 { grid-column: span 7 / span 7; }

.grid > .ga-col-8 { grid-column: span 8 / span 8; }

.grid > .ga-col-9 { grid-column: span 9 / span 9; }

.grid > .ga-col-10 { grid-column: span 10 / span 10; }

.grid > .ga-col-11 { grid-column: span 11 / span 11; }

.grid > .ga-col-12 { grid-column: span 12 / span 12; }

/* sm (640px) */

@media (min-width: 640px) {
  .grid > .ga-col-sm-1 { grid-column: span 1 / span 1; }
  .grid > .ga-col-sm-2 { grid-column: span 2 / span 2; }
  .grid > .ga-col-sm-3 { grid-column: span 3 / span 3; }
  .grid > .ga-col-sm-4 { grid-column: span 4 / span 4; }
  .grid > .ga-col-sm-5 { grid-column: span 5 / span 5; }
  .grid > .ga-col-sm-6 { grid-column: span 6 / span 6; }
  .grid > .ga-col-sm-7 { grid-column: span 7 / span 7; }
  .grid > .ga-col-sm-8 { grid-column: span 8 / span 8; }
  .grid > .ga-col-sm-9 { grid-column: span 9 / span 9; }
  .grid > .ga-col-sm-10 { grid-column: span 10 / span 10; }
  .grid > .ga-col-sm-11 { grid-column: span 11 / span 11; }
  .grid > .ga-col-sm-12 { grid-column: span 12 / span 12; }
}

/* md (768px) */

@media (min-width: 768px) {
  .grid > .ga-col-md-1 { grid-column: span 1 / span 1; }
  .grid > .ga-col-md-2 { grid-column: span 2 / span 2; }
  .grid > .ga-col-md-3 { grid-column: span 3 / span 3; }
  .grid > .ga-col-md-4 { grid-column: span 4 / span 4; }
  .grid > .ga-col-md-5 { grid-column: span 5 / span 5; }
  .grid > .ga-col-md-6 { grid-column: span 6 / span 6; }
  .grid > .ga-col-md-7 { grid-column: span 7 / span 7; }
  .grid > .ga-col-md-8 { grid-column: span 8 / span 8; }
  .grid > .ga-col-md-9 { grid-column: span 9 / span 9; }
  .grid > .ga-col-md-10 { grid-column: span 10 / span 10; }
  .grid > .ga-col-md-11 { grid-column: span 11 / span 11; }
  .grid > .ga-col-md-12 { grid-column: span 12 / span 12; }
}

/* lg (1024px) */

@media (min-width: 1024px) {
  .grid > .ga-col-lg-1 { grid-column: span 1 / span 1; }
  .grid > .ga-col-lg-2 { grid-column: span 2 / span 2; }
  .grid > .ga-col-lg-3 { grid-column: span 3 / span 3; }
  .grid > .ga-col-lg-4 { grid-column: span 4 / span 4; }
  .grid > .ga-col-lg-5 { grid-column: span 5 / span 5; }
  .grid > .ga-col-lg-6 { grid-column: span 6 / span 6; }
  .grid > .ga-col-lg-7 { grid-column: span 7 / span 7; }
  .grid > .ga-col-lg-8 { grid-column: span 8 / span 8; }
  .grid > .ga-col-lg-9 { grid-column: span 9 / span 9; }
  .grid > .ga-col-lg-10 { grid-column: span 10 / span 10; }
  .grid > .ga-col-lg-11 { grid-column: span 11 / span 11; }
  .grid > .ga-col-lg-12 { grid-column: span 12 / span 12; }
}

/* xl (1280px) */

@media (min-width: 1280px) {
  .grid > .ga-col-xl-1 { grid-column: span 1 / span 1; }
  .grid > .ga-col-xl-2 { grid-column: span 2 / span 2; }
  .grid > .ga-col-xl-3 { grid-column: span 3 / span 3; }
  .grid > .ga-col-xl-4 { grid-column: span 4 / span 4; }
  .grid > .ga-col-xl-5 { grid-column: span 5 / span 5; }
  .grid > .ga-col-xl-6 { grid-column: span 6 / span 6; }
  .grid > .ga-col-xl-7 { grid-column: span 7 / span 7; }
  .grid > .ga-col-xl-8 { grid-column: span 8 / span 8; }
  .grid > .ga-col-xl-9 { grid-column: span 9 / span 9; }
  .grid > .ga-col-xl-10 { grid-column: span 10 / span 10; }
  .grid > .ga-col-xl-11 { grid-column: span 11 / span 11; }
  .grid > .ga-col-xl-12 { grid-column: span 12 / span 12; }
}

/* ========== RESTAURANTE — Expedição ========== */

/* Status background (pseudo-element) */

.ga-expedicao-bg-status-nenhum:before {
    background-color: rgb(158, 167, 173);
}

.ga-expedicao-bg-status-recebido:before {
    background-color: rgb(255, 179, 2);
}

.ga-expedicao-bg-status-pronto:before {
    background-color: rgb(45, 204, 255);
}

.ga-expedicao-bg-status-cancelado:before {
    background-color: rgb(255, 56, 56);
}

/* Botões expedição (pseudo-element + hover compostos) */

.btn.expedicao-button {
    position: relative;
    z-index: 1;
    font-weight: bold;
    transition: border-color 500ms, color 500ms;
}

.btn.expedicao-button.link {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    overflow: hidden;
    padding: 0 16px;
}

.btn.expedicao-button:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0.25;
    z-index: -1;
    right: 0;
    top: 0;
    transition: background-color 500ms;
}

.btn.expedicao-button.hidden-icon .ui-icon {
    display: none;
}

.btn.expedicao-button.loading-text,
.btn.expedicao-button.loading-icon {
    color: #4D4D4D !important;
    border-color: #4D4D4D !important;
}

.btn.expedicao-button.loading-text:hover.btn.expedicao-button:before,
.btn.expedicao-button.loading-icon:hover.btn.expedicao-button:before {
    background-color: rgba(0, 0, 0, 0) !important;
}

.btn.expedicao-button.loading-text .ui-icon,
.btn.expedicao-button.loading-icon .ui-icon {
    display: block !important;
    width: inherit;
    font-size: 1.5rem;
    animation: spin 1000ms ease-in-out infinite;
}

.btn.expedicao-button.loading-text .ui-button-text {
    display: none;
}

.btn.expedicao-button.nenhum {
    color: rgb(158, 167, 173);
    border-color: rgb(158, 167, 173);
}

.btn.expedicao-button.nenhum:hover.btn.expedicao-button:before {
    background-color: rgb(158, 167, 173);
}

.btn.expedicao-button.recebido {
    color: rgb(45, 204, 255);
    border-color: rgb(45, 204, 255);
}

.btn.expedicao-button.recebido:hover.btn.expedicao-button:before {
    background-color: rgb(45, 204, 255);
}

.btn.expedicao-button.pronto {
    color: rgb(255, 179, 2);
    border-color: rgb(255, 179, 2);
}

.btn.expedicao-button.pronto:hover.btn.expedicao-button:before {
    background-color: rgb(255, 179, 2);
}

.btn.expedicao-button.cancelado {
    color: rgb(255, 56, 56);
    border-color: rgb(255, 56, 56);
}

.btn.expedicao-button.cancelado:hover.btn.expedicao-button:before {
    background-color: rgb(255, 56, 56);
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* ========== AUTO UPDATE BUTTON (restaurante) ========== */

.ga-auto-update.success > .ui-button-icon-left {
    display: none;
}

.ga-auto-update.success > .ui-button-text {
    padding: 0 !important;
}

.ga-auto-update.updating > .ui-button-icon-left {
    font-size: 1.25rem !important;
    position: static !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 0 !important;
    width: 100% !important;
    animation: spin 1000ms linear infinite;
}

.ga-auto-update.updating > .ui-button-text {
    display: none !important;
}

/* ========== LOADING COMPONENT (restaurante) ========== */

.ga-loading-component {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 999;
    background-color: rgba(96, 96, 96, 0.25);
    justify-content: center;
    align-items: center;
}

.ga-loading-component > i {
    font-size: 5rem;
    animation: components-animation_spin 1000ms linear infinite;
}

@keyframes components-animation_spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.badge-soft-default {
    color: #172b4d;
    background-color: #172b4d33;
}

/* ============================================
   Venda Touch Tailwind - POS Layout Overrides
   Scoped to .vt-tw container
   ============================================ */

/* Reset base styles for POS page */

.vt-tw {
    font-family: "Nunito Sans", sans-serif;
    color: #4D4D4D;
    background-color: #F1F1F1;
    min-height: 100vh;
    --vt-sidebar-w: 20%;     /* largura dos sidebars — JS lê esta variável */
    --vt-header-h: 100px;
}

.vt-tw ul { padding: 0; list-style: none; margin: 0; }

/* DataScroller product grid — auto-fill fluido */

.vt-tw .ui-datascroller-content { padding: 0; }

.vt-tw .ui-datascroller-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 1.25rem;
    padding: 0;
    margin: 0;
}

.vt-tw .ui-datascroller-item { list-style: none; }

/* Scrollbar styling */

.vt-tw ::-webkit-scrollbar { width: 9px; }

.vt-tw ::-webkit-scrollbar-track { background-color: #D5D5D5; }

.vt-tw ::-webkit-scrollbar-thumb { background: #9C9C9C; border-radius: 4px; }

/* BlockUI — overlay full-screen + conteúdo visível */

.vt-tw .ui-blockui {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: rgba(0, 0, 0, 0.45) !important;
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    z-index: 9998 !important;
}

.vt-tw .ui-blockui-content {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    z-index: 9999 !important;
    background: #ffffff !important;
    color: #4D4D4D !important;
    border-radius: 0.75rem;
    padding: 2rem 2.5rem;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
    text-align: center;
    font-size: 0.875rem;
    font-weight: 600;
}

/* Calculator buttons inside dialogs */

.vt-tw .vt-calc button,
.vt-tw .vt-calc a {
    flex: 1 1 33.33%;
    height: 50px;
    border: none;
    border-radius: 4px;
    margin: 2px;
    background-color: var(--tw-color-primary);
    color: #ffffff;
    font-size: 1.125rem;
    font-family: "Nunito Sans", sans-serif;
    cursor: pointer;
    transition: all 180ms ease-in 0s;
}

.vt-tw .vt-calc button:hover,
.vt-tw .vt-calc a:hover { opacity: 0.8; }

.vt-tw .vt-calc .vt-calc-clear { background-color: #e7515a !important; }

/* Product card in grid */

.vt-tw .vt-product-card {
    background-color: #ffffff;
    padding: 1.5rem;
    border-radius: 0.5rem;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.16);
    transition: box-shadow 180ms ease-in 0s;
}

.vt-tw .vt-product-card:hover { box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.18); }

/* Cart product list */

.vt-tw .vt-cart-list {
    height: calc(var(--vh, 1vh) * 100 - 224px);
    overflow-y: auto;
    padding: 0.75rem 0.3rem;
    margin-bottom: 15px;
}

/* Category list */

.vt-tw .vt-cat-list {
    max-height: calc(var(--vh, 1vh) * 100 - 200px);
    overflow-y: auto;
}

/* Menu item base — hover moderno */

.vt-tw .vt-menu-item {
    display: block;
    border-top: 1px solid #E5E5E5;
    padding: 1.25rem 2rem;
    font-size: 0.875rem;
    text-decoration: none !important;
    color: #5F5F5F;
    transition: all 200ms ease;
    position: relative;
    cursor: pointer;
}

.vt-tw .vt-menu-item:hover {
    background-color: #f5f7fa;
    color: var(--tw-color-primary);
    padding-left: 2.5rem;
}

.vt-tw .vt-menu-item:active {
    transform: scale(0.98);
}

/* Menu item selecionado */

.vt-tw .vt-cat-selected {
    background-color: var(--tw-color-primary) !important;
    color: #ffffff !important;
    border-color: var(--tw-color-primary) !important;
}

.vt-tw .vt-cat-selected:hover {
    background-color: var(--tw-color-primary-hover, #003a57) !important;
    color: #ffffff !important;
    padding-left: 2.5rem;
}

/* Payment icons grid */

.vt-tw .vt-payment-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
    gap: 0.75rem;
    list-style: none;
    padding: 0;
    margin: 0;
}

.vt-tw .vt-payment-btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1rem;
    border: 1px solid #E5E5E5;
    border-radius: 0.5rem;
    text-decoration: none;
    color: #5F5F5F;
    transition: all 180ms ease-in 0s;
    width: 100%;
    cursor: pointer;
    background: #fff;
}

.vt-tw .vt-payment-btn:hover {
    border-color: var(--tw-color-primary);
    box-shadow: 0 0 6px rgba(0, 74, 110, 0.2);
}

/* Totais block */

.vt-tw .vt-totais {
    border: 1px solid #E5E5E5;
    border-radius: 0.5rem;
    overflow: hidden;
}

.vt-tw .vt-totais-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #f0f0f0;
    font-size: 0.875rem;
}

.vt-tw .vt-totais-item:last-child { border-bottom: none; }

.vt-tw .vt-totais-item:nth-child(even) { background-color: #fafafa; }

/* Totais + Produtos grid — produtos herda max-height dos totais */

.vt-tw .vt-totais-produtos-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    align-items: start;
}

.vt-tw .vt-totais-produtos-col {
    overflow: hidden;
    max-height: 100%;
}

/* Usa subgrid-like: a grid row height é definida pelo totais, e produtos se limita a ela */

.vt-tw .vt-totais-produtos-grid > :first-child { grid-row: 1; }

.vt-tw .vt-totais-produtos-grid > .vt-totais-produtos-col { grid-row: 1; }

@media (max-width: 768px) {
    .vt-tw .vt-totais-produtos-grid {
        grid-template-columns: 1fr;
    }
    .vt-tw .vt-totais-produtos-col {
        max-height: 250px;
    }
}

/* Dialog product layout */

.vt-tw .vt-dlg-produto-layout {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1.5rem;
}

.vt-tw .vt-dlg-produto-desc { flex: 1 1 55%; min-width: 300px; display: flex; flex-direction: column; }

.vt-tw .vt-dlg-produto-calc { flex: 0 0 240px; display: flex; flex-direction: column; justify-content: flex-start; }

/* Table styling — padrão moderno como referência */

.vt-tw .vt-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
    border: 1px solid #e1e6eb;
    border-radius: 0.5rem;
    overflow: hidden;
}

.vt-tw .vt-table th {
    background-color: #e9ecef;
    color: var(--tw-color-primary);
    padding: 0.75rem 1rem;
    position: sticky;
    top: 0;
    z-index: 1;
    text-align: left;
    font-weight: 700;
    font-size: 0.75rem;
    white-space: nowrap;
}

.vt-tw .vt-table td {
    padding: 0.75rem 1rem;
    text-align: left;
    border-bottom: 1px solid #f0f0f0;
}

.vt-tw .vt-table tr:last-child td { border-bottom: none; }

.vt-tw .vt-table tr:nth-child(even) td { background-color: #fafafa; }

/* SelectOneMenu fix — h:selectOneMenu nativo precisa herdar estilo PF */

.vt-tw select,
.vt-tw .ui-selectonemenu {
    width: 100%;
    height: 36px;
    border: 1px solid #CED4DA;
    border-radius: 0.5rem;
    background-color: rgb(251, 251, 251);
    font-size: 0.875rem;
    color: rgb(77, 77, 77);
    padding: 0 0.75rem;
    font-family: "Nunito Sans", sans-serif;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px 12px;
}

.vt-tw select:focus { border-color: var(--tw-color-primary); outline: none; }

/* Responsive — telas ≤ 1280px: sidebars 25% */

@media (max-width: 1280px) {
    .vt-tw { --vt-sidebar-w: 25%; --vt-header-h: 80px; }
}

/* Responsive — telas ≤ 768px: sidebars overlay 75%, não empurram conteúdo */

@media (max-width: 768px) {
    .vt-tw { --vt-sidebar-w: 75%; --vt-header-h: 60px; }
    .vt-tw .vt-dlg-produto-layout { flex-direction: column; }
    .vt-tw .ui-datascroller-list { grid-template-columns: 1fr; }
    /* Reduz ícones do header no mobile */
    .vt-tw header svg { width: 28px; height: 28px; }
}

/* Responsive — telas ≤ 500px */

@media (max-width: 500px) {
    .vt-tw { --vt-sidebar-w: 85%; --vt-header-h: 50px; }
    .vt-tw header svg { width: 24px; height: 24px; }
}

/* ========== RESTAURANTE — Componentes compartilhados ========== */

.ga-slider-restaurante {
    height: 45px;
    width: 100%;
    background-color: #D1D1D1;
}

.ga-slider-restaurante > div {
    height: 45px !important;
    width: calc(100% - 1rem) !important;
    margin-top: 0 !important;
    border-radius: 0 !important;
}

.ga-slider-restaurante > div > span {
    top: 0 !important;
    height: 45px !important;
    width: 1rem !important;
    margin-left: 0 !important;
    border-radius: 0 !important;
}

.ga-hotkey {
    cursor: default;
    outline: none;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
    text-decoration: none !important;
}

.ga-hotkey.hotkeysNotification {
    display: none;
    opacity: 0;
    height: 100%;
    margin: 0.65rem 0 0 0;
    transition: opacity 1000ms ease-in-out;
    transform: scale(0.85);
}

.ga-hotkey > label {
    cursor: default;
    font-weight: bold;
    color: #3b3b3b !important;
}

.ga-hotkey > label.plusbutton {
    margin: 0 0.45rem;
}

.ga-hotkey > label.keybutton {
    font-size: 0.85rem;
    padding: 0.2rem 0.75rem;
    border-radius: 0.4rem;
    background-color: #e2e2e2;
    border: 1px solid #d0d0d0;
}

.ga-hotkey > label.keybutton:hover {
    background-color: #d0d0d0;
    border: 1px solid #bebebe;
}

/* ========== RESTAURANTE — Autoatendimento (JS toggles + animações) ========== */

.pgAutoatendimento .pgAutoatendimentoInformacoes.hide {
    display: none !important;
}

.pgAutoatendimento .pgAutoatendimentoVisualizacao.show {
    display: flex !important;
    min-height: 592px !important;
}

.pgQrCode img {
    padding: 16px;
    filter: drop-shadow(0 0 35px black);
    animation: pulse-regular 1s ease 0s 1 normal none;
}

.pgQrCode img.reduce-drop-shadow {
    filter: drop-shadow(0 0 75px black) !important;
}

.pgQrCode img.animate-pulse-blur-error {
    animation: pulse-blur-error 3s infinite;
}

@keyframes pulse-regular {
    0% { opacity: 0; transform: scale(0.6); filter: drop-shadow(0 0 5px black); }
    100% { opacity: 1; transform: scale(1); filter: drop-shadow(0 0 35px black); }
}

@keyframes pulse-blur-error {
    0% { transform: scale(0.95); filter: drop-shadow(0 0 35px black) blur(2px); }
    20% { transform: scale(0.95); filter: drop-shadow(0 0 35px black) blur(2px); }
    40% { transform: scale(1); filter: drop-shadow(0 0 50px black) blur(0px); }
    60% { transform: scale(1); filter: drop-shadow(0 0 50px black) blur(0px); }
    80% { transform: scale(1); filter: drop-shadow(0 0 50px black) blur(0px); }
    100% { transform: scale(0.95); filter: drop-shadow(0 0 35px black) blur(2px); }
}

/* Responsive — autoatendimento md+ */

@media (min-width: 768px) {
    .pgAutoatendimento .pgAutoatendimentoInformacoes.hide {
        display: flex !important;
    }

    .pgAutoatendimento .pgAutoatendimentoVisualizacao {
        display: flex !important;
    }
}

/* ========================================
   TAILWIND DIRECTIVES
   ======================================== */

.\!container {
    width: 100% !important;
}

.container {
    width: 100%;
}

@media (min-width: 640px) {

    .\!container {
        max-width: 640px !important;
    }

    .container {
        max-width: 640px;
    }
}

@media (min-width: 768px) {

    .\!container {
        max-width: 768px !important;
    }

    .container {
        max-width: 768px;
    }
}

@media (min-width: 1024px) {

    .\!container {
        max-width: 1024px !important;
    }

    .container {
        max-width: 1024px;
    }
}

@media (min-width: 1280px) {

    .\!container {
        max-width: 1280px !important;
    }

    .container {
        max-width: 1280px;
    }
}

@media (min-width: 1536px) {

    .\!container {
        max-width: 1536px !important;
    }

    .container {
        max-width: 1536px;
    }
}

.ui-dialog.dialog-sm {
    width: 400px !important;
}

.ui-dialog.dialog-md {
    width: 600px !important;
}

.ui-dialog.dialog-lg {
    width: 800px !important;
}

.ui-dialog.dialog-xl {
    width: 1000px !important;
}

.ui-dialog.dialog-2xl {
    width: 1200px !important;
}

.ui-dialog.dialog-3xl {
    width: 1400px !important;
}

.ui-dialog.dialog-sm, .ui-dialog.dialog-md, .ui-dialog.dialog-lg, .ui-dialog.dialog-xl, .ui-dialog.dialog-2xl, .ui-dialog.dialog-3xl {
    max-width: calc(100vw - 2rem) !important;
}

@media (max-width: 1000px) {

    .ui-dialog.dialog-xl {
        width: 100% !important;
    }

    .ui-dialog.dialog-2xl {
        width: 100% !important;
    }

    .ui-dialog.dialog-3xl {
        width: 100% !important;
    }
}

@media (max-width: 768px) {

    .ui-dialog.dialog-sm {
        width: 100% !important;
    }

    .ui-dialog.dialog-md {
        width: 100% !important;
    }

    .ui-dialog.dialog-lg {
        width: 100% !important;
    }

    .ui-dialog.dialog-xl {
        width: 100% !important;
    }

    .ui-dialog.dialog-2xl {
        width: 100% !important;
    }

    .ui-dialog.dialog-3xl {
        width: 100% !important;
    }
}

.btn-ch-h-30.ui-menubutton .ui-button {
    height: 30px !important;
}

.btn-ch-h-30 .ui-button {
    height: 30px !important;
}

.table-report-spacing tr td {
    padding: .3rem .5rem;
}

.table-report-spacing tr td:first-child {
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

.table-report-spacing tr td:last-child {
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}

/* BANNER TOPO */

.banner-topo {
        position: fixed;
        top: 0;
        z-index: 999;
        background-color: #004A6C;
        width: 100%;
        padding: 14px 0;
        color: #FFFFFF;
    }

.banner-topo-content {
        display: flex;
        padding: 0 3rem;
    }

.banner-topo-content span {
        text-align: center;
    }

.banner-topo .fechar-banner {
        position: absolute;
        top: 5px;
        right: 5px;
        color: #E0E0E0;
    }

.banner-topo .fechar-banner:hover {
        color: #FFFFFF;
    }

/* MENU CONTAINER */

.menu {
        background-color: #FFFFFF;
        height: 100vh;
        width: 300px;
        position: fixed;
        left: 0;
        top: 0;
        box-shadow: 1px 0.05rem 0.01rem rgba(75, 75, 90, 0.075);
        z-index: 9;
        transition: all 0.15s ease;
    }

/* CABEÇALHO DO MENU */

.menu .menu-cabecalho {
        height: 92px;
        display: flex;
        align-items: center;
    }

.menu .menu-cabecalho .logo-link {
        opacity: 1;
        padding: 1.25rem 2.25rem;
        transition: opacity 0.5s linear;
    }

.menu .menu-cabecalho .logo-link .logo {
        max-width: 100%;
        max-height: 3rem;
    }

.menu .menu-cabecalho .logo-link .\!logo {
        max-width: 100% !important;
        max-height: 3rem !important;
    }

.menu .menu-cabecalho .hamburger-link {
        padding: 1.5rem;
        margin-left: auto;
        cursor: pointer;
        transition: all 180ms ease-in 0s;
    }

.menu .menu-cabecalho .hamburger-link:hover {
        opacity: 0.5;
    }

.menu .menu-cabecalho .hamburger-link svg #Barra1 {
        width: 28px;
        x: 8px;
    }

.menu .menu-cabecalho .hamburger-link svg #Barra3 {
        width: 28px;
        x: 8px;
    }

/* CORPO DO MENU */

.menu .menu-corpo {
        padding: 1.25rem 0;
        height: calc(100vh - 92px);
        overflow: auto;
        visibility: hidden;
    }

.menu .menu-corpo .menu-lista {
        visibility: visible;
    }

.menu .menu-corpo .menu-lista .menu-lista-titulo {
        padding: 1rem 2rem 0.875rem 2rem;
        letter-spacing: 0.05em;
        pointer-events: none;
        cursor: default;
        font-size: 12px;
        text-transform: uppercase;
    }

/* ITENS DO MENU NÍVEL 1 */

.menu .menu-corpo .menu-lista .menu-lista-item .menu-lista-link {
        color: #5F5F5F;
        display: flex;
        align-items: center;
        text-decoration: none;
        padding: 0.75rem 2.25rem;
        white-space: nowrap;
        transition: color 180ms ease-in 0s, background-color 180ms ease-in 0s;
    }

.menu .menu-corpo .menu-lista .menu-lista-item .menu-lista-link .menu-lista-icone {
        min-width: 20px;
        min-height: 20px;
        margin-right: 1.125rem;
        font-size: 1.25rem;
    }

.menu .menu-corpo .menu-lista .menu-lista-item .menu-lista-link .menu-lista-icone-seta {
        font-size: 1.25rem;
        margin-left: auto;
        transition: all 180ms ease-in 0s;
    }

.menu .menu-corpo .menu-lista .menu-lista-item .menu-lista-link:hover {
        color: #009997;
        background-color: rgb(234.6, 255, 254.7333333333);
    }

.menu .menu-corpo .menu-lista .menu-lista-item .menu-lista-link:hover .menu-lista-icone,
    .menu .menu-corpo .menu-lista .menu-lista-item .menu-lista-link:hover .menu-lista-icone-seta {
        fill: #009997;
    }

.menu .menu-corpo .menu-lista .menu-lista-item .menu-lista-link.active {
        color: #009997;
        background-color: rgb(234.6, 255, 254.7333333333);
    }

.menu .menu-corpo .menu-lista .menu-lista-item .menu-lista-link.active .menu-lista-icone-seta {
        transform: rotate(90deg);
    }

/* ITENS DO MENU NÍVEL 2 */

.menu .menu-corpo .menu-lista-nivel-2 {
        display: none;
        padding-left: 55px;
    }

.menu .menu-corpo .menu-lista-nivel-2 .menu-lista-nivel-2-item .menu-lista-nivel-2-link {
        color: #5F5F5F;
        display: flex;
        align-items: center;
        text-decoration: none;
        padding: 0.5rem 2.25rem 0.5rem 1.25rem;
        font-size: 0.875rem;
        transition: all 180ms ease-in 0s;
    }

.menu .menu-corpo .menu-lista-nivel-2 .menu-lista-nivel-2-item .menu-lista-nivel-2-link .menu-lista-icone-seta {
        font-size: 1.25rem;
        margin-left: auto;
        transition: all 180ms ease-in 0s;
    }

.menu .menu-corpo .menu-lista-nivel-2 .menu-lista-nivel-2-item .menu-lista-nivel-2-link:hover {
        color: #009997;
    }

.menu .menu-corpo .menu-lista-nivel-2 .menu-lista-nivel-2-item .menu-lista-nivel-2-link.active {
        color: #009997;
    }

.menu .menu-corpo .menu-lista-nivel-2 .menu-lista-nivel-2-item .menu-lista-nivel-2-link.active .menu-lista-icone-seta {
        transform: rotate(90deg);
    }

/* ITENS DO MENU NÍVEL 3 */

.menu .menu-corpo .menu-lista-nivel-3 {
        display: none;
        padding-left: 20px;
    }

.menu .menu-corpo .menu-lista-nivel-3 .menu-lista-nivel-3-item .menu-lista-nivel-3-link {
        color: #5F5F5F;
        display: flex;
        align-items: center;
        text-decoration: none;
        padding: 0.5rem 2.25rem 0.5rem 1.25rem;
        font-size: 0.875rem;
        transition: all 180ms ease-in 0s;
    }

.menu .menu-corpo .menu-lista-nivel-3 .menu-lista-nivel-3-item .menu-lista-nivel-3-link .menu-lista-icone-seta {
        font-size: 1.25rem;
        margin-left: auto;
        transition: all 180ms ease-in 0s;
    }

.menu .menu-corpo .menu-lista-nivel-3 .menu-lista-nivel-3-item .menu-lista-nivel-3-link:hover {
        color: #009997;
    }

/* Scrollbar customizada */

.menu .menu-corpo::-webkit-scrollbar {
        width: 9px;
    }

.menu .menu-corpo::-webkit-scrollbar-track {
        background: #E0E0E0;
    }

.menu .menu-corpo::-webkit-scrollbar-thumb {
        background: #C4C4C4;
        border-radius: 10px;
    }

.menu .menu-corpo::-webkit-scrollbar-thumb:hover {
        background: #8F8F8F;
    }

.menu .menu-corpo:hover {
        visibility: visible;
    }

/* BARRA SUPERIOR */

.barra-topo {
        background-color: #FFFFFF;
        display: flex;
        align-items: center;
        margin-left: 300px;
        padding: 0 2rem;
        box-shadow: 0 0.05rem 0.01rem rgba(75, 75, 90, 0.075);
        transition: all 0.15s ease;
    }

.barra-topo .ola-usuario {
        margin: 0;
    }

.barra-topo .usuario {
        font-weight: 700;
        color: #004A6C;
    }

.barra-topo .\!usuario {
        font-weight: 700 !important;
        color: #004A6C !important;
    }

.barra-topo .bloco-usuario {
        display: flex;
        margin-left: auto;
    }

.barra-topo .bloco-usuario .lista-util-usuario {
        display: flex;
        align-items: center;
        margin-right: 0.5rem;
    }

.barra-topo .bloco-usuario .lista-util-usuario .lista-util-usuario-item .lista-util-usuario-link {
        display: block;
        cursor: pointer;
        padding: 0.625rem 1rem;
        font-size: 1.25rem;
        color: #5F5F5F;
        transition: all 180ms ease-in 0s;
    }

.barra-topo .bloco-usuario .lista-util-usuario .lista-util-usuario-item .lista-util-usuario-link .lista-util-usuario-img {
        fill: #8F8F8F;
    }

.barra-topo .bloco-usuario .lista-util-usuario .lista-util-usuario-item .lista-util-usuario-link:hover {
        opacity: 0.5;
    }

.barra-topo .bloco-usuario .bloco-menu-usuario {
        position: relative;
        display: flex;
        align-items: center;
        cursor: pointer;
    }

.barra-topo .bloco-usuario .bloco-menu-usuario .bloco-imagem-usuario {
        height: 100%;
    }

.barra-topo .bloco-usuario .bloco-menu-usuario .bloco-imagem-usuario .imagem-usuario {
        height: 36px;
        width: 36px;
        padding: 3px;
        background-color: #F3F4F7;
        border-radius: 50%;
    }

.barra-topo .noti-icon-badge {
        display: inline-block;
        position: absolute;
        top: 15px;
        right: 16px;
        width: 11px;
        height: 11px;
        background-color: #E7515A;
        border: 2px solid #FFFFFF;
        border-radius: 50%;
        animation: blinker 3s linear infinite;
        animation-fill-mode: initial;
    }

@keyframes blinker {
        50% {
            opacity: 0;
        }
    }

/* MÁSCARA DE FUNDO */

.ga-mascara-fundo {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        cursor: pointer;
        z-index: 8;
        background-color: #000000;
        opacity: 0.5;
        transition: all 0.15s ease;
    }

/* CONTEÚDO DA PÁGINA */

.conteudo-pagina {
        margin-left: 300px;
        padding: 2rem;
        transition: all 0.15s ease;
    }

/* FOOTER */

.footer {
        bottom: 0;
        padding: 1rem 2rem;
        position: absolute;
        right: 0;
        left: 300px;
    }

/* DROPDOWN */

.ga-dropdown {
        position: relative;
    }

.ga-dropdown-menu {
        position: absolute;
        top: 100%;
        right: 0;
        z-index: 1000;
        display: none;
        float: left;
        min-width: 12rem;
        padding: 0.5rem 0;
        margin: 0.125rem 0 0;
        font-size: 1rem;
        color: #4D4D4D;
        text-align: left;
        list-style: none;
        background-color: #FFFFFF;
        background-clip: padding-box;
        border: 0 solid;
        border-radius: 4px;
        box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    }

.ga-dropdown-menu.show {
        display: block;
        z-index: 6;
        pointer-events: auto;
        animation: 0.25s forwards dropdown;
    }

.ga-dropdown-menu.\!show {
        display: block !important;
        z-index: 6 !important;
        pointer-events: auto !important;
        animation: 0.25s forwards dropdown !important;
    }

@keyframes dropdown {
        0% {
            opacity: 0;
            transform: translateY(-10px);
        }
        100% {
            opacity: 1;
            transform: translateY(0);
        }
    }

.ga-dropdown-menu.active {
        display: block;
    }

.ga-dropdown-menu-xl {
        min-width: 420px;
    }

.ga-dropdown-item {
        display: block;
        width: 100%;
        padding: 0.5rem 1rem;
        clear: both;
        font-weight: 400;
        color: #4D4D4D;
        transition: all 180ms ease-in 0s;
        text-align: inherit;
        text-decoration: none;
        white-space: nowrap;
        background-color: transparent;
        border: 0;
    }

.ga-dropdown-item:hover {
        text-decoration: none;
        background-color: #ebffff;
    }

.ga-dropdown-item i {
        margin-right: 0.5rem;
    }

.ga-dropdown-divider {
        height: 0;
        margin: 0.5rem 0;
        overflow: hidden;
        border-top: 1px solid #E0E0E0;
    }

/* RESPONSIVO - MOBILE/TABLET */

@media screen and (max-width: 767px) {
        body.menu-mobile-aberto {
            overflow: hidden;
        }

        body.menu-mobile-aberto .menu {
            transform: translateX(0px);
        }

        body.menu-mobile-aberto .ga-mascara-fundo {
            display: block;
        }

        .banner-topo .banner-topo-content {
            display: flex;
            flex-wrap: wrap;
            padding: 0 10px;
        }

        .banner-topo .banner-topo-content span {
            margin-bottom: 15px;
        }

        .banner-topo .banner-topo-content a {
            margin: 0 auto;
        }

        .menu {
            transform: translateX(-250px);
            width: 250px;
            max-width: 250px;
            box-shadow: none;
        }

        .menu .menu-cabecalho .logo-link {
            padding: 1.5rem;
        }

        .menu .menu-corpo {
            visibility: visible;
        }

        .menu .menu-corpo .menu-lista .menu-lista-item .menu-lista-link {
            padding: 0.75rem 1.5rem;
        }

        .menu .menu-corpo .menu-lista-nivel-2 {
            padding-left: 44px;
        }

        .menu .menu-corpo .menu-lista-nivel-2 .menu-lista-nivel-2-item .menu-lista-nivel-2-link {
            padding: 0.5rem 1.5rem 0.5rem 1.25rem;
        }

        .barra-topo {
            position: fixed;
            width: 100%;
            top: 0;
            z-index: 8;
            padding: 0 1rem;
            margin: 0;
        }

        .barra-topo .bloco-usuario .lista-util-usuario .lista-util-usuario-item .lista-util-usuario-link {
            padding: 1.25rem 1rem;
        }

        .conteudo-pagina {
            margin: 0;
            margin-top: 71px;
            padding: 1rem;
        }

        .footer {
            left: 0;
            padding: 0.5rem 1rem;
        }
    }

@media screen and (max-width: 576px) {
        .barra-topo .bloco-usuario .ga-dropdown {
            position: static;
        }

        .barra-topo .bloco-usuario .ga-dropdown .ga-dropdown-menu {
            width: calc(100% - 2rem);
            min-width: auto;
            left: 1rem;
            top: 100%;
            transform: translateY(0px);
        }
    }

/* RESPONSIVO - DESKTOP (MENU FECHADO) */

@media screen and (min-width: 768px) {
        body.menu-fechado .menu {
            max-width: 62px;
        }

        body.menu-fechado .menu .menu-cabecalho .logo-link,
        body.menu-fechado .menu .menu-corpo .menu-lista .menu-lista-item .menu-lista-texto,
        body.menu-fechado .menu .menu-corpo .menu-lista .menu-lista-item .menu-lista-icone-seta {
            display: none;
        }

        body.menu-fechado .menu .menu-cabecalho .hamburger-link {
            padding: 1.5rem 1.1875rem;
            margin: 0;
        }

        body.menu-fechado .menu .menu-cabecalho .hamburger-link svg #Barra1 {
            width: 36px;
            x: 0px;
        }

        body.menu-fechado .menu .menu-cabecalho .hamburger-link svg #Barra3 {
            width: 36px;
            x: 0px;
        }

        body.menu-fechado .menu .menu-corpo {
            overflow: hidden;
        }

        body.menu-fechado .menu .menu-corpo .menu-lista .menu-lista-item {
            height: 54px;
        }

        body.menu-fechado .menu .menu-corpo .menu-lista .menu-lista-item .menu-lista-link {
            padding-left: 0;
            padding-right: 0;
            justify-content: center;
        }

        body.menu-fechado .menu .menu-corpo .menu-lista .menu-lista-item .menu-lista-link .menu-lista-icone {
            margin: 0;
        }

        body.menu-fechado .barra-topo {
            margin-left: 62px;
        }

        body.menu-fechado .conteudo-pagina {
            margin-left: 62px;
        }

        body.menu-fechado .footer {
            left: 62px;
        }

        body.menu-fechado .menu:hover {
            max-width: 300px;
            overflow: visible;
        }

        body.menu-fechado .menu:hover .menu-cabecalho .logo-link,
        body.menu-fechado .menu:hover .menu-corpo .menu-lista .menu-lista-item .menu-lista-texto,
        body.menu-fechado .menu:hover .menu-corpo .menu-lista .menu-lista-item .menu-lista-icone-seta {
            display: initial;
        }

        body.menu-fechado .menu:hover .menu-cabecalho .hamburger-link {
            padding: 1.5rem;
            margin-left: auto;
        }

        body.menu-fechado .menu:hover .menu-corpo {
            overflow: auto;
        }

        body.menu-fechado .menu:hover .menu-corpo .menu-lista .menu-lista-item {
            height: initial;
        }

        body.menu-fechado .menu:hover .menu-corpo .menu-lista .menu-lista-item .menu-lista-link {
            padding-left: 2.25rem;
            padding-right: 2.25rem;
            justify-content: flex-start;
        }

        body.menu-fechado .menu:hover .menu-corpo .menu-lista .menu-lista-item .menu-lista-link .menu-lista-icone {
            margin-right: 1.125rem;
        }
    }

/* NOTIFICAÇÕES */

#dropdownNotificacoes {
        border: 0 solid !important;
        border-radius: 4px !important;
        overflow: initial;
        max-height: initial;
        padding-bottom: 1rem !important;
    }

#dropdownNotificacoes.ui-shadow {
        box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    }

#dropdownNotificacoes .ui-overlaypanel-content {
        padding: 0;
    }

#dropdownNotificacoes .notificacao-conteudo {
        max-height: 300px;
        overflow-y: auto;
    }

#dropdownNotificacoes .notificacao-conteudo::-webkit-scrollbar {
        width: 6px;
    }

#dropdownNotificacoes .notificacao-conteudo::-webkit-scrollbar-track {
        background: #E0E0E0;
    }

#dropdownNotificacoes .notificacao-conteudo::-webkit-scrollbar-thumb {
        background: #C4C4C4;
        border-radius: 10px;
    }

#dropdownNotificacoes .notificacao-conteudo::-webkit-scrollbar-thumb:hover {
        background: #8F8F8F;
    }

.notificacao-conteudo {
        max-height: 300px;
        overflow-y: auto;
    }

.notificacao-conteudo::-webkit-scrollbar {
        width: 6px;
    }

.notificacao-conteudo::-webkit-scrollbar-track {
        background: #E0E0E0;
    }

.notificacao-conteudo::-webkit-scrollbar-thumb {
        background: #C4C4C4;
        border-radius: 10px;
    }

.notificacao-conteudo::-webkit-scrollbar-thumb:hover {
        background: #8F8F8F;
    }

.ga-vermais-notificação {
        cursor: pointer;
        color: #1974FC;
    }

.ga-vermais-notificação:hover {
        text-decoration: underline;
    }

.ga-vermais-description {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

/* MENSAGEM BOX */

.mensagem-box {
        position: fixed;
        right: 30px;
        top: 40px;
        z-index: 99999;
        overflow: hidden;
    }

.\!mensagem {
        margin-bottom: 12px !important;
        border-radius: 4px !important;
        padding: 16px 32px !important;
        animation: transform 0.17s ease-in-out !important;
        font-size: 1em !important;
        white-space: nowrap !important;
        color: #FFF !important;
    }

.mensagem {
        margin-bottom: 12px;
        border-radius: 4px;
        padding: 16px 32px;
        animation: transform 0.17s ease-in-out;
        font-size: 1em;
        white-space: nowrap;
        color: #FFF;
    }

@keyframes transform {
        0% {
            transform: translateX(calc(100% + 40px));
        }
        100% {
            transform: translateX(0);
        }
    }

/* BUTTON ACTION READ (notificações) */

.btn-action-read {
        display: none !important;
    }

/* ========================================
       CUSTOM TAILWIND BADGES
       ======================================== */

.badge {
        display: inline-block;
        padding: 0.25rem 0.5rem;
        font-size: 0.75rem;
        font-weight: 600;
        line-height: 1;
        text-align: center;
        white-space: nowrap;
        vertical-align: baseline;
        border-radius: 4px;
        transition: all 180ms ease-in 0s;
    }

.badge-pill {
        padding: 0.35rem 0.65rem;
        border-radius: 10rem;
    }

.badge-soft-success {
        color: #009966;
        background-color: rgba(0, 153, 102, 0.25);
    }

.badge-soft-warning {
        color: #D39205;
        background-color: rgba(211, 146, 5, 0.25);
    }

.badge-soft-danger {
        color: #DB102B;
        background-color: rgba(219, 16, 43, 0.25);
    }

/* ========================================
       FORM GROUPS
       ======================================== */

.form-group {
        margin-bottom: 1rem;
    }

/* ========================================
       BUTTON UTILITIES
       ======================================== */

.btn-icon-inline {
        display: flex !important;
    }

.btn-icon-inline .ui-button-text {
        padding: 0 !important;
    }

.btn-icon-inline > .ui-button-icon-left {
        position: static !important;
        margin: 0 !important;
    }

/* ========================================
       TEXT UTILITIES
       ======================================== */

.\!text-primary {
        color: var(--tw-color-primary) !important;
    }

.text-primary {
        color: var(--tw-color-primary) !important;
    }

.text-secondary {
        color: var(--tw-color-secondary) !important;
    }

.\!border {
        border: 1px solid #CED4DA !important;
    }

.border {
        border: 1px solid #CED4DA;
    }

.\!border-r-0 {
        border-right: 0 !important;
    }

.border-r-0 {
        border-right: 0;
    }

.input-group-prepend .ga-btn,
    .input-group-append .ga-btn {
        position: relative;
        height: auto;
        z-index: 2;
    }

.input-group > .input-group-prepend > .ga-btn,
    .input-group > .input-group-prepend > .input-group-text,
    .input-group > .input-group-append:not(:last-child) > .ga-btn,
    .input-group > .input-group-append:not(:last-child) > .input-group-text,
    .input-group > .ui-inputfield:not(:last-child),
    .input-group > .ui-selectonemenu:not(:last-child),
    .input-group > .ui-autocomplete:not(:last-child) .ui-autocomplete-input {
        border-bottom-right-radius: 0;
        border-top-right-radius: 0;
    }

.input-group > .input-group-append > .ga-btn,
    .input-group > .input-group-append > .input-group-text,
    .input-group > .input-group-prepend:not(:first-child) > .ga-btn,
    .input-group > .input-group-prepend:not(:first-child) > .input-group-text,
    .input-group > .ui-inputfield:not(:first-child),
    .input-group > .ui-selectonemenu:not(:first-child),
    .input-group > .ui-autocomplete:not(:first-child) .ui-autocomplete-input {
        border-bottom-left-radius: 0;
        border-top-left-radius: 0;
    }

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

.pointer-events-none {
    pointer-events: none;
}

.pointer-events-auto {
    pointer-events: auto;
}

.\!visible {
    visibility: visible !important;
}

.visible {
    visibility: visible;
}

.collapse {
    visibility: collapse;
}

.static {
    position: static;
}

.fixed {
    position: fixed;
}

.\!absolute {
    position: absolute !important;
}

.absolute {
    position: absolute;
}

.relative {
    position: relative;
}

.sticky {
    position: sticky;
}

.inset-0 {
    inset: 0px;
}

.-right-2 {
    right: -0.5rem;
}

.-top-\[15px\] {
    top: -15px;
}

.bottom-0 {
    bottom: 0px;
}

.bottom-full {
    bottom: 100%;
}

.left-0 {
    left: 0px;
}

.left-8 {
    left: 2rem;
}

.right-0 {
    right: 0px;
}

.right-2 {
    right: 0.5rem;
}

.right-\[36px\] {
    right: 36px;
}

.top-0 {
    top: 0px;
}

.top-2 {
    top: 0.5rem;
}

.top-4 {
    top: 1rem;
}

.top-\[71px\] {
    top: 71px;
}

.-z-10 {
    z-index: -10;
}

.-z-\[999\] {
    z-index: -999;
}

.z-10 {
    z-index: 10;
}

.z-\[1\] {
    z-index: 1;
}

.z-\[5\] {
    z-index: 5;
}

.z-\[95\] {
    z-index: 95;
}

.z-\[98\] {
    z-index: 98;
}

.z-\[999\] {
    z-index: 999;
}

.z-\[99\] {
    z-index: 99;
}

.order-1 {
    order: 1;
}

.order-2 {
    order: 2;
}

.order-3 {
    order: 3;
}

.order-4 {
    order: 4;
}

.order-5 {
    order: 5;
}

.order-6 {
    order: 6;
}

.col-auto {
    grid-column: auto;
}

.col-span-10 {
    grid-column: span 10 / span 10;
}

.col-span-12 {
    grid-column: span 12 / span 12;
}

.col-span-2 {
    grid-column: span 2 / span 2;
}

.col-span-3 {
    grid-column: span 3 / span 3;
}

.col-span-4 {
    grid-column: span 4 / span 4;
}

.col-span-5 {
    grid-column: span 5 / span 5;
}

.col-span-6 {
    grid-column: span 6 / span 6;
}

.col-span-7 {
    grid-column: span 7 / span 7;
}

.col-span-8 {
    grid-column: span 8 / span 8;
}

.col-span-9 {
    grid-column: span 9 / span 9;
}

.m-0 {
    margin: 0px;
}

.m-1 {
    margin: 0.25rem;
}

.m-4 {
    margin: 1rem;
}

.m-auto {
    margin: auto;
}

.-mx-3 {
    margin-left: -0.75rem;
    margin-right: -0.75rem;
}

.mx-1 {
    margin-left: 0.25rem;
    margin-right: 0.25rem;
}

.mx-4 {
    margin-left: 1rem;
    margin-right: 1rem;
}

.mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.my-1 {
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
}

.my-2 {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

.my-3 {
    margin-top: 0.75rem;
    margin-bottom: 0.75rem;
}

.my-4 {
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.my-5 {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
}

.my-6 {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.\!mb-4 {
    margin-bottom: 1rem !important;
}

.\!ml-\[-7px\] {
    margin-left: -7px !important;
}

.\!mr-0 {
    margin-right: 0px !important;
}

.\!mr-2 {
    margin-right: 0.5rem !important;
}

.\!mr-3 {
    margin-right: 0.75rem !important;
}

.\!mt-\[-7px\] {
    margin-top: -7px !important;
}

.\!mt-\[10px\] {
    margin-top: 10px !important;
}

.-ml-6 {
    margin-left: -1.5rem;
}

.-mt-2 {
    margin-top: -0.5rem;
}

.-mt-3 {
    margin-top: -0.75rem;
}

.mb-0 {
    margin-bottom: 0px;
}

.mb-1 {
    margin-bottom: 0.25rem;
}

.mb-12 {
    margin-bottom: 3rem;
}

.mb-14 {
    margin-bottom: 3.5rem;
}

.mb-2 {
    margin-bottom: 0.5rem;
}

.mb-2\.5 {
    margin-bottom: 0.625rem;
}

.mb-3 {
    margin-bottom: 0.75rem;
}

.mb-4 {
    margin-bottom: 1rem;
}

.mb-5 {
    margin-bottom: 1.25rem;
}

.mb-6 {
    margin-bottom: 1.5rem;
}

.mb-8 {
    margin-bottom: 2rem;
}

.mb-\[1px\] {
    margin-bottom: 1px;
}

.mb-\[2px\] {
    margin-bottom: 2px;
}

.mb-\[3px\] {
    margin-bottom: 3px;
}

.ml-1 {
    margin-left: 0.25rem;
}

.ml-2 {
    margin-left: 0.5rem;
}

.ml-3 {
    margin-left: 0.75rem;
}

.ml-4 {
    margin-left: 1rem;
}

.ml-5 {
    margin-left: 1.25rem;
}

.ml-auto {
    margin-left: auto;
}

.mr-0 {
    margin-right: 0px;
}

.mr-1 {
    margin-right: 0.25rem;
}

.mr-2 {
    margin-right: 0.5rem;
}

.mr-3 {
    margin-right: 0.75rem;
}

.mr-4 {
    margin-right: 1rem;
}

.mr-auto {
    margin-right: auto;
}

.mt-0 {
    margin-top: 0px;
}

.mt-1 {
    margin-top: 0.25rem;
}

.mt-12 {
    margin-top: 3rem;
}

.mt-2 {
    margin-top: 0.5rem;
}

.mt-3 {
    margin-top: 0.75rem;
}

.mt-4 {
    margin-top: 1rem;
}

.mt-5 {
    margin-top: 1.25rem;
}

.mt-6 {
    margin-top: 1.5rem;
}

.mt-8 {
    margin-top: 2rem;
}

.mt-\[25px\] {
    margin-top: 25px;
}

.mt-\[35\%\] {
    margin-top: 35%;
}

.mt-auto {
    margin-top: auto;
}

.box-content {
    box-sizing: content-box;
}

.line-clamp-1 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.block {
    display: block;
}

.inline-block {
    display: inline-block;
}

.inline {
    display: inline;
}

.\!flex {
    display: flex !important;
}

.flex {
    display: flex;
}

.inline-flex {
    display: inline-flex;
}

.table {
    display: table;
}

.table-caption {
    display: table-caption;
}

.table-cell {
    display: table-cell;
}

.\!grid {
    display: grid !important;
}

.grid {
    display: grid;
}

.\!inline-grid {
    display: inline-grid !important;
}

.contents {
    display: contents;
}

.list-item {
    display: list-item;
}

.\!hidden {
    display: none !important;
}

.hidden {
    display: none;
}

.\!h-1 {
    height: 0.25rem !important;
}

.\!h-32 {
    height: 8rem !important;
}

.\!h-\[18px\] {
    height: 18px !important;
}

.\!h-\[28px\] {
    height: 28px !important;
}

.\!h-\[30px\] {
    height: 30px !important;
}

.\!h-fit {
    height: -moz-fit-content !important;
    height: fit-content !important;
}

.h-1 {
    height: 0.25rem;
}

.h-10 {
    height: 2.5rem;
}

.h-11 {
    height: 2.75rem;
}

.h-12 {
    height: 3rem;
}

.h-16 {
    height: 4rem;
}

.h-32 {
    height: 8rem;
}

.h-4 {
    height: 1rem;
}

.h-5 {
    height: 1.25rem;
}

.h-6 {
    height: 1.5rem;
}

.h-8 {
    height: 2rem;
}

.h-9 {
    height: 2.25rem;
}

.h-\[100px\] {
    height: 100px;
}

.h-\[15\%\] {
    height: 15%;
}

.h-\[150px\] {
    height: 150px;
}

.h-\[200px\] {
    height: 200px;
}

.h-\[20px\] {
    height: 20px;
}

.h-\[20rem\] {
    height: 20rem;
}

.h-\[21px\] {
    height: 21px;
}

.h-\[22px\] {
    height: 22px;
}

.h-\[24px\] {
    height: 24px;
}

.h-\[250px\] {
    height: 250px;
}

.h-\[28px\] {
    height: 28px;
}

.h-\[30px\] {
    height: 30px;
}

.h-\[31px\] {
    height: 31px;
}

.h-\[35px\] {
    height: 35px;
}

.h-\[36px\] {
    height: 36px;
}

.h-\[42px\] {
    height: 42px;
}

.h-\[45px\] {
    height: 45px;
}

.h-\[46px\] {
    height: 46px;
}

.h-\[5000px\] {
    height: 5000px;
}

.h-\[500px\] {
    height: 500px;
}

.h-\[50px\] {
    height: 50px;
}

.h-\[554px\] {
    height: 554px;
}

.h-\[60px\] {
    height: 60px;
}

.h-auto {
    height: auto;
}

.h-fit {
    height: -moz-fit-content;
    height: fit-content;
}

.h-full {
    height: 100%;
}

.h-screen {
    height: 100vh;
}

.max-h-\[1000px\] {
    max-height: 1000px;
}

.max-h-\[200px\] {
    max-height: 200px;
}

.max-h-\[300px\] {
    max-height: 300px;
}

.max-h-\[373px\] {
    max-height: 373px;
}

.max-h-\[75vh\] {
    max-height: 75vh;
}

.max-h-\[calc\(100vh-2rem\)\] {
    max-height: calc(100vh - 2rem);
}

.max-h-fit {
    max-height: -moz-fit-content;
    max-height: fit-content;
}

.max-h-full {
    max-height: 100%;
}

.min-h-16 {
    min-height: 4rem;
}

.min-h-\[120px\] {
    min-height: 120px;
}

.min-h-\[320px\] {
    min-height: 320px;
}

.min-h-\[400px\] {
    min-height: 400px;
}

.min-h-\[40px\] {
    min-height: 40px;
}

.min-h-\[80px\] {
    min-height: 80px;
}

.min-h-\[calc\(100vh_-_6px\)\] {
    min-height: calc(100vh - 6px);
}

.min-h-px {
    min-height: 1px;
}

.\!w-20 {
    width: 5rem !important;
}

.\!w-\[100px\] {
    width: 100px !important;
}

.\!w-\[200px\] {
    width: 200px !important;
}

.\!w-\[25px\] {
    width: 25px !important;
}

.\!w-\[46px\] {
    width: 46px !important;
}

.\!w-\[65px\] {
    width: 65px !important;
}

.\!w-\[75px\] {
    width: 75px !important;
}

.\!w-\[80px\] {
    width: 80px !important;
}

.w-1\/2 {
    width: 50%;
}

.w-1\/4 {
    width: 25%;
}

.w-1\/5 {
    width: 20%;
}

.w-10 {
    width: 2.5rem;
}

.w-11 {
    width: 2.75rem;
}

.w-12 {
    width: 3rem;
}

.w-16 {
    width: 4rem;
}

.w-20 {
    width: 5rem;
}

.w-3\/4 {
    width: 75%;
}

.w-32 {
    width: 8rem;
}

.w-4 {
    width: 1rem;
}

.w-4\/5 {
    width: 80%;
}

.w-48 {
    width: 12rem;
}

.w-5 {
    width: 1.25rem;
}

.w-6 {
    width: 1.5rem;
}

.w-8 {
    width: 2rem;
}

.w-8\/12 {
    width: 66.666667%;
}

.w-9 {
    width: 2.25rem;
}

.w-\[100px\] {
    width: 100px;
}

.w-\[200px\] {
    width: 200px;
}

.w-\[21rem\] {
    width: 21rem;
}

.w-\[24px\] {
    width: 24px;
}

.w-\[250px\] {
    width: 250px;
}

.w-\[260px\] {
    width: 260px;
}

.w-\[30px\] {
    width: 30px;
}

.w-\[31px\] {
    width: 31px;
}

.w-\[3rem\] {
    width: 3rem;
}

.w-\[400px\] {
    width: 400px;
}

.w-\[50px\] {
    width: 50px;
}

.w-\[60px\] {
    width: 60px;
}

.w-\[70\%\] {
    width: 70%;
}

.w-\[7rem\] {
    width: 7rem;
}

.w-\[90\%\] {
    width: 90%;
}

.w-\[90px\] {
    width: 90px;
}

.w-\[calc\(100\%\+15px\)\] {
    width: calc(100% + 15px);
}

.w-\[calc\(100\%-60px\)\] {
    width: calc(100% - 60px);
}

.w-\[calc\(100\%-90px\)\] {
    width: calc(100% - 90px);
}

.w-\[inherit\] {
    width: inherit;
}

.w-auto {
    width: auto;
}

.w-fit {
    width: -moz-fit-content;
    width: fit-content;
}

.w-full {
    width: 100%;
}

.w-max {
    width: -moz-max-content;
    width: max-content;
}

.\!min-w-fit {
    min-width: -moz-fit-content !important;
    min-width: fit-content !important;
}

.min-w-0 {
    min-width: 0px;
}

.min-w-\[100px\] {
    min-width: 100px;
}

.min-w-\[120px\] {
    min-width: 120px;
}

.min-w-\[150px\] {
    min-width: 150px;
}

.min-w-\[180px\] {
    min-width: 180px;
}

.min-w-fit {
    min-width: -moz-fit-content;
    min-width: fit-content;
}

.min-w-full {
    min-width: 100%;
}

.\!max-w-fit {
    max-width: -moz-fit-content !important;
    max-width: fit-content !important;
}

.max-w-0 {
    max-width: 0px;
}

.max-w-3xl {
    max-width: 48rem;
}

.max-w-\[100px\] {
    max-width: 100px;
}

.max-w-\[120px\] {
    max-width: 120px;
}

.max-w-\[200px\] {
    max-width: 200px;
}

.max-w-\[27rem\] {
    max-width: 27rem;
}

.max-w-\[30\%\] {
    max-width: 30%;
}

.max-w-\[31rem\] {
    max-width: 31rem;
}

.max-w-\[50\%\] {
    max-width: 50%;
}

.max-w-\[56rem\] {
    max-width: 56rem;
}

.max-w-fit {
    max-width: -moz-fit-content;
    max-width: fit-content;
}

.max-w-full {
    max-width: 100%;
}

.flex-1 {
    flex: 1 1 0%;
}

.flex-auto {
    flex: 1 1 auto;
}

.flex-shrink-0 {
    flex-shrink: 0;
}

.shrink-0 {
    flex-shrink: 0;
}

.grow {
    flex-grow: 1;
}

.table-auto {
    table-layout: auto;
}

.border-collapse {
    border-collapse: collapse;
}

.rotate-90 {
    --tw-rotate: 90deg;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.transform {
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

@keyframes spin {

    to {
        transform: rotate(360deg);
    }
}

.animate-spin {
    animation: spin 1s linear infinite;
}

.cursor-default {
    cursor: default;
}

.cursor-move {
    cursor: move;
}

.cursor-pointer {
    cursor: pointer;
}

.select-none {
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
}

.resize-none {
    resize: none;
}

.resize {
    resize: both;
}

.list-none {
    list-style-type: none;
}

.\!grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
}

.grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
}

.grid-cols-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
}

.grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grid-cols-\[auto_1fr\] {
    grid-template-columns: auto 1fr;
}

.grid-cols-\[minmax\(0\2c 1fr\)_auto_auto\] {
    grid-template-columns: minmax(0,1fr) auto auto;
}

.grid-cols-\[repeat\(auto-fill\2c minmax\(265px\2c 1fr\)\)\] {
    grid-template-columns: repeat(auto-fill,minmax(265px,1fr));
}

.flex-row {
    flex-direction: row;
}

.flex-row-reverse {
    flex-direction: row-reverse;
}

.\!flex-col {
    flex-direction: column !important;
}

.flex-col {
    flex-direction: column;
}

.flex-col-reverse {
    flex-direction: column-reverse;
}

.flex-wrap {
    flex-wrap: wrap;
}

.content-center {
    align-content: center;
}

.content-end {
    align-content: flex-end;
}

.content-between {
    align-content: space-between;
}

.items-start {
    align-items: flex-start;
}

.items-end {
    align-items: flex-end;
}

.items-center {
    align-items: center;
}

.items-stretch {
    align-items: stretch;
}

.justify-start {
    justify-content: flex-start;
}

.justify-end {
    justify-content: flex-end;
}

.justify-center {
    justify-content: center;
}

.justify-between {
    justify-content: space-between;
}

.justify-around {
    justify-content: space-around;
}

.gap-0 {
    gap: 0px;
}

.gap-0\.5 {
    gap: 0.125rem;
}

.gap-1 {
    gap: 0.25rem;
}

.gap-10 {
    gap: 2.5rem;
}

.gap-12 {
    gap: 3rem;
}

.gap-2 {
    gap: 0.5rem;
}

.gap-2\.5 {
    gap: 0.625rem;
}

.gap-3 {
    gap: 0.75rem;
}

.gap-4 {
    gap: 1rem;
}

.gap-5 {
    gap: 1.25rem;
}

.gap-6 {
    gap: 1.5rem;
}

.gap-\[0\.8rem\] {
    gap: 0.8rem;
}

.gap-\[5px\] {
    gap: 5px;
}

.gap-x-18 {
    -moz-column-gap: 4.5rem;
         column-gap: 4.5rem;
}

.gap-x-3 {
    -moz-column-gap: 0.75rem;
         column-gap: 0.75rem;
}

.gap-x-4 {
    -moz-column-gap: 1rem;
         column-gap: 1rem;
}

.space-y-3 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
}

.space-y-4 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}

.self-center {
    align-self: center;
}

.justify-self-end {
    justify-self: end;
}

.overflow-auto {
    overflow: auto;
}

.overflow-hidden {
    overflow: hidden;
}

.overflow-visible {
    overflow: visible;
}

.overflow-x-auto {
    overflow-x: auto;
}

.overflow-y-auto {
    overflow-y: auto;
}

.overflow-x-hidden {
    overflow-x: hidden;
}

.overflow-y-scroll {
    overflow-y: scroll;
}

.truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.text-ellipsis {
    text-overflow: ellipsis;
}

.whitespace-nowrap {
    white-space: nowrap;
}

.break-words {
    overflow-wrap: break-word;
}

.break-all {
    word-break: break-all;
}

.\!rounded {
    border-radius: 0.25rem !important;
}

.rounded {
    border-radius: 0.25rem;
}

.rounded-2xl {
    border-radius: 1rem;
}

.rounded-3xl {
    border-radius: 1.5rem;
}

.rounded-\[5px\] {
    border-radius: 5px;
}

.rounded-full {
    border-radius: 9999px;
}

.rounded-lg {
    border-radius: 0.5rem;
}

.rounded-md {
    border-radius: 0.375rem;
}

.rounded-none {
    border-radius: 0px;
}

.rounded-sm {
    border-radius: 0.125rem;
}

.rounded-xl {
    border-radius: 0.75rem;
}

.\!rounded-l-none {
    border-top-left-radius: 0px !important;
    border-bottom-left-radius: 0px !important;
}

.\!rounded-r-lg {
    border-top-right-radius: 0.5rem !important;
    border-bottom-right-radius: 0.5rem !important;
}

.\!rounded-r-none {
    border-top-right-radius: 0px !important;
    border-bottom-right-radius: 0px !important;
}

.rounded-b {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}

.rounded-b-none {
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 0px;
}

.rounded-b-xl {
    border-bottom-right-radius: 0.75rem;
    border-bottom-left-radius: 0.75rem;
}

.rounded-l-lg {
    border-top-left-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
}

.rounded-l-md {
    border-top-left-radius: 0.375rem;
    border-bottom-left-radius: 0.375rem;
}

.rounded-l-none {
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
}

.rounded-r-lg {
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
}

.rounded-r-md {
    border-top-right-radius: 0.375rem;
    border-bottom-right-radius: 0.375rem;
}

.rounded-r-none {
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
}

.rounded-t-none {
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
}

.rounded-t-xl {
    border-top-left-radius: 0.75rem;
    border-top-right-radius: 0.75rem;
}

.rounded-bl-none {
    border-bottom-left-radius: 0px;
}

.rounded-tl {
    border-top-left-radius: 0.25rem;
}

.rounded-tr {
    border-top-right-radius: 0.25rem;
}

.\!border {
    border-width: 1px !important;
}

.\!border-0 {
    border-width: 0px !important;
}

.border {
    border-width: 1px;
}

.border-0 {
    border-width: 0px;
}

.border-2 {
    border-width: 2px;
}

.border-y {
    border-top-width: 1px;
    border-bottom-width: 1px;
}

.\!border-b {
    border-bottom-width: 1px !important;
}

.\!border-r-0 {
    border-right-width: 0px !important;
}

.\!border-t {
    border-top-width: 1px !important;
}

.border-b {
    border-bottom-width: 1px;
}

.border-b-0 {
    border-bottom-width: 0px;
}

.border-b-2 {
    border-bottom-width: 2px;
}

.border-l {
    border-left-width: 1px;
}

.border-l-0 {
    border-left-width: 0px;
}

.border-l-\[3px\] {
    border-left-width: 3px;
}

.border-l-\[6px\] {
    border-left-width: 6px;
}

.border-l-\[8px\] {
    border-left-width: 8px;
}

.border-r {
    border-right-width: 1px;
}

.border-r-0 {
    border-right-width: 0px;
}

.border-t {
    border-top-width: 1px;
}

.border-t-0 {
    border-top-width: 0px;
}

.border-t-2 {
    border-top-width: 2px;
}

.\!border-solid {
    border-style: solid !important;
}

.border-solid {
    border-style: solid;
}

.border-dashed {
    border-style: dashed;
}

.border-none {
    border-style: none;
}

.\!border-\[\#DDD\] {
    --tw-border-opacity: 1 !important;
    border-color: rgb(221 221 221 / var(--tw-border-opacity, 1)) !important;
}

.\!border-green-600 {
    --tw-border-opacity: 1 !important;
    border-color: rgb(22 163 74 / var(--tw-border-opacity, 1)) !important;
}

.\!border-primary {
    border-color: var(--tw-color-primary) !important;
}

.\!border-red-600 {
    --tw-border-opacity: 1 !important;
    border-color: rgb(220 38 38 / var(--tw-border-opacity, 1)) !important;
}

.border-\[\#0DC1FF\] {
    --tw-border-opacity: 1;
    border-color: rgb(13 193 255 / var(--tw-border-opacity, 1));
}

.border-\[\#172b4d95\] {
    border-color: #172b4d95;
}

.border-\[\#172b4d\] {
    --tw-border-opacity: 1;
    border-color: rgb(23 43 77 / var(--tw-border-opacity, 1));
}

.border-\[\#707070\] {
    --tw-border-opacity: 1;
    border-color: rgb(112 112 112 / var(--tw-border-opacity, 1));
}

.border-\[\#D1D1D1\] {
    --tw-border-opacity: 1;
    border-color: rgb(209 209 209 / var(--tw-border-opacity, 1));
}

.border-\[\#E1E6EB\] {
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
}

.border-\[\#E7E8EC\] {
    --tw-border-opacity: 1;
    border-color: rgb(231 232 236 / var(--tw-border-opacity, 1));
}

.border-\[\#ced4da\] {
    --tw-border-opacity: 1;
    border-color: rgb(206 212 218 / var(--tw-border-opacity, 1));
}

.border-\[\#d1d5db\] {
    --tw-border-opacity: 1;
    border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}

.border-\[\#e0e0e0\] {
    --tw-border-opacity: 1;
    border-color: rgb(224 224 224 / var(--tw-border-opacity, 1));
}

.border-\[\#e1e6eb\] {
    --tw-border-opacity: 1;
    border-color: rgb(225 230 235 / var(--tw-border-opacity, 1));
}

.border-\[var\(--cor-alerta\)\] {
    border-color: var(--cor-alerta);
}

.border-amber-100 {
    --tw-border-opacity: 1;
    border-color: rgb(254 243 199 / var(--tw-border-opacity, 1));
}

.border-black\/15 {
    border-color: rgb(0 0 0 / 0.15);
}

.border-blue-100 {
    --tw-border-opacity: 1;
    border-color: rgb(219 234 254 / var(--tw-border-opacity, 1));
}

.border-blue-500 {
    --tw-border-opacity: 1;
    border-color: rgb(59 130 246 / var(--tw-border-opacity, 1));
}

.border-blue-600 {
    --tw-border-opacity: 1;
    border-color: rgb(37 99 235 / var(--tw-border-opacity, 1));
}

.border-danger {
    border-color: var(--tw-color-danger);
}

.border-default {
    border-color: var(--tw-color-text-default);
}

.border-gray-100 {
    --tw-border-opacity: 1;
    border-color: rgb(243 244 246 / var(--tw-border-opacity, 1));
}

.border-gray-200 {
    --tw-border-opacity: 1;
    border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
}

.border-gray-300 {
    --tw-border-opacity: 1;
    border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}

.border-gray-400 {
    --tw-border-opacity: 1;
    border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));
}

.border-gray-500 {
    --tw-border-opacity: 1;
    border-color: rgb(107 114 128 / var(--tw-border-opacity, 1));
}

.border-green-500 {
    --tw-border-opacity: 1;
    border-color: rgb(34 197 94 / var(--tw-border-opacity, 1));
}

.border-green-600 {
    --tw-border-opacity: 1;
    border-color: rgb(22 163 74 / var(--tw-border-opacity, 1));
}

.border-info {
    border-color: var(--tw-color-info);
}

.border-primary {
    border-color: var(--tw-color-primary);
}

.border-primary-200 {
    border-color: var(--tw-color-primary-200);
}

.border-red-100 {
    --tw-border-opacity: 1;
    border-color: rgb(254 226 226 / var(--tw-border-opacity, 1));
}

.border-red-400 {
    --tw-border-opacity: 1;
    border-color: rgb(248 113 113 / var(--tw-border-opacity, 1));
}

.border-red-500 {
    --tw-border-opacity: 1;
    border-color: rgb(239 68 68 / var(--tw-border-opacity, 1));
}

.border-red-600 {
    --tw-border-opacity: 1;
    border-color: rgb(220 38 38 / var(--tw-border-opacity, 1));
}

.border-success {
    border-color: var(--tw-color-success);
}

.border-warning {
    border-color: var(--tw-color-warning);
}

.border-yellow-100 {
    --tw-border-opacity: 1;
    border-color: rgb(254 249 195 / var(--tw-border-opacity, 1));
}

.\!border-l-gray-400 {
    --tw-border-opacity: 1 !important;
    border-left-color: rgb(156 163 175 / var(--tw-border-opacity, 1)) !important;
}

.border-b-\[var\(--cor-secundaria\)\] {
    border-bottom-color: var(--cor-secundaria);
}

.border-l-\[\#626262\] {
    --tw-border-opacity: 1;
    border-left-color: rgb(98 98 98 / var(--tw-border-opacity, 1));
}

.border-l-primary {
    border-left-color: var(--tw-color-primary);
}

.border-l-secondary {
    border-left-color: var(--tw-color-secondary);
}

.border-l-success {
    border-left-color: var(--tw-color-success);
}

.border-l-warning {
    border-left-color: var(--tw-color-warning);
}

.border-t-\[var\(--cor-primaria\)\] {
    border-top-color: var(--cor-primaria);
}

.\!bg-\[\#f4f4f4\] {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(244 244 244 / var(--tw-bg-opacity, 1)) !important;
}

.\!bg-blue-600 {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1)) !important;
}

.\!bg-info {
    background-color: var(--tw-color-info) !important;
}

.\!bg-neutral-300 {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(212 212 212 / var(--tw-bg-opacity, 1)) !important;
}

.\!bg-success {
    background-color: var(--tw-color-success) !important;
}

.\!bg-transparent {
    background-color: transparent !important;
}

.\!bg-white {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)) !important;
}

.bg-\[\#005b8c\] {
    --tw-bg-opacity: 1;
    background-color: rgb(0 91 140 / var(--tw-bg-opacity, 1));
}

.bg-\[\#0078B433\] {
    background-color: #0078B433;
}

.bg-\[\#172b4d\] {
    --tw-bg-opacity: 1;
    background-color: rgb(23 43 77 / var(--tw-bg-opacity, 1));
}

.bg-\[\#2196F333\] {
    background-color: #2196F333;
}

.bg-\[\#2196F3\] {
    --tw-bg-opacity: 1;
    background-color: rgb(33 150 243 / var(--tw-bg-opacity, 1));
}

.bg-\[\#7ab0c9\] {
    --tw-bg-opacity: 1;
    background-color: rgb(122 176 201 / var(--tw-bg-opacity, 1));
}

.bg-\[\#E0E0E0\] {
    --tw-bg-opacity: 1;
    background-color: rgb(224 224 224 / var(--tw-bg-opacity, 1));
}

.bg-\[\#E6F7F0\] {
    --tw-bg-opacity: 1;
    background-color: rgb(230 247 240 / var(--tw-bg-opacity, 1));
}

.bg-\[\#E9ECEF\] {
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
}

.bg-\[\#F0F7FF\] {
    --tw-bg-opacity: 1;
    background-color: rgb(240 247 255 / var(--tw-bg-opacity, 1));
}

.bg-\[\#F4F4F4\] {
    --tw-bg-opacity: 1;
    background-color: rgb(244 244 244 / var(--tw-bg-opacity, 1));
}

.bg-\[\#F5F7F9\] {
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
}

.bg-\[\#FFFFFF\] {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.bg-\[\#d5d8db80\] {
    background-color: #d5d8db80;
}

.bg-\[\#e9ecef\] {
    --tw-bg-opacity: 1;
    background-color: rgb(233 236 239 / var(--tw-bg-opacity, 1));
}

.bg-\[\#efefef\] {
    --tw-bg-opacity: 1;
    background-color: rgb(239 239 239 / var(--tw-bg-opacity, 1));
}

.bg-\[\#f5c451\] {
    --tw-bg-opacity: 1;
    background-color: rgb(245 196 81 / var(--tw-bg-opacity, 1));
}

.bg-\[\#f5f7f9\] {
    --tw-bg-opacity: 1;
    background-color: rgb(245 247 249 / var(--tw-bg-opacity, 1));
}

.bg-\[rgba\(25\2c 116\2c 252\2c 0\.25\)\] {
    background-color: rgba(25,116,252,0.25);
}

.bg-\[var\(--botao-primario\)\] {
    background-color: var(--botao-primario);
}

.bg-\[var\(--cor-fundo-alerta\)\] {
    background-color: var(--cor-fundo-alerta);
}

.bg-\[var\(--cor-primaria\)\] {
    background-color: var(--cor-primaria);
}

.bg-\[var\(--cor-secundaria\)\] {
    background-color: var(--cor-secundaria);
}

.bg-\[var\(--cor-terciaria\)\] {
    background-color: var(--cor-terciaria);
}

.bg-amber-50 {
    --tw-bg-opacity: 1;
    background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));
}

.bg-black\/30 {
    background-color: rgb(0 0 0 / 0.3);
}

.bg-black\/65 {
    background-color: rgb(0 0 0 / 0.65);
}

.bg-black\/75 {
    background-color: rgb(0 0 0 / 0.75);
}

.bg-blue-100 {
    --tw-bg-opacity: 1;
    background-color: rgb(219 234 254 / var(--tw-bg-opacity, 1));
}

.bg-blue-400 {
    --tw-bg-opacity: 1;
    background-color: rgb(96 165 250 / var(--tw-bg-opacity, 1));
}

.bg-blue-50 {
    --tw-bg-opacity: 1;
    background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));
}

.bg-blue-500 {
    --tw-bg-opacity: 1;
    background-color: rgb(59 130 246 / var(--tw-bg-opacity, 1));
}

.bg-blue-600 {
    --tw-bg-opacity: 1;
    background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));
}

.bg-blue-800 {
    --tw-bg-opacity: 1;
    background-color: rgb(30 64 175 / var(--tw-bg-opacity, 1));
}

.bg-cyan-50 {
    --tw-bg-opacity: 1;
    background-color: rgb(236 254 255 / var(--tw-bg-opacity, 1));
}

.bg-cyan-800 {
    --tw-bg-opacity: 1;
    background-color: rgb(21 94 117 / var(--tw-bg-opacity, 1));
}

.bg-danger {
    background-color: var(--tw-color-danger);
}

.bg-gray-100 {
    --tw-bg-opacity: 1;
    background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}

.bg-gray-200 {
    --tw-bg-opacity: 1;
    background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}

.bg-gray-300 {
    --tw-bg-opacity: 1;
    background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
}

.bg-gray-400 {
    --tw-bg-opacity: 1;
    background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));
}

.bg-gray-50 {
    --tw-bg-opacity: 1;
    background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}

.bg-gray-50\/30 {
    background-color: rgb(249 250 251 / 0.3);
}

.bg-gray-50\/50 {
    background-color: rgb(249 250 251 / 0.5);
}

.bg-gray-500 {
    --tw-bg-opacity: 1;
    background-color: rgb(107 114 128 / var(--tw-bg-opacity, 1));
}

.bg-gray-800 {
    --tw-bg-opacity: 1;
    background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
}

.bg-green-100 {
    --tw-bg-opacity: 1;
    background-color: rgb(220 252 231 / var(--tw-bg-opacity, 1));
}

.bg-green-200 {
    --tw-bg-opacity: 1;
    background-color: rgb(187 247 208 / var(--tw-bg-opacity, 1));
}

.bg-green-400 {
    --tw-bg-opacity: 1;
    background-color: rgb(74 222 128 / var(--tw-bg-opacity, 1));
}

.bg-green-50 {
    --tw-bg-opacity: 1;
    background-color: rgb(240 253 244 / var(--tw-bg-opacity, 1));
}

.bg-green-500 {
    --tw-bg-opacity: 1;
    background-color: rgb(34 197 94 / var(--tw-bg-opacity, 1));
}

.bg-green-600 {
    --tw-bg-opacity: 1;
    background-color: rgb(22 163 74 / var(--tw-bg-opacity, 1));
}

.bg-info {
    background-color: var(--tw-color-info);
}

.bg-primary {
    background-color: var(--tw-color-primary);
}

.bg-primary-100 {
    background-color: var(--tw-color-primary-100);
}

.bg-purple-100 {
    --tw-bg-opacity: 1;
    background-color: rgb(243 232 255 / var(--tw-bg-opacity, 1));
}

.bg-red-100 {
    --tw-bg-opacity: 1;
    background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1));
}

.bg-red-200 {
    --tw-bg-opacity: 1;
    background-color: rgb(254 202 202 / var(--tw-bg-opacity, 1));
}

.bg-red-300 {
    --tw-bg-opacity: 1;
    background-color: rgb(252 165 165 / var(--tw-bg-opacity, 1));
}

.bg-red-400 {
    --tw-bg-opacity: 1;
    background-color: rgb(248 113 113 / var(--tw-bg-opacity, 1));
}

.bg-red-50 {
    --tw-bg-opacity: 1;
    background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));
}

.bg-red-500 {
    --tw-bg-opacity: 1;
    background-color: rgb(239 68 68 / var(--tw-bg-opacity, 1));
}

.bg-secondary {
    background-color: var(--tw-color-secondary);
}

.bg-secondary-100 {
    background-color: var(--tw-color-secondary-100);
}

.bg-success {
    background-color: var(--tw-color-success);
}

.bg-transparent {
    background-color: transparent;
}

.bg-warning {
    background-color: var(--tw-color-warning);
}

.bg-white {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.bg-white\/20 {
    background-color: rgb(255 255 255 / 0.2);
}

.bg-white\/70 {
    background-color: rgb(255 255 255 / 0.7);
}

.bg-yellow-200 {
    --tw-bg-opacity: 1;
    background-color: rgb(254 240 138 / var(--tw-bg-opacity, 1));
}

.bg-yellow-400 {
    --tw-bg-opacity: 1;
    background-color: rgb(250 204 21 / var(--tw-bg-opacity, 1));
}

.bg-yellow-50 {
    --tw-bg-opacity: 1;
    background-color: rgb(254 252 232 / var(--tw-bg-opacity, 1));
}

.bg-yellow-500 {
    --tw-bg-opacity: 1;
    background-color: rgb(234 179 8 / var(--tw-bg-opacity, 1));
}

.fill-gray-300 {
    fill: #d1d5db;
}

.fill-gray-500 {
    fill: #6b7280;
}

.fill-gray-600 {
    fill: #4b5563;
}

.fill-green-600 {
    fill: #16a34a;
}

.fill-primary {
    fill: var(--tw-color-primary);
}

.fill-red-500 {
    fill: #ef4444;
}

.fill-white {
    fill: #fff;
}

.object-contain {
    -o-object-fit: contain;
       object-fit: contain;
}

.\!p-0 {
    padding: 0px !important;
}

.p-0 {
    padding: 0px;
}

.p-1 {
    padding: 0.25rem;
}

.p-2 {
    padding: 0.5rem;
}

.p-2\.5 {
    padding: 0.625rem;
}

.p-3 {
    padding: 0.75rem;
}

.p-4 {
    padding: 1rem;
}

.p-5 {
    padding: 1.25rem;
}

.p-6 {
    padding: 1.5rem;
}

.p-8 {
    padding: 2rem;
}

.p-\[5px\] {
    padding: 5px;
}

.\!px-2 {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
}

.px-0 {
    padding-left: 0px;
    padding-right: 0px;
}

.px-1 {
    padding-left: 0.25rem;
    padding-right: 0.25rem;
}

.px-16 {
    padding-left: 4rem;
    padding-right: 4rem;
}

.px-2 {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.px-2\.5 {
    padding-left: 0.625rem;
    padding-right: 0.625rem;
}

.px-3 {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

.px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
}

.px-5 {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}

.px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

.px-8 {
    padding-left: 2rem;
    padding-right: 2rem;
}

.px-\[0\.35rem\] {
    padding-left: 0.35rem;
    padding-right: 0.35rem;
}

.px-\[0\.4rem\] {
    padding-left: 0.4rem;
    padding-right: 0.4rem;
}

.py-0 {
    padding-top: 0px;
    padding-bottom: 0px;
}

.py-0\.5 {
    padding-top: 0.125rem;
    padding-bottom: 0.125rem;
}

.py-1 {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}

.py-1\.5 {
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
}

.py-12 {
    padding-top: 3rem;
    padding-bottom: 3rem;
}

.py-16 {
    padding-top: 4rem;
    padding-bottom: 4rem;
}

.py-2 {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.py-3 {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.py-4 {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.py-5 {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
}

.py-6 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}

.py-8 {
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.py-\[0\.257rem\] {
    padding-top: 0.257rem;
    padding-bottom: 0.257rem;
}

.py-\[30px\] {
    padding-top: 30px;
    padding-bottom: 30px;
}

.py-\[5px\] {
    padding-top: 5px;
    padding-bottom: 5px;
}

.\!pr-\[0\.5rem\] {
    padding-right: 0.5rem !important;
}

.pb-0 {
    padding-bottom: 0px;
}

.pb-1 {
    padding-bottom: 0.25rem;
}

.pb-2 {
    padding-bottom: 0.5rem;
}

.pb-2\.5 {
    padding-bottom: 0.625rem;
}

.pb-3 {
    padding-bottom: 0.75rem;
}

.pb-4 {
    padding-bottom: 1rem;
}

.pl-0 {
    padding-left: 0px;
}

.pl-1 {
    padding-left: 0.25rem;
}

.pl-2 {
    padding-left: 0.5rem;
}

.pl-4 {
    padding-left: 1rem;
}

.pr-0 {
    padding-right: 0px;
}

.pr-1 {
    padding-right: 0.25rem;
}

.pr-2 {
    padding-right: 0.5rem;
}

.pr-4 {
    padding-right: 1rem;
}

.pr-5 {
    padding-right: 1.25rem;
}

.pt-0 {
    padding-top: 0px;
}

.pt-1 {
    padding-top: 0.25rem;
}

.pt-16 {
    padding-top: 4rem;
}

.pt-2 {
    padding-top: 0.5rem;
}

.pt-3 {
    padding-top: 0.75rem;
}

.pt-4 {
    padding-top: 1rem;
}

.pt-6 {
    padding-top: 1.5rem;
}

.pt-8 {
    padding-top: 2rem;
}

.\!text-left {
    text-align: left !important;
}

.text-left {
    text-align: left;
}

.\!text-center {
    text-align: center !important;
}

.text-center {
    text-align: center;
}

.\!text-right {
    text-align: right !important;
}

.text-right {
    text-align: right;
}

.text-justify {
    text-align: justify;
}

.align-middle {
    vertical-align: middle;
}

.font-sans {
    font-family: "Nunito Sans", sans-serif;
}

.\!text-8xl {
    font-size: 6rem !important;
    line-height: 1 !important;
}

.\!text-\[1em\] {
    font-size: 1em !important;
}

.text-2xl {
    font-size: 1.5rem;
}

.text-3xl {
    font-size: 1.75rem;
}

.text-4xl {
    font-size: 2rem;
}

.text-5xl {
    font-size: 2.5rem;
}

.text-6xl {
    font-size: 3.75rem;
    line-height: 1;
}

.text-8xl {
    font-size: 6rem;
    line-height: 1;
}

.text-\[0\.8rem\] {
    font-size: 0.8rem;
}

.text-\[1\.1rem\] {
    font-size: 1.1rem;
}

.text-\[10px\] {
    font-size: 10px;
}

.text-\[10rem\] {
    font-size: 10rem;
}

.text-\[2\.5rem\] {
    font-size: 2.5rem;
}

.text-\[3rem\] {
    font-size: 3rem;
}

.text-\[64px\] {
    font-size: 64px;
}

.text-base {
    font-size: 1rem;
}

.text-lg {
    font-size: 1.125rem;
}

.text-sm {
    font-size: 0.875rem;
}

.text-xl {
    font-size: 1.25rem;
}

.text-xs {
    font-size: 0.75rem;
}

.\!font-bold {
    font-weight: 700 !important;
}

.font-black {
    font-weight: 900;
}

.font-bold {
    font-weight: 700;
}

.font-extrabold {
    font-weight: 800;
}

.font-light {
    font-weight: 300;
}

.font-medium {
    font-weight: 500;
}

.font-normal {
    font-weight: 400;
}

.font-semibold {
    font-weight: 600;
}

.uppercase {
    text-transform: uppercase;
}

.lowercase {
    text-transform: lowercase;
}

.capitalize {
    text-transform: capitalize;
}

.italic {
    font-style: italic;
}

.ordinal {
    --tw-ordinal: ordinal;
    font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}

.\!leading-\[1rem\] {
    line-height: 1rem !important;
}

.leading-5 {
    line-height: 1.25rem;
}

.leading-7 {
    line-height: 1.75rem;
}

.leading-8 {
    line-height: 2rem;
}

.leading-none {
    line-height: 1;
}

.leading-normal {
    line-height: 1.5;
}

.leading-tight {
    line-height: 1.25;
}

.tracking-tight {
    letter-spacing: -0.025em;
}

.tracking-wide {
    letter-spacing: 0.025em;
}

.tracking-wider {
    letter-spacing: 0.05em;
}

.tracking-widest {
    letter-spacing: 0.1em;
}

.\!text-\[\#555\] {
    --tw-text-opacity: 1 !important;
    color: rgb(85 85 85 / var(--tw-text-opacity, 1)) !important;
}

.\!text-black {
    --tw-text-opacity: 1 !important;
    color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

.\!text-green-600 {
    --tw-text-opacity: 1 !important;
    color: rgb(22 163 74 / var(--tw-text-opacity, 1)) !important;
}

.\!text-neutral-800 {
    --tw-text-opacity: 1 !important;
    color: rgb(38 38 38 / var(--tw-text-opacity, 1)) !important;
}

.\!text-primary {
    color: var(--tw-color-primary) !important;
}

.\!text-red-600 {
    --tw-text-opacity: 1 !important;
    color: rgb(220 38 38 / var(--tw-text-opacity, 1)) !important;
}

.\!text-white {
    --tw-text-opacity: 1 !important;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1)) !important;
}

.text-\[\#044572\] {
    --tw-text-opacity: 1;
    color: rgb(4 69 114 / var(--tw-text-opacity, 1));
}

.text-\[\#0DC1FF\] {
    --tw-text-opacity: 1;
    color: rgb(13 193 255 / var(--tw-text-opacity, 1));
}

.text-\[\#172b4d\] {
    --tw-text-opacity: 1;
    color: rgb(23 43 77 / var(--tw-text-opacity, 1));
}

.text-\[\#191919\] {
    --tw-text-opacity: 1;
    color: rgb(25 25 25 / var(--tw-text-opacity, 1));
}

.text-\[\#1974fc\] {
    --tw-text-opacity: 1;
    color: rgb(25 116 252 / var(--tw-text-opacity, 1));
}

.text-\[\#2196F3\] {
    --tw-text-opacity: 1;
    color: rgb(33 150 243 / var(--tw-text-opacity, 1));
}

.text-\[\#242424\] {
    --tw-text-opacity: 1;
    color: rgb(36 36 36 / var(--tw-text-opacity, 1));
}

.text-\[\#374151\] {
    --tw-text-opacity: 1;
    color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}

.text-\[\#4b5563\] {
    --tw-text-opacity: 1;
    color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}

.text-\[\#606367\] {
    --tw-text-opacity: 1;
    color: rgb(96 99 103 / var(--tw-text-opacity, 1));
}

.text-\[\#626262\] {
    --tw-text-opacity: 1;
    color: rgb(98 98 98 / var(--tw-text-opacity, 1));
}

.text-\[\#6b7280\] {
    --tw-text-opacity: 1;
    color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}

.text-\[\#87898B\] {
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
}

.text-\[\#87898b\] {
    --tw-text-opacity: 1;
    color: rgb(135 137 139 / var(--tw-text-opacity, 1));
}

.text-\[\#888888\] {
    --tw-text-opacity: 1;
    color: rgb(136 136 136 / var(--tw-text-opacity, 1));
}

.text-\[\#E0E0E0\] {
    --tw-text-opacity: 1;
    color: rgb(224 224 224 / var(--tw-text-opacity, 1));
}

.text-\[var\(--cor-alerta\)\] {
    color: var(--cor-alerta);
}

.text-\[var\(--cor-branca\)\] {
    color: var(--cor-branca);
}

.text-\[var\(--cor-primaria\)\] {
    color: var(--cor-primaria);
}

.text-\[var\(--cor-terciaria\)\] {
    color: var(--cor-terciaria);
}

.text-amber-500 {
    --tw-text-opacity: 1;
    color: rgb(245 158 11 / var(--tw-text-opacity, 1));
}

.text-amber-800 {
    --tw-text-opacity: 1;
    color: rgb(146 64 14 / var(--tw-text-opacity, 1));
}

.text-amber-900 {
    --tw-text-opacity: 1;
    color: rgb(120 53 15 / var(--tw-text-opacity, 1));
}

.text-black {
    --tw-text-opacity: 1;
    color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}

.text-blue-300 {
    --tw-text-opacity: 1;
    color: rgb(147 197 253 / var(--tw-text-opacity, 1));
}

.text-blue-400 {
    --tw-text-opacity: 1;
    color: rgb(96 165 250 / var(--tw-text-opacity, 1));
}

.text-blue-500 {
    --tw-text-opacity: 1;
    color: rgb(59 130 246 / var(--tw-text-opacity, 1));
}

.text-blue-600 {
    --tw-text-opacity: 1;
    color: rgb(37 99 235 / var(--tw-text-opacity, 1));
}

.text-blue-700 {
    --tw-text-opacity: 1;
    color: rgb(29 78 216 / var(--tw-text-opacity, 1));
}

.text-blue-800 {
    --tw-text-opacity: 1;
    color: rgb(30 64 175 / var(--tw-text-opacity, 1));
}

.text-danger {
    color: var(--tw-color-danger);
}

.text-default {
    color: var(--tw-color-text-default);
}

.text-gray-200 {
    --tw-text-opacity: 1;
    color: rgb(229 231 235 / var(--tw-text-opacity, 1));
}

.text-gray-400 {
    --tw-text-opacity: 1;
    color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}

.text-gray-500 {
    --tw-text-opacity: 1;
    color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}

.text-gray-600 {
    --tw-text-opacity: 1;
    color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}

.text-gray-700 {
    --tw-text-opacity: 1;
    color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}

.text-gray-800 {
    --tw-text-opacity: 1;
    color: rgb(31 41 55 / var(--tw-text-opacity, 1));
}

.text-gray-900 {
    --tw-text-opacity: 1;
    color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}

.text-green-500 {
    --tw-text-opacity: 1;
    color: rgb(34 197 94 / var(--tw-text-opacity, 1));
}

.text-green-600 {
    --tw-text-opacity: 1;
    color: rgb(22 163 74 / var(--tw-text-opacity, 1));
}

.text-green-700 {
    --tw-text-opacity: 1;
    color: rgb(21 128 61 / var(--tw-text-opacity, 1));
}

.text-green-800 {
    --tw-text-opacity: 1;
    color: rgb(22 101 52 / var(--tw-text-opacity, 1));
}

.text-info {
    color: var(--tw-color-info);
}

.text-inherit {
    color: inherit;
}

.text-primary {
    color: var(--tw-color-primary);
}

.text-purple-500 {
    --tw-text-opacity: 1;
    color: rgb(168 85 247 / var(--tw-text-opacity, 1));
}

.text-red-500 {
    --tw-text-opacity: 1;
    color: rgb(239 68 68 / var(--tw-text-opacity, 1));
}

.text-red-600 {
    --tw-text-opacity: 1;
    color: rgb(220 38 38 / var(--tw-text-opacity, 1));
}

.text-secondary {
    color: var(--tw-color-secondary);
}

.text-success {
    color: var(--tw-color-success);
}

.text-warning {
    color: var(--tw-color-warning);
}

.text-white {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.text-white\/60 {
    color: rgb(255 255 255 / 0.6);
}

.text-white\/70 {
    color: rgb(255 255 255 / 0.7);
}

.text-white\/80 {
    color: rgb(255 255 255 / 0.8);
}

.text-white\/90 {
    color: rgb(255 255 255 / 0.9);
}

.text-yellow-500 {
    --tw-text-opacity: 1;
    color: rgb(234 179 8 / var(--tw-text-opacity, 1));
}

.text-yellow-600 {
    --tw-text-opacity: 1;
    color: rgb(202 138 4 / var(--tw-text-opacity, 1));
}

.text-yellow-900 {
    --tw-text-opacity: 1;
    color: rgb(113 63 18 / var(--tw-text-opacity, 1));
}

.text-zinc-600 {
    --tw-text-opacity: 1;
    color: rgb(82 82 91 / var(--tw-text-opacity, 1));
}

.underline {
    text-decoration-line: underline;
}

.line-through {
    text-decoration-line: line-through;
}

.\!no-underline {
    text-decoration-line: none !important;
}

.no-underline {
    text-decoration-line: none;
}

.\!opacity-100 {
    opacity: 1 !important;
}

.opacity-0 {
    opacity: 0;
}

.opacity-100 {
    opacity: 1;
}

.opacity-20 {
    opacity: 0.2;
}

.opacity-40 {
    opacity: 0.4;
}

.opacity-50 {
    opacity: 0.5;
}

.opacity-60 {
    opacity: 0.6;
}

.opacity-80 {
    opacity: 0.8;
}

.opacity-\[0\.5\] {
    opacity: 0.5;
}

.shadow {
    --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_-2px_6px_\#E5E5E5\] {
    --tw-shadow: 0 -2px 6px #E5E5E5;
    --tw-shadow-colored: 0 -2px 6px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_0_1rem_0_rgba\(136\2c 152\2c 170\2c 0\.15\)\] {
    --tw-shadow: 0 0 1rem 0 rgba(136,152,170,0.15);
    --tw-shadow-colored: 0 0 1rem 0 var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_0_5px_1px_rgb\(0\2c 0\2c 0\2c 0\.15\)\] {
    --tw-shadow: 0 0 5px 1px rgb(0,0,0,0.15);
    --tw-shadow-colored: 0 0 5px 1px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_2px_15px_rgba\(0\2c 0\2c 0\2c 0\.06\)\] {
    --tw-shadow: 0 2px 15px rgba(0,0,0,0.06);
    --tw-shadow-colored: 0 2px 15px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_2px_15px_rgba\(0\2c 0\2c 0\2c 0\.16\)\] {
    --tw-shadow: 0 2px 15px rgba(0,0,0,0.16);
    --tw-shadow-colored: 0 2px 15px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[2px_2px_8px_rgba\(0\2c 0\2c 0\2c 0\.31\)\] {
    --tw-shadow: 2px 2px 8px rgba(0,0,0,0.31);
    --tw-shadow-colored: 2px 2px 8px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[2px_2px_8px_rgba\(0\2c 0\2c 0\2c 0\.38\)\] {
    --tw-shadow: 2px 2px 8px rgba(0,0,0,0.38);
    --tw-shadow-colored: 2px 2px 8px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[2px_2px_8px_rgba\(148\2c 148\2c 148\2c 0\.68\)\] {
    --tw-shadow: 2px 2px 8px rgba(148,148,148,0.68);
    --tw-shadow-colored: 2px 2px 8px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-lg {
    --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-md {
    --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-none {
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-sm {
    --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
    --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.outline-primary {
    outline-color: var(--tw-color-primary);
}

.outline-secondary {
    outline-color: var(--tw-color-secondary);
}

.ring {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.blur-\[1px\] {
    --tw-blur: blur(1px);
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.blur-\[2px\] {
    --tw-blur: blur(2px);
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.blur-\[3px\] {
    --tw-blur: blur(3px);
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.\!filter {
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow) !important;
}

.filter {
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.backdrop-blur {
    --tw-backdrop-blur: blur(8px);
    backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.backdrop-blur-\[2px\] {
    --tw-backdrop-blur: blur(2px);
    backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.backdrop-blur-sm {
    --tw-backdrop-blur: blur(4px);
    backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.transition {
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.transition-\[max-height\] {
    transition-property: max-height;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.transition-all {
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.transition-colors {
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.transition-shadow {
    transition-property: box-shadow;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.delay-100 {
    transition-delay: 100ms;
}

.duration-200 {
    transition-duration: 200ms;
}

.duration-300 {
    transition-duration: 300ms;
}

.duration-500 {
    transition-duration: 500ms;
}

.duration-\[180ms\] {
    transition-duration: 180ms;
}

.ease-in {
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ease-in-out {
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.ease-out {
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.bg-gradient-primary {
    background: #004A6C linear-gradient(87deg, #004A6C 0, #006d9f 100%) !important;
}

.bg-gradient-secondary {
    background: #009997 linear-gradient(87deg, #009997 0, #00ccc9 100%) !important;
}

.bg-gradient-success {
    background: #3DC661 linear-gradient(87deg, #3DC661 0, #64d281 100%) !important;
}

.bg-gradient-danger {
    background: #E7515A linear-gradient(87deg, #E7515A 0, #ed7e85 100%) !important;
}

.bg-gradient-warning {
    background: #E2A03F linear-gradient(87deg, #E2A03F 0, #e9b66b 100%) !important;
}

.bg-gradient-info {
    background: #2196F3 linear-gradient(87deg, #2196F3 0, #51adf6 100%) !important;
}

.bg-gradient-default {
    background: #172b4d linear-gradient(87deg, #172b4d 0, #234174 100%) !important;
}

.bg-gradient-light {
    background: #E0E0E0 linear-gradient(87deg, #E0E0E0 0, #fafafa 100%) !important;
}

.\[box-shadow\:0_0_0_0px_var\(--glow\)\] {
    box-shadow: 0 0 0 0px var(--glow);
}

.\[transition\:box-shadow_200ms_ease-in-out\2c border-color_200ms_ease-in-out\2c transform_200ms_ease-in-out\2c opacity_200ms_ease-in-out\] {
    transition: box-shadow 200ms ease-in-out,border-color 200ms ease-in-out,transform 200ms ease-in-out,opacity 200ms ease-in-out;
}

/* ========================================
   BORDER COLOR DEFAULT
   Sem preflight, o browser usa preto como cor de borda padrão.
   Isso garante que border/border-b/border-t sem cor explícita
   usem #D1D1D1 em vez de preto.
   ======================================== */

*, ::before, ::after {
    border-color: #D1D1D1;
}

/* ========================================
   FONT-FACES
   ======================================== */

@font-face {
    font-family: 'Open Sans';
    src: url("../resourceGlobal/fonts/OpenSans/OpenSans-Regular.ttf.jsf") format("truetype");
    font-weight: 400;
}

@font-face {
    font-family: 'Open Sans';
    src: url("../resourceGlobal/fonts/OpenSans/OpenSans-Light.ttf.jsf") format("truetype");
    font-weight: 300;
}

@font-face {
    font-family: 'Open Sans';
    src: url("../resourceGlobal/fonts/OpenSans/OpenSans-SemiBold.ttf.jsf") format("truetype");
    font-weight: 600;
}

@font-face {
    font-family: 'Open Sans';
    src: url("../resourceGlobal/fonts/OpenSans/OpenSans-Bold.ttf.jsf") format("truetype");
    font-weight: 700;
}

@font-face {
    font-family: 'Open Sans';
    src: url("../resourceGlobal/fonts/OpenSans/OpenSans-ExtraBold.ttf.jsf") format("truetype");
    font-weight: 800;
}

@font-face {
    font-family: 'Nunito Sans';
    src: url("../resourceGlobal/fonts/NunitoSans/NunitoSans-Regular.ttf.jsf") format("truetype");
    font-weight: 400;
}

@font-face {
    font-family: 'Nunito Sans';
    src: url("../resourceGlobal/fonts/NunitoSans/NunitoSans-Light.ttf.jsf") format("truetype");
    font-weight: 300;
}

@font-face {
    font-family: 'Nunito Sans';
    src: url("../resourceGlobal/fonts/NunitoSans/NunitoSans-SemiBold.ttf.jsf") format("truetype");
    font-weight: 600;
}

@font-face {
    font-family: 'Nunito Sans';
    src: url("../resourceGlobal/fonts/NunitoSans/NunitoSans-Bold.ttf.jsf") format("truetype");
    font-weight: 700;
}

@font-face {
    font-family: 'Nunito Sans';
    src: url("../resourceGlobal/fonts/NunitoSans/NunitoSans-ExtraBold.ttf.jsf") format("truetype");
    font-weight: 800;
}

/* ========================================
   RESETS BÁSICOS
   ======================================== */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    min-height: 100%;
    position: relative;
}

body {
    margin: 0;
    font-family: "Nunito Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #4D4D4D;
    text-align: left;
    background-color: #F3F4F7;
    padding-bottom: 56px;
}

[tabindex="-1"]:focus {
    outline: 0 !important;
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: 0.5rem;
    font-family: "Nunito Sans", sans-serif;
    line-height: 1.5;
    color: #4D4D4D;
    font-weight: 700;
}

h1 {
    font-size: 1.75rem;
}

h2 {
    font-size: 1.5rem;
}

h3 {
    font-size: 1.25rem;
}

h4 {
    font-size: 1rem;
}

h5 {
    font-size: 0.875rem;
}

h6 {
    font-size: 0.75rem;
}

p {
    margin-top: 0;
    margin-bottom: 1rem;
}

ul {
    padding: 0;
    list-style: none;
    margin: 0;
}

li {
    list-style: none;
}

a {
    --tw-text-opacity: 1;
    color: rgb(23 43 77 / var(--tw-text-opacity, 1));
    text-decoration: none;
    background-color: transparent;
}

a:hover {
    text-decoration: underline;
}

/* ========================================
   MENU LATERAL - Estilos 100% Idênticos ao master_ga
   ======================================== */

.hover\:text-primary:hover {
        color: var(--tw-color-primary) !important;
    }

.\[\&\:hover_label\]\:text-primary:hover label {
        color: var(--tw-color-primary) !important;
    }

.\[\&\>button\]\:\!text-primary>button {
        color: var(--tw-color-primary) !important;
    }

.before\:absolute::before {
    content: var(--tw-content);
    position: absolute;
}

.before\:right-0::before {
    content: var(--tw-content);
    right: 0px;
}

.before\:top-0::before {
    content: var(--tw-content);
    top: 0px;
}

.before\:-z-\[1\]::before {
    content: var(--tw-content);
    z-index: -1;
}

.before\:h-full::before {
    content: var(--tw-content);
    height: 100%;
}

.before\:w-full::before {
    content: var(--tw-content);
    width: 100%;
}

.before\:opacity-20::before {
    content: var(--tw-content);
    opacity: 0.2;
}

.before\:content-\[\'\'\]::before {
    --tw-content: '';
    content: var(--tw-content);
}

.empty\:hidden:empty {
    display: none;
}

.hover\:mb-\[5px\]:hover {
    margin-bottom: 5px;
}

.hover\:mt-\[-5px\]:hover {
    margin-top: -5px;
}

.hover\:-translate-y-0\.5:hover {
    --tw-translate-y: -0.125rem;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:cursor-pointer:hover {
    cursor: pointer;
}

.hover\:border-blue-400:hover {
    --tw-border-opacity: 1;
    border-color: rgb(96 165 250 / var(--tw-border-opacity, 1));
}

.hover\:border-blue-500\/30:hover {
    border-color: rgb(59 130 246 / 0.3);
}

.hover\:border-gray-300:hover {
    --tw-border-opacity: 1;
    border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}

.hover\:border-green-500\/30:hover {
    border-color: rgb(34 197 94 / 0.3);
}

.hover\:border-primary:hover {
    border-color: var(--tw-color-primary);
}

.hover\:border-red-500\/30:hover {
    border-color: rgb(239 68 68 / 0.3);
}

.hover\:border-yellow-500\/30:hover {
    border-color: rgb(234 179 8 / 0.3);
}

.hover\:\!bg-blue-700:hover {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(29 78 216 / var(--tw-bg-opacity, 1)) !important;
}

.hover\:\!bg-neutral-400:hover {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(163 163 163 / var(--tw-bg-opacity, 1)) !important;
}

.hover\:bg-\[\#004a73\]:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(0 74 115 / var(--tw-bg-opacity, 1));
}

.hover\:bg-\[\#E7E8EC\]:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(231 232 236 / var(--tw-bg-opacity, 1));
}

.hover\:bg-\[\#e0f0ff\]:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(224 240 255 / var(--tw-bg-opacity, 1));
}

.hover\:bg-\[var\(--botao-primario-hover\)\]:hover {
    background-color: var(--botao-primario-hover);
}

.hover\:bg-\[var\(--primary-color\)\]:hover {
    background-color: var(--primary-color);
}

.hover\:bg-amber-100:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(254 243 199 / var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-50:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-800:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(30 64 175 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-100:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-200:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}

.hover\:bg-green-100:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(220 252 231 / var(--tw-bg-opacity, 1));
}

.hover\:bg-green-600:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(22 163 74 / var(--tw-bg-opacity, 1));
}

.hover\:bg-green-700:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(21 128 61 / var(--tw-bg-opacity, 1));
}

.hover\:bg-red-600:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(220 38 38 / var(--tw-bg-opacity, 1));
}

.hover\:text-blue-900:hover {
    --tw-text-opacity: 1;
    color: rgb(30 58 138 / var(--tw-text-opacity, 1));
}

.hover\:text-primary:hover {
    color: var(--tw-color-primary);
}

.hover\:text-red-200:hover {
    --tw-text-opacity: 1;
    color: rgb(254 202 202 / var(--tw-text-opacity, 1));
}

.hover\:text-red-700:hover {
    --tw-text-opacity: 1;
    color: rgb(185 28 28 / var(--tw-text-opacity, 1));
}

.hover\:text-white:hover {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.hover\:underline:hover {
    text-decoration-line: underline;
}

.hover\:\!no-underline:hover {
    text-decoration-line: none !important;
}

.hover\:no-underline:hover {
    text-decoration-line: none;
}

.hover\:opacity-100:hover {
    opacity: 1;
}

.hover\:opacity-60:hover {
    opacity: 0.6;
}

.hover\:opacity-70:hover {
    opacity: 0.7;
}

.hover\:opacity-75:hover {
    opacity: 0.75;
}

.hover\:shadow-\[0_0_5px_1px_rgb\(0\2c 0\2c 0\2c 0\.35\)\]:hover {
    --tw-shadow: 0 0 5px 1px rgb(0,0,0,0.35);
    --tw-shadow-colored: 0 0 5px 1px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-\[0_2px_15px_rgba\(0\2c 0\2c 0\2c 0\.16\)\]:hover {
    --tw-shadow: 0 2px 15px rgba(0,0,0,0.16);
    --tw-shadow-colored: 0 2px 15px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-\[0_4px_20px_rgba\(0\2c 0\2c 0\2c 0\.30\)\]:hover {
    --tw-shadow: 0 4px 20px rgba(0,0,0,0.30);
    --tw-shadow-colored: 0 4px 20px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-md:hover {
    --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-none:hover {
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-xl:hover {
    --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:\[box-shadow\:0_0_0_4px_var\(--glow\)\]:hover {
    box-shadow: 0 0 0 4px var(--glow);
}

.focus\:not-sr-only:focus {
    position: static;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: visible;
    clip: auto;
    white-space: normal;
}

.focus\:fixed:focus {
    position: fixed;
}

.focus\:left-2:focus {
    left: 0.5rem;
}

.focus\:top-2:focus {
    top: 0.5rem;
}

.focus\:z-\[99999\]:focus {
    z-index: 99999;
}

.focus\:rounded:focus {
    border-radius: 0.25rem;
}

.focus\:bg-primary:focus {
    background-color: var(--tw-color-primary);
}

.focus\:px-4:focus {
    padding-left: 1rem;
    padding-right: 1rem;
}

.focus\:py-2:focus {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.focus\:text-white:focus {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.focus\:no-underline:focus {
    text-decoration-line: none;
}

.active\:\!scale-95:active {
    --tw-scale-x: .95 !important;
    --tw-scale-y: .95 !important;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) !important;
}

.active\:\!border-b-2:active {
    border-bottom-width: 2px !important;
}

.active\:\!border-primary:active {
    border-color: var(--tw-color-primary) !important;
}

.active\:no-underline:active {
    text-decoration-line: none;
}

.disabled\:\!opacity-50:disabled {
    opacity: 0.5 !important;
}

.group:hover .group-hover\:bg-white\/30 {
    background-color: rgb(255 255 255 / 0.3);
}

.group:hover .group-hover\:text-white {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:shadow-none {
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.group.table-mode .group-\[\.table-mode\]\:relative {
    position: relative;
}

.group.table-mode .group-\[\.table-mode\]\:\!right-0 {
    right: 0px !important;
}

.group.table-mode .group-\[\.table-mode\]\:\!top-0 {
    top: 0px !important;
}

.group.table-mode.blue .group-\[\.table-mode\.blue\]\:\!text-white {
    --tw-text-opacity: 1 !important;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1)) !important;
}

@media (min-width: 640px) {

    .sm\:relative {
        position: relative;
    }

    .sm\:col-span-10 {
        grid-column: span 10 / span 10;
    }

    .sm\:col-span-12 {
        grid-column: span 12 / span 12;
    }

    .sm\:col-span-2 {
        grid-column: span 2 / span 2;
    }

    .sm\:col-span-3 {
        grid-column: span 3 / span 3;
    }

    .sm\:col-span-4 {
        grid-column: span 4 / span 4;
    }

    .sm\:col-span-5 {
        grid-column: span 5 / span 5;
    }

    .sm\:col-span-6 {
        grid-column: span 6 / span 6;
    }

    .sm\:col-span-7 {
        grid-column: span 7 / span 7;
    }

    .sm\:col-span-8 {
        grid-column: span 8 / span 8;
    }

    .sm\:col-span-9 {
        grid-column: span 9 / span 9;
    }

    .sm\:col-start-7 {
        grid-column-start: 7;
    }

    .sm\:col-start-8 {
        grid-column-start: 8;
    }

    .sm\:mb-0 {
        margin-bottom: 0px;
    }

    .sm\:ml-3 {
        margin-left: 0.75rem;
    }

    .sm\:ml-6 {
        margin-left: 1.5rem;
    }

    .sm\:mt-0 {
        margin-top: 0px;
    }

    .sm\:block {
        display: block;
    }

    .sm\:flex {
        display: flex;
    }

    .sm\:hidden {
        display: none;
    }

    .sm\:w-5\/12 {
        width: 41.666667%;
    }

    .sm\:w-6 {
        width: 1.5rem;
    }

    .sm\:w-7\/12 {
        width: 58.333333%;
    }

    .sm\:w-auto {
        width: auto;
    }

    .sm\:w-fit {
        width: -moz-fit-content;
        width: fit-content;
    }

    .sm\:flex-1 {
        flex: 1 1 0%;
    }

    .sm\:grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sm\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .sm\:grid-cols-5 {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .sm\:grid-cols-\[1fr_1fr_1fr_1fr_auto\] {
        grid-template-columns: 1fr 1fr 1fr 1fr auto;
    }

    .sm\:grid-cols-\[1fr_1fr_1fr_auto\] {
        grid-template-columns: 1fr 1fr 1fr auto;
    }

    .sm\:grid-cols-\[1fr_1fr_25\%\] {
        grid-template-columns: 1fr 1fr 25%;
    }

    .sm\:grid-cols-\[1fr_1fr_auto\] {
        grid-template-columns: 1fr 1fr auto;
    }

    .sm\:grid-cols-\[1fr_auto\] {
        grid-template-columns: 1fr auto;
    }

    .sm\:grid-cols-\[1fr_auto_auto\] {
        grid-template-columns: 1fr auto auto;
    }

    .sm\:grid-cols-\[25\%_1fr_auto\] {
        grid-template-columns: 25% 1fr auto;
    }

    .sm\:grid-cols-\[auto_1fr\] {
        grid-template-columns: auto 1fr;
    }

    .sm\:flex-row {
        flex-direction: row;
    }

    .sm\:items-center {
        align-items: center;
    }

    .sm\:justify-end {
        justify-content: flex-end;
    }

    .sm\:gap-0 {
        gap: 0px;
    }

    .sm\:gap-6 {
        gap: 1.5rem;
    }

    .sm\:p-1 {
        padding: 0.25rem;
    }

    .sm\:px-8 {
        padding-left: 2rem;
        padding-right: 2rem;
    }

    .sm\:text-sm {
        font-size: 0.875rem;
    }
}

@media (min-width: 768px) {

    .md\:order-2 {
        order: 2;
    }

    .md\:order-3 {
        order: 3;
    }

    .md\:order-4 {
        order: 4;
    }

    .md\:order-5 {
        order: 5;
    }

    .md\:order-6 {
        order: 6;
    }

    .md\:col-auto {
        grid-column: auto;
    }

    .md\:col-span-1 {
        grid-column: span 1 / span 1;
    }

    .md\:col-span-12 {
        grid-column: span 12 / span 12;
    }

    .md\:col-span-2 {
        grid-column: span 2 / span 2;
    }

    .md\:col-span-3 {
        grid-column: span 3 / span 3;
    }

    .md\:col-span-4 {
        grid-column: span 4 / span 4;
    }

    .md\:col-span-5 {
        grid-column: span 5 / span 5;
    }

    .md\:col-span-6 {
        grid-column: span 6 / span 6;
    }

    .md\:col-span-7 {
        grid-column: span 7 / span 7;
    }

    .md\:col-span-8 {
        grid-column: span 8 / span 8;
    }

    .md\:col-span-9 {
        grid-column: span 9 / span 9;
    }

    .md\:col-start-10 {
        grid-column-start: 10;
    }

    .md\:col-start-6 {
        grid-column-start: 6;
    }

    .md\:col-start-7 {
        grid-column-start: 7;
    }

    .md\:col-start-9 {
        grid-column-start: 9;
    }

    .md\:mb-0 {
        margin-bottom: 0px;
    }

    .md\:ml-auto {
        margin-left: auto;
    }

    .md\:mr-2 {
        margin-right: 0.5rem;
    }

    .md\:mt-0 {
        margin-top: 0px;
    }

    .md\:mt-2 {
        margin-top: 0.5rem;
    }

    .md\:block {
        display: block;
    }

    .md\:flex {
        display: flex;
    }

    .md\:\!hidden {
        display: none !important;
    }

    .md\:hidden {
        display: none;
    }

    .md\:\!w-\[300px\] {
        width: 300px !important;
    }

    .md\:w-1\/3 {
        width: 33.333333%;
    }

    .md\:w-1\/5 {
        width: 20%;
    }

    .md\:w-2\/3 {
        width: 66.666667%;
    }

    .md\:w-2\/5 {
        width: 40%;
    }

    .md\:w-4\/5 {
        width: 80%;
    }

    .md\:w-\[calc\(50\%-0\.625rem\)\] {
        width: calc(50% - 0.625rem);
    }

    .md\:w-\[calc\(50\%_-_1\.25rem\)\] {
        width: calc(50% - 1.25rem);
    }

    .md\:w-auto {
        width: auto;
    }

    .md\:flex-1 {
        flex: 1 1 0%;
    }

    .md\:rotate-0 {
        --tw-rotate: 0deg;
        transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    }

    .md\:grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .md\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .md\:grid-cols-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .md\:grid-cols-\[minmax\(0\2c 1fr\)_auto\] {
        grid-template-columns: minmax(0,1fr) auto;
    }

    .md\:flex-row {
        flex-direction: row;
    }

    .md\:items-center {
        align-items: center;
    }

    .md\:justify-between {
        justify-content: space-between;
    }

    .md\:gap-1 {
        gap: 0.25rem;
    }

    .md\:gap-3 {
        gap: 0.75rem;
    }

    .md\:justify-self-end {
        justify-self: end;
    }

    .md\:p-0 {
        padding: 0px;
    }

    .md\:p-6 {
        padding: 1.5rem;
    }

    .md\:px-4 {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .md\:py-2 {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }

    .md\:pt-2 {
        padding-top: 0.5rem;
    }

    .md\:\!text-center {
        text-align: center !important;
    }

    .md\:\!text-right {
        text-align: right !important;
    }

    .md\:text-right {
        text-align: right;
    }

    .md\:text-xl {
        font-size: 1.25rem;
    }

    .md\:text-xs {
        font-size: 0.75rem;
    }
}

@media (min-width: 1024px) {

    .lg\:col-span-12 {
        grid-column: span 12 / span 12;
    }

    .lg\:col-span-2 {
        grid-column: span 2 / span 2;
    }

    .lg\:col-span-3 {
        grid-column: span 3 / span 3;
    }

    .lg\:col-span-4 {
        grid-column: span 4 / span 4;
    }

    .lg\:col-span-5 {
        grid-column: span 5 / span 5;
    }

    .lg\:col-span-6 {
        grid-column: span 6 / span 6;
    }

    .lg\:col-span-7 {
        grid-column: span 7 / span 7;
    }

    .lg\:col-span-8 {
        grid-column: span 8 / span 8;
    }

    .lg\:col-span-9 {
        grid-column: span 9 / span 9;
    }

    .lg\:mb-0 {
        margin-bottom: 0px;
    }

    .lg\:mb-2 {
        margin-bottom: 0.5rem;
    }

    .lg\:flex {
        display: flex;
    }

    .lg\:\!w-\[400px\] {
        width: 400px !important;
    }

    .lg\:w-1\/3 {
        width: 33.333333%;
    }

    .lg\:w-auto {
        width: auto;
    }

    .lg\:min-w-max {
        min-width: -moz-max-content;
        min-width: max-content;
    }

    .lg\:max-w-xs {
        max-width: 20rem;
    }

    .lg\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .lg\:grid-cols-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .lg\:grid-cols-5 {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .lg\:grid-cols-\[auto\2c 1fr\] {
        grid-template-columns: auto 1fr;
    }

    .lg\:flex-row {
        flex-direction: row;
    }

    .lg\:items-center {
        align-items: center;
    }

    .lg\:justify-end {
        justify-content: flex-end;
    }

    .lg\:px-8 {
        padding-left: 2rem;
        padding-right: 2rem;
    }

    .lg\:pb-0 {
        padding-bottom: 0px;
    }

    .lg\:text-left {
        text-align: left;
    }

    .lg\:text-center {
        text-align: center;
    }
}

@media (min-width: 1280px) {

    .xl\:col-span-1 {
        grid-column: span 1 / span 1;
    }

    .xl\:col-span-10 {
        grid-column: span 10 / span 10;
    }

    .xl\:col-span-2 {
        grid-column: span 2 / span 2;
    }

    .xl\:col-span-3 {
        grid-column: span 3 / span 3;
    }

    .xl\:col-span-4 {
        grid-column: span 4 / span 4;
    }

    .xl\:col-span-5 {
        grid-column: span 5 / span 5;
    }

    .xl\:col-span-6 {
        grid-column: span 6 / span 6;
    }

    .xl\:col-span-9 {
        grid-column: span 9 / span 9;
    }

    .xl\:mb-0 {
        margin-bottom: 0px;
    }

    .xl\:w-4\/12 {
        width: 33.333333%;
    }

    .xl\:w-5\/12 {
        width: 41.666667%;
    }

    .xl\:w-7\/12 {
        width: 58.333333%;
    }

    .xl\:w-\[calc\(33\.333\%-0\.625rem\)\] {
        width: calc(33.333% - 0.625rem);
    }

    .xl\:w-\[calc\(66\.666\%-0\.625rem\)\] {
        width: calc(66.666% - 0.625rem);
    }

    .xl\:w-auto {
        width: auto;
    }

    .xl\:flex-1 {
        flex: 1 1 0%;
    }

    .xl\:flex-none {
        flex: none;
    }

    .xl\:grid-cols-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .xl\:grid-cols-5 {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .xl\:grid-cols-\[1fr_1fr_1fr_1fr_1fr_auto\] {
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr auto;
    }

    .xl\:justify-end {
        justify-content: flex-end;
    }

    .xl\:gap-4 {
        gap: 1rem;
    }

    .xl\:text-left {
        text-align: left;
    }
}

@media (min-width: 1400px) {

    .min-\[1400px\]\:col-span-4 {
        grid-column: span 4 / span 4;
    }
}

@media (min-width: 1536px) {

    .\32xl\:col-span-6 {
        grid-column: span 6 / span 6;
    }

    .\32xl\:mb-0 {
        margin-bottom: 0px;
    }
}

.\[\&\:hover_label\]\:cursor-pointer:hover label {
    cursor: pointer;
}

.\[\&\:hover_label\]\:text-primary:hover label {
    color: var(--tw-color-primary);
}

.\[\&\:not\(\.ui-sortable-column\)\]\:flex:not(.ui-sortable-column) {
    display: flex;
}

.\[\&\:not\(\.ui-sortable-column\)\]\:items-center:not(.ui-sortable-column) {
    align-items: center;
}

.\[\&\:not\(\.ui-sortable-column\)\]\:gap-2:not(.ui-sortable-column) {
    gap: 0.5rem;
}

.\[\&\>button\:not\(\:first-child\)\]\:-ml-px>button:not(:first-child) {
    margin-left: -1px;
}

.\[\&\>button\:not\(\:first-child\)\]\:rounded-l-none>button:not(:first-child) {
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
}

.\[\&\>button\:not\(\:last-child\)\]\:rounded-r-none>button:not(:last-child) {
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
}

.\[\&\>button\]\:\!bg-transparent>button {
    background-color: transparent !important;
}

.\[\&\>button\]\:\!text-primary>button {
    color: var(--tw-color-primary) !important;
}

.\[\&\>div\]\:relative>div {
    position: relative;
}

.\[\&\>div\]\:w-full>div {
    width: 100%;
}

.\[\&_\.ui-button-text\]\:\!p-0 .ui-button-text {
    padding: 0px !important;
}

.\[\&_\.ui-cell-editor\]\:flex-1 .ui-cell-editor {
    flex: 1 1 0%;
}

.\[\&_\.ui-datatable-tablewrapper\]\:\!rounded-none .ui-datatable-tablewrapper {
    border-radius: 0px !important;
}

.\[\&_\.ui-datatable-tablewrapper\]\:\!border-0 .ui-datatable-tablewrapper {
    border-width: 0px !important;
}

.\[\&_\.ui-fileupload-buttonbar\]\:\!hidden .ui-fileupload-buttonbar {
    display: none !important;
}

.\[\&_\.ui-inputgroup-addon\]\:\!min-w-\[unset\] .ui-inputgroup-addon {
    min-width: unset !important;
}

.\[\&_\.ui-selectonemenu-label\]\:hidden .ui-selectonemenu-label {
    display: none;
}

.has-\[select_option\[selected\]\]\:\[\&_\.ui-selectonemenu-label\]\:block .ui-selectonemenu-label:has(select option[selected]) {
    display: block;
}

.\[\&_\.ui-slider-handle\]\:\!top-1\/2 .ui-slider-handle {
    top: 50% !important;
}

.\[\&_\.ui-slider-handle\]\:\!border-primary .ui-slider-handle {
    border-color: var(--tw-color-primary) !important;
}

.\[\&_\.ui-slider-handle\]\:\!bg-primary .ui-slider-handle {
    background-color: var(--tw-color-primary) !important;
}

.\[\&_\.ui-slider-handle\]\:\!\[transform\:translateY\(-50\%\)\] .ui-slider-handle {
    transform: translateY(-50%) !important;
}

.\[\&_\.ui-slider\]\:mr-2\.5 .ui-slider {
    margin-right: 0.625rem;
}

.\[\&_\.ui-treetable-scrollable-header_table_tr_th\:first-child\]\:bg-white .ui-treetable-scrollable-header table tr th:first-child {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.\[\&_button\]\:\!m-0 button {
    margin: 0px !important;
}

.\[\&_button\]\:border-2 button {
    border-width: 2px;
}

.\[\&_button\]\:border-primary button {
    border-color: var(--tw-color-primary);
}

.\[\&_label\]\:text-default label {
    color: var(--tw-color-text-default);
}

.\[\&_table\]\:overflow-x-auto table {
    overflow-x: auto;
}