@import url("https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap");

:root {
    --default-font: "Inter", sans-serif;
    --bs-font-monospace: var(--default-font);
    --h1: clamp(2rem, 1.2rem + 4vw, 4.5rem);
    --h2: clamp(1.75rem, 1.11rem + 3.2vw, 3.75rem);
    --h3: clamp(1.5rem, 1.02rem + 2.4vw, 3rem);
    --h4: clamp(1.375rem, 1.095rem + 1.4vw, 2.25rem);
    --h5: clamp(1.25rem, 1.05rem + 1vw, 1.875rem);
    --h6: clamp(1.125rem, 1.005rem + 0.6vw, 1.5rem);
    --h7: clamp(0.875rem, 0.875rem + 0.35vw, 1.125rem);
    --h8: clamp(0.75rem, 0.75rem + 0.25vw, 1rem);
    --h9: clamp(0.6rem, 0.6rem + 0.15vw, 0.875rem);
    --size-2: 0.125rem;
    --size-4: 0.25rem;
    --size-6: 0.375rem;
    --size-8: 0.5rem;
    --size-9: 0.5625rem;
    --size-10: 0.625rem;
    --size-11: 0.6875rem;
    --size-12: 0.75rem;
    --size-13: 0.8125rem;
    --size-16: 1rem;
    --size-20: 1.25rem;
    --size-24: 1.5rem;
    --size-28: 1.5rem;
    --size-32: 2rem;
    --size-36: 2rem;
    --size-40: 2.5rem;
    --size-44: 2.75rem;
    --size-48: 3rem;
    --size-50: 3.125rem;
    --size-56: 3.5rem;
    --size-60: 3.75rem;
    --size-64: 4rem;
    --size-72: 4.5rem;
    --size-76: 4.75rem;
    --size-80: 5rem;
    --size-90: 5.625rem;
    --size-110: 6.875rem;
    --size-120: 7.5rem;
    --size-144: 9rem;
    --size-160: 10rem;
    --size-170: 10.625rem;
    --size-190: 11.875rem;
    --size-200: 12.5rem;
    --size-240: 15rem;
    --size-440: 27.5rem;
    --rounded-2: 0.125rem;
    --rounded-4: 0.25rem;
    --rounded-6: 0.375rem;
    --rounded-8: 0.5rem;
    --rounded-9: 0.5625rem;
    --rounded-10: 0.625rem;
    --rounded-11: 0.6875rem;
    --rounded-12: 0.75rem;
    --rounded-13: 0.8125rem;
    --rounded-16: 1rem;
    --rounded-20: 1.25rem;
    --rounded-24: 1.5rem;
    --rounded-28: 1.5rem;
    --rounded-32: 2rem;
    --rounded-36: 2rem;
    --rounded-40: 2.5rem;
    --rounded-44: 2.75rem;
    --rounded-48: 3rem;
    --rounded-50: 3.125rem;
    --rounded-56: 3.5rem;
    --rounded-60: 3.75rem;
    --rounded-64: 4rem;
    --rounded-72: 4.5rem;
    --rounded-76: 4.75rem;
    --rounded-80: 5rem;
    --rounded-90: 5.625rem;
    --rounded-110: 6.875rem;
    --rounded-120: 7.5rem;
    --rounded-144: 9rem;
    --rounded-160: 10rem;
    --rounded-170: 10.625rem;
    --rounded-190: 11.875rem;
    --rounded-200: 12.5rem;
    --rounded-240: 15rem;
    --rounded-440: 27.5rem;
    --shadow-1: 0 4px 60px 0 rgba(4, 6, 15, 0.8);
    --shadow-2: 0 4px 60px 0 rgba(4, 6, 15, 0.5);
    --shadow-3: 0 20px 100px 0 rgba(4, 6, 15, 0.8);
    --shadow-4: 4px 8px 24px 0 rgba(182, 182, 182, 0.2);
    --shadow-5: 4px 12px 32px 0 rgba(0, 169, 158, 0.1);
    --shadow-6: 4px 16px 32px 0 rgba(0, 169, 158, 0.1);
    --shadow-7: 0px 4px 30px 0px rgba(46, 45, 116, 0.05);
    --shadow-8: 0px 4px 4px 0px rgba(0, 0, 0, 0.05);
    --shadow-9: 0px 4px 16px 0px rgba(46, 45, 116, 0.04);
    --font-2xxl: 2rem;
    --font-2xl: 1.75rem;
    --font-xxl: 1.5rem;
    --font-xl: 1.25rem;
    --font-lg: 1.125rem;
    --font-md: 1rem;
    --font-sm: 0.875rem;
    --font-xs: 0.75rem;
    --font-xxs: 0.625rem;
    --primary-50: #E4F1FF;
    --primary-100: #BFDCFF;
    --primary-200: #95C7FF;
    --primary-300: #6BB1FF;
    --primary-400: #519FFF;
    --primary-500: #458EFF;
    --primary-600: #487FFF;
    --primary-700: #486CEA;
    --primary-800: #4759D6;
    --primary-900: #4536B6;
    --neutral-50: #F5F6FA;
    --neutral-100: #F3F4F6;
    --neutral-200: #EBECEF;
    --neutral-300: #D1D5DB;
    --neutral-400: #9CA3AF;
    --neutral-500: #6B7280;
    --neutral-600: #4B5563;
    --neutral-700: #374151;
    --neutral-800: #1F2937;
    --neutral-900: #111827;
    --danger-50: #FEF2F2;
    --danger-100: #FEE2E2;
    --danger-200: #FECACA;
    --danger-300: #FCA5A5;
    --danger-400: #F87171;
    --danger-500: #EF4444;
    --danger-600: #DC2626;
    --danger-700: #B91C1C;
    --danger-800: #991B1B;
    --danger-900: #7F1D1D;
    --success-50: #F0FDF4;
    --success-100: #DCFCE7;
    --success-200: #BBF7D0;
    --success-300: #86EFAC;
    --success-400: #4ADE80;
    --success-500: #22C55E;
    --success-600: #16A34A;
    --success-700: #15803D;
    --success-800: #166534;
    --success-900: #14532D;
    --warning-50: #FEFCE8;
    --warning-100: #FEF9C3;
    --warning-200: #FEF08A;
    --warning-300: #FDE047;
    --warning-400: #FACC15;
    --warning-500: #EAB308;
    --warning-600: #FF9F29;
    --warning-700: #f39016;
    --warning-800: #e58209;
    --warning-900: #d77907;
    --info-50: #EFF6FF;
    --info-100: #DBEAFE;
    --info-200: #BFDBFE;
    --info-300: #93C5FD;
    --info-400: #60A5FA;
    --info-500: #3B82F6;
    --info-600: #2563EB;
    --info-700: #1D4ED8;
    --info-800: #1E40AF;
    --info-900: #1E3A8A;
    --cyan-50: #e2f5fb;
    --cyan-100: #DAF6FF;
    --cyan-200: #85daf4;
    --cyan-300: #6cdafc;
    --cyan-400: #48cef7;
    --cyan-500: #2bc9f9;
    --cyan-600: #00b8f2;
    --cyan-700: #03a9dc;
    --cyan-800: #049dcb;
    --cyan-900: #0390bb;
    --dark-1: #1B2431;
    --dark-2: #273142;
    --dark-3: #323D4E;
    --lilac-50: #f0e1ff;
    --lilac-100: #EBD7FF;
    --lilac-200: #dcc0f8;
    --lilac-300: #cd9ffa;
    --lilac-400: #c48afe;
    --lilac-500: #b66dff;
    --lilac-600: #8252E9;
    --lilac-700: #6f37e6;
    --lilac-800: #601eef;
    --light-50: #F5F6FA;
    --light-100: #F3F4F6;
    --light-600: #E4F1FF;
    --light-700: #374151;
    --light-800: #1F2937;
    --success-main: #45B369;
    --success-surface: #DAF0E1;
    --success-border: #B5E1C3;
    --success-hover: #009F5E;
    --success-pressed: #006038;
    --success-focus: rgba(69, 179, 105, 0.1490196078);
    --info-main: #144BD6;
    --info-surface: #E7EEFC;
    --info-border: #AECAFC;
    --info-hover: #0A51CE;
    --info-pressed: #06307C;
    --info-focus: rgba(20, 75, 214, 0.1490196078);
    --warning-main: #FF9F29;
    --warning-surface: #FFF9E2;
    --warning-border: #FFEBA6;
    --warning-hover: #D69705;
    --warning-pressed: #C28800;
    --warning-focus: rgba(255, 192, 45, 0.1490196078);
    --danger-main: #EF4A00;
    --danger-surface: #FCDAE2;
    --danger-border: #F9B5C6;
    --danger-hover: #D53128;
    --danger-pressed: #801D18;
    --danger-focus: rgba(239, 71, 112, 0.1490196078);
    --cyan: #00B8F2;
    --indigo: #7F27FF;
    --purple: #8252E9;
    --red: #E30A0A;
    --yellow: #F4941E;
    --orange: #F86624;
    --pink: #DE3ACE;
    --primary-light: rgba(72, 127, 255, 0.15);
    --yellow-light: rgba(255, 159, 41, 0.15);
    --purple-light: rgba(130, 82, 233, 0.15);
    --pink-light: rgba(250, 54, 230, 0.15);
    --primary-light-white: rgba(72, 127, 255, 0.25);
    --yellow-light-white: rgba(255, 159, 41, 0.25);
    --purple-light-white: rgba(132, 90, 223, 0.25);
    --pink-light-white: rgba(250, 54, 230, 0.25);
    --base: #fff;
    --brand: var(--primary-600);
    --button-secondary: var(--primary-50);
    --black: var(--dark-2);
    --white: var(--base);
    --bg-color: var(--neutral-50);
    --text-primary-light: var(--neutral-900);
    --text-secondary-light: var(--neutral-600);
    --text-secondary-dark: var(--neutral-300);
    --input-form-light: var(--neutral-300);
    --input-form-dark: var(--neutral-500);
    --input-bg: var(--neutral-50);
    --input-stroke: var(--neutral-300);
    --border-color: #d1d5db80;
    --portal-scrollbar-size: 4px;
    --portal-scrollbar-track-margin: 0.65rem;
    --portal-scrollbar-thumb-border: 2px;
    --portal-scrollbar-thumb-bg: linear-gradient(180deg, rgba(226, 232, 240, 0.78), rgba(203, 213, 225, 0.62));
    --portal-scrollbar-thumb-bg-hover: linear-gradient(180deg, rgba(203, 213, 225, 0.82), rgba(186, 198, 212, 0.68));
    --portal-scrollbar-color: rgba(203, 213, 225, 0.68);
}

p {
    font-size: 0.7rem !important;
}

[data-theme=dark] {
    --button-secondary: var(--neutral-300);
    --black: var(--base);
    --white: var(--dark-2);
    --bg-color: var(--dark-1);
    --text-primary-light: var(--base);
    --text-secondary-light: #D1D5DB;
    --text-secondary-dark: var(--dark-2);
    --input-form-light: #6B7280;
    --input-form-dark: #D1D5DB;
    --input-bg: var(--dark-3);
    --input-stroke: #F3F4F6;
    --primary-50: #e4f1ff0f;
    --info-50: #EFF6FF0f;
    --warning-50: #FEFCE80f;
    --success-50: #F0FDF40f;
    --danger-50: #FEF2F20f;
    --lilac-100: #EBD7FF0f;
    --success-100: #DCFCE70f;
    --danger-100: rgba(239, 71, 112, 0.1490196078);
    --border-color: #d1d5db33;
    --neutral-50: #1B2431;
    --neutral-100: #273142;
    --neutral-200: #323D4E;
    --neutral-300: #4B5563;
    --neutral-400: #6B7280;
    --neutral-500: #9CA3AF;
    --neutral-600: #D1D5DB;
    --neutral-700: #EBECEF;
    --neutral-800: #F3F4F6;
    --neutral-900: #F5F6FA;
    --portal-scrollbar-thumb-bg: linear-gradient(180deg, rgba(107, 114, 128, 0.52), rgba(156, 163, 175, 0.42));
    --portal-scrollbar-thumb-bg-hover: linear-gradient(180deg, rgba(156, 163, 175, 0.58), rgba(107, 114, 128, 0.48));
    --portal-scrollbar-color: rgba(156, 163, 175, 0.48);
}

html.theme-switching *,
html.theme-switching *::before,
html.theme-switching *::after {
    transition: none !important;
}

*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
    all: unset;
    display: revert;
}

:where([hidden]) {
    display: none;
}

:where([contenteditable]:not([contenteditable=false])) {
    -moz-user-modify: read-write;
    -webkit-user-modify: read-write;
    overflow-wrap: break-word;
    -webkit-line-break: after-white-space;
    -webkit-user-select: auto;
}

:where([draggable=true]) {
    -webkit-user-drag: element;
}

:where(dialog:modal) {
    all: revert;
}

*,
::before,
::after {
    box-sizing: border-box;
    border-style: solid;
    border-width: 0;
}

html {
    scroll-behavior: smooth;
}

body {
    background-color: var(--bg-color);
    color: var(--text-secondary-light);
    font-family: "Inter", sans-serif;
    font-size: 1rem;
    padding: 0;
    margin: 0;
    font-weight: 400;
    position: relative;
    line-height: 1.7;
    overflow-x: hidden;
}

.font-monospace {
    font-family: inherit !important;
}

body.overlay-active::after {
    width: 100%;
}

body::after {
    position: absolute;
    content: "";
    top: 0;
    inset-inline-start: 0;
    width: 0;
    height: 100%;
    background-color: #000;
    opacity: 0.65;
    transition: all 0.3s;
    z-index: 2;
}

/* Portal global scrollbar — compact thumb, inset track. */
* {
    scrollbar-width: thin;
    scrollbar-color: var(--portal-scrollbar-color) transparent;
}

    *::-webkit-scrollbar {
        width: var(--portal-scrollbar-size);
        height: var(--portal-scrollbar-size);
    }

    *::-webkit-scrollbar-track {
        background: transparent;
        margin-block: var(--portal-scrollbar-track-margin);
        margin-inline: var(--portal-scrollbar-track-margin);
    }

    *::-webkit-scrollbar-thumb {
        border-radius: 999px;
        border: var(--portal-scrollbar-thumb-border) solid transparent;
        background-clip: padding-box;
        background: var(--portal-scrollbar-thumb-bg);
    }

        *::-webkit-scrollbar-thumb:hover {
            background: var(--portal-scrollbar-thumb-bg-hover);
        }

[data-bs-theme=dark] {
    --portal-scrollbar-thumb-bg: linear-gradient(180deg, rgba(107, 114, 128, 0.52), rgba(156, 163, 175, 0.42));
    --portal-scrollbar-thumb-bg-hover: linear-gradient(180deg, rgba(156, 163, 175, 0.58), rgba(107, 114, 128, 0.48));
    --portal-scrollbar-color: rgba(156, 163, 175, 0.48);
}

main {
    display: block;
}

footer {
    margin-top: auto;
}

@font-face {
    font-family: 'Novecentowide Normal';
    src: url('../fonts/Novecentowide-Normal.eot');
    src: url('../fonts/Novecentowide-Normal.eot?#iefix') format('embedded-opentype'), url('../fonts/Novecentowide-Normal.woff') format('woff'), url('../fonts/Novecentowide-Normal.ttf') format('truetype'), url('../fonts/Novecentowide-Normal.svg#Novecentowide-Normal') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Novecentowide Medium';
    src: url('../fonts/Novecentowide-Medium.eot');
    src: url('../fonts/Novecentowide-Medium.eot?#iefix') format('embedded-opentype'), url('../fonts/Novecentowide-Medium.woff') format('woff'), url('../fonts/Novecentowide-Medium.ttf') format('truetype'), url('../fonts/Novecentowide-Medium.svg#Novecentowide-Medium') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Novecentowide Light';
    src: url('../fonts/Novecentowide-Light.eot');
    src: url('../fonts/Novecentowide-Light.eot?#iefix') format('embedded-opentype'), url('../fonts/Novecentowide-Light.woff') format('woff'), url('../fonts/Novecentowide-Light.ttf') format('truetype'), url('../fonts/Novecentowide-Light.svg#Novecentowide-Light') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Novecentowide DemiBold';
    src: url('../fonts/Novecentowide-DemiBold.eot');
    src: url('../fonts/Novecentowide-DemiBold.eot?#iefix') format('embedded-opentype'), url('../fonts/Novecentowide-DemiBold.woff') format('woff'), url('../fonts/Novecentowide-DemiBold.ttf') format('truetype'), url('../fonts/Novecentowide-DemiBold.svg#Novecentowide-DemiBold') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Novecentowide Book';
    src: url('../fonts/Novecentowide-Book.eot');
    src: url('../fonts/Novecentowide-Book.eot?#iefix') format('embedded-opentype'), url('../fonts/Novecentowide-Book.woff') format('woff'), url('../fonts/Novecentowide-Book.ttf') format('truetype'), url('../fonts/Novecentowide-Book.svg#Novecentowide-Book') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Novecentowide Bold';
    src: url('../fonts/Novecentowide-Bold.eot');
    src: url('../fonts/Novecentowide-Bold.eot?#iefix') format('embedded-opentype'), url('../fonts/Novecentowide-Bold.woff') format('woff'), url('../fonts/Novecentowide-Bold.ttf') format('truetype'), url('../fonts/Novecentowide-Bold.svg#Novecentowide-Bold') format('svg');
    font-weight: normal;
    font-style: normal;
}

img {
    max-width: 100%;
    height: auto;
    user-select: none;
}

select {
    cursor: pointer;
}

dt {
    margin-left: 0;
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
    border-top-width: 1px;
    margin: 0;
    clear: both;
    color: inherit;
    opacity: 0.15;
}

pre {
    font-family: inherit;
    font-size: inherit;
}

address {
    font-style: inherit;
}

ul,
ol {
    margin: 0;
    padding: 0;
    list-style: none;
}

*:focus {
    outline: none;
}

a {
    text-decoration: none;
    display: inline-block;
    background-color: transparent;
    color: inherit;
}

a, button {
    cursor: revert;
}

    a:hover {
        text-decoration: none;
    }

strong {
    font-weight: 700;
}

a:hover {
    color: var(--primary);
}

abbr[title] {
    text-decoration: underline dotted;
}

b,
strong {
    font-weight: bolder;
}

code,
kbd,
samp {
    font-family: inherit;
    font-size: inherit;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

svg,
img,
embed,
object,
iframe {
    vertical-align: bottom;
}

button,
[type=button],
[type=reset],
[type=submit] {
    cursor: pointer;
    -webkit-appearance: button;
}

    button:disabled,
    [type=button]:disabled,
    [type=reset]:disabled,
    [type=submit]:disabled {
        cursor: default;
    }

:-moz-focusring {
    outline: auto;
}

select:disabled {
    opacity: inherit;
}

option {
    padding: 0;
}

fieldset {
    margin: 0;
    padding: 0;
    min-width: 0;
}

legend {
    padding: 0;
}

progress {
    vertical-align: baseline;
}

textarea {
    overflow: auto;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto;
}

[type=search] {
    outline-offset: -2px;
}

    [type=search]::-webkit-search-decoration {
        -webkit-appearance: none;
    }

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit;
}

[type=number] {
    -moz-appearance: textfield;
}

label[for] {
    cursor: pointer;
}

details {
    display: block;
}

summary {
    display: list-item;
}

[contenteditable]:focus {
    outline: auto;
}

table {
    border-color: inherit;
    border-collapse: collapse;
}

caption {
    text-align: left;
}

td,
th {
    vertical-align: top;
    padding: 0;
}

th {
    text-align: left;
    font-weight: bold;
}

.text-primary-600 {
    color: var(--primary-600) !important;
}

.text-success-600 {
    color: var(--success-600) !important;
}

.text-success-main {
    color: var(--success-main);
}

.text-warning-main {
    color: var(--warning-main);
}

.text-danger-main {
    color: var(--danger-main);
}

.text-primary-light {
    color: var(--text-primary-light) !important;
}

.text-secondary-light {
    color: var(--text-secondary-light);
}

.text-black {
    color: var(--black) !important;
}

.hover-text-primary:hover, .btn.hover-text-primary:hover {
    color: var(--primary-600) !important;
}

.bg-primary-100 {
    background-color: var(--primary-100) !important;
}

.bg-primary-600 {
    background-color: var(--primary-600) !important;
}

.bg-danger-600 {
    background-color: var(--danger-600) !important;
}

.bg-success-100 {
    background-color: var(--success-100) !important;
}

.bg-success-600 {
    background-color: var(--success-600) !important;
}

.bg-warning-600 {
    background-color: var(--warning-600) !important;
}

.bg-info-600 {
    background-color: var(--info-600) !important;
}

.bg-purple {
    background-color: var(--purple) !important;
}

.bg-red {
    background-color: var(--red) !important;
}

.bg-yellow {
    background-color: var(--yellow) !important;
}

.bg-orange {
    background-color: var(--orange) !important;
}

.bg-base {
    background-color: var(--white) !important;
}

html[data-theme=dark] .bg-base-50 {
    background-color: rgba(255, 255, 255, 0.1) !important;
}

html[data-theme=dark] .bg-gradient-start-1 {
    background: linear-gradient(to right, rgba(230, 249, 255, 0.15), rgba(254, 255, 255, 0.1));
}

html[data-theme=dark] .bg-gradient-start-2 {
    background: linear-gradient(to right, rgba(247, 233, 255, 0.15), rgba(255, 254, 253, 0.1));
}

html[data-theme=dark] .bg-gradient-start-3 {
    background: linear-gradient(to right, rgba(230, 235, 255, 0.15), rgba(255, 255, 255, 0.1));
}

html[data-theme=dark] .bg-gradient-start-4 {
    background: linear-gradient(to right, rgba(232, 255, 245, 0.15), rgba(255, 255, 255, 0.1));
}

html[data-theme=dark] .bg-gradient-start-5 {
    background: linear-gradient(to right, rgba(255, 238, 238, 0.15), rgba(255, 252, 252, 0.1));
}

html[data-theme=dark] .bg-gradient-dark-start-1 {
    background: linear-gradient(261deg, rgba(255, 234, 244, 0.08) 2.07%, rgba(255, 226, 240, 0.15) 97.73%);
}

html[data-theme=dark] .bg-gradient-dark-start-2 {
    background: linear-gradient(262deg, rgba(236, 221, 255, 0.05) 2.45%, rgba(236, 221, 255, 0.15) 97.35%);
}

html[data-theme=dark] .bg-gradient-dark-start-3 {
    background: linear-gradient(262deg, rgba(235, 250, 255, 0.15) 4.01%, rgba(192, 240, 255, 0.15) 99.29%);
}

html[data-theme=dark] .bg-gradient-end-1 {
    background: linear-gradient(to right, rgba(255, 255, 255, 0.075), rgba(239, 244, 255, 0.125));
}

html[data-theme=dark] .bg-gradient-end-2 {
    background: linear-gradient(to right, rgba(255, 255, 255, 0.075), rgba(234, 255, 249, 0.125));
}

html[data-theme=dark] .bg-gradient-end-3 {
    background: linear-gradient(to right, rgba(255, 255, 255, 0.075), rgba(255, 245, 233, 0.125));
}

html[data-theme=dark] .bg-gradient-end-4 {
    background: linear-gradient(to right, rgba(255, 255, 255, 0.075), rgba(243, 238, 255, 0.125));
}

html[data-theme=dark] .bg-gradient-end-5 {
    background: linear-gradient(to right, rgba(255, 255, 255, 0.075), rgba(255, 242, 254, 0.125));
}

html[data-theme=dark] .bg-gradient-end-6 {
    background: linear-gradient(to right, rgba(255, 255, 255, 0.075), rgba(238, 251, 255, 0.125));
}

html[data-theme=dark] .bg-gradient-purple {
    background: linear-gradient(300deg, rgba(255, 233, 224, 0.1) 1.27%, rgba(239, 211, 255, 0.15) 98.89%);
}

html[data-theme=dark] .bg-gradient-primary {
    background: linear-gradient(299deg, rgba(215, 246, 255, 0.1) 1.03%, rgba(209, 222, 255, 0.15) 97.72%);
}

html[data-theme=dark] .bg-gradient-success {
    background: linear-gradient(299deg, rgba(236, 255, 247, 0.1) 1.76%, rgba(173, 247, 214, 0.15) 98.11%);
}

html[data-theme=dark] .bg-gradient-danger {
    background: linear-gradient(299deg, rgba(255, 239, 239, 0.1) 0.96%, rgba(255, 215, 215, 0.15) 98.97%);
}

html[data-theme=dark] .bg-danger-gradient-light {
    background: linear-gradient(90deg, rgba(247, 233, 255, 0.05) 0.12%, rgba(253, 248, 247, 0.1) 99.89%) !important;
}

html[data-theme=dark] .bg-white-gradient-light {
    background: linear-gradient(317deg, rgba(225, 225, 225, 0.05) 8.56%, rgba(255, 255, 255, 0.1) 91.49%) !important;
}

html[data-theme=dark] .bg-light-pink {
    background: var(--gradients-Colors-gradients-2, linear-gradient(90deg, rgba(247, 233, 255, 0.1) 0.12%, rgba(253, 248, 247, 0.05) 99.89%));
}

html[data-theme=dark] .gradient-deep-1 {
    background: var(--neutral-50);
}

html[data-theme=dark] .gradient-deep-2 {
    background: var(--neutral-50);
}

html[data-theme=dark] .gradient-deep-3 {
    background: var(--neutral-50);
}

html[data-theme=dark] .gradient-deep-4 {
    background: var(--neutral-50);
}

html[data-theme=dark] .gradient-deep-two-1 {
    background: var(--neutral-100);
    border-color: var(--border-color) !important;
}

html[data-theme=dark] .gradient-deep-two-2 {
    background: var(--neutral-100);
    border-color: var(--border-color) !important;
}

html[data-theme=dark] .gradient-deep-two-3 {
    background: var(--neutral-100);
    border-color: var(--border-color) !important;
}

html[data-theme=dark] .gradient-deep-two-4 {
    background: var(--neutral-100);
    border-color: var(--border-color) !important;
}

html[data-theme=dark] .dark-bg-neutral-200 {
    background-color: var(--neutral-200) !important;
}

html[data-theme=dark] .bg-blue-light {
    background-color: rgba(1, 52, 173, 0.4);
}

html[data-theme=dark] .bg-green-light {
    background-color: rgba(38, 161, 124, 0.4);
}

html[data-theme=dark] .bg-red-light {
    background-color: rgba(252, 86, 49, 0.4);
}

html[data-theme=dark] .bg-warning-light {
    background-color: rgba(255, 136, 0, 0.4);
}

html[data-theme=dark] .bg-blue-light-two {
    background-color: rgba(1, 52, 173, 0.1490196078);
}

html[data-theme=dark] .bg-green-light-two {
    background-color: rgba(38, 161, 124, 0.1490196078);
}

html[data-theme=dark] .bg-red-light-two {
    background-color: rgba(252, 86, 49, 0.1490196078);
}

html[data-theme=dark] .bg-warning-light-two {
    background-color: rgba(255, 136, 0, 0.1490196078);
}

[data-theme=dark] .gradient-bg-light-one, [data-theme=dark] .gradient-bg-light-two, [data-theme=dark] .gradient-bg-light-three, [data-theme=dark] .gradient-bg-light-four, [data-theme=dark] .gradient-bg-light-five, [data-theme=dark] .gradient-bg-light-six {
    background: linear-gradient(0deg, rgba(231, 245, 255, 0.1) 0%, rgba(252, 254, 255, 0.1) 100%);
}

[data-theme=dark] .br-white {
    border-color: #606266 !important;
}

.w-12-px {
    width: 0.75rem !important;
}

.w-48-px {
    width: 3rem !important;
}

@media (max-width: 1399px) {
    .max-w-740-px {
        max-width: 500px;
    }
}

@media (max-width: 991px) {
    .max-w-740-px {
        max-width: 350px;
    }
}

@media (max-width: 767px) {
    .max-w-740-px {
        max-width: 250px;
    }
}

.h-8-px {
    height: 0.5rem !important;
}

.h-48-px {
    height: 3rem !important;
}

@media (min-width: 1700px) {
    .row-cols-xxxl-5 > * {
        flex: 0 0 auto;
        width: 20%;
    }
}

@media (min-width: 1600px) {
    .col-xxxl-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-xxxl-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-xxxl-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-xxxl-3 {
        flex: 0 0 auto;
        width: 25%;
    }
}

@media (min-width: 425px) and (max-width: 575px) {
    .col-xs-6 {
        width: 50%;
    }
}

.height-200 .ql-editor {
    min-height: 200px;
}

@media (max-width: 1199px) {
    .countdown-item {
        width: 90px !important;
        height: 90px !important;
    }
}

@media (max-width: 767px) {
    .countdown-item {
        width: 80px !important;
        height: 80px !important;
    }
}

@media (max-width: 424px) {
    .countdown-item {
        width: 60px !important;
        height: 60px !important;
    }
}

.radius-8 {
    border-radius: 0.5rem;
    -webkit-border-radius: 0.5rem;
    -moz-border-radius: 0.5rem;
    -ms-border-radius: 0.5rem;
    -o-border-radius: 0.5rem;
}

h1, h2, h3, h4, h5, h6, h7, h8, h9 {
    color: var(--text-primary-light);
    font-weight: 600;
}

h1, .h1 {
    font-size: var(--h1) !important;
}

h2, .h2 {
    font-size: var(--h2) !important;
}

h3, .h3 {
    font-size: var(--h3) !important;
}

h4, .h4 {
    font-size: var(--h4) !important;
}

h5, .h5 {
    font-size: var(--h5) !important;
}

h6, .h6 {
    font-size: var(--h6) !important;
}

h7, .h7 {
    font-size: var(--h7) !important;
}

h8, .h8 {
    font-size: var(--h8) !important;
}

h9, .h9 {
    font-size: var(--h9) !important;
}

.text-xxl {
    font-size: var(--font-xxl) !important;
}

.text-xl {
    font-size: var(--font-xl) !important;
}

.text-lg {
    font-size: var(--font-lg) !important;
}

.text-md {
    font-size: var(--font-md) !important;
}

.text-sm {
    font-size: var(--font-sm) !important;
}

.text-xs {
    font-size: var(--font-xs) !important;
}

.btn.btn-xs-portal {
    --bs-btn-padding-y: 0.3rem;
    --bs-btn-padding-x: 0.65rem;
    --bs-btn-font-size: 0.8125rem;
    --bs-btn-line-height: 1.35;
}

.btn.portal-btn-excel-export {
    --bs-btn-color: #334155;
    --bs-btn-bg: #ffffff;
    --bs-btn-border-color: #cbd5e1;
    --bs-btn-hover-color: #0f172a;
    --bs-btn-hover-bg: #f8fafc;
    --bs-btn-hover-border-color: #94a3b8;
    --bs-btn-active-color: #0f172a;
    --bs-btn-active-bg: #f1f5f9;
    --bs-btn-active-border-color: #94a3b8;
    --bs-btn-disabled-color: #64748b;
    --bs-btn-disabled-bg: #ffffff;
    --bs-btn-disabled-border-color: #e2e8f0;
    color: var(--bs-btn-color);
    background-color: var(--bs-btn-bg);
    border-color: var(--bs-btn-border-color);
}

    .btn.portal-btn-excel-export:hover {
        color: var(--bs-btn-hover-color);
        background-color: var(--bs-btn-hover-bg);
        border-color: var(--bs-btn-hover-border-color);
    }

    .btn.portal-btn-excel-export:active,
    .btn.portal-btn-excel-export.active,
    .btn.portal-btn-excel-export.show {
        color: var(--bs-btn-active-color);
        background-color: var(--bs-btn-active-bg);
        border-color: var(--bs-btn-active-border-color);
    }

    .btn.portal-btn-excel-export:focus-visible {
        box-shadow: 0 0 0 0.2rem rgba(33, 115, 70, 0.2);
    }

    .btn.portal-btn-excel-export:disabled,
    .btn.portal-btn-excel-export.disabled {
        color: var(--bs-btn-disabled-color);
        background-color: var(--bs-btn-disabled-bg);
        border-color: var(--bs-btn-disabled-border-color);
    }

.portal-btn-excel-icon {
    color: #217346;
}

/* Excel export buttons without explicit <i> (e.g. asp:Button Text="Exportar Excel") */
.btn.portal-btn-excel-export:not(:has(.portal-btn-excel-icon))::before {
    display: inline-block;
    margin-right: 0.35rem;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f1c3";
    color: #217346;
    line-height: 1;
    vertical-align: -0.05em;
}

[data-theme="dark"] .btn.portal-btn-excel-export,
[data-bs-theme="dark"] .btn.portal-btn-excel-export {
    --bs-btn-color: #ecfdf5;
    --bs-btn-bg: rgba(52, 211, 153, 0.12);
    --bs-btn-border-color: rgba(52, 211, 153, 0.38);
    --bs-btn-hover-color: #ffffff;
    --bs-btn-hover-bg: rgba(52, 211, 153, 0.22);
    --bs-btn-hover-border-color: rgba(52, 211, 153, 0.55);
    --bs-btn-active-color: #ffffff;
    --bs-btn-active-bg: rgba(52, 211, 153, 0.28);
    --bs-btn-active-border-color: rgba(52, 211, 153, 0.62);
    --bs-btn-disabled-color: #9ca3af;
    --bs-btn-disabled-bg: rgba(31, 41, 55, 0.72);
    --bs-btn-disabled-border-color: rgba(75, 85, 99, 0.72);
    color: var(--bs-btn-color);
    background-color: var(--bs-btn-bg);
    border-color: var(--bs-btn-border-color);
}

    [data-theme="dark"] .btn.portal-btn-excel-export:hover,
    [data-bs-theme="dark"] .btn.portal-btn-excel-export:hover {
        color: var(--bs-btn-hover-color);
        background-color: var(--bs-btn-hover-bg);
        border-color: var(--bs-btn-hover-border-color);
    }

    [data-theme="dark"] .btn.portal-btn-excel-export:active,
    [data-theme="dark"] .btn.portal-btn-excel-export.active,
    [data-theme="dark"] .btn.portal-btn-excel-export.show,
    [data-bs-theme="dark"] .btn.portal-btn-excel-export:active,
    [data-bs-theme="dark"] .btn.portal-btn-excel-export.active,
    [data-bs-theme="dark"] .btn.portal-btn-excel-export.show {
        color: var(--bs-btn-active-color);
        background-color: var(--bs-btn-active-bg);
        border-color: var(--bs-btn-active-border-color);
    }

    [data-theme="dark"] .btn.portal-btn-excel-export:focus-visible,
    [data-bs-theme="dark"] .btn.portal-btn-excel-export:focus-visible {
        box-shadow: 0 0 0 0.2rem rgba(52, 211, 153, 0.28);
    }

    [data-theme="dark"] .btn.portal-btn-excel-export:disabled,
    [data-theme="dark"] .btn.portal-btn-excel-export.disabled,
    [data-bs-theme="dark"] .btn.portal-btn-excel-export:disabled,
    [data-bs-theme="dark"] .btn.portal-btn-excel-export.disabled {
        color: var(--bs-btn-disabled-color);
        background-color: var(--bs-btn-disabled-bg);
        border-color: var(--bs-btn-disabled-border-color);
    }

[data-theme="dark"] .portal-btn-excel-icon,
[data-bs-theme="dark"] .portal-btn-excel-icon {
    color: #34d399;
}

[data-theme="dark"] .btn.portal-btn-excel-export .portal-btn-excel-icon,
[data-bs-theme="dark"] .btn.portal-btn-excel-export .portal-btn-excel-icon {
    color: #6ee7b7;
}

[data-theme="dark"] .btn.portal-btn-excel-export:hover .portal-btn-excel-icon,
[data-theme="dark"] .btn.portal-btn-excel-export:active .portal-btn-excel-icon,
[data-theme="dark"] .btn.portal-btn-excel-export.active .portal-btn-excel-icon,
[data-bs-theme="dark"] .btn.portal-btn-excel-export:hover .portal-btn-excel-icon,
[data-bs-theme="dark"] .btn.portal-btn-excel-export:active .portal-btn-excel-icon,
[data-bs-theme="dark"] .btn.portal-btn-excel-export.active .portal-btn-excel-icon {
    color: #a7f3d0;
}

[data-theme="dark"] .btn.portal-btn-excel-export:disabled .portal-btn-excel-icon,
[data-theme="dark"] .btn.portal-btn-excel-export.disabled .portal-btn-excel-icon,
[data-bs-theme="dark"] .btn.portal-btn-excel-export:disabled .portal-btn-excel-icon,
[data-bs-theme="dark"] .btn.portal-btn-excel-export.disabled .portal-btn-excel-icon {
    color: #6b7280;
}

[data-theme="dark"] .dropdown-item .portal-btn-excel-icon,
[data-bs-theme="dark"] .dropdown-item .portal-btn-excel-icon {
    color: #34d399;
}

[data-theme="dark"] .btn.portal-btn-excel-export:not(:has(.portal-btn-excel-icon))::before,
[data-bs-theme="dark"] .btn.portal-btn-excel-export:not(:has(.portal-btn-excel-icon))::before {
    color: #34d399;
}

[data-theme="dark"] .dropdown-item:hover .portal-btn-excel-icon,
[data-theme="dark"] .dropdown-item:focus .portal-btn-excel-icon,
[data-bs-theme="dark"] .dropdown-item:hover .portal-btn-excel-icon,
[data-bs-theme="dark"] .dropdown-item:focus .portal-btn-excel-icon {
    color: #6ee7b7;
}

.btn.portal-btn-pdf-export {
    --bs-btn-color: #334155;
    --bs-btn-bg: #ffffff;
    --bs-btn-border-color: #cbd5e1;
    --bs-btn-hover-color: #0f172a;
    --bs-btn-hover-bg: #f8fafc;
    --bs-btn-hover-border-color: #94a3b8;
    --bs-btn-active-color: #0f172a;
    --bs-btn-active-bg: #f1f5f9;
    --bs-btn-active-border-color: #94a3b8;
    --bs-btn-disabled-color: #64748b;
    --bs-btn-disabled-bg: #ffffff;
    --bs-btn-disabled-border-color: #e2e8f0;
    color: var(--bs-btn-color);
    background-color: var(--bs-btn-bg);
    border-color: var(--bs-btn-border-color);
}

    .btn.portal-btn-pdf-export:hover {
        color: var(--bs-btn-hover-color);
        background-color: var(--bs-btn-hover-bg);
        border-color: var(--bs-btn-hover-border-color);
    }

    .btn.portal-btn-pdf-export:active,
    .btn.portal-btn-pdf-export.active,
    .btn.portal-btn-pdf-export.show {
        color: var(--bs-btn-active-color);
        background-color: var(--bs-btn-active-bg);
        border-color: var(--bs-btn-active-border-color);
    }

    .btn.portal-btn-pdf-export:focus-visible {
        box-shadow: 0 0 0 0.2rem rgba(220, 38, 38, 0.18);
    }

    .btn.portal-btn-pdf-export:disabled,
    .btn.portal-btn-pdf-export.disabled {
        color: var(--bs-btn-disabled-color);
        background-color: var(--bs-btn-disabled-bg);
        border-color: var(--bs-btn-disabled-border-color);
    }

.portal-btn-pdf-icon {
    color: #dc2626;
}

/* PDF export buttons without explicit <i> (e.g. asp:Button Text="Exportar PDF") */
.btn.portal-btn-pdf-export:not(:has(.portal-btn-pdf-icon))::before {
    display: inline-block;
    margin-right: 0.35rem;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f1c1";
    color: #dc2626;
    line-height: 1;
    vertical-align: -0.05em;
}

[data-theme="dark"] .btn.portal-btn-pdf-export,
[data-bs-theme="dark"] .btn.portal-btn-pdf-export {
    --bs-btn-color: #fecaca;
    --bs-btn-bg: rgba(248, 113, 113, 0.12);
    --bs-btn-border-color: rgba(248, 113, 113, 0.38);
    --bs-btn-hover-color: #ffffff;
    --bs-btn-hover-bg: rgba(248, 113, 113, 0.22);
    --bs-btn-hover-border-color: rgba(248, 113, 113, 0.55);
    --bs-btn-active-color: #ffffff;
    --bs-btn-active-bg: rgba(248, 113, 113, 0.28);
    --bs-btn-active-border-color: rgba(248, 113, 113, 0.62);
    --bs-btn-disabled-color: #9ca3af;
    --bs-btn-disabled-bg: rgba(31, 41, 55, 0.72);
    --bs-btn-disabled-border-color: rgba(75, 85, 99, 0.72);
    color: var(--bs-btn-color);
    background-color: var(--bs-btn-bg);
    border-color: var(--bs-btn-border-color);
}

    [data-theme="dark"] .btn.portal-btn-pdf-export:hover,
    [data-bs-theme="dark"] .btn.portal-btn-pdf-export:hover {
        color: var(--bs-btn-hover-color);
        background-color: var(--bs-btn-hover-bg);
        border-color: var(--bs-btn-hover-border-color);
    }

    [data-theme="dark"] .btn.portal-btn-pdf-export:active,
    [data-theme="dark"] .btn.portal-btn-pdf-export.active,
    [data-theme="dark"] .btn.portal-btn-pdf-export.show,
    [data-bs-theme="dark"] .btn.portal-btn-pdf-export:active,
    [data-bs-theme="dark"] .btn.portal-btn-pdf-export.active,
    [data-bs-theme="dark"] .btn.portal-btn-pdf-export.show {
        color: var(--bs-btn-active-color);
        background-color: var(--bs-btn-active-bg);
        border-color: var(--bs-btn-active-border-color);
    }

    [data-theme="dark"] .btn.portal-btn-pdf-export:focus-visible,
    [data-bs-theme="dark"] .btn.portal-btn-pdf-export:focus-visible {
        box-shadow: 0 0 0 0.2rem rgba(248, 113, 113, 0.28);
    }

    [data-theme="dark"] .btn.portal-btn-pdf-export:disabled,
    [data-theme="dark"] .btn.portal-btn-pdf-export.disabled,
    [data-bs-theme="dark"] .btn.portal-btn-pdf-export:disabled,
    [data-bs-theme="dark"] .btn.portal-btn-pdf-export.disabled {
        color: var(--bs-btn-disabled-color);
        background-color: var(--bs-btn-disabled-bg);
        border-color: var(--bs-btn-disabled-border-color);
    }

[data-theme="dark"] .portal-btn-pdf-icon,
[data-bs-theme="dark"] .portal-btn-pdf-icon {
    color: #f87171;
}

[data-theme="dark"] .btn.portal-btn-pdf-export .portal-btn-pdf-icon,
[data-bs-theme="dark"] .btn.portal-btn-pdf-export .portal-btn-pdf-icon {
    color: #fca5a5;
}

[data-theme="dark"] .btn.portal-btn-pdf-export:hover .portal-btn-pdf-icon,
[data-theme="dark"] .btn.portal-btn-pdf-export:active .portal-btn-pdf-icon,
[data-theme="dark"] .btn.portal-btn-pdf-export.active .portal-btn-pdf-icon,
[data-bs-theme="dark"] .btn.portal-btn-pdf-export:hover .portal-btn-pdf-icon,
[data-bs-theme="dark"] .btn.portal-btn-pdf-export:active .portal-btn-pdf-icon,
[data-bs-theme="dark"] .btn.portal-btn-pdf-export.active .portal-btn-pdf-icon {
    color: #fecaca;
}

[data-theme="dark"] .btn.portal-btn-pdf-export:disabled .portal-btn-pdf-icon,
[data-theme="dark"] .btn.portal-btn-pdf-export.disabled .portal-btn-pdf-icon,
[data-bs-theme="dark"] .btn.portal-btn-pdf-export:disabled .portal-btn-pdf-icon,
[data-bs-theme="dark"] .btn.portal-btn-pdf-export.disabled .portal-btn-pdf-icon {
    color: #6b7280;
}

[data-theme="dark"] .dropdown-item .portal-btn-pdf-icon,
[data-bs-theme="dark"] .dropdown-item .portal-btn-pdf-icon {
    color: #f87171;
}

[data-theme="dark"] .btn.portal-btn-pdf-export:not(:has(.portal-btn-pdf-icon))::before,
[data-bs-theme="dark"] .btn.portal-btn-pdf-export:not(:has(.portal-btn-pdf-icon))::before {
    color: #f87171;
}

[data-theme="dark"] .dropdown-item:hover .portal-btn-pdf-icon,
[data-theme="dark"] .dropdown-item:focus .portal-btn-pdf-icon,
[data-bs-theme="dark"] .dropdown-item:hover .portal-btn-pdf-icon,
[data-bs-theme="dark"] .dropdown-item:focus .portal-btn-pdf-icon {
    color: #fca5a5;
}

.text-start {
    text-align: start !important;
}

.text-end {
    text-align: end !important;
}

.border {
    border: 1px solid var(--border-color) !important;
}

.border-start {
    border-inline-start: 1px solid var(--border-color) !important;
}

.border-end {
    border-inline-end: 1px solid var(--border-color) !important;
}

.border-bottom {
    border-bottom: 1px solid var(--border-color) !important;
}

.border-top-0 {
    border-top: 0 !important;
}

.border-bottom-0 {
    border-bottom: 0 !important;
}

.border-inline-start {
    border-inline-start: 3px solid #ff0000;
}

.border-3 {
    border-width: 3px !important;
}

.cursor-pointer {
    cursor: pointer;
}

.gradient-overlay.top-0::before {
    transform: rotate(180deg);
}

[dir=rtl] .start-0 {
    left: auto !important;
    right: 0;
}

[dir=rtl] .end-0 {
    right: auto !important;
    left: 0;
}

.ui-sortable-handle {
    cursor: move !important;
}

.ui-sortable-helper {
    box-shadow: 0px 5px 20px 3px var(--neutral-300);
    box-shadow: 0 4px 30px 0 rgba(4, 6, 15, 0.5) !important;
}

.ui-sortable-placeholder {
    background-color: var(--neutral-100) !important;
    visibility: visible !important;
    padding: 100px !important;
    border: 1px dashed var(--neutral-400);
}

#taskImagePreview {
    display: none;
    margin-top: 10px;
    max-width: 100%;
}

.btn-primary-600 {
    background-color: var(--primary-600);
    color: #fff;
    border-color: var(--primary-600);
}

    .btn-primary-600:hover {
        background-color: var(--primary-700);
        color: #fff !important;
        border-color: var(--primary-700);
    }

    .btn-primary-600:active, .btn-primary-600:focus {
        background-color: var(--primary-800) !important;
        color: #fff !important;
        border-color: var(--primary-800) !important;
    }

.btn-outline-primary-600 {
    background-color: transparent !important;
    color: var(--primary-600) !important;
    border-color: var(--primary-600) !important;
}

    .btn-outline-primary-600:hover {
        background-color: var(--primary-600) !important;
        color: #fff !important;
        border-color: var(--primary-600) !important;
    }

    .btn-outline-primary-600:active, .btn-outline-primary-600:focus {
        background-color: var(--primary-800) !important;
        color: #fff !important;
        border-color: var(--primary-800) !important;
    }

.basic-table thead th {
    background-color: var(--neutral-50);
    color: var(--text-primary-light);
    font-weight: 600;
    border-bottom: 1px solid var(--neutral-200);
    padding: 0.8125rem 1.5rem;
}

.basic-table tbody tr:last-child td {
    padding-bottom: 0;
}

.basic-table tbody td {
    background-color: var(--white);
    color: var(--text-secondary-light);
    border: none;
    padding: 0.8125rem 1.5rem;
}

.bordered-table thead tr th.bg-transparent {
    background-color: transparent !important;
}

.table-responsive .table,
.dashboard-main-body .table,
.table.table-hover,
.table.table-striped,
.table.basic-table,
.table.bordered-table,
.table.striped-table {
    font-size: 0.75rem !important;
    line-height: 1.25 !important;
    letter-spacing: -0.02em;
}

    .table-responsive .table thead th,
    .dashboard-main-body .table thead th {
        font-size: 0.7rem !important;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 0.02em;
    }

.basic-table thead th,
.basic-table tbody td {
    padding: 0.2rem 0.35rem !important;
}

.dataTables_wrapper .table,
.dataTables_wrapper table.dataTable {
    font-size: 0.75rem !important;
    line-height: 1.25 !important;
    letter-spacing: -0.02em;
}

    .dataTables_wrapper .table td,
    .dataTables_wrapper .table th,
    .dataTables_wrapper table.dataTable td,
    .dataTables_wrapper table.dataTable th {
        padding: 0.2rem 0.35rem !important;
    }

.dataTable tbody tr:last-child td {
    border-bottom: 0 !important;
}

.basic-data-table .dt-layout-row {
    padding-bottom: 0.875rem;
}

    .basic-data-table .dt-layout-row select {
        -webkit-appearance: auto;
        appearance: auto;
        color: var(--text-secondary-light) !important;
        height: 2.5rem;
        border: 1px solid var(--input-form-light) !important;
        border-radius: 10px !important;
        -webkit-border-radius: 10px !important;
        -moz-border-radius: 10px !important;
        -ms-border-radius: 10px !important;
        -o-border-radius: 10px !important;
        padding: 0.625rem 0.3125rem 0.625rem 0.625rem !important;
    }

    .basic-data-table .dt-layout-row .dt-layout-cell {
        padding: 0;
    }

    .basic-data-table .dt-layout-row .dt-length {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.9375rem;
    }

    .basic-data-table .dt-layout-row .dt-search {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.9375rem;
        justify-content: flex-end;
    }

        .basic-data-table .dt-layout-row .dt-search .dt-input {
            color: var(--text-secondary-light) !important;
            height: 2.5rem;
            border: 1px solid var(--input-form-light) !important;
            border-radius: 10px !important;
            -webkit-border-radius: 10px !important;
            -moz-border-radius: 10px !important;
            -ms-border-radius: 10px !important;
            -o-border-radius: 10px !important;
        }

    .basic-data-table .dt-layout-row div, .basic-data-table .dt-layout-row label {
        color: var(--text-secondary-light);
    }

div.dt-container .dt-paging {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.625rem;
}

    div.dt-container .dt-paging .dt-paging-button {
        width: 2rem;
        height: 2rem;
        padding: 0 !important;
    }

        div.dt-container .dt-paging .dt-paging-button:not(.first, .previous, .next, .last) {
            color: var(--text-secondary-light) !important;
            border-radius: 4px !important;
            -webkit-border-radius: 4px !important;
            -moz-border-radius: 4px !important;
            -ms-border-radius: 4px !important;
            -o-border-radius: 4px !important;
            background: var(--neutral-200) !important;
            font-weight: 500;
            border: none !important;
        }

        div.dt-container .dt-paging .dt-paging-button:focus {
            border: none !important;
            box-shadow: none !important;
        }

        div.dt-container .dt-paging .dt-paging-button:hover, div.dt-container .dt-paging .dt-paging-button.current {
            background: var(--primary-600) !important;
            color: #fff !important;
        }

            div.dt-container .dt-paging .dt-paging-button:hover:hover, div.dt-container .dt-paging .dt-paging-button.current:hover {
                color: #fff !important;
            }

.form-control {
    font-size: 0.8rem !important;
}

.dashboard-main-body .page-log-mais-rpa-filters .form-control.form-control-sm {
    font-size: 0.875rem !important;
    line-height: 1.5;
    min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
}

.form-control[type=file] {
    line-height: 1;
}

.form-control[readonly] {
    background-color: var(--neutral-50);
}

.invoive-form-control {
    width: 130px;
    border-bottom: 1px solid var(--input-form-light);
}

.form-label {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary-light);
}

.input-group-text {
    color: var(--text-secondary-light);
}

.form-control.is-invalid, .was-validated .form-control:invalid {
    border-color: var(--danger-main);
}

.alert.alert-modern {
    position: relative;
    padding: 0.5rem 2.25rem 0.5rem 0.75rem;
    border-radius: 8px;
    border-width: 1px;
    border-inline-start-width: 4px;
    font-size: 0.8125rem;
    line-height: 1.45;
    text-align: left;
}

    .alert.alert-modern .alert-modern-body {
        padding-right: 0;
    }

    .alert.alert-modern .alert-modern-label {
        font-weight: 600;
    }

    .alert.alert-modern.alert-dismissible .btn-close {
        position: absolute;
        top: 0.375rem;
        right: 0.375rem;
        padding: 0.2rem;
    }

[data-theme="dark"] .alert.alert-modern, [data-bs-theme="dark"] .alert.alert-modern {
    border-color: rgba(255, 255, 255, 0.1);
}

.icon-field .icon {
    position: absolute;
    top: 12px;
    inset-inline-start: 0;
    width: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.25rem;
    color: var(--text-secondary-light);
}

.icon-field .form-control {
    padding-inline-start: 2.5rem;
}

    .icon-field .form-control.form-control-lg ~ .icon {
        top: 18px;
    }

    .icon-field .form-control.form-control-sm ~ .icon {
        top: 10px;
    }

.form-check:not(.form-switch) .form-check-input[type=checkbox],
.form-check:not(.form-switch) .form-check-input input[type=checkbox] {
    --cb-size: 0.9375rem;
    width: var(--cb-size);
    height: var(--cb-size);
    margin-top: 0;
    border: 2px solid #adb5bd;
    border-radius: 3px;
    background-color: #fff;
    background-size: 85%;
    background-position: center;
    transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
    flex-shrink: 0;
}

    .form-check:not(.form-switch) .form-check-input[type=checkbox]:hover,
    .form-check:not(.form-switch) .form-check-input input[type=checkbox]:hover {
        border-color: #0056E4;
    }

    .form-check:not(.form-switch) .form-check-input[type=checkbox]:focus,
    .form-check:not(.form-switch) .form-check-input input[type=checkbox]:focus {
        border-color: #0056E4;
        box-shadow: 0 0 0 3px rgba(0, 86, 228, 0.2);
        outline: 0;
    }

    .form-check:not(.form-switch) .form-check-input[type=checkbox]:checked,
    .form-check:not(.form-switch) .form-check-input input[type=checkbox]:checked {
        background-color: #0056E4;
        border-color: #0056E4;
        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='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M3 8l3 3 6-6'/%3e%3c/svg%3e");
    }

        .form-check:not(.form-switch) .form-check-input[type=checkbox]:checked:hover,
        .form-check:not(.form-switch) .form-check-input input[type=checkbox]:checked:hover {
            background-color: #0046b8;
            border-color: #0046b8;
        }

    .form-check:not(.form-switch) .form-check-input[type=checkbox]:disabled,
    .form-check:not(.form-switch) .form-check-input[type=checkbox][disabled],
    .form-check:not(.form-switch) .form-check-input input[type=checkbox]:disabled,
    .form-check:not(.form-switch) .form-check-input input[type=checkbox][disabled] {
        opacity: 0.6;
        cursor: not-allowed;
    }

        .form-check:not(.form-switch) .form-check-input[type=checkbox]:disabled:hover,
        .form-check:not(.form-switch) .form-check-input[type=checkbox][disabled]:hover,
        .form-check:not(.form-switch) .form-check-input input[type=checkbox]:disabled:hover,
        .form-check:not(.form-switch) .form-check-input input[type=checkbox][disabled]:hover {
            border-color: #adb5bd;
        }

.form-check .form-check-input {
    margin-left: 0rem !important;
}

.form-check-reverse .form-check-input {
    margin-right: 0rem !important;
}

.form-check:not(.form-switch) {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-height: 1.5rem;
    padding-left: 0;
}

    .form-check:not(.form-switch) .form-check-input[type=checkbox],
    .form-check:not(.form-switch) .form-check-input input[type=checkbox] {
        margin-left: 0;
        margin-right: 0;
    }

    .form-check:not(.form-switch) .form-check-input:has(input[type=checkbox]) {
        display: inline-flex;
        flex-shrink: 0;
        align-items: center;
        border: none !important;
        background: none !important;
        background-color: transparent !important;
        background-image: none !important;
        width: auto !important;
        height: auto !important;
        padding: 0 !important;
        margin: 0 !important;
        box-shadow: none !important;
        min-width: 0 !important;
        min-height: 0 !important;
        -webkit-appearance: none !important;
        appearance: none !important;
    }

    .form-check:not(.form-switch) .form-check-label {
        padding-top: 0;
        line-height: 0.4;
        cursor: pointer;
        user-select: none;
        font-size: 0.7rem !important;
    }

[data-theme="dark"] .form-check:not(.form-switch) .form-check-input[type=checkbox], [data-bs-theme="dark"] .form-check:not(.form-switch) .form-check-input[type=checkbox], [data-theme="dark"] .form-check:not(.form-switch) .form-check-input input[type=checkbox], [data-bs-theme="dark"] .form-check:not(.form-switch) .form-check-input input[type=checkbox] {
    border-color: #4b5563;
    background-color: #374151;
}

    [data-theme="dark"] .form-check:not(.form-switch) .form-check-input[type=checkbox]:hover,
    [data-bs-theme="dark"] .form-check:not(.form-switch) .form-check-input[type=checkbox]:hover,
    [data-theme="dark"] .form-check:not(.form-switch) .form-check-input input[type=checkbox]:hover,
    [data-bs-theme="dark"] .form-check:not(.form-switch) .form-check-input input[type=checkbox]:hover {
        border-color: #60a5fa;
    }

    [data-theme="dark"] .form-check:not(.form-switch) .form-check-input[type=checkbox]:focus,
    [data-bs-theme="dark"] .form-check:not(.form-switch) .form-check-input[type=checkbox]:focus,
    [data-theme="dark"] .form-check:not(.form-switch) .form-check-input input[type=checkbox]:focus,
    [data-bs-theme="dark"] .form-check:not(.form-switch) .form-check-input input[type=checkbox]:focus {
        border-color: #60a5fa;
        box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.25);
    }

    [data-theme="dark"] .form-check:not(.form-switch) .form-check-input[type=checkbox]:checked,
    [data-bs-theme="dark"] .form-check:not(.form-switch) .form-check-input[type=checkbox]:checked,
    [data-theme="dark"] .form-check:not(.form-switch) .form-check-input input[type=checkbox]:checked,
    [data-bs-theme="dark"] .form-check:not(.form-switch) .form-check-input input[type=checkbox]:checked {
        background-color: #3b82f6;
        border-color: #3b82f6;
    }

        [data-theme="dark"] .form-check:not(.form-switch) .form-check-input[type=checkbox]:checked:hover,
        [data-bs-theme="dark"] .form-check:not(.form-switch) .form-check-input[type=checkbox]:checked:hover,
        [data-theme="dark"] .form-check:not(.form-switch) .form-check-input input[type=checkbox]:checked:hover,
        [data-bs-theme="dark"] .form-check:not(.form-switch) .form-check-input input[type=checkbox]:checked:hover {
            background-color: #60a5fa;
            border-color: #60a5fa;
        }

.checked-primary .form-check-input:checked[type=radio] {
    border-color: var(--primary-600);
}

.checked-primary .form-check-input:checked::before {
    background-color: var(--primary-600);
}

.checked-primary .form-check-input:checked ~ label {
    color: var(--primary-600) !important;
}

.checked-success .form-check-input:checked[type=radio] {
    border-color: var(--success-600);
}

.checked-success .form-check-input:checked::before {
    background-color: var(--success-600);
}

.checked-success .form-check-input:checked ~ label {
    color: var(--success-600) !important;
}

.checked-warning .form-check-input:checked[type=radio] {
    border-color: var(--warning-600);
}

.checked-warning .form-check-input:checked::before {
    background-color: var(--warning-600);
}

.checked-warning .form-check-input:checked ~ label {
    color: var(--warning-600) !important;
}

.checked-danger .form-check-input:checked[type=radio] {
    border-color: var(--danger-600);
}

.checked-danger .form-check-input:checked::before {
    background-color: var(--danger-600);
}

.checked-danger .form-check-input:checked ~ label {
    color: var(--danger-600) !important;
}

.checked-info .form-check-input:checked[type=radio] {
    border-color: var(--info-600);
}

.checked-info .form-check-input:checked::before {
    background-color: var(--info-600);
}

.checked-info .form-check-input:checked ~ label {
    color: var(--info-600) !important;
}

.checked-secondary .form-check-input:checked[type=radio] {
    border-color: var(--lilac-600);
}

.checked-secondary .form-check-input:checked::before {
    background-color: var(--lilac-600);
}

.checked-secondary .form-check-input:checked ~ label {
    color: var(--lilac-600) !important;
}

.checked-dark .form-check-input:checked[type=radio] {
    border-color: var(--neutral-600);
}

.checked-dark .form-check-input:checked::before {
    background-color: var(--neutral-900);
}

.checked-dark .form-check-input:checked ~ label {
    color: var(--neutral-900) !important;
}

.form-switch .form-check-input {
    box-shadow: none !important;
    margin: 0;
    position: relative;
    background-color: var(--neutral-400);
    border: 0;
    background-image: none !important;
    width: 36px;
    height: 20px;
}

    .form-switch .form-check-input:checked {
        background-color: var(--primary-600);
    }

        .form-switch .form-check-input:checked::before {
            left: calc(100% - 18px);
            transition: 0.2s linear;
        }

        .form-switch .form-check-input:checked ~ .form-check-label {
            color: var(--text-primary-light) !important;
        }

    .form-switch .form-check-input::before {
        position: absolute;
        content: "";
        width: 16px;
        height: 16px;
        background: #fff;
        border-radius: 50%;
        top: 50%;
        transform: translateY(-50%);
        left: 2px;
        transition: 0.2s linear;
    }

.switch-primary .form-check-input:checked {
    background-color: var(--primary-600) !important;
}

    .switch-primary .form-check-input:checked ~ .form-check-label {
        color: var(--primary-600) !important;
    }

.switch-info .form-check-input:checked {
    background-color: var(--info-600) !important;
}

    .switch-info .form-check-input:checked ~ .form-check-label {
        color: var(--info-600) !important;
    }

.switch-success .form-check-input:checked {
    background-color: var(--success-600) !important;
}

    .switch-success .form-check-input:checked ~ .form-check-label {
        color: var(--success-600) !important;
    }

.switch-danger .form-check-input:checked {
    background-color: var(--danger-600) !important;
}

    .switch-danger .form-check-input:checked ~ .form-check-label {
        color: var(--danger-600) !important;
    }

.switch-warning .form-check-input:checked {
    background-color: var(--warning-600) !important;
}

    .switch-warning .form-check-input:checked ~ .form-check-label {
        color: var(--warning-600) !important;
    }

.switch-dark .form-check-input:checked {
    background-color: var(--neutral-900) !important;
}

    .switch-dark .form-check-input:checked ~ .form-check-label {
        color: var(--neutral-900) !important;
    }

.switch-purple .form-check-input:checked {
    background-color: var(--lilac-600) !important;
}

    .switch-purple .form-check-input:checked ~ .form-check-label {
        color: var(--lilac-600) !important;
    }

.btn-check:checked + .btn {
    color: #fff !important;
}

.btn-check:checked + .btn-outline-primary-600 {
    background-color: var(--primary-600) !important;
    border-color: var(--primary-600) !important;
}

.form-mobile-field .form-select {
    width: auto;
    position: absolute;
    top: 0;
    inset-inline-start: 0;
    border: 0;
    background-color: transparent;
}

.form-mobile-field .form-control {
    padding-inline-start: 4.375rem;
}

select option {
    background-color: var(--white);
}

.was-validated .form-mobile-field .form-control {
    padding-inline-start: 5.9375rem;
}

[data-theme=dark] .form-select {
    background-image: url(../images/arrow-down.png);
    background-size: 11px 7px;
    background-repeat: no-repeat;
}

.accordion .accordion-item {
    border: 1px solid var(--bs-border-color) !important;
    background-color: var(--bs-body-bg) !important;
    border-radius: 12px;
    overflow: hidden;
    padding: 5px;
    margin-bottom: 5px !important;
    box-shadow: 0px 4px 30px 0px rgba(46, 45, 116, 0.05);
}

    .accordion .accordion-item:last-child {
        margin-bottom: 0;
    }

.accordion .accordion-body {
    background-color: transparent;
    padding: 0;
    padding-top: 8px;
    color: var(--bs-body-color);
}

/* Accordion toggle: reserve end padding for the circular +/- control (::after). Do not rely on px-* utilities on the button — they overwrite padding-inline-end and cause label/chevron overlap in narrow columns. */
.accordion .accordion-header .accordion-button {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.35rem;
    width: 100%;
    box-sizing: border-box;
    background: transparent;
    padding-block: 0.5rem !important;
    padding-inline-start: 0.5rem !important;
    padding-inline-end: 4.25rem !important;
}

    .accordion .accordion-header .accordion-button > .portal-accordion-toggle__label,
    .accordion .accordion-header .accordion-button > *:first-child:last-child {
        flex: 1 1 auto;
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .accordion .accordion-header .accordion-button > .portal-accordion-toggle__suffix,
    .accordion .accordion-header .accordion-button > .flex-shrink-0 {
        flex: 0 0 auto;
        overflow: visible;
        white-space: nowrap;
    }

    .accordion .accordion-header .accordion-button::after {
        background-image: none;
    }

    .accordion .accordion-header .accordion-button:focus {
        box-shadow: none;
    }

    .accordion .accordion-header .accordion-button:not(.collapsed) {
        box-shadow: none;
    }

        .accordion .accordion-header .accordion-button:not(.collapsed)::after {
            background-image: none;
            color: var(--primary-600);
        }

    .accordion .accordion-header .accordion-button[aria-expanded=true]::after,
    .accordion .accordion-header .accordion-button[aria-expanded=false]::after {
        content: "\f1af";
        font-family: remixicon;
        position: absolute;
        inset-inline-end: 0.5rem;
        top: 50%;
        transform: translateY(-50%);
        z-index: 2;
        height: 24px;
        width: 24px;
        border: 2px solid var(--primary-600);
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 1rem;
        border-radius: 50%;
        line-height: 1;
        color: var(--primary-600);
        pointer-events: none;
    }

    .accordion .accordion-header .accordion-button[aria-expanded=false]::after {
        content: "\ea13";
    }

@media (max-width: 575.98px) {
    .accordion .accordion-header .accordion-button {
        padding-inline-end: 3.5rem !important;
    }
}

.bordered-tab .nav-link {
    background-color: transparent !important;
    padding: 16px 24px;
    border-radius: 0;
    font-weight: 600;
    color: var(--text-secondary-light);
    position: relative;
}

    .bordered-tab .nav-link::before {
        position: absolute;
        content: "";
        width: 0%;
        height: 2px;
        left: 50%;
        bottom: -1px;
        transform: translateX(-50%);
        background-color: var(--primary-600);
        transition: 0.2s linear;
    }

    .bordered-tab .nav-link.active {
        color: var(--primary-600);
    }

        .bordered-tab .nav-link.active::before {
            width: 100%;
        }

.pill-tab .nav-link.active {
    background-color: var(--primary-600);
}

.border-gradient-tab .nav-link {
    font-weight: 600;
    color: var(--text-secondary-light) !important;
    padding: 10px 16px;
    background-color: transparent !important;
    position: relative;
}

    .border-gradient-tab .nav-link.active {
        color: var(--text-primary-light) !important;
    }

        .border-gradient-tab .nav-link.active::before {
            visibility: visible;
            opacity: 1;
        }

        .border-gradient-tab .nav-link.active .notification-alert {
            background-color: var(--primary-600) !important;
            color: #fff !important;
        }

    .border-gradient-tab .nav-link::before {
        position: absolute;
        content: "";
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        border-top: 1px solid var(--primary-600);
        background: linear-gradient(180deg, rgba(72, 127, 255, 0.12) 0%, rgba(72, 127, 255, 0.03) 100%);
        visibility: hidden;
        opacity: 0;
        transition: 0.2s linear;
    }

.focus-tab .nav-link.active {
    background-color: var(--primary-50);
    color: var(--primary-600);
}

.button-tab .nav-link.active {
    background-color: var(--primary-600);
    border-color: var(--primary-600) !important;
    color: #fff !important;
}

.active-text-tab.nav-pills .nav-link.active {
    background-color: transparent !important;
    color: var(--primary-600) !important;
}

.apexcharts-tooltip-style-1 .apexcharts-tooltip {
    padding: 0.75rem 0.5rem;
    background-color: var();
    border: 1px solid var(--input-bg);
    background-color: var(--white);
    box-shadow: 0 12px 20px rgba(0, 0, 0, 0.1);
    border-radius: 0.5rem;
    -webkit-border-radius: 0.5rem;
    -moz-border-radius: 0.5rem;
    -ms-border-radius: 0.5rem;
    -o-border-radius: 0.5rem;
}

.apexcharts-tooltip-style-1 .apexcharts-tooltip-title {
    padding: 0 !important;
    background-color: transparent !important;
    font-size: 0.875rem !important;
    color: var(--text-primary-light) !important;
    font-weight: 600 !important;
    border: none !important;
}

.apexcharts-tooltip-style-1 .apexcharts-tooltip-series-group {
    padding: 0;
    display: flex;
    align-items: center;
    padding: 0 !important;
}

    .apexcharts-tooltip-style-1 .apexcharts-tooltip-series-group .apexcharts-tooltip-y-group {
        padding: 0 !important;
    }

    .apexcharts-tooltip-style-1 .apexcharts-tooltip-series-group .apexcharts-tooltip-z-group {
        display: none !important;
    }

.remove-tooltip-title .apexcharts-tooltip-title {
    display: none;
}

.rounded-tooltip-value .apexcharts-tooltip.apexcharts-theme-light {
    background: #fff;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.rounded-tooltip-value .apexcharts-tooltip-text-y-label {
    display: none;
}

.rounded-tooltip-value .apexcharts-tooltip-marker {
    display: none;
}

.rounded-tooltip-value .apexcharts-tooltip-text-y-value {
    margin-left: 0;
}

.rounded-tooltip-value .apexcharts-tooltip-text {
    display: flex;
}

.apexcharts-xaxis-label, .apexcharts-yaxis-label {
    fill: #8a929f;
}

.title-style .apexcharts-text.apexcharts-datalabel-value {
    display: none;
}

.title-style .apexcharts-text.apexcharts-datalabel-label {
    fill: #4B5563 !important;
    font-size: 14px;
    font-weight: 700 !important;
    font-family: Inter, sans-serif;
}

#donutChart {
    height: 0px;
    min-height: 163px !important;
    margin-top: -32px;
}

#semiCircleGauge {
    transform: translateY(22px) translateX(14px);
}

.barChart .apexcharts-bar-area:hover {
    fill: var(--primary-600);
}

.apexcharts-datalabels text {
    filter: none !important;
    text-shadow: none !important;
}

.apexcharts-legend-text {
    color: var(--text-secondary-light) !important;
}

.square-marker .apexcharts-legend-marker {
    border-radius: 4px !important;
    width: 16px !important;
    height: 16px !important;
}

.series-gap-24 .apexcharts-legend-series {
    margin: 4px 12px !important;
}

.check-marker .apexcharts-legend-marker {
    position: relative;
}

    .check-marker .apexcharts-legend-marker::after {
        position: absolute;
        content: "\eb7a";
        font-family: remixicon;
        display: inline-block;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        font-size: 10px;
        color: #fff;
        transition: 0.2s;
    }

.apexcharts-yaxis {
    transform: translateX(10px);
}

[data-theme=dark] .apexcharts-tooltip.apexcharts-theme-light {
    color: #fff !important;
    background: rgba(30, 30, 30, 0.8) !important;
}

    [data-theme=dark] .apexcharts-tooltip.apexcharts-theme-light .apexcharts-tooltip-title {
        background: rgba(0, 0, 0, 0.7) !important;
        border-bottom: 1px solid #333 !important;
    }

[data-theme=dark] .apexcharts-tooltip-series-group {
    background: rgba(0, 0, 0, 0.7) !important;
}

.yaxies-more .apexcharts-yaxis {
    transform: translateX(20px);
}

.apexcharts-canvas {
    transition: 0s !important;
}

@media (min-width: 768px) {
    .md-position-absolute {
        position: absolute;
    }
}

#expenseStatistics .apexcharts-legend-series {
    margin: 6px 0px !important;
}

#expenseStatistics .apexcharts-legend-marker {
    margin-inline-end: 8px;
}

#expenseStatistics .apexcharts-legend-text {
    font-size: 16px !important;
    color: var(--text-secondary-light) !important;
}

.big-semi-circle-gauge .apexcharts-series.apexcharts-radial-series, .big-semi-circle-gauge .apexcharts-radialbar-track.apexcharts-track {
    transform: translateX(10px);
}

.text-style .apexcharts-text.apexcharts-yaxis-label {
    fill: #000 !important;
    font-weight: 500;
    font-size: 16px;
}

html[data-theme=dark] .text-style .apexcharts-text.apexcharts-yaxis-label {
    fill: #fff !important;
}

.progress {
    background-color: var(--neutral-200);
}

@keyframes animateBar {
    0% {
        transform: translateX(-100%);
    }

    100% {
        transform: translateX(0);
    }
}

@keyframes animateFloatingLabel {
    from {
        left: 0;
    }

    to {
        left: var(--left-percentage);
    }
}

#world-map {
    height: 200px;
    background-color: var(--neutral-100);
}

.jvectormap-goback, .jvectormap-zoomin, .jvectormap-zoomout {
    background: #D1D5DB;
    color: #111827;
}

.scroll-sm {
    --portal-scrollbar-size: 3px;
    --portal-scrollbar-track-margin: 0.45rem;
}

.slick-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
}

    .slick-dots .slick-active button {
        background-color: var(--primary-600);
        width: 20px;
    }

    .slick-dots button {
        width: 10px;
        height: 4px;
        background-color: var(--primary-50);
        text-indent: -999999px;
        border-radius: 50px;
        color: var(--primary-50);
    }

.dots-style-circle .slick-dots {
    gap: 8px;
}

    .dots-style-circle .slick-dots .slick-active button {
        background-color: var(--primary-600);
        width: 12px;
        height: 12px;
    }

    .dots-style-circle .slick-dots button {
        width: 8px;
        height: 8px;
        background-color: #5A75AE;
        text-indent: -999999px;
        border-radius: 50%;
    }

.dots-positioned .slick-dots {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 24px;
}

.slick-arrow {
    color: #fff;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 16px;
    font-size: 32px;
    line-height: 0;
    z-index: 1;
}

    .slick-arrow.slick-next {
        left: auto;
        right: 16px;
    }

.slider-progress span.active {
    width: 100%;
}

.officer-slider .slick-track {
    display: flex;
    align-items: center;
}

.officer-slider .slick-slide {
    transition: 0.4s linear;
}

    .officer-slider .slick-slide.slick-current.slick-active {
        padding: 14px 0;
    }

        .officer-slider .slick-slide.slick-current.slick-active .officer-slider__thumb {
            transform: scale(1.4);
        }

        .officer-slider .slick-slide.slick-current.slick-active .officer-slider__content {
            visibility: visible;
            opacity: 1;
        }

.has-indicator {
    position: relative;
    transition: 0s;
}

    .has-indicator.show::before {
        visibility: visible;
        opacity: 1;
    }

    .has-indicator::before {
        position: absolute;
        content: "";
        width: 40px;
        height: 32px;
        background-color: var(--white);
        border-radius: 8px;
        top: calc(100% + 10px);
        left: 50%;
        transform: translateX(-50%) rotate(45deg);
        visibility: hidden;
        opacity: 0;
        transition: 0s;
        margin-left: -2px;
        box-shadow: -13px -8px 24px -7px rgba(46, 45, 116, 0.09);
    }

.dropdown > button.show {
    background-color: var(--primary-50);
    color: var(--primary-600) !important;
}

    .dropdown > button.show .text-primary-light {
        color: var(--primary-600) !important;
    }

.dropdown-menu {
    border: 0;
    border-radius: 16px;
    box-shadow: 0px 13px 30px 10px rgba(46, 45, 116, 0.05);
    padding: 16px;
    background-color: var(--white);
}

    .dropdown-menu.to-top {
        top: calc(100% - 28px) !important;
    }

.to-top-list .dropdown-item {
    padding-left: 16px;
    padding-right: 16px;
}

@media (min-width: 575px) {
    .dropdown-menu-lg {
        width: 425px;
    }
}

@media (min-width: 375px) {
    .dropdown-menu-sm {
        width: 312px;
    }
}

.dropdown > .not-active.show {
    color: #fff !important;
}

.tooltip {
    --bs-tooltip-color: #fff;
}

.ia-sidebar-agent-placeholder {
    cursor: help;
}

.tooltip.ia-sidebar-agent-tooltip .tooltip-inner {
    max-width: min(18rem, 92vw);
    text-align: left;
    font-size: 0.8125rem;
}

.portal-client-name-wrap {
    cursor: help;
}

.tooltip.tooltip-portal-client-context .tooltip-inner {
    max-width: min(22rem, 92vw);
    text-align: left;
    font-size: 0.8125rem;
    line-height: 1.45;
    padding: 0.65rem 0.9rem;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
}

.tooltip.tooltip-portal-client-context .portal-client-tt .mb-1:last-of-type,
.tooltip.tooltip-portal-client-context .portal-client-tt .mb-2 {
    word-break: break-word;
}

html[data-theme=dark] .tooltip.tooltip-portal-client-context .tooltip-inner,
[data-theme=dark] .tooltip.tooltip-portal-client-context .tooltip-inner,
[data-bs-theme=dark] .tooltip.tooltip-portal-client-context .tooltip-inner {
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.35);
}

html[data-theme=dark] .tooltip .tooltip-inner,
[data-theme=dark] .tooltip .tooltip-inner,
[data-bs-theme=dark] .tooltip .tooltip-inner {
    background-color: rgba(30, 64, 175, 0.92);
    color: #fff;
}

html[data-theme=dark] .tooltip,
[data-theme=dark] .tooltip,
[data-bs-theme=dark] .tooltip {
    --bs-tooltip-bg: rgba(30, 64, 175, 0.92);
    --bs-tooltip-color: #fff;
}

#imagePreview {
    background-image: url("../images/user-grid/user-grid-img13.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

#previewImage1, #previewImage2 {
    background-image: url("../images/payment/upload-image.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.fc-border-separate tr.fc-last th {
    background: var(--neutral-50);
    padding: 12px;
    color: var(--text-primary-light);
}

    .fc-border-separate tr.fc-last th a {
        transition: 0s;
    }

.fc-day.fc-tue.fc-widget-content.fc-today.fc-state-highlight {
    position: relative;
    background: linear-gradient(180deg, rgba(72, 127, 255, 0.13) 0%, rgba(72, 127, 255, 0.12) 0.01%, rgba(72, 127, 255, 0.05) 100%);
}

    .fc-day.fc-tue.fc-widget-content.fc-today.fc-state-highlight::before {
        position: absolute;
        content: "";
        width: 100%;
        height: 4px;
        background: var(--primary-600);
    }

.fc-event {
    border: 0;
    padding: 4px;
    border-radius: 4px;
    background-color: var(--primary-50) !important;
    color: var(--primary-600) !important;
}

    .fc-event.important {
        background-color: var(--danger-100) !important;
        color: var(--danger-600) !important;
    }

    .fc-event.info {
        background-color: var(--lilac-100) !important;
        color: var(--lilac-600) !important;
    }

.fc-border-separate tr.fc-last th {
    border-color: var(--neutral-200) !important;
}

table.fc-header, #calendar {
    background-color: transparent;
}

.fc-week .fc-day:hover .fc-day-number {
    background-color: var(--primary-100) !important;
    color: var(--primary-600) !important;
}

.fc-state-highlight > div > div.fc-day-number {
    background-color: var(--primary-600) !important;
    color: #fff !important;
}

#calendar, table.fc-header {
    background-color: transparent !important;
}

.fc-header-title h2 {
    font-size: 24px !important;
    font-weight: 600;
}

.fc-button.fc-button-today {
    border-color: var(--primary-50) !important;
    background-color: var(--primary-50) !important;
    color: var(--primary-600) !important;
}

    .fc-button.fc-button-today.fc-state-disabled {
        border-color: var(--primary-600) !important;
        background-color: var(--primary-600) !important;
        color: #fff !important;
        cursor: no-drop;
    }

td.fc-header-center {
    text-align: end;
}

.fc-last td {
    border-width: 1px 0 1px 1px;
}

.fc-agenda-axis.fc-widget-header {
    color: var(--text-primary-light);
    border-color: var(--border-color);
}

.fc-header td {
    padding: 0;
}

#calendar {
    overflow-x: auto;
}

    #calendar .fc-content {
        min-width: max-content;
    }

    #calendar table.fc-header tr {
        display: flex;
        align-items: center;
        gap: 16px;
        justify-content: space-between;
    }

.auth {
    min-height: 100vh;
}

.auth-left {
    background: linear-gradient(90deg, #ECF0FF 0%, #FAFBFF 100%);
    width: 50%;
}

.auth-right {
    width: 50%;
}

@media (max-width: 991px) {
    .auth-right {
        width: 100%;
    }
}

@media (max-width: 768px) {
    .auth-right > div {
        max-width: 100%;
        width: 100%;
    }
}

.auth.forgot-password-page .auth-left {
    background: var(--gradients-Colors-gradients-2, linear-gradient(90deg, #F7E9FF 0.12%, #FDF8F7 99.89%));
}

@media (min-width: 1400px) {
    .pricing-plan-wrapper {
        padding-left: 0;
        padding-right: 0;
    }
}

@media (max-width: 1699px) {
    .pricing-plan {
        padding: 24px;
    }
}

@media (min-width: 1400px) {
    .pricing-tab {
        margin-bottom: 110px;
    }
}

@media (min-width: 1400px) {
    .scale-item {
        transform: scale(1.04);
        margin-top: -50px;
        z-index: 1;
    }
}

@media (min-width: 1400px) {
    .featured-item {
        margin-top: -50px;
    }
}

.payment-gateway-input:checked ~ .payment-gateway-label .text-secondary-light {
    color: var(--text-primary-light) !important;
}

.air-datepicker-cell.-selected- {
    border-color: var(--primary-600);
    background-color: var(--primary-600);
    color: #fff !important;
}

.air-datepicker {
    background-color: var(--white) !important;
    border: 1px solid var(--border-color) !important;
}

.air-datepicker-nav--title,
.air-datepicker-nav--action,
.air-datepicker-body--day-name,
.air-datepicker-cell {
    color: var(--text-primary-light) !important;
}

    .air-datepicker-nav--action path {
        stroke: var(--text-primary-light) !important;
    }

    .air-datepicker-cell:hover,
    .air-datepicker-cell.-focus- {
        color: var(--text-primary-light) !important;
    }

.item-active > a .icon {
    color: var(--primary-600) !important;
}

.email-item:hover {
    box-shadow: var(--box-shadow);
}

.email-item.active {
    background-color: var(--primary-50) !important;
}

.reload-button {
    transition: 0.2s linear;
}

    .reload-button:active {
        transform: rotate(180deg);
    }

.starred-button.active .icon-outline {
    visibility: hidden;
    opacity: 0;
    width: 0;
}

.starred-button.active .icon-fill {
    visibility: visible;
    opacity: 1;
    width: auto;
}

.starred-button .icon-fill {
    visibility: hidden;
    opacity: 0;
    width: 0;
}

.ql-toolbar.ql-snow {
    border: 0 !important;
    border-bottom: 1px solid var(--border-color) !important;
    border-radius: inherit !important;
}

.ql-container.ql-snow {
    border: 0 !important;
    border-radius: inherit !important;
}

.ql-editor {
    border-radius: 12px;
    min-height: 600px;
}

.ql-picker-label, .ql-formats {
    color: var(--text-primary-light);
    z-index: 2;
}

.ql-snow .ql-fill, .ql-snow .ql-stroke.ql-fill {
    fill: var(--text-secondary-light);
}

.ql-snow .ql-stroke {
    stroke: var(--text-secondary-light);
}

#toolbar-container {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.ql-formats {
    border: 1px solid #ddd;
    padding: 2px 4px;
    border-radius: 8px;
    margin-right: 0 !important;
}

.chat-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

    .chat-wrapper .chat-sidebar {
        width: 100%;
    }

@media (min-width: 768px) {
    .chat-wrapper .chat-sidebar {
        width: 300px;
    }
}

@media (min-width: 1200px) {
    .chat-wrapper .chat-sidebar {
        width: 390px;
    }
}

.chat-wrapper .chat-sidebar.profile-setting {
    padding: 1.5rem;
}

.chat-wrapper .chat-main {
    width: 100%;
    margin-top: 1.875rem;
}

@media (min-width: 768px) {
    .chat-wrapper .chat-main {
        width: calc(100% - 324px);
        margin-top: 0;
    }
}

@media (min-width: 1200px) {
    .chat-wrapper .chat-main {
        width: calc(100% - 414px);
    }
}

.chat-sidebar-single {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 0.6875rem 1.5rem;
    cursor: pointer;
}

    .chat-sidebar-single.top-profile {
        padding: 1.5rem 1.5rem 1rem 1.5rem;
    }

    .chat-sidebar-single.active .img::after {
        background-color: var(--success-main);
    }

    .chat-sidebar-single .img {
        position: relative;
    }

        .chat-sidebar-single .img::after {
            position: absolute;
            content: "";
            bottom: 1px;
            right: 2px;
            width: 8px;
            height: 8px;
            background-color: var(--neutral-400);
            border-radius: 50%;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            -ms-border-radius: 50%;
            -o-border-radius: 50%;
        }

        .chat-sidebar-single .img img {
            width: 40px;
            height: 40px;
            object-fit: cover;
            -o-object-fit: cover;
        }

    .chat-sidebar-single .info {
        flex-grow: 1;
        padding: 0 0.75rem;
    }

    .chat-sidebar-single .action {
        margin-inline-start: auto;
    }

.chat-main {
    display: flex;
    flex-flow: column;
}

    .chat-main .chat-sidebar-single {
        padding: 1.25rem 1.5rem;
        border-bottom: 1px solid var(--input-form-light);
    }

    .chat-main .chat-empty {
        flex-grow: 1;
        padding: 1.5rem;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
    }

.chat-message-list {
    flex-grow: 1;
    min-height: 350px;
    max-height: 511px;
    padding: 1.5rem;
    display: flex;
    flex-flow: column;
    overflow-y: auto;
}

@media (min-width: 1200px) {
    .chat-message-list {
        max-height: 375px;
    }
}

@media (min-width: 1400px) {
    .chat-message-list {
        max-height: 511px;
    }
}

@media (min-width: 576px) {
    .chat-single-message {
        width: 90%;
    }
}

@media (min-width: 992px) {
    .chat-single-message {
        width: 60%;
    }
}

.chat-single-message.left .chat-message-content {
    background-color: var(--input-bg);
    border-radius: 16px 16px 16px 0;
    -webkit-border-radius: 16px 16px 16px 0;
    -moz-border-radius: 16px 16px 16px 0;
    -ms-border-radius: 16px 16px 16px 0;
    -o-border-radius: 16px 16px 16px 0;
}

    .chat-single-message.left .chat-message-content p {
        color: var(--text-primary-light);
    }

        .chat-single-message.left .chat-message-content p.chat-time {
            color: var(--text-secondary-light);
            text-align: end;
        }

.chat-single-message.right {
    margin-inline-start: auto;
}

    .chat-single-message.right .chat-message-content {
        width: 100%;
        background-color: var(--brand);
        border-radius: 16px 16px 0 16px;
        -webkit-border-radius: 16px 16px 0 16px;
        -moz-border-radius: 16px 16px 0 16px;
        -ms-border-radius: 16px 16px 0 16px;
        -o-border-radius: 16px 16px 0 16px;
    }

        .chat-single-message.right .chat-message-content p {
            color: #fff;
        }

            .chat-single-message.right .chat-message-content p.chat-time {
                color: #fff;
            }

.chat-message-box {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.9375rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--neutral-300);
}

    .chat-message-box input {
        flex-grow: 1;
    }

.chat-message-box-action {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1.25rem;
}

.list-style {
    list-style: outside;
    list-style-position: inside;
}

.image-upload__box {
    border-radius: inherit !important;
    cursor: pointer;
    padding: 16px !important;
    flex-direction: column;
    justify-content: center;
}

.image-upload__boxInner {
    padding: 0 !important;
    border: 0 !important;
    display: inline-flex;
    justify-content: center;
    flex-direction: column;
    width: 100% !important;
    margin: 0 auto;
    position: relative;
    border-radius: inherit;
}

.image-upload__icon {
    font-size: 32px !important;
    color: var(--primary-600);
    line-height: 1;
}

.image-upload__image {
    border-radius: inherit;
    max-width: 100%;
}

.image-upload__deleteBtn {
    position: absolute;
    right: -6px;
    top: -6px;
    z-index: 1;
    background: var(--neutral-100);
    color: hsl(var(--neutral-900));
    border-radius: 50%;
    width: 20px;
    height: 20px;
    font-size: 12px;
    transition: 0.2s;
    display: flex;
    justify-content: center;
    align-items: center;
}

    .image-upload__deleteBtn:hover {
        background: var(--danger-600);
        transform: scale(1.1);
        color: #fff;
    }

.image-upload__anotherFileIcon {
    font-size: 16px !important;
    color: hsl(var(--body-color)) !important;
    width: 40px;
    height: 40px;
    border: 1px solid var(--neutral-100);
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: inherit;
}

.image-upload__boxInner p, .image-upload__boxInner span {
    line-height: 1.2 !important;
}

.radial-progress circle.incomplete {
    opacity: 0.2;
}

.radial-progress circle.complete {
    stroke-dasharray: 219.9114857513;
}

.nft-page .card {
    border-radius: 16px !important;
    overflow: hidden;
}

@media (max-width: 576px) {
    .nft-promo-card__inner {
        flex-direction: column;
    }
}

.mfp-gallery .mfp-image-holder .mfp-figure {
    transform: scale(1.6);
}

@media (min-width: 1367px) {
    .mfp-gallery .mfp-image-holder .mfp-figure {
        cursor: pointer;
        transform: scale(2);
    }
}

@media (min-width: 576px) {
    .masonry-wrapper {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
        grid-auto-rows: 232px;
        grid-gap: 16px;
        grid-auto-flow: dense;
    }

        .masonry-wrapper div:nth-child(12n+1) {
            grid-row: span 2;
        }

        .masonry-wrapper div:nth-child(12n+3) {
            grid-row: span 2;
            grid-column: span 2;
        }

        .masonry-wrapper div:nth-child(12n+5) {
            grid-row: span 2;
            grid-column: span 2;
        }

        .masonry-wrapper div:nth-child(12n+6) {
            grid-row: span 2;
        }

        .masonry-wrapper div:nth-child(12n+9) {
            grid-row: span 2;
        }

        .masonry-wrapper div:nth-child(12n+10) {
            grid-column: span 2;
        }
}

.travel-slider .slick-slide {
    margin: 0 10px;
}

.travel-slider .slick-list {
    margin: 0 -10px;
}

.navbar-header {
    height: 4.5rem;
    background-color: var(--white);
    position: sticky;
    top: 0;
    padding: 1rem 1.5rem;
    z-index: 2;
}

    .navbar-header.portal-topbar {
        height: auto;
        min-height: 3.75rem;
        padding: 0;
        background-color: var(--bs-body-bg);
        border-bottom: 1px solid var(--bs-border-color);
        box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
        z-index: 1030;
        overflow: visible;
    }

[data-theme="dark"] .navbar-header.portal-topbar, [data-bs-theme="dark"] .navbar-header.portal-topbar {
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.07);
}

.navbar-header.navbar {
    --bs-navbar-padding-y: 0;
    --bs-navbar-padding-x: 0;
}

.portal-topbar-container {
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
    padding-left: max(0.75rem, env(safe-area-inset-left, 0px));
    padding-right: max(0.75rem, env(safe-area-inset-right, 0px));
    overflow: visible;
}

.navbar-header.portal-topbar .portal-topbar-row {
    gap: 0.375rem;
    overflow: visible;
}

.portal-topbar-cluster {
    background-color: var(--bs-tertiary-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius-lg);
}

.portal-topbar-cluster--menu {
    padding: 0;
    gap: 0;
    border-radius: var(--bs-border-radius);
    overflow: hidden;
}

.portal-topbar-cluster--actions {
    padding: 0;
    gap: 0.375rem;
    background-color: transparent;
    border: 0;
    border-radius: 0;
    overflow: visible;
    flex-wrap: nowrap;
}

    .portal-topbar-cluster--actions > * + * {
        box-shadow: none;
    }

    .portal-topbar-cluster--actions .portal-topbar-icon-btn,
    .portal-topbar-cluster--actions > .dropdown {
        flex-shrink: 0;
    }

    .portal-topbar-cluster--actions > .dropdown {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .portal-topbar-cluster--actions .portal-topbar-icon-btn {
        position: relative;
        width: 2.35rem;
        height: 2.35rem;
        color: var(--bs-body-color);
        background-color: var(--bs-tertiary-bg);
        border: 1px solid var(--bs-border-color);
        border-radius: var(--bs-border-radius-lg);
        box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
    }

        .portal-topbar-cluster--actions .portal-topbar-icon-btn:hover {
            background-color: rgba(0, 86, 228, 0.08);
            border-color: rgba(0, 86, 228, 0.25);
        }

[data-bs-theme="dark"] .portal-topbar-cluster--actions .portal-topbar-icon-btn,
[data-theme="dark"] .portal-topbar-cluster--actions .portal-topbar-icon-btn {
    box-shadow: none;
}

.portal-topbar-icon-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.125rem;
    height: 2.125rem;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--bs-body-color);
    transition: background-color 0.15s ease, color 0.15s ease;
}

    .portal-topbar-icon-btn:hover {
        background-color: rgba(0, 86, 228, 0.08);
        color: #0056E4;
    }

[data-bs-theme="dark"] .portal-topbar-icon-btn:hover,
[data-theme="dark"] .portal-topbar-icon-btn:hover {
    background-color: rgba(59, 130, 246, 0.18);
    color: #93c5fd;
}

.portal-topbar-icon-btn:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 86, 228, 0.35);
}

.portal-topbar-icon-btn i {
    font-size: 1rem;
}

.portal-topbar-icon-btn--avatar {
    position: relative;
    overflow: visible;
}

    .portal-topbar-icon-btn--avatar .portal-topbar-avatar {
        box-sizing: border-box;
        width: 1.5rem;
        height: 1.5rem;
        min-width: 1.5rem;
        min-height: 1.5rem;
        max-width: 1.5rem;
        max-height: 1.5rem;
        padding: 0;
        margin: 0;
        border: 0;
        border-radius: 50%;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
        font-size: 0.6875rem;
        font-weight: 600;
        letter-spacing: -0.03em;
        flex-shrink: 0;
        overflow: hidden;
        text-align: center;
    }

.portal-topbar-avatar-fallback {
    font-size: 1rem;
    opacity: 0.72;
}

.portal-topbar .navbar-search {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: center;
    gap: 0.5rem;
    position: relative;
    width: 100%;
    min-width: 0;
    flex: 1 1 auto;
}

.portal-topbar .portal-topbar-search-field {
    position: relative;
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
}

@media (min-width: 992px) {
    .portal-topbar .portal-topbar-search-field {
        max-width: 26rem;
    }
}

.portal-topbar .navbar-search > .portal-topbar-search-feedback.search-results-counter {
    position: static;
    top: auto;
    right: auto;
    margin: 0;
    flex-shrink: 0;
    align-self: center;
    max-width: min(11.5rem, 38vw);
    overflow: hidden;
    text-overflow: ellipsis;
    z-index: 1;
}

.portal-topbar .navbar-search input {
    width: 100%;
    max-width: 100%;
    height: 2.25rem;
    background-color: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius);
    padding-block: 0.25rem;
    padding-inline-start: 2.125rem;
    padding-inline-end: 0.75rem;
    color: var(--bs-body-color);
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

    .portal-topbar .navbar-search input:focus {
        border-color: #0056E4;
        box-shadow: 0 0 0 0.2rem rgba(0, 86, 228, 0.18);
        outline: 0;
    }

.portal-topbar .navbar-search .icon {
    font-size: 1rem;
    inset-inline-start: 0.75rem;
    color: var(--bs-secondary-color);
}

.portal-topbar-client {
    gap: 0.375rem;
    padding: 0.25rem 0.65rem;
    max-width: min(16rem, 42vw);
    min-width: 0;
    flex-shrink: 1;
    overflow: hidden;
    background-color: var(--bs-tertiary-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius-lg);
}

.portal-topbar-client-text {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.0625rem;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
}

.portal-topbar-client-name {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--bs-body-color);
    line-height: 1.25;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.portal-topbar-client-cnpj {
    font-size: 0.6875rem;
    font-weight: 400;
    line-height: 1.2;
    color: var(--bs-secondary-color);
    opacity: 0.92;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.portal-topbar-client-menu-cnpj {
    font-size: 0.65rem;
    font-weight: 400;
    line-height: 1.2;
    color: var(--bs-secondary-color);
    opacity: 0.88;
    margin-top: 0.125rem;
}

.portal-topbar-client-name--menu {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.portal-topbar-dropdown {
    border-radius: var(--bs-border-radius-lg) !important;
    margin-top: 0.35rem !important;
}

.navbar-header.portal-topbar .dropdown-menu.dropdown-menu-lg.portal-topbar-dropdown,
.navbar-header.portal-topbar .dropdown-menu.dropdown-menu-sm.portal-topbar-dropdown {
    z-index: 1050;
    box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.06), 0 12px 40px rgba(15, 23, 42, 0.12);
}

[data-theme="dark"] .navbar-header.portal-topbar .dropdown-menu.dropdown-menu-lg.portal-topbar-dropdown, [data-bs-theme="dark"] .navbar-header.portal-topbar .dropdown-menu.dropdown-menu-lg.portal-topbar-dropdown, [data-theme="dark"] .navbar-header.portal-topbar .dropdown-menu.dropdown-menu-sm.portal-topbar-dropdown, [data-bs-theme="dark"] .navbar-header.portal-topbar .dropdown-menu.dropdown-menu-sm.portal-topbar-dropdown {
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08), 0 12px 40px rgba(0, 0, 0, 0.45);
}

.portal-topbar-dropdown-tile {
    background: linear-gradient(135deg, rgba(0, 86, 228, 0.07) 0%, rgba(38, 187, 205, 0.07) 100%);
}

[data-theme="dark"] .portal-topbar-dropdown-tile, [data-bs-theme="dark"] .portal-topbar-dropdown-tile {
    background: rgba(59, 130, 246, 0.14);
}

.portal-topbar-badge {
    min-width: 2.25rem;
    height: 2.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.9375rem;
    color: #fff;
    background: linear-gradient(135deg, #0056E4 0%, #0780DD 50%, #26BBCD 100%);
    border-radius: var(--bs-border-radius);
}

.portal-topbar-badge--floating {
    position: absolute;
    top: -0.32rem;
    right: -0.32rem;
    min-width: 1.15rem;
    height: 1.15rem;
    padding: 0 0.22rem;
    font-size: 0.625rem;
    line-height: 1;
    border: 2px solid var(--bs-body-bg);
    border-radius: 999px;
    box-shadow: 0 2px 6px rgba(0, 86, 228, 0.28);
    pointer-events: none;
}

.portal-topbar-dropdown-header {
    background-color: var(--bs-body-bg);
    letter-spacing: 0.04em;
}

/* Account user menu — contemporary panel (profile hero + compact nav + sign-out) */
.navbar-header.portal-topbar .portal-topbar-dropdown.portal-account-menu {
    border-radius: 1rem !important;
    min-width: 17.75rem;
    max-width: min(20.5rem, calc(100vw - 1.5rem));
    box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.05), 0 4px 6px -2px rgba(15, 23, 42, 0.04), 0 22px 48px -12px rgba(15, 23, 42, 0.16) !important;
}

[data-theme="dark"] .navbar-header.portal-topbar .portal-topbar-dropdown.portal-account-menu, [data-bs-theme="dark"] .navbar-header.portal-topbar .portal-topbar-dropdown.portal-account-menu {
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.07), 0 22px 50px -12px rgba(0, 0, 0, 0.55) !important;
}

.portal-account-menu__profile {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.2rem 1.15rem 1rem;
    overflow: hidden;
    border-bottom: 1px solid var(--bs-border-color);
    background-color: var(--bs-body-bg);
}

    .portal-account-menu__profile::before {
        content: "";
        position: absolute;
        inset: 0;
        background: radial-gradient(ellipse 120% 90% at 0% -20%, rgba(0, 86, 228, 0.14), transparent 55%), radial-gradient(ellipse 90% 70% at 100% 0%, rgba(38, 187, 205, 0.1), transparent 50%);
        opacity: 0.85;
        pointer-events: none;
    }

[data-theme="dark"] .portal-account-menu__profile::before, [data-bs-theme="dark"] .portal-account-menu__profile::before {
    background: radial-gradient(ellipse 120% 90% at 0% -25%, rgba(59, 130, 246, 0.22), transparent 58%), radial-gradient(ellipse 90% 70% at 100% 0%, rgba(34, 211, 238, 0.1), transparent 52%);
    opacity: 0.65;
}

.portal-account-menu__profile-visual {
    position: relative;
    z-index: 1;
    flex-shrink: 0;
}

.portal-account-menu__profile-glow {
    position: absolute;
    width: 3.5rem;
    height: 3.5rem;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: radial-gradient(circle, rgba(0, 86, 228, 0.35) 0%, transparent 70%);
    filter: blur(12px);
    opacity: 0.55;
    pointer-events: none;
}

[data-theme="dark"] .portal-account-menu__profile-glow, [data-bs-theme="dark"] .portal-account-menu__profile-glow {
    background: radial-gradient(circle, rgba(96, 165, 250, 0.4) 0%, transparent 72%);
    opacity: 0.45;
}

.portal-account-menu__profile-avatar {
    position: relative;
    width: 3rem;
    height: 3rem;
    border-radius: 0.85rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1.1rem;
    background: linear-gradient(145deg, #0056E4 0%, #0780DD 42%, #26BBCD 100%);
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.2) inset, 0 10px 22px -6px rgba(0, 86, 228, 0.55);
}

[data-theme="dark"] .portal-account-menu__profile-avatar, [data-bs-theme="dark"] .portal-account-menu__profile-avatar {
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.08) inset, 0 12px 28px -8px rgba(0, 0, 0, 0.5);
}

.portal-account-menu__profile-body {
    position: relative;
    z-index: 1;
    padding-top: 0.1rem;
}

.portal-account-menu__profile-name {
    font-size: 0.9375rem;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: -0.01em;
    color: var(--bs-body-color);
}

.portal-account-menu__profile-meta {
    margin-top: 0.2rem !important;
    font-size: 0.75rem;
    line-height: 1.4;
    color: var(--bs-secondary-color);
}

.portal-account-menu__client {
    margin-top: 0.55rem;
    padding: 0.4rem 0.55rem;
    border-radius: 0.5rem;
    background-color: var(--bs-tertiary-bg);
    border: 1px solid var(--bs-border-color);
}

[data-theme="dark"] .portal-account-menu__client, [data-bs-theme="dark"] .portal-account-menu__client {
    background-color: rgba(55, 65, 81, 0.45);
}

.portal-account-menu__nav {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    padding: 0.45rem 0.4rem 0.55rem;
    background-color: var(--bs-body-bg);
}

.portal-account-menu__item {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.48rem 0.55rem;
    margin: 0 0.1rem;
    border: none;
    border-radius: 0.55rem;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.3;
    color: var(--bs-body-color);
    text-decoration: none !important;
    transition: background-color 0.14s ease, color 0.14s ease, transform 0.12s ease;
}

    .portal-account-menu__item:hover {
        background-color: var(--bs-tertiary-bg);
        color: var(--bs-body-color);
    }

    .portal-account-menu__item:focus-visible {
        outline: 2px solid rgba(0, 86, 228, 0.45);
        outline-offset: 2px;
    }

[data-theme="dark"] .portal-account-menu__item:focus-visible, [data-bs-theme="dark"] .portal-account-menu__item:focus-visible {
    outline-color: rgba(96, 165, 250, 0.55);
}

.portal-account-menu__item-icon {
    width: 2.1rem;
    height: 2.1rem;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.45rem;
    font-size: 0.82rem;
    color: #0056E4;
    background: linear-gradient(145deg, rgba(0, 86, 228, 0.1) 0%, rgba(38, 187, 205, 0.08) 100%);
}

[data-theme="dark"] .portal-account-menu__item-icon, [data-bs-theme="dark"] .portal-account-menu__item-icon {
    color: #93c5fd;
    background: rgba(59, 130, 246, 0.14);
}

.portal-account-menu__item:hover .portal-account-menu__item-icon {
    background: linear-gradient(145deg, rgba(0, 86, 228, 0.16) 0%, rgba(38, 187, 205, 0.12) 100%);
}

[data-theme="dark"] .portal-account-menu__item:hover .portal-account-menu__item-icon, [data-bs-theme="dark"] .portal-account-menu__item:hover .portal-account-menu__item-icon {
    background: rgba(59, 130, 246, 0.22);
}

.portal-account-menu__item-label {
    flex: 1 1 auto;
    min-width: 0;
}

.portal-account-menu__item--disabled,
.portal-account-menu__item[aria-disabled="true"] {
    cursor: not-allowed;
    opacity: 0.65;
}

.sidebar-menu .menu-item-disabled,
.sidebar-menu .menu-item-disabled > a,
.sidebar-menu a.menu-link-disabled {
    cursor: not-allowed;
}

.portal-account-menu__footer {
    padding: 0.65rem 0.85rem 0.95rem;
    background-color: var(--bs-body-bg);
    border-top: 1px solid var(--bs-border-color);
}

.portal-account-menu__sign-out {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.55rem 0.85rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 0.55rem;
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.25;
    color: var(--bs-body-color);
    background-color: var(--bs-tertiary-bg);
    cursor: pointer;
    transition: background-color 0.14s ease, border-color 0.14s ease, color 0.14s ease, box-shadow 0.14s ease;
}

    .portal-account-menu__sign-out:hover {
        background-color: var(--bs-secondary-bg);
        border-color: var(--bs-border-color);
        color: #b91c1c;
    }

[data-theme="dark"] .portal-account-menu__sign-out:hover, [data-bs-theme="dark"] .portal-account-menu__sign-out:hover {
    color: #fca5a5;
}

.portal-account-menu__sign-out:focus-visible {
    outline: 2px solid rgba(0, 86, 228, 0.45);
    outline-offset: 2px;
}

.portal-account-menu__sign-out i {
    font-size: 0.85rem;
    opacity: 0.9;
}

.portal-topbar-dropdown .dropdown-item:hover,
.portal-topbar-dropdown .dropdown-item:focus {
    background-color: var(--bs-tertiary-bg);
}

.portal-topbar-icon-btn[data-theme-toggle] {
    position: relative;
    font-size: 0;
}

.navbar-header.portal-topbar [data-theme-toggle]::after {
    font-size: 1.125rem;
}

.navbar-header.portal-topbar .sidebar-toggle .icon,
.navbar-header.portal-topbar .sidebar-mobile-toggle .icon {
    font-size: 1.125rem !important;
}

.navbar-header .sidebar-toggle.btn-link,
.navbar-header .sidebar-mobile-toggle.btn-link {
    color: var(--text-primary-light);
}

    .navbar-header .sidebar-toggle.btn-link:focus,
    .navbar-header .sidebar-mobile-toggle.btn-link:focus {
        box-shadow: none;
    }

.dashboard-main > .header {
    position: relative;
    z-index: 1;
}

.sidebar-toggle,
.sidebar-mobile-toggle {
    line-height: 1.2;
    color: var(--text-primary-light);
}

    .sidebar-toggle .icon,
    .sidebar-mobile-toggle .icon {
        font-size: 1.375rem !important;
    }

.sidebar-toggle {
    display: none;
}

@media (min-width: 1200px) {
    .sidebar-toggle {
        display: inline-block;
    }
}

.sidebar-toggle.active .icon.non-active {
    display: none;
}

.sidebar-toggle.active .icon.active {
    display: inline-block;
}

.sidebar-toggle .icon.active {
    display: none;
}

.sidebar-mobile-toggle {
    display: inline-block;
}

@media (min-width: 1200px) {
    .sidebar-mobile-toggle {
        display: none;
    }
}

.portal-topbar .sidebar-toggle,
.portal-topbar .sidebar-mobile-toggle {
    margin: 0 !important;
    line-height: 1 !important;
}

    .portal-topbar .sidebar-toggle .icon,
    .portal-topbar .sidebar-mobile-toggle .icon {
        margin: 0 !important;
        line-height: 1 !important;
        vertical-align: middle;
    }

.portal-topbar .sidebar-toggle {
    display: none !important;
}

.portal-topbar .sidebar-mobile-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

@media (min-width: 1200px) {
    .portal-topbar .sidebar-toggle {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .portal-topbar .sidebar-mobile-toggle {
        display: none !important;
    }
}

.navbar-search {
    position: relative;
    display: none;
}

@media (min-width: 992px) {
    .navbar-search {
        display: inline-block;
    }
}

.navbar-search input {
    width: 24.25rem;
    height: 2.5rem;
    background-color: var(--neutral-50);
    border: 1px solid var(--input-form-light);
    border-radius: 0.5rem;
    -webkit-border-radius: 0.5rem;
    -moz-border-radius: 0.5rem;
    -ms-border-radius: 0.5rem;
    -o-border-radius: 0.5rem;
    padding-block: 0.3125rem;
    padding-inline-start: 2.625rem;
    padding-inline-end: 1.25rem;
    color: var(--text-primary-light);
}

    .navbar-search input:focus {
        border-color: var(--brand);
    }

.navbar-search .icon {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    inset-inline-start: 0.9375rem;
    font-size: 1.125rem;
    color: var(--black);
}

[data-theme-toggle] {
    font-size: 0;
    position: relative;
}

    [data-theme-toggle]::after {
        position: absolute;
        content: "\f1bf";
        font-family: remixicon;
        font-style: normal;
        font-size: 1.25rem;
        color: var(--text-primary-light);
    }

    [data-theme-toggle][aria-label=dark]::after {
        content: "\ef6f";
        color: #fff;
    }

.search-highlight {
    background-color: #ffeb3b;
    color: #000;
    padding: 2px 4px;
    border-radius: 3px;
    font-weight: 500;
}

    .search-highlight.active {
        background-color: #ff9800;
        color: #fff;
        box-shadow: 0 0 0 2px rgba(255, 152, 0, 0.5);
        animation: searchPulse 0.5s ease-in-out;
    }

@keyframes searchPulse {
    0%, 100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.05);
    }
}

.search-results-counter {
    position: absolute;
    top: 100%;
    right: 0;
    margin-top: 4px;
    padding: 4px 8px;
    background: #3b82f6;
    color: #fff;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
    z-index: 1000;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

    .search-results-counter.no-results {
        background: #ef4444;
    }

[data-theme="dark"] .search-highlight {
    background-color: #fbbf24;
    color: #1f2937;
}

    [data-theme="dark"] .search-highlight.active {
        background-color: #f59e0b;
        color: #fff;
        box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.5);
    }

[data-theme="dark"] .search-results-counter {
    background: #3b82f6;
    color: #fff;
}

    [data-theme="dark"] .search-results-counter.no-results {
        background: #ef4444;
    }

.sidebar {
    position: fixed;
    inset-block-start: 0;
    inset-inline-start: -100%;
    width: 14.5rem;
    height: 100vh;
    background-color: var(--white);
    z-index: 3;
}

@media (min-width: 1200px) {
    .sidebar {
        inset-inline-start: 0;
        width: 12.25rem;
    }
}

@media (min-width: 1400px) {
    .sidebar {
        width: 14.75rem;
    }
}

@media (min-width: 1650px) {
    .sidebar {
        width: 16.5rem;
    }
}

.sidebar-close-btn {
    position: absolute;
    top: 0.625rem;
    inset-inline-end: 0.625rem;
    width: 1.75rem;
    height: 1.75rem;
    border: 1px solid var(--input-form-light);
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

@media (min-width: 1200px) {
    .sidebar-close-btn {
        display: none;
    }
}

.sidebar.sidebar-open {
    inset-inline-start: 0;
}

.sidebar.active .sidebar-logo img.light-logo,
.sidebar.active .sidebar-logo img.dark-logo {
    display: none;
}

.sidebar.active .sidebar-logo img.logo-icon {
    display: inline-block;
}

/* Menu recolhido (ícones) + expansão ao hover: somente desktop (≥1200px).
   Evita conflito com drawer mobile e corrige alinhamento ao mostrar rótulos. */
@media (min-width: 1200px) {
    .sidebar.active {
        width: 4.5rem;
    }

        .sidebar.active .sidebar-menu li a i {
            margin-inline-end: 16px;
        }

        .sidebar.active:hover {
            width: auto;
            inset-inline-start: 0;
            z-index: 1050;
            box-shadow: 4px 0 24px rgba(0, 0, 0, 0.1);
        }

            .sidebar.active:hover .sidebar-logo img.light-logo {
                display: inline-block;
            }

            .sidebar.active:hover .sidebar-logo img.logo-icon {
                display: none;
            }

            .sidebar.active:hover .sidebar-logo {
                justify-content: flex-start;
                width: 100%;
                min-width: 0;
                overflow: visible;
            }

            .sidebar.active:hover .sidebar-menu li a span {
                display: inline-block !important;
            }

            .sidebar.active:hover .sidebar-menu li.dropdown.dropdown-open > .sidebar-submenu,
            .sidebar.active:hover .sidebar-menu li.dropdown.open > .sidebar-submenu {
                display: block !important;
            }

            .sidebar.active:hover .sidebar-menu li.sidebar-menu-group-title {
                display: inline-block;
            }

            .sidebar.active:hover .sidebar-menu li.dropdown a::after {
                display: inline-block;
            }

            /* Hover: mesmo alinhamento do menu totalmente aberto (não centralizar ícone+texto) */
            .sidebar.active:hover .sidebar-menu li a {
                justify-content: flex-start !important;
                align-items: center !important;
                padding: 0.125rem 0.75rem !important;
                overflow: visible !important;
                min-height: 0 !important;
            }

            .sidebar.active:hover .sidebar-menu .sidebar-submenu li a {
                padding: 0.3rem 0.55rem !important;
            }

            .sidebar.active:hover .sidebar-menu li a .menu-icon,
            .sidebar.active:hover .sidebar-menu li a i.menu-icon {
                margin: 0 !important;
                margin-inline-end: 0.4rem !important;
                font-size: 0.82rem !important;
                width: 1.35rem !important;
                min-width: 1.35rem !important;
                display: inline-flex !important;
                align-items: center !important;
                justify-content: center !important;
                flex-shrink: 0 !important;
            }

            .sidebar.active:hover .sidebar-menu li a i:not(.menu-icon) {
                margin: 0 !important;
                margin-inline-end: 0.2rem !important;
                font-size: 0.9rem !important;
                width: 1.125rem !important;
                min-width: 1.125rem !important;
                display: inline-flex !important;
                align-items: center !important;
                justify-content: center !important;
                flex-shrink: 0 !important;
            }

    @media (min-width: 1400px) {
        .sidebar.active:hover {
            width: 14.75rem;
        }
    }

    @media (min-width: 1650px) {
        .sidebar.active:hover {
            width: 16.5rem;
        }
    }

    .sidebar.active .sidebar-menu li a {
        overflow: hidden;
        justify-content: center;
        align-items: center;
        padding: 0.5rem 0.65rem;
        margin-bottom: 0rem;
        min-height: 2.25rem;
    }

        .sidebar.active .sidebar-menu li a span {
            display: none;
        }

        .sidebar.active .sidebar-menu li a .menu-icon,
        .sidebar.active .sidebar-menu li a i {
            margin: 0;
            font-size: 1.05rem;
            width: auto;
            min-width: 1.125rem;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .sidebar.active .sidebar-menu li a .menu-icon {
            margin-inline-end: 0;
        }

    .sidebar.active .sidebar-menu li.sidebar-menu-group-title {
        display: none;
    }

    .sidebar.active .sidebar-menu li.dropdown.dropdown-open > .sidebar-submenu,
    .sidebar.active .sidebar-menu li.dropdown.open > .sidebar-submenu {
        display: none !important;
    }

    .sidebar.active .sidebar-menu li.dropdown a::after {
        display: none;
    }
}

@media (max-width: 1199px) {
    .sidebar {
        width: min(18.75rem, 85vw);
        max-width: 320px;
    }

        .sidebar.sidebar-open {
            width: min(18.75rem, 85vw) !important;
            max-width: 320px !important;
            box-shadow: 4px 0 24px rgba(0, 0, 0, 0.12);
            z-index: 1040;
        }

            .sidebar.sidebar-open .sidebar-close-btn {
                top: 0.75rem;
                inset-inline-end: 0.75rem;
                width: 2.25rem;
                height: 2.25rem;
                font-size: 1.125rem;
            }

            .sidebar.sidebar-open .sidebar-logo {
                height: 3.8rem;
                padding: 0.5rem 0.75rem;
                justify-content: flex-start !important;
                padding-inline-start: 0.75rem !important;
            }

                .sidebar.sidebar-open .sidebar-logo img {
                    max-height: 2.25rem;
                }

            .sidebar.sidebar-open .sidebar-menu-area {
                padding: 0.45rem 0.65rem 0.85rem;
                text-align: left;
                height: calc(100vh - 3.25rem);
            }

            .sidebar.sidebar-open .sidebar-menu {
                list-style: none;
                margin: 0;
                padding: 0;
                text-align: left;
            }

                .sidebar.sidebar-open .sidebar-menu > li {
                    margin-bottom: 0.125rem;
                }

                .sidebar.sidebar-open .sidebar-menu li a,
                .sidebar.sidebar-open .sidebar-menu .sidebar-submenu li a {
                    justify-content: flex-start !important;
                    align-items: center;
                    padding: 0.45rem 0.75rem !important;
                    min-height: 2.25rem;
                    font-size: 0.8125rem;
                    font-weight: 500;
                    border-radius: 8px;
                    gap: 0.4rem;
                }

                    .sidebar.sidebar-open .sidebar-menu li a span {
                        display: inline-block !important;
                    }

                    .sidebar.sidebar-open .sidebar-menu li a .menu-icon,
                    .sidebar.sidebar-open .sidebar-menu li a i {
                        font-size: 1rem;
                        width: 1.35rem;
                        min-width: 1.35rem;
                        margin-inline-end: 0.4rem;
                        flex-shrink: 0;
                    }

                    .sidebar.sidebar-open .sidebar-menu li a .menu-icon {
                        margin-inline-end: 0.5rem;
                    }

                .sidebar.sidebar-open .sidebar-menu li.dropdown a::after {
                    display: inline-block;
                    font-size: 1rem;
                    inset-inline-end: 0.5rem;
                }

                .sidebar.sidebar-open .sidebar-menu li.sidebar-menu-group-title {
                    display: block;
                    padding: 0.75rem 1rem 0.25rem;
                    margin-top: 0.5rem;
                    font-size: 0.6875rem;
                    font-weight: 600;
                    text-transform: uppercase;
                    letter-spacing: 0.04em;
                    color: var(--neutral-500);
                    border-top: 1px solid var(--neutral-200);
                }

                    .sidebar.sidebar-open .sidebar-menu li.sidebar-menu-group-title:first-child {
                        margin-top: 0;
                        border-top: none;
                        padding-top: 0.25rem;
                    }

                .sidebar.sidebar-open .sidebar-menu li.dropdown.dropdown-open > .sidebar-submenu,
                .sidebar.sidebar-open .sidebar-menu li.dropdown.open > .sidebar-submenu {
                    display: block !important;
                }

                .sidebar.sidebar-open .sidebar-menu .sidebar-submenu {
                    padding: 0.25rem 0 0.5rem;
                    padding-inline-start: 1rem;
                    text-align: left;
                    border-inline-start: 2px solid var(--neutral-200);
                    margin-inline-start: 0.5rem;
                }

                    .sidebar.sidebar-open .sidebar-menu .sidebar-submenu li a {
                        padding: 0.35rem 0.55rem !important;
                        font-size: 0.75rem;
                        min-height: 2rem;
                    }

                        .sidebar.sidebar-open .sidebar-menu .sidebar-submenu li a .menu-icon,
                        .sidebar.sidebar-open .sidebar-menu .sidebar-submenu li a i {
                            font-size: 0.9rem;
                            width: 1.125rem;
                            min-width: 1.125rem;
                        }
}

.sidebar-logo {
    height: 3.7rem;
    padding: 0.5rem 0.75rem;
    border-inline-end: 1px solid var(--neutral-200);
    border-block-end: 1px solid var(--neutral-200);
    display: flex;
    align-items: center;
    justify-content: center;
}

    .sidebar-logo img {
        max-height: 2.75rem;
    }

        .sidebar-logo img.dark-logo {
            display: none;
        }

        .sidebar-logo img.logo-icon {
            display: none;
        }

.sidebar-menu-area-wrap {
    position: relative;
    height: calc(100vh - 3.5rem);
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

.sidebar-menu-area-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: blur(0px);
    opacity: 0.1;
    z-index: 0;
    pointer-events: none;
}

.sidebar-menu-area {
    position: relative;
    z-index: 1;
    height: calc(100vh - 3.5rem);
    padding: 0.5rem 0.65rem;
    overflow-y: auto;
    border-inline-end: 1px solid var(--neutral-200);
}

[data-theme=dark] .sidebar.active:hover .sidebar-logo img.light-logo {
    display: none;
}

[data-theme=dark] .sidebar.active:hover .sidebar-logo img.dark-logo {
    display: inline-block;
}

[data-theme=dark] .sidebar.active .sidebar-logo img.light-logo {
    display: none;
}

[data-theme=dark] .sidebar-logo img.light-logo {
    display: none;
}

[data-theme=dark] .sidebar-logo img.dark-logo {
    display: inline-block;
}

.sidebar-menu li.dropdown > a {
    position: relative;
}

    .sidebar-menu li.dropdown > a::after {
        position: absolute;
        content: "\ea6e";
        font-family: remixicon;
        font-style: normal;
        inset-block-start: 50%;
        inset-inline-end: 0.5rem;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        font-size: 1.125rem;
    }

@media (min-width: 1650px) {
    .sidebar-menu li.dropdown > a::after {
        font-size: 1.375rem;
    }
}

.sidebar-menu li.dropdown.open > a, .sidebar-menu li.dropdown.dropdown-open > a {
    background-color: var(--brand);
    color: #fff;
}

.sidebar-menu li.dropdown.open > a, .sidebar-menu li.dropdown.dropdown-open {
    margin-top: .3em;
}

    .sidebar-menu li.dropdown.open > a:hover, .sidebar-menu li.dropdown.dropdown-open > a:hover {
        color: #fff;
    }

    .sidebar-menu li.dropdown.open > a::after, .sidebar-menu li.dropdown.dropdown-open > a::after {
        -webkit-transform: translateY(-50%) rotate(90deg);
        -ms-transform: translateY(-50%) rotate(90deg);
        transform: translateY(-50%) rotate(90deg);
    }

    .sidebar-menu li.dropdown.open > .sidebar-submenu,
    .sidebar-menu li.dropdown.dropdown-open > .sidebar-submenu {
        display: block;
    }

.sidebar-menu .sidebar-submenu li.dropdown.open > .sidebar-submenu,
.sidebar-menu .sidebar-submenu li.dropdown.dropdown-open > .sidebar-submenu {
    display: block;
}

.sidebar-menu li > a.active-page {
    background-color: var(--brand);
    color: #fff;
}

    .sidebar-menu li > a.active-page:hover {
        color: #fff;
    }

.sidebar-menu div > a.active-page {
    background-color: var(--brand);
    color: #fff;
}

    .sidebar-menu div > a.active-page:hover {
        color: #fff;
    }

.sidebar-menu li a {
    padding: 0.125rem 0.75rem;
    font-weight: 500;
    display: flex;
    align-items: center;
    color: var(--text-secondary-light);
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    -o-border-radius: 8px;
    font-size: 0.72rem !important;
}

@media (min-width: 1650px) {
    .sidebar-menu li a {
        font-size: 0.74rem;
    }
}

.sidebar-menu li a:hover {
    color: var(--portal-sidebar-text-strong, var(--neutral-700));
}

.sidebar-menu li a .menu-icon {
    font-size: 0.82rem;
    margin-inline-end: 0.15rem;
}

@media (min-width: 1650px) {
    .sidebar-menu li a .menu-icon {
        font-size: 0.82rem;
        margin-inline-end: 0.15rem;
    }
}

.sidebar-menu li a i {
    line-height: 1.2;
    width: 1.25rem;
    margin-inline-end: 0.5rem;
    font-size: 1.125rem;
}

.sidebar-menu .sidebar-submenu {
    padding-block-start: 0.4rem;
    display: none;
    padding-inline-start: 1rem;
    transition: none;
}

@media (min-width: 1650px) {
    .sidebar-menu .sidebar-submenu {
        padding-inline-start: 0.75rem;
    }
}

.sidebar-menu .sidebar-submenu li.active-page a {
    background-color: var(--button-secondary);
    color: var(--text-primary-light);
}

.sidebar-menu .sidebar-submenu div.active-page a {
    background-color: var(--button-secondary);
    color: var(--text-primary-light);
}

.sidebar-menu .sidebar-submenu li a {
    padding: 0.3rem 0.55rem;
}

.sidebar-menu .sidebar-submenu li.dropdown > a {
    margin-block: 0.125rem;
    border: 1px solid rgba(148, 163, 184, 0.22);
    background: linear-gradient(135deg, rgba(248, 250, 252, 0.96), rgba(241, 245, 249, 0.72));
    box-shadow: 0 0.25rem 0.75rem rgba(15, 23, 42, 0.055);
}

    .sidebar-menu .sidebar-submenu li.dropdown > a:hover {
        border-color: rgba(148, 163, 184, 0.32);
        background: linear-gradient(135deg, rgba(248, 250, 252, 1), rgba(241, 245, 249, 0.92));
    }

.sidebar-menu .sidebar-submenu li.dropdown.open > a,
.sidebar-menu .sidebar-submenu li.dropdown.dropdown-open > a {
    border-color: transparent;
    background: var(--brand);
    box-shadow: 0 0.35rem 0.85rem rgba(59, 130, 246, 0.18);
    color: #fff;
}

.sidebar-menu .sidebar-submenu .sidebar-submenu {
    margin-block-start: 0.35rem;
    padding-block: 0.35rem 0.45rem;
    padding-inline-start: 0.75rem;
    border-inline-start: 1px solid rgba(148, 163, 184, 0.28);
    border-radius: 0 0.75rem 0.75rem 0;
    background: linear-gradient(90deg, rgba(248, 250, 252, 0.62), rgba(248, 250, 252, 0));
}

[data-theme="dark"] .sidebar-menu .sidebar-submenu li.dropdown > a, [data-bs-theme="dark"] .sidebar-menu .sidebar-submenu li.dropdown > a {
    border-color: rgba(75, 85, 99, 0.64);
    background: linear-gradient(135deg, rgba(31, 41, 55, 0.96), rgba(55, 65, 81, 0.58));
    box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.18);
}

    [data-theme="dark"] .sidebar-menu .sidebar-submenu li.dropdown > a:hover, [data-bs-theme="dark"] .sidebar-menu .sidebar-submenu li.dropdown > a:hover {
        border-color: rgba(156, 163, 175, 0.38);
        background: linear-gradient(135deg, rgba(31, 41, 55, 1), rgba(55, 65, 81, 0.72));
    }

[data-theme="dark"] .sidebar-menu .sidebar-submenu li.dropdown.open > a, [data-theme="dark"] .sidebar-menu .sidebar-submenu li.dropdown.dropdown-open > a, [data-bs-theme="dark"] .sidebar-menu .sidebar-submenu li.dropdown.open > a, [data-bs-theme="dark"] .sidebar-menu .sidebar-submenu li.dropdown.dropdown-open > a {
    border-color: transparent;
    background: var(--brand);
    color: #fff;
}

[data-theme="dark"] .sidebar-menu .sidebar-submenu .sidebar-submenu, [data-bs-theme="dark"] .sidebar-menu .sidebar-submenu .sidebar-submenu {
    border-inline-start-color: rgba(75, 85, 99, 0.72);
    background: linear-gradient(90deg, rgba(31, 41, 55, 0.48), rgba(31, 41, 55, 0));
}

.sidebar-menu .menu-link-status-dot {
    display: inline-block;
    width: 0.375rem;
    height: 0.375rem;
    min-width: 0.375rem;
    min-height: 0.375rem;
    border-radius: 50%;
    background-color: var(--success-main, #22c55e);
    margin-inline-end: 0.25rem;
    vertical-align: middle;
    flex-shrink: 0;
}

    .sidebar-menu .menu-link-status-dot.menu-link-status-dot-access-denied {
        background-color: var(--danger-main);
    }

    .sidebar-menu .menu-link-status-dot.menu-link-status-dot-menu-secondary {
        background-color: var(--neutral-400);
    }

    /* Em desenvolvimento / não pronto para produção (diferente de acesso negado) */
    .sidebar-menu .menu-link-status-dot.menu-link-status-dot-wip {
        background-color: var(--warning-main, #f59e0b);
    }

    /* Tela ou funcionalidade ainda não finalizada (vermelho; link pode estar ativo) */
    .sidebar-menu .menu-link-status-dot.menu-link-status-dot-unfinished {
        background-color: var(--danger-main, #ef4444);
    }

    /* Mais IA — agentes online no submenu (pulso verde) */
    .sidebar-menu .menu-link-status-dot.menu-link-status-dot-online {
        background-color: var(--success-main, #22c55e);
        animation: menu-link-status-online-pulse 1.15s ease-in-out infinite;
    }

@keyframes menu-link-status-online-pulse {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.55);
    }

    50% {
        opacity: 0.45;
        transform: scale(1.14);
        box-shadow: 0 0 0 0.4rem rgba(34, 197, 94, 0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .sidebar-menu .menu-link-status-dot.menu-link-status-dot-online {
        animation: none;
        opacity: 1;
        transform: none;
        box-shadow: none;
    }
}

.sidebar-menu .sidebar-submenu li a .menu-link-status-dot {
    margin-inline-end: 0.25rem;
}

.sidebar-menu .sidebar-menu-group-title {
    color: var(--neutral-500);
    font-weight: 600;
    margin-block: 0.35rem;
    font-size: 0.75rem;
}

@media (min-width: 1650px) {
    .sidebar-menu .sidebar-menu-group-title {
        font-size: 0.78rem;
    }
}

.dashboard-main {
    margin-inline-start: 0;
    display: flex;
    flex-wrap: wrap;
    flex-flow: column;
    min-height: 100vh;
    transition: all 0.3s;
}

@media (min-width: 1200px) {
    .dashboard-main {
        margin-inline-start: 12.25rem;
    }
}

@media (min-width: 1400px) {
    .dashboard-main {
        margin-inline-start: 14.75rem;
    }
}

@media (min-width: 1650px) {
    .dashboard-main {
        margin-inline-start: 16.5rem;
    }
}

.dashboard-main-body {
    padding: 1rem 1.5rem;
}

@media (min-width: 1400px) {
    .dashboard-main-body {
        padding: 0.5rem 1.5rem;
    }
}

/* Main_Control_Notify — viewport útil do navegador; layout/cards: Content/Main_Control_Notify.css */
main.dashboard-main:has(> .dashboard-main-body.main-control-notify-page--viewport-fill) {
    flex-direction: column;
    flex-wrap: nowrap;
    height: 100vh;
    height: 100dvh;
    max-height: 100vh;
    max-height: 100dvh;
    min-height: 100vh;
    min-height: 100dvh;
    overflow: hidden;
}

    main.dashboard-main:has(> .dashboard-main-body.main-control-notify-page--viewport-fill) > nav,
    main.dashboard-main:has(> .dashboard-main-body.main-control-notify-page--viewport-fill) > .header,
    main.dashboard-main:has(> .dashboard-main-body.main-control-notify-page--viewport-fill) > .dashboard-main-body:not(.main-control-notify-page--viewport-fill) {
        flex-shrink: 0;
    }

    main.dashboard-main:has(> .dashboard-main-body.main-control-notify-page--viewport-fill) > .dashboard-main-body.main-control-notify-page--viewport-fill {
        flex: 1 1 0;
        min-height: 0;
        max-width: 100%;
        overflow: hidden;
        display: flex;
        flex-direction: column;
    }

    main.dashboard-main:has(> .dashboard-main-body.main-control-notify-page--viewport-fill) .main-control-notify-page--viewport-fill .min-h-0 {
        min-height: 0 !important;
    }

/* Mais_Logistic_Quick_Shortcuts — viewport útil; scroll só nas quatro zonas de cartões */
main.dashboard-main:has(> .dashboard-main-body.quick-shortcuts-page--viewport-fill) {
    flex-direction: column;
    flex-wrap: nowrap;
    height: 100vh;
    height: 100dvh;
    max-height: 100vh;
    max-height: 100dvh;
    min-height: 100vh;
    min-height: 100dvh;
    overflow: hidden;
}

    main.dashboard-main:has(> .dashboard-main-body.quick-shortcuts-page--viewport-fill) > nav,
    main.dashboard-main:has(> .dashboard-main-body.quick-shortcuts-page--viewport-fill) > .header,
    main.dashboard-main:has(> .dashboard-main-body.quick-shortcuts-page--viewport-fill) > .dashboard-main-body:not(.quick-shortcuts-page--viewport-fill) {
        flex-shrink: 0;
    }

    main.dashboard-main:has(> .dashboard-main-body.quick-shortcuts-page--viewport-fill) > .dashboard-main-body.quick-shortcuts-page--viewport-fill {
        flex: 1 1 0;
        min-height: 0;
        max-width: 100%;
        overflow: hidden;
        display: flex;
        flex-direction: column;
    }

    main.dashboard-main:has(> .dashboard-main-body.quick-shortcuts-page--viewport-fill) .quick-shortcuts-page--viewport-fill .min-h-0 {
        min-height: 0 !important;
    }

/* Mais Studio — Dashboard_Main: viewport útil (canvas estilo Stitch; mesmo contrato que quick-shortcuts) */
main.dashboard-main:has(> .dashboard-main-body.ms-studio-stitch-page--viewport-fill) {
    flex-direction: column;
    flex-wrap: nowrap;
    height: 100vh;
    height: 100dvh;
    max-height: 100vh;
    max-height: 100dvh;
    min-height: 100vh;
    min-height: 100dvh;
    overflow: hidden;
}

    main.dashboard-main:has(> .dashboard-main-body.ms-studio-stitch-page--viewport-fill) > nav,
    main.dashboard-main:has(> .dashboard-main-body.ms-studio-stitch-page--viewport-fill) > .header,
    main.dashboard-main:has(> .dashboard-main-body.ms-studio-stitch-page--viewport-fill) > .dashboard-main-body:not(.ms-studio-stitch-page--viewport-fill) {
        flex-shrink: 0;
    }

    main.dashboard-main:has(> .dashboard-main-body.ms-studio-stitch-page--viewport-fill) > .dashboard-main-body.ms-studio-stitch-page--viewport-fill {
        flex: 1 1 0;
        min-height: 0;
        max-width: 100%;
        overflow: hidden;
        display: flex;
        flex-direction: column;
    }

    main.dashboard-main:has(> .dashboard-main-body.ms-studio-stitch-page--viewport-fill) .ms-studio-stitch-page--viewport-fill .min-h-0 {
        min-height: 0 !important;
    }

    main.dashboard-main:has(> .dashboard-main-body.ms-studio-stitch-page--viewport-fill) .ms-studio-stitch-page--viewport-fill .ms-studio-stitch-root {
        flex: 1 1 0;
        min-height: 0;
        overflow: hidden;
        display: flex;
        flex-direction: column;
    }

    main.dashboard-main:has(> .dashboard-main-body.ms-studio-stitch-page--viewport-fill) > footer.footer-portal-copyright {
        flex-shrink: 0;
    }

@supports not selector(:has(*)) {
    .quick-shortcuts-page--viewport-fill {
        min-height: calc(100dvh - 11rem);
        max-height: calc(100dvh - 11rem);
        overflow: hidden;
        display: flex;
        flex-direction: column;
    }

        .quick-shortcuts-page--viewport-fill .min-h-0 {
            min-height: 0 !important;
        }
}

.dashboard-main-body-ai:not(.dashboard-main-body) {
    padding: 0rem 0.9375rem;
}

@media (min-width: 1400px) {
    .dashboard-main-body-ai:not(.dashboard-main-body) {
        padding: 0rem 1rem;
    }
}

main.dashboard-main:has(> .dashboard-main-body.ai-search-page--fill) {
    flex-wrap: nowrap;
}

main.dashboard-main > .dashboard-main-body.ai-search-page--fill {
    flex: 1 1 0;
    min-height: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

main.dashboard-main > .dashboard-main-body.ai-search-page--fill .min-h-0 {
    min-height: 0 !important;
}

@media (min-width: 1199px) {
    .dashboard-main.active {
        margin-inline-start: 4.5rem;
    }
}

.footer-portal-copyright {
    font-style: italic;
    font-size: 0.6rem;
    color: #9ca3af;
    margin: 40px 0px 60px 0px;
    text-align: center;
    font-family: 'Novecentowide Light';
}

[data-theme=dark] .footer-portal-copyright {
    color: var(--neutral-500);
}

.sidebar-menu li > a.active-page {
    background-color: var(--brand, #3b82f6);
    color: #fff;
}

    .sidebar-menu li > a.active-page:hover {
        color: #fff;
    }

.sidebar-menu .sidebar-submenu li.active-page a {
    background-color: var(--button-secondary, #f1f5f9);
    color: var(--text-primary-light, #1e293b);
}

.sidebar-menu li.active-page {
    background-color: transparent;
}

    .sidebar-menu li.active-page > a {
        background-color: var(--brand, #3b82f6);
        color: #fff;
    }

.sidebar-menu .dropdown.active-page {
    background-color: transparent;
}

    .sidebar-menu .dropdown.active-page > a {
        background-color: var(--brand, #3b82f6);
        color: #fff;
    }

/* Portal sidebar refinement: modern hierarchy, focus states and responsive drawer polish. */
.sidebar {
    --portal-sidebar-brand-1: #0056E4;
    --portal-sidebar-brand-2: #0780DD;
    --portal-sidebar-brand-3: #26BBCD;
    --portal-sidebar-surface: rgba(255, 255, 255, 0.96);
    --portal-sidebar-surface-soft: rgba(243, 244, 246, 0.82);
    --portal-sidebar-border: rgba(148, 163, 184, 0.2);
    --portal-sidebar-text: var(--text-secondary-light, #475569);
    --portal-sidebar-text-strong: var(--text-primary-light, #0f172a);
    --portal-sidebar-muted: var(--neutral-500, #64748b);
    --portal-sidebar-shadow: 0.75rem 0 2rem rgba(15, 23, 42, 0.08);
    background: radial-gradient(circle at 18% 0%, rgba(148, 163, 184, 0.16), transparent 30%), linear-gradient(180deg, var(--portal-sidebar-surface) 0%, var(--white, #fff) 42%, rgba(243, 244, 246, 0.9) 100%);
    border-inline-end: 1px solid var(--portal-sidebar-border);
    box-shadow: var(--portal-sidebar-shadow);
}

.sidebar-logo {
    position: relative;
    background: linear-gradient(135deg, rgba(248, 250, 252, 0.96), rgba(229, 231, 235, 0.46));
    border-inline-end: 0;
    border-block-end: 1px solid var(--portal-sidebar-border);
}

    .sidebar-logo::after {
        position: absolute;
        content: "";
        inset-inline: 1rem;
        inset-block-end: 0;
        height: 1px;
        background: linear-gradient(90deg, transparent, rgba(148, 163, 184, 0.42), rgba(209, 213, 219, 0.72), transparent);
    }

.sidebar-menu-area {
    border-inline-end: 0;
    scrollbar-gutter: stable;
}

.sidebar-menu > li {
    margin-block: 0.0625rem;
}

.sidebar-menu li a {
    position: relative;
    gap: 0.4rem;
    color: var(--portal-sidebar-text);
    letter-spacing: -0.005em;
    transition: background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

    .sidebar-menu li a:hover {
        color: var(--portal-sidebar-text-strong);
        border-color: rgba(148, 163, 184, 0.22);
        background: linear-gradient(135deg, rgba(148, 163, 184, 0.12), rgba(100, 116, 139, 0.08));
        box-shadow: 0 0.35rem 1rem rgba(15, 23, 42, 0.04);
    }

    .sidebar-menu li a:focus-visible {
        outline: 2px solid rgba(0, 86, 228, 0.42);
        outline-offset: 2px;
    }

    .sidebar-menu li a .menu-icon,
    .sidebar-menu li a i.menu-icon {
        width: 1.35rem;
        min-width: 1.35rem;
        height: 1.35rem;
        margin-inline-end: 0 !important;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 0.45rem;
        color: var(--portal-sidebar-muted);
        background: linear-gradient(135deg, rgba(148, 163, 184, 0.16), rgba(100, 116, 139, 0.1));
        font-size: 0.82rem;
    }

.sidebar-menu li.dropdown > a::after {
    inset-inline-end: 0.85rem;
    width: 1.35rem;
    height: 1.35rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    color: var(--portal-sidebar-muted);
    background-color: rgba(148, 163, 184, 0.1);
    font-size: 0.95rem;
    transition: transform 0.18s ease, color 0.18s ease, background-color 0.18s ease;
}

.sidebar-menu li.dropdown.open > a::after,
.sidebar-menu li.dropdown.dropdown-open > a::after {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.2);
}

.sidebar-menu li.dropdown.open > a,
.sidebar-menu li.dropdown.dropdown-open > a,
.sidebar-menu li > a.active-page,
.sidebar-menu li.active-page > a,
.sidebar-menu .dropdown.active-page > a {
    border-color: transparent;
    background: linear-gradient(135deg, var(--portal-sidebar-brand-1), var(--portal-sidebar-brand-2) 52%, var(--portal-sidebar-brand-3));
    color: #fff;
    box-shadow: 0 0.55rem 1.25rem rgba(0, 86, 228, 0.18);
}

    .sidebar-menu li.dropdown.open > a:hover,
    .sidebar-menu li.dropdown.dropdown-open > a:hover,
    .sidebar-menu li > a.active-page:hover,
    .sidebar-menu li.active-page > a:hover,
    .sidebar-menu .dropdown.active-page > a:hover {
        color: #fff;
    }

    .sidebar-menu li.dropdown.open > a .menu-icon,
    .sidebar-menu li.dropdown.dropdown-open > a .menu-icon,
    .sidebar-menu li > a.active-page .menu-icon,
    .sidebar-menu li.active-page > a .menu-icon,
    .sidebar-menu .dropdown.active-page > a .menu-icon {
        color: #fff;
        background-color: rgba(255, 255, 255, 0.18);
    }

.sidebar-menu .sidebar-submenu {
    margin-block-start: 0.2rem;
    margin-block-end: 0.3rem;
    padding: 0.25rem 0 0.35rem 0.75rem;
    margin-inline-start: 0.55rem;
    border-inline-start: 1px solid rgba(0, 86, 228, 0.16);
}

    .sidebar-menu .sidebar-submenu li a {
        min-height: 1.9rem;
        padding: 0.32rem 0.55rem;
        border-radius: 0.65rem;
        font-size: 0.74rem;
        font-weight: 500;
    }

    .sidebar-menu .sidebar-submenu li.active-page > a,
    .sidebar-menu .sidebar-submenu li.active-page a.active-page {
        background: linear-gradient(135deg, rgba(0, 86, 228, 0.12), rgba(38, 187, 205, 0.1));
        color: var(--portal-sidebar-brand-1);
        border-color: rgba(0, 86, 228, 0.14);
        box-shadow: inset 0.18rem 0 0 var(--portal-sidebar-brand-1);
    }

    .sidebar-menu .sidebar-submenu li.dropdown > a {
        border-color: rgba(0, 86, 228, 0.12);
        background: linear-gradient(135deg, rgba(255, 255, 255, 0.92), rgba(241, 245, 249, 0.78));
        box-shadow: 0 0.3rem 0.85rem rgba(15, 23, 42, 0.055);
    }

    .sidebar-menu .sidebar-submenu li.dropdown.open > a,
    .sidebar-menu .sidebar-submenu li.dropdown.dropdown-open > a {
        background: linear-gradient(135deg, var(--portal-sidebar-brand-1), var(--portal-sidebar-brand-2));
        color: #fff;
        box-shadow: 0 0.45rem 1rem rgba(0, 86, 228, 0.16);
    }

    .sidebar-menu .sidebar-submenu .sidebar-submenu {
        margin-inline-start: 0.2rem;
        padding: 0.3rem 0 0.3rem 0.55rem;
        border-inline-start: 1px solid rgba(38, 187, 205, 0.28);
        border-radius: 0 0.65rem 0.65rem 0;
        background: linear-gradient(90deg, rgba(0, 86, 228, 0.045), rgba(38, 187, 205, 0.025), transparent);
    }

.sidebar-menu .sidebar-menu-group-title {
    position: relative;
    margin: 0.55rem 0 0.2rem;
    padding: 0.12rem 0.55rem;
    color: var(--portal-sidebar-muted);
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.085em;
    text-transform: uppercase;
}

    .sidebar-menu .sidebar-menu-group-title::before {
        content: "";
        display: inline-block;
        width: 0.35rem;
        height: 0.35rem;
        margin-inline-end: 0.35rem;
        border-radius: 50%;
        background: linear-gradient(135deg, var(--portal-sidebar-brand-1), var(--portal-sidebar-brand-3));
        opacity: 0.72;
        vertical-align: 0.05rem;
    }

@media (min-width: 1200px) {
    .sidebar.active {
        box-shadow: 0.35rem 0 1.25rem rgba(15, 23, 42, 0.07);
    }

        .sidebar.active:hover {
            box-shadow: var(--portal-sidebar-shadow);
        }

        .sidebar.active .sidebar-menu li a .menu-icon,
        .sidebar.active .sidebar-menu li a i {
            margin-inline-end: 0 !important;
        }
}

@media (max-width: 1199px) {
    body.overlay-active::after {
        position: fixed;
        inset: 0;
        width: 100%;
        height: 100dvh;
        z-index: 1030;
        background: rgba(15, 23, 42, 0.54);
        opacity: 1;
        backdrop-filter: blur(0.16rem);
    }

    .sidebar.sidebar-open {
        width: min(18.5rem, 88vw) !important;
        max-width: 18.5rem !important;
        box-shadow: 1rem 0 2.5rem rgba(15, 23, 42, 0.22);
    }

        .sidebar.sidebar-open .sidebar-menu-area {
            padding: 0.45rem 0.65rem 0.85rem;
        }

        .sidebar.sidebar-open .sidebar-menu .sidebar-submenu {
            margin-inline-start: 0.5rem;
            padding-inline-start: 0.65rem;
        }
}

[data-theme="dark"] .sidebar, [data-bs-theme="dark"] .sidebar {
    --portal-sidebar-surface: rgba(31, 41, 55, 0.94);
    --portal-sidebar-surface-soft: rgba(55, 65, 81, 0.72);
    --portal-sidebar-border: rgba(75, 85, 99, 0.54);
    --portal-sidebar-text: #cbd5e1;
    --portal-sidebar-text-strong: #f9fafb;
    --portal-sidebar-muted: #9ca3af;
    --portal-sidebar-shadow: 0.75rem 0 2rem rgba(0, 0, 0, 0.28);
    background: radial-gradient(circle at 18% 0%, rgba(75, 85, 99, 0.28), transparent 30%), linear-gradient(180deg, rgba(31, 41, 55, 0.98) 0%, rgba(17, 24, 39, 0.98) 100%);
}

[data-theme="dark"] .sidebar-logo, [data-bs-theme="dark"] .sidebar-logo {
    background: linear-gradient(135deg, rgba(31, 41, 55, 0.98), rgba(55, 65, 81, 0.62));
}

[data-theme="dark"] .sidebar-menu li a:hover, [data-bs-theme="dark"] .sidebar-menu li a:hover {
    color: var(--portal-sidebar-text-strong);
    background: linear-gradient(135deg, rgba(107, 114, 128, 0.22), rgba(75, 85, 99, 0.14));
    border-color: rgba(156, 163, 175, 0.24);
}

[data-theme="dark"] .sidebar-menu .sidebar-submenu li.dropdown > a, [data-bs-theme="dark"] .sidebar-menu .sidebar-submenu li.dropdown > a {
    background: linear-gradient(135deg, rgba(31, 41, 55, 0.96), rgba(55, 65, 81, 0.66));
}

[data-theme="dark"] .sidebar-menu .sidebar-submenu li.active-page > a, [data-theme="dark"] .sidebar-menu .sidebar-submenu li.active-page a.active-page, [data-bs-theme="dark"] .sidebar-menu .sidebar-submenu li.active-page > a, [data-bs-theme="dark"] .sidebar-menu .sidebar-submenu li.active-page a.active-page {
    background: linear-gradient(135deg, rgba(0, 86, 228, 0.24), rgba(38, 187, 205, 0.16));
    color: #f9fafb;
}

.page-loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(248, 250, 252, 0.84);
    backdrop-filter: blur(2px);
    z-index: 1040;
    display: none;
    justify-content: center;
    align-items: center;
    padding: 1rem;
}

.page-loader__button {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    border: 0;
    background: linear-gradient(135deg, #0056E4 0%, #0780DD 52%, #26BBCD 100%);
    box-shadow: 0 18px 44px -26px rgba(0, 86, 228, 0.72);
    color: #fff;
    font-weight: 600;
    pointer-events: none;
    opacity: 1;
}

[data-theme="dark"] .page-loader,
[data-bs-theme="dark"] .page-loader {
    background: rgba(15, 23, 42, 0.82);
}

.policy-page a {
    color: var(--bs-primary) !important;
    font-weight: 600;
}

    .policy-page a:hover {
        color: var(--bs-primary) !important;
        text-decoration: underline;
    }

::placeholder {
    font-size: 0.85rem !important;
    opacity: 0.6 !important;
    color: #6c757d !important;
}

input::placeholder,
textarea::placeholder {
    font-size: 0.85rem !important;
    opacity: 0.6 !important;
    color: #6c757d !important;
}

.select2-selection__placeholder {
    font-size: 0.85rem !important;
    opacity: 0.6 !important;
    color: #6c757d !important;
}

/* Select2 + Bootstrap -sm: pair native `form-select form-select-sm select2-sm` with `form-control-sm` dates/text (reference screen System_Tickets/Tickets_Reports.aspx; rule .cursor/rules/platform-portal-context.mdc § 6.2). */
select.select2-sm + .select2-container .select2-selection--single,
select.select2-sm ~ .select2-container .select2-selection--single {
    height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2)) !important;
    min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2)) !important;
    padding: 0.25rem 0.5rem !important;
    font-size: 0.7rem !important;
    line-height: 1.5 !important;
    display: flex !important;
    align-items: center !important;
}

    select.select2-sm + .select2-container .select2-selection--single .select2-selection__rendered,
    select.select2-sm ~ .select2-container .select2-selection--single .select2-selection__rendered,
    select.select2-sm + .select2-container .select2-selection--single .select2-selection__placeholder,
    select.select2-sm ~ .select2-container .select2-selection--single .select2-selection__placeholder {
        line-height: 1.5 !important;
        padding: 0 !important;
        padding-left: 0 !important;
        padding-right: 20px !important;
        font-size: 0.75rem !important;
        display: block !important;
    }

    select.select2-sm + .select2-container .select2-selection--single .select2-selection__arrow,
    select.select2-sm ~ .select2-container .select2-selection--single .select2-selection__arrow {
        height: 100% !important;
        right: 0.5rem !important;
        top: 0 !important;
        position: absolute !important;
        display: flex !important;
        align-items: center !important;
    }

select.select2-sm + .select2-container,
select.select2-sm ~ .select2-container {
    font-size: 0.75rem !important;
}

    select.select2-sm + .select2-container .select2-selection--multiple,
    select.select2-sm ~ .select2-container .select2-selection--multiple {
        min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2)) !important;
        padding: 0.125rem 0.25rem !important;
        font-size: 0.75rem !important;
        display: flex !important;
        align-items: center !important;
    }

        select.select2-sm + .select2-container .select2-selection--multiple .select2-selection__rendered,
        select.select2-sm ~ .select2-container .select2-selection--multiple .select2-selection__rendered {
            padding: 0 !important;
            font-size: 0.75rem !important;
            display: flex !important;
            flex-wrap: wrap !important;
            align-items: center !important;
            width: 100% !important;
        }

        select.select2-sm + .select2-container .select2-selection--multiple .select2-selection__choice,
        select.select2-sm ~ .select2-container .select2-selection--multiple .select2-selection__choice {
            font-size: 0.75rem !important;
            padding: 0.125rem 0.375rem !important;
            margin: 0.0625rem 0.25rem 0.0625rem 0 !important;
        }

    select.select2-sm + .select2-container .select2-search--inline,
    select.select2-sm ~ .select2-container .select2-search--inline {
        float: none !important;
        line-height: 1.5 !important;
    }

        select.select2-sm + .select2-container .select2-search--inline .select2-search__field,
        select.select2-sm ~ .select2-container .select2-search--inline .select2-search__field {
            margin-top: 0 !important;
            height: auto !important;
            min-height: 0 !important;
            line-height: 1.5 !important;
            font-size: 0.75rem !important;
        }

[data-theme="dark"] select.select2-sm + .select2-container .select2-selection--single, [data-bs-theme="dark"] select.select2-sm + .select2-container .select2-selection--single, [data-theme="dark"] select.select2-sm ~ .select2-container .select2-selection--single, [data-bs-theme="dark"] select.select2-sm ~ .select2-container .select2-selection--single {
    background-color: var(--bs-body-bg, #1f2937) !important;
    border-color: var(--bs-border-color, #4b5563) !important;
    color: var(--bs-body-color, #f9fafb) !important;
}

[data-theme="dark"] select.select2-sm + .select2-container .select2-selection--multiple, [data-bs-theme="dark"] select.select2-sm + .select2-container .select2-selection--multiple, [data-theme="dark"] select.select2-sm ~ .select2-container .select2-selection--multiple, [data-bs-theme="dark"] select.select2-sm ~ .select2-container .select2-selection--multiple {
    background-color: var(--bs-body-bg, #1f2937) !important;
    border-color: var(--bs-border-color, #4b5563) !important;
    color: var(--bs-body-color, #f9fafb) !important;
}

    [data-theme="dark"] select.select2-sm + .select2-container .select2-selection--multiple .select2-selection__choice,
    [data-bs-theme="dark"] select.select2-sm + .select2-container .select2-selection--multiple .select2-selection__choice,
    [data-theme="dark"] select.select2-sm ~ .select2-container .select2-selection--multiple .select2-selection__choice,
    [data-bs-theme="dark"] select.select2-sm ~ .select2-container .select2-selection--multiple .select2-selection__choice {
        background-color: rgba(255, 255, 255, 0.08) !important;
        border-color: var(--bs-border-color, #4b5563) !important;
        color: var(--bs-body-color, #f9fafb) !important;
    }

    [data-theme="dark"] select.select2-sm + .select2-container .select2-selection--multiple .select2-selection__choice__remove,
    [data-bs-theme="dark"] select.select2-sm + .select2-container .select2-selection--multiple .select2-selection__choice__remove,
    [data-theme="dark"] select.select2-sm ~ .select2-container .select2-selection--multiple .select2-selection__choice__remove,
    [data-bs-theme="dark"] select.select2-sm ~ .select2-container .select2-selection--multiple .select2-selection__choice__remove {
        color: var(--bs-secondary-color, #9ca3af) !important;
    }

/* Select2 — dark theme (global): html carries data-theme / data-bs-theme (Site.Master). Overrides Select2 default light surfaces for widget + list (dropdown is often under body). No extra markup — applies to all Select2 --default instances. */
[data-theme="dark"] .select2-dropdown, [data-bs-theme="dark"] .select2-dropdown {
    background-color: var(--bs-body-bg, #1f2937) !important;
    border-color: var(--bs-border-color, #4b5563) !important;
    color: var(--bs-body-color, #f9fafb) !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--single, [data-bs-theme="dark"] .select2-container--default .select2-selection--single, [data-theme="dark"] .select2-container--default .select2-selection--multiple, [data-bs-theme="dark"] .select2-container--default .select2-selection--multiple {
    background-color: var(--bs-body-bg, #1f2937) !important;
    border-color: var(--bs-border-color, #4b5563) !important;
}

    [data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__rendered,
    [data-bs-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__rendered,
    [data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__rendered,
    [data-bs-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__rendered {
        color: var(--bs-body-color, #f9fafb) !important;
    }

    [data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__placeholder,
    [data-bs-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__placeholder {
        color: var(--bs-secondary-color, #9ca3af) !important;
    }

    [data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__arrow b,
    [data-bs-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__arrow b {
        border-color: #9ca3af transparent transparent transparent !important;
    }

[data-theme="dark"] .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b, [data-bs-theme="dark"] .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    border-color: transparent transparent #9ca3af transparent !important;
}

[data-theme="dark"] .select2-container--default.select2-container--disabled .select2-selection--single, [data-bs-theme="dark"] .select2-container--default.select2-container--disabled .select2-selection--single, [data-theme="dark"] .select2-container--default.select2-container--disabled .select2-selection--multiple, [data-bs-theme="dark"] .select2-container--default.select2-container--disabled .select2-selection--multiple {
    background-color: var(--bs-secondary-bg, #374151) !important;
    opacity: 0.9;
}

[data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice, [data-bs-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: rgba(255, 255, 255, 0.08) !important;
    border-color: var(--bs-border-color, #4b5563) !important;
    color: var(--bs-body-color, #f9fafb) !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice__remove, [data-bs-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: var(--bs-secondary-color, #9ca3af) !important;
}

    [data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover,
    [data-bs-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
        color: var(--bs-body-color, #f9fafb) !important;
    }

[data-theme="dark"] .select2-container--default.select2-container--focus .select2-selection--multiple, [data-bs-theme="dark"] .select2-container--default.select2-container--focus .select2-selection--multiple {
    border-color: var(--bs-primary, #3b82f6) !important;
}

[data-theme="dark"] .select2-search--dropdown .select2-search__field, [data-bs-theme="dark"] .select2-search--dropdown .select2-search__field {
    background-color: var(--bs-body-bg, #1f2937) !important;
    border-color: var(--bs-border-color, #4b5563) !important;
    color: var(--bs-body-color, #f9fafb) !important;
}

[data-theme="dark"] .select2-container--default .select2-results__option, [data-bs-theme="dark"] .select2-container--default .select2-results__option {
    color: var(--bs-body-color, #f9fafb) !important;
}

    [data-theme="dark"] .select2-container--default .select2-results__option[aria-disabled=true],
    [data-bs-theme="dark"] .select2-container--default .select2-results__option[aria-disabled=true] {
        color: var(--bs-secondary-color, #9ca3af) !important;
    }

    [data-theme="dark"] .select2-container--default .select2-results__option[aria-selected=true],
    [data-bs-theme="dark"] .select2-container--default .select2-results__option[aria-selected=true] {
        background-color: var(--bs-secondary-bg, #374151) !important;
        color: var(--bs-body-color, #f9fafb) !important;
    }

[data-theme="dark"] .select2-container--default .select2-results__option--highlighted[aria-selected], [data-bs-theme="dark"] .select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: rgba(59, 130, 246, 0.35) !important;
    color: var(--bs-body-color, #f9fafb) !important;
}

[data-theme="dark"] .select2-container--default .select2-results__group, [data-bs-theme="dark"] .select2-container--default .select2-results__group {
    color: var(--bs-secondary-color, #9ca3af) !important;
}

/* Select2 — default portal typography: smaller text on all widgets and dropdowns (no per-page class). Use explicit rem on text nodes (not inherit) so size does not depend on intermediate ancestors. `select2-sm` rules above remain more specific where that class is used on the native select. */
.select2-container,
.select2-dropdown {
    font-size: 0.8125rem !important;
}

    .select2-container .select2-selection--single .select2-selection__rendered,
    .select2-container .select2-selection--single .select2-selection__placeholder,
    .select2-container .select2-selection--multiple .select2-selection__rendered,
    .select2-container .select2-selection--multiple .select2-selection__choice,
    .select2-container .select2-search--inline .select2-search__field,
    .select2-container--default .select2-selection--single .select2-selection__rendered,
    .select2-container--default .select2-selection--single .select2-selection__placeholder,
    .select2-container--default .select2-selection--multiple .select2-selection__rendered,
    .select2-container--default .select2-selection--multiple .select2-selection__choice,
    .select2-container--default .select2-search--inline .select2-search__field,
    .select2-dropdown .select2-results__option,
    .select2-dropdown .select2-results__group,
    .select2-dropdown .select2-search__field,
    .select2-container--default .select2-results__option,
    .select2-container--default .select2-results__group,
    .select2-container--default .select2-search--dropdown .select2-search__field {
        font-size: 0.8125rem !important;
    }

.ai-floating-container {
    position: fixed;
    bottom: 15px;
    right: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 1000;
}

.ai-floating-btn {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #0056E4 0%, #0780DD 50%, #26BBCD 100%);
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 25px rgba(0, 86, 228, 0.4);
    transition: all 0.3s ease;
    text-decoration: none;
    cursor: pointer;
    position: relative;
}

    .ai-floating-btn:hover {
        transform: translateY(-3px) scale(1.05);
        box-shadow: 0 12px 35px rgba(0, 86, 228, 0.6);
        background: linear-gradient(135deg, #0047B8 0%, #0666C4 50%, #1FA8C4 100%);
    }

    .ai-floating-btn:active {
        transform: translateY(-1px) scale(1.02);
    }

.ai-icon {
    font-size: 36px;
    color: white;
    transition: all 0.3s ease;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

.ai-floating-btn:hover .ai-icon {
    transform: scale(1.1);
    filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
}

.ai-floating-text {
    margin-top: 8px;
    font-size: 12px;
    font-weight: 600;
    color: #0056E4;
    text-align: center;
    background: rgba(255, 255, 255, 0.9);
    padding: 4px 8px;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.ai-floating-container:hover .ai-floating-text {
    color: #0780DD;
    transform: translateY(-2px);
}

.ai-floating-btn::before {
    content: '';
    position: absolute;
    top: -8px;
    left: -8px;
    right: -8px;
    bottom: -8px;
    border-radius: 50%;
    background: linear-gradient(135deg, #0056E4 0%, #0780DD 50%, #26BBCD 100%);
    opacity: 0.3;
    animation: pulse 2s infinite;
    z-index: -1;
}

.modal .dropdown-menu,
.modal .form-select,
.modal select {
    z-index: 1060 !important;
}

    .modal .dropdown-menu[data-bs-popper] {
        z-index: 1060 !important;
    }

.modal-dialog {
    z-index: 1056 !important;
}

.modal-content {
    z-index: 1057 !important;
}

.modal.show .modal-dialog {
    z-index: 1056 !important;
}

.modal.show .modal-content {
    z-index: 1057 !important;
    position: relative;
}

.modal.show select,
.modal.show .form-select {
    position: relative;
    z-index: 1058 !important;
}

    .modal.show select:focus,
    .modal.show .form-select:focus {
        z-index: 1059 !important;
    }

.modal .select2-container {
    z-index: 1058 !important;
}

.modal .select2-container--open {
    z-index: 1059 !important;
}

.modal .select2-dropdown {
    z-index: 1060 !important;
    position: absolute !important;
}

.modal .select2-container--open .select2-dropdown {
    z-index: 1060 !important;
}

.modal .select2-results {
    z-index: 1060 !important;
}

.modal.show .select2-container {
    z-index: 1058 !important;
}

.modal.show .select2-container--open {
    z-index: 1059 !important;
}

.modal.show .select2-dropdown {
    z-index: 1060 !important;
}

.modal .select2-results__options {
    z-index: 1060 !important;
}

body > .select2-container--open {
    z-index: 1056 !important;
}

body > .select2-dropdown {
    z-index: 1060 !important;
}

.modal.show ~ .select2-container--open,
.modal.show ~ .select2-dropdown {
    z-index: 1060 !important;
}

.select2-dropdown {
    z-index: 1060 !important;
}

.select2-container--open .select2-dropdown {
    z-index: 1060 !important;
}

body:has(.modal.show) .select2-dropdown {
    z-index: 1060 !important;
}

body:has(.modal.show) .select2-container--open {
    z-index: 1059 !important;
}

.modal.show ~ * .select2-dropdown,
.modal.show ~ * .select2-container--open .select2-dropdown {
    z-index: 1060 !important;
}

.select2-container--open {
    z-index: 1059 !important;
}

    .select2-container--open.select2-container--below .select2-dropdown {
        z-index: 1060 !important;
    }

    .select2-container--open.select2-container--above .select2-dropdown {
        z-index: 1060 !important;
    }

.modal-backdrop {
    z-index: 1054 !important;
}

.modal-content select,
.modal-content .form-select {
    z-index: 1058 !important;
    position: relative;
}

.modal-body {
    overflow: visible !important;
}

.modal .modal-header .modal-title,
.modal .modal-title {
    font-size: 1rem !important;
    font-weight: 600 !important;
}

.modal .modal-body {
    font-size: 0.8rem !important;
}

    .modal .modal-body p,
    .modal .modal-body li,
    .modal .modal-body .form-label {
        font-size: 0.8rem !important;
    }

.modal-condensed {
    border-radius: 12px;
    border: none;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    overflow: visible !important;
}

.modal-header-condensed {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #e5e7eb;
    background: #f9fafb;
}

    .modal-header-condensed .modal-title {
        font-size: 0.875rem;
        font-weight: 600;
        color: #1f2937;
    }

.modal-body-condensed {
    padding: 1rem;
    font-size: 0.875rem;
    line-height: 1.5;
    overflow: visible !important;
}

.modal-footer-condensed {
    padding: 0.75rem 1rem;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
}

    .modal-footer-condensed .btn {
        font-size: 0.75rem;
        padding: 0.375rem 0.75rem;
    }

.btn-close-sm {
    width: 1rem;
    height: 1rem;
    padding: 0.25rem;
}

[data-theme="dark"] .modal-condensed {
    background: #1f2937;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .modal-header-condensed {
    background: #1f2937;
    border-bottom-color: #374151;
}

    [data-theme="dark"] .modal-header-condensed .modal-title {
        color: #f9fafb;
    }

[data-theme="dark"] .modal-body-condensed {
    background: #1f2937;
    color: #f9fafb;
}

[data-theme="dark"] .modal-footer-condensed {
    background: #1f2937;
    border-top-color: #374151;
}

[data-theme="dark"] .btn-close-sm {
    filter: invert(1);
}

.modal-content {
    overflow: visible !important;
}

.modal-dialog-scrollable .modal-content {
    overflow: visible !important;
}

.modal-dialog-scrollable .modal-body {
    overflow-y: auto;
    overflow-x: visible !important;
}

    /* Condensed body uses overflow visible by default; scrollable dialogs must keep a vertical scroll area */
    .modal-dialog-scrollable .modal-body.modal-body-condensed {
        overflow-y: auto !important;
        min-height: 0;
    }

/* Bootstrap scrollable expects .modal-content overflow hidden + max-height; global .modal-content rule used visible !important */
.modal-dialog-scrollable .modal-content.modal-condensed {
    overflow: hidden !important;
    max-height: 100% !important;
    min-height: 0;
}

.modal.show .form-select:focus,
.modal.show select:focus {
    z-index: 9999 !important;
    position: relative;
}

.modal.show .form-select option,
.modal.show select option {
    z-index: 9999 !important;
}

.modal-dialog {
    overflow: visible !important;
}

.modal-content .form-select,
.modal-content select {
    position: relative !important;
    z-index: 1058 !important;
}

    .modal-content .form-select:focus,
    .modal-content select:focus {
        z-index: 9999 !important;
    }

@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 0.3;
    }

    50% {
        transform: scale(1.1);
        opacity: 0.1;
    }

    100% {
        transform: scale(1);
        opacity: 0.3;
    }
}

@media (max-width: 768px) {
    .ai-floating-container {
        bottom: 40px;
        right: 20px;
    }

    .ai-floating-btn {
        width: 65px;
        height: 65px;
    }

    .ai-icon {
        font-size: 28px;
    }

    .ai-floating-text {
        font-size: 10px;
        padding: 3px 6px;
    }
}

[data-theme="dark"] .ai-floating-btn {
    background: linear-gradient(135deg, #0047B8 0%, #0666C4 50%, #1FA8C4 100%);
    box-shadow: 0 8px 25px rgba(0, 71, 184, 0.4);
}

    [data-theme="dark"] .ai-floating-btn:hover {
        background: linear-gradient(135deg, #003A9B 0%, #0555A3 50%, #1A8BB3 100%);
        box-shadow: 0 12px 35px rgba(0, 71, 184, 0.6);
    }

[data-theme="dark"] .ai-floating-text {
    color: #26BBCD;
    background: rgba(0, 0, 0, 0.8);
}

[data-theme="dark"] .ai-floating-container:hover .ai-floating-text {
    color: #4DD0E1;
}

/* Mais NFe master: AI floating button green gradient (Logistic uses unscoped .ai-floating-* blue rules above). */
.ai-floating-container--nfe .ai-floating-btn {
    background: linear-gradient(135deg, #009D71 0%, #2CA880 50%, #36F2D6 100%);
    box-shadow: 0 8px 25px rgba(0, 157, 113, 0.4);
}

    .ai-floating-container--nfe .ai-floating-btn:hover {
        box-shadow: 0 12px 35px rgba(0, 157, 113, 0.55);
        background: linear-gradient(135deg, #007a5a 0%, #238f6a 50%, #2bd4b8 100%);
    }

.ai-floating-container--nfe .ai-floating-text {
    color: #009D71;
}

.ai-floating-container--nfe:hover .ai-floating-text {
    color: #2CA880;
}

.ai-floating-container--nfe .ai-floating-btn::before {
    background: linear-gradient(135deg, #009D71 0%, #2CA880 50%, #36F2D6 100%);
}

[data-theme="dark"] .ai-floating-container--nfe .ai-floating-btn {
    background: linear-gradient(135deg, #007a5a 0%, #238f6a 50%, #2bd4b8 100%);
    box-shadow: 0 8px 25px rgba(0, 122, 90, 0.45);
}

    [data-theme="dark"] .ai-floating-container--nfe .ai-floating-btn:hover {
        background: linear-gradient(135deg, #00624a 0%, #1d7a5c 50%, #24b89f 100%);
        box-shadow: 0 12px 35px rgba(0, 122, 90, 0.6);
    }

[data-theme="dark"] .ai-floating-container--nfe .ai-floating-text {
    color: #36F2D6;
}

[data-theme="dark"] .ai-floating-container--nfe:hover .ai-floating-text {
    color: #5ff5dc;
}

[data-bs-theme="dark"] .ai-floating-container--nfe .ai-floating-btn {
    background: linear-gradient(135deg, #007a5a 0%, #238f6a 50%, #2bd4b8 100%);
    box-shadow: 0 8px 25px rgba(0, 122, 90, 0.45);
}

    [data-bs-theme="dark"] .ai-floating-container--nfe .ai-floating-btn:hover {
        background: linear-gradient(135deg, #00624a 0%, #1d7a5c 50%, #24b89f 100%);
        box-shadow: 0 12px 35px rgba(0, 122, 90, 0.6);
    }

[data-bs-theme="dark"] .ai-floating-container--nfe .ai-floating-text {
    color: #36F2D6;
}

[data-bs-theme="dark"] .ai-floating-container--nfe:hover .ai-floating-text {
    color: #5ff5dc;
}

.metric-card {
    background: white;
    border-radius: 12px;
    padding: 1.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    border: 1px solid #e5e7eb;
    transition: all 0.3s ease;
    height: 100%;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

    .metric-card:hover {
        transform: translateY(-2px);
        box-shadow: 0 10px 25px -3px rgba(0, 0, 0, 0.1);
    }

.metric-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    color: white;
}

.metric-value {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0.5rem 0;
    color: #111827;
}

.metric-label {
    color: #6b7280;
    font-size: 0.875rem;
    font-weight: 500;
}

.metric-change {
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.2rem 0.4rem;
    border-radius: 6px;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 2px;
    line-height: 1;
}

    .metric-change.positive {
        background: #dcfce7;
        color: #166534;
    }

    .metric-change.negative {
        background: #fef2f2;
        color: #dc2626;
    }

    .metric-change i {
        font-size: 0.65rem !important;
        display: inline-block;
    }

.gradient-success {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.gradient-warning {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

.gradient-danger {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
}

.gradient-info {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

/* Portal — jQuery UI Autocomplete (global) */
.portal-autocomplete.ui-autocomplete {
    max-height: 220px;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0.2rem 0 !important;
    margin-top: 0.15rem !important;
    border: 1px solid var(--bs-border-color, rgba(0, 0, 0, 0.12)) !important;
    border-radius: 0.375rem !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
    background: var(--bs-body-bg, #fff) !important;
    font-size: 0.8125rem !important;
    z-index: 1060 !important;
    box-sizing: border-box !important;
}

.portal-autocomplete .ui-menu-item {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    list-style: none !important;
}

.portal-autocomplete .ui-menu-item-wrapper,
.portal-autocomplete .portal-ac-item {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 0.4rem 0.65rem !important;
    margin: 0 0.15rem !important;
    border-radius: 0.25rem !important;
    cursor: pointer;
    transition: background-color 0.12s ease;
    border: none !important;
}

    .portal-autocomplete .ui-menu-item-wrapper:hover,
    .portal-autocomplete .ui-state-active .ui-menu-item-wrapper,
    .portal-autocomplete .portal-ac-item:hover,
    .portal-autocomplete .ui-state-active .portal-ac-item {
        background-color: var(--bs-secondary-bg, rgba(0, 0, 0, 0.05)) !important;
        color: inherit !important;
        border: none !important;
    }

.portal-autocomplete .portal-ac-label {
    display: block;
    font-weight: 600;
    font-size: 0.8125rem !important;
    color: var(--bs-body-color, #212529);
    line-height: 1.35;
    margin-bottom: 0.1rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.portal-autocomplete .portal-ac-meta {
    display: block;
    font-size: 0.75rem !important;
    color: var(--bs-secondary-color, #6c757d);
    font-weight: 400;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    letter-spacing: 0.02em;
}

[data-theme="dark"] .portal-autocomplete.ui-autocomplete, [data-bs-theme="dark"] .portal-autocomplete.ui-autocomplete {
    background: var(--neutral-200, #1f2937) !important;
    border-color: var(--border-color, #4b5563) !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35) !important;
}

[data-theme="dark"] .portal-autocomplete .portal-ac-label, [data-bs-theme="dark"] .portal-autocomplete .portal-ac-label {
    color: var(--text-primary-light, #f9fafb);
}

[data-theme="dark"] .portal-autocomplete .portal-ac-meta, [data-bs-theme="dark"] .portal-autocomplete .portal-ac-meta {
    color: var(--text-secondary-light, #9ca3af);
}

[data-theme="dark"] .portal-autocomplete .ui-menu-item-wrapper:hover, [data-theme="dark"] .portal-autocomplete .ui-state-active .ui-menu-item-wrapper, [data-theme="dark"] .portal-autocomplete .portal-ac-item:hover, [data-theme="dark"] .portal-autocomplete .ui-state-active .portal-ac-item, [data-bs-theme="dark"] .portal-autocomplete .ui-menu-item-wrapper:hover, [data-bs-theme="dark"] .portal-autocomplete .ui-state-active .ui-menu-item-wrapper, [data-bs-theme="dark"] .portal-autocomplete .portal-ac-item:hover, [data-bs-theme="dark"] .portal-autocomplete .ui-state-active .portal-ac-item {
    background-color: rgba(255, 255, 255, 0.06) !important;
}

.filters-card {
    background: white;
    border-radius: 12px;
    padding: 1.25rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border: 1px solid #e5e7eb;
    margin-bottom: 1rem;
}

    .filters-card .form-label {
        font-size: 0.875rem;
        font-weight: 600;
        color: #374151;
        margin-bottom: 0.5rem;
    }

    .filters-card .input-group-text,
    .nfe-events-filters-body .input-group-text,
    .nfe-log-access-filters-panel__body .input-group-text,
    [class$="-log-access-filters-panel__body"] .input-group-text {
        padding: 0.25rem 0.55rem;
        font-size: 0.8125rem;
        color: var(--bs-secondary-color);
        background-color: var(--bs-tertiary-bg, #f8f9fa);
        border-color: var(--bs-border-color);
    }

.portal-nfe-filter-input-prefix {
    cursor: help;
}

.filters-card .input-group-text .fa-solid,
.nfe-events-filters-body .input-group-text .fa-solid,
.nfe-log-access-filters-panel__body .input-group-text .fa-solid,
[class$="-log-access-filters-panel__body"] .input-group-text .fa-solid {
    width: 0.875rem;
    text-align: center;
}

.filters-card .input-group > .form-control:focus,
.nfe-events-filters-body .input-group > .form-control:focus,
.nfe-log-access-filters-panel__body .input-group > .form-control:focus,
[class$="-log-access-filters-panel__body"] .input-group > .form-control:focus {
    z-index: 3;
}

.filters-card .portal-nfe-report-natop-check,
.nfe-events-filters-body .portal-nfe-report-natop-check {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 2.25rem;
    padding: 0.25rem 0.5rem;
}

    .filters-card .portal-nfe-report-natop-check .form-check,
    .nfe-events-filters-body .portal-nfe-report-natop-check .form-check {
        min-height: auto;
        margin-bottom: 0;
        display: flex;
        align-items: center;
    }

.filters-card .input-group .portal-fiscal-doc-key-field,
.nfe-events-filters-body .input-group .portal-fiscal-doc-key-field,
.nfe-log-access-filters-panel__body .input-group .portal-fiscal-doc-key-field,
[class$="-log-access-filters-panel__body"] .input-group .portal-fiscal-doc-key-field {
    font-size: 0.78rem;
}

[data-theme="dark"] .filters-card .input-group-text,
[data-bs-theme="dark"] .filters-card .input-group-text,
[data-theme="dark"] .nfe-events-filters-body .input-group-text,
[data-bs-theme="dark"] .nfe-events-filters-body .input-group-text,
[data-theme="dark"] .nfe-log-access-filters-panel__body .input-group-text,
[data-bs-theme="dark"] .nfe-log-access-filters-panel__body .input-group-text,
[data-theme="dark"] [class$="-log-access-filters-panel__body"] .input-group-text,
[data-bs-theme="dark"] [class$="-log-access-filters-panel__body"] .input-group-text {
    color: #9ca3af;
    background-color: #374151;
    border-color: #4b5563;
}

[data-theme="dark"] .filters-card .input-group .portal-fiscal-doc-key-field,
[data-bs-theme="dark"] .filters-card .input-group .portal-fiscal-doc-key-field,
[data-theme="dark"] .nfe-events-filters-body .input-group .portal-fiscal-doc-key-field,
[data-bs-theme="dark"] .nfe-events-filters-body .input-group .portal-fiscal-doc-key-field,
[data-theme="dark"] .nfe-log-access-filters-panel__body .input-group .portal-fiscal-doc-key-field,
[data-bs-theme="dark"] .nfe-log-access-filters-panel__body .input-group .portal-fiscal-doc-key-field,
[data-theme="dark"] [class$="-log-access-filters-panel__body"] .input-group .portal-fiscal-doc-key-field,
[data-bs-theme="dark"] [class$="-log-access-filters-panel__body"] .input-group .portal-fiscal-doc-key-field {
    background-color: rgba(52, 211, 153, 0.12);
}

/* Portal — hint text below filter inputs (legacy .help-block) */
.help-block {
    display: block;
    font-size: 9px;
    font-style: italic;
    line-height: 1.4;
    margin-top: 1px;
    margin-bottom: 0px !important;
    color: #a9a9a9;
}

[data-theme="dark"] .help-block, [data-bs-theme="dark"] .help-block {
    color: #9ca3af;
}

/* Portal — plan-cost-intro hero title (Site.css h1–h6 use var(--hN) !important; keep editorial size) */
.plan-cost-intro h1.plan-cost-intro__title,
.plan-cost-intro h2.plan-cost-intro__title,
.plan-cost-intro h3.plan-cost-intro__title,
.plan-cost-intro h4.plan-cost-intro__title,
.plan-cost-intro h5.plan-cost-intro__title,
.plan-cost-intro h6.plan-cost-intro__title {
    font-size: clamp(0.9rem, 1.8vw, 1.02rem) !important;
    font-weight: 700;
    letter-spacing: -0.025em;
    line-height: 1.25;
}

/* Portal — fiscal document access key filter field (green highlight) */
.portal-fiscal-doc-key-field {
    letter-spacing: 0.12rem;
    background-color: rgba(44, 168, 128, 0.08);
}

[data-theme="dark"] .portal-fiscal-doc-key-field, [data-bs-theme="dark"] .portal-fiscal-doc-key-field {
    background-color: rgba(52, 211, 153, 0.12);
}

/* Portal — related screens shortcut on fiscal document filter footers */
.nfe-events-filters-actions .portal-doc-related-screens {
    flex: 0 0 auto;
    min-width: 11rem;
    max-width: 16rem;
}

.nfe-events-filters-actions .portal-doc-related-screens-select {
    width: 100%;
    min-width: 11rem;
}

.nfe-events-filters-actions .portal-doc-filters-actions-tools {
    flex: 1 1 auto;
    min-width: 0;
}

.nfe-events-filters-actions .portal-doc-filters-actions-search {
    flex: 0 0 auto;
    margin-left: auto;
}

@media (max-width: 575.98px) {
    .nfe-events-filters-actions .portal-doc-related-screens {
        width: 100%;
        max-width: none;
    }

    .nfe-events-filters-actions .portal-doc-filters-actions-search {
        width: 100%;
        justify-content: flex-end;
    }
}

/* Portal — empty state after search / awaiting filters (reference: Report_Manifest_Cte.aspx) */
.portal-empty-results {
    padding: 2rem 1.25rem;
    margin: 0.75rem 1rem;
    text-align: center;
    border: 1px dashed var(--bs-border-color-translucent, var(--bs-border-color));
    border-radius: 0.75rem;
    background: linear-gradient(160deg, rgba(0, 86, 228, 0.05) 0%, var(--bs-body-bg) 48%, rgba(38, 187, 205, 0.04) 100%);
}

.portal-empty-results__ico {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.65rem;
    height: 2.65rem;
    margin-bottom: 0.75rem;
    border-radius: 0.65rem;
    font-size: 1.05rem;
    color: #0056E4;
    background: rgba(0, 86, 228, 0.1);
    box-shadow: 0 6px 16px -12px rgba(0, 86, 228, 0.55);
}

.portal-empty-results__title {
    margin-bottom: 0.35rem;
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--bs-body-color);
}

.portal-empty-results__text {
    max-width: 34rem;
    margin-inline: auto;
    color: var(--bs-secondary-color);
    font-size: 0.82rem;
    line-height: 1.45;
}

.portal-empty-results--prompt .portal-empty-results__ico {
    color: #0780DD;
    background: rgba(7, 128, 221, 0.12);
    box-shadow: 0 6px 16px -12px rgba(7, 128, 221, 0.45);
}

[data-theme="dark"] .portal-empty-results, [data-bs-theme="dark"] .portal-empty-results {
    background: linear-gradient(160deg, rgba(59, 130, 246, 0.12) 0%, #1f2937 50%, rgba(38, 187, 205, 0.08) 100%);
    border-color: #4b5563;
}

[data-theme="dark"] .portal-empty-results__ico, [data-bs-theme="dark"] .portal-empty-results__ico {
    color: #60a5fa;
    background: rgba(59, 130, 246, 0.2);
}

[data-theme="dark"] .portal-empty-results--prompt .portal-empty-results__ico, [data-bs-theme="dark"] .portal-empty-results--prompt .portal-empty-results__ico {
    color: #93c5fd;
    background: rgba(59, 130, 246, 0.18);
}

/* Portal — disc lists in modals/callouts (global ul/ol reset above sets list-style: none) */
ul.portal-marked-list,
ol.portal-marked-list,
.portal-marked-list {
    list-style-position: outside;
    margin: 0 0 0.5rem;
    padding-left: 1.25rem;
}

    ul.portal-marked-list,
    .portal-marked-list:is(ul) {
        list-style-type: disc;
    }

    ol.portal-marked-list,
    .portal-marked-list:is(ol) {
        list-style-type: decimal;
    }

        ul.portal-marked-list > li,
        ol.portal-marked-list > li,
        .portal-marked-list > li {
            display: list-item;
        }

[data-theme="dark"] ul.portal-marked-list > li::marker,
[data-bs-theme="dark"] ul.portal-marked-list > li::marker,
[data-theme="dark"] ol.portal-marked-list > li::marker,
[data-bs-theme="dark"] ol.portal-marked-list > li::marker,
[data-theme="dark"] .portal-marked-list > li::marker,
[data-bs-theme="dark"] .portal-marked-list > li::marker {
    color: #9ca3af;
}

.pagination-info {
    font-size: 0.875rem;
    color: #6b7280;
}

[data-theme="dark"] .filters-card {
    background: #1f2937;
    border-color: #374151;
}

    [data-theme="dark"] .filters-card .form-label {
        color: #f9fafb;
    }

[data-theme="dark"] .metric-card {
    background: #1f2937;
    border-color: #374151;
}

    [data-theme="dark"] .metric-card:hover {
        box-shadow: 0 10px 25px -3px rgba(0, 0, 0, 0.3);
    }

[data-theme="dark"] .metric-value {
    color: #f9fafb;
}

[data-theme="dark"] .metric-label {
    color: #9ca3af;
}

[data-theme="dark"] .profiles-tabs-card {
    background: #1f2937;
    border-color: #374151;
}

    [data-theme="dark"] .profiles-tabs-card .nav-tabs {
        border-bottom-color: #4b5563;
        background: #374151;
    }

    [data-theme="dark"] .profiles-tabs-card .nav-link {
        color: #9ca3af;
    }

        [data-theme="dark"] .profiles-tabs-card .nav-link.active {
            color: #3b82f6;
            background: #1f2937;
        }

[data-theme="dark"] .profile-item-card {
    background: #374151;
    border-color: #4b5563;
}

    [data-theme="dark"] .profile-item-card:hover {
        background: #4b5563;
        border-color: #3b82f6;
    }

[data-theme="dark"] .profile-name-title {
    color: #f9fafb;
}

[data-theme="dark"] .profile-description {
    color: #9ca3af;
}

[data-theme="dark"] .permission-section-card {
    background: #374151;
    border-color: #4b5563;
}

[data-theme="dark"] .permission-section-header {
    border-bottom-color: #4b5563;
}

    [data-theme="dark"] .permission-section-header h6 {
        color: #f9fafb;
    }

[data-theme="dark"] .permission-item-setting {
    background: #1f2937;
    border-color: #4b5563;
}

[data-theme="dark"] .permission-item-info label {
    color: #f9fafb;
}

[data-theme="dark"] .permission-item-info span {
    color: #9ca3af;
}

[data-theme="dark"] .settings-section-card {
    background: #374151;
    border-color: #4b5563;
}

[data-theme="dark"] .settings-section-title {
    color: #f9fafb;
    border-bottom-color: #4b5563;
}

[data-theme="dark"] .settings-item .form-label {
    color: #f9fafb;
}

[data-theme="dark"] .settings-item .form-text {
    color: #9ca3af;
}

[data-theme="dark"] .setting-item {
    border-bottom-color: #4b5563;
}

[data-theme="dark"] .setting-info label {
    color: #f9fafb;
}

[data-theme="dark"] .setting-info span {
    color: #9ca3af;
}

[data-theme="dark"] .setting-item .form-check-input {
    background-color: #1f2937 !important;
    border-color: #4b5563 !important;
}

    [data-theme="dark"] .setting-item .form-check-input:checked {
        background-color: #3b82f6 !important;
        border-color: #3b82f6 !important;
    }

/* Portal toasts — dark mode (Bootstrap text-bg-* + legacy bg-*) */
[data-theme="dark"] .toast .toast-body, [data-bs-theme="dark"] .toast .toast-body {
    color: inherit !important;
}

[data-theme="dark"] .toast:not(.text-bg-success):not(.text-bg-danger):not(.text-bg-warning):not(.text-bg-info):not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info), [data-bs-theme="dark"] .toast:not(.text-bg-success):not(.text-bg-danger):not(.text-bg-warning):not(.text-bg-info):not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info) {
    --bs-toast-bg: #1f2937;
    --bs-toast-color: #f9fafb;
    --bs-toast-border-color: #4b5563;
    background-color: #1f2937 !important;
    border: 1px solid #4b5563 !important;
    color: #f9fafb !important;
}

[data-theme="dark"] .toast.text-bg-success, [data-bs-theme="dark"] .toast.text-bg-success, [data-theme="dark"] .toast.bg-success, [data-bs-theme="dark"] .toast.bg-success {
    background-color: #059669 !important;
    border-color: #047857 !important;
    color: #ffffff !important;
}

[data-theme="dark"] .toast.text-bg-danger, [data-bs-theme="dark"] .toast.text-bg-danger, [data-theme="dark"] .toast.bg-danger, [data-bs-theme="dark"] .toast.bg-danger {
    background-color: #dc2626 !important;
    border-color: #b91c1c !important;
    color: #ffffff !important;
}

[data-theme="dark"] .toast.text-bg-warning, [data-bs-theme="dark"] .toast.text-bg-warning, [data-theme="dark"] .toast.bg-warning, [data-bs-theme="dark"] .toast.bg-warning {
    background-color: #d97706 !important;
    border-color: #b45309 !important;
    color: #111827 !important;
}

    [data-theme="dark"] .toast.text-bg-warning.text-dark,
    [data-bs-theme="dark"] .toast.text-bg-warning.text-dark,
    [data-theme="dark"] .toast.bg-warning.text-dark,
    [data-bs-theme="dark"] .toast.bg-warning.text-dark {
        color: #111827 !important;
    }

[data-theme="dark"] .toast.text-bg-info, [data-bs-theme="dark"] .toast.text-bg-info, [data-theme="dark"] .toast.bg-info, [data-bs-theme="dark"] .toast.bg-info {
    background-color: #0284c7 !important;
    border-color: #0369a1 !important;
    color: #ffffff !important;
}

    [data-theme="dark"] .toast.text-bg-success .btn-close,
    [data-bs-theme="dark"] .toast.text-bg-success .btn-close,
    [data-theme="dark"] .toast.text-bg-danger .btn-close,
    [data-bs-theme="dark"] .toast.text-bg-danger .btn-close,
    [data-theme="dark"] .toast.text-bg-info .btn-close,
    [data-bs-theme="dark"] .toast.text-bg-info .btn-close,
    [data-theme="dark"] .toast.bg-success .btn-close,
    [data-bs-theme="dark"] .toast.bg-success .btn-close,
    [data-theme="dark"] .toast.bg-danger .btn-close,
    [data-bs-theme="dark"] .toast.bg-danger .btn-close,
    [data-theme="dark"] .toast.bg-info .btn-close,
    [data-bs-theme="dark"] .toast.bg-info .btn-close {
        filter: none;
        opacity: 1;
    }

    [data-theme="dark"] .toast.text-bg-success .btn-close-white,
    [data-bs-theme="dark"] .toast.text-bg-success .btn-close-white,
    [data-theme="dark"] .toast.text-bg-danger .btn-close-white,
    [data-bs-theme="dark"] .toast.text-bg-danger .btn-close-white,
    [data-theme="dark"] .toast.text-bg-info .btn-close-white,
    [data-bs-theme="dark"] .toast.text-bg-info .btn-close-white {
        filter: none;
        opacity: 1;
    }

[data-theme="dark"] .toast:not(.text-bg-success):not(.text-bg-danger):not(.text-bg-warning):not(.text-bg-info):not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info) .btn-close, [data-bs-theme="dark"] .toast:not(.text-bg-success):not(.text-bg-danger):not(.text-bg-warning):not(.text-bg-info):not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info) .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
    opacity: 0.85;
}

[data-theme="dark"] .toast.text-bg-warning .btn-close:not(.btn-close-white), [data-bs-theme="dark"] .toast.text-bg-warning .btn-close:not(.btn-close-white), [data-theme="dark"] .toast.bg-warning .btn-close:not(.btn-close-white), [data-bs-theme="dark"] .toast.bg-warning .btn-close:not(.btn-close-white) {
    filter: none;
    opacity: 0.7;
}

[data-theme="dark"] .request-serasa-page .bs-callout-default, [data-theme="dark"] .request-quod-page .bs-callout-default {
    background-color: var(--neutral-200, #273142);
    border-left-color: var(--neutral-500, #6b7280);
}

[data-theme="dark"] .request-serasa-page .bs-callout-info, [data-theme="dark"] .request-quod-page .bs-callout-info {
    background-color: rgba(13, 110, 253, 0.15);
    border-left-color: #6ea8fe;
}

[data-theme="dark"] .request-serasa-page .bs-callout-sefaz {
    background-color: rgba(13, 202, 240, 0.12);
}

[data-theme="dark"] .request-serasa-page .well, [data-theme="dark"] .request-quod-page .well {
    background: var(--neutral-200, #273142);
    border-color: var(--border-color, #374151);
}

[data-theme="dark"] .request-serasa-section-title, [data-theme="dark"] .request-serasa-summary-label, [data-theme="dark"] .request-serasa-summary-muted {
    color: var(--text-secondary-light, #9ca3af) !important;
}

[data-theme="dark"] .request-serasa-summary-value {
    color: var(--text-primary-light, #f9fafb) !important;
}

[data-theme="dark"] .request-serasa-summary-card {
    background: var(--neutral-200, #273142);
    border-color: var(--border-color, #374151);
}

    [data-theme="dark"] .request-serasa-summary-card:hover {
        border-color: rgba(110, 168, 254, 0.5);
        background: rgba(59, 130, 246, 0.08);
    }

[data-theme="dark"] .request-serasa-page .server-info-title, [data-theme="dark"] .request-quod-page .server-info-title {
    color: var(--text-secondary-light, #9ca3af) !important;
}

[data-theme="dark"] .request-serasa-page .server-info .request-serasa-server-value, [data-theme="dark"] .request-serasa-page .server-info [id*="lbl_Return_Sefaz"], [data-theme="dark"] .request-quod-page .server-info .request-quod-server-value, [data-theme="dark"] .request-quod-page .server-info [id*="lbl_Return_Sefaz"] {
    color: var(--text-primary-light, #f9fafb) !important;
}

[data-theme="dark"] .request-serasa-page .label-serasa, [data-theme="dark"] .request-quod-page .label-quod {
    color: var(--text-secondary-light, #9ca3af) !important;
}

[data-theme="dark"] .request-serasa-observacoes, [data-theme="dark"] .request-quod-observacoes {
    border-left-color: var(--border-color, #4b5563);
    color: var(--text-primary-light, #e5e7eb);
}

[data-theme="dark"] .request-serasa-observacoes-title, [data-theme="dark"] .request-quod-observacoes-title {
    color: var(--text-secondary-light, #9ca3af) !important;
}

[data-theme="dark"] .request-serasa-observacoes-text, [data-theme="dark"] .request-quod-observacoes-text {
    color: var(--text-primary-light, #e5e7eb) !important;
}

[data-theme="dark"] .request-serasa-page .card-highlight-default, [data-theme="dark"] .request-serasa-page .card.card-highlight-danger, [data-theme="dark"] .request-serasa-page .card.card-highlight-info {
    border-color: var(--border-color, #374151);
}

    [data-theme="dark"] .request-serasa-page .card-body.card-body-muted,
    [data-theme="dark"] .request-serasa-page .card.card-highlight-danger .collapse .card-body,
    [data-theme="dark"] .request-serasa-page .card.card-highlight-info .collapse .card-body {
        background-color: var(--neutral-200, #273142) !important;
        border-color: var(--border-color, #374151);
    }

[data-theme="dark"] .request-serasa-page .card .request-serasa-collapse-trigger:hover {
    background-color: rgba(255, 255, 255, 0.04) !important;
}

[data-theme="dark"] .request-serasa-page .tag-label, [data-theme="dark"] .request-quod-page .tag-label, [data-theme="dark"] .dashboard-main-body .tag-label {
    color: var(--text-primary-light) !important;
}

[data-theme="dark"] .request-serasa-page .proccess-credit h6, [data-theme="dark"] .request-quod-page .proccess-credit h6 {
    color: var(--text-primary-light);
}

[data-theme="dark"] .dashboard-main-body .panel, [data-theme="dark"] .dashboard-main-body .card .panel {
    background-color: var(--white, #1f2937);
    border-color: var(--border-color, #374151);
}

[data-theme="dark"] .dashboard-main-body .panel-heading, [data-theme="dark"] .dashboard-main-body .panel-title {
    color: var(--text-primary-light);
    border-color: var(--border-color, #374151);
}

[data-theme="dark"] .dashboard-main-body .faq-contact-card {
    background-color: var(--white, #1f2937) !important;
    border-color: var(--border-color, #374151) !important;
}

    [data-theme="dark"] .dashboard-main-body .faq-contact-card .card-header {
        background-color: var(--neutral-100, #273142) !important;
        border-bottom-color: var(--border-color, #374151) !important;
        color: var(--text-primary-light) !important;
    }

    [data-theme="dark"] .dashboard-main-body .faq-contact-card .card-body {
        background-color: var(--white, #1f2937) !important;
        color: var(--text-primary-light) !important;
    }

[data-theme="dark"] .dashboard-main-body .faq-contact-row {
    border-bottom-color: var(--border-color, #374151) !important;
}

[data-theme="dark"] .dashboard-main-body .faq-contact-label {
    color: var(--text-secondary-light, #9ca3af) !important;
}

[data-theme="dark"] .dashboard-main-body .faq-contact-item, [data-theme="dark"] .dashboard-main-body .faq-contact-list .faq-contact-item {
    color: var(--primary-400, #6ea8fe) !important;
}

    [data-theme="dark"] .dashboard-main-body .faq-contact-item:hover,
    [data-theme="dark"] .dashboard-main-body .faq-contact-list .faq-contact-item:hover {
        color: var(--primary-300, #93c5fd) !important;
    }

    [data-theme="dark"] .dashboard-main-body .faq-contact-item.text-dark,
    [data-theme="dark"] .dashboard-main-body .faq-contact-list .faq-contact-item.text-dark {
        color: var(--text-primary-light, #f9fafb) !important;
    }

[data-theme="dark"] .dashboard-main-body .serasa-link-external, [data-theme="dark"] .dashboard-main-body .serasa-link-internal, [data-theme="dark"] .dashboard-main-body .spc-link-external, [data-theme="dark"] .dashboard-main-body .spc-link-internal, [data-theme="dark"] .dashboard-main-body .quod-link-internal, [data-theme="dark"] .dashboard-main-body .bv-link-external {
    color: var(--primary-400, #6ea8fe) !important;
}

    [data-theme="dark"] .dashboard-main-body .serasa-link-external:hover,
    [data-theme="dark"] .dashboard-main-body .serasa-link-internal:hover,
    [data-theme="dark"] .dashboard-main-body .spc-link-external:hover,
    [data-theme="dark"] .dashboard-main-body .spc-link-internal:hover,
    [data-theme="dark"] .dashboard-main-body .quod-link-internal:hover,
    [data-theme="dark"] .dashboard-main-body .bv-link-external:hover {
        color: var(--primary-300, #93c5fd) !important;
    }

[data-theme="dark"] .dashboard-main-body .card-body .small, [data-theme="dark"] .dashboard-main-body .accordion-body .small, [data-theme="dark"] .dashboard-main-body .card-body p, [data-theme="dark"] .dashboard-main-body .accordion-body p {
    color: var(--text-primary-light, #e5e7eb) !important;
}

[data-theme="dark"] .dashboard-main-body .card-body ul, [data-theme="dark"] .dashboard-main-body .accordion-body ul {
    color: var(--text-primary-light, #e5e7eb) !important;
}

[data-theme="dark"] .dashboard-main-body .text-dark {
    color: var(--text-primary-light, #f9fafb) !important;
}

[data-theme="dark"] .modal-body .form-control:disabled, [data-theme="dark"] .modal-body .form-select:disabled {
    background-color: #374151;
    color: #9ca3af;
}

[data-theme="dark"] .faq-dashboard .fd-hero-title {
    color: var(--primary-400, #6ea8fe);
}

[data-theme="dark"] .faq-dashboard .fd-hero-sub {
    color: var(--text-secondary-light);
}

[data-theme="dark"] .faq-dashboard .fd-card {
    background-color: var(--white);
    border-color: var(--border-color);
}

    [data-theme="dark"] .faq-dashboard .fd-card .card-header {
        color: var(--text-primary-light);
        border-color: var(--border-color);
    }

    [data-theme="dark"] .faq-dashboard .fd-card .card-body {
        color: var(--text-primary-light);
    }

[data-theme="dark"] .faq-dashboard .fd-contact-row {
    color: var(--text-primary-light);
    border-color: var(--border-color);
}

    [data-theme="dark"] .faq-dashboard .fd-contact-row .fd-label {
        color: var(--text-primary-light);
    }

    [data-theme="dark"] .faq-dashboard .fd-contact-row .fd-icon {
        color: var(--primary-400, #6ea8fe);
    }

    [data-theme="dark"] .faq-dashboard .fd-contact-row a:not(.fd-badge-tel):not(.fd-badge-email) {
        color: var(--primary-400, #6ea8fe);
    }

[data-theme="dark"] .faq-dashboard .fd-address {
    color: var(--text-secondary-light);
}

[data-theme="dark"] .faq-dashboard .fd-cite {
    color: var(--text-primary-light);
}

    [data-theme="dark"] .faq-dashboard .fd-cite cite {
        color: var(--text-secondary-light);
    }

[data-theme="dark"] .faq-dashboard .fd-hero {
    border-bottom-color: var(--border-color);
}

[data-theme=dark] .main-control-invoice-page .card,
[data-theme=dark] .main-control-invoice-page .main-control-invoice-download-card,
[data-theme=dark] .main-control-invoice-page .main-control-invoice-sidebar-card,
[data-theme=dark] .main-control-invoice-page .main-control-invoice-cta-card {
    background-color: #1f2937;
    border-color: #374151;
    box-shadow: none;
}

[data-theme=dark] .main-control-invoice-page .card-body {
    background-color: transparent;
    color: #e5e7eb;
}

[data-theme=dark] .main-control-invoice-page .card-header {
    background-color: transparent;
    border-color: transparent;
    color: #f9fafb;
}

[data-theme=dark] .main-control-invoice-page .text-muted,
[data-theme=dark] .main-control-invoice-page .main-control-invoice-subtitle,
[data-theme=dark] .main-control-invoice-page .main-control-invoice-sidebar-text {
    color: #9ca3af !important;
}

[data-theme=dark] .main-control-invoice-page h6,
[data-theme=dark] .main-control-invoice-page .fw-semibold,
[data-theme=dark] .main-control-invoice-page .main-control-invoice-sidebar-title,
[data-theme=dark] .main-control-invoice-page .main-control-invoice-item-label {
    color: #f9fafb;
}

[data-theme=dark] .main-control-invoice-page .main-control-invoice-item {
    background-color: #374151;
    border-color: #4b5563;
}

    [data-theme=dark] .main-control-invoice-page .main-control-invoice-item:hover {
        background-color: rgba(13, 110, 253, 0.15);
        border-color: rgba(13, 110, 253, 0.35);
    }

[data-theme=dark] .main-control-invoice-page .main-control-invoice-item-icon {
    background-color: rgba(13, 110, 253, 0.25) !important;
    color: #60a5fa;
}

[data-theme=dark] .main-control-invoice-page .main-control-invoice-item-meta {
    color: #9ca3af;
}

[data-theme=dark] .main-control-invoice-page .main-control-invoice-badge-sent {
    background-color: rgba(25, 135, 84, 0.35);
    color: #4ade80;
}

[data-theme=dark] .main-control-invoice-page .main-control-invoice-download-card:hover,
[data-theme=dark] .main-control-invoice-page .main-control-invoice-sidebar-card:hover,
[data-theme=dark] .main-control-invoice-page .main-control-invoice-cta-card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

[data-theme=dark] .main-control-invoice-page .main-control-invoice-cta-card .text-muted {
    color: #9ca3af !important;
}

[data-theme=dark] .main-control-invoice-page .main-control-invoice-cta-card .text-primary {
    color: #60a5fa !important;
}

[data-theme=dark] .main-control-invoice-page .btn-outline-primary {
    border-color: #3b82f6;
    color: #60a5fa;
}

    [data-theme=dark] .main-control-invoice-page .btn-outline-primary:hover {
        background-color: rgba(59, 130, 246, 0.2);
        border-color: #3b82f6;
        color: #93c5fd;
    }

[data-theme=dark] .main-control-invoice-page hr {
    border-color: #4b5563;
}

[data-theme=dark] .main-control-invoice-page #lbl_Message_Return_Page {
    color: var(--bs-body-color);
}

[data-theme=dark] .main-control-invoice-page .invoice-card .card,
[data-theme=dark] .main-control-invoice-page .invoice-card.card {
    background-color: #1f2937;
    border-color: #374151;
}

[data-theme=dark] .main-control-invoice-page .invoice-card .card-body {
    background-color: transparent;
    color: #e5e7eb;
}

[data-theme=dark] .main-control-invoice-page .invoice-card .bg-light {
    background-color: #374151 !important;
}

[data-theme=dark] .main-control-invoice-page .invoice-card h6 {
    color: #f9fafb;
}

[data-theme=dark] .main-control-invoice-page .invoice-card .text-muted {
    color: #9ca3af !important;
}

[data-theme=dark] .main-control-invoice-page .btn-outline-secondary {
    background-color: transparent;
    border-color: #6b7280;
    color: #9ca3af;
}

    [data-theme=dark] .main-control-invoice-page .btn-outline-secondary:hover:not(:disabled),
    [data-theme=dark] .main-control-invoice-page .btn-outline-secondary:focus {
        background-color: #374151;
        border-color: #6b7280;
        color: #d1d5db;
    }

[data-theme=dark] .main-control-invoice-page .alert-light {
    background-color: #374151;
    border-color: #4b5563;
    color: #e5e7eb;
}

    [data-theme=dark] .main-control-invoice-page .alert-light .fw-semibold {
        color: #f9fafb;
    }

[data-theme=dark] .main-control-invoice-page .invoice-card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.3) !important;
}

[data-theme=dark] .faq-help-chat-wrapper .chat-main.card {
    background-color: var(--dark-3);
    border-color: var(--neutral-300);
}

[data-theme=dark] .faq-help-chat-wrapper .chat-main .chat-sidebar-single {
    background-color: var(--dark-3);
    border-bottom-color: var(--neutral-300);
}

[data-theme=dark] .faq-help-chat-wrapper .chat-sidebar-single .info h6,
[data-theme=dark] .faq-help-chat-wrapper .chat-sidebar-single .info p {
    color: var(--text-primary-light);
}

[data-theme=dark] .faq-help-chat-wrapper .chat-message-list {
    background-color: var(--dark-2);
}

[data-theme=dark] .faq-help-chat-wrapper .chat-single-message.left .chat-message-content {
    background-color: var(--dark-3);
    border: 1px solid var(--neutral-300);
}

    [data-theme=dark] .faq-help-chat-wrapper .chat-single-message.left .chat-message-content p {
        color: var(--text-primary-light);
    }

        [data-theme=dark] .faq-help-chat-wrapper .chat-single-message.left .chat-message-content p.chat-time {
            color: var(--text-secondary-light);
        }

[data-theme=dark] .faq-help-chat-wrapper .chat-message-box {
    background-color: var(--dark-3);
    border-top-color: var(--neutral-300);
}

    [data-theme=dark] .faq-help-chat-wrapper .chat-message-box .form-control {
        background-color: var(--dark-2);
        border-color: var(--neutral-300);
        color: var(--text-primary-light);
    }

        [data-theme=dark] .faq-help-chat-wrapper .chat-message-box .form-control::placeholder {
            color: var(--text-secondary-light);
        }

    [data-theme=dark] .faq-help-chat-wrapper .chat-message-box .btn-ghost-icon {
        color: var(--text-secondary-light);
    }

[data-theme=dark] .faq-help-chat-wrapper .dropdown-menu {
    background-color: var(--dark-3);
    border-color: var(--neutral-300);
}

[data-theme=dark] .faq-help-chat-wrapper .dropdown-item {
    color: var(--text-primary-light);
}

    [data-theme=dark] .faq-help-chat-wrapper .dropdown-item:hover {
        background-color: var(--neutral-200);
        color: var(--text-primary-light);
    }

[data-theme=dark] .faq-help-panel.card {
    background-color: var(--dark-3);
    border-color: var(--neutral-300);
}

[data-theme=dark] .faq-help-panel-header {
    background-color: var(--dark-3);
    border-bottom-color: var(--neutral-300);
}

    [data-theme=dark] .faq-help-panel-header h6,
    [data-theme=dark] .faq-help-panel-header h8 {
        color: var(--text-primary-light);
    }

[data-theme=dark] .faq-help-panel-search {
    border-bottom-color: var(--neutral-300);
}

[data-theme=dark] .faq-help-panel-search-icon {
    color: var(--text-secondary-light);
}

[data-theme=dark] .faq-help-panel-search input {
    background-color: var(--dark-2);
    border-color: var(--neutral-300);
    color: var(--text-primary-light);
}

    [data-theme=dark] .faq-help-panel-search input::placeholder {
        color: var(--text-secondary-light);
    }

[data-theme=dark] .faq-help-panel-filters {
    border-bottom-color: var(--neutral-300);
}

    [data-theme=dark] .faq-help-panel-filters .form-select {
        background-color: var(--dark-2);
        border-color: var(--neutral-300);
        color: var(--text-primary-light);
    }

[data-theme=dark] .faq-help-panel-list {
    background-color: var(--dark-2);
}

[data-theme=dark] .faq-help-panel-item {
    color: var(--text-primary-light);
}

    [data-theme=dark] .faq-help-panel-item:hover {
        background-color: var(--dark-3);
    }

[data-theme=dark] .faq-help-panel-item-id {
    color: var(--text-primary-light);
}

[data-theme=dark] .faq-help-panel-item-date,
[data-theme=dark] .faq-help-panel .text-muted {
    color: var(--text-secondary-light) !important;
}

[data-theme=dark] .faq-help-panel .btn-outline-secondary {
    background-color: transparent;
    border-color: var(--neutral-400);
    color: var(--text-secondary-light);
}

    [data-theme=dark] .faq-help-panel .btn-outline-secondary:hover {
        background-color: var(--neutral-200);
        color: var(--text-primary-light);
    }

[data-theme=dark] .faq-help-panel-footer {
    background-color: var(--dark-3);
    border-top-color: var(--neutral-300);
    color: var(--text-secondary-light);
}

[data-theme=dark] .faq-help-panel-empty {
    color: var(--text-secondary-light) !important;
}

[data-theme=dark] .faq-help-chat-wrapper .text-primary-light {
    color: var(--primary-400);
}

[data-theme=dark] .faq-help-panel .badge.bg-warning-subtle {
    background-color: rgba(245, 158, 11, 0.2);
    color: #f59e0b;
}

[data-theme=dark] .faq-help-panel .badge.bg-info-subtle {
    background-color: rgba(14, 165, 233, 0.2);
    color: #0ea5e9;
}

[data-theme=dark] .faq-help-panel .btn-ghost-primary {
    color: var(--primary-400);
}

    [data-theme=dark] .faq-help-panel .btn-ghost-primary:hover {
        color: var(--primary-500);
    }

[data-theme=dark] .faq-help-panel .btn-ghost-secondary {
    color: var(--text-secondary-light);
}

    [data-theme=dark] .faq-help-panel .btn-ghost-secondary:hover {
        color: var(--text-primary-light);
    }

[data-theme="dark"] .dashboard-main-body .faq-help-chat-wrapper {
    background-color: var(--bg-color);
    border-radius: 0.5rem;
}

[data-theme="dark"] .faq-help-chat-wrapper .chat-main.card {
    background-color: var(--dark-3);
    border-color: var(--neutral-300);
    color: var(--text-primary-light);
}

[data-theme="dark"] .faq-help-chat-wrapper .chat-main .chat-sidebar-single {
    background-color: var(--dark-3);
    border-bottom-color: var(--neutral-300);
}

[data-theme="dark"] .faq-help-chat-wrapper .chat-message-list {
    background-color: var(--dark-2);
}

[data-theme="dark"] .faq-help-chat-wrapper .chat-message-box {
    background-color: var(--dark-3);
    border-top-color: var(--neutral-300);
}

    [data-theme="dark"] .faq-help-chat-wrapper .chat-message-box .form-control {
        background-color: var(--dark-2);
        border-color: var(--neutral-300);
        color: var(--text-primary-light) !important;
    }

        [data-theme="dark"] .faq-help-chat-wrapper .chat-message-box .form-control::placeholder {
            color: var(--text-secondary-light);
        }

[data-theme="dark"] .faq-help-panel.card {
    background-color: var(--dark-3);
    border-color: var(--neutral-300);
    color: var(--text-primary-light);
}

[data-theme="dark"] .faq-help-panel-header {
    background-color: var(--dark-3);
    border-bottom-color: var(--neutral-300);
}

[data-theme="dark"] .faq-help-panel-search input {
    background-color: var(--dark-2);
    border-color: var(--neutral-300);
    color: var(--text-primary-light) !important;
}

[data-theme="dark"] .faq-help-panel-filters .form-select {
    background-color: var(--dark-2);
    border-color: var(--neutral-300);
    color: var(--text-primary-light);
}

[data-theme="dark"] .faq-help-panel-list {
    background-color: var(--dark-2);
}

[data-theme="dark"] .faq-help-panel-footer {
    background-color: var(--dark-3);
    border-top-color: var(--neutral-300);
    color: var(--text-secondary-light);
}

[data-theme="dark"] .faq-help-chat-wrapper .btn-sm.btn-primary {
    background-color: var(--primary-500);
    border-color: var(--primary-500);
    color: #fff;
}

    [data-theme="dark"] .faq-help-chat-wrapper .btn-sm.btn-primary:hover {
        background-color: var(--primary-600);
        border-color: var(--primary-600);
        color: #fff;
    }

[data-theme="dark"] .faq-help-panel .btn-sm.btn-primary {
    background-color: var(--primary-500);
    border-color: var(--primary-500);
    color: #fff;
}

    [data-theme="dark"] .faq-help-panel .btn-sm.btn-primary:hover {
        background-color: var(--primary-600);
        border-color: var(--primary-600);
        color: #fff;
    }

[data-theme="dark"] .faq-help-chat-wrapper .dropdown-menu {
    background-color: var(--dark-3);
    border-color: var(--neutral-300);
}

[data-theme="dark"] .faq-help-chat-wrapper .dropdown-item {
    color: var(--text-primary-light);
}

    [data-theme="dark"] .faq-help-chat-wrapper .dropdown-item:hover {
        background-color: var(--neutral-200);
        color: var(--text-primary-light);
    }

[data-theme="dark"] .faq-help-chat-wrapper .chat-single-message.left .chat-message-content {
    background-color: var(--dark-3);
    border: 1px solid var(--neutral-300);
}

    [data-theme="dark"] .faq-help-chat-wrapper .chat-single-message.left .chat-message-content p {
        color: var(--text-primary-light);
    }

[data-theme="dark"] .faq-help-chat-wrapper .chat-single-message.right .chat-message-content {
    background-color: var(--primary-500);
}

    [data-theme="dark"] .faq-help-chat-wrapper .chat-single-message.right .chat-message-content p {
        color: #fff;
    }

[data-theme="dark"] .faq-help-panel .text-primary {
    color: var(--primary-400) !important;
}

.dashboard-main-body .faq-doubts-map-row {
    align-items: stretch;
}

.dashboard-main-body .faq-doubts-map-embed {
    position: relative;
    flex: 1 1 auto;
    width: 100%;
    min-height: 12.5rem;
}

@media (min-width: 768px) {
    .dashboard-main-body .faq-doubts-map-row .faq-doubts-map-embed {
        min-height: 0;
    }
}

.dashboard-main-body .faq-doubts-map-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

[data-theme="dark"] .faq-contact-card .card-body {
    color: var(--text-primary-light);
}

[data-theme="dark"] .faq-contact-card .faq-contact-label {
    color: var(--text-primary-light);
}

[data-theme="dark"] .faq-contact-card .faq-contact-value {
    color: var(--text-secondary-light);
}

[data-theme="dark"] .faq-contact-card .faq-contact-list .faq-contact-item {
    color: var(--primary-400, #6ea8fe);
}

    [data-theme="dark"] .faq-contact-card .faq-contact-list .faq-contact-item:hover {
        color: var(--primary-400, #6ea8fe);
    }

[data-theme="dark"] .faq-contact-card .faq-contact-row {
    border-bottom-color: var(--border-color);
}

[data-theme="dark"] .faq-contact-card .faq-contact-links a {
    background-color: var(--primary-50);
    color: var(--primary-400, #6ea8fe);
}

    [data-theme="dark"] .faq-contact-card .faq-contact-links a:hover {
        background-color: var(--neutral-200);
        color: var(--primary-400, #6ea8fe);
    }

[data-theme="dark"] .faq-contact-card h6 {
    color: var(--text-primary-light);
}

    [data-theme="dark"] .faq-contact-card .faq-contact-label i,
    [data-theme="dark"] .faq-contact-card h6 i,
    [data-theme="dark"] .faq-contact-card .faq-contact-item .fa-li {
        color: var(--primary-400, #6ea8fe) !important;
    }

.section-home {
    padding: 0px;
    overflow: hidden;
}

    .section-home .section-heading {
        text-align: center;
    }

        .section-home .section-heading h1,
        .section-home .section-heading h2 {
            margin-top: 10px;
            margin-bottom: 20px;
            padding-bottom: 12px;
            text-align: center;
            display: block;
            position: relative;
            font-weight: 600;
        }

        .section-home .section-heading h3 {
            margin-bottom: 10px;
            margin-top: 10px;
            padding-bottom: 6px;
            text-align: center;
            display: block;
            position: relative;
            font-weight: 600;
        }

            .section-home .section-heading h1:after,
            .section-home .section-heading h2:after,
            .section-home .section-heading h3:after {
                content: "";
                width: 50px;
                height: 4px;
                bottom: 0;
                left: 50%;
                position: absolute;
                background: #0045E1;
                -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
            }

        .section-home .section-heading h4,
        .section-home .section-heading h5,
        .section-home .section-heading h6 {
            margin-bottom: 15px;
            padding-bottom: 10px;
            text-align: center;
            display: block;
            position: relative;
        }

            .section-home .section-heading h4:after,
            .section-home .section-heading h5:after,
            .section-home .section-heading h6:after {
                content: "";
                width: 50px;
                height: 4px;
                bottom: 0;
                left: 50%;
                position: absolute;
                background: #0045E1;
                -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
            }

.home-service-cards .home-service-card {
    display: flex;
    align-items: stretch;
    min-height: 175px;
    height: auto;
    padding: 0;
    border-radius: 7px;
    box-shadow: 0 2px 7px rgba(0, 0, 0, 0.15);
    overflow: hidden;
    position: relative;
    background-color: #fff;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

    .home-service-cards .home-service-card::after {
        content: "";
        position: absolute;
        right: 0;
        bottom: 0;
        width: 130px;
        height: 130px;
        background-image: url('../Images/shape/1.png');
        background-size: contain;
        background-repeat: no-repeat;
        background-position: right bottom;
        opacity: 0.45;
        z-index: 0;
        pointer-events: none;
    }

    .home-service-cards .home-service-card:hover,
    .home-service-cards .home-service-card:focus-within,
    .home-service-cards .home-service-card:active {
        transform: translateY(-4px);
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
    }

.home-service-card__thumb {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background-size: cover;
    background-position: center;
    z-index: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.35s ease, visibility 0.35s ease;
}

    .home-service-card__thumb::after {
        position: absolute;
        left: 0;
        top: 0;
        content: "";
        height: 100%;
        width: 100%;
        background: #091d3e;
        z-index: 0;
        opacity: 0.6;
        transition: opacity 0.35s ease;
    }

.home-service-card:hover .home-service-card__thumb,
.home-service-card:focus-within .home-service-card__thumb,
.home-service-card:active .home-service-card__thumb,
.home-service-card--thumb-always .home-service-card__thumb {
    visibility: visible;
    opacity: 1;
}

.home-service-card__left,
.home-service-card__right {
    position: relative;
    z-index: 1;
}

.home-service-card__left {
    flex: 0 0 38%;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.home-service-card__icon {
    flex: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px;
}

    .home-service-card__icon i[class^="flaticon-"],
    .home-service-card__icon i[class*=" flaticon-"] {
        font-size: 3.25rem;
        color: #0344b7;
        transition: transform 0.3s ease, color 0.35s ease;
    }

.home-service-card:hover .home-service-card__icon i[class^="flaticon-"],
.home-service-card:hover .home-service-card__icon i[class*=" flaticon-"],
.home-service-card:focus-within .home-service-card__icon i[class^="flaticon-"],
.home-service-card:focus-within .home-service-card__icon i[class*=" flaticon-"],
.home-service-card:active .home-service-card__icon i[class^="flaticon-"],
.home-service-card:active .home-service-card__icon i[class*=" flaticon-"],
.home-service-card--thumb-always .home-service-card__icon i[class^="flaticon-"],
.home-service-card--thumb-always .home-service-card__icon i[class*=" flaticon-"] {
    transform: scale(1.08);
    color: #fff;
}

.home-service-card__btn-wrap {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 10px 15px 15px;
    min-height: 52px;
}

.home-service-card__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0px;
    width: 44px;
    height: 44px;
    min-width: 44px;
    max-width: 44px;
    padding: 0;
    border-radius: 50%;
    background: #14a1b9;
    color: #fff !important;
    font-size: 0.8125rem;
    font-weight: 600;
    text-decoration: none;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
    border: none;
    transition: min-width 0.3s ease, max-width 0.3s ease, background 0.2s ease, box-shadow 0.2s ease, border-radius 0.3s ease;
    margin: 0;
}

    .home-service-card__btn:hover,
    .home-service-card__btn:focus,
    .home-service-card__btn:active {
        background: #0d7a8c;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.18);
        transform: none;
    }

    .home-service-card__btn--expanded,
    .home-service-card__btn:hover,
    .home-service-card__btn:focus,
    .home-service-card__btn:active {
        min-width: 108px;
        max-width: 124px;
        width: auto;
        border-radius: 22px;
        padding-left: 16px;
        padding-right: 16px;
        justify-content: flex-start;
    }

.home-service-card__btn-text {
    display: inline-block;
    white-space: nowrap;
    width: 0;
    max-width: 0;
    opacity: 0;
    overflow: hidden;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: inherit;
    vertical-align: middle;
    transition: width 0.3s ease, max-width 0.3s ease, opacity 0.25s ease;
}

.home-service-card__btn--expanded .home-service-card__btn-text,
.home-service-card__btn:hover .home-service-card__btn-text,
.home-service-card__btn:focus .home-service-card__btn-text,
.home-service-card__btn:active .home-service-card__btn-text {
    width: auto;
    max-width: 80px;
    min-width: 4.5em;
    opacity: 1;
}

.home-service-card__btn i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    font-size: 14px;
    line-height: 1;
    pointer-events: none;
    flex-shrink: 0;
    box-sizing: border-box;
}

.home-service-card__btn .fa-arrow-right {
    transform: translateX(-1px);
}

.home-service-card__btn .fa-lightbulb {
    transform: none;
}

.home-service-card__btn .fa-info-circle {
    font-size: 15px;
    width: 22px;
    height: 22px;
}

.home-service-card__right {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding: 17px 15px 17px 0;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
}

/* h8.home-service-card__title: especificidade acima do global h8 { font-size: var(--h8) !important } */
.home-service-cards .home-service-card h8.home-service-card__title {
    font-family: 'Novecentowide Medium', sans-serif !important;
    font-size: 0.8125rem !important;
    font-weight: 600;
    margin: 0 0 6px 0;
    line-height: 1.3;
    flex-shrink: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

    .home-service-cards .home-service-card h8.home-service-card__title a {
        color: #232323;
        text-decoration: none;
        transition: color 0.25s ease;
        font-size: inherit !important;
    }

/* Especificidade ≥ regra do link (h8.home-service-card__title a), senão o título fica escuro no hover */
.home-service-cards .home-service-card:hover h8.home-service-card__title a,
.home-service-cards .home-service-card:focus-within h8.home-service-card__title a,
.home-service-cards .home-service-card:active h8.home-service-card__title a,
.home-service-cards .home-service-card--thumb-always h8.home-service-card__title a {
    color: #fff;
}

.home-service-card__desc {
    font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: clamp(0.55rem, 0.9vw + 0.4rem, 0.75rem) !important;
    color: #555;
    margin: 0;
    line-height: 1.35;
    transition: color 0.35s ease;
    flex: 1;
    min-height: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.home-service-card:hover .home-service-card__desc,
.home-service-card:focus-within .home-service-card__desc,
.home-service-card:active .home-service-card__desc,
.home-service-card--thumb-always .home-service-card__desc {
    color: rgba(255, 255, 255, 0.9);
}

[data-theme="dark"] .home-service-cards .home-service-card {
    background: var(--white);
    box-shadow: 0 2px 7px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .home-service-card__icon {
    background-color: transparent;
}

[data-theme="dark"] .home-service-cards .home-service-card h8.home-service-card__title a {
    color: var(--text-primary-light);
}

[data-theme="dark"] .home-service-cards .home-service-card:hover h8.home-service-card__title a, [data-theme="dark"] .home-service-cards .home-service-card:focus-within h8.home-service-card__title a, [data-theme="dark"] .home-service-cards .home-service-card:active h8.home-service-card__title a {
    color: #fff;
}

[data-theme="dark"] .home-service-cards .home-service-card--thumb-always h8.home-service-card__title a {
    color: #fff;
}

[data-theme="dark"] .home-service-card__desc {
    color: var(--text-secondary-light);
}

[data-theme="dark"] .home-service-card--thumb-always .home-service-card__desc {
    color: rgba(255, 255, 255, 0.9);
}

[data-theme="dark"] .home-service-card__btn {
    background: var(--primary-500);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

    [data-theme="dark"] .home-service-card__btn:hover,
    [data-theme="dark"] .home-service-card__btn:focus,
    [data-theme="dark"] .home-service-card__btn:active {
        background: var(--primary-600);
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);
    }

@media (max-width: 1199.98px) {
    .home-service-cards .home-service-card {
        height: auto;
        min-height: 160px;
        padding-bottom: 12px;
        align-items: stretch;
    }

    .home-service-card__left {
        flex: 0 0 34%;
    }

    .home-service-card__icon i[class^="flaticon-"],
    .home-service-card__icon i[class*=" flaticon-"] {
        font-size: 2.5rem;
    }

    .home-service-card__right {
        padding: 12px 12px 12px 0;
        justify-content: flex-start;
        min-height: 0;
        overflow: hidden;
    }

    .home-service-cards .home-service-card h8.home-service-card__title {
        font-size: 0.75rem !important;
        line-height: 1.28;
        -webkit-line-clamp: 2;
    }

    .home-service-card__desc {
        -webkit-line-clamp: 3;
    }

    .home-service-cards .home-service-card::after {
        width: 90px;
        height: 90px;
    }
}

@media (max-width: 768px) {
    .home-service-cards .home-service-card {
        min-height: 120px;
        align-items: stretch;
        flex-direction: row;
    }

    .home-service-card__left {
        flex: 0 0 80px;
        width: 80px;
        min-width: 80px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        padding: 0;
        position: relative;
        z-index: 1;
    }

    .home-service-card__icon {
        flex: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 10px 6px 6px;
        min-height: 44px;
    }

        .home-service-card__icon i[class^="flaticon-"],
        .home-service-card__icon i[class*=" flaticon-"] {
            font-size: 2rem;
        }

    .home-service-card__btn-wrap {
        flex: 0 0 auto;
        padding: 10px 15px 15px;
        min-height: 48px;
        display: flex;
        align-items: center;
        justify-content: flex-start;
    }

    .home-service-card__btn {
        width: 42px;
        height: 42px;
        min-width: 42px;
        max-width: 42px;
        margin: 0;
        font-size: 0.75rem;
        justify-content: center;
    }

        .home-service-card__btn i {
            width: 18px;
            height: 18px;
            font-size: 13px;
        }

        .home-service-card__btn .fa-arrow-right {
            transform: translateX(-1px);
        }

        .home-service-card__btn--expanded,
        .home-service-card__btn:hover,
        .home-service-card__btn:focus,
        .home-service-card__btn:active {
            min-width: 42px;
            max-width: 42px;
            width: 42px;
            border-radius: 50%;
            padding: 0;
            justify-content: center;
        }

    .home-service-card__btn-wrap .home-service-card__btn-text {
        display: none !important;
    }

    .home-service-card__right {
        position: relative;
        z-index: 1;
        flex: 1;
        min-width: 0;
        min-height: 0;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        padding: 10px 12px 10px 10px;
    }

    .home-service-cards .home-service-card h8.home-service-card__title {
        font-size: 0.8rem !important;
        line-height: 1.25;
        margin-bottom: 4px;
        flex-shrink: 0;
        -webkit-line-clamp: 2;
    }

    .home-service-card__desc {
        font-size: 0.65rem;
        line-height: 1.35;
        flex: 1;
        min-height: 0;
        overflow: hidden;
        -webkit-line-clamp: 3;
    }

    .home-service-cards .home-service-card::after {
        width: 56px;
        height: 56px;
    }
}

@media (max-width: 576px) {
    .home-service-cards .home-service-card {
        min-height: 100px;
        padding: 0;
        align-items: stretch;
        flex-direction: row;
    }

    .home-service-card__left {
        flex: 0 0 68px;
        width: 68px;
        min-width: 68px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        position: relative;
        z-index: 1;
    }

    .home-service-card__icon {
        flex: 1;
        padding: 8px 4px 4px;
        min-height: 38px;
    }

        .home-service-card__icon i[class^="flaticon-"],
        .home-service-card__icon i[class*=" flaticon-"] {
            font-size: 1.75rem;
        }

    .home-service-card__btn-wrap {
        flex: 0 0 auto;
        min-height: 48px;
        padding: 10px 15px 15px;
        display: flex;
        align-items: center;
        justify-content: flex-start;
    }

    .home-service-card__btn {
        width: 40px;
        height: 40px;
        min-width: 40px;
        max-width: 40px;
        margin: 0;
        font-size: 0.6875rem;
        justify-content: center;
    }

        .home-service-card__btn i {
            width: 17px;
            height: 17px;
            font-size: 12px;
        }

        .home-service-card__btn .fa-arrow-right {
            transform: translateX(-1px);
        }

        .home-service-card__btn--expanded,
        .home-service-card__btn:hover,
        .home-service-card__btn:focus,
        .home-service-card__btn:active {
            min-width: 40px;
            max-width: 40px;
            width: 40px;
            border-radius: 50%;
            padding: 0;
            justify-content: center;
        }

    .home-service-card__btn-wrap .home-service-card__btn-text {
        display: none !important;
    }

    .home-service-card__right {
        position: relative;
        z-index: 1;
        flex: 1;
        min-width: 0;
        min-height: 0;
        overflow: hidden;
        justify-content: flex-start;
        padding: 8px 10px 8px 8px;
    }

    .home-service-cards .home-service-card h8.home-service-card__title {
        font-size: 0.7rem !important;
        margin-bottom: 3px;
        line-height: 1.2;
        flex-shrink: 0;
        -webkit-line-clamp: 2;
    }

    .home-service-card__desc {
        font-size: 0.575rem;
        line-height: 1.35;
        flex: 1;
        min-height: 0;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .home-service-cards .home-service-card::after {
        width: 44px;
        height: 44px;
    }
}

@media (max-width: 400px) {
    .home-service-cards .home-service-card {
        min-height: 110px;
    }

    .home-service-card__left {
        flex: 0 0 58px;
        width: 58px;
        min-width: 58px;
        position: relative;
        z-index: 2;
    }

    .home-service-card__right {
        position: relative;
        z-index: 1;
        padding: 5px 6px 5px 5px;
    }

    .home-service-card__icon i[class^="flaticon-"],
    .home-service-card__icon i[class*=" flaticon-"] {
        font-size: 1.4rem;
    }

    .home-service-card__btn-wrap {
        min-height: 40px;
        padding: 5px 8px 8px;
    }

    .home-service-card__btn {
        width: 34px;
        height: 34px;
        min-width: 34px;
        max-width: 34px;
        font-size: 0.6rem;
    }

        .home-service-card__btn i {
            width: 13px;
            height: 13px;
            font-size: 10px;
        }

        .home-service-card__btn--expanded,
        .home-service-card__btn:hover,
        .home-service-card__btn:focus,
        .home-service-card__btn:active {
            min-width: 34px;
            max-width: 34px;
            width: 34px;
            border-radius: 50%;
            padding: 0;
            justify-content: center;
        }

    .home-service-cards .home-service-card h8.home-service-card__title {
        font-size: 0.65rem !important;
        line-height: 1.2;
        margin-bottom: 2px;
    }

    .home-service-card__desc {
        font-size: 0.55rem !important;
        line-height: 1.28;
        -webkit-line-clamp: 3;
    }

    .home-service-cards .home-service-card::after {
        width: 32px;
        height: 32px;
    }
}

[data-theme=dark] .dashboard-main-body .card {
    background-color: var(--white);
    border-color: var(--border-color);
    color: var(--text-secondary-light);
}

    [data-theme=dark] .dashboard-main-body .card .card-body {
        background-color: var(--white);
        color: var(--text-secondary-light);
    }

[data-theme=dark] .dashboard-main-body .comunicados-wrapper .badge.bg-light {
    background-color: var(--neutral-200) !important;
    color: var(--text-primary-light) !important;
    border-color: var(--border-color) !important;
}

[data-theme=dark] .dashboard-main-body .comunicados-wrapper .card,
[data-theme=dark] .dashboard-main-body .comunicados-wrapper .card .card-body {
    background-color: var(--white) !important;
    border-color: var(--border-color);
    color: var(--text-secondary-light);
}

[data-theme=dark] .dashboard-main-body .comunicados-wrapper .text-body,
[data-theme=dark] .dashboard-main-body .comunicados-wrapper .fw-semibold {
    color: var(--text-primary-light) !important;
}

[data-theme=dark] .dashboard-main-body .comunicados-wrapper .text-muted,
[data-theme=dark] .dashboard-main-body .comunicados-wrapper .text-muted i {
    color: var(--text-secondary-light) !important;
}

[data-theme=dark] .dashboard-main-body .comunicados-wrapper .comunicado-item {
    color: var(--text-secondary-light);
}

[data-theme=dark] .dashboard-main-body .comunicados-wrapper a.comunicado-item:hover {
    background-color: var(--primary-50);
    color: var(--text-primary-light) !important;
}

[data-theme=dark] .dashboard-main-body .comunicados-wrapper .badge-soft-primary {
    background-color: var(--primary-50);
    color: var(--primary-400);
}

[data-theme=dark] .dashboard-main-body .comunicados-wrapper .badge-soft-secondary {
    background-color: var(--neutral-200);
    color: var(--neutral-600);
}

[data-theme=dark] .dashboard-main-body .comunicados-wrapper .badge-soft-success {
    background-color: var(--primary-50);
    color: var(--primary-400);
}

[data-theme=dark] .dashboard-main-body .comunicados-wrapper .badge-soft-info {
    background-color: var(--neutral-200);
    color: var(--neutral-600);
}

[data-theme=dark] .dashboard-main-body .comunicados-wrapper .badge-soft-warning {
    background-color: var(--neutral-200);
    color: var(--neutral-600);
}

[data-theme=dark] .dashboard-main-body .comunicados-wrapper .card:hover {
    box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.2) !important;
}

.comunicados-wrapper .card {
    transition: box-shadow 0.2s ease;
}

    .comunicados-wrapper .card:hover {
        box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.08) !important;
    }

.dashboard-main-body .comunicados-wrapper {
    min-height: 0;
}

/* md+: Home only — height capped to match service cards column via --home-comunicados-column-max (set in Home.aspx). */
@media (min-width: 768px) {
    .dashboard-main-body.home-page .comunicados-wrapper {
        align-self: flex-start;
        height: var(--home-comunicados-column-max, min(72vh, calc(100vh - 11rem)));
        max-height: var(--home-comunicados-column-max, min(72vh, calc(100vh - 11rem)));
        overflow: hidden;
        display: flex;
        flex-direction: column;
    }

        .dashboard-main-body.home-page .comunicados-wrapper .card {
            flex: 1 1 auto;
            min-height: 0;
            max-height: 100%;
            display: flex;
            flex-direction: column;
            overflow: hidden;
        }

        .dashboard-main-body.home-page .comunicados-wrapper .card-body {
            flex: 1 1 auto;
            min-height: 0;
            display: flex;
            flex-direction: column;
            overflow: hidden;
        }
}

.dashboard-main-body .comunicados-wrapper__scroll {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    flex: 1 1 auto;
    min-height: 0;
}

@media (max-width: 767.98px) {
    .dashboard-main-body .comunicados-wrapper__scroll {
        max-height: min(55vh, 22rem);
    }
}

.comunicado-item {
    border-radius: 0.5rem;
    transition: background-color 0.2s ease;
}

a.comunicado-item:hover {
    background-color: var(--primary-light);
}

.comunicado-icon {
    flex-shrink: 0;
    width: 2rem;
    height: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.375rem;
    font-size: 0.875rem;
}

.comunicados-wrapper .comunicado-item .flex-grow-1 {
    min-width: 0;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.comunicados-wrapper .comunicado-item .fw-semibold.small {
    font-size: clamp(0.7rem, 1.5vw + 0.4rem, 0.875rem);
}

.comunicados-wrapper .comunicado-item .text-muted.small {
    font-size: clamp(0.65rem, 1.2vw + 0.35rem, 0.8125rem);
}

@media (max-width: 576px) {
    .comunicados-wrapper .card-body {
        padding: 0.75rem !important;
    }

    .comunicados-wrapper .comunicado-item {
        padding: 0.5rem !important;
    }
}

.badge-soft-primary {
    background-color: var(--primary-light);
    color: var(--primary-700);
}

.badge-soft-secondary {
    background-color: var(--neutral-200);
    color: var(--neutral-600);
}

.badge-soft-success {
    background-color: rgba(72, 127, 255, 0.18);
    color: var(--primary-600);
}

.badge-soft-info {
    background-color: var(--neutral-100);
    color: var(--neutral-600);
}

.badge-soft-warning {
    background-color: var(--neutral-200);
    color: var(--neutral-700);
}

[data-theme="dark"] .alert.alert-light, [data-theme="dark"] .alert.alert-light.border {
    background-color: #374151;
    border-color: #4b5563 !important;
    color: #e5e7eb;
}

    [data-theme="dark"] .alert.alert-light .fw-semibold,
    [data-theme="dark"] .alert.alert-light .text-muted,
    [data-theme="dark"] .alert.alert-light small {
        color: #d1d5db !important;
    }

/* Portal — condensed card section header (overrides Bootstrap utilities on every .card-header in body) */
.dashboard-main-body .card-header {
    font-size: 0.8125rem !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    color: var(--bs-emphasis-color, #212529) !important;
}

[data-theme="dark"] .dashboard-main-body .card {
    background-color: #1f2937;
    border: 1px solid #374151;
    box-shadow: none;
}

    [data-theme="dark"] .dashboard-main-body .card.border-0 {
        border-color: #374151;
    }

    [data-theme="dark"] .dashboard-main-body .card.shadow-sm {
        box-shadow: none;
    }

[data-theme="dark"] .dashboard-main-body .card-header, [data-bs-theme="dark"] .dashboard-main-body .card-header {
    background-color: transparent;
    border-bottom-color: #374151;
    color: #f9fafb !important;
}

[data-theme="dark"] .dashboard-main-body .rpa-status-bar {
    background: linear-gradient(135deg, #064e3b 0%, #065f46 100%);
    border: 1px solid #047857;
    border-radius: 10px;
}

    [data-theme="dark"] .dashboard-main-body .rpa-status-bar .rpa-status-dot {
        background: #34d399;
        box-shadow: 0 0 0 0 rgba(52, 211, 153, 0.5);
    }

    [data-theme="dark"] .dashboard-main-body .rpa-status-bar .rpa-status-text {
        color: #a7f3d0;
    }

    [data-theme="dark"] .dashboard-main-body .rpa-status-bar .rpa-status-sub {
        color: #6ee7b7;
    }

[data-theme="dark"] .dashboard-main-body .assign-card {
    background: #1f2937;
    border-color: #374151;
    box-shadow: none;
}

    [data-theme="dark"] .dashboard-main-body .assign-card:hover {
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    }

[data-theme="dark"] .dashboard-main-body .card-header-modern {
    border-bottom-color: #374151;
}

[data-theme="dark"] .dashboard-main-body .assign-title {
    color: #f9fafb;
}

[data-theme="dark"] .dashboard-main-body .assign-status {
    color: #9ca3af;
}

[data-theme="dark"] .dashboard-main-body .performance-score {
    color: #f9fafb;
}

[data-theme="dark"] .dashboard-main-body .assign-card .metric-item .metric-value {
    color: #e5e7eb;
}

[data-theme="dark"] .dashboard-main-body .assign-card .metric-item .metric-label {
    color: #9ca3af;
}

.dashboard-main-body .card-body .bg-body.border.border-info {
    border-left-color: #0ea5e9 !important;
    border-inline-start-color: #0ea5e9 !important;
}

.dashboard-main-body .card-body .bg-body.border.border-warning {
    border-left-color: #f59e0b !important;
    border-inline-start-color: #f59e0b !important;
}

.dashboard-main-body .card-body .bg-body.border.border-success {
    border-left-color: #10b981 !important;
    border-inline-start-color: #10b981 !important;
}

.dashboard-main-body .card-body .bg-body.border.border-danger {
    border-left-color: #ef4444 !important;
    border-inline-start-color: #ef4444 !important;
}

[data-theme="dark"] .dashboard-main-body .card-body .bg-body.border {
    background-color: #1f2937 !important;
    border-color: #374151 !important;
    box-shadow: none;
}

    [data-theme="dark"] .dashboard-main-body .card-body .bg-body.border .text-body,
    [data-theme="dark"] .dashboard-main-body .card-body .bg-body.border p.small {
        color: #e5e7eb !important;
    }

    [data-theme="dark"] .dashboard-main-body .card-body .bg-body.border.border-success {
        border-left-color: #34d399 !important;
        border-inline-start-color: #34d399 !important;
    }

    [data-theme="dark"] .dashboard-main-body .card-body .bg-body.border.border-warning {
        border-left-color: #fbbf24 !important;
        border-inline-start-color: #fbbf24 !important;
    }

    [data-theme="dark"] .dashboard-main-body .card-body .bg-body.border.border-danger {
        border-left-color: #f87171 !important;
        border-inline-start-color: #f87171 !important;
    }

    [data-theme="dark"] .dashboard-main-body .card-body .bg-body.border.border-info {
        border-left-color: #22d3ee !important;
        border-inline-start-color: #22d3ee !important;
    }

    [data-theme="dark"] .dashboard-main-body .card-body .bg-body.border strong {
        color: #f9fafb;
    }

[data-theme="dark"] .dashboard-main-body .card-body {
    background-color: transparent;
    color: var(--bs-body-color);
}

[data-theme="dark"] .dashboard-main-body .text-muted, [data-theme="dark"] .dashboard-main-body .text-muted.small {
    color: #9ca3af !important;
}

[data-theme="dark"] .dashboard-main-body h6, [data-theme="dark"] .dashboard-main-body .fw-semibold {
    color: #f9fafb;
}

[data-theme="dark"] .dashboard-main-body .rounded-circle.bg-primary.bg-opacity-10, [data-theme="dark"] .dashboard-main-body .rounded-3.bg-primary.bg-opacity-10 {
    background-color: rgba(13, 110, 253, 0.25) !important;
}

[data-theme="dark"] .dashboard-main-body .rounded-circle.bg-success.bg-opacity-10, [data-theme="dark"] .dashboard-main-body .rounded-3.bg-success.bg-opacity-10 {
    background-color: rgba(25, 135, 84, 0.25) !important;
}

[data-theme="dark"] .dashboard-main-body .rounded-circle.bg-warning.bg-opacity-10, [data-theme="dark"] .dashboard-main-body .rounded-3.bg-warning.bg-opacity-10 {
    background-color: rgba(255, 193, 7, 0.25) !important;
}

[data-theme="dark"] .dashboard-main-body .rounded-circle.bg-danger.bg-opacity-10, [data-theme="dark"] .dashboard-main-body .rounded-3.bg-danger.bg-opacity-10 {
    background-color: rgba(220, 53, 69, 0.25) !important;
}

[data-theme="dark"] .dashboard-main-body .rounded-circle.bg-info.bg-opacity-10, [data-theme="dark"] .dashboard-main-body .rounded-3.bg-info.bg-opacity-10 {
    background-color: rgba(13, 202, 240, 0.25) !important;
}

[data-theme="dark"] .dashboard-main-body .bg-light {
    background-color: #374151 !important;
}

[data-theme="dark"] .dashboard-main-body .rounded-circle.bg-light {
    background-color: #374151 !important;
}

[data-theme="dark"] .dashboard-main-body .badge.bg-primary {
    background-color: #2563eb !important;
    color: #fff !important;
}

[data-theme="dark"] .dashboard-main-body .badge.bg-success {
    background-color: #16a34a !important;
    color: #fff !important;
}

[data-theme="dark"] .dashboard-main-body .badge.bg-warning, [data-theme="dark"] .dashboard-main-body .badge.bg-warning.text-dark {
    background-color: #d97706 !important;
    color: #fff !important;
}

[data-theme="dark"] .dashboard-main-body .badge.bg-info {
    background-color: #0891b2 !important;
    color: #fff !important;
}

[data-theme="dark"] .dashboard-main-body .nav-pills .nav-link {
    background-color: #374151;
    color: #9ca3af;
    border: 1px solid #4b5563;
}

    [data-theme="dark"] .dashboard-main-body .nav-pills .nav-link:hover {
        background-color: #4b5563;
        color: #d1d5db;
    }

    [data-theme="dark"] .dashboard-main-body .nav-pills .nav-link.active {
        background-color: #2563eb;
        color: #fff;
        border-color: #2563eb;
    }

[data-theme="dark"] .dashboard-main-body .text-primary {
    color: #60a5fa !important;
}

[data-theme="dark"] .dashboard-main-body .text-success {
    color: #4ade80 !important;
}

[data-theme="dark"] .dashboard-main-body .text-warning {
    color: #fbbf24 !important;
}

[data-theme="dark"] .dashboard-main-body .text-danger {
    color: #f87171 !important;
}

[data-theme="dark"] .dashboard-main-body .text-info {
    color: #22d3ee !important;
}

[data-theme="dark"] .dashboard-main-body label, [data-theme="dark"] .dashboard-main-body .form-label {
    color: #e5e7eb;
}

[data-theme="dark"] .dashboard-main-body #lbl_Message_Return_Page {
    color: var(--bs-body-color);
}

[data-theme="dark"] .status-services-page .card, [data-theme="dark"] .status-services-page .card.border-0 {
    background-color: #1f2937 !important;
    border: 1px solid #374151 !important;
    box-shadow: none !important;
}

[data-theme="dark"] .status-services-page .card-header {
    background-color: transparent !important;
    border-bottom-color: #374151 !important;
    color: #f9fafb !important;
}

[data-theme="dark"] .status-services-page .card-body {
    background-color: transparent !important;
    color: #e5e7eb;
}

[data-theme="dark"] .status-services-page .text-muted, [data-theme="dark"] .status-services-page span.text-muted {
    color: #9ca3af !important;
}

[data-theme="dark"] .status-services-page h6, [data-theme="dark"] .status-services-page .fw-semibold, [data-theme="dark"] .status-services-page .card-body .fw-semibold.small, [data-theme="dark"] .status-services-page .card-body .fw-bold, [data-theme="dark"] .status-services-page .min-w-0 .fw-semibold {
    color: #f9fafb !important;
}

[data-theme="dark"] .status-services-page .fw-bold.fs-4 {
    color: #f9fafb !important;
}

[data-theme="dark"] .status-services-page .status-card:hover {
    background-color: #374151 !important;
    box-shadow: 0 4px 14px rgba(0,0,0,.4) !important;
}

[data-theme="dark"] .status-services-page .rounded-3.bg-success.bg-opacity-10, [data-theme="dark"] .status-services-page .rounded-3.p-3.bg-success.bg-opacity-10 {
    background-color: rgba(25, 135, 84, 0.25) !important;
}

[data-theme="dark"] .status-services-page .rounded-circle.bg-success.bg-opacity-10 {
    background-color: rgba(25, 135, 84, 0.25) !important;
}

[data-theme="dark"] .status-services-page .rounded-circle.bg-warning.bg-opacity-10 {
    background-color: rgba(255, 193, 7, 0.25) !important;
}

[data-theme="dark"] .status-services-page .rounded-circle.bg-danger.bg-opacity-10 {
    background-color: rgba(220, 53, 69, 0.25) !important;
}

[data-theme="dark"] .status-services-page .rounded-circle.bg-info.bg-opacity-10 {
    background-color: rgba(13, 202, 240, 0.25) !important;
}

[data-theme="dark"] .status-services-page .rounded-3.bg-primary.bg-opacity-10, [data-theme="dark"] .status-services-page .flex-shrink-0.rounded-3.bg-primary.bg-opacity-10 {
    background-color: rgba(13, 110, 253, 0.25) !important;
}

[data-theme="dark"] .status-services-page .text-success {
    color: #4ade80 !important;
}

[data-theme="dark"] .status-services-page .text-warning {
    color: #fbbf24 !important;
}

[data-theme="dark"] .status-services-page .text-danger {
    color: #f87171 !important;
}

[data-theme="dark"] .status-services-page .text-info {
    color: #22d3ee !important;
}

[data-theme="dark"] .status-services-page .text-primary {
    color: #60a5fa !important;
}

[data-theme="dark"] .status-services-page .badge.bg-success, [data-theme="dark"] .status-services-page .badge.rounded-pill.bg-success {
    background-color: #16a34a !important;
    color: #fff !important;
}

[data-theme="dark"] .status-services-page #chartUptime {
    background: transparent !important;
}

[data-theme="dark"] .status-services-page .mt-4.pb-3.text-muted, [data-theme="dark"] .status-services-page .pb-3.text-muted {
    color: #9ca3af !important;
}

[data-theme="dark"] .status-services-page #lastUpdate {
    color: #d1d5db;
}

[data-theme="dark"] .status-services-page .flaticon-receipts, [data-theme="dark"] .status-services-page .flaticon-delivery-truck, [data-theme="dark"] .status-services-page .flaticon-wallet, [data-theme="dark"] .status-services-page .flaticon-cloud-computing, [data-theme="dark"] .status-services-page .flaticon-nanotechnology, [data-theme="dark"] .status-services-page .flaticon-dashboard, [data-theme="dark"] .status-services-page .flaticon-database-storage, [data-theme="dark"] .status-services-page .flaticon-artificial-intelligence, [data-theme="dark"] .status-services-page .flaticon-stock-market, [data-theme="dark"] .status-services-page .flaticon-backup, [data-theme="dark"] .status-services-page .flaticon-tech-service, [data-theme="dark"] .status-services-page .flaticon-servers {
    color: #60a5fa !important;
}

[data-theme="dark"] .status-services-page #lbl_Message_Return_Page {
    color: var(--bs-body-color);
}

[data-theme="dark"] .main-control-profile-page .card {
    background-color: #1f2937 !important;
    border: 1px solid #374151 !important;
    box-shadow: none !important;
}

[data-theme="dark"] .main-control-profile-page .card-header {
    background-color: transparent !important;
    border-bottom-color: #374151 !important;
    color: #f9fafb !important;
}

[data-theme="dark"] .main-control-profile-page .card-body {
    background-color: transparent !important;
    color: #e5e7eb;
}

[data-theme="dark"] .main-control-profile-page .text-secondary-light, [data-theme="dark"] .main-control-profile-page .text-muted {
    color: #9ca3af !important;
}

[data-theme="dark"] .main-control-profile-page h6, [data-theme="dark"] .main-control-profile-page .fw-semibold, [data-theme="dark"] .main-control-profile-page .fw-bold {
    color: #f9fafb !important;
}

[data-theme="dark"] .main-control-profile-page .rounded-circle.bg-primary.bg-opacity-10 {
    background-color: rgba(13, 110, 253, 0.25) !important;
}

[data-theme="dark"] .main-control-profile-page .text-primary {
    color: #60a5fa !important;
}

[data-theme="dark"] .main-control-profile-page .form-label {
    color: #e5e7eb;
}

[data-theme="dark"] .main-control-profile-page .form-control {
    background-color: #374151 !important;
    border-color: #4b5563 !important;
    color: #e5e7eb !important;
}

    [data-theme="dark"] .main-control-profile-page .form-control:disabled {
        background-color: #4b5563 !important;
        color: #9ca3af !important;
    }

[data-theme="dark"] .main-control-profile-page .alert.alert-light {
    background-color: #374151 !important;
    border-color: #4b5563 !important;
    color: #e5e7eb !important;
}

    [data-theme="dark"] .main-control-profile-page .alert.alert-light .alert-heading,
    [data-theme="dark"] .main-control-profile-page .alert.alert-light h6,
    [data-theme="dark"] .main-control-profile-page .alert.alert-light p {
        color: #d1d5db !important;
    }

[data-theme="dark"] .main-control-profile-page .alert.alert-info {
    background-color: rgba(34, 211, 238, 0.15) !important;
    border-color: #0891b2 !important;
    color: #e5e7eb !important;
}

    [data-theme="dark"] .main-control-profile-page .alert.alert-info .alert-heading,
    [data-theme="dark"] .main-control-profile-page .alert.alert-info h6 {
        color: #f9fafb !important;
    }

    [data-theme="dark"] .main-control-profile-page .alert.alert-info p {
        color: #d1d5db !important;
    }

[data-theme="dark"] .main-control-profile-page .param-list li {
    border-bottom-color: #374151 !important;
    color: #e5e7eb;
}

[data-theme="dark"] .main-control-profile-page .list-group-item {
    background-color: transparent !important;
    border-color: #374151 !important;
    color: #e5e7eb !important;
}

[data-theme="dark"] .main-control-profile-page .btn-outline-primary {
    border-color: #3b82f6;
    color: #60a5fa;
}

    [data-theme="dark"] .main-control-profile-page .btn-outline-primary:hover {
        background-color: rgba(59, 130, 246, 0.2);
        border-color: #3b82f6;
        color: #93c5fd;
    }

[data-theme="dark"] .main-control-profile-page .btn-secondary {
    background-color: #4b5563;
    border-color: #4b5563;
    color: #e5e7eb;
}

    [data-theme="dark"] .main-control-profile-page .btn-secondary:hover {
        background-color: #6b7280;
        border-color: #6b7280;
        color: #fff;
    }

[data-theme="dark"] .main-control-profile-page #Modal_Details .modal-content {
    background-color: #1f2937;
    border-color: #374151;
}

[data-theme="dark"] .main-control-profile-page #Modal_Details .modal-header {
    background-color: transparent;
    border-bottom-color: #374151;
    color: #f9fafb;
}

[data-theme="dark"] .main-control-profile-page #Modal_Details .modal-title {
    color: #f9fafb;
}

[data-theme="dark"] .main-control-profile-page #Modal_Details .modal-body {
    background-color: transparent;
    color: #e5e7eb;
}

    [data-theme="dark"] .main-control-profile-page #Modal_Details .modal-body p,
    [data-theme="dark"] .main-control-profile-page #Modal_Details .modal-body .small {
        color: #d1d5db !important;
    }

[data-theme="dark"] .main-control-profile-page #Modal_Details .modal-footer {
    background-color: transparent;
    border-top-color: #374151;
}

[data-theme="dark"] .main-control-profile-page #lbl_Message_Return_Page {
    color: var(--bs-body-color);
}

[data-theme="dark"] .policy-page .card {
    background-color: #1f2937 !important;
    border: 1px solid #374151 !important;
    box-shadow: none !important;
}

[data-theme="dark"] .policy-page .card-body {
    background-color: transparent !important;
    color: #e5e7eb;
}

[data-theme="dark"] .policy-page .list-group-item {
    background-color: transparent !important;
    border-color: #374151 !important;
    color: #e5e7eb !important;
}

    [data-theme="dark"] .policy-page .list-group-item a {
        color: #60a5fa !important;
    }

        [data-theme="dark"] .policy-page .list-group-item a:hover {
            color: #93c5fd !important;
        }

[data-theme="dark"] .policy-page .site-heading .sub-title, [data-theme="dark"] .policy-page h5, [data-theme="dark"] .policy-page .fw-semibold {
    color: #f9fafb !important;
}

[data-theme="dark"] .policy-page p {
    color: #d1d5db !important;
}

[data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-hero__title {
    color: #f9fafb;
}

[data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-hero__lead {
    color: #9ca3af;
}

[data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-card {
    background-color: #1f2937;
    border-color: #374151;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-card__title {
    color: #f9fafb;
}

[data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-form .form-label {
    color: #e5e7eb;
}

[data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-form .form-control {
    background-color: #111827;
    border-color: #4b5563;
    color: #f9fafb;
}

    [data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-form .form-control::placeholder {
        color: #6b7280;
    }

    [data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-form .form-control:focus {
        background-color: #1f2937;
        border-color: #3b82f6;
        box-shadow: 0 0 0 0.2rem rgba(59, 130, 246, 0.25);
    }

[data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-validation-error, [data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-validation-error ul {
    color: #f87171;
}

[data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-footer-note {
    color: #9ca3af;
}

    [data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-footer-note a {
        color: #60a5fa;
    }

[data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-alert.alert-success {
    background-color: rgba(34, 197, 94, 0.15);
    border-color: #16a34a;
    color: #86efac;
}

[data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-alert.alert-danger {
    background-color: rgba(239, 68, 68, 0.15);
    border-color: #dc2626;
    color: #fca5a5;
}

[data-theme="dark"] .dashboard-main-body .newsletter-page .newsletter-alert.alert-info {
    background-color: rgba(59, 130, 246, 0.15);
    border-color: #2563eb;
    color: #93c5fd;
}

[data-theme="dark"] .dashboard-main-body .blog-area .blog-style-one, [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-two {
    background-color: #1f2937;
    border-color: #374151;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.3);
}

    [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-one .info,
    [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-two .info {
        background-color: transparent;
    }

    [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-one .meta li a,
    [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-two .meta li a {
        color: #9ca3af;
    }

        [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-one .meta li a:hover,
        [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-two .meta li a:hover {
            color: #60a5fa;
        }

    [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-one .title a,
    [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-two .title a {
        color: #f3f4f6;
    }

        [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-one .title a:hover,
        [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-two .title a:hover {
            color: #60a5fa;
        }

    [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-one .info p,
    [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-two .info p {
        color: #d1d5db;
    }

    [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-one .author,
    [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-two .author {
        border-top-color: #374151;
    }

        [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-one .author h8,
        [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-two .author h8 {
            color: #f9fafb;
        }

        [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-one .author span,
        [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-two .author span {
            color: #9ca3af;
        }

        [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-one .author img,
        [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-two .author img {
            border-color: #4b5563;
        }

    [data-theme="dark"] .dashboard-main-body .blog-area .blog-style-two .thumb .tags a {
        background-color: #2563eb;
        color: #fff;
    }

[data-theme="dark"] .dashboard-main-body .blog-area .pagi-area .pagination .page-link {
    background-color: #1f2937;
    border-color: #374151;
    color: #e5e7eb;
}

    [data-theme="dark"] .dashboard-main-body .blog-area .pagi-area .pagination .page-link:hover {
        background-color: #374151;
        border-color: #4b5563;
        color: #f9fafb;
    }

[data-theme="dark"] .dashboard-main-body .blog-area .pagi-area .pagination .page-item.active .page-link {
    background-color: #2563eb;
    border-color: #2563eb;
    color: #fff;
}

[data-theme="dark"] .dashboard-main-body .blog-editorial .blog-editorial-meta {
    color: #9ca3af;
}

[data-theme="dark"] .dashboard-main-body .blog-editorial .blog-editorial-meta-sep {
    background-color: #6b7280;
}

[data-theme="dark"] .dashboard-main-body .blog-editorial .blog-editorial-title {
    color: #f9fafb;
}

[data-theme="dark"] .dashboard-main-body .blog-editorial .blog-editorial-lead {
    color: #d1d5db;
}

[data-theme="dark"] .dashboard-main-body .blog-editorial .blog-editorial-prose p {
    color: #e5e7eb;
}

[data-theme="dark"] .dashboard-main-body .blog-editorial .blog-editorial-bento-card {
    border-color: rgba(255, 255, 255, 0.08);
    background-color: rgba(255, 255, 255, 0.03);
}

    [data-theme="dark"] .dashboard-main-body .blog-editorial .blog-editorial-bento-card:hover {
        border-color: rgba(72, 127, 255, 0.4);
        background-color: rgba(72, 127, 255, 0.08);
    }

[data-theme="dark"] .dashboard-main-body .blog-editorial .blog-editorial-bento-title {
    color: #e5e7eb;
}

[data-theme="dark"] .dashboard-main-body .blog-editorial .blog-editorial-pullquote {
    background-color: rgba(72, 127, 255, 0.15);
    border-left-color: #60a5fa;
    color: #93c5fd;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .dashboard-main-body .blog-editorial .blog-editorial-closing {
    color: #d1d5db;
}

[data-theme="dark"] .dashboard-main-body .blog-editorial .blog-editorial-nav {
    border-top-color: rgba(255, 255, 255, 0.1);
}

    [data-theme="dark"] .dashboard-main-body .blog-editorial .blog-editorial-nav .page-link {
        background-color: #1f2937;
        border-color: #374151;
        color: #e5e7eb;
    }

        [data-theme="dark"] .dashboard-main-body .blog-editorial .blog-editorial-nav .page-link:hover {
            background-color: #374151;
            color: #f9fafb;
        }

    [data-theme="dark"] .dashboard-main-body .blog-editorial .blog-editorial-nav .page-item.active .page-link {
        background-color: #2563eb;
        border-color: #2563eb;
        color: #fff;
    }

[data-theme="dark"] .dashboard-main-body .blog-area.default-padding, [data-theme="dark"] .dashboard-main-body .blog-area.blog-grid {
    color: #e5e7eb;
}

.label-legend {
    display: inline-block;
    width: 0.75rem;
    height: 0.75rem;
    min-width: 0.75rem;
    min-height: 0.75rem;
    line-height: 0;
    overflow: hidden;
    text-indent: -999px;
    border-radius: 50%;
    vertical-align: middle;
    margin-right: 0.25rem;
    flex-shrink: 0;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.06);
}

.label-legend-used {
    background-color: #62c6e0;
}

.label-legend--used {
    background-color: #62c6e0;
}

.label-legend-free {
    background-color: #dae6e8;
}

.label-legend-critical {
    background-color: #e64040;
}

.label-legend-autorizada {
    background-color: #2aad3f;
}

.label-legend-laranja {
    background-color: #f1a142;
}

.label-legend-aguardando {
    background-color: #ffcb16;
}

.label-legend-inexistente {
    background-color: #b3dced;
}

.label-legend-negada {
    background-color: #f04646;
}

.label-legend-denied {
    background-color: #f04646;
}

.label-legend-roxa {
    background-color: #cc99ff;
}

.label-legend-azul-escuro {
    background-color: #85a3e0;
}

.label-legend-black {
    background-color: #000;
}

.label-legend-darkgray {
    background-color: #6b7280;
}

.label-legend-mini {
    width: 0.5rem;
    height: 0.5rem;
    min-width: 0.5rem;
    min-height: 0.5rem;
    margin-right: 0.25rem;
}

.label-legend-status {
    display: inline-block;
    width: 0.5rem;
    height: 0.5rem;
    min-width: 0.5rem;
    min-height: 0.5rem;
    line-height: 0;
    overflow: hidden;
    text-indent: -999px;
    border-radius: 50%;
    vertical-align: middle;
    flex-shrink: 0;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.06);
}

.label-legend-azul1 {
    background-color: #1e5799;
    width: 0.625rem;
    height: 0.625rem;
    min-width: 0.625rem;
    min-height: 0.625rem;
    margin-bottom: 0.125rem;
}

.label-legend-azul2 {
    background-color: #2989d8;
    width: 0.625rem;
    height: 0.625rem;
    min-width: 0.625rem;
    min-height: 0.625rem;
    margin-bottom: 0.125rem;
}

.label-legend-azul3 {
    background-color: #7db9e8;
    width: 0.625rem;
    height: 0.625rem;
    min-width: 0.625rem;
    min-height: 0.625rem;
    margin-bottom: 0.125rem;
}

.label-legend-grid-blue {
    background-color: #1e5799;
    width: 0.4375rem;
    height: 0.4375rem;
    min-width: 0.4375rem;
    min-height: 0.4375rem;
    border-radius: 0.3125rem;
}

.label-legend.label-danger {
    background-color: #dc2626;
}

[data-theme="dark"] .label-legend {
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.12);
}

[data-theme="dark"] .label-legend-free {
    background-color: #4b5563;
}

[data-theme="dark"] .label-legend-inexistente {
    background-color: #374151;
}

[data-theme="dark"] .label-legend-darkgray {
    background-color: #9ca3af;
}

.page-user-registration {
    font-size: 0.8125rem;
    line-height: 1.35;
}

    .page-user-registration .table {
        font-size: 0.6875rem;
        margin-bottom: 0;
        border-collapse: collapse;
        border-spacing: 0;
        line-height: 1.15;
    }

        .page-user-registration .table th,
        .page-user-registration .table td {
            font-size: inherit;
            padding: 0.06rem 0.25rem;
            vertical-align: middle;
            line-height: 1.15;
            border: 1px solid var(--neutral-200, #e5e7eb);
        }

        .page-user-registration .table.table-sm th,
        .page-user-registration .table.table-sm td,
        .page-user-registration .table.table-condensed th,
        .page-user-registration .table.table-condensed td {
            padding: 0.08rem 0.25rem;
            vertical-align: middle;
            line-height: 1.5;
        }

        .page-user-registration .table th,
        .page-user-registration .table td,
        .page-user-registration .table th a,
        .page-user-registration .table td a,
        .page-user-registration .table td .small,
        .page-user-registration .table td label,
        .page-user-registration .table td .form-check-label,
        .page-user-registration .table .btn-sm,
        .page-user-registration .table .btn-link {
            font-size: 0.6875rem !important;
        }

        .page-user-registration .table th {
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.02em;
            white-space: nowrap;
            background-color: var(--neutral-100, #f3f4f6);
            color: var(--neutral-600, #4b5563);
        }

        .page-user-registration .table.table-striped-columns > :not(caption) > tr > .user-registration-col-administrator {
            --bs-table-color-type: initial;
            --bs-table-bg-type: initial;
            color: inherit;
            background-color: var(--bs-table-bg, #fff);
        }

        .page-user-registration .table.table-striped-columns > thead > tr > .user-registration-col-administrator {
            background-color: var(--neutral-100, #f3f4f6);
            color: var(--neutral-600, #4b5563);
        }

        .page-user-registration .table td {
            white-space: nowrap;
        }

            .page-user-registration .table td a,
            .page-user-registration .table .btn-link {
                color: var(--bs-primary, #0d6efd) !important;
                text-decoration: none;
            }

                .page-user-registration .table td a:hover,
                .page-user-registration .table .btn-link:hover {
                    color: var(--bs-primary-dark, #0a58ca) !important;
                    text-decoration: underline;
                }

        .page-user-registration .table .btn-outline-primary {
            color: var(--bs-primary, #0d6efd) !important;
            border-color: var(--bs-primary, #0d6efd);
        }

            .page-user-registration .table .btn-outline-primary:hover {
                color: #fff !important;
                background-color: var(--bs-primary, #0d6efd);
                border-color: var(--bs-primary, #0d6efd);
            }

        .page-user-registration .table th.col-action,
        .page-user-registration .table td.col-action {
            width: 1%;
            min-width: 2.5rem;
            padding-left: 0.1rem;
            padding-right: 0.1rem;
            text-align: center;
            vertical-align: middle;
        }

        .page-user-registration .table th.text-center,
        .page-user-registration .table td.text-center {
            text-align: center;
        }

        .page-user-registration .table .btn-icon-edit {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 1.5rem;
            height: 1.5rem;
            padding: 0;
            min-width: 1.5rem;
            border: 1px solid var(--bs-primary, #0d6efd);
            color: var(--bs-primary, #0d6efd);
            border-radius: 4px;
            text-decoration: none;
            font-size: 0.6875rem;
        }

            .page-user-registration .table .btn-icon-edit:hover {
                background-color: var(--bs-primary, #0d6efd);
                color: #fff;
            }

            .page-user-registration .table .btn-icon-edit i {
                margin: 0;
                font-size: 0.75rem;
            }

        /* Gatilho do modal Info: menor que btn-xs-portal para não alargar tabela condensada */
        .page-user-registration .table td.col-action button.user-registration-modal-info-trigger {
            white-space: nowrap;
            padding: 0.04rem 0.2rem !important;
            min-height: 0 !important;
            font-size: 0.6rem !important;
            font-weight: 600;
            line-height: 1.1 !important;
            border-width: 1px;
        }

    .page-user-registration .table-responsive {
        margin-bottom: 0.5rem;
    }

    .page-user-registration .table-hover tbody tr:hover {
        background-color: var(--neutral-50, #f9fafb);
    }

    .page-user-registration .table .d-flex[style*="writing-mode"] {
        min-height: 72px !important;
        max-height: 98px !important;
        height: auto !important;
        font-size: 0.6875rem !important;
        letter-spacing: 0.01em;
        white-space: normal !important;
        word-break: break-word;
        overflow-wrap: break-word;
        text-align: center;
    }

    .page-user-registration #div_Grid_Internal_Status .table thead th,
    .page-user-registration #div_Grid_External_Status .table thead th {
        font-size: 0.625rem !important;
    }

    .page-user-registration #div_Grid_Internal_Status .table .d-flex[style*="writing-mode"],
    .page-user-registration #div_Grid_External_Status .table .d-flex[style*="writing-mode"] {
        font-size: 0.625rem !important;
    }

    .page-user-registration .form-label {
        font-size: 0.7rem;
        font-weight: 500;
        margin-bottom: 0.15rem;
    }

    .page-user-registration .form-text {
        font-size: 0.65rem;
        margin-top: 0.1rem;
    }

    /* Cadastrar novo usuário: mensagens de validação com destaque (text-bg-danger) */
    .page-user-registration .user-registration-new-user-validator {
        line-height: 1.35;
        box-sizing: border-box;
    }

[data-bs-theme="dark"] .page-user-registration .user-registration-new-user-validator.text-bg-danger,
[data-theme="dark"] .page-user-registration .user-registration-new-user-validator.text-bg-danger {
    color: #f8f9fa !important;
    background-color: var(--bs-danger, #dc3545) !important;
}

/* Cadastro de usuários: tooltips Bootstrap (customClass em pageLoad) — leitura em tabelas/cards */
.page-user-registration .tooltip.tooltip-portal-wide .tooltip-inner {
    max-width: min(22rem, 92vw);
    text-align: left;
    line-height: 1.45;
    font-size: 0.8125rem;
    font-weight: 400;
    padding: 0.45rem 0.65rem;
}

.page-user-registration .mb-3 {
    margin-bottom: 0.5rem !important;
}

.page-user-registration .user-registration-tabs-card {
    overflow: hidden;
}

.page-user-registration .user-registration-nav-tabs {
    flex-wrap: wrap;
    gap: 0.15rem;
    margin-bottom: -1px;
}

    .page-user-registration .user-registration-nav-tabs .nav-link {
        font-size: 0.75rem;
        font-weight: 600;
        padding: 0.55rem 0.85rem;
        color: var(--bs-secondary-color);
        border: 1px solid transparent;
        border-bottom: 0;
        border-radius: 0.375rem 0.375rem 0 0;
        white-space: nowrap;
        background: transparent;
    }

        .page-user-registration .user-registration-nav-tabs .nav-link:hover,
        .page-user-registration .user-registration-nav-tabs .nav-link:focus {
            color: var(--bs-primary);
            border-color: transparent;
            isolation: isolate;
        }

        .page-user-registration .user-registration-nav-tabs .nav-link.active {
            color: var(--bs-primary);
            background-color: var(--bs-body-bg);
            border-color: var(--bs-border-color);
            border-bottom-color: var(--bs-body-bg);
        }

.page-user-registration .user-registration-nav-tabs__count {
    font-size: 0.6875rem;
    font-weight: 700;
    color: var(--bs-danger);
    margin-left: 0.15rem;
}

.page-user-registration .nav-tabs {
    border-bottom-width: 1px;
    gap: 0;
}

.page-user-registration .list-group-item {
    padding: 0.25rem 0.5rem;
    font-size: 0.7rem;
}

    .page-user-registration .list-group-item .form-check-input {
        margin-top: 0.15rem;
    }

    .page-user-registration .list-group-item .form-check-label {
        font-size: 0.7rem;
    }

/* Parâmetros de Acesso: em colunas estreitas (ex.: 1024×768) os rótulos quebram linha.
       O Site.css global define .form-check-label { line-height: 0.4 }, o que sobrepõe as linhas. */
.page-user-registration .form-check:not(.form-switch) {
    align-items: flex-start;
    min-height: 0;
}

    .page-user-registration .form-check:not(.form-switch) .form-check-input[type=checkbox],
    .page-user-registration .form-check:not(.form-switch) .form-check-input input[type=checkbox] {
        margin-top: 0.2rem;
    }

    .page-user-registration .form-check:not(.form-switch) .form-check-label {
        line-height: 1.45 !important;
        min-width: 0;
        flex: 1 1 auto;
        overflow-wrap: break-word;
        word-wrap: break-word;
    }

.page-user-registration .param-card .list-group-item {
    padding: 0.45rem 0.55rem;
}

/* Active contracts: read-only list (not the clickable product checkboxes below) */
.page-user-registration ul.user-registration-contracts-readonly {
    background-color: #eef2f7;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 0.375rem;
    padding: 0.35rem 0.45rem;
    margin-bottom: 0 !important;
}

    .page-user-registration ul.user-registration-contracts-readonly .list-group-item {
        background-color: transparent;
        border-color: rgba(0, 0, 0, 0.06);
    }

[data-bs-theme="dark"] .page-user-registration ul.user-registration-contracts-readonly,
[data-theme="dark"] .page-user-registration ul.user-registration-contracts-readonly {
    background-color: #1e293b;
    border-color: #4b5563;
}

    [data-bs-theme="dark"] .page-user-registration ul.user-registration-contracts-readonly .list-group-item,
    [data-theme="dark"] .page-user-registration ul.user-registration-contracts-readonly .list-group-item {
        border-color: rgba(255, 255, 255, 0.08);
    }

.page-user-registration .alert {
    font-size: 0.7rem;
    padding: 0.35rem 0.5rem;
}

.page-user-registration .alert-heading {
    font-size: 0.75rem;
}

.page-user-registration .alert-callout-2fa {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem 1.25rem;
    font-size: 0.8125rem;
    line-height: 1.5;
    color: #1e3a5f;
    background: linear-gradient(135deg, rgba(0, 86, 228, 0.06) 0%, rgba(7, 128, 221, 0.04) 100%);
    border: 1px solid rgba(0, 86, 228, 0.2);
    border-radius: 10px;
    border-inline-start: 4px solid #0056E4;
}

.page-user-registration .alert-callout-2fa-icon {
    flex-shrink: 0;
    width: 2.25rem;
    height: 2.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: rgba(0, 86, 228, 0.12);
    color: #0056E4;
    font-size: 1.0625rem;
    margin-top: 0.05rem;
}

.page-user-registration .alert-callout-2fa-body {
    flex: 1;
    min-width: 0;
}

.page-user-registration .alert-callout-2fa-title {
    font-size: 0.875rem;
    font-weight: 600;
    color: #0056E4;
    margin: 0 0 0.375rem 0;
    line-height: 1.3;
}

.page-user-registration .alert-callout-2fa-text {
    color: #374151;
    font-size: 0.8125rem;
    line-height: 1.55;
    margin-bottom: 0.5rem;
}

    .page-user-registration .alert-callout-2fa-text:last-child {
        margin-bottom: 0;
    }

    .page-user-registration .alert-callout-2fa-text strong {
        font-weight: 600;
        color: #1f2937;
    }

.page-user-registration .user-registration-info-heading {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding-bottom: 0.75rem;
    margin-bottom: 0.75rem;
    border-bottom: 1px solid rgba(0, 86, 228, 0.12);
}

.page-user-registration .user-registration-info-heading__mark {
    flex-shrink: 0;
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    font-size: 1.0625rem;
    color: #fff;
    background: linear-gradient(135deg, #0056E4 0%, #0780DD 52%, #26BBCD 100%);
    box-shadow: 0 8px 20px -10px rgba(0, 86, 228, 0.45);
}

.page-user-registration .user-registration-info-heading__mark--external {
    background: linear-gradient(135deg, #0780DD 0%, #26BBCD 52%, #009D71 100%);
    box-shadow: 0 8px 20px -10px rgba(7, 128, 221, 0.45);
}

.page-user-registration .user-registration-info-heading__title {
    font-size: 0.9375rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: #0f172a;
    line-height: 1.3;
}

.page-user-registration .user-registration-tab-intro {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    line-height: 1.45;
}

.page-user-registration .user-registration-tab-intro__mark {
    flex-shrink: 0;
    width: 1.375rem;
    height: 1.375rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    font-size: 0.625rem;
    color: #fff;
    background: linear-gradient(135deg, #0056E4 0%, #0780DD 52%, #26BBCD 100%);
    box-shadow: 0 4px 12px -6px rgba(0, 86, 228, 0.45);
}

.page-user-registration .user-registration-tab-intro__mark--external {
    background: linear-gradient(135deg, #0780DD 0%, #26BBCD 52%, #009D71 100%);
    box-shadow: 0 4px 12px -6px rgba(7, 128, 221, 0.45);
}

.page-user-registration .row .dl.row dt,
.page-user-registration dl.row dt,
.page-user-registration .table .collapse dt {
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.page-user-registration .row .dl.row dd,
.page-user-registration dl.row dd,
.page-user-registration .table .collapse dd {
    font-size: 0.6875rem;
}

.page-user-registration .table tr {
    margin: 0;
    padding: 0;
}

.page-user-registration .table td.p-0 {
    padding: 0 !important;
    border-left: 1px solid var(--neutral-200, #e5e7eb);
    border-right: 1px solid var(--neutral-200, #e5e7eb);
    vertical-align: top;
}

.page-user-registration .table .grid-collapse-details {
    padding: 0.75rem 1rem;
    margin: 0;
    background: linear-gradient(135deg, var(--neutral-50, #f9fafb) 0%, var(--neutral-100, #f3f4f6) 100%);
    border-bottom: 1px solid var(--neutral-200, #e5e7eb);
    border-left: 3px solid var(--primary-500, #0d6efd);
    font-size: 0.75rem;
}

    .page-user-registration .table .grid-collapse-details .row {
        margin-left: -0.5rem;
        margin-right: -0.5rem;
        align-items: stretch;
    }

        .page-user-registration .table .grid-collapse-details .row > [class*="col-"] {
            padding-left: 0.5rem;
            padding-right: 0.5rem;
        }

    .page-user-registration .table .grid-collapse-details .collapse-details-col {
        background-color: #fff;
        border-radius: 6px;
        padding: 0.5rem 0.65rem;
        border: 1px solid var(--neutral-200, #e5e7eb);
    }

    .page-user-registration .table .grid-collapse-details .user-registration-collapse-access {
        border-top-color: var(--neutral-200, #e5e7eb) !important;
    }

    .page-user-registration .table .grid-collapse-details .user-registration-service-access-tile {
        background-color: #fff;
        border-color: var(--neutral-200, #e5e7eb) !important;
        box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
        min-height: 2.5rem;
    }

    .page-user-registration .table .grid-collapse-details .user-registration-profile-tile {
        background-color: #fff;
        border-color: var(--neutral-200, #d1d5db) !important;
        box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
    }

    .page-user-registration .table .grid-collapse-details .dl-row {
        margin-bottom: 0;
        font-size: 0.6875rem;
    }

        .page-user-registration .table .grid-collapse-details .dl-row dt {
            font-weight: 700;
            color: var(--neutral-700, #374151);
            text-align: right;
            padding: 0.2rem 0.4rem 0.2rem 0;
            vertical-align: middle;
            border: none;
        }

        .page-user-registration .table .grid-collapse-details .dl-row dd {
            font-weight: 500;
            color: var(--neutral-800, #1f2937);
            padding: 0.2rem 0 0.2rem 0.4rem;
            vertical-align: middle;
            margin-bottom: 0.05rem;
        }

        .page-user-registration .table .grid-collapse-details .dl-row dt::after {
            content: "";
        }

        .page-user-registration .table .grid-collapse-details .dl-row dd + dt {
            padding-top: 0.15rem;
        }

.page-user-registration code {
    font-size: 0.65rem;
}

.page-user-registration .badge {
    font-size: 0.6rem;
    padding: 0.15rem 0.35rem;
}

[data-theme="dark"] .page-user-registration .card, [data-theme="dark"] .page-user-registration .card.border-0 {
    background-color: #1f2937;
    border-color: #374151;
}

[data-theme="dark"] .page-user-registration .card-header {
    background-color: #374151;
    border-bottom-color: #4b5563;
    color: #f9fafb;
}

[data-theme="dark"] .page-user-registration .card-body {
    background-color: #1f2937;
    color: #e5e7eb;
}

[data-theme="dark"] .page-user-registration .card-footer {
    background-color: #374151;
    border-top-color: #4b5563;
    color: #e5e7eb;
}

[data-theme="dark"] .page-user-registration .table {
    color: #e5e7eb;
}

    [data-theme="dark"] .page-user-registration .table th,
    [data-theme="dark"] .page-user-registration .table td {
        border-color: #4b5563;
        color: inherit;
    }

    [data-theme="dark"] .page-user-registration .table th {
        background-color: #374151;
        color: #d1d5db;
    }

    [data-theme="dark"] .page-user-registration .table.table-striped-columns > :not(caption) > tr > .user-registration-col-administrator,
    [data-bs-theme="dark"] .page-user-registration .table.table-striped-columns > :not(caption) > tr > .user-registration-col-administrator {
        --bs-table-color-type: initial;
        --bs-table-bg-type: initial;
        color: inherit;
        background-color: #1f2937;
    }

    [data-theme="dark"] .page-user-registration .table.table-striped-columns > thead > tr > .user-registration-col-administrator,
    [data-bs-theme="dark"] .page-user-registration .table.table-striped-columns > thead > tr > .user-registration-col-administrator {
        background-color: #374151;
        color: #d1d5db;
    }

    [data-theme="dark"] .page-user-registration .table td a,
    [data-theme="dark"] .page-user-registration .table .btn-link {
        color: #60a5fa !important;
    }

        [data-theme="dark"] .page-user-registration .table td a:hover,
        [data-theme="dark"] .page-user-registration .table .btn-link:hover {
            color: #93c5fd !important;
        }

    [data-theme="dark"] .page-user-registration .table .btn-icon-edit {
        border-color: #60a5fa;
        color: #60a5fa;
    }

        [data-theme="dark"] .page-user-registration .table .btn-icon-edit:hover {
            background-color: #3b82f6;
            color: #fff;
            border-color: #3b82f6;
        }

[data-theme="dark"] .page-user-registration .table-hover tbody tr:hover {
    background-color: #374151;
}

[data-theme="dark"] .page-user-registration .table td.table-info, [data-theme="dark"] .page-user-registration .table th.table-info {
    background-color: rgba(59, 130, 246, 0.2);
    color: #e5e7eb;
    border-color: #4b5563;
}

[data-theme="dark"] .page-user-registration #div_Grid_Internal_Log .overflow-auto, [data-theme="dark"] .page-user-registration #div_Grid_Internal_Log .table-responsive {
    background-color: transparent;
}

[data-theme="dark"] .page-user-registration #div_Grid_Internal_Log .table {
    background-color: #1f2937;
}

[data-theme="dark"] .page-user-registration .table td.p-0 {
    border-left-color: #4b5563;
    border-right-color: #4b5563;
}

[data-theme="dark"] .page-user-registration .table .grid-collapse-details {
    background: linear-gradient(135deg, #374151 0%, #4b5563 100%);
    border-bottom-color: #4b5563;
    border-left-color: #3b82f6;
    color: #e5e7eb;
}

    [data-theme="dark"] .page-user-registration .table .grid-collapse-details .collapse-details-col {
        background-color: rgba(31, 41, 55, 0.8);
        border-color: #4b5563;
    }

    [data-theme="dark"] .page-user-registration .table .grid-collapse-details .dl-row dt {
        color: #d1d5db;
    }

    [data-theme="dark"] .page-user-registration .table .grid-collapse-details .dl-row dd {
        color: #f3f4f6;
    }

    [data-theme="dark"] .page-user-registration .table .grid-collapse-details .user-registration-collapse-access {
        border-top-color: #4b5563 !important;
    }

    [data-theme="dark"] .page-user-registration .table .grid-collapse-details .user-registration-service-access-tile,
    [data-theme="dark"] .page-user-registration .table .grid-collapse-details .user-registration-profile-tile {
        background-color: rgba(31, 41, 55, 0.65);
        border-color: #4b5563 !important;
        box-shadow: none;
    }

[data-theme="dark"] .page-user-registration .user-registration-tabs-card,
[data-bs-theme="dark"] .page-user-registration .user-registration-tabs-card {
    background-color: #1f2937;
    border-color: #4b5563;
}

[data-theme="dark"] .page-user-registration .user-registration-tabs-card__header,
[data-bs-theme="dark"] .page-user-registration .user-registration-tabs-card__header {
    background-color: #374151 !important;
    border-bottom-color: #4b5563 !important;
}

[data-theme="dark"] .page-user-registration .user-registration-nav-tabs .nav-link,
[data-bs-theme="dark"] .page-user-registration .user-registration-nav-tabs .nav-link {
    color: #9ca3af;
}

    [data-theme="dark"] .page-user-registration .user-registration-nav-tabs .nav-link:hover,
    [data-theme="dark"] .page-user-registration .user-registration-nav-tabs .nav-link:focus,
    [data-bs-theme="dark"] .page-user-registration .user-registration-nav-tabs .nav-link:hover,
    [data-bs-theme="dark"] .page-user-registration .user-registration-nav-tabs .nav-link:focus {
        color: #93c5fd;
    }

    [data-theme="dark"] .page-user-registration .user-registration-nav-tabs .nav-link.active,
    [data-bs-theme="dark"] .page-user-registration .user-registration-nav-tabs .nav-link.active {
        color: #93c5fd;
        background-color: #1f2937;
        border-color: #4b5563;
        border-bottom-color: #1f2937;
    }

[data-theme="dark"] .page-user-registration .user-registration-nav-tabs__count,
[data-bs-theme="dark"] .page-user-registration .user-registration-nav-tabs__count {
    color: #f87171;
}

[data-theme="dark"] .page-user-registration .nav-tabs {
    border-bottom-color: #4b5563;
}

[data-theme="dark"] .page-user-registration .list-group-item {
    background-color: #1f2937;
    border-color: #4b5563;
    color: #e5e7eb;
}

    [data-theme="dark"] .page-user-registration .list-group-item .form-check-label {
        color: #e5e7eb;
    }

[data-theme="dark"] .page-user-registration .form-label {
    color: #e5e7eb;
}

[data-theme="dark"] .page-user-registration .form-control, [data-theme="dark"] .page-user-registration .form-control-sm {
    background-color: #374151;
    border-color: #4b5563;
    color: #f9fafb;
}

    [data-theme="dark"] .page-user-registration .form-control::placeholder,
    [data-theme="dark"] .page-user-registration .form-control-sm::placeholder {
        color: #9ca3af;
    }

[data-theme="dark"] .page-user-registration .form-text {
    color: #9ca3af;
}

[data-theme="dark"] .page-user-registration .alert.alert-dark {
    background-color: #374151;
    border-color: #4b5563;
    color: #e5e7eb;
}

[data-theme="dark"] .page-user-registration .alert.alert-info {
    background-color: rgba(59, 130, 246, 0.15);
    border-color: #3b82f6;
    color: #e5e7eb;
}

[data-theme="dark"] .page-user-registration .alert-callout-2fa, [data-bs-theme="dark"] .page-user-registration .alert-callout-2fa {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.12) 0%, rgba(59, 130, 246, 0.06) 100%);
    border-color: rgba(59, 130, 246, 0.35);
    border-inline-start-color: #60a5fa;
    color: #e5e7eb;
}

[data-theme="dark"] .page-user-registration .alert-callout-2fa-icon, [data-bs-theme="dark"] .page-user-registration .alert-callout-2fa-icon {
    background: rgba(59, 130, 246, 0.2);
    color: #60a5fa;
}

[data-theme="dark"] .page-user-registration .alert-callout-2fa-title, [data-bs-theme="dark"] .page-user-registration .alert-callout-2fa-title {
    color: #93c5fd;
}

[data-theme="dark"] .page-user-registration .alert-callout-2fa-text, [data-bs-theme="dark"] .page-user-registration .alert-callout-2fa-text {
    color: #d1d5db;
}

    [data-theme="dark"] .page-user-registration .alert-callout-2fa-text strong,
    [data-bs-theme="dark"] .page-user-registration .alert-callout-2fa-text strong {
        color: #f3f4f6;
    }

[data-theme="dark"] .page-user-registration .user-registration-info-heading,
[data-bs-theme="dark"] .page-user-registration .user-registration-info-heading {
    border-bottom-color: rgba(148, 163, 184, 0.22);
}

[data-theme="dark"] .page-user-registration .user-registration-info-heading__title,
[data-bs-theme="dark"] .page-user-registration .user-registration-info-heading__title {
    color: #f9fafb;
}

[data-theme="dark"] .page-user-registration .alert .alert-heading, [data-theme="dark"] .page-user-registration .alert-heading {
    color: #f9fafb;
}

[data-theme="dark"] .page-user-registration .btn-link.text-secondary {
    color: #9ca3af !important;
}

    [data-theme="dark"] .page-user-registration .btn-link.text-secondary:hover {
        color: #d1d5db !important;
    }

[data-theme="dark"] .page-user-registration .text-muted {
    color: #9ca3af !important;
}

[data-theme="dark"] .page-user-registration .row .dl.row dt, [data-theme="dark"] .page-user-registration dl.row dt, [data-theme="dark"] .page-user-registration .table .collapse dt {
    color: #d1d5db;
}

[data-theme="dark"] .page-user-registration .row .dl.row dd, [data-theme="dark"] .page-user-registration dl.row dd, [data-theme="dark"] .page-user-registration .table .collapse dd {
    color: #e5e7eb;
}

[data-theme="dark"] .page-user-registration .badge.bg-warning.text-dark {
    background-color: #d97706 !important;
    color: #fff !important;
}

[data-theme="dark"] .page-user-registration code {
    background-color: #374151;
    color: #e5e7eb;
    border-color: #4b5563;
}

[data-theme="dark"] .page-user-registration .card.bg-light .card-body, [data-theme="dark"] .page-user-registration .bg-light {
    background-color: #374151 !important;
    color: #e5e7eb;
}

[data-theme="dark"] .page-user-registration .card.border-primary {
    border-color: #3b82f6 !important;
}

    [data-theme="dark"] .page-user-registration .card.border-primary .card-header {
        background-color: #1d4ed8 !important;
        border-bottom-color: #2563eb;
        color: #fff;
    }

[data-theme="dark"] .page-user-registration .alert.alert-dark .btn-close {
    filter: invert(1);
}

[data-theme="dark"] .page-user-registration .list-group-item .form-check-input {
    background-color: #374151;
    border-color: #6b7280;
}

    [data-theme="dark"] .page-user-registration .list-group-item .form-check-input:checked {
        background-color: #3b82f6;
        border-color: #3b82f6;
    }

[data-theme="dark"] #Modal_Message_Info .modal-content, [data-theme="dark"] #Modal_Security .modal-content,
[data-theme="dark"] #Modal_User_Registration_Overview .modal-content,
[data-theme="dark"] #Modal_User_Registration_Internal .modal-content,
[data-theme="dark"] #Modal_User_Registration_External .modal-content {
    background-color: #1f2937;
    border-color: #374151;
}

[data-theme="dark"] #Modal_Message_Info .modal-header, [data-theme="dark"] #Modal_Security .modal-header,
[data-theme="dark"] #Modal_User_Registration_Overview .modal-header,
[data-theme="dark"] #Modal_User_Registration_Internal .modal-header,
[data-theme="dark"] #Modal_User_Registration_External .modal-header {
    background-color: #374151;
    border-bottom-color: #4b5563;
}

[data-theme="dark"] #Modal_Message_Info .modal-title, [data-theme="dark"] #Modal_Security .modal-title,
[data-theme="dark"] #Modal_User_Registration_Overview .modal-title,
[data-theme="dark"] #Modal_User_Registration_Internal .modal-title,
[data-theme="dark"] #Modal_User_Registration_External .modal-title {
    color: #f9fafb;
}

[data-theme="dark"] #Modal_Message_Info .modal-body, [data-theme="dark"] #Modal_Security .modal-body,
[data-theme="dark"] #Modal_User_Registration_Overview .modal-body,
[data-theme="dark"] #Modal_User_Registration_Internal .modal-body,
[data-theme="dark"] #Modal_User_Registration_External .modal-body {
    background-color: #1f2937;
    color: #e5e7eb;
}

    [data-theme="dark"] #Modal_Message_Info .modal-body .text-muted,
    [data-theme="dark"] #Modal_Security .modal-body .text-muted,
    [data-theme="dark"] #Modal_User_Registration_Overview .modal-body .text-muted,
    [data-theme="dark"] #Modal_User_Registration_Internal .modal-body .text-muted,
    [data-theme="dark"] #Modal_User_Registration_External .modal-body .text-muted {
        color: #9ca3af !important;
    }

    [data-theme="dark"] #Modal_Message_Info .modal-body p,
    [data-theme="dark"] #Modal_Security .modal-body p,
    [data-theme="dark"] #Modal_User_Registration_Overview .modal-body p,
    [data-theme="dark"] #Modal_User_Registration_Internal .modal-body p,
    [data-theme="dark"] #Modal_User_Registration_External .modal-body p {
        color: #e5e7eb;
    }

[data-theme="dark"] #Modal_Message_Info .btn-close, [data-theme="dark"] #Modal_Security .btn-close,
[data-theme="dark"] #Modal_User_Registration_Overview .btn-close,
[data-theme="dark"] #Modal_User_Registration_Internal .btn-close,
[data-theme="dark"] #Modal_User_Registration_External .btn-close {
    filter: invert(1);
}

/* Bootstrap tooltips — customClass param-branch-tooltip (Main_Control_Branch, Main_Control_Parameter, Main_Control_Metrics) */
.bs-tooltip-top.param-branch-tooltip .tooltip-inner,
.bs-tooltip-bottom.param-branch-tooltip .tooltip-inner,
.bs-tooltip-start.param-branch-tooltip .tooltip-inner,
.bs-tooltip-end.param-branch-tooltip .tooltip-inner,
.tooltip.param-branch-tooltip .tooltip-inner {
    font-size: 0.8125rem;
    line-height: 1.4;
    text-align: left;
    max-width: min(22rem, 92vw);
}

[data-theme="dark"] .tooltip.param-branch-tooltip .tooltip-inner, [data-bs-theme="dark"] .tooltip.param-branch-tooltip .tooltip-inner {
    background-color: #374151;
    color: #f9fafb;
}

/* Main_Control_Parameter — filters toolbar and aligned coverage actions */
.page-main-control-parameter .param-ml-filters-toolbar {
    border: 1px solid var(--bs-border-color-translucent);
    border-radius: 0.5rem;
    background-color: var(--bs-tertiary-bg);
    padding: 0.75rem 1rem;
}

[data-theme="dark"] .page-main-control-parameter .param-ml-filters-toolbar, [data-bs-theme="dark"] .page-main-control-parameter .param-ml-filters-toolbar {
    background-color: #1f2937;
    border-color: #4b5563;
}

.page-main-control-parameter .param-perm-coverage-actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.125rem;
    min-width: 8.75rem;
    padding-left: 0.75rem;
    border-left: 1px solid var(--bs-border-color);
    margin-left: 0.125rem;
}

    .page-main-control-parameter .param-perm-coverage-action-link,
    .page-main-control-parameter .param-perm-coverage-actions .param-perm-coverage-log-btn {
        display: inline-flex;
        align-items: center;
        justify-content: flex-end;
        gap: 0.35rem;
        width: 100%;
        padding: 0.125rem 0;
        margin: 0;
        border-left: 0;
        color: var(--bs-body-color);
        line-height: 1.35;
    }

.page-main-control-parameter .param-perm-coverage-action-link__ico {
    width: 1.125rem;
    flex-shrink: 0;
    text-align: center;
}

.page-main-control-parameter .param-perm-coverage-action-link:hover,
.page-main-control-parameter .param-perm-coverage-action-link:focus-visible,
.page-main-control-parameter .param-perm-coverage-actions .param-perm-coverage-log-btn:hover,
.page-main-control-parameter .param-perm-coverage-actions .param-perm-coverage-log-btn:focus-visible {
    color: #0056E4 !important;
}

[data-theme="dark"] .page-main-control-parameter .param-perm-coverage-action-link:hover, [data-theme="dark"] .page-main-control-parameter .param-perm-coverage-action-link:focus-visible, [data-theme="dark"] .page-main-control-parameter .param-perm-coverage-actions .param-perm-coverage-log-btn:hover, [data-theme="dark"] .page-main-control-parameter .param-perm-coverage-actions .param-perm-coverage-log-btn:focus-visible, [data-bs-theme="dark"] .page-main-control-parameter .param-perm-coverage-action-link:hover, [data-bs-theme="dark"] .page-main-control-parameter .param-perm-coverage-action-link:focus-visible, [data-bs-theme="dark"] .page-main-control-parameter .param-perm-coverage-actions .param-perm-coverage-log-btn:hover, [data-bs-theme="dark"] .page-main-control-parameter .param-perm-coverage-actions .param-perm-coverage-log-btn:focus-visible {
    color: #3b82f6 !important;
}

@media (max-width: 767.98px) {
    .page-main-control-parameter .param-perm-coverage-metrics-row {
        flex-wrap: wrap;
    }

    .page-main-control-parameter .param-perm-coverage-actions {
        border-left: 0;
        padding-left: 0;
        margin-left: 0;
        padding-top: 0.5rem;
        margin-top: 0.25rem;
        border-top: 1px solid var(--bs-border-color);
        min-width: 0;
        width: 100%;
    }
}

/* History link in coverage row — shared with Branch / Parameter / Metrics hero */
.page-main-control-parameter .param-perm-coverage-log-btn {
    color: var(--bs-body-color);
    border-left: 1px solid var(--bs-border-color-translucent);
    margin-left: 0.125rem;
}

.page-main-control-parameter .param-perm-coverage-actions .param-perm-coverage-log-btn {
    border-left: 0;
    margin-left: 0;
}

.page-main-control-parameter .param-perm-coverage-log-btn:hover,
.page-main-control-parameter .param-perm-coverage-log-btn:focus-visible {
    color: #0056E4 !important;
}

[data-theme="dark"] .page-main-control-parameter .param-perm-coverage-log-btn:hover, [data-theme="dark"] .page-main-control-parameter .param-perm-coverage-log-btn:focus-visible, [data-bs-theme="dark"] .page-main-control-parameter .param-perm-coverage-log-btn:hover, [data-bs-theme="dark"] .page-main-control-parameter .param-perm-coverage-log-btn:focus-visible {
    color: #3b82f6 !important;
}

.page-main-control-parameter .param-perm-coverage {
    border-left: 1px solid var(--bs-border-color);
    padding-left: 1rem;
    margin-left: 0.125rem;
}

.page-main-control-parameter .param-ml-coverage-box.param-perm-coverage {
    border-left: 0;
    padding-left: 0;
    margin-left: 0;
}

@media (min-width: 992px) {
    .page-main-control-parameter .param-ml-coverage-box.param-perm-coverage {
        border-left: 1px solid var(--bs-border-color);
        padding-left: 1rem;
        margin-left: 0.25rem;
    }
}

@media (max-width: 767.98px) {
    .page-main-control-parameter .param-perm-coverage {
        border-left: 0;
        padding-left: 0;
        margin-left: 0;
        padding-top: 0.75rem;
        margin-top: 0.25rem;
        border-top: 1px solid var(--bs-border-color);
    }
}

.page-main-control-parameter .param-perm-coverage .tabular-nums {
    font-variant-numeric: tabular-nums;
}

/* Change-log tables: value wrapped by semantic tint (warning = previous / before, info = new / after) — no extra caption text inside the cell */
.param-change-log-value-pill {
    display: inline-block;
    max-width: 100%;
    padding: 0.15rem 0.5rem;
    border-radius: 0.25rem;
    font-weight: 500;
    line-height: 1.35;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}

.param-change-log-value-pill--warning {
    color: #92400e;
    background-color: rgba(245, 158, 11, 0.22);
    box-shadow: inset 0 0 0 1px rgba(217, 119, 6, 0.35);
}

.param-change-log-value-pill--info {
    color: #0c4a6e;
    background-color: rgba(6, 182, 212, 0.18);
    box-shadow: inset 0 0 0 1px rgba(8, 145, 178, 0.32);
}

[data-theme="dark"] .param-change-log-value-pill--warning, [data-bs-theme="dark"] .param-change-log-value-pill--warning {
    color: #fde68a;
    background-color: rgba(245, 158, 11, 0.16);
    box-shadow: inset 0 0 0 1px rgba(251, 191, 36, 0.28);
}

[data-theme="dark"] .param-change-log-value-pill--info, [data-bs-theme="dark"] .param-change-log-value-pill--info {
    color: #a5f3fc;
    background-color: rgba(6, 182, 212, 0.14);
    box-shadow: inset 0 0 0 1px rgba(34, 211, 238, 0.28);
}

/* Omnlink_Fleet_Monit / Segtrack_Fleet_Monit (Omnilink/Segtrack): access note for integration software 5 */
.fleet-monit-access-note {
    border-left: 4px solid #0780dd;
}

[data-theme="dark"] .fleet-monit-access-note.alert-info, [data-bs-theme="dark"] .fleet-monit-access-note.alert-info {
    background-color: #1f2937;
    border-color: #374151;
    color: #f9fafb;
    border-left-color: #26bbcd;
}

[data-theme="dark"] .fleet-monit-access-note .text-muted, [data-bs-theme="dark"] .fleet-monit-access-note .text-muted {
    color: #9ca3af !important;
}

/* Region KPI grids, labor time curve, transport performance: GridView or static thead with table-light. Bootstrap 5 stacks fill via inset box-shadow — reset vars + shadow. */
[data-theme="dark"] .region-profitability-table thead th, [data-bs-theme="dark"] .region-profitability-table thead th, [data-theme="dark"] .region-profitability-table thead td, [data-bs-theme="dark"] .region-profitability-table thead td, [data-theme="dark"] .region-profitability-table th.table-light, [data-bs-theme="dark"] .region-profitability-table th.table-light, [data-theme="dark"] .region-profitability-table > tbody > tr:first-child > td.table-light, [data-bs-theme="dark"] .region-profitability-table > tbody > tr:first-child > td.table-light, [data-theme="dark"] .region-volumetry-table thead th, [data-bs-theme="dark"] .region-volumetry-table thead th, [data-theme="dark"] .region-volumetry-table thead td, [data-bs-theme="dark"] .region-volumetry-table thead td, [data-theme="dark"] .region-volumetry-table th.table-light, [data-bs-theme="dark"] .region-volumetry-table th.table-light, [data-theme="dark"] .region-volumetry-table > tbody > tr:first-child > td.table-light, [data-bs-theme="dark"] .region-volumetry-table > tbody > tr:first-child > td.table-light, [data-theme="dark"] .region-devolution-table thead th, [data-bs-theme="dark"] .region-devolution-table thead th, [data-theme="dark"] .region-devolution-table thead td, [data-bs-theme="dark"] .region-devolution-table thead td, [data-theme="dark"] .region-devolution-table th.table-light, [data-bs-theme="dark"] .region-devolution-table th.table-light, [data-theme="dark"] .region-devolution-table > tbody > tr:first-child > td.table-light, [data-bs-theme="dark"] .region-devolution-table > tbody > tr:first-child > td.table-light, [data-theme="dark"] .labor-time-table thead th, [data-bs-theme="dark"] .labor-time-table thead th, [data-theme="dark"] .labor-time-table thead td, [data-bs-theme="dark"] .labor-time-table thead td, [data-theme="dark"] .labor-time-table th.table-light, [data-bs-theme="dark"] .labor-time-table th.table-light, [data-theme="dark"] .labor-time-table > tbody > tr:first-child > td.table-light, [data-bs-theme="dark"] .labor-time-table > tbody > tr:first-child > td.table-light, [data-theme="dark"] .driver-perf-table thead th, [data-bs-theme="dark"] .driver-perf-table thead th, [data-theme="dark"] .driver-perf-table thead td, [data-bs-theme="dark"] .driver-perf-table thead td, [data-theme="dark"] .driver-perf-table th.table-light, [data-bs-theme="dark"] .driver-perf-table th.table-light, [data-theme="dark"] .driver-perf-table > tbody > tr:first-child > td.table-light, [data-bs-theme="dark"] .driver-perf-table > tbody > tr:first-child > td.table-light {
    --bs-table-color: #f9fafb !important;
    --bs-table-bg: #374151 !important;
    --bs-table-border-color: #4b5563 !important;
    --bs-table-accent-bg: transparent !important;
    --bs-table-bg-state: transparent !important;
    --bs-table-bg-type: transparent !important;
    color: #f9fafb !important;
    background-color: #374151 !important;
    border-color: #4b5563 !important;
    box-shadow: none !important;
}

/* checkbox animado */
.checkboxAnimated label {
    padding-left: 0;
    min-height: 22px;
    line-height: 22px;
    font-size: 10px !important;
}

.checkboxAnimated input[type="checkbox"] {
    position: absolute;
    margin-left: -9999px;
    visibility: hidden;
}

    .checkboxAnimated input[type="checkbox"] + span {
        display: block;
        position: relative;
        cursor: pointer;
        outline: none;
    }

    .checkboxAnimated input[type="checkbox"] + span {
        width: 42px;
        height: 22px;
        float: left;
        margin-right: 10px;
        -webkit-border-radius: 11px;
        -moz-border-radius: 11px;
        -ms-border-radius: 11px;
        -o-border-radius: 11px;
        border-radius: 11px;
    }

        .checkboxAnimated input[type="checkbox"] + span:before,
        .checkboxAnimated input[type="checkbox"] + span:after {
            display: block;
            border: 1px solid transparent;
            position: absolute;
            top: 0;
            left: 0;
            bottom: 0;
            content: "";
        }

        .checkboxAnimated input[type="checkbox"] + span:before {
            right: 0;
            background-color: #FFB1B1;
            border-color: #AC5555 #ED8686 #F3ADAD #ED8686;
            background-image: -webkit-linear-gradient(top, #ff7c7c, #ffa4a4 9%, #ffb2b2);
            background-image: -moz-linear-gradient(top, #ff7c7c, #ffa4a4 9%, #ffb2b2);
            background-image: -o-linear-gradient(top, #ff7c7c, #ffa4a4 9%, #ffb2b2);
            background-image: -ms-linear-gradient(top, #ff7c7c, #ffa4a4 9%, #ffb2b2);
            background-image: linear-gradient(to bottom, #ff7c7c, #ffa4a4 9%, #ffb2b2);
            -webkit-border-radius: 10px;
            -moz-border-radius: 10px;
            -ms-border-radius: 10px;
            -o-border-radius: 10px;
            border-radius: 10px;
            -webkit-transition: background 0.4s;
            -moz-transition: background 0.4s;
            -o-transition: background 0.4s;
            transition: background 0.4s;
        }

        .checkboxAnimated input[type="checkbox"] + span:after {
            margin: 2px;
            width: 18px;
            height: 18px;
            background-color: #fff;
            background-image: -webkit-linear-gradient(bottom, #E5E6E9, #fff);
            background-image: -moz-linear-gradient(bottom, #E5E6E9, #fff);
            background-image: -o-linear-gradient(bottom, #E5E6E9, #fff);
            background-image: -ms-linear-gradient(bottom, #E5E6E9, #fff);
            background-image: linear-gradient(to top, #E5E6E9, #fff);
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            -ms-border-radius: 50%;
            -o-border-radius: 50%;
            border-radius: 50%;
            -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
            -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
            box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
            -webkit-transition: margin 0.4s;
            -moz-transition: margin 0.4s;
            -o-transition: margin 0.4s;
            transition: margin 0.4s;
        }

    .checkboxAnimated input[type="checkbox"]:checked + span:before {
        background-color: #C6F3A8;
        border-color: #6C8C57 #7BA164 #A8D38C #7BA164;
        background-image: -webkit-linear-gradient(top, #86c55d, #b9e79b 9%, #c6f3a9);
        background-image: -moz-linear-gradient(top, #86c55d, #b9e79b 9%, #c6f3a9);
        background-image: -o-linear-gradient(top, #86c55d, #b9e79b 9%, #c6f3a9);
        background-image: -ms-linear-gradient(top, #86c55d, #b9e79b 9%, #c6f3a9);
        background-image: linear-gradient(to bottom, #86c55d, #b9e79b 9%, #c6f3a9);
    }

    .checkboxAnimated input[type="checkbox"]:checked + span:after {
        margin-left: 22px;
    }
/*  */
.checkboxAnimated.disabled {
    cursor: not-allowed;
    opacity: 0.5;
}

    .checkboxAnimated.disabled input[type="checkbox"] + span {
        cursor: not-allowed;
        opacity: 0.7;
    }

/* Portal feedback toast pattern */
.portal-toast-container {
    width: min(24rem, calc(100vw - 1.5rem));
}

.portal-toast {
    --portal-toast-bg: #1d4ed8;
    --portal-toast-bg-strong: #1e40af;
    --portal-toast-icon-bg: rgba(255, 255, 255, 0.16);
    --portal-toast-shadow: 0 18px 42px -16px rgba(15, 23, 42, 0.7);
    position: relative;
    width: 100%;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 14px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.12), transparent 32%), linear-gradient(135deg, var(--portal-toast-bg), var(--portal-toast-bg-strong));
    color: #ffffff;
    box-shadow: var(--portal-toast-shadow);
    backdrop-filter: blur(8px);
}

.portal-toast__stripe {
    display: none;
}

.portal-toast__layout {
    display: flex;
    align-items: flex-start;
    min-height: 4.75rem;
}

.portal-toast__icon-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    flex: 0 0 2rem;
    margin: 0.9rem 0 0.9rem 0.9rem;
    border-radius: 999px;
    background: var(--portal-toast-icon-bg);
    color: #ffffff;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.2);
}

.portal-toast__icon {
    display: block;
    color: #ffffff;
    font-size: 0.92rem;
    line-height: 1;
}

.portal-toast__body {
    min-width: 0;
    flex: 1 1 auto;
    padding: 0.82rem 2.85rem 0.86rem 0.75rem;
}

.portal-toast__title {
    color: #ffffff;
    font-size: 0.86rem;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 0;
    margin-bottom: 0.16rem;
}

.portal-toast__message {
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.78rem;
    font-weight: 650;
    line-height: 1.35;
    max-width: 18rem;
}

.portal-toast__close {
    position: absolute;
    top: 0.65rem;
    right: 0.65rem;
    margin: 0;
    filter: invert(1) grayscale(100%) brightness(200%);
    opacity: 0.72;
    transform: scale(0.86);
}

    .portal-toast__close:hover,
    .portal-toast__close:focus {
        opacity: 0.85;
    }

.portal-toast--success {
    --portal-toast-bg: #16803a;
    --portal-toast-bg-strong: #11632d;
}

.portal-toast--warning {
    --portal-toast-bg: #c77700;
    --portal-toast-bg-strong: #924f00;
}

.portal-toast--danger {
    --portal-toast-bg: #c42222;
    --portal-toast-bg-strong: #861818;
}

.portal-toast--info {
    --portal-toast-bg: #2563eb;
    --portal-toast-bg-strong: #1d4ed8;
}

[data-theme="dark"] .portal-toast,
[data-bs-theme="dark"] .portal-toast {
    border-color: rgba(255, 255, 255, 0.2);
    box-shadow: 0 24px 60px -18px rgba(0, 0, 0, 0.95);
}

/* Portal feedback toast pattern for existing header-based toasts */
.toast-container:has(.portal-toast-header),
.toast-container:has(.toast > .toast-header) {
    width: min(24rem, calc(100vw - 1.5rem));
}

.toast:has(> .toast-header) {
    --portal-toast-header-bg: #2563eb;
    --portal-toast-header-bg-strong: #1d4ed8;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    border-radius: 14px !important;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.12), transparent 32%), linear-gradient(135deg, var(--portal-toast-header-bg), var(--portal-toast-header-bg-strong)) !important;
    color: #ffffff !important;
    box-shadow: 0 18px 42px -16px rgba(15, 23, 42, 0.7) !important;
    backdrop-filter: blur(8px);
}

.toast:has(> .toast-header .bg-warning),
.toast:has(> .toast-header.border-warning),
.toast:has(> .toast-header .border-warning) {
    --portal-toast-header-bg: #c77700;
    --portal-toast-header-bg-strong: #924f00;
}

.toast:has(> .toast-header .bg-danger),
.toast:has(> .toast-header.border-danger),
.toast:has(> .toast-header .border-danger) {
    --portal-toast-header-bg: #c42222;
    --portal-toast-header-bg-strong: #861818;
}

.toast:has(> .toast-header .bg-success),
.toast:has(> .toast-header.border-success),
.toast:has(> .toast-header .border-success) {
    --portal-toast-header-bg: #16803a;
    --portal-toast-header-bg-strong: #11632d;
}

.toast > .toast-header {
    min-height: auto;
    gap: 0.45rem;
    border-bottom: 0 !important;
    background: transparent !important;
    color: #ffffff !important;
    padding: 0.78rem 0.85rem 0.16rem 0.9rem !important;
}

    .toast > .toast-header strong,
    .toast > .toast-header .me-auto {
        color: #ffffff !important;
        font-size: 0.86rem;
        font-weight: 800;
        line-height: 1.2;
    }

    .toast > .toast-header small,
    .toast > .toast-header .text-body-secondary,
    .toast > .toast-header .text-muted {
        color: rgba(255, 255, 255, 0.72) !important;
        font-size: 0.68rem;
        font-weight: 600;
    }

    .toast > .toast-header .btn-close {
        margin-right: 0 !important;
        margin-left: 0.4rem !important;
        filter: invert(1) grayscale(100%) brightness(200%);
        opacity: 0.72;
        transform: scale(0.86);
    }

        .toast > .toast-header .btn-close:hover,
        .toast > .toast-header .btn-close:focus {
            opacity: 0.88;
        }

.toast:has(> .toast-header) > .toast-body {
    background: transparent !important;
    color: rgba(255, 255, 255, 0.92) !important;
    font-size: 0.78rem;
    font-weight: 650;
    line-height: 1.35;
    padding: 0.08rem 2.7rem 0.86rem 0.9rem !important;
}

    .toast:has(> .toast-header) > .toast-body a {
        color: #ffffff !important;
        font-weight: 800;
        text-decoration-color: rgba(255, 255, 255, 0.55);
    }

[data-theme="dark"] .toast:has(> .toast-header),
[data-bs-theme="dark"] .toast:has(> .toast-header) {
    border-color: rgba(255, 255, 255, 0.2) !important;
    box-shadow: 0 24px 60px -18px rgba(0, 0, 0, 0.95) !important;
}
